Live data from Hacker News

Ask HN: When does programming start to make sense?

news.ycombinator.com

11–20 of 53 posts

Re: Ask HN: When does programming start to make sense?

#11
post #8

Earlier quoted context omitted.

What is causing the frustration?

I can see the solution in my head as a picture, not words. Maybe I need to practice framing problems more.

I dont ever see words. Sounds like you might need practice figuring out how your pictures relate to code.

Re: Ask HN: When does programming start to make sense?

#12
post #7

> Every time I try to learn programming, it feels painfully slow compared to other things I've picked up. It's probably slow because you're not having fun with it. You're probably not having fun with it because you're not solving a compelling goal. Ask yourself whether you're learning "just to learn it" or are you trying to solve a problem and this particular language/api/compiler/implementation will help you achieve…

It was no fun when I REALLY learned how to program, it was pure panic. I was half way through a CS degree and got a summer job, and I just had get it done no matter what so I beat my head against the problems and solved them. After that, all the theory that I'd been learning started to make sense, and now I have a more nuanced approach to coding, and a successful career.

Just trying to say, learning is not always fun. Get a job doing something you don't know how to do. Maybe that will motivate you. :)

Re: Ask HN: When does programming start to make sense?

#13
post #8

Earlier quoted context omitted.

What is causing the frustration?

I can see the solution in my head as a picture, not words. Maybe I need to practice framing problems more.

If you are a visual learner, you should make sure you can draw statecharts (not decision/flow-charts), process diagrams, UML-style diagrams by hand. Learn the conventions. Then learn the design-patterns in the gof book and make sure you can draw a singleton, delegate, etc... Next bust out a notebook and start trying to draw your solution (by hand) before you sit at a keyboard.

IMHO all of the UML diagramming software are a bunch of crap but being able to understand a bunch of code as a picture should help allow your brain to see the forest for the trees.

Re: Ask HN: When does programming start to make sense?

#14
Alan Turing said that programming would always be interesting because the boring mechanical aspects could be automated (where "interesting" means "you don't understand it" - or else you could automate it.) I daily run into issues that I don't understand. That's what programming is for me, I'm afraid; rather like science. It's a sequence of monsters. The best we can do is to be tackling new monsters, not the same ones.

Of course, programming jobs do exist where you do the same thing over and over again. And there's a threshold of skill required before you can automate some classes of things; and you also need a clear understanding of the task, to see precisely which aspects are mechanical, and which aspects are configurable. It pretty quickly gets into compsci research. And sometimes it's not worth the effort (it can take a lot of effort.)

But if you've ever called a method twice, instead of writing the code twice, then you have done some of it.

I feel that your question "start to make sense" suggests your thinking is all-or-nothing. Does no aspect of programming make sense to you - or do some "trivial" aspects make sense but they "don't count"? Does a print statement make sense to you, to some extent? Does a loop make sense to you? There's a continuum of mastery. If you only acknowledge perfect and complete mastery as "mastery", then you won't feel any satisfaction in mastery of one small bit of it. And without the confidence and encouragement of that success, it's very hard to be motivated to continue. (oh yeah, plus, of course, it's impossible to have perfect and complete mastery of programming anyway, for Turing's reason.)

Re: Ask HN: When does programming start to make sense?

#16
Programming, as a whole, is far larger than any one person could come to comprehend in a single lifetime (imagine it being 1000x bigger). And to make matters worse, it is continually growing more complex at a rate no person could follow either!

Just when you think you've finally gotten a solid grasp on writing CRUD apps in PHP, someone shows you Haskell, or Prolog, and suddenly realized just how little you thought you knew.

That said, this all makes for programming being an excellent domain for both a career and a passionate hobby. Easy to learn (a tiny corner) and hard to master (a chunk you can really appreciate 10 years in) -- what more could you want?

Re: Ask HN: When does programming start to make sense?

#17
post #8

Earlier quoted context omitted.

What is causing the frustration?

I can see the solution in my head as a picture, not words. Maybe I need to practice framing problems more.

I was amazed when I saw some of the smartest programmers I know drawing pictures of their problems. I always thought that you had to do everything in your head, but that's definitely not the case. So draw pictures, figure out how they translate to code.

Re: Ask HN: When does programming start to make sense?

#18
I cannot stress this enough: learn refactoring, http://www.amazon.com/Refactoring-Improving-Design-Existing-...

You will simultaneously learn:

- terminology and models relevant to software design and construction at every level

- principles of good coding and how to tell good code from bad

- the ability to redesign code as needed

- the experience and knowledge necessary to approach coding with confidence

All of these are the most critical tools you need to transform yourself from someone who sorta-kinda knows a few principles of coding to someone who groks software construction.

If I had to choose between a co-worker who truly groked the principles of re-factoring and a co-worker who had a PhD in Computer Science I would choose the former every time. It's really that important.

Re: Ask HN: When does programming start to make sense?

#19
post #8

Earlier quoted context omitted.

What is causing the frustration?

I can see the solution in my head as a picture, not words. Maybe I need to practice framing problems more.

I can see how that mismatch would feel frustrating - more so than if you couldn't see the solution and had to muddle about in exploratory code to discover it.

re "practice framing": I find that asking the question is very helpful for clarity - and then defining the key nouns in it.

Re: Ask HN: When does programming start to make sense?

#20

I cannot stress this enough: learn refactoring , http://www.amazon.com/Refactoring-Improving-Design-Existing-... You will simultaneously learn: - terminology and models relevant to software design and construction at every level - principles of good coding and how to tell good code from bad - the ability to redesign code as needed - the experience and knowledge necessary to approach coding with confidence All of thes…

I don't think that's good advice for a newbie.

To the OP: practice, practice and practice. It will take a long time. Months to start getting it, years to go anywhere. 10+ years to be good. If it's too hard, choose another profession. 99% of folks out there would hate programming.

Post reply on HN