Live data from Hacker News

Ask HN: How to step up my coding skills?

news.ycombinator.com

31–40 of 57 posts

Re: Ask HN: How to step up my coding skills?

#31
post #25

Write a video game. I tell this to everyone who wants to learn to program. Forget web development, initially (unless you want to learn HTML5/Canvas to build the game, which is not a bad idea at all). Game development is probably the best way to learn to program because it's fun, you have some sort of goal, you can be creative, and you have to learn a great mix of skills -- graphics/sprites, sound, timing, interaction…

I program in C for different micro controllers and like your idea of trying a game development. Any recommendation on books or links?

Re: Ask HN: How to step up my coding skills?

#32
Work with others who are better than you. You will be instantly pressured to step up your skills. Being around others of a higher skill level allows you to see how they do things and where you can improve.

I see that open source is encouraged, but you won't have the same drive as you would if you are working on your own project.

So find someone that is better than you and work on that cool idea that you always think about; we all have at least one.

Re: Ask HN: How to step up my coding skills?

#33
I understand that the current, lucrative but unsatisfying, job that you mention in the summary is being a patent lawyer [1]. I don't really know what it's like working that job but I would imagine you will indeed find coding a much more fulfilling pastime. Congratulations on deciding to become someone who creates real, rather than artificial, value.

[1] http://news.ycombinator.com/item?id=1496780

Re: Ask HN: How to step up my coding skills?

#34
Since you majored in maths and physics, you have a lot of specialized knowledge. I'd rather build on that than trying to compete with younger, better trained, more skilled people on "general purpose" development tasks. I once worked with a physicist and it was rather tiresome because on the one hand he had that "hey, I was at cern, I am the smartest guy around"-attitude while on the other hand he was ridiculously incompetent when it came to solving basic tasks.

Re: Ask HN: How to step up my coding skills?

#35
post #31
post #25

Write a video game. I tell this to everyone who wants to learn to program. Forget web development, initially (unless you want to learn HTML5/Canvas to build the game, which is not a bad idea at all). Game development is probably the best way to learn to program because it's fun, you have some sort of goal, you can be creative, and you have to learn a great mix of skills -- graphics/sprites, sound, timing, interaction…

I program in C for different micro controllers and like your idea of trying a game development. Any recommendation on books or links?

The Jason Gregory "Game Engine Architecture" is a good place to start for a 10,000 foot overview. Also try "Game Coding Complete," (aka "the Dinosaur Book") which has some more details and nuances. Both books are valuable starting places regardless of what your target language or platform is.

After those two I would consider what gaming topics you want to investigate further(rendering, collision, AI, etc.), and start specializing your search.

Re: Ask HN: How to step up my coding skills?

#36
post #19

Code. Build something. Figure out something you'd like to build, then figure out out to build it. You can't help but learn if you take that route. If that's not your cup of tea, then start contributing to open source projects. Learn Git and Subversion, then start taking tickets for Firefox or Chrome. Start off with the easy things, then work your way up. There's lots out there that needs attention, and being able to…

Building something doesn't teach you much about quality if you don't have someone to review/assist every now and then.

Or it teaches you more about quality because you own the product, set the schedule, and build exactly what you want.

Re: Ask HN: How to step up my coding skills?

#37
post #19

Earlier quoted context omitted.

Building something doesn't teach you much about quality if you don't have someone to review/assist every now and then.

Or it teaches you more about quality because you own the product, set the schedule, and build exactly what you want.

It is possible to build an app that does exactly what you want and is completely unmaintainable in the future. If you don't know anything about code quality, it is rather hard to pick up on your own. It helps if you have someone more experienced to look at your code and go "No, you're doing it wrong. You don't need to subclass for x, just use y instead."

Re: Ask HN: How to step up my coding skills?

#38
post #12

Honestly, figure out what your interested in and dive in some way. The best way to learn is to be challenged. I know not everyone learns this way, but at least for myself I like to just get way over my head and figure my way out. When I first started programming I always wanted to build a clan league (I was 14 at the time and Counter-Striker was just the coolest). So I learned php, mysql, and html (this was in 2003,…

ianl is right, you need to have a direction. Video games, desktop applications, web applications, and server side applications are all quite different. The languages will often be different, but so will all the support libraries and other technologies your code needs to interface with. You will probably find the most tools and books for doing desktop apps and web apps.

Having an itch to scratch is important, it's hard to devote hundreds of hours to a learning project if you don't care about the end result.

Re: Ask HN: How to step up my coding skills?

#39
Read. Buy every book you think you might be interested in and read. Then apply what you read in either (or both) side projects or open source. Then read some more. When you feel decent enough to land a job, go for a job where you can learn the tech you want to learn even if it means cutting back your paycheck. Only you know how much of a cut is acceptable to maintain a lifestyle you want to have. At that point you should be good enough (if development really is your thing) to establish a 'career'.

Re: Ask HN: How to step up my coding skills?

#40
post #25

Write a video game. I tell this to everyone who wants to learn to program. Forget web development, initially (unless you want to learn HTML5/Canvas to build the game, which is not a bad idea at all). Game development is probably the best way to learn to program because it's fun, you have some sort of goal, you can be creative, and you have to learn a great mix of skills -- graphics/sprites, sound, timing, interaction…

Around 8 years ago I did exactly this. I was (and still am, because my career shifted in another direction) a totally newbie to programming - except from some Basic I did when I was a kid.

I developed some small games and helped a friend with his architecture thesis using Visual Basic 6 + a 3D engine: http://www.truevision3d.com

It was REALLY fun and I was also able to show it to others to get their opinion.

Anyhow... I second the game dev suggestion. Good luck!

Post reply on HN