Live data from Hacker News

Want to Learn to Code? Start Small and Have Fun

fredkschott.com

11–18 of 18 posts

Re: Want to Learn to Code? Start Small and Have Fun

#11
Totally agree with your point. I tell almost everyone trying to learn programming to start off with Udacity CS101 with Python. I myself started with HTML/CSS a long time ago. It is not programming per say but the satisfaction of having created a simple web page is satisfying. Learning Ruby on Rails from the beginning will be too much to handle at one go without even knowing the basics of HTML/CSS/JS and not even to mention the basics of database design. It will take a long time, but it will be worth it as knowledge and experience is accumulated. Start Small, Have Fun - good advice.

Re: Want to Learn to Code? Start Small and Have Fun

#12
I find all of these learn to code posts very interesting. I would consider myself to be a beginner coder even though over the years I have spent time learning or trying to learn C++, HTML, CSS, Javascript, Node.js, jQuery, Objective-C, Python, Ruby and others. For each language I had a different reason for wanting to learn, generally it amounted to wanting to build something and trying my best to learn the pieces necessary to start.

The key thing that ties all of my different attempts to learn together, and why I still consider myself to be a beginner is that I always stopped short of achieving my goal. Generally this was due to hitting some sort of blockage that I couldn't figure out how to get past, or generally getting bored with the slow learning process.

Both of these recent articles have really resonated with me, as I have personally struggled with Codecademy (currently 66% done code year), and I regularly bite off more than I can chew. I like the suggestion of finding a mentor and putting my head down, as well as focusing on small projects that build off of each other.

In the end, I really want to learn how to code, but so far I haven't found a method that sticks. Maybe that says I don't really want it, but to me it says there isn't a great learning method out there for me yet. So while Codecademy is great and all, I really think there is still a hole in the market. Figuring out how to fill it is the key.

Re: Want to Learn to Code? Start Small and Have Fun

#13

Earlier quoted context omitted.

Yeah. And as a newbie, which sounds like the more plausible path to successfully becoming a real programmer? 1. Can't do anything -> Learn to build stuff -> Learn to write good code 2. Can't do anything -> Learn to write good code -> Learn to build stuff Plenty of folks need the motivation of seeing what cool stuff they can build to make it through the dry parts.

My (heavily biased) recommendation - start with c++ or some other annoying, slow language. I know other people say learn python or ruby, but I think that makes for sloppy programmers and bad habits. First, read Introduction and Basics of C++ in the link below. Then make a text based rpg with 1-2 rooms. I would have a character and two bosses each with with power, toughness, and 1-2 attacks. Then read Compound Data Ty…

I actually agree with making game-y stuff just for fun, because it allows you to think up and build rather intricate architectures real quick. It's hard to make a game as a newbie and not have it turn into spaghetti as you keep making it more complex, but it's also no biggie, and you get to learn how to recognize those things, what to improve etc. Practice with games, when you become more confident make applications; to me that makes sense? Playing games may be a shallow pastime, but making one can become more hardcore than one imagined real quickly. Just about anything in programming you could mention, certainly all the "pedestrian" things, could theoretically be put in a game - but a game can also be just two rectangles and one circle, and in that spectrum, and the absence of even the pretense of being useful, lies a great opportunity for experimentation and learning.

Make a simple clone of a game or application or graphical effect you adore, and go from there. There's still plenty of opportunity to suck the fun out of it later :P

Re: Want to Learn to Code? Start Small and Have Fun

#14
post #12

I find all of these learn to code posts very interesting. I would consider myself to be a beginner coder even though over the years I have spent time learning or trying to learn C++, HTML, CSS, Javascript, Node.js, jQuery, Objective-C, Python, Ruby and others. For each language I had a different reason for wanting to learn, generally it amounted to wanting to build something and trying my best to learn the pieces nec…

I think you're right that the "finding a mentor" part could help you out. Everyone who programs hits ceilings at various stages through their careers, and you sound like you're interested enough to want to break through. I find that these breakthroughs usually come to me from either a) getting someone else to show me a way it could be done, or b) learning something from the code of someone a little beyond my skill level. If you've stuck around for that many technologies under your own motivation, perhaps you just need to talk it out with someone just on the other side of your struggles.

You're right; there's no sure solution, but having comrades and leaders in learning usually doesn't hurt. Best of luck!

Re: Want to Learn to Code? Start Small and Have Fun

#17
post #12

I find all of these learn to code posts very interesting. I would consider myself to be a beginner coder even though over the years I have spent time learning or trying to learn C++, HTML, CSS, Javascript, Node.js, jQuery, Objective-C, Python, Ruby and others. For each language I had a different reason for wanting to learn, generally it amounted to wanting to build something and trying my best to learn the pieces nec…

Your reply remind me of the situation I was in little over a year ago. Based on my own experiences going through trying to learn to code, a few comments:

"In the end, I really want to learn how to code"

No, in the end you want to learn how to solve problems.

If you start with a problem and try to learn the minimal of whatever coding/ language/ package/ software is required to solve the problem, you will be much further ahead. At this stage, don't worry about being efficient or writing the best code. Now, I laugh at the SQL queries that I wrote a year ago but they did solve the problem. Over time, I learnt to write much better queries.

"I always stopped short of achieving my goal"

This is because it was your goal and on not achieving the goal you gave yourself a pass. You will be better off solving a problem for someone else for whom you care and you will be embarrassed if you didn't solve the problem, like for your spouse, kids, parents, siblings, friends, coworkers, boss, neighbor. Also, achieving small victories are important for continued interest.

Little over a year ago I was jumping around between Ruby, Java, Python, HTML, CSS, JS, SQL, R never finished learning or using any of them until my wife asked me to automate a manual process for her. I started out with solving her problem and learning enough of the languages that will quickly solve the parts of the problem.

In the end, I learnt enough of mySQL, PHP, and Bootstrap to deliver a complete solution to her problem. There was enough fear of failure and being embarrassed that I delivered a complete solution, however rough, to her. Since then I have modified and extended the solution and now it is being used by another 1,000 users, still it is an ugly piece of work. But I am much more satisfied and encouraged to continue learning and improving.

Re: Want to Learn to Code? Start Small and Have Fun

#18
I have been learning by myself for the past year, and if I may, let me share a few thoughts gathered along the way:

- This will never be “2 months, and I'll build next Facebook”. Consider that this is a field of knowledge that is exponentially evolving every year, and you will need years before you are comfortable with it. Learning code or computer science is a long term decision, and you should go for it if you really see yourself doing it as a hobby. If you are not up for it, better learn web design or something that relies less on programming;

- Following my previous point, start by learning the basics of computer science. You will not understand the abstract concepts, or know what you are doing before you have the theory basis behind it – You will get unmotivated faster. How fun is it to play a guitar without knowing music theory? There are dozens of ways to learn CS, and I personally find the CS50x class from EdX the best source to start;

- If you don't like math, well.. start liking it! Part of the enjoyment of programming is the satisfaction you get from solving problems. Read books about algorithms and/or take the online classes in Coursera or Udacity. Also make Project Euler as a daily visit, and try to solve several challenges per week;

- Again, start small, and go small every step. Make a structured plan of what you want to learn, such as "Monday I study Python, Tuesday for Algorithms, Wednesday for CS..". Take advantage of dozens of courses available in Coursera, Udacidy and EdX.

- Part of learning anything is making yourself motivated along the way. You should study at least 10h per week (I work full-time and I never study less than that) and make your successes visible, such as placing a post-it with every online course you completed in a wall;

Btw, I studied Economics for 5 years and I am 24. Even if you are older, never fall in the excuse that you are too old or it's too late. That's your "I am afraid to fail" thoughts. You don't have any pressure, no one is asking you to develop a whole new Microsoft.

Post reply on HN