The Education of a Programmer No, I'm not going to talk about learning to code. I've always wondered what in my past made me not only want to become a programmer, but led me to the particular skill set I have worked with for the past 3 decades. This post is a little personal but
Security Is Job 12 Today we read that Target had actually installed some sophisticated security software and both it and their desktop antivirus reported seeing something wrong while the famous hack was happening. Apparently they ignored the warnings and brushed off any idea of investigating. It doesn't surprise me much, almost everywhere I've worked
How Much Is That Seat By The Window; How Flight Reservations Work #2 In my first post about flights I covered a lot of the terms and participants in making a flight reservation. This post will answer as best I can the more interesting bits. This is a really, really long post. You need a beverage and some peanuts. I think there will
Our iOS App Crash Rate Our flagship iOS app crashes occasionally. We use Crashlytics to track crashes and Google Analytics to track usage which is a fairly common combination. I look at the crash reports every day just to see if anything unusual happens and maybe find something I can fix. Although I never identify
Your Progress As A Programmer Is All Up To You I read a comment on a post on Hacker News where a young programmer said they didn't want to work at a place where older obsolete programmers were let go instead of being retrained, as they would be there some day. This person meant well, but still managed to irritate
How I Wound Up As An Early Mac Pioneer And Built Something Crazy Thirty years ago I was working at a defense contractor as one of the few people they had working with microcomputers. I had a Lisa on my desk briefly (an evaluation unit) and got familiar with windows and mice. Once the Mac was revealed we didn't have one but I
The Future Is Hard To See When I started my first programming job in 1981 I didn't really think much about the future. Though I bought an Apple II+ back in 1979 and had a friend who worked on the original TRS-80, both of which represented a whole new world in programming, it didn't really make
Good Idea, Wrong Time I've been debating for years to even write this post. It's about the dumbest, most idiotic thing I ever did. Or rather, the one I didn't finish. In 1996 ICQ appeared as the first real mass market text based instant messaging application. Soon thereafter in May of 1997 AOL released
Failure Is The Engine That Drives The Future Read a note today by someone on Hacker News who lamented his failure in starting a company and the ever growing disaster it was causing made me think. We all were all failures once; everything sucked at some point. The thing is, if you never failed you probably never risked
You're Doing It Wrong! If you are building a bridge you can't ignore gravity, the design has to hold up the load. If you are making a Souffle, you need to follow the instructions precisely to make it come out right. If you are writing software however there isn't a single way to get
94% Of Projects Fail, Or Maybe 59% Search on Google for 94% of projects fail. You'll find something like 26 million results. I can also guarantee that 77% of you won't try. Or maybe it's 35%; I forget which. The point is that we are constantly badgered by precise percentages that 61% of you believe are actually
Engineering Truth: How the Internet Pumps Up The Lies When the internet and especially the web first became a part of everyone's life many of us thought "finally, the truth can always be found". We were terribly wrong. It turns out the internet is a fine medium for pumping out volumes of misleading, incorrect, dangerous and totally bogus information.
What Is Software Quality? Quality is one of those things that everyone wants at the end of a software project but rarely does anyone have a good idea of what it is. Like so many things in the software world it's hard to define or even get people to agree on what it is.
40 Years Ago This Month I Wrote My First Line Of Code Hard to believe I've been doing this for 4 decades and not only can still be successful at it but still enjoy it. I was 15-going-on-16 starting as a junior in high school. A teacher had decided that the school needed to offer a computer class and found a grant.
How I Did Agile Long Before It Was A Thing Sometimes when I talk with younger developers they think that all anyone did before Agile was Waterfall. In reality the process of developing software was never just one thing. My first job in 1981 started with a project that operated basically what you might consider waterfall, though of course that
Lessons in Leadership From the Battle of Gettysburg One of my hobbies is studying military history, and one of my favorite people is Joshua Chamberlain. He was essentially a school teacher thrust into war who found himself at the most critical point during the battle of Gettysburg in the midst of the American Civil War 150 years ago
Interview Programmers Like Your Pants Were On Fire Reading about the layoffs at Zynga, people pointed out how great the laid off workers would be to hire, because they had a very rigorous hiring process. I had to laugh. What a waste of time and energy to spend long hours interviewing people trying to find "rock stars" and
The Programming Steamroller Waits For No One Of all the things I do or use today, the only thing I have in common with my first job is that I still write code. Everything else has changed and changed and changed again. If you don't keep learning, keep reading, keep improving your skills eventually that nasty steamroller
Bug Story - The Lost Cars of Branson I love to read other people's tales of finding and fixing weird bugs, so here is one of my own. I did one earlier that people found interesting: Fixing a Nasty Physically Modeled Engine Bug in an FPS Game. I work for a travel company, and our iPad app includes
The Programmer Skill People Rarely Ask About In Interviews When I started programming in the early 80's there was no Internet, no StackOverflow, no blogs, no easy way to get help on a programming problem. You either figured it out for yourself or went to a library or asked a coworker. Today the entire programming world is at your
What the Hell Is Really Agile? The Agile Manifesto is one of my favorite things in software development, because it just makes sense. What Agile has become since then is another story. Over the years (and long before the Manifesto) people have tried to come up with many ways to try to make software development more
Fixing Customer Service Costs Money, But Not As Much As Angry Customers Our apps and mobile website allow people to leave feedback. I see the comments every day, and they can be quite interesting, occasionally useless and sometimes irritating. But the ones that make me cringe the most are the ones that have no issue with the app or website, but with
How Flight Reservations Work - Part 1 After my post How Hotel Reservations Work did so well I want to follow up with the Flight version. Flight reservations are such a complicated mess it will take at least 2 or even 3 posts, the first more high level and the last will have to wait until I
My Job As A Programmer Is To Make Testers Miserable It's not what you think. When I deliver something to a tester or QA person, I want them to suffer terribly, to fear coming to work, to wish they had never become a tester, to be drained by the end of the day. Yes, I want them to find nothing
My First Programming Job in 1981, and How It Shaped My Career A little more than 31 years ago I got my first programming job at a defense contractor, General Dynamics, in an IT division that supported the F-16 division (now Lockheed). I had no work experience and no education in programming. Unlike today, it was possible to get a programming job