5 ms·
Ask HN: What is the best (online or offline) resource to learn to code?
Hi Hacker News, thank you for reading.
I've been in to techie/hacker related things for a while but I have never had the opportunity to learn to code beyond some fairly rudimentary stuff (html, css and Visual Basic) I learnt in my early teens. I use a lot of opensource software and feel quite guilty that I use it without being able to contribute to it (even in a minor way).
In an ideal world I would be access to coding courses as easily as accessing courses in second natural languages but the world is less than ideal.
So, back to my question. Where would you guys recommend I start?
- astine 14y agoIf your concern is about contributing to open soource software, you don't need to know how to code to contribute. Bug reports are actually hugely important and some projects take financial donations. As to learning to code, there are actually a lot of good resources. http://learnpythonthehardway.org/ http://learnpythonthehardway.org/ Is a good book which will show you the basics and get you started with a lot of practice. The Khan Academy also has some introductory videos: http://www.khanacademy.org/cs/tutorials/programming-basics http://www.khanacademy.org/cs/tutorials/programming-basics. In addition, you can find tutorials for just about any language and they'll also show you some of the basics. Oh, and Visual Basic, while arguably being shitty, is a real programmng language, so if you understand it, you already know how to program. You just need to learn a more useful language.
- roryliam 14y agoThank you for those links. I think I will make more of an effort to contribute to projects in non-coding ways while I learn to code.
- knwang 14y agoLearning to code is a bit too general for concrete advice. what would you like to code for? websites? mobile apps? games? algorithm? or automating systems? do you have a language / framework in mind?
- roryliam 14y agoI kind of deliberately left the question fairly wide just to see how people would reply. I think I would edge towards websites and similar but I would like to understand the processes involved in developing software for Linux. What would you recommend for a beginner (apart from JS and Python)?
- knwang 14y agoThe Ruby programming language and the Ruby on Rails framework would be your best bet. The ecosystem is quite polished on building web apps.
- knwang 14y agoIf you are a beginner, I wrote a post about how to start with Ruby / Rails as a beginner that you may find interesting: http://www.railstutors.com/blog/the-best-way-to-learn-ruby-on-rails-as-a-beginner http://www.railstutors.com/blog/the-best-way-to-learn-ruby-o...
- shakeel_mohamed 14y agoFor html/javascript/python, go with CodeAcademy.com!
- roryliam 14y agoThank you, I remember using that a few months ago but other things got in the way. I have done a few exercises since you replied and it is proving very helpful.
- jfaucett 14y agoSince you say you know html,css, then I think the easiest thing to do would be to learn javascript and jquery and get a github account. This will probably let you see results and start contributing to open source the fastest. Once you get good enough in js you can do some bug fixes for any of the tons of js projects on github and work your way in on that route. I'd say with any non web-centric language (i.e. c, c++, ruby, go, haskell)- especially since you don't know coding yet - your looking at a minimum of two years before you could start actively contributing to a project. Here's some links to learn js/dom: MDN: https://developer.mozilla.org/en-US/ https://developer.mozilla.org/en-US/ Opera Developer Site: http://dev.opera.com/ http://dev.opera.com/ Javascript Repos on github: https://github.com/languages/JavaScript https://github.com/languages/JavaScript (read the source!) Also "javascript the good parts" by Crockford is a good javasceript book.
- roryliam 14y agoThank for you those resources. I've added the book to my Amazon Wishlist. It seems that coding for the web is probably the 'easiest' entry into the world of coding and I have an idea that I wish to pursue so having that goal will give me extra motivation. Apart from the actual languages and frameworks, what would be the best way to go about learning? Gradually or intensive?
- Lasher 14y agoI've found Lynda.com is an awesome resource for getting a quick overview or refresher on the basics of a language with more in-depth classes if I find something interesting enough. If you're looking at learning a single language in depth they're probably not the best for anything, but a lot of breadth on there, they cover a lot of apps too. Not free, basic plan is 25 a month but they do have a free trial.
- spuiszis 14y agoI've been pretty happy with RubyMonk.com and CodeSchool thus far. Also, Coursera and EdX have open programming courses taught by professors from Cal, MIT, Stanford, etc. Also, Why's Guide to Ruby has been good to me so far if you want to get into Ruby.