7 ms·
Khan Academy: Computer Science
- eranation 14y agoI'm checking CS on Khan academy every few weeks with hope for something like this, the Python class was great, but this is really exciting, and having Vi Hart do the videos is cool (or someone with a very similar voice...) - correction: it's narrated by Jessica Liu, who is doing an amazing job too
- dudey 14y agoIt's not Vi Hart doing the videos. See http://ejohn.org/blog/introducing-khan-cs/ http://ejohn.org/blog/introducing-khan-cs/
- phleet 14y agoeranation might be referring to the programs that have associated videos by Vi Hart - like this one: http://www.khanacademy.org/cs/pascals-triangle/803149756 http://www.khanacademy.org/cs/pascals-triangle/803149756 The program was actually written to match the video though, not the other way around.
- eranation 14y agoI saw, couldn't find the name of the narrator I'm talking about the actual videos, not the intro one (narrated by Sal Khan and John Resig) e.g. this one http://www.khanacademy.org/cs/intro-to-drawing/848372201 http://www.khanacademy.org/cs/intro-to-drawing/848372201 Sounds Vi Hart to me...
- jeresig 14y agoThey're narrated by Jessica Liu, more details here: http://ejohn.org/blog/introducing-khan-cs/ http://ejohn.org/blog/introducing-khan-cs/
- eranation 14y agoJessica is doing a great job as well... :) she sounds a lot like Vi, and this comment on this one, 5 seconds from the start helped my confusion... http://www.khanacademy.org/cs/1-welcome-to-codecanvas/882454257 http://www.khanacademy.org/cs/1-welcome-to-codecanvas/882454...
- deleted 14y ago[deleted]
- ivanilla 14y ago+1 for the Python class
- mtgx 14y agoI wonder why they didn't do the Computer Science class in Python, especially that now more schools are adopting Python. Isn't Python better for learning than Javascript? Did they choose Javascript for this one just because they already had a Python course and they wanted a Javascript one now?
- bradleyt 14y agoI don't think it would be possible for them to have the type of environment they've got set up if they used Python.
- dudey 14y agoI think that python is the better choice for an in-person class, but building an in-browser js interpreter is a lot simpler than an in-browser python interpreter.
- aangjie 14y agoHmm. that makes sense. because browser have been handling js for a longer time and so there would be more support for a in-browser js interpreter. I have seen some python in-browser interpreters, which are good though.
- lazerwalker 14y agoIt seems pretty clear that it's for practical reasons: you want that sort of rich in-browser experience, it's going to be easiest to provide using JS. What I think is a more interesting discussion is why they're not using CoffeeScript or some other flavor of JS that glosses over a lot of the idiosyncrasies of the language and arguably offers a more beginner-friendly syntax.
- recursive 14y agoThis looks like it has more to do with programming than computer science. That's a good thing, in my opinion, since I think programming is probably more generally useful. But it's a little misleading as the title.
- dullcrisp 14y agoI would really like to see something like a Khan Academy for introductory computer science. As it is, it seems there's nowhere to learn computer science basics at a below university level.
- simonbrown 14y agoWhat about Coursera?
- dullcrisp 14y agoI haven't checked out Coursera, but isn't it more of a college course that you can take online? Khan's videos seem much more accessible and are mostly aimed at a high school level. There are many people who browse through Khan's videos who don't have the time, motivation, or ability to take a Coursera course. I think that basic computer science (or at least basic theory of computation) is at least as important to understand in the modern world as algebra or calculus, and I don't like that it isn't more widely taught. I looked at Khan Academy hoping to find a good introduction for someone and was disappointed when I found that all it had was an introduction to programming.
- nickik 14y agoCoursera is more like college course in that it has lecturs and after that you have 'homework' but its much better then normal college stuff put on the net. It is made for the internet not for offline and thrown on the net.
- Kiro 14y agoSo what's the difference between this and any other tutorials on the internet?
- bryanlarsen 14y agoIt's not a tutorial in the traditional sense of the word, so there are a lot of differences. A better description would be sandbox.
- pjscott 14y agoTry it. Go here, have a look around for a minute or two, maybe fiddle with some code: http://www.khanacademy.org/cs/tutorials/drawing http://www.khanacademy.org/cs/tutorials/drawing It really improves on the classic style in two ways: 1. It's very easy to get started. There's no setup; just click a link. 2. The connection between the code and what it does is made very clear. The picture depends on the code, and changes when you change the code. There are sliders you can adjust for each integer literal. Bam! This is exciting stuff.
- cantankerous 14y agoMethinks "Computer Programming" or "Information Technology" would be a better title for this section than Computer Science. They are more general and applicable to the content.
- jeresig 14y agoI disagree. We're working towards the goal of having a comprehensive Computer Science curriculum and this is just the first step. I talk more about our reasoning and methodology here: http://ejohn.org/blog/introducing-khan-cs/ http://ejohn.org/blog/introducing-khan-cs/
- deleted 14y ago[deleted]
- eranation 14y agoJohn - a complexity and algorithm program done the "Khan way" is what I secretly wish for since I found out the great math videos. looking forward http://www.quora.com/Khan-Academy/Is-there-a-Khan-Academy-like-project-for-computer-science http://www.quora.com/Khan-Academy/Is-there-a-Khan-Academy-li... (warning, turn off the "spy me" flag ;))
- UK-AL 14y agoI see no reason why this can't "lead on" to the analysis of algrothims, after all it's probably best you know how to implement them before hand... Computer Science and programming are not separate... Programming is just one part of it.
- brown9-2 14y agoI really love what is being done here so far, especially the voice overs and live code editor, but I think it might be helpful to first-time visitors to put some more of that info on the khanacademy.org/cs page as well. Right now, at first glance it just looks like the Khan "Computer Science" curriculum is solely about learning how to make drawings and animations with processing.js. It can be a bit confusing to the first-time visitor, who might be asking "What is this page going to teach me exactly?".
- laserDinosaur 14y agoI just noticed the Khan academy website has no logo
- shocks 14y agoWhat website are you looking at?
- laserDinosaur 14y agoNever mind, it's appearing now. Maybe Chrome messed up because it wasn't appearing on any of their pages =/ Ha, too bad to. I thought it was a nifty idea of driving home the point that information should be free :)
- Groxx 14y agoInteractive numbers in the UI: seriously awesome. LOVE that they did this. Hopefully we'll get live updates to code in more systems, it's wonderful. Lack of a 'course' to go through: ? I have no idea where to start. Nor can many of these be applied outside of the little editor with the 'tutorial'. Elsewhere, KA has a nice 'do this, then that (or that)' set of branching paths that give you a reasonable path to take. I see none of that here. Am I missing something?
- lobo_tuerto 14y agoI don't see a problem here. I really like the playground feeling it has all around. Maybe I'm biased, but I prefer "pick the one that appeals more to you" style.
- Groxx 14y agoPlaygrounds are fun, and I've done a huge amount of learning in them (and building them for my own play). I'm not convinced that they develop great foundational knowledge about a system; they tend to favor quick, narrow dives (to any depth), rather than mucking around in all the boring bits that actually make the whole system. Great for getting the gears turning and keeping interest levels up, not great for full comprehension.
- Skalman 14y agoI also really enjoyed the interactive numbers - I thought that it'd be overkill and not at all useful, but you're really more likely to try things out if it's dead simple.
- dag11 14y agoThe videos for CS are brilliant. I don't think programming videos could possibly be more perfect than this. For example: http://www.khanacademy.org/cs/booleans/839898911 http://www.khanacademy.org/cs/booleans/839898911 So you can scrub through the lesson and play and pause it, and the instructor can type code into the editor directly causing it to output on your screen in real-time. But the amazing outcome of this is that the viewer can pause the lesson at any time and fiddle with the code directly, instantly changing the outcome. The downside to this is that if the lesson is then resumed, your modifications are kept and the code will be out of sync with the teacher's. Another cool thing is that the teacher can draw directly onto the program output section just like in normal Khan Academy videos. Brilliant. I'd say it's almost just as good as having someone right next to you teaching you how to code. The virtual teacher is typing the code directly into your computer!
- jeresig 14y agoAwesome - glad you're enjoying it! One thing to note: If you make changes to the code and then hit play again right now the user's changes are lost (making sure that playback will continue to work). We definitely want to persist those changes in some way, automatically, although in the worst case the user can always make some changes and hit 'Save' and they'll be saved to their own account.
- artursapek 14y agoThat's a pretty good worst case scenario. I wouldn't change how it works at all.
- raldi 14y agoThanks for dropping in. As long as you're here, I'd like to bring to your attention a UX issue that might deeply impact first impressions. If you visit the site for the first time and click the play button, there's a good chance that, immediately following this click, the mouse cursor will stray into the code area. This causes the code to turn white, and so the viewer just sits there listening to the lesson and watching things change in the running-program frame, oblivious to the fact that the code is invisibly changing, too (one of the coolest parts of the product). You might want to unfade the code and get rid of the "Pause" button if the cursor hasn't moved in a while, to ensure first-time visitors don't miss the awesome code-to-audio syncing. Other than that, I'm super impressed with the site.
- m0skit0 14y agoThe "How to read documentation" link is dead...
- m0skit0 14y agohttp://www.khanacademy.org/cs/how-to-read-documentation/11025 http://www.khanacademy.org/cs/how-to-read-documentation/1102...
- Atropos 14y agoThat is really incredible work! I bet Codecademy is happy they already received their $10m round...
- user911302966 14y agoDrawing? Animation? Games? ... "Wanna"? Yes, this is how you bait a small child or idealistic young adult into wanting to "become a computer scientist when I grow up". Yes, it coerces pseudointerest in something. But, this isn't sustainable and it's not how participation in computing will be advanced. Discrete maths aren't advertised by hyping up the life of a traveling salesman, and neither should computer science. The former attracts academics wishing to push bounds for humanity, fame, ego, etc. Computer science is the youngest of the lot, so we ought to have no shortage of green kids studying and pushing understanding. Since we don't, I appreciate attempts such as this, but I think that history proves them to be misguided.
- vlad 14y agoGreat work, but I have some feedback about the first video shown to everyone who visits the Computer Science page. 1) It jumps right into talking about syntax of programming instead of showing screen shots of what a person will be able to build after completing the lessons, the benefits of learning about Computer Science, some cool problems they will know the answer to, etc, like Udacity does. 2) It is spoken way too fast. It's going to turn off almost all non-native english speakers, as well as confuse many english speakers. 3) As if that's not bad enough, anyone who turns on closed captioning to get a transcript will be even more confused, as YouTube's transcription is both messy and flashes quickly. It's so useless, you should look into disabling the CC button for the videos while looking into other approaches in the mean time. Example: "according to a common just by out of the two facets to the front and we call this commenting out coat now the fun we skipped and sometimes this can get away with the land was for". 4) When re-recording it, I hope the speaker (who is female) says "men and women" rather than "dudes" when talking about programmers several times. Lots of women have contributed to software development. Otherwise, she made some great jokes! http://www.khanacademy.org/cs/1-welcome-to-codecanvas/882454257 http://www.khanacademy.org/cs/1-welcome-to-codecanvas/882454...
- vlad 14y agoMaybe a great solution would be to allow other users to record their own explanations for the lesson, so that the viewer could choose (and vote up) the ones they like better (by clarity, preferred accent, a different human language altogether, etc.)
- dudey 14y agoSpeaking slower would make the videos much longer, which would lose viewership. I'm in favour of having the presenter talk quickly, thus making the video shorter. The words are all spoken clearly; it's easy to pause and rewind if you need to.
- deleted 14y ago[deleted]
- CamperBob2 14y ago
- sanxiyn 14y agoPretty cool! Here's my first try: http://www.khanacademy.org/cs/1d-random-walk/968033552 http://www.khanacademy.org/cs/1d-random-walk/968033552
- tdskate 14y agoI am totally in love with Jessica, the voice over girl.