Live data from Hacker News

Ask HN: Essential skill needed to be a programmer?

news.ycombinator.com

141–150 of 193 posts

Re: Ask HN: Essential skill needed to be a programmer?

#141

The single greatest benefit to my career as a developer has been learning to draw. I draw on whiteboards, in moleskins, on printer paper, on the back of resumes... anywhere and everywhere. I do this because I need to convey complex ideas to important teams who are NOT programmers: Product, Marketing, People Ops, and the C-suite. Helping people understand my ideas through illustration creates buy-in from them and trus…

What level of drawing we talking here?

Re: Ask HN: Essential skill needed to be a programmer?

#143

A capacity to endure endless mind-numbing boredom.

If learning new things and solving problems is boring to you, then programming is the wrong job for you.

TBF I spend more time painstakingly following stack traces around to figure out the root cause of some weird bug than I do learning cool technologies or devising novel algorithms. It's all "fun" or "interesting" in a certain (sometimes masochistic) sort-of way, but it definitely requires a certain mental fortitude. Even learning the coolest of new tech requires hours of slogging through documentation or dealing with development environment headaches.

Re: Ask HN: Essential skill needed to be a programmer?

#144
post #125
post #96

I consider this essential: The ability to decouple the task from your ego. Specifically: - Never say "Got it" or "OK" when someone is explaining a problem or solution and you don't follow. It feels awkward to say "Sorry, I'm still not following. Do you mean that when..." five times in the same conversation but it is worth your time and embarrassment to come away with a correctly framed and well understood situation.…

>> You are likely missing some context about the choice If it's a product/business decision and you care about that aspect of your work, dig down and understand the context, otherwise, before long you're likely to grow numb to that aspect of your work.

This 1000%. If you're in a business-interactive role, ask about the business as time permits.

People like to feel like an expert, and will usually be happy to explain.

It will make you better (knowledge transfer to unrelated problems), your code better (domain knowledge), and your relationships better (recognizing your colleagues as peers with different skills, not just not-your-skills).

Re: Ask HN: Essential skill needed to be a programmer?

#145
a thirst for new knowledge and the ability to communicate that knowledge to others in a way they understand. Speaking to a fellow programmer is different than speaking to a manager is different than speaking to a customer.

also, knowing how to say "no" professionally and firmly is an important and respected skill.

finally, being able to see the forest through the trees and value the business side of what you're doing is a key perspective. Everyone loves to trash talk Sales/Marketing/Management but those people turn your programming into your paycheck so a little understanding is deserved.

Re: Ask HN: Essential skill needed to be a programmer?

#146
post #23

To simply be a programmer, one must only write a program, nothing more. The essential skill I guess would be literacy, knowing how to read and follow directions, knowing how to use a keyboard, not much. To be a good programmer, if I have to pick only one "skill" I would pick systemic thinking/understanding. This starts with the ability to learn and eventually understand how a system works. The next level is the abili…

> systemic thinking / understanding

I was going to phrase it as "simultaneously seeing the forest and the trees."

The vast majority of my programming career has involved (1) taking a huge amount of information (specs, code), (2) building a mental model of it at 2+ levels of detail (high-level to fit a simplified holistic system in my mental swap space, and detail to have all the details about this problem at hand), (3) identifying the needle in the haystack, & (4) coming up with a simple solution.

As the parable goes [1], it's knowing which bolt to turn & how far.

[1] https://www.snopes.com/fact-check/know-where-man/

Re: Ask HN: Essential skill needed to be a programmer?

#149

The question is too broad, but along the lines of Norvig's answer... There's a particular micro-expression I sometimes notice with people who are working on a software problem. I notice it when something goes wrong unexpectedly. People who aren't particularly talented at SW development, for a brief instant, give a facial expression of disgust when something crashes or behaves incorrectly. People who are awesome at de…

Nah... I constantly say ah... fuck this shit! I then proceed to fix the bitch of whatever problem it is. I'm a real programmer though.

Re: Ask HN: Essential skill needed to be a programmer?

#150
post #23

To simply be a programmer, one must only write a program, nothing more. The essential skill I guess would be literacy, knowing how to read and follow directions, knowing how to use a keyboard, not much. To be a good programmer, if I have to pick only one "skill" I would pick systemic thinking/understanding. This starts with the ability to learn and eventually understand how a system works. The next level is the abili…

Yes. Literacy.

I saw many beginners who treat a compiler like a black box and attempting hand fuzzing until it happened to match the well-formed syntax and behaviour they wanted, while they literally holding a paper text book or opening a browser tab for a tutorial which clearly explain how it works and what they should write in a plain natural and native language of theirs.

One time, I was told by a beginner who copied an example code from a text book that it doesn't work. I looked at it. It was a fizzbuzz code, less than 10 lines. And she typed it wrong. Not just an ordinary typo. She conjured up really strange ill-formed syntax she believe it works somehow. There is a parse error message but she ignored. I pointed out the place on display with a finger and she still didn't get it. I place a text book beside the display but it requires a considerable effort convincing her the cause of the error.

Other time, I was asked why for(;;) ; else ; doesn't work in JavaScript. I kept saying because there is no syntax like that in JavaScript. You have to accept it as is or create your own language.

Sometimes, I wonder some people read natural language text by simple keyword pattern matching. People like above example weren't dumb. Far from it. They are smarter in their field than me. Yet, they failed at this basic literacy level.

Post reply on HN