Leinninger.com

From the field...

For What It's Worth...

July 3rd, 2002:
Operation Candle

One year ago, June 1st, Gina and I went on our first date. Neither of us thought that it would work. (Our first conversation a year earlier ended up in disagreement over online music sharing… we’ve reconciled since…) In all honesty, I only planned a simple dinner at a popular restaurant because I thought we would have nothing to talk about… nothing in common.

candles

When I’m wrong I’m REALLY wrong! We barely touched our food, we talked the entire time. Since we were in the middle of our conversation, I had to think fast to extend our date (the restaurant was closing). We hopped in the car and drove into Royal Oak. We had a drink at Memphis Smoke, then had some coffee at Comet Burger. We didn’t stop talking the entire time. It was amazing! We had EVERYTHING in common. At the end of the night we decided that we should watch a movie that had come up in our conversation some time. The next day, we were doing just that. Things just kept getting better from there.

Last Friday Gina and I went out to recreate our first date for our anniversary. She didn’t know what we were doing, but a few minutes into the drive, I think she had it pretty well figured out. Apart from a not-so-friendly visit with the local law enforcement (it was a prom night, so we were pulled over and harassed for no reason, then I was given a b.s. ticket for not having my vehicle registration signed), the entire night went wonderfully.

We had dinner at Benihana, then a quick stop at Memphis Smoke, followed by a Boston Cooler at Comet Burger. The entire evening I was preoccupied with the time. Which I dismissed as concern over a production file push at work. I explained that I was expecting a call to tell me if things were o.k. or not. We left for home.

In all truth I was incredibly nervous. Two of my close friends and coworkers agreed to help me set up the evening. While we were enjoying dinner and drinks, Joy, Brad and his girlfriend, Melissa were busy preparing the next scene…

About 2 miles from the house I got a text message on my phone. About a minute later the phone rang. Again, I kept calm, completed my discussion, and continued driving. We parked in the back and walked into the house.

Kacey was barking wildly in her crate downstairs, so Gina offered to let her out, but I suggested that she not worry about that for the moment. Then, pointing at the kitchen floor, I said, “What’s this?” Gina asked me what was going on, I told her to follow them and we’ll find out.

We walked through the kitchen, then the hall, and into the living room. Looking around the room, Gina gasped, “Oh my goodne… OH MY GOD!”, as tears welled up in her eyes, she waved her hands nervously in front of her face. With that I picked up the ring, got down on my left knee, took her hand and said:

When you find someone you want to be with forever, you want forever to start as soon as possible.

On Saturday, June 1st, at 12:05 am, I asked Gina to marry me. She said yes. I’ve never been so happy… scared… nervous… and relieved in my life.


Further information and related links:

Benihana Restaurants
Memphis Smoke
Photos of the Setup and Reaction

- Duane

January 10th, 2002:
The Great BlackBall Conspiracy

Steve-O from MTVs Jackass

Jackass. It’s a great show. Usually a group of twenty-somethings run around hitting their heads and getting smacked in the genitals. Brilliant. Every straight male on the planet worshiped that crap. Including me. It was fun to watch, but I’d never try anything they did on that show, except one thing…

The Gumball 3000 is a 3000 mile road rally across Europe (traditionally). In 2001, the participants traveled from Great Britain to Russia and back in 5 days. It’s a giant party with no sleep, little food, a lot of caffeine, and a shitload of adrenaline. Immediately I wanted to participate.

I knew immediately that most of those people lived lives far different than mine. They were playboys, entrepreneurs, movie stars, and rich daddy’s boys with six-digit weekly allowances. It had to be expensive. As soon as the hour-long special ended I began my research. In a few days I had created a promotional website, composed an introduction letter/request to participate, and began looking for funding.

We initially anticipated the cost to be around $7,000 USD. After a little more digging and research we adjusted that to $10,000 USD. Pricey, but still possible with a little financial help. Why the cost increase? We initially discovered the Gumball 3000 through MTV’s Jackass series. So did 30,000 other people. Part of the cost increase may have been designed to thin out the initial flood of entries. (There are only 100 grid spots.)

We did a little prep on the car and some additional sponsorship research, but heard nothing from the Gumball committee. Several months after our initial and follow-up e-mails to the committee we were contacted by some of the Gumball message board members. Somebody had stumbled onto our site and filled out a contact form. The initial response was VERY positive. A few more e-mails from confirmed participants trickled in, but we had no official word yet.

Bad in Black

A couple of months later we received another contact e-mail from a message board member that was, at best, depressing. He stated that he thought we were trying to get money from outside sources too vigorously, that it was very expensive (hint: we couldn’t afford it), and that if we didn’t have an entry form yet we wouldn’t be getting one (i.e. GIVE UP). That was a lot to stomach at once. I figured that he was probably right on at least the last point. So, I posted a simple update on the site:

"We never got an entry form. We were never contacted to participate. Thanks for your support and interest. Maybe we’ll see you next year."

About a week later (Christmas Eve, actually…), a shiny, over-sized, silver envelope arrived in my mail. I set it aside as I rushed to get ready for the holidays at my parent’s house. When we returned that evening, I went though my mail. Normally I would have just tossed such an obvious piece of junkmail, but I opened it anyway. To my shock, a brightly colored entry form and sticker fell to the floor. I turned over the small circular sticker to see the Gumball 3000 logo stare back at me. A cold sweat instantly covered my body. Could it be?

Detroit's Rennaisance Center

I read the brochure/entry form several times in disbelief. We made the final round of selection. The first 100 entry forms back to the committee were in! (I knew that over 70 grid spots had already been claimed.) A million thoughts ran through my head at once. Where would we find the cash? Would we get the form back in time? Could the car withstand seven-thousand miles in 2 weeks (we would have to drive to New York to begin the rally and back from L.A. after the close of the event)? I also noticed that the final entry fee had increased to 7,050 Pounds Sterling (~$15,000)… ouch. It was possible that we would could afford this if we had a large sponsor (that would have to be approved by the Gumball committee before the event).

Obstacles steadily began to pile into the path of our participation. The cost was greater than we anticipated, our work schedules began to threaten our timeline, and we were given the run around by the few large companies that might have an interest in our participation in such an event.

Chicago's Hancock Building

There is still a small chance that we will still be able to take part in the Gumball 3000. The greatest issue is the cost. For that fact alone, the increased cost has proven effective… consider us filtered out. (The buzz hints that the inflated entry fee is to skim the best of the best from the possible entrants. A movie is being planned based on the Gumball rally, and they want to ensure the most interesting people possible take part. Apparently, we couldn’t afford to be interesting enough.

However, we propose an alternative to this rich man’s race. It is not our intention to compete with the Gumball. There’s no way we could possibly hope to do that. We just want to have fun without blowing $15k. Contemplate this:

  • < $100 entry fee
  • 500 mile route
  • 2 stops along the way to make asses of ourselves
  • Anything that’s highway legal is allowed
  • No pretentious aspirations
  • Fun for fun’s sake

I’m working on this possibility now. Many details need to be worked out. The event would most likely happen at the end of the summer (late August?). Expect more updates soon.


Further information and related links:

Gumball 3000 Homepage
Our promotional site
Sports Car Club of America
MTV’s Jackass

- Duane

September 14th, 2001:
Code Snob

What is good code? Any developer with a few years of experience will provide a different answer. My answer is simple: do the most with the least. This simple rule dominates even nature itself. Overly complicated systems require greater upkeep and maintenance. During the early evolutionary stages of our planet, overly complicated species faded into genetic obscurity. Early programing languages followed the same pattern. Complication without reason will only breed more complication.

Whoa!

Today, many developers openly brag about their 250,000 line application: “Just let (the next guy) try to figure THAT out!” Although this may ensure job security, it is truly no way to better your development environment. What is to be gained by a 250,000 line application that performs the same task as a 10,000 line script? Unless you’re paid by the bit, nothing.

A little over a year ago, our team inherited code from another group. We’re responsible for a major online financial resource, offering information and services to tens of thousands of visitors daily. Our team is web targeted and trained. We know good code, back end to front end. The original team consisted of desktop application developers accustomed to long development cycles, endless code, and poor communication. They built the original site as if it were a desktop app. That’s all fine and good if you’re in a market that moves at a snail’s pace, but the financial marketplace is constantly redefining itself. We couldn’t afford to have six month code cycles.

Good posture is key!

The first thing to go were object oriented (OO) tools for generating html. I’m not just talking about off-the-shelf products. The old team actually wrote Visual Basic and C++ applications to generate and/or compile their html for them. While I can appreciate the inner workings of their code, I can’t justify it’s use. With such tools we lost all flexibility. The smallest change required the use of cumbersome tools and a lot of waiting. Rule 1: If you can code it by hand, do so. Application wizards and assistants can be useful if you’re stuck. We must remember, however, that these tools were developed to help everyone to anything. A specially tailored code solution will to the job as well, if not better, with less code.

Another thing we noticed almost immediately was the complete lack of inline comments in the code. The comments that were found were more enigmatic than the code itself. Clear comments will help you when writing your closing docs (covered later) and assist when you have to debug your code later. In most cases, comments cause no extra bloat in modern code. Compilers ignore them, as do most modern runtime interpreters. The one glaring exception to this is HTML. Not only will those comments cause code-bloat, they can be a little too helpful to some visitors snooping through your code.

Reusable code is key. Not only can it save time, it limits possible points of failure while reducing the total number of lines of code. Although good reusable code may take longer to prepare initially, you will save time in the long run. Be prepared for future features, but you don’t have to implement code for them. A lot of the excess code in the old site was placed there for future changes that never happened. (Some things were as surplus as directories for features that were never needed or even planned on!) Simply recognize that changes will be made at some point to some of your code. Don’t code it into a circle. Make sure others can add to it easily. (Use clearly defined variables, group similar functions together, etc.)

Agree on a standard for variables and general code format early in the development cycle. If existing projects established these standards already, use them. Depending on your environment, you may have different formatting standards for different languages. Keep this to a minimum whenever possible. When size restrictions permit, limit the use of obscure abbreviations. (You may know that intlStatMtd means “internal status method”, but somebody else most likely won’t, unless you’ve established this in a comment or doc.)

Good posture is key!

All coders hate writing documentation, yet we all complain when we have to work on a project for which there is none. It is a necessary evil. There are a few things we can do to make writing and maintaining docs a little less painful. Use a template; most pro shops have established doc templates with an outline of the suggested content ready for you to fill out. If your shop does not yet have one, find an example of one you like on the internet and present it to your team leader. You’ll get a gold star on your forehead as well as some peace of mind. If you’ve included good comments in your code, consider yourself half-done already. Start cutting and pasting. Most projects start out with a spec. Most of the intro content for you doc can be pulled directly from the spec. Finally, remember to update your docs when changes are made to your code.

All in all, good code is the result of conditioning:

  • Brevity is bliss. Nobody likes a joke that takes forever to get to the punch line. (Exception: Comeback College. Ask George.)
  • Stay away from packaged solutions. They’re for everyone, not just you.
  • Write good comments, it’ll help if you fall on your head mid-code.
  • Write methods and functions that can be reused. Nobody likes code-bloat.
  • Standardize your code format. It just looks so damn pretty.
  • Write and maintain accurate documentation. You can tell your friends that you’re a programmer and an author.

Well, what are you waiting for? Why are you reading this? Don’t you have code to write?! Get to it!


Further information and related links:

Perl.com Coding Standards Guide
WebStandards.org
Good code format opinion
Ars Digita Documentation Template Example (pretty good)

- Duane

May 22nd, 2001:
Stupid is as Stupid does…

The nation as a whole is moving towards stupidity. If Darwin was right (and he was, by the way), we will be a country comprised of soft-skulled idiots with no sense of balance. Every day society makes it easier for idiots to continue living. We protect them, guide them, even admire them. This has got to stop.

They are not kidding!

Last night, Brian and I were watching a program on the History Channel about the manufacturing of aircraft during World War 2. Women were riveting while balancing on aircraft frames with no protective glasses, midgets (I kid you not) crawled inside wings to push rivets through with no regard for physical safety. Nobody complained, they just worked their asses off for love of country. Patriotism aside, these people were in real danger. Today a dozen safety commissions would have regulated those factories to a crawl. I’m all about safety, but the only governing regulation controlling those workers was common sense. If you shot a rivet through your foot it was your own goddamn fault for pointing it there. Not the rivet gun manufacturer’s (for not having a safety), or the factory for not training you better. You just knew that if you pointed the rivet gun at your foot you were going to feel some pain.

Part of the reason we have so many stupid adults is the fact that they’re not thinning out in childhood. (I’m about to come dangerously close to Dana Carvey’s grumpy old man character, so hold on…) Back in the day, there were things like six foot tall jungle gyms shaped like rocket ships embedded in a concrete foundation. It was every healthy child’s goal to climb to the top of that death trap. Often children fell, if they were lucky, they landed on another kid. However, they were much more likely to land squarely on their ass at the bottom of the playscape. Sure, they cried a little bit, but the next time they scrambled up that metallic skeleton, they sure as hell held on a little tighter and watched their footing a little more carefully. If they didn’t they were stupid. If they were stupid they probably weren’t going to make the cut anyway.

Today, the closest thing to those heaps of scrap iron shaped into spacecraft is the playscape (much more politically correct than “jungle gym”, eh?). Gone are the metal slides that would reach temperatures of 200 degrees fahrenheit, melting the outer layer of skin off of any child that dared brave it’s perils. They have been replaced by brightly colored, curvey plastic slides. Anything even remotely sharp has either been filled down, covered with rubber or removed. Playgrounds are covered in some bizarre soft rubber material so kids can fall down with out skinning a knee or bumping their heads. How can we expect children to understand that falling down is dangerous if it really doesn’t hurt that bad?! It’s more dangerous for little Timmy to walk down the street with his mother than it is for him to run full bore, headlong into a pile of his favorite toys.

We were never required to don a helmet before mounting our training wheel equipped, banana seat sportin’ Schwinns. Our only hope was to throw ourselves in the direction of the nearest lawn in the event of a bail. Skateboarding was a different story, even I wore pads when attempting to skate. A helmet though? No way! Those things were too damn expensive… but I knew my limits and respected them. Sure, I smacked my head many times, but I’m pretty much o.k. today. That’s where the soft-skulled idiots with no sense of balance come in.

Kids today live without fear for their actions. If they fall they’re protected. If they make a mistake, chances are they can try it again without harm. They are sheltered from the gore of daily living. They never see the horror of the real world. I remember when an anvil falling on a coyote was a laugh riot. Today no animator would even dare draw that. They be sued and fired in an instant. Kids are so protected that they wouldn’t have the common sense to know that they shouldn’t drop an anvil on their little brother. Because some kids have lived without fear for the results of their actions they decide that they can march into school and start shooting. They don’t know pain, they don’t fear the outcome. They never fell off of their bike while doing 30 mph downhill. Maybe that would have knocked some sense into them.

If these idiots do make it to adulthood (and they have a lot better change today than they did 10 years ago), they will do anything they can to prove that they do not deserve to exist. They are the ones that don’t know that coffee is hot. Thank them for the fast food coffee cups the words “Caution!!!! HOT!!!!!” blaring at you in 20 different languages. They are the ones in their giant SUVs talking on their cell phones while rolling along at 10 mph under the speed limit. They are the one that are still driving those SUVs on tires that were recalled because they explode causing rollover accidents. It is those people that make life difficult for people with a grain a common sense.

Heads up!

Head’s up!

It is time to stop holding everyone’s hand. If the oven is hot, don’t stick your head in it. If we let common sense rule, our rulers might have common sense.

Stop the maddness!

Further information and related links: Firestone Tires Tire recall ad Stupid people The Darwin Awards Chrome Ribbon Campaign Voluntary Human Extinction Movement

- Duane

April 18th, 2001:
Tainted Web

I’m a web developer, not just a guy that builds web sites for relatives and hobbiests. I design and implement complete commerce solutions, interactive media centers, and even a few online brochures. I make a pretty good living at it too.

I’ve been working with internet-related technology since 1993 (that’s before the world wide web actually existed in any formal way for you young-ins). I’ve been coding html since 1994… back before html tables even existed. I continue to stay on top of the latest trends and technology. I also work for a well known software company that has a number of very popular commerce and financial web sites. I am part of the machine.

I've got a hand up my a$$!

When I started investigating the web, it was nothing more than an extension of the bulletin board systems (BBS) that I had used throughout my high school life to find software and talk to other geeks. It was a mysterious entity that very few people knew about. Back then, it was nothing more than a few gopher (kind of like limited telnet interfaces running from menus rather than complete command-lines), ftp, and usenet (newsgroup) servers. There was no reason for non-computer-types to use it (i.e. no pictures) and it was great. It was an uncensored, unregulated, open space for people to express themselves and exchange ideas. There were no advertisements or intrusive pop-up windows. Just raw, pure information streaming onto the screen at a blistering 9600 bps.

Within a few months the web began to evolve. Hyperlinks and html were the “hot new thing.” I discovered lynx, followed shortly by Mosaic. The colored text and click-able interface entranced me. There was no turning back. Ads were still a rarity, as was much valuable content. Occasionally an opportunity to buy something online presented itself, but e-commerce was still in it’s infancy (at best). Mere months later, gifs and even jpegs were commonplace. Online porn started to appear en masse. The internet was still untamed. It was the wild west of the information age, just coming into it’s own. People flocked to the web in search of quick wealth. Small businesses were suddenly on equal ground as the big boys. I started to work with html professionally and even worked with/co-owned a few start-ups… I wasn’t even 21 yet.

Then, the online goldrush hit. Companies erupted from the digital horizon. Big names poured massive amounts of green into their online presence. People that had never turned a computer on in their life rushed to consumer electronics stores eager to buy anything that could get “online.” The electronic frontier started to tilt towards corporate control. Small businesses could no longer compete on a level field with the big boys. They began to over-regulate and under-perform while remaining over-valued.

Even web development became corporate. I admit that I sold-out early, but I was fortunate enough to join a big company (with big funding) that maintained a young start-up’s attitude. The area’s most hip development houses were gobbled up by large communication companies or ad agencies. Some entrepreneurs retired young, others dressed up their resumes and went job hunting. People altogether stopped visiting Joe-Nobody’s online bookstore and flocked to Amazon. URLs floated at the bottom of every television commercial. Microsoft even admitted that this whole internet thing might be more than a fad.

Mmmmm.

Without warning, the iNvasion began. Apple Computer introduced the iMac personal computer. It was friendly, easy to use, and came in pretty colors. Everybody jumped on the bandwagon. People bought candy-colored cd players, file cabinets, even fat-free grills! Everything suddenly became iEnabled, from radios to fishing poles. The internet candle had been burning with the power of a solar flare, it couldn’t last forever… and it didn’t.

Suddenly, Wallstreet recognized that companies, even those with pretty web sites, aren’t worth anything unless they make money. What a concept. The value of such “promising” newcomers as pets.com, Disney’s go.com, and even seasoned veterans like toysrus.com and AOL began to show weakness. During a business trip to Silicon Valley, I observed dozens of vacant offices that very well might have housed such almost-made-a-profit companies like e-pickles.com or iDoormat.net.

The corporate world made a mistake. They barged in too early, pissing gasoline onto a raging inferno. With a mindset of “if the little guy can do it, we can do it bigger and better”, they flooded the digital domain with lawyers, committees, and uninformed stockholders. The machine stripped the innocence and curiosity of the web and force fed bite-sized chunks of information to the masses. They over-analyzed every detail, micro-managed every feature, and over-produced every project. The collective online public willingly rolled up their sleeves and overdosed on corporate bullshit.

Companies are bailing on the digital new world. Business analysts are directing their over-paid, suit-wearing, project managers to escape while they can, like rats leaving a sinking ship. Corporations are scaling back their online business strategies and re-evaluating their technology budgets. Good.

I am the Grim Reaper!

After the dust has settled there will be a vast wasteland, abandoned by corporate America. It will be up to us, the connected community, to restore the internet to it’s former lustre. The corporate world will watch us, preparing for the next “big thing.” We will continue to share real information with each other. Idea will be free and technology will flourish once again. We will not be hindered by non-disclosure agreements or departmental approval.

Sure, some companies will remain, but the ones that will truly succeed are the ones that know their place and are capable of co-existing with the rest of us. They will understand that they don’t have to buy up competition to succeed, they just have to compete. They don’t have to advertise during the superbowl, they just have to deliver what they promise. They don’t have to micro-manage, they just have to work hard. Like the rest of us.


Further information and related links:

100 Dumbest eBusiness Moments
Fu#%edCompany.com
Sigma6 was bought by AppNet, who was bought by Commerce One
eBusiness.com – watch ’em fall
Chrome Ribbon Campaign
Internet Killed the Video Star

- Duane

Devtroit