Live data from Hacker News

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

news.ycombinator.com

241–250 of 538 posts

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

#241
post #71

Earlier quoted context omitted.

That's the only way I see the tens of thousands number being accurate. What's your over/under for how many engineers AppAmaGooBookSoft will hire this year? Mine is 50k. I did a back of the envelope calculation for this last year but can't find it. 90% retention rates imply a 5 year survivorship of ~60%; feel free to take any of several thousand HNers out to coffee if you want to confirm what competent, worksmanlike e…

The five combined have a total headcount of roughly 660k, meaning they would need to be hiring annually roughly 7.5% of their total just in software engineers. At that level I don't buy it. Since the number is dominated by Amazon, who has a huge logistics contingent, I'm not sure specifically about engineers. I'd say roughly half of that total is engineers that have something to do with software (not necessarily soft…

Median tenure at Google is about a year: http://www.slate.com/blogs/business_insider/2013/07/28/turno.... Amazon is famous for burning out some of its employees very quickly. Why do you think 7.5% is a reasonable number?

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

#242
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 some of the worst advice I've ever seen. Do this if you want to die sad and alone with nothing but your money beside you I guess. The last sentence is actually not bad advice though.

Yeah this is how the world gets Donald Trumps.

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

#243

I started off in .net, where historically all functionality not provided by the .net framework is offered at a financial cost. if you don't have a large team (who can help with bouncing ideas, etc), the benefits you get from using module ecosystems like npm or pip can not be understated.

How long did you stay in the .net world?

Was it hard to switch out of it and learn a lot more?

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

#244
post #174

Earlier quoted context omitted.

This. Make your _business_ case, not a technical case. This applies to software engineering, security engineering, etc. The above comment does not absolve you from doing cool things, it's just that the cool things should align with business interests. No yak shaving. Sometimes writing a one-off script will take 30 minutes, and doing it by hand will take 10. Do it by hand.

I printed this XKCD specifically to remind myself that some things aren't worth automating! https://xkcd.com/1205/ On the other hand, sometimes you're automating for reasons other than time savings. Maybe reproducibility or auditability.

Great point - the benefits of automation can't always be reduced to time saved per operation. I wrote a blog post [1] about this in response to that xkcd.

[1] https://andrewstahlman.com/posts/IsItWorthTheTime.html

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

#245

I spent a long time never bothering to master semi-advanced text editor or ide features. Like really simple stuff like moving forward/back by a word at a time, deleting a word at a time, hopping to next/prev brace/paren, renaming globally, doing everything without needing the mouse, multi-select etc. You can go even deeper and get into deep VIM style skills but there are many very easy things to learn that let you do…

Okay, so as someone who is less than 4 years into programming what are the key common shortcuts(not they're actual hotkeys just which ones are used the most) to learn for semi-advanced text editors and IDE's? EDIT: thanks for the advice guys, I use Jet Brains range of IDE's for school cause free licensing and I'm using VS for my summer internship. I'll look into emacs though, thanks for the suggestion!

I've got a few visual studio tips here: https://jackmott.github.io/programming/tools/editor/ide/visu...

and here: https://jackmott.github.io/programming/tools/editor/ide/visu...

I'm not familiar with jetbrains but if you can probably find equivalents for all those VS tips in jetbrains.

are you one of my interns? haha.

It can be worthwhile to at least partially master emacs/vim as well, since these exist on all platforms, can be very powerful, can use them when remoted into a tiny linux cloud box via a terminal, etc etc.

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

#246
- If you haven't done so, learn functional programming properly, it changes the way you think about code. The coursera scala funprog course is a good way in.

- Design for maintainability, not ability. Code should be simple, maybe even a bit boring, and not trying to be too many things. YAGNI and KISS. This gets rid of a ton of time wasting down the road.

- When faced with a standard problem, use standard solutions. Use popular proven languages, libraries and frameworks, instead of the hip new thing. This saves time which you can invest in the parts that are novel and require novel solutions.

- Understand the business value of the code you write, and the political process that produces its requirements. This knowledge will create opportunities to earn more, do more interesting work, and have happier users.

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

#247
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 be, especially if their code is poorly documented. You will soon understand that they were focusing on getting the job done, while you were expending all that effort to be clever. In that sense, they were totally right.

Don't overwork. Seems obvious, though it's not only still prevalent in America, but more important for our field. Working extra hours has rarely benefitted me either in quality of work or in company treatment. Nobody cares that you put in extra hours. In fact, don't expect your boss to care about anything you are doing even if they are generally benevolent.

Your success is mostly dependent on your personality with appearance as a close second. That's not to say you won't have big wins with the projects you work on, but a lousy programmer won't get fired if they are charming and everyone likes them. The more I refined my social skills, as well as my grooming, the more my minor achievements would get overinflated by my peers and the more they would overlook my mistakes. It's just a cruel fact of life, but at least it's something most people can actually address.

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

#248
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 some of the worst advice I've ever seen. Do this if you want to die sad and alone with nothing but your money beside you I guess. The last sentence is actually not bad advice though.

It used to be better, now if you aren't running your own software company you are treated as a 3rd class citizen and you have to become sleazy "Saul Goodman" to prosper. I am super disgusted by the state of affairs right now, which is why I am running my own businesses, but don't expect this would get any better as the computing tech innovation pace has slowed down to a crawl, stabilizing existing power structures for the next 50 years.

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

#249
post #233

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…

This is why I always ask what is the business value of doing cool thing X on a project. Using your words if "using a newer JS framework, a slightly tighter Java loop or the latest cool language." doesn't improve the business value of what the customer is getting out of the product, it gets a very big NO. I became very much against "cv building driven programming".

Along those lines I'm always surprised at how many SUCCESSFUL tech companies even today are built with PHP. Tech stack is often not the driver of success or failure in a company.

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

#250
post #185

Work somewhere where software is the main product and not just a cost center. You can learn a lot quickly if you do cutting edge things with people who care about technology and not just cost. Solve real world​ problems. Doing elegant things is very difficult because the real world is much more convoluted than theory. Do a few things in depth. Don't jump at the latest thing every few months.

> Work somewhere where software is the main product and not just a cost center. I've done both and I can't say one is better than the other. I've worked on software products where marketing couldn't figure out how to sell it and kept changing the core functionality. Or where the CEO kept shoving his ludicrous ideas onto development. I've worked on rewarding IT projects where I worked very closely with the users and w…

"Marketing...kept changing the core functionality" "CEO kept shoving his ludicrous ideas onto development"

Check and check. There's also my personal favorite: marketing informs the dev team they've just inked a big contract with a tight deadline for features that were never discussed with the dev team. "We kinda told them we already had those features but hadn't released them yet. Can you guys build that real quick like?"

Post reply on HN