Hacker News new | ask | show | jobs
by j45 4544 days ago
I don't think web development is the hard thing to teach as much as problem solving well.

I would have them build anything and everything with the caveat that no matter how good they were (or weren't) the quality of their code would suck looking back in 5 years and to start with bad code, and incrementally add concepts like switches, functions, etc., much like very young coders did at age 10-15 when building anything, in any way was cool beyond belief. Solving problems better and better is the fuel of continuing to learn to develop better for me, but we all have to start somewhere.

Therefore start solving interesting problems. And keep solving them until you get better at it.

2 comments

> I don't think web development is the hard thing to teach as much as problem solving well.

True, but there's a lot to be said for having first-time programmers (and especially college students) do Web development. It's a familiar environment, which means that they'll know that they're doing something relevant and practical, rather than abstract. They'll be excited to see that they can create Web sites and applications, just like "real" programmers with more experience.

Part of the fun of programming is the immediate feedback that you get from your work. Nowadays, making that immediate feedback happen in a Web browser strikes me as a smart way to go if you're going to get them hooked.

I don't disagree with what you've said in any way.

Programming is simply clear step by step thinking to make something happen. Focusing too much on the syntax and strategies in the beginning can be a distraction from the raw and immediate feedback from your work.

> I would have them build anything and everything with the caveat that no matter how good they were (or weren't) the quality of their code would suck looking back in 5 years

Great point!

I had a similar experience growing up, but I think a lot of people that want to learn quickly give up.

What do you think we can do to keep people excited about it? I was talking to a few friends at UMich and they suggested we have them build their own personal websites so they have something tangible they can show their friends.

I thought about it a little, I'd probably not let them program much in the beginning and simply create results that they can keep hacking on through a high level tool.

To that effect, I'd probably recommend at this time appery.io .. to make mobile web based apps, which also bring in data.

Appery introduces enough about building apps, as well as the data and logic flow in a browser that people can learn one language (javascript) to see what's possible and branch out from there.

What do you think? Feel free to get in touch.