Added: 4 months ago
From: jeresig
Views: 17,541
Sort by time | Sort by thread (beta)

Link to this comment:

Share to:

All Comments (34)

Sign In or Sign Up now to post a comment!
  • javascript is great. The speaker in this video is horrible. Don't waste thousands of people's time saying "um". Please practice a few times and then only on the 2nd,3rd, or 20th take when you can do it at a decent speed should you publish your video. This video feels like you thought about it before but never practiced. At the least someone should edit this severly.

  • What library are you planning to use that gets around canvas in IE6?

  • @sailorspoon I beleive the library is called "canvas" or "excanvas". google it (sorry I'm too lazy to look it up). It's a great library. For example both flot and flotr libraries use it for older ie browsers.

  • I think teaching CS via JavaScript is an excellent idea. It provides a an approach allowing students to learn something they can immediately put to practice. Is there anyway to get updated when this course becomes available?

  • Not my first choice of language, its a good idea to show egs of patterns in different languages, so they get the idea they all do basically the same thing. Then move onto compiled code, platforms, nuances of languages etc. My career was creative>developer, so basic stuff of what's efficient/compatible is missing. Console apps would work too.Good luck!

  • Makes sense what you're saying (an 8-min video is a long-winded way of saying it though!)

    For teaching lower-level concepts (machine code, assembly, static compilation...) you could use a JS implementation of a simplistic VM (such as RetroForth's)

  • js is one of the cruftiest and most frustrating languages a person could choose to learn first. If we are entirely attached to running the code on a browser, we can run a scheme or lua in the browser.

  • beautiful. I think python is the best choice!

  • MIT, Google, Peter Norving recommend Python. Python is simple and

  • JS has the advantage of being ubiquitous. However students need diversity: to be familiar with dynamic typing AND static, interpreted AND compiled, OO AND functional, prototype inheritance AND class, web/HTML AND fat GUI, etc. While I applaud the use of JS, I strongly urge you to ALSO teach a static, compiled language (e.g. Java, C#). Knowing multiple approaches helps separate foundational concepts from specific technologies, so folks can learn future concepts and make informed tech decisions.

  • @compupc1 Fair points, absolutely. It's going to be a while before we can get to a *comprehensive* Computer Science education, we're still very much in the stages of "here are variables, let's maybe try a loop and drawing something" rather than "let's build a multi-threaded networked database server".

  • Comment removed

  • Comment removed

  • @jeresig For sure one has to start small and grow. I've seen many start with one language/technology/platform (could be Java, HTML/JS, VB or worst of all COBOL), and too often if they go on working with the only same, they become trapped into one way of thinking. I'm not at all advocating multi-threaded code or anything like that -- rather just exposing students to multiple tools and technologies. It can start with the web and JS; I just suggest branching out at some point! :-)

  • @compupc1 OK the Youtube comments seem to be behaving strangely for me. In any case I do want to make it clear: the availability of content such as this is a VERY good thing! I am very excited to see what you and the others come up with. I'm sure the results will be a positive resource for many people!

  • @compupc1 Unless you're signing John's paycheck, you're in no position to suggest (or "strongly urge") anything. If it's that important to you, make your own instructional videos.

  • @rayrayrayray023 This video was posted to present what the plans are for instruction in a topic that I happen to be well versed in. It is an open forum. I have a right to provide my thoughts on the issue, and he has just as much right to consider or not consider my suggestion. :-)

  • @compupc1 and he's already politely turned it down, too, hasn't he? Any developer with moderate intelligence and enthusiasm can adapt and learn.

  • i think Python is best as 1st lang for CS

  • I wonder if trying to do HTML/DOM/CSS at the same time as the fundamental CS, programming, and JavaScript is too much all at once? I were doing this (and I respect that I'm not, and you are :-)) I think I would start with just JavaScript and canvas inside a nice environment that just hands the student a canvas to draw on and finesses the details of handling input. That way the first exercises could be Logo-like programmatic drawing, and then maybe a whack-a-mole game, and add HTML/CSS later.

  • @JJC1138 We'll definitely be going piece-by-piece. It doesn't make sense if you have to learn 10 technologies before you can code your first project. I'm not sure what the first projects will be yet (still figuring that out) but I'm sure they won't be that difficult, nor will they involve every single technology.

  • Canvas should not be talked about form the get go. it should be in addition to this course towards the end.

  • @jfost784 Of course - Canvas doesn't necessarily encapsulate Computer Science concepts. HOWEVER it does encapsulate mathematical concepts (algebra and trig) and that's something that we have a TON of prior content on at Khan Academy. I believe that we can get people drawing long before we can do more complicated tasks (such as understanding closures).

  • @jeresig, I'm seriously excited you are going to be doing this. I think your platform choices are spot on and will be immensely impactful! Please let us know what we can do to help you.

  • I like the idea of using JS as a first language. Beyond that, I'm troubled. JS+HTML+CSS+Canvas are too specific & interconnected, letting the true fundamentals-the parts common to other language-get lost. If you were to write a JS program using response.write for output, and rewrote in C# w/Console.WriteLine & Java w/System.out.print, you'd have 3 very similar programs w/minor syntactical differences. But-the same program using JS+HTML+CSS etal, loses the commonality in the output processing.

  • @ZamesC Is that really so important though? Those are really just minor details. If you're teaching the fundamentals of Computer Science then you can layer additional language-specific stuff on top to help people with specific environments (such as printing to a console, interacting with databases, threading, etc. etc.). Having an environment with no install base - and yet being so ubiquitous as to exist everywhere - really makes JS/HTML/CSS to be *the most* compelling coding environment.

  • Great to hear this! What's going to happen to the current Python videos? I feel like there is a need for computer science topics online on videos

  • @frewsxcv23 We'll most likely be replacing most of that content, it served as a good proof-of-concept but we definitely want to go far beyond it and take a much more project-based approach, teaching students how to build tangible projects (and especially ones that they can begin to use immediately).

  • Of topic, but just letting you know there's an issue with the video window in exercises. It shows up quite a bit to the side of the screen. I tested several exercises in Explorer and Chrome.

  • @khanacademyfan Thanks for the heads-up, you can submit bug reports to the Github khan-exercises repository and the exercises team will work on it. (Google for "Github khan-exercises")

  • @jeresig I'll do that :) Best of luck on the CS videos! This is a huge thing for me, and a lot of others, I'm sure.

  • I agree with your thinking about JavaScript. Honestly, it is not my favorite language, but you are correct that ubiquity is key for teaching in this environment. I look forward to seeing what you guys produce! FYI: it is with great difficulty that I avoid feigning innocence and recommending a javascript library that smooths the browser differences...

  • Thanks for the reply in prev. video. The sound quality is very good here. I think you shoud try out a slightly larger "pen tip" size.

  • @khanacademyfan Thanks for the suggestion! I tried doing HD video here so the canvas size was much larger (and, as a result, the pen line was much smaller). I'll be sure to increase the size to compensate.

Loading...
Alert icon
0 / 00Unsaved Playlist Return to active list
    1. Your queue is empty. Add videos to your queue using this button:
      or sign in to load a different list.
    Loading...Loading...Saving...
    • Clear all videos from this list
    • Learn more