3 ms·
I think there are a lot of services that are trying to put their own unique spin on how to teach code. My problem is that a lot of them seem to miss the point.
by stackcollision 13y ago
I think there are a lot of services that are trying to put their own unique spin on how to teach code. My problem is that a lot of them seem to miss the point. What this is teaching is basic syntax and how to understand sequential execution. But being able to write code is not the same thing as being able to program, in much that same way that being able to write English is not the same thing as storytelling.
The game looks like fun and I'm sure it'll be able to spark the interest of a bunch of young people. Once they get out of this, hopefully they'll look to other sources to learn more in-depth skills. But IMHO services like this need to stop advertising themselves as "Learn to code", and instead admit what they are, which is something to pique the curiosity of a newbie and get them started on their own path. That's a noble goal in itself, but passing off the absolute basics as knowing how to "program" could be dangerous.
- tw3akercc 13y ago"The web-based game teaches rudimentary JavaScript fundamentals, including everything you’d learn in an introductory computer science course, by forcing you to code your way through the game. In order to get from one level to the next, you must understand the lesson being taught and prove it through writing your own code." - From the TC Article
- griffinmahon 13y agoQuestion from a naive person trying really hard to get into programming: what are good resources/where should I start, etc? I've done quite a bit on Codecademy, and I get it, but there are still a lot of things I am just ignorant of, like where you actually type code (what's a good source code editor?) and so on.
- rickyc091 13y agoThat's the problem with a lot of these sites like codeacademy, they walk you through coding, but they hide a lot of the process. To answer your question, the editor, etc. depends on what language you're programming in. For HTML, all you need is a simple text editor, notepad on windows, textedit on mac, gedit on windows. Sublime if you want syntax highlighting. Type in a few lines of code, save it with a .html extension and double click the file. The offline webpage should open up on your browser. Javascript is pretty similar, just save the file with a .js extension. You'll have to make sure the JS file is linked to your HTML file. I think the best resources are still books if you want to learn to program. They generally recommend software to use as you work through the book.
- tedsanders 13y agoIt's not clear to me that skipping the editor/language setup a problem. For a beginning programmer, setting up the language/editor/whatnot is a huge barrier to getting started. If you're not dead set on learning, you may give up before you reach the fun and interesting parts. I think there may be significant value in bypassing that barrier, teaching people to code, and then later returning to the problem of how to actually get your code running. Of course, right now, sites like Codecademy never address this issue. I agree with you that that's a problem for getting people to transition into building something new.
- niels_olson 13y ago> they walk you through coding, but they hide a lot of the process. That's what they should be doing. Having been trying to teach myself this stuff since photo.net and Ars Digita were hot, I can tell you, I spent 10 years stuck in Windows not knowing where to turn. Then I spent ten years learning all about everything around programming: editors, OSes, managing remote servers, languages, what those languages are for, algorithms, half-adders, little-endian vs big-endian, blah, blah, blah. And only in the last few years have I really gotten a handle on actually writing code that does stuff. Now I'm at the point I realize I'm way behind the curve on data structures but I have to say, I really wish I had been learning about data structures instead of how Bill Joy developed vi to cope with a slow modem. Sure, picking up Perl now, I can grab Padre and the Llama book and within a few exercises branch off on my own and add rewrite them with recursive functions and pretty interface elements, but I wish I'd been learning about advanced parsers instead.
- raiph 13y ago> Sure, picking up Perl now... but I wish I'd been learning about advanced parsers instead. Fwiw: Perl 5 is no slouch in the parsing department (via CPAN modules, including partial backports of some Perl 6 technologies). Perl 6 directly delivers a powerful but relatively easy-to-use parsing environment with its composable grammars and rules (http://en.wikipedia.org/wiki/Perl_6_rules http://en.wikipedia.org/wiki/Perl_6_rules).
- 13y ago
- booruguru 13y ago> I've done quite a bit on Codecademy, and I get it, but there are still a lot of things I am just ignorant of, like where you actually type code (what's a good source code editor?) and so on. I've noticed a lot of tech resources (tutorials, guides, manuals) routinely fail to explain basic, foundational concepts that are required for a beginner to understand what they are doing. And it drives me effing crazy.
- MarcScott 13y agoI see this as a major flaw in CodeAcademy. Running through the jQuery lessons with a few students today, I noticed that there was no mention of how to install the library or reference it on a CDN. I've often recommended the less exciting, but excellent EdX courses, if you want to "get into programming'.
- gsaines 13y agoCodeCombat founder here. This is really at the forefront of our minds, and although I agree with you that it's overselling to some extent to say that the current site teaches people to code, it's just a disconnect between the limited reality of the present content and our eventual goal/aims. Some of our harder levels do teach CS fundamentals like data structures, and our users recently added a series of 3 sort algorithm tutorials. Even on the next few months, I think we'll be able to put a serious dent in expanding our content and getting closer to our claim. In the end, I do think there will be things we can't teach. Like choosing an editor, compiling code, working with APIs, etc, etc. But I wouldn't consider things of that nature to be "coding." That's practical software development, and isn't something taught at most "computer science" programs in the US (it certainly wasn't taught at my alma mater). We could argue the semantics of "learning to code," but in our experience, it's the closest approximation to what we're doing. For the sake of argument, I don't think it would be feasible or helpful for the newbies on the site to change our homepage text to something like "Learn the fundamentals of formal notation, logic structure, and procedural execution." To someone that doesn't know what the terms variable, object, and parameter are, the distinction between "learning to code" and the first (arguably more accurate statement) would be lost. And if we can spark an interest in a few more people by over generalizing a bit, I'm willing to do it.