It’s The Little Things That Get You

I spent some time today dealing with a layer of data that was added to an ESRI REST service. The service layers are zero base indexed which means you can reference them based on their position relative to each other. The first layer is identified at position zero while the second is 1, the third is 2 and so on.

The new layer was just before the fourth existing layer. This means the new layer became the fourth, the fourth became the fifth and the fifth became the sixth. Are you following along?

 

Anyway, I was working on a web app that consumes this service and it references the service layers based on those index positions. I added some new markup and some code for the added layer and changed the existing code to reference their two new position numbers. At first everything seemed to be working fine. Then a coworker noticed that the new layer’s data was showing on screen by default (you’re supposed to check a box first). It took me a while before I finally realized that it was being controlled by a different checkbox that controls the layer right after it in the service.

To make an already long and confusing story shorter, there was a second reference to the service indexes in my code. When I had designed the app a few years ago I, for some reason, found it expedient to make two, hard coded references to the index. Instead of taking the time to create a variable, I had repeated a hard coded number that could be changed by an outside source.

My poor design choice came back to bite me. Not only did I repeat code, I made it confusing to update. It’s embarrassing to admit that I wrote code that even I couldn’t figure out later. But it goes to show that taking the time to design things correctly from the start will pay off in the future. It’s the little things that get you; that second hard coded index number that’s nearly impossible to notice.

Dare to Sketch

I’ve always done my sketching and drawing in lined notebooks or on plain printer paper. I’ve never bought a sketch book. I must have been scared to make less-than-perfect drawings in something that costs more than, well, free.

If you draw on a sheet of paper you can just crumple it up and throw it away if you don’t like it. In a sketch book, you’re committed.

Fear of imperfection is a terrible thing. It’s hard to overcome. It can affect all areas of your life. And it can keep you from realizing your life’s full potential. Even if you’ve determined not to let fear rule you, it often creeps up stealthily. I see this fear in myself when I don’t want to commit imperfect code to GitHub. I even recognize fear when I keep interrupting myself while starting a good book. I’m afraid I might not be able to understand it or finish it or accomplish what it’s trying to teach.

Fear of imperfection is a terrible thing. It’s hard to overcome. It can affect all areas of your life. And it can keep you from realizing your life’s full potential. Click To Tweet

A book I found recently at the library has started to change the way I think about sketch books. Dare to Sketch: A Guide to Drawing on the Go, by Felix Scheinberger is a great motivator for starting to sketch in an actual book. Scheinberger gives the reader permission to make mistakes with sketches and to not make the images perfect.

Sketching isn’t fine art. It’s a way to capture the world around you in a personal pictorial narrative. Scheinberger emphasizes the personal aspect of sketching. It’s for you and no one else. These are your own private drawings, almost like a journal, that documents your own private artistic journey.

Sketches may be personal and private but of course you can show them if you want to. Scheinberger puts plenty of his own sketches in the pages of his book. It’s encouraging to see just how imperfect they are. By seeing the author’s rough line work and often disproportionate shapes, it gives the reader confidence to start sketching even if they don’t think they’re very good.

So I went out and got a sketch book. I’m determined to use it as an exploration tool for my drawing art. It won’t be a “public” book so I can make terrible sketches and not worry about what other people think. Instead, the challenge will be in not judging myself too harshly.

Simple Design is Usually Best

You can design things for a variety of reasons. You might want to create something to be the tallest or the widest or the most efficient of its kind.   But unless you’re specifically trying to design complexity, the simplest and most straightforward design is often the best. My son demonstrated this recently in his design of a Pinewood Derby car for his AWANA group.

He started by determining the purpose of his car. Awards are given for the fastest car as well as the most creative. Because we were a little short on time this year he decided that he wouldn’t be able to put the level of commitment in to win thecreativity award. Speed became the only consideration in the build at that point.

The classic Pinewood Derby car shape is the wedge. There are endless variations of the wedge shape but basically you’re just cutting off half of your pine block at an angle from the bottom front to the top rear. We made a further weight reduction by removing a portion of the block on the bottom rear. At this point we added lead fishing weights to the bottom of the car by drilling holes and gluing them inside about an inch in front of the rear axles. The weels were installed with a slight cant so only the outside edges would be in contact with the track to reduce friction. Finally, one of the front wheels was installed high so it wouldn’t contact the track at all.

Our purpose was speed and our design reflected that by taking the most direct route.  The simplicity of the design allowed for a fast prototype and build and at the end of the night, resulted in a first place win.