Live data from Hacker News

Ask HN: For those programming 10+ years, what do you wish you knew 4 years in?

news.ycombinator.com

421–430 of 538 posts

Re: Ask HN: For those programming 10+ years, what do you wish you knew 4 years in?

#421
post #166

Earlier quoted context omitted.

> If you really need to make software (like I do), make your own company and license/sell your work instead for >500% more than what would be your salary. The hardest part about this (for me) is finding a project/product to begin working on. I'm assuming you came to that sort of idea while working for others (which seems like the best way to learn).

IMO the hardest part is not finding the product, it is finding a person to handle the marketing/sales for you.

Most of the time I would assume there's always someone you can work with for this.

Finding other programmers or like minded people is the hardest part it seems for me.

Re: Ask HN: For those programming 10+ years, what do you wish you knew 4 years in?

#422
post #413

Earlier quoted context omitted.

> The boundary between a beginner and a coding rockstar really isn't very great unless you are getting into the realm of computer sciences, like machine learning. This is really untrue. On the surface, code might look the same between a beginner and a senior developer, but the decisions underlying the code will be night and day. Beginners will solve the problem of the day directly, with no care for introducing comple…

Probably unrelated It pisses me off how I keep having to rewrite/resolve this particular problem I have of deploying a photo sharing site based in a poor network area. One day I feel satisfied with the work I've just done, the next day it is garbage and I do it again a different way. Faster but not fast enough. Then you get this huge block of code and feel this heavy weight like ahhh.... Slash and burn... Am I doing…

Ahh, rewrite vs letting it stay! The classic maintainer dilemma!

Answering this really depends. I think I would start with "what do I hope to get out of this process". Are you doing this to learn? Are you doing it to grow a user-base? If it's a user-base, is this the biggest problem preventing your growth? If it's learning, is this the most interesting problem for you to solve?

Re: Ask HN: For those programming 10+ years, what do you wish you knew 4 years in?

#423
post #299

To myself, 4 years in, I would say: OOP is just a sliver of it and the typical ALGOL-based languages you're learning are a small piece of what programming can be. Learn functional programming now. Learn about immutability, referential transparency, and data-oriented programming. Even if you continue down the imperative, OOP path afterward, this knowledge will change the way you approach every design. There is so much…

Totally agree, I learned Clojure early on and wrote a few small projects in it, and it completely changed how I look at programming.

Re: Ask HN: For those programming 10+ years, what do you wish you knew 4 years in?

#424
post #56

There is no future in software development as a job. Move to a management position quickly, network, make friends with decision makers, don't spend too much time on crafting your skills, your reward for perfection will be more insane work and crazy interviews where one part not 100% done kicks you out. Work on your appearance, kiss up, lift, dress properly, use anti-aging cosmetics, make cool looking hairstyle, wear…

This is both cynical and exceedingly true. It's something I totally missed early on as a naive developer-puppy who just assumed that doing a good job was enough. The politics tend to be even worse in smaller companies where everyone knows everyone and it's harder to carve out your little corner of expertise and hide/ignore the drama.

Maybe this is true, but plenty of big companies are hiring tons of engineers... so I don't know how this is true universally.

Re: Ask HN: For those programming 10+ years, what do you wish you knew 4 years in?

#425
post #56

There is no future in software development as a job. Move to a management position quickly, network, make friends with decision makers, don't spend too much time on crafting your skills, your reward for perfection will be more insane work and crazy interviews where one part not 100% done kicks you out. Work on your appearance, kiss up, lift, dress properly, use anti-aging cosmetics, make cool looking hairstyle, wear…

>There is no future in software development as a job. this

Re: Ask HN: For those programming 10+ years, what do you wish you knew 4 years in?

#427
post #376

Everyone's code basically sucks, including yours. The boundary between a beginner and a coding rockstar really isn't very great unless you are getting into the realm of computer sciences, like machine learning. Learn from your seemingly smarter peers, but don't idolize them. Chances are they will leave the company long before you do, and you will figure out that their coding skills aren't all they are cracked up to b…

> The boundary between a beginner and a coding rockstar really isn't very great I'll add to the chorus here and say this is not only untrue, but so untrue as to be absurd. By all means caution against hero worship and remember that even those with exceptional talents are human, but don't misinterpret that lesson to mean there are not vast differences in quality between a beginner and an expert.

One thing I know for sure is the enormous difference between myself as a beginner and today!

Re: Ask HN: For those programming 10+ years, what do you wish you knew 4 years in?

#428

My wife hates it when I say this. (She's QA, I'm dev.) One of my best skills is assuming. I have to make tons of assumptions, and if I stopped working whenever I didn't know the answer for sure, I'd never get anything done. Instead, I make my best guess. If I'm unsure enough, I'll also send off an email stating my assumption and asking for direction, but I'll still keep coding based on that assumption. I am almost al…

"but I'll still keep coding based on that assumption." That's terrible advice. If you're unsure of what you're supposed to be doing, you should close the computer and start exploring your options with pen and paper before doing more damage. If you keep going based on assumption, you drive halfway across the country in the wrong direction like in Dumb and Dumber. Sometimes it's better to do nothing at all than to infl…

It's not like driving the wrong direction. Lets say you build 3 systems and only one gets used. You are still getting 3x the experience and your revelations could end up being very valuable for the system that does get used.

Re: Ask HN: For those programming 10+ years, what do you wish you knew 4 years in?

#429
I spent too much of my studying effort on being a programmer. Mastering C++11 features, writing SIMD assembly, reading Agner Fog manuals to learn the x64 ABI and instruction timings. Implementation stuff.

Those things are important, but I focused on them too much. I should have spent some of that time on higher level math-y skills like machine learning, numerical optimization, vision, NP hard approximation algorithms, computational geometry, control theory, etc.

Re: Ask HN: For those programming 10+ years, what do you wish you knew 4 years in?

#430

That shipping stable software that works and meets requirements is what people really want. In other words, what the non-tech business people want, or your customers want, is software that fixes their problems, makes their lives easier or makes them more money. It's easy for us programmers to become fixated on using a newer JS framework, a slightly tighter Java loop or the latest cool language. Took me a few years to…

I agree completely with this post but want to provide some additional insight that I've gained:

Learn to enjoy your work as that's the only way you'll make it long term. If that means spending a little extra time to write an efficient algorithm or structure your code efficiently v.s. just "getting it done", then do so for your mental health, not for the company.

You see, we're craftsman at the end of the day. We all want to feel like we are contributing quality work, and often that conflicts with the business's priorities. Take pride in your work and you will find it easier to show up at the desk each day.

Post reply on HN