|
|
|
|
|
by sambe
3504 days ago
|
|
I agree with the sentiment. Do note that people said exactly the same about mobile phones in Africa - shouldn't be a priority. The article you link wouldn't have been written had we said "no, first give them water and blankets". Maybe the benefits turn out to be surprising even in deprived areas? As for web-based vs native, I can see it going either way. If connectivity is too unreliable and/or expensive then native will win. Many people in the developing world spend a lot of time with no credit on their phones. The biggest problem I see with teaching people computing these days, which is only partly addressed by cheaper computing devices and IDEs, is the sheer number of tools and abstractions to learn. What order do you teach in? What if there's no teacher? Version control, testing, frameworks etc. are all great things, and a certain proportion of people will need to learn them at some point. For others it's overwhelming, and for most it at least hinders the teaching process. Too much "ignore this for now" can be demotivating and confusing. Yet, it's also not enough to start with just a BASIC prompt any more. People have now seen all the cool modern things you can do and want to do it themselves, so moving an X across the screen is not motivating either. I have found completely dedicated environments like https://scratch.mit.edu to be great for younger kids, but not sure how the rest of the learning curve should be shaped. |
|
Not the same for everyone... here's a weak attempt at answering:
Kids:
1. Visual 2D: https://scratch.mit.edu/
2. Visual 3D: https://minecraft.net/en/
3. Interacting with real world: https://www.lego.com/en-us/mindstorms
4. Machine learning (why? it's the future!): http://stats.stackexchange.com/questions/22504/what-can-one-...
Adults:
1. Take class(es) on using a computer or phone. Many don't have confidence for things we take for granted.
2. Online tutorials: http://javascript.info/ http://iwanttolearnruby.com/ https://wiki.python.org/moin/BeginnersGuide/Programmers https://netbeans.org/kb/articles/learn-java.html https://msdn.microsoft.com/en-us/library/aa288436(v=vs.71).a... or go to school.
3. Learn enough to contribute to an open source project.
4. Get a job coding or code at your existing job, if allowed. On the job experience is essential.