Jul 16
[Opinion] Every Efficient Developer Should Know…
… unix command-line tools, specifically for text processing. One of the most important learning experiences of my career was sitting down as part of my work at the CIIR and actually reading (cover to cover!) O’Reilly’s seminal book, sed and awk:

I followed up with a book on Unix shell scripting, and have literally used this knowledge countless times over multiple jobs and clients, in every imaginable situation. Every developer should take the time to learn these tools - the basics take only half a day - and then sit down and find something to use them on. You’ll wonder how you ever developed without them, and you can shock and amaze your Windows-loving colleagues with complex transformations and searches in a matter of seconds (of course, Windows-loving colleagues can always fall back on the venerable Cygwin suite).
What are tools that make you an efficient developer or designer? I’m not talking Eclipse or an IDE, but the stuff that wouldn’t immediately spring to mind. What esoteric (or not) learning experience has enhanced your productivity?


July 17th, 2008 at 1:11 am
hi there,
grep, xargs, find, sed, mc
BR,
~A
July 17th, 2008 at 1:12 am
hi there,
grep, xargs, find, sed, mc
BR,
~A
July 18th, 2008 at 12:44 pm
First I’d read Mastering Regular Expressions by Friedl. Or maybe afterwards. But certainly you should read MRE if you’re going to learn sed and awk. Actually, everyone should read MRE since you’ll use regular expressions at some point in your career as a programmer.
July 19th, 2008 at 4:19 pm
I second Rusty. Learn regular expressions now. You’ll realize how much time you’ve been wasting not having previously known this technology.
My tool is something that isn’t really programming, but has saved me countless hours of coding: Keyboard Macros in your editor (i.e. XEmacs, JEdit, Visual Studio, Ultra Edit).
The esoteric learning experiences that have made me better are (1) reading Code Complete 2.0 (2) Learning patterns. I choose these mostly because they enhanced my ability to communicate design.
July 22nd, 2008 at 9:15 pm
As a Java person, the thought of regular expressions brings me thoughts of backslash he**, but I agree. Thanks for the input, a couple more books to add to my reading list!