15 ms·
Resolutions for programmers
- parfe 15y agoLearn 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 actually cares about. Back Up Your Data - I'd argue the resolution should be "Restore Your Data". Everyone has "backups" but that doesn't mean they have a valid restore procedure that they know works. I like the list overall. It definitely has some interesting suggestions. The dominant arm in a sling sounds fun.
- mattmight 15y agoI learned Dvorak to help with RSI. It worked. I'm fast at Dvorak after 4 years (90 wpm), but not as fast as I was with Qwerty (120 wpm). Dvorak has a pleasant "rolling" finger feel and my wrists never ache, so I've kept it. What fascinated me about learning Dvorak was that I felt like a stroke patient. Suddenly, I could not do something I had been able to do for years. It made me consider the cost of a keystroke. Great experience.
- parfe 15y ago>I learned Dvorak to help with RSI. That makes sense. >What fascinated me about learning Dvorak was that I felt like a stroke patient. That's a perfect explanation of the learning process. I just don't think people should be playing the stroke patient with their livelihoods.
- barrkel 15y agoWoah, that's some massive hyperbole there; learning Dvorak does not risk your ability to earn a living in this industry.
- guelo 15y agoI think he was just referring to the productivity hit during the learning curve.
- barrkel 15y agoYes, because while you're learning one style, you completely forget the other style and are left unable to type fluently. </sarcasm> (I'm still able to type in both.)
- gcr 15y agoI learned dvorak. After doing this for ~2y, I'm much (twice?) faster in Dvorak than QWERTY presently, and am slightly faster than my old QWERTY typing speed.
- ArbitraryLimits 15y agoI know what you mean about the stroke patient thing. I had (still have, actually) RSI-ish problems in my right wrist but not my left, so I started mousing with my left hand and it felt exactly the same. Years later, my day-to-day productivity has fully recovered, but I still can't play mouse-intensive games like Minesweeper without getting confused and clicking the air with my right hand when I meant to use my left.
- rmc 15y agoI switched from right handed mouse to left handed mouse and after about 2 days I was able to use the mouse normally, and am still pretty good at it.
- slowpoke 15y agoYou might just be ambidextrous with a strong right hand. My strong hand is the left, but besides more complex things like writing I can also do pretty much everything with my right hand without having to train.
- freehunter 15y agoTo help with RSI from the mouse, I got a trackball. It lets me keep my hand at a comfortable position and just roll my thumb ever so slightly to move around. My wrist never needs to touch the desk, so carpal tunnel is mitigated.
- guelo 15y agoThe Evoluent mouse helped me get rid of right hand pain, http://www.evoluent.com/ http://www.evoluent.com/
- dennisgorelik 15y agoHave you tried using ergonomic keyboard to help with RSI?
- rmc 15y agoI got a bount of RSI, and switched to a egonomic keyboard (Microsoft Natural 4000), and it helped immensly.
- dennisgorelik 15y agoI use Microsoft Natural Ergonomic Keyboard 4000 for years and do not suffer from RSI. Another thing that probably helps is that I use table with enough depth, so between my monitors and edge of my table there is enough depth to not only fit my keyboard, but also extra ~15 centimeters space for my arms.
- gtani 15y agoExcellent advice, plus i need to ahve a small hand towel rolled up under my left wrist OTW i get pain.
- technomancy 15y agoI switched to that keyboard after I was bothered with RSI. A few years later I started using my laptop a lot more, making it impractical to lug the keyboard everywhere, but I found that the Natural had forced me to improve my posture in general, keeping myarms at 90 degrees from each other with wrists straight. Now I can type without pain on any keyboard, which is a relief since after using a Thinkpad the mushy key response of the Natural drives me nuts.
- Groxx 15y agoI used to have wrist pain after particularly-long coding bouts. Then I decided to type like you play piano - hands up, wrists straight, move arms rather than wrists to punch keys in other locations. No pain again. Ever. Only later did I find out that it's the recommended wrist posture. I still cringe a bit when I see people buying keyboards with wrist-rests (and using them), especially "ergonomic" ones - why improve one ergonomic point while intentionally worsening another?
- hmottestad 15y agohmm..I just tried this and I felt that my wrist were nice and relaxed, but my shoulders were not. Maybe it's just because I'm using a laptop.
- Groxx 15y agoYou might be sitting too low, and holding your arms up with your shoulders rather than at your elbows. Keeping your shoulders back seems to help too, another of those things that everyone should be doing but few (myself included, the vast majority of the time) actually do.
- mahyarm 15y agoWhenever I try that position, I quickly feel muscle fatigue in my arms from having them suspended in the air for an extended period of time. I think that is why most people don't type in that position mostly. I might be doing it wrong somehow, but how do you deal with arm fatigue?
- Groxx 15y agoA good part of it might be that my upper-arms are essentially straight down, so it's just biceps. Holding your arms out / forward will tire you out, and it's pretty easy to do that in a lot of desks / setups, especially if they're too high. That, and I tend to move around and/or stop and think a lot. In part because I should, in part because otherwise I get stiff. That tendency to not sit still for long has helped in a lot of other ways too, though it makes me hate long drives :|
- ibisum 15y agoA better way to deal with RSI is much simpler: just change your keyboard every 6 months. It doesn't have to be Dvorak, just use a different keyboard than you normally do.
- fady 15y agoi'm going to try dvorak out. i started experiencing rsi symptoms last year and decided to switch my mouse hand to my left hand. it took almost 6 + months to train my hand to have the precise motion i had with my right (even when using adobe design products) . one year later, i have very little pain, if any. though, after reading this article, i'm now curious to try the dvorak layout. also, i love my apple keyboard and was worried about using something else, as i use them on all my machines, including linux boxes. did some research and found this: http://www.kbcovers.com/servlet/Detail?no=154 http://www.kbcovers.com/servlet/Detail?no=154 ordered three. thanks mattmight.
- vacri 15y agoColemak is supposed to perform slightly better then Dvorak as a layout, and be easier to learn for a qwerty typist. http://colemak.com/ http://colemak.com/ http://en.wikipedia.org/wiki/Keyboard_layout#Colemak http://en.wikipedia.org/wiki/Keyboard_layout#Colemak
- fady 15y agothanks for the link vacri!
- yoos 15y agoSecond vote for Colemak here! I spent the first two of my high school years in Japan essentially being homeschooled. I had developed shoulder pain and a ganglion cyst in my wrist due to lots of typing and playing tennis, so I took the opportunity to try both Dvorak and Colemak. I used to average 110 wpm on Qwerty. I started at 30 wpm Colemak and reached 80 in three months. After fourish years, I'm back at 110 wpm, with no more cyst or shoulder pain. I tried Dvorak for a week but disliked that 1) it emphasizes hand alternation (as opposed to Colemak's emphasis on finger mashes) and 2) it was so difficult to type "ls -l".
- vacri 15y agoI haven't actually tried an alternate keyboard layout yet so I can't vouch for it, but Colemak seems to have the edge on Dvorak. I also do the ls -l thing all the time and finally succumbed to just uncommenting the relevant alias in my .bash_rc. 'll' just makes it easier; I don't know why I resisted enabling the alias...
- technomancy 15y ago> I learned Dvorak to help with RSI. Indeed, it always bothers me when Dvorak enthusiast pull out the speed claims; the comfort advantages are much more compelling in my book.
- tomjen3 15y agoAs an Emacs and Dvorak user I disagree. Yes people don't understand my choice, but so what? As for incompatibility, switching keyboards is literally just ctrl+shift. And no, it is not about speed but about handcomfort -- I move my hands much less and have less awkward resting positions.
- silentbicycle 15y agoThere's no problem using Dvorak with Emacs - in fact, it spreads out a lot of keyboard shortcuts that are otherwise scrunched down it the bottom-left corner. (I can use vim fine with Dvorak, too, but I mostly use Emacs - I'll leave it at that.) And: it's not about typing speed, it's about typing comfort.
- Jtsummers 15y agoI was going to say this. Emacs + Dvorak is very comfortable to use. Vi(m) isn't bad either, but the directions (hjkl) are spread out which used to (and still does as it's not my everyday editor) cause me some difficulty. A particularly nice thing (for me) with Dvorak and Vim is that the `:` is in the lower left, right next to the shift key. I find many sequences easier to type.
- silentbicycle 15y agoAbout ":", agreed. The new positions for hjkl actually feel more natural to me (jk are adjacent, on Qwerty's "cv" keys, and hl fit a pointer/pinky right hand rocking motion), but that's a matter of taste I guess. Either way: not a big deal. In 5-6 years of typing Dvorak, the only thing I've never adjusted to is the non-keypad diagonal movement keys for nethack. I used the numeric keypad with Qwerty too, though.
- thebrokencube 15y ago> The new positions for hjkl actually feel _more_ natural to me I completely agree with this sentiment. Everyone I know who uses dvorak+vim has a lot of remaps (so it matches the qwerty stuff) but to be honest, I don't find it necessary, and I really like jk being just there as those are the directional ones I use most (for moving left/right I use stuff like w, b, etc.)
- silentbicycle 15y agoAside from searching, I tend to move by word, too. The position of those on Dvorak is analogous to the jk position. Hadn't noticed that.
- Periodic 15y agoI'd go as far as to say that typing speed has never really been the rate-limiting factor in programming. That is exactly why Dvorak is easier to switch to for programmers than some other professions. We have the luxury of a profession where even a significant inefficiency in typing isn't a real hinderance.
- elviejo 15y agoI'm an emacs + dvorak user too. It all started when I saw three colleagues get surgery for Carpal Tunnel. And I started to develop similar pains in my hands and wrist, so after googling and reading a lot I decided to try dvorak. The change was really hard 2 or 3 months but now I can say it is totally worth it my hands and wrist have never hurted me again. As developers we have very few health risks associated with our profession. We won't get hit by a rock as in construction or rolled over by a car in repair shop. But we still need to be vigilant of: Obesity Stress RSI Back problems If we want to keep developing software and walking by the time we are 50 or 65. So we should take preventive measurements. Dvorak is one of those.
- enimodas 15y agoAnd if you still want to learn an alternative keyboard layout, I recommend colemak. It's more modern, and has some additional upsides [over dvorak]: -keeps ctrl-zxcaw at the same place -claims to be easier to learn if you're already fluent in qwerty perhaps more, here's their site: http://colemak.com/ http://colemak.com/
- colonel_panic 15y agoThe thing about Colemak is that if you ever have to use somebody else's computer for a moment, you can be absolutely certain they don't have it installed. Dvorak, I think, strikes the most acceptable balance between efficiency and widespread availability. Sure, as a hacker, you should set up your own unique keyboard layout/.emacs file/guitar-pedal-to-USB modifier keys/saccadic eye motion detector/whatever to absolutely maximize your efficiency for how you spend most of your working hours, but if the day ever comes when I'm the only person who can override the Doomsday Machine, I could do without the hassle.
- Tsagadai 15y agoThat's why I set my vim shortcuts to keyboard positions and not letters. I switch between keyboard layouts a bit but I am using Colemak again. Keeping shortcuts the same across layouts is very important because they are usually muscle memory not some combination where you are thinking about pressing keys. Also, keep the drivers on your phone/USB so you can install them everywhere.
- jules 15y agoLearn Colemak [1] instead. The change in comfort when typing is incredible. The difference in how much you need to move your fingers when typing is big. Typing with QWERTY feels you moving your fingers all over the place as fast as possible; typing with Colemak feels like letters flowing off your hands. Whether it is faster I do not know (obviously after years of using Colemak and rarely using QWERTY I type faster on Colemak, although I can still touch type on QWERTY -- something that most Dvorak typists seem to lose). The big difference is with comfort. Colemak is also much easier to learn for programming if you already know QWERTY because the punctuation (and some of the letters) stays in the same place. http://colemak.com/ http://colemak.com/
- tjoff 15y agoI'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 are a huge part of the workflow of many applications. I found this to be a complete showstopper. I think there are ways to automatically switch to qwerty when ctrl/shift/alt was pressed and maybe I didn't research it enough but it felt like a cludge and I wan't something that is platform independent and easy to enable on any machine.
- jerf 15y agoThat 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 stiff startup fee of learning Dvorak if all you know is QWERTY, but if you have already paid I certainly wouldn't suggest losing it. And I'm very, very tempted to ensure that my kids, who are all too young to be typing at all, simply start on Dvorak. If you're starting from scratch entirely the choice is pretty clear to me. The thing about shortcut scrambling is oversold; I think it sources from people theorizing about what the problems might be if they switched, not people talking about their experiences. In my actual experience, relearning the keyboard shortcuts was a negligible part of the experience.
- tjoff 15y agoI 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.
- crazygringo 15y agoI learned Dvorak in my teens, and can touch-type fluently in it. But I've found it doesn't provide a lot of speed improvement, and for programming (with all its punctuation) I still use QWERTY. Since programming isn't primarily normal English language text, Dvorak really doesn't help, plus you have to touch-type. What I use Dvorak for is for proper, sit-down, full-screen writing. I'm not sure it's much faster, but it's far more comfortable to type. QWERTY always "gets in the way" physically a bit when I write, but Dvorak lets my hands basically disappear as a barrier between brain and page. It just makes writing feel effortless. Also -- Dvorak is useful for English only. When I write in Portuguese, it's not nearly as useful.
- barrkel 15y agoI use Dvorak everywhere. For programming, I frequently use editor macros to enter paired braces; but that's to save on effort on alignment and indenting. For other punctuation, there's little to choose between Dvorak and Qwerty. The square brackets are slightly further away, but equals is closer. That's about it.
- colonel_panic 15y ago"Since programming isn't primarily normal English language text, Dvorak really doesn't help" Here's a late Christmas present: http://www.kaufmann.no/roland/dvorak/ http://www.kaufmann.no/roland/dvorak/
- dudurocha 15y agoMan, do you have any contact info?
- Androsynth 15y agoSitting in a nice chair doesn't help you program better, but it sure is comfortable to sit in. I learned Dvorak a few years ago and I love it. I wouldn't go back at all; it is just too comfortable. It takes a few months to get back up to qwerty speed (at a logarithmic slope though). If you plan ahead, its not that time consuming. For example, if you have a coding job that you could do in your sleep, that's a perfect time to learn. If you just started a company and need 110% mental effort, don't learn. Personally, I switched about 2 months before I started on my masters thesis and it worked out really well. However, if you often use other peoples computers (or vice versa), you should seriously think twice about whether it is worth it for you. One last thing, I would recommend programmers dvorak over regular dvorak. :)
- alinajaf 15y agoI'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.
- gcr 15y agoWhat about machine stenography? It's harder to learn, but apparently has a much higher payoff in speed, accuracy, and ergonomics. http://plover.stenoknight.com/ http://plover.stenoknight.com/ The author of this program has a wonderful series on her blog about what steno is good for: http://plover.stenoknight.com/2010/03/how-to-speak-with-your-fingers.html http://plover.stenoknight.com/2010/03/how-to-speak-with-your...
- gcr 15y agoDvorak ain't so bad. I learned it and I'm not faster, but I do find it much more comfortable. Emacs? The keys aren't arranged spatially so no harm there. Vim? It's not so bad -- H and L are under the index finger and pinky of your right hand, similar to before, and J and K are right next to each other on the left hand too. Plus, it's absolutely hilarious to watch other people try to use your computer.
- Permit 15y agoI've always wondered why people were so concerned with improving typing speed in the first place. Perhaps it's just the fact I'm a young programmer and have only been doing it for a few years, but the bottleneck for me has never been how fast I can type. Most of my time is spent planning things out, thinking things through and debugging, never typing.
- mfonda 15y agoAs a programmer who has spent the last three months learning Dvorak, I'm glad this topic came up and would love to share my experience. Before learning Dvorak, I used QWERTY, but did not fully touch-type. I could type quite quickly, and without looking, but I did feel limited at times, and wanted to learn to touch-type correctly. I decided on Dvorak because I had heard good things and wanted to be forced to touch-type and break my old bad habits. To learn, I used an open source typing tutor, klavaro, and found it worked quite well. The first week or so was painful. After a few days I had learned the position of all the keys, but typing had become a strenuous mental activity. Simple tasks such as writing an email became very difficult because I was so focused on how to type it that I could not focus on what it was I wanted to type. The other difficult part was passwords. It usually took a few tries before getting them correct, and sometimes I even had to resort to copying and pasting to make sure passwords were correct. As others have noted, typing speed may not be as critical for programmers as it is for others. While this may be true for coding, I found the initial slowdown when IMing/emailing coworkers to be frustrating. After around a month, these difficulties went away, and typing started to feel much more natural. I'm still not at the speed I was before, but typing feels so much betters now. Overall, I am happy I switched to Dvorak, and would definitely recommend it. I notice my speed improving everyday, and I actually enjoy and look forward to typing now. Using emacs with Dvorak has not been an issue for me. In fact, I would say it feels better now. Another change I made that I feel has boosted my productivity is remapping caps lock to ctrl. Caps lock is in a great location on the keyboard but performs a somewhat rarely used function. I would highly recommend remapping caps lock to something more useful.
- maeon3 15y agoProgrammers stuck inside who need fitness ideas get out and meet people. Go to meetup.com, type in your area and type in running, health and fitness. Find a running club where you meet up somewhere and run around a loop, trail, or city area. I found that extremely rewarding. It is a filter to screen out the fraggles from the doozers.
- tomjen3 15y agoWhat is it that makes people assuming exercise -> running? It has all the unpleasant effects of exercise + it destroys your knees and you still don't have a sixpack.
- samskiter 15y agoAgree. I'm very active but don't do any cycling/running/gym work. I participate in sports for the enjoyment and adrenaline of the sport itself. Way more addictive - no need for training schedules and the like. I just HAVE to get to the beach when the wind is right. Still, that's not taking away from running, many people really enjoy it and there is no denying it a cheap way to get fit.
- oinksoft 15y agoI just like to go places on a bicycle. Not Lance rides, just use it to get stuff done; it's very good for people with knee problems because it strengthens your knee ligaments, as far as I know. And it's been a good way to stay in shape!
- amouat 15y agoIt also has a lot of advantages: - all you need is a pair of decent trainers and shorts - you don't need a partner - you make obvious and steady progress - most people unused to exercise need to work on cardiovascular stuff, not six packs - you get to go outside, not stuck inside a hall or somewhere
- beagle3 15y ago> It has all the unpleasant effects of exercise That's subjective; I like running outside. It lets me clear my mind like no other form of exercise. (I hate running int he gym, though) > it destroys your knees Only if you do it wrong. Unfortunately, 99.9% of the people do it wrong. I had started to develop some knee pains (only while running) after a healed knee injury. And then I discovered the Vibram Five Fingers, and after two weeks the knee pains were gone for good. They take a while to get used to, but they're worth it.
- samskiter 15y agoI really like the suggestions. So, January is analog. Time to buy myself an XBox Kinect and try and high score Virtual Dance Off High School 8. 3. Embrace the uncomfortable. How about quit Facebook...
- vq 15y agoCould be worse, for me it would be to join Facebook. :/
- silentbicycle 15y agoFor anyone who takes him up on his Datalog suggestion, this (http://www.ccs.neu.edu/home/ramsdell/tools/datalog/datalog.html 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/ http://www.gprolog.org/) - it has good constraint programming support.
- pnathan 15y agoMercury is a modern logic language. It takes the statically typed approach http://www.mercury.csse.unimelb.edu.au/ http://www.mercury.csse.unimelb.edu.au/
- silentbicycle 15y agoOr, 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.)
- Impossible 15y agoGreat list. This is basically my new years resolution, which is actually a list of things I've wanted to do for a long time that I put together after I lost funding. The most important one being complete a personal project. My list has a few additional items including learn web dev and launch a simple web app and get back into mobile development and release something on Google Marketplace and\or the Appstore.
- teeray 15y agoI'd like to add a caveat to the "Implement a cryptosystem" suggestion--Implement one, but DO NOT USE IT. It's a fun challenge, but only fools use their own crypto libraries.
- finnw 15y agoBetter still, implement one, assume it is broken, and find out why.
- beagle3 15y agoThat's not a good advice. It is extremely hard to find problems in your own implementation, even if you're experienced in doing that. Better advice: Find a mate (or a group), and find out why the other's implementation is broken. And go through some case studies first (see e.g. colin percival's postmortem in http://www.daemonology.net/blog/2011-01-18-tarsnap-critical-security-bug.html http://www.daemonology.net/blog/2011-01-18-tarsnap-critical-...)
- candre717 15y agoTips 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: formatting, typo
- systemizer 15y agoIf you're in a startup that is up for trying new things, I think having a group of developers working together on these resolutions would be a great idea. Let them take 5-10% of their time during the day to work towards these resolutions. Happy developers == healthy developers == productive developers. Plus, working together with other people always gives you motivation to complete tasks, whether it be working out at the gym or learning a new programming language.
- candre717 15y agoSystemizer, why do you think that is that working with others helps us achieve our goals? I have generally believed that, too. But, on second thought, wouldn't having more people complicate planning thus thwarting progress?
- systemizer 15y agoGood point. I think it breaks down to accountability. If you work with 10 people on a project, you are not as accountable because everyone else is responsible for the project as well. However, if you are working with 1 other person, that person holds you accountable for everything; you have no excuses to not complete the project. Finally, if you are working by yourself, you are only holding yourself accountable; this is bound to fail. You need some external influence of motivation to continue on, and oftentimes you need more than your own motivation. Taking it to the extremes, if you work with 100 people to lear, then you probably won't have the motivation to do it. There are many reasons why, but to make a simple argument: the more people, the worse. However, if you work with just your friend, then you rely on one another to complete the goal. It is ment
- g3orge 15y agoAmazing list. I'm gonna follow every month.
- fredus 15y agoGet serious with Testing? :-)
- kstenerud 15y agoDo 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.
- mhartl 15y agoI have a couple of contrary suggestions with respect to health. 1. Don't follow the conventional wisdom on RSI I struggled with RSI for years, and did all the usual things (warmups, exercises, braces, a Kinesis with modified key layout, etc.) Then, in early 2010, I read (at Aaron Iba's suggestion) The Mindbody Prescription by John Sarno. Within a couple of days, I saw remarkable improvement; within a month, I was symptom-free. YMMV, of course. 2. Don't wear a brace of any kind. I question the advice to wear a back brace. Over time, this leads to muscle atrophy and causes or exacerbates the very problem you're trying to solve. I don't warm up, don't wear braces, and have switched back to a Qwerty layout. I stay strong and healthy other ways, but I now ignore all RSI-related advice that doesn't acknowledge the "mindbody" nature of the problem. I've been symptom-free for more than a year. (This is an anecdote, so take it for what it's worth. The book's like $12, though, so you don't have much to lose.)
- AlexandrB 15y ago> The Mindbody Prescription by John Sarno The central claim of this book (from reading Amazon reviews) seems to be that chronic pain may be caused by mental/emotional distress. To me, this seems like a remarkable claim, and I'm super-skeptical without some kind of evidence. Out of curiosity, does the author offer any such evidence in the book? Are there other books on the topic?
- MichaelGG 15y agoExactly. I was so desperate, I would have tried anything. But, I could not finish The Mindbody Prescription. General non-scientific fluff, and a lot of complaining about Freud not being taken seriously these days. No real evidence, although I only got through a few chapters. However, despite me thinking the book was rubbish and tossing it shortly, my RSI problems disappeared. I guess the suggestion that pain wasn't actually physical in source was enough for the pain to stop. I've gone from being dominated by RSI problems to not giving it much thought at all. The placebo effect is real, sometimes even when the patient is aware that it's a placebo. Note: I don't think the book is correct. There are plenty of phenomenon that we don't understand, and not having a real explanation is not reason to just make one up and assert its correctness without evidence.
- feralchimp 15y agoMost "list" posts suck; this one was awesome. My only quibble: "Argue against something you believe" is not a special, part-time exercise. It should be a tightly-integrated element of your ongoing mindset, even in 'damn the torpedoes' dev mode.
- rguzman 15y agoarguing against what you believe applies to a lot more than just programming. it is a pretty good way of arriving at what you really believe. guess you believe X0, try to argue against it arrive at X1 as a result of the arguments, argue against X1, ...
- saraid216 15y agoHave you ever tried arguing against this quibble of yours? I don't mean to sound snarky; that just feels like the best way to express my reaction to your statement. I don't disagree with the sentiment; I just don't think you have any idea what you're talking about.
- jebberjeb 15y ago+Go to sleep by 10pm, wake up at 6am (third year attempt)
- AznHisoka 15y agoI 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 the implementation side of things, not the high-level problem solving.
- pw 15y agoAgreed. 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."
- digitallimit0 15y agoLove the list. Favorited that for future-use with spicing up my life.
- zerop 15y ago13. browse stackoverflow daily
- sidcool 15y agoAnother one: Meditate Regularly
- coyotej 15y agoThis, to most people, is too vague on its own, because the concept of meditation tends to fit certain lifestyles, such as those that go Yoga or follow some form of Buddhism or other spiritual practice. This really deserves a few paragraphs at minimum for most people to even consider taking it seriously. That said I think meditation would benefit a lot of people more than they realize, but they really need a proper introduction and guidance to actually do it in a way that is beneficial. This is extraordinarily hard to do on your own. (I started in my 20s and got a lot of out actual instruction at a retreat center).
- tedkalaw 15y agoI've had great success with the book "8 Minute Meditation." It's a pretty good primer to what meditation is "all about."
- gtani 15y agolanguages: I'm going to give F# under mono another try, in the spirit of other langauges suggested (haskell, ocaml, racket)
- jackfoxy 15y agoI would really like to hear progress reports on that one. Does F# Mono now correctly implement tail recursion? The most recent release notes suggest it does.
- gtani 15y agoare you talking crash or leak? the one ticket was fixed pretty fast https://bugzilla.novell.com/show_bug.cgi?id=693905 https://bugzilla.novell.com/show_bug.cgi?id=693905
- jackfoxy 15y agoI've only followed F# Mono from afar as an academic interest, but I've seen comments about tail recursion causing stack overflow, while in .NET I've easily calculated the millionth power of 2 and very large fibonacci numbers with simple recursive algorithms (i.e. it really did recurse a million times).
- tedkalaw 15y ago"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.
- jonursenbach 15y agoI 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.
- cr0wppe 15y agoGood mathematicians make good programmers ... if they want to. but those I work with (Finance) can produce very awefull code.
- jwallaceparker 15y ago+1 for trying the vegan diet If you do this, please go to restaurants and request a vegan meal. The environmental benefits of the vegan diet are well-documented. The best way to enact change is to get restaurants to start listing vegan options.
- slowpoke 15y agoI do not believe that Veganism is healthy at all. Vegetarianism with a correct diet (and only then) can be, but the human body isn't fit for a vegan diet in the long run. I respect your choice if you do it, but at large it's just not reasonable. Oh, and something slightly offtopic: if you have children, do not raise them with a vegetarian or even vegan diet. That should be classified and punishable as child abuse.
- SickAnimations 15y ago> if you have children, do not raise them with a vegetarian or even vegan diet. That should be classified and punishable as child abuse. That's ridiculous. Would you not agree that vegetarian people are likely to be more conscious of their nutritian than the average person? Here's an anecdote. I know three children brought up in vegetarian* family. All three were high achievers academically and athletically. It's worth noting that their mother was very conscious of nutrition, and did give them supplements. *Pescatarian, actually. Though many pescatarians call themselves vegetarian, including this family.
- slowpoke 15y ago>Would you not agree that vegetarian people are likely to be more conscious of their nutritian than the average person? That's certainly true, and actually a necessity for vegetarianism to be healthy in the first place (just removing meat from your meals isn't going to magically be more healthy, it's actually the opposite). It's still pretty much impossible to supply a growing child with the needed nutrients on a purely vegetarian basis. While it's of course possible for children to grow up into healthy adults this way, it's still not without heavy risks to the child's physical development.
- justincc 15y agoI was really hoping this would be about screen resolutions. 1920 x 1200 all the way, baby (or failing that 1600 x 1200, which is increasingly expensive to get nowadays).
- eliasmacpherson 15y agoOther than going to work on time using a Seinfeld calendar ( so that my lax work environment doesn't eat into my evenings ) I'm going with this: https://www.eff.org/deeplinks/2011/12/newyears-resolution-full-disk-encryption-every-computer-you-own https://www.eff.org/deeplinks/2011/12/newyears-resolution-fu...
- mathgenius 15y agome: talk more.
- justindocanto 15y agoYou will never be able to accomplish being "Healthier". What is healthier? a little healthier? maybe a little healthier than that? until you feel healthy? eat green stuff? Try something more concrete like "Eat no more than 2 fast food meals a month". Basically, your first resolution should be "Set 11 tangible goals".
- pknerd 15y agoThough the entire list is pretty awesome but somehow I missed or got overlooked that it does not contain the factor to give time to family. Most of us, programmers when get busy in work tend to ignore our families unintentionally.This pattern is not different than artists who pain pictures. After watching the TED Talk by Matt Cutts(mentioned in my last post) and some serious complaints by my wife and kid, I decided to make a resolution of this year to give more time to family than I used to give last year. It's covering few things mentioned in the post: 1- Coming out of comfort zone: When I start coding or doing something relevant of it, I just forget everything and often work in wee hours. Now coming out of it is definitely not comfortable for me but eventually would turn out to make things sane around me. 2- Be social: When one gets social,even with wife and other family member, you got to face things which don't pertain coding. While things like that could be painful at times due to bad situation but it naturally makes your brain cells think about other things as well. So, I request to myself and entire HN community to give more time to your family too. You never know how such "non-technical" moments make your technical journey more beautiful. my 2 cents.
- jiggy2011 15y agoWell I have tried to put my money where my mouth is in ref to this, just ordered the following from amazon. SICP (Wizard book), Practical Electronics for inventors, Code Complete, Javascript: The good parts, Programming Android, Arduino Cookbook Now the question is , what order to read them in?
- ghaste 15y agoA toc but no links, maybe you need to add: learn usability