Live data from Hacker News

Resolutions for programmers

matt.might.net

81–90 of 158 posts

Re: Resolutions for programmers

#81
post #35

Get serious with Testing? :-)

Do it! Seriously, it's worth it.

I didn't get really serious about it until last year, but now I wouldn't code without it. The confidence it gives when refactoring code (run the test, see if you broke something) is pure gold. Plus, just writing the tests puts you in a frame of mind where you're questioning a lot of your assumptions, and you often discover flaws in your architecture that would be painful to fix if discovered later.

Re: Resolutions for programmers

#82
post #75
post #43

Earlier quoted context omitted.

I've always felt that the biggest gain in learning a new layout is getting rid of old bad habits. Learning something new from scratch allows you to do it right from the start. The reason for why I've not tried this is probably mainly because it would scramble all keyboard shortcuts. Shortcuts are designed for qwerty (a shortcut that you can't perform with your left hand anymore is a huge loss) and many combinations a…

That is the one reason to learn Dvorak; it naturally causes you to touch type, because there's no sane reason to have your hands wander around the keyboard; all the keys you use are on the home row. QWERTY affords hand wandering and hunt & peck. If you want to "learn to touch type" it's probably more effective to "learn Dvorak" and let the touch typing take care of itself. I'm not sure about the virtues of paying the…

I can't be the only one that very often have my left hand on the (left part of the) keyboard and the right on the mouse doing a lot of shortcuts while navigating the GUI.

Such as ctrl+z, ctrl+c, ctrl+v, ctrl+w, ctrl+t, ctrl+n, ctrl+s that requires two hands on dvorak ("especially" on an ergonomic keyboard) - or at least requires the right hand (=> you can't use the mouse) or you have to reposition the left hand (not acceptable).

This is not something that you can just relearn and this is something that seriously hinders at least my workflow.

Re: Resolutions for programmers

#83

I definitely recommend learning about the humanities and other fields outside of technology. For most people, we already know enough about programming, and learning another language or framework is a marginal investment. But delving into another totally different subject like healthcare, or insurance, or psychology opens you up to a whole set of new problems and ideas. Whereas just learning technology helps you with…

Agreed. I thought this paragraph was apt:

"Engineers need to learn how to measure what they can't count, instead of counting only what they can measure."

Re: Resolutions for programmers

#84
post #2

Learn Dvorak - I'd warn against bothering with Dvorak. Huge time sink with dubious claims of speed improvements. While a mythical programmer may exist who feels his raw typing speed limits his productivity, I never met that unicorn. While learning you have an increased error rate, run into incompatibility with other programmers and programs (emacs or vim... good luck) and end up needing to defend something no one act…

I've been using vim for years and I've met textmate, emacs and sublime text editor users who are a hell of a lot faster than me at editing code. What keeps me in vim is that it's comfortable, not that it's fast. I imagine that the switch to Dvorak would have a similar effect.

Re: Resolutions for programmers

#87

Tips for completing resolutions, such as these 12: a. Have a plan with dates, milestones and accountability mechanisms b. Start small (Instead of one month using a different OS, how about day and go from there) c. Make it meaningful, Know why you're making a Committment, Be Selective (Have an intrinsic motivation to make a change in your everyday life) d. Stay the course (If you get off track, get back on) edit: form…

That is a good idea, make a plan and try to stick with it. BTW, I find Google Calendar to be good for posting reminders to myself to do different things throughout the year: quarterly taxes, contacting people in a few months to check on how their project, etc. is going, delivery milestones, etc. I like Google Calendar because event alerts also hit me on my Droid and iPad.

thanks for the tip

Re: Resolutions for programmers

#88

"Going analog" is something I have really tried lately. The more I find myself into tech, the more I appreciate not being around it. I really want to give woodworking a shot this year.

I started getting into smoking meats and making my own bacon a few months ago and it's been an incredibly nice break from being constantly plugged in all the time.

Re: Resolutions for programmers

#89

For anyone who takes him up on his Datalog suggestion, this ( http://www.ccs.neu.edu/home/ramsdell/tools/datalog/datalog.h... ) is a pretty good standalone implementation. Free (LGPL), in a mix of C and Lua. For Prolog, try GProlog ( http://www.gprolog.org/ ) - it has good constraint programming support.

Mercury is a modern logic language. It takes the statically typed approach

http://www.mercury.csse.unimelb.edu.au/

Re: Resolutions for programmers

#90
post #89

For anyone who takes him up on his Datalog suggestion, this ( http://www.ccs.neu.edu/home/ramsdell/tools/datalog/datalog.h... ) is a pretty good standalone implementation. Free (LGPL), in a mix of C and Lua. For Prolog, try GProlog ( http://www.gprolog.org/ ) - it has good constraint programming support.

Mercury is a modern logic language. It takes the statically typed approach http://www.mercury.csse.unimelb.edu.au/

Or, learn both! Mercury will teach you different things than Prolog.

(I've read about Mercury, but never really used it. I'm most interested in constraint programming, which doesn't seem to be part of it.)

Post reply on HN