A couple years ago, I watched a reality home improvement show where an architect, who was very good at his job, decided that the worker bees were just drones who never did exactly what he designed. He thought building stuff was the easy part. His designs were great, and they just needed to build what was on the paper with the tools and parts he specified. What he found was that building something wasn’t quite as easy as he thought. That episode is the only one where I’ve seen a man actually cry during the build. The good news for him is that he learned something, and he now has some respect for the builders. Software architects should have the same respect for programmers. Continue reading
I’ve seen quite a few questions about how to write a program to print a pyramid, so I figured I’d write a program to show how it can be done. Here are two methods to print a pyramid where the width and the character are specified by the user. Continue reading
It’s easy to feel like you’ve been left behind when you’re a programmer. When you go heads down on a project for a year or so, everything else keeps moving. By the time you lift your head back up, versions, frameworks, API’s, and best practices might have changed. It happens to all of us from time to time. Here’s how I try to handle it. Continue reading
A pegboard puzzle is a simple toy normally made out of wood and golf tees. There are holes in the wood that the tees fit into, and you have to remove the tees through a series of jumps until you have just one left on the board. These are popular in restaurants, especially country style ones. This is my solution to the Pegboard Programming Challenge article posted here in November 2012. I’m sure there are other ways to do it, and it can be done in almost any language. I will show two ways to do it in java.
While working on personal projects, it’s easy to start well, but slack off after you get half way through. Well it is for me, and I don’t think I’m alone. Many of my friends have the same problem. Here’s what it looks like. You start something cool, figure out how to do it, make a prototype, and then you just put it on a shelf. If you’re anything like me, you have a bunch of unfinished projects just sitting around doing nothing. You need to find someone or something that will push you to finish it.
This is isolated to personal projects. When there’s a paying client, the motivation based on a commitment to documented goals and the ramifications of failure to both finances and reputation. That provides enough motivation to drive the project to a successful end. There just isn’t much at stake when you are working on something for yourself. Let’s do something about that.
Back when dinosaurs roamed the earth, and we wrote code with rocks and spears… Ah, those were the good ole days. Everything was simple back then. There were only a few languages to know, and top down, procedural programming was good enough for almost every requirement, and nothing was agile. It’s funny how our memory of the bad things is diminished, and we only remember the good.
I read an article, and the comments for it, recently. The premise was that programming is no longer fun. Sadly, it is right. Well, at least partly right. Corporate programming is not fun anymore. The separation of duties and reliance on tools built by actual programmers has lead to a place where architects, who may not have ever been programmers, call the shots. Programmers are expected to just build what they are told, how they are told to build it. Programming is definitely still fun even if doing in the corporate environment isn’t. It’s time to bring the fun back.
Let’s take a walk around the web and note some of the more interesting software development related articles. If you see something you would like us to include, please submit them to us, either directly or through the Blog Carnival link above. We would love to know what you think is worthy of review and discussion.
For this programming challenge, let’s write a program to solve a triangular puzzle with 15 holes and 14 pegs. The goal is to remove pegs by jumping them with another peg. It’s a simple little game with that requires some complexity to solve efficiently. Have you ever left just one peg?
x x x
x x x x
x x x x x
Many years ago, I wrote a little program that would sit at the bottom of my screen that I used to document everything I did. It tracked projects I worked on, the people I talked to, and everything else that happened during my work day. It started as a way to cover my own back because of a coworker that didn’t like me much. If I remember correctly, I only had to use it to defend myself once. I haven’t tracked my time like that in a very long time, but there were some really nice benefits that I didn’t expect.