Code Watch: Those who can, code

If it were illegal to program a computer, I’d have a machine under the floorboards. I sold my first program when I was 16 years old, in 1980, and with any luck I’ll be making my living this way for another couple decades. I’ve been trying to improve my craft for longer than some readers … continue reading

Code Watch: What Structured Analysis can teach us

We in the software development community like to think we’re special: that building software is uniquely difficult. As special snowflakes, we cannot be held to the business standards required of projects based on assembling boring old atoms; we cannot say what we will build, what effort it will take, or when it will be completed. … continue reading

Code Watch: The things you know for sure about programming that just ain’t so

“It ain’t what you don’t know that gets you into trouble, it is what you know for sure just ain’t so,” said Mark Twain. Actually, some dude named Josh Billings said it, but continuing to attribute it to Mark Twain is nicely ironic. When it comes to programming, our assumptions give us blind spots. I … continue reading

Code Watch: Using deep neural networks as programming assistants

How can programmers benefit from the “the year of Neural Nets”? Statistical machine learning techniques have been surging in popularity in academic settings for years, but 2015 was a watershed in terms of industry awareness and deployment. It was not long ago when the term “Deep Neural Networks” seemed about as dubious an explanation as … continue reading

Code Watch: Let’s be clear about code clarity

Code is for communication. Good code is clear code. Clever code is crap. As Abelson and Sussman phrase it in “Structure and Interpretation of Computer Programs,” “Programs must be written for people to read, and only incidentally for machines to execute.” But we rarely open a source code out of pure intellectual curiosity; rather, we … continue reading

Code Watch: Java: Not dead yet

Just months after celebrating Java’s 20th birthday (and the qualities that made it the most used mainstream programming language), the programming world is abuzz with rumors that Java is doomed. In September, it was widely reported that Oracle had laid off a significant number of its Java evangelism team, and then, in October, InfoWorld ran … continue reading

Code Watch: The final habits of highly employable developers

Last month, discussing the habits that developers should cultivate that will keep them employed, I emphasized aspects that were visible outside your current employment. But the easiest way to stay employable is to be highly valued at your current job; believe me when I tell you that searching for a job is vastly more productive … continue reading

Code Watch: The first four habits of highly employable developers

You probably know that to be highly productive you should master your programming language(s), know common data structures and patterns, have a working knowledge of algorithmic analysis, and so forth. But there is more—much more—to being employable, a developer who doesn’t spend any time on the bench, worrying about their future. This may seem like … continue reading

Code Watch: The best programming book of the decade

“Exercises in Programming Style” by Cristina Videira Lopes is the best programming book to come along in many years. Casting back over many decades, the only book I can compare it to in terms of actionable value is Steve McConnell’s “Code Complete,” and in terms of approachability and sheer fun, it reminds me of Ted … continue reading

Code Watch: What made Java win?

Java’s emergence 20 years ago was the last time a programming language enamored the industry. It was not the first time: It had been the rhythm of the programming community to anoint a new “it” mainstream programming language every seven years or so. While that pattern has clearly been disrupted, I believe that it is … continue reading

Code Watch: Programming interview problems

A programmer walks into a job interview and is asked to write the most efficient program to output the first five primes. The programmer spends three hours implementing the Sieve of Atkin, a GPGPU shader. “Not what we’re looking for,” says the interviewer, pointing at the exit door. “Why? What did you want?” asks the … continue reading

Code Watch: Learning to be a multi-rotor hobbyist

The first thing you learn when you get into quadcopters and multi-rotors is that battery life is a huge deal. No, wait: The first thing you learn is that when talking to fellow hobbyists, instead of “drone,” you should say “quadcopter” or “multi-rotor” or “UAV” (unmanned aerial vehicle). The second thing you learn is that … continue reading

Next Page »
HTML Snippets Powered By :