Archive for the ‘life’ Category

How I Got Started With Programming

Friday, June 13th, 2008

Jim tagged me for the meme, so here’s how I got started…

How old were you when you started programming?
I wrote a few games (when you had to type in the games) on the TRS-80 when I was in elementary school. I think I wrote two or three of those games as a kid. I really didn’t start programming though until I was in college. I think I was 20 when I took my first programming class.

How did you get started in programming?
I took an internship to be a network engineer. I was lucky and got the internship, but there weren’t any projects for me to do. One day, the company I was working for asked me if I’d like to go hang out with the developers and see if I could help out. Fortunately, the developers were great mentors and they taught me how to write code. When a real networking position came up I declined it and kept hanging out with those same developers.

What was your first language?
Those TRS-80 games I wrote were in basic. The code I wrote in college was mostly VB.

What was the first real program you wrote?
I wrote an application for a law firm to track their hours for billing clients. Apparently, they had a hard time finding a time-tracking and billing application that would let each of the lawyers bill over 24 hours a day.

What was your first professional programming gig?
Doing (the hell that was) Windows DNA for a consulting firm while I was still in college.

If you know what you know now, would you have started programming?
Absolutely.

If there is one thing you learned along the way that you would tell new developers, what would it be?
Focus on the quality of the people that you work with and use it as a guide to find the right job. Your best bet for progressing in the field is to work with people that are better than you and have the ability and the desire to mentor others.

What’s the most fun you’ve ever had … programming?
My first agile project. XP by the book. I was very close to burning out and it re-ignited my passion for writing code and building valuable software. There were a ton of new things to learn and many things to re-think.

Nature Doesn’t Have A Design Problem

Thursday, January 31st, 2008

A great quote from Cradle to Cradle…

“Consider this: All ants on the planet, taken together, have a biomass greater than that of humans. Ants have been incredibly industrious for millions of years. Yet their productiveness nourishes plants, animals, and soil. Human industry has been in full swing for little over a century, yet it has brought about a decline in almost every ecosystem on the planet. Nature doesn’t have a design problem. People do.”

- Cradle To Cradle

Elimination

Monday, October 15th, 2007

Blog Action Day is finally here. I’m extremely excited to read the posts that get posted by a variety of bloggers today. The number of blogs participating is upwards of 15,000. This post is my contribution.


It’s fairly common to hear the phrase “Reduce, Reuse, Recycle.” Just about everyone recognizes this slogan and many practice the Three Rs in their day-to-day lives. While it’s important to recognize the outcomes of reducing, reusing, and recycling - we are still leaving out a core piece of the equation - elimination.

While thinking of the Three Rs, the intent is to place the options in the preferred order. Reduction is preferred over reuse and reuse is preferred over recycling. All of these options are obviously preferred over disposal. We can think of the Three Rs as a typical rank-ordered listing:

Reduce. Reuse. Recycle.

This all makes sense right? Minimize consumption (reduce) if you can, otherwise work your way down the list (reuse, recycle, and dispose as a last resort).

I’d propose taking this list a step further. Reduction is a good option, but even better is complete elimination. I guess that in a way, it’s the ultimate reduction.

Elimination

In theory this all sounds good, but what does it really mean? What does it mean to eliminate or to move towards elimination in the context of dealing with waste?

I tend to think of elimination two different ways.

Remove. Re-think.

The first way I think of elimination is simple removal. There are many times that this can be accomplished with minimal effort. As an example, I decided a week or so ago to jump on the bandwagon (for a good reason) and stop drinking bottled water. I’ve completely eliminated my consumption of bottled water. I bought a full-house water filter and broke out my Sigg water bottle to reuse. Simple right?

The second way I think of elimination is complete re-thinking. I’m always amazed at how little we question our beliefs and habits. Re-thinking involves taking new approaches, using creative thinking, and relying on hyper-productive design to remove the need for particular items. One application of re-thinking is using Whole-System Design to remove sub-optimization and unneeded elements. For a good example of re-thinking check out the Tunneling Through the Cost Barrier article from the Rocky Mountain Institute.

A combination of these strategies will help us move towards attitudes and actions that will lead us away from the consumption habits that we’ve grown accustomed to. The sooner that we embrace elimination, reduction, and reuse - the sooner we can move away from mitigation and focus on regeneration (where we ultimately need to end up).

Fatboy - Original and Outdoor

Tuesday, September 18th, 2007

I want one of these soooo bad…

I love these things. Maybe I should event get one for the beach.

The Metabolism of Industry

Wednesday, August 29th, 2007

“In the United States, the materials used by the metabolism of industry amount to more than twenty times every citizen’s weight per day—more than one million pounds per American per year.”

… from Natural Capitalism.

Ouch.

Career Goals For The Next Six Months

Monday, August 27th, 2007

I got tagged by Jim, so here’s my career goals for the next six months…

Learn more about usability, interaction design, human factors, and user experience.

I’ve had the opportunity to work with some individuals on recent projects that were incredibly good in these areas. There’s a lot that I have to learn here and it’s an area that developers are usually really bad at. I’m convinced that these areas are frequently overlooked and that we all need to learn how to integrate these items into our software. I want to understand the thought processes around these items deeper than I currently do.

Build out some (very) compelling presentations / talks / stories.

I love to speak, but I don’t do enough of it. I’ve got a lot of things that I want to say, but I haven’t been doing a good job of saying them (outside of my standard work environment) lately. I need to build out some really good presentations and start giving them. This takes quite a bit of time, but it’s well worth it.

Build a WPF app on the side.

I love WPF. It’s a great technology and I have some interesting ideas for places that it can be applied. I’ve got a simple side-project in mind that I want to create and distribute. I’ll probably do this as an open-source application and hopefully learn a lot in the process of building it out.

Question my assumptions about process.

I’ve been preaching the benefits of agile methods for quite a while now. Actually, maybe a little too long. I’m afraid that my “default” arguments are becoming routine. I need to step back from what I (think I) know and question myself more. There are still plenty of areas where agile methods can be extended and improved.

Strive for simplicity.

I’ve become obsessed with simplicity and minimalism. This is still playing out in everything from my day-to-day work to my living arrangements. I want to continue to explore this in my everyday work life. I’ve recently completely replaced taking notes with drawing mind maps. I feel like the next step is probably to make the mind maps much smaller and more precise.

It Sucks Being Color Blind

Thursday, July 12th, 2007

I have partial color-blindness and it’s a huge pain in the ass.

I don’t really mind not being able to see or differentiate every color and shade out there; but it does really bother me that I have no idea what is going on when I’m looking at color-coded visualizations. Most of the models or visualizations that I view on a daily basis require more than a glance to figure out what is really going on.

The only notable exceptions are a select group of interactive visualizations. Newsmap is a great example because I can see the contrast of the colors and I can also filter results by category (see the screenshot below).

This has really started to piss me off over the past couple of weeks. I’ve been taking some time to learn about how to do surf forecasting as part of my quest to finally learn how to surf. Although a lot of sites exist to do swell prediction, nothing beats looking at the models and understand the information behind the predictions. The problem is that the models that can help predict swell information are simply useless for me. Take the example below…

With this WAM model, I can see the contrast in the colors on the map. The problem is that I have no idea which colors match the colors in the key. Is that a 5, 7, 9, 12, 15, or 18 ft. wave height off of the coast of Northern Africa? I simply have no idea. I can see the colors, I just can’t follow the shades over the distance between the map area and the key.

So, the next time your designing your application or your generating graphs or models, try and keep the people like me in mind and have an alternative way to see the information that you’re trying to present. In my case, it would save me countless hours finding out ways to hack around this type of oversight with my standard arsenal of color-picking tools.

Cut & Paste

Sunday, July 1st, 2007

I’m incredibly intrigued by the idea behind the Cut & Paste battles. If you haven’t heard of this yet, it’s similar to DJ / B-boy battles, but it’s focused on design battles instead.

I guess I’ll have to find a way to make it to one of the eleven cities where the battles are (none are close to NC).

Dr. Dobbs Journal

Tuesday, June 12th, 2007

I’ve got to say that group over at Dr. Dobbs Journal have to be the most difficult bunch of guys that I’ve ever had to deal with around spam. The funny thing is that I signed up for a subscription a while ago and never received a single issue. The only thing that I’ve received are constant renewal messages (starting only one or two months after I originally signed up).

So, for some reason, DDJ took this is a an opt-in to send me non-stop spam. I have been completely unsuccessful in getting these guys to remove me from their mailing list (surprise) and I’ve even tried calling to be removed (no luck there either).

If you’re thinking about subscribing to DDJ, I’d think again unless you insist on being abused by their marketing department.

I’m hoping that no response to my 7th renewal notice (see below) might magically remove me from the list.

WorldChanging: The Book

Saturday, October 28th, 2006

WorldChanging

If you don’t subscribe to WorldChanging, you’re missing out. It is one of the best and websites out there and the content is always phenomenal. The writers and content are great and they are providing a great service.

Beyond the site, they have recently announced the availability of their book. In addition to the availability of the book, they are asking for individuals to buy the book on November 1st. I like the idea of using community-driven demand for exposure. It’s a great site, with great people, supporting great causes. I’m assuming that the book will be good, so I’m happy to help out on November 1st.

Regardless of whether or not you buy the book, please take a few minutes to check out the site and think about the content.