Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Codecademy Adds Beginner Languages HTML and CSS (mashable.com)
84 points by aritraghosh007 on April 2, 2012 | hide | past | favorite | 31 comments


I wish HN users would submit the actual content, rather than having to click through Mashable or TechCrunch. I'm not going to enrich them by clicking on their ads, anyway. Just point to the original content, thank you very much.

http://news.ycombinator.com/item?id=3789022


Frustratingly, Mashable doesn't directly link to Codecademy. It instead points the hyperlinked name to another page on its site, and obscures the relevant URL behind what you might naturally consider to be another Mashable page.

They should try showing less contempt for their readers.


Anyone else cringe when they referred to HTML and CSS as programming languages?

Other than that, great to see a potential replacement for W3Schools.


Nah, not really. You can consider the term “programming language” to refer only to those languages capable of computation, but then you’d have to include LaTeX and CSS3, because they’re both Turing-complete. Where do you draw the line?

Probably the most reasonable way to cut it up is to treat programming, markup, and styling languages as subsets of computer languages. They all overlap to varying degrees, and Turing-completeness is entirely separate—Magic: The Gathering is Turing-complete, and nobody is calling that a computer language of any kind.


I guess it depends on what type of person you are, what type of rules you use to distinguish things. So I am always looking for isomorphisms and equivalence relations. So to me if you are Turing complete then I can define an equivalence between you and a programming language. So Html5+css3 goes in. You can encode turing complete computations into Magic the Gathering? Then yes MTG + Appropriate Encoding can be talked about in the same sentence as programming language.

Whether or not these languages can also be found in the Turing tarpit is a separate thing.


The point isn't that your rules are a bad way of defining computation. The point is that your rules are basically irrelevant as far as deciding what an acceptable language for an online course would be.

Markup languages, even ones that are utterly incapable of encoding even a trivial computation, are way more relevant to computer literacy than Magic: The Gathering. I can guarantee you a beginner will learn more if I teach them how a computer interprets Markdown or HTML than if I teach them how any general computation can be embedded in a card game.


This reply may never be read... but I was responding to the question "Where do you draw the line?"

So I pointed to where my line was drawn. The given thought was completely independent of what is appropriate for teaching.


I for one am with you. We were only talking about reasonable ways to divvy up the different categories of language, which is only tangentially related to the article.


Mozilla Developer Network already is the replacement for W3Schools. Even for experts, it's a great reference.

https://developer.mozilla.org/

You'd have to be very green to find w3schools to be any use, and even still, it would you bad advice too often.

Speaking as someone who develops html and css professionally (among other things), no they aren't programming languages. To call them as such would suggest some sort of logic, which unfortunately isn't present.

It takes maybe two years using them professionally most of your working days to become an expert. Everything after that is monotonous, repetetive drudgery.

Html5 is a disorganised mess and the wonderful css3 is vendor-prefix hell. I know a lot more of both of these languages than a sane person would want to, and I need a new job. The DOM is a handicap. The front-end of the web is broken.


A little, but I cringed more at this:

"New programmers typically learn how to use them before any other programming languages..."


All anecdotes aside (I started in HTML and VB, gotta say the VB was more useful to me as someone who didn't go on to be a professional programmer), maybe there's some poll they took to see where people started. Maybe there needs to be. I could see a case where people typically start with a easy-to-grok language like HTML. For one, it's quick to see progress in HTML proficiency.


I'm just graduating with my BS, and I just know general tag usage in html like <img> <video> etc and absolutely no CSS, because I have never made a website or tried to.

My only attempts at javascript were demoing webgl and then I wanted to throw my screen at the wall.

So something like this is nice - I should know how to make web sites, if only to say I know how. Its a good skill.


I completely agree. If I were getting started now, I would probably start learning JavaScript as my first programming language. Along with that I would want to learn HTML and CSS, but to say that most new programmers get started using HTML and CSS as their first languages seems a stretch to me.


Well someone should let codeacademy know that HTML/CSS aren't programming languages!


That's absurd. They are a set of rules that dictate how a browser lays out media. That's a programming language to everyone but a computer science purist. The question of whether I can use these layout rules to find the 2,000th digit of pi is totally irrelevant.


I regard them as instructions to be processed by something which can actually evaluate those instructions, like a browser. Writing css and html is no more programming than writing a word doc is. The resulting file has information and layout but it's totally static.

I wouldn't call them a language, and they're the main part of my job.


I cringed when they called them "beginner" languages.


Well, regardless of how useful they are in production or how many livelihoods depend on them, they are simple for a beginner to understand the concepts of. They lay the groundwork for more advanced classes that go into web creation such as Javascript and Ruby. Many people versed in HTML go on to learn Javascript next, because that's the next logical step and next increase in complexity.


BTW some really smart people proved that HTML5 and CSS3 are in fact turing complete. ;)

http://lambda-the-ultimate.org/node/4222


When I initially read it, I had assumed that there was a comma missing and they had added "beginner languages, HTML and CSS".


These are browser tech, aren't they? They can be learned. I think they made an slip somewhere in between there.


Codeacademy is really good, it's helped me brush up on my Javascript for one thing.

But as for creating and contributing content, their terms [1] are a bit draconian. They specify complete ownership of anything you contribute to the site, and aside from your right to delete your contributions, it appears that there's no way to export content.

I'm no lawyer, perhaps someone here is: do their terms prohibit reusing my own contributions in another venue?

[1] http://www.codecademy.com/terms


I'm not a lawyer either, but as I read it the rights are similar to many other User submitted content sites. They aren't required to make it easy for you to get your content off their site, and any content you leave on the site they have a free license to use on the site. However they do not claim ownership of code you may have written when used/hosted elsewhere. I find it difficult to believe that anything you write on there would be something that would take you more than 15 minutes to recreate in a local editor... but that may just be me.


Thanks for your comments, indubitably. I'm the cofounder of Codecademy. I'd love to hear your concerns - shoot us an email at contact (at) codecademy (dot) com and we'll discuss terms.


CodeSchool already has something like this and it's great: http://www.codeschool.com/courses/css-cross-country

I took a quick look at the Codecademy one and it seems a bit dry. I think they should pick something other than Codecademy to talk about. http://www.codecademy.com/courses/week-3-html-project/0#!/ex...


Codeschool is awesome, they really nailed the video segments into code part. Makes it way more intuitive and interesting than codeacademy.


Why not focus on a general purpose language like Python? Oh well, this is still great progress and I'm sure they'll add more languages soon.


Python is coming real soon as well as Ruby :)


I don't know if you agree, but I think that there could be multiple-language lessons where you have the same task to complete in different languages at once, or maybe a multi-part thing where the output from one is used in the other to complete a single lesson.

I think that might attract some of the more seasoned folks as well.

Just a thought.


Yes definitely. You could do that now using our course creator tool (http://www.codecademy.com/creator), where different sections could be teaching a different languages.

Also related to that is teaching one language in terms of the other "Introduction to X for Y programmers".


I gotta ask..what took so long?

I remember when they launched people submitted a ton of content...and in all this time, all they came out with is the most basic of languages




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: