Category Archives: software development

Two views on developing for Apple

Two different (opposing?) views on developing for the Apple ecosystem after today’s WWDC love-fest announcements: The first is from Des Traynor’s post, “Playing their game”: Apple always look out for their customers. They will always look to improve the experience. If that means adding software to their platform then so be it. If that software [...]

“When Abstractions Fail” quote

Hard-won quote about abstractions: We need our abstractions, our black boxes. Black boxes are great and enabling when they work. But when something goes wrong, the walls of our abstractions need to go transparent as fast as possible. From: http://joyeur.com/2011/04/24/magical-block-store-when-abstractions-fail-us/

Embedded software and open source

Embedded guru and author Jack Ganssle’s latest “Embedded Muse” newsletter has a lot of good commentary on open source in embedded software projects: http://www.ganssle.com/tem/tem199.htm I subscribe to very few newsletters, and Jack’s is one of them.  I read every issue, it’s that good. If you work in embedded software, or software of any kind, you [...]

Book Review: “Hardware/Firmware Interface Design”

I just finished Hardware/Firmware Interface Design: Best Practices for Improving Embedded Systems Development, by Gary Stringham.  Gary sent me a review copy of the book, btw, but I get no money for reading or reviewing it.  Though if you buy the book via my Amazon link, I get a bit of cash. Anyway – the [...]

Technology vs. Psychology

Do you write software for a living?  Or design hardware?  Or maybe some of each?  While the particular projects any two software or hardware designers do may be worlds apart, we can characterize what we do in the same way: our work is 20% technology and 80% psychology. Most of the work we do is [...]

How to tell you’re a bad programmer

How to tell you’re a bad programmer: 1. You think you’re an awesome programmer. 2. But no one else has ever told you so. 3. You’ve never looked at old code you wrote and thought, “Ewwww! That is horrible code! What was I thinking???” 4. You’ve never looked at someone else’s code and thought, “Dang, [...]

Using Stack Overflow

Joel Spolsky and Jeff Atwood are starting a new website called Stack Overflow, it’s going to be a free programming Q&A website. I’m a fan of both of those guys (I even have an autographed copy of Joel’s book!), so I signed up to be a beta user to see how it develops. I was [...]

Data is more agile than code

Peter Norvig talks about the need for a startup company to go fast – and also in the right direction – at his Startup School 2008 talk. “Sure you gotta go fast, but if you’re not getting feedback to figure out if you’re going in the right direction it doesn’t matter how fast you go.” [...]

Knuth hates XP

In this recent interview, Donald Knuth says: “Still, I hate to duck your questions even though I also hate to offend other people’s sensibilities—given that software methodology has always been akin to religion. With the caveat that there’s no reason anybody should care about the opinions of a computer scientist/mathematician like me regarding software development, [...]

Understanding C pointers: Part 1

As I said in “Understanding C pointers: Part 0,” I’m going to try to explain how C pointers work. Let’s start with the basics. Here’s some simple C code: int x = 23; int y = x; You can think of each variable as a box which holds the value of that variable. So in [...]