Tentatively unassigned since it doesn't look like there's been progress on this. Please feel free to reassign yourself if you have been working on it.
Try and understand why someone drops out of an exploration, so that the exploration can be improved.
An idea that came up in a conversation I had recently was: when a student exits an exploration midway, offer them a way to give feedback on why, so that the creator can improve the exploration. For example, we could show a short feedback box, with messaging along the lines of: sorry about the bad experience; if you could let us know what we could do better, we'd really appreciate it and will try to improve the lesson based on your feedback.
There are two parts to this: (a) figure out when to show the box, (b) design the UX for the experience.
Note that, for (a), some users may just be browsing, and it's reasonable for them to leave after the first card  so we do need to figure out when to show the box. One possible filter is to do so only when the learner has made a significant attempt to engage with the exploration by submitting some answers  or, alternatively, we could restrict it initially to cases which are definitely problematic, e.g. the learner has just submitted a whole bunch of answers in a row to the same card. The exact criteria for this needs to be thought through carefully.
Also, from the implementation point of view, it would be nice to tag the feedback as "feedback that led to a dropout" so that creators are aware of this.
该提问来源于开源项目：oppia/oppia
 点赞
 写回答
 关注问题
 收藏
 复制链接分享
 邀请回答
18条回答

采纳
点赞 评论 复制链接分享

采纳
Hi all,
I'm out of town until after Christmas  will reassign myself when I'm back to work on it.
Thanks!
On Mon, Dec 12, 2016 at 11:19 AM, Ben Henning wrote:
Tentatively unassigned https://github.com/rachelwchen since it doesn't look like there's been progress on this. Please feel free to reassign yourself if you have been working on it.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/oppia/oppia/issues/2744#issuecomment266524526, or mute the thread https://github.com/notifications/unsubscribeauth/ALmJ24GyCPLgCwAvVrYO4S9Eu2qr4XK3ks5rHZ4qgaJpZM4K3hOp .
 Rachel Chen
Design Lab at UC San Diego x SAP www.rachelwchen.com
点赞 评论 复制链接分享 
采纳
Update: is investigating this, and we had a chat this morning. I'll summarize next steps here (but, Rachel, please feel free to correct me if I've written anything wrongly!)
We are looking to tackle this in two ways:

Remove factors that cause students to leave in the middle of a lesson. This may be due to things like:
 insufficient feedback or overlystringent checks, so the student is stuck and doesn't know how to continue
 lack of interest in the topic
 boredom
but we don't really know. Next step: spec out and implement a survey to get more data about students' reasons for dropping out in the middle of a lesson, so that we don't end up fixing the wrong thing.
 Make it easier for students to return to a lesson. This can be done by saving progress for loggedin users who leave in the middle of a lesson, and showing them their unfinished explorations when they return. Next step: figure out the user experience for this flow, and create mocks for it.
点赞 评论 复制链接分享 

采纳
Hi , how is this going?
点赞 评论 复制链接分享 
采纳
Hi ,
Sean and I explored this in 2 directions. First: remove factors that cause students to leave in the middle of a lesson: I interviewed 4 users and asked them to think out loud while completing an exploration. This helped us understand their thought process & evaluate things that may have led to frustrations and dropout. You can read more about it here: https://docs.google.com/document/d/1aP5YwugMUtKovdOOgH22VApp6TZErDtyHEWRlkoKU/edit
As next steps, 1. Sean and I are thinking about compiling a "creator doc" where we outline things that creators should follow/avoid, so that their explorations may have lower dropout rates due to learner frustration. We still need to flesh out the actual design specs, ex: where do we place this? How can we get creators to read it? 2. Add some feature to the exploration editor so that it automatically reminds creators of things to avoid (ex: issue #3074) 3. Help learners get "unstuck." The GSoC project  replace fallbacks with hints  will help with this. 4. Do more user testing on younger kids. So far, our user testing participants are mostly HS/college students. We should test with younger students to see how their responses might differ.
Second: Make it easier for learners to return to a lesson. Distractions, lack of time, etc... can lead to dropouts; we can't prevent them, but we can make it easier for learners to reengage with an exploration again. This will probably get implemented in the learner dashboard for GSoC.
Thanks!
点赞 评论 复制链接分享 
采纳
That's very interesting; please let me know when the "creator doc" is ready. It sounds like that is a good thing to start with, insofar as we are currently exercising creative oversite of the explorations. Building guidance into the editor itself represents a second level of difficulty, but would be very valuable indeed.
点赞 评论 复制链接分享 
采纳
Hey , here's a draft: https://docs.google.com/document/d/1WcO4uNznFejkQZ2nq320zzpSaNRQ8aqYZz5MGMQuEoY/edit
It's not super thorough yet  feel free to add/edit more things. Thank you!
点赞 评论 复制链接分享 
采纳
Thanks for the link; I made a few comments. There are some existing documents giving advice to contentcreators here: https://docs.google.com/document/d/1Ffx_nJsZ8kaJyPRlFu2HWDJPIkfTAyUBxyUbtcEe2Y/edit https://docs.google.com/document/d/1u4WErMBSRR7TQPAZ9Kd1rGJ6U4V9EQZJx462gCxyrYk/edit https://docs.google.com/document/d/1h8jDHduAOgMOkpssiDMduCdP9TYfTOsS0UQ_VhwWak/edit#
It would be great if we could work towards a synthesis of these that we can link to from the Oppia navbar and/or editor.
On Sat, Mar 18, 2017 at 1:52 AM, Rachel Chen wrote:
Hey https://github.com/jacobdavis11, here's a draft: https://docs.google.com/document/d/1WcO4uNznFejkQZ2nq320zzpSaNRQ8 aqYZz5MGMQuEoY/edit
It's not super thorough yet  feel free to add/edit more things. Thank you!
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/oppia/oppia/issues/2744#issuecomment287504204, or mute the thread https://github.com/notifications/unsubscribeauth/ANF0TCxQTa9VuzcXpQm4WTE2x3zOQmTks5rmyq9gaJpZM4K3hOp .
点赞 评论 复制链接分享 
采纳
Friendly ping. Are there any updates on this?
点赞 评论 复制链接分享 
采纳
Hi , thanks for the ping! Haven't worked on a synthesis yet; we've been making changes to the explorations themselves.  I'll start a draft so we can get that guidance page ready!
点赞 评论 复制链接分享 
采纳
Hi  how is this going?
点赞 评论 复制链接分享 
采纳
Here's a draft: https://docs.google.com/document/d/1UQwyDcAngR_xloWxmtWZ5SB2_Trl5Y1qzN8bsyvuI/edit. I selected a few tips that stood out as really useful to me (from the 4 existing documents on creating explorations  links are included in the draft). Please feel free to make edits!
点赞 评论 复制链接分享 
采纳
Hi , this is great, thanks! Think we could put it on the GitHub wiki (under References, perhaps)? Easier to edit and reference that way, I think.
点赞 评论 复制链接分享 
采纳
Here it is! Advice on creating explorations. I've also placed it in the sidebar menu under References.
点赞 评论 复制链接分享 
采纳
Thanks, , for starting this! I've pointed Mark to it, so that he can develop it further as well.
With regards to this issue thread in general, what are the next steps? Should we leave it open or close it?
点赞 评论 复制链接分享 
采纳
I think we can close it for now, since we can file individual issues for specific things that should be fixed with each exploration!
On Thu, Jun 15, 2017 at 8:06 PM Sean Lip wrote:
Thanks, https://github.com/rachelwchen, for starting this! I've pointed Mark to it, so that he can develop it further as well.
With regards to this issue thread in general, what are the next steps? Should we leave it open or close it?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/oppia/oppia/issues/2744#issuecomment308920830, or mute the thread https://github.com/notifications/unsubscribeauth/ALmJ2zdgPZOJM04qcaEhFEHOoi58_xQks5sEfFPgaJpZM4K3hOp .
 Rachel Chen Sent from mobile.
点赞 评论 复制链接分享 
采纳
OK, thanks ! Closing.
点赞 评论 复制链接分享 
采纳
Hi how is this going?
点赞 评论 复制链接分享
相关推荐
 4年前回答 1 已采纳 Problem Description XYZ is playing an interesting game called "drops". It is played on a r∗c grid. Each grid cell is either empty, or occupied by a waterdrop. Each waterdrop has a property "size". The waterdrop cracks when its size is larger than 4, and produces 4 small drops moving towards 4 different directions (up, down, left and right). In every second, every small drop moves to the next cell of its direction. It is possible that multiple small drops can be at same cell, and they won't collide. Then for each cell occupied by a waterdrop, the waterdrop's size increases by the number of the small drops in this cell, and these small drops disappears. You are given a game and a position (x, y), before the first second there is a waterdrop cracking at position (x, y). XYZ wants to know each waterdrop's status after T seconds, can you help him? 1≤r≤100, 1≤c≤100, 1≤n≤100, 1≤T≤10000 Input The first line contains four integers r, c, n and T. n stands for the numbers of waterdrops at the beginning. Each line of the following n lines contains three integers xi, yi, sizei, meaning that the ith waterdrop is at position (xi, yi) and its size is sizei. (1≤sizei≤4) The next line contains two integers x, y. It is guaranteed that all the positions in the input are distinct. Multiple test cases (about 100 cases), please read until EOF (End Of File). Output n lines. Each line contains two integers Ai, Bi: If the ith waterdrop cracks in T seconds, Ai=0, Bi= the time when it cracked. If the ith waterdrop doesn't crack in T seconds, Ai=1, Bi= its size after T seconds. Sample Input 4 4 5 10 2 1 4 2 3 3 2 4 4 3 1 2 4 3 4 4 4 Sample Output 0 5 0 3 0 2 1 3 0 1
 4年前回答 1 已采纳 A snail is at the bottom of a 6foot well and wants to climb to the top. The snail can climb 3 feet while the sun is up, but slides down 1 foot at night while sleeping. The snail has a fatigue factor of 10%, which means that on each successive day the snail climbs 10% * 3 = 0.3 feet less than it did the previous day. (The distance lost to fatigue is always 10% of the first day's climbing distance.) On what day does the snail leave the well, i.e., what is the first day during which the snail's height exceeds 6 feet? (A day consists of a period of sunlight followed by a period of darkness.) As you can see from the following table, the snail leaves the well during the third day. Day Initial Height Distance Climbed Height After Climbing Height After Sliding 1 0 3 3 2 2 2 2.7 4.7 3.7 3 3.7 2.4 6.1  Your job is to solve this problem in general. Depending on the parameters of the problem, the snail will eventually either leave the well or slide back to the bottom of the well. (In other words, the snail's height will exceed the height of the well or become negative.) You must find out which happens first and on what day. Input The input file contains one or more test cases, each on a line by itself. Each line contains four integers H, U, D, and F, separated by a single space. If H = 0 it signals the end of the input; otherwise, all four numbers will be between 1 and 100, inclusive. H is the height of the well in feet, U is the distance in feet that the snail can climb during the day, D is the distance in feet that the snail slides down during the night, and F is the fatigue factor expressed as a percentage. The snail never climbs a negative distance. If the fatigue factor drops the snail's climbing distance below zero, the snail does not climb at all that day. Regardless of how far the snail climbed, it always slides D feet at night. Output For each test case, output a line indicating whether the snail succeeded (left the well) or failed (slid back to the bottom) and on what day. Format the output exactly as shown in the example. Sample Input 6 3 1 10 10 2 1 50 50 5 3 14 50 6 4 1 50 6 3 1 1 1 1 1 0 0 0 0 Sample Output success on day 3 failure on day 4 failure on day 7 failure on day 68 success on day 20 failure on day 2
 4年前回答 1 已采纳 Have you ever played the flash game "10 drops" before? I have tried this game several times, but I am not good at playing this game because of my bad imagination. So I come to you, one of the best programmers in the world, for help. The target is to find the status of the grid after several given actions. Do you think that is too easy? But, to me, it is an impossible mission. So, if you help me to solve it, I'll appreciate it. INSTRUCTIONS: You start with m drops in your tank; Use them to grow blobs until they burst; We use a number 0 <= x < k to describe the size of the blob: 0 indicate there is no blobs, and a blob with a given size k will burst. Once a drop attach to a blob, the size of it will increase by 1. The burst blob will release four drops moving in four directions, and they move in the same speed. If a drop moves to a grid which contains a blob, the blob will grow. What's more, if more than one drops move to the same grid simultaneously, you can assume that the one comes from north (up) attaches the blob first, then south second, west third and east last. An action is a left click in some grid in the game (the left top one is (0,0), and (0,1) is to the east of (0,0)). A left click indicates that you use 1 drop in your tank (if it's not empty) to grow the blob in that grid. Of cause, a left click in grid without blob should be ignored because it's meaningless. Input There are multiple test cases. Each case begins with a line containing four integer n, m, k, p where n < 20 indicates the size of the grid is n * n; m <= 1000 is the number of rest drops in your tank; k <= 10 is the burst size of blob; and p is the number of actions. The next n lines each with n integers less than k. And then p lines each with 2 integers x, y stand for an action. Both x and y are less than n. Process to the end of file. Output Print the number of left drops after p actions in tank in a line. Then print the description of the grid after p actions as the input shows. Print a blank line between cases. Sample Input 6 10 5 3 002243 423200 030132 132214 143213 403202 1 2 2 1 3 1 6 10 5 4 002243 423200 030132 132214 143213 403202 1 2 2 1 3 1 2 1 Sample Output 7 002243 424200 040132 142214 143213 403202 6 003243 000400 000232 304214 204213 403202
 Ink Blots c++4年前回答 1 已采纳 Description ![](http://poj.org/images/2016_1.jpg) Drops of dark ink can fall on a white piece of paper creating a number of round ink blots. Three examples are shown above. The blots can create multiple distinct white regions. In the first figure, there is just one white region. In the second figure there is the outer white region plus a small white region bounded by the left four blots and an even smaller white region bounded by the right three blots. In the third figure, there are four white regions, one on the very outside, one inside the outer ring of blots and outside the four blots in the middle, and two tiny ones each formed between three of the four inner blots. Two points are in the same white region if a path can be drawn between them that only passes through white points. Your problem is to count the number of white regions given the centers and radii of the blots. Math Formulas: If circles C1 with center (x1, y1) and radius r1, and C2 with center (x2, y2) and radius r2 intersect in exactly two distinct points, let d equal the distance between the centers of C1 and C2, A = atan2(y2y1, x2x1), and B = acos((r12 + d2  r22)/(2*r1*d)); then the intersection points on C1 are at angles A+B and AB radians counterclockwise from the ray extending to the right from the center of C1. The function atan2 is the inverse tangent function with two arguments, and acos is the inverse cosine function, both available in the math libraries of C, C++, and Java. Input There are from one to 15 data sets, followed by a final line containing only 0. A data set starts with a line containing a single positive integer n, which is no more than 100. It is the number of blots in the dataset. Then 3n positive integers follow, with a single blank or a newline separating them. Each group of three give the data for the circular boundary of one blot: x and y coordinate of the center of the blot and its radius, in that order. Each of these numbers will be no larger than 1,000,000. All blots lie entirely on a piece of paper, and no blot touches any edge of the paper. No two circles in a dataset will be identical. Given any two distinct circles, they will either intersect at exactly two distinct points or not intersect at all. If two circles in the input intersect, then they overlap by at least one unit. More precisely, if they have radii r1 and r2, where r1 <= r2, and if d is the distance between their centers, then r2  r1 + 1 <= d <= r1 + r2  1. Three or more circles will never intersect at the same point. If C is a circle in the input that intersects at least one other input circle, and p and q are any of the intersection points of C with any of the other input circles, with p distinct from q, then p and q will be separated on C by at least 0.001 radians of arc. The restrictions on radii and angles ensure that standard doubleprecision arithmetic is sufficient for the calculations suggested above. The sample input below corresponds to the figures above, though the scale is different in each figure. Output The output contains one line for each data set. The line contains only the number of white regions for the dataset, which is never more than 200. Sample Input 4 45 45 40 65 55 35 45 45 10 20 95 10 5 30 30 20 30 60 20 60 30 20 60 60 20 90 45 15 16 200 120 65 300 100 55 400 120 65 480 200 65 500 300 55 480 400 65 400 480 65 300 500 55 200 480 65 120 400 65 100 300 55 120 200 65 300 245 60 300 355 60 385 300 51 215 300 51 0 Sample Output 1 3 4
 回答 1 已采纳 Sup stackies. Okay, i have got a real head scratcher for you guys! I've been trying to solve this puzzle for a week now (apparently i was on stack cooldown). Ok so whats going on is that i have 2 scripts, that goes under the same if/elseif statement. They both work 100% individually (multiple tests were taken to conclude this). The script is supposed to start the if/elseif depending on one of 2 submit buttons. the scripts themselves is not the problem. It's the process of starting the scripts. On the same page as the 2 submit buttons, there is 2 "text" fields, that both of the scripts utilize to complete. The buttons is build like this: <input type="SUBMIT" Name="Udlaan" VALUE="Udlån" METHOD="POST" class="AsideUdlån"> <input type="SUBMIT" Name="Aflever" VALUE="Aflever" METHOD="POST" class="Asideaflever" > They work. The text fields are build like this: <input Type="Text" Name="bunnr" Method="POST" Class="Skriv_bun" Placeholder="bun Nummer"> <input Type="Text" Name="Ordreren" Method="POST" Class="Ordre_No_Skriv" Placeholder="Ordre Nummer"> The variables that holds the data from the textfield looks like this: $Ordre_Nr=$_POST['Ordreren']; $bun_Nr=$_POST['bunnr']; So the problem is that the data from the text field is never getting parsed into the variablesm, which causes my scripts to never run . (I mind you that the input fields and the variables are 3 lines apart with nothing inbetween nor above the textfields that has any relevance to this problem.) I added in or die($conn); on one of the variables, which gave me "Object of class mysqli could not be converted into string". Without it, the above just returns false with undefined index. I tried making new scripts that is in no way connected to my real script. This is one of them: <html> <head> <meta charset="UTF8"> <title>title</title> </head> <body> <form METHOD="POST"> <input type="submit" Method="POST" NAME="WORLD" Placeholder="World"> <input type="text" Method="POST" NAME="Hello" Placeholder="hej"> </form> <?php $f = $_POST['World']; $e = $_POST['hej']; if(isset($f)){echo $e;} ?> </body> </html> Do we agree that this should work? well it doesn't. Nothing, sip, nada. except the same "Undefined index". I made another quite like the one above(Almost exactly like it) using POST aswell, the data i put in the text field came out as GET (I could see everything in the url bar). This isn't just a standard error, i had a guy with 20 years (on/off) of experience look at it, and he could not find a single syntax error, that could be related to this issue. If anyone has any really good suggestions, please come forth and prevail! And should you be in need for more information, i will try my best to provide ^^ Fyi, i don't care much for "SQL injection comments, since it's not important for this issue. Fyi 2. This is NOT a duplicate. I have checked multiple questions with answers for this issue, nothing has worked.
 5年前回答 1 已采纳 Description It is a little known fact that cows love apples. Farmer John has two apple trees (which are conveniently numbered 1 and 2) in his field, each full of apples. Bessie cannot reach the apples when they are on the tree, so she must wait for them to fall. However, she must catch them in the air since the apples bruise when they hit the ground (and no one wants to eat bruised apples). Bessie is a quick eater, so an apple she does catch is eaten in just a few seconds. Each minute, one of the two apple trees drops an apple. Bessie, having much practice, can catch an apple if she is standing under a tree from which one falls. While Bessie can walk between the two trees quickly (in much less than a minute), she can stand under only one tree at any time. Moreover, cows do not get a lot of exercise, so she is not willing to walk back and forth between the trees endlessly (and thus misses some apples). Apples fall (one each minute) for T (1 <= T <= 1,000) minutes. Bessie is willing to walk back and forth at most W (1 <= W <= 30) times. Given which tree will drop an apple each minute, determine the maximum number of apples which Bessie can catch. Bessie starts at tree 1. Input * Line 1: Two space separated integers: T and W * Lines 2..T+1: 1 or 2: the tree that will drop an apple each minute. Output * Line 1: The maximum number of apples Bessie can catch without walking more than W times. Sample Input 7 2 2 1 1 2 2 1 1 Sample Output 6 Hint INPUT DETAILS: Seven apples fall  one from tree 2, then two in a row from tree 1, then two in a row from tree 2, then two in a row from tree 1. Bessie is willing to walk from one tree to the other twice. OUTPUT DETAILS: Bessie can catch six apples by staying under tree 1 until the first two have dropped, then moving to tree 2 for the next two, then returning back to tree 1 for the final two.
 hwnbox的博客 The game of Go has long been viewed as the most challenging of classic games for artificial intelligence owing to its enormous search space and the difficulty of evaluating board positions and moves....
 hwnbox的博客 A longstanding goal of artificial intelligence is an algorithm that learns, tabula rasa, superhuman proficiency in challenging domains. Recently, AlphaGo became the first program to defeat a world ch...
 datamonday的博客 The increasing number of layers in modern networks amplifies the differences between architectures and motivates the exploration of different connectivity patterns and the revisiting of old research ...
 yinizhilianlove的博客 We propose an approach to answering this question based on a hypothesis about the dynamics of gradient descent that we call Coherent Gradients: Gradients from similar examples are similar and so the ...
 weixin_33758863的博客 [原文连接]...70F64BC910C9F7F3!1231.entry Ultimate List of Free Windows Software from Microsoft Microsoft has over 150 FREE Windows Programs available for download...
 wxmcp3的博客 Continuous action policy search is currently the focus of intensive research, driven both by the recent success of deep reinforcement learning algorithms and the emergence of competitors base
 weixin_29379325的博客 Licensed for DistributionThis research note is restricted to the personal use of (). 2020 Planning Guide for Data ManagementPublished 7 October 2019  ID G00401283  91 min readBy Analysts Sanjeev ...
 MollyLau的博客 粗略翻译，方便快速阅读 ...Anomalies of the omnipresent earth magnetic (i.e., geomagnetic) field in an indoor environment, caused by local disturbances due to construction materials, give rise to noisy di
 Adam坤的博客 While deep learning has achieved great success on Euclidean data, there is an increasing number of applications where data are generated from the nonEuclidean domain and need to be effectively ...
 weixin_33681778的博客 It's a Buck; It's a Boost, No! It's a Switcher! Sanjaya Maniktala, National Semiconductor Corp., Santa Clara, CA We like to give everything a name or label very ... We probably feel we can then...
 3年前super_chicken的博客 1. GloballyOptimal Inlier Set Maximisation for Simultaneous Camera Pose and Feature ...Abstract: Estimating the 6DoF pose of a camera from a single image relative to a precomputed 3D p...
 4年前Max_Cong的博客 ØMQ  The Guide Table of Contents By Pieter Hintjens, CEO of iMatix Please use the issue tracker for all comments and errata(勘误表). This version covers the latest stable(稳定的) relea
 6年前凌风探梅的博客 FROM： http://zguide.zeromq.org/page:all ØMQ  The Guide Table of Contents By Pieter Hintjens, CEO of iMatix Please use the issue tracker for all com
 3年前super_chicken的博客 1. ExclusivityConsistency Regularized Multiview Subspace ...Abstract: Multiview subspace clustering aims to partition a set of multisource data into their underlying groups. To boost the ...