Ask HN: I want to know how to code. What's the best way for me to start?

9 points by ThisIsMeEEE ↗ HN
My school don't offer much, is there any way or maybe a free way?

18 comments

[ 2.9 ms ] story [ 52.6 ms ] thread
https://doc.rust-lang.org/stable/book/

Edit: I prefer a more practical approach and then dive deeper into needed topics and theoretical background about general concepts. But everyone learns a bit different.

You're going to suggest someone start with rust. Really?
Give OP a moment to say hi before trying to convert them to the cult.
Choose either python or javascript. Python is nice to work with, javascript is easy to observe in the browser. Both languages are useful and rich.

Whatever you choose, find some tutorials online and start. At least for python, I usually recommend "Automate the Boring Stuff with Python" or "Learn Python the Hard Way", however, you can find many more.

The two other things you will need are a code editor and some understanding of the command line. VS code is a good editor, though notepad++ might be okay as well, because it has less features and would be easy to begin with. The command line is a different than the usual way to rund programs, but it is not all that difficult for the basic stuff you will need on the start.

Good luck and never be ashamed to ask questions.

Thank you and appreciate it, I was about to ask that and thanks for explaining.

But what about the code editor, can you recommend one?

Notepad++. It has initial python support and is not so intimidating as VS Code. However, you can install both and see which of the two looks better to you.
Thanks for the great response. I am going to start with Notepad++ and decided to focus with Python.
You might wanna try Atom as this supports many languages and it's free to use.
Yeah, just use Notepad++ or even Notepad. It’s basic, mostly unopinionated and gets you going on your goal of learning to program.

Don’t mess with editors like Atom or VS Code right now. They will only serve to sidetrack you.

Harvard's CS50 course is by far the best complete-beginner resource - https://www.youtube.com/playlist?list=PLhQjrBD2T381L3iZyDTxR...

It's completely free, it's accessible for people from various backgrounds, you get exposed to quite a few different concepts and tools, David Malan is a great teacher and there are some really helpful online communities around the course.

In addition to this youtube playlist, if you search youtube and google, you can find their lectures for the same course from other years, their official website, their edx version, subreddits and other helpful resources.

Thank you so much! Will watch this video definitely.
CS50 is on edx so you can actually submit assignments for grading and such. Definitely the place to go and definitely recommended; it's a fantastic introduction to CS and programming.

https://teachyourselfcs.com/ is also a good resource.

Speaking as someone who never had formal education, I recommend starting with Python. It’s easy and fun to work with. You can pick up basics of programming in two weeks. After that I’d suggest diving into HTML, CSS and JavaScript. Once you get the hang of these technologies, you go on to exploring anything that tickles your fancy.
freecodecamp is very beginner friendly and starts from scratch. Start with HTML/CSS and then Javascript.
Traversy Media on Youtube. This guy is a GREAT teacher and has a LOT of free videos you can learn from: Intros to HTML, CSS, Javascript, and real world mini-projects to show you how to build things you can use yourself or in a portfolio. Mostly short videos (less than an hour) and a really easy person to learn from. He taught himself to code and really knows how to explain what might be complex topics in Web Dev and more to people who have never coded before.

https://www.youtube.com/channel/UC29ju8bIPH5as8OGnQzwJyA

Good luck!