Got A Project? Just Get It Done!
There are thousands of creative people in the world but it seems only a handful get their projects done. Many folks have come to me with the “I have an idea for a great website” or the “I have this great application that needs to be coded” comments but nothing ever arises from it.
In some situations. they ask for my help bringing their concept to life. However, I have found there are only so many in hours in the day to write software and taking on everyones bright ideas just isn’t feasible. In most situations, the people whom invent the ideas are quite capable of carrying it out on their own but never move forward with it.
Then there are developers that actually have an idea, build on the idea, write down some concepts and start writing the software. Months into the project they lose heart, interest or just never get it done. Most of those same developers start a new project and never tie off the ends of the first project. They repeat this behavior several dozen times.
If you never finish a project you really have gained nothing mentally positive from the experience. Sure, you may have learned some neat techniques and creative design concepts but there is no satisfaction. You really gain satisfaction by publishing “version 1.0″
Nobody may use your first release or even know it exists. But, without hitting this important milestone you can never really look back at the idea and be proud from what you learned and what you’ve accomplished. There is a high level of satisfaction for calling something “done.”
Expect The Unexpected: Handle Your Errors!
Everyone wants to think they’re a great programmer. Great programmers create bugs just like greenhorn programmers, the difference is, great programmers can turn around bugs quicker. How do they turn bugs into working code so fast?
- History always repeats itself
- Handle error cases up front
Remember, history always repeats itself. You’ll find yourself making the same rudametary bugs for awhile. If you know your own fatal flaws you’ll be ready to fix your bugs before you even start. How many times have you said “GRR! I always do that!”? Enough to know your own common mistakes and eventually learn from them. But remember, history always repeats itself.
Next, handle your errors up front before you put your code out into the wild. Software development is not an easy task and it comes with a lot of headache and head pounding frustration. That is why we’re a special breed; not everyone can code. The best rule to follow, expect to have bugs and plan accordingly.
When you come to a logical branch in your software think “how can this go bad?” Because, in a few situations, it will go bad. It is said that developers only write three to four lines of working code a day. That might be a bit off by todays standards (or too high?) but it shows us something: We code a lot but only write a few working statements.
Why Write A Functional Specification?
Yet another lost art, the functional specification. Many large development firms require months of functional specifications and round table reviews before going live with a project. Why? Perhaps, to throw “red tape” at a problem when you could be coding the solution right this instant?
There is something these big companies have learned which many folks miss time and time again, designs lead to stable products. Should you still write a software design for a one person project? Of course! The depth of design may not be as great as a six man project run by a company like Cisco Systems but a design does matter.
There are plenty of sites you can visit that show “piss poor planning.” Some sites lack vision and scalability because they didn’t think ahead. Here is a question:
When you drive a car do you look straight down over the hood or do you look ahead on the roadway?
You look ahead! Those that do not tend to swerve a great deal and cause mass hysteria on the roads. Do all people look ahead when driving? Heck no! But they should; it leads to a smoother ride with less accidents.
You can apply this logic to any type of coding or web design. Don’t think “what can I do now?” think “how can I plan for success?” Developing a web application can be done by a single developer at a PC with no clear vision but a an awesome concept that can bring much success.
Experiences with Drupal E-Commerce And Coupons
So I’ve taken on a challenge that must be executed to exact precision. Designing a coupon system for the Drupal E-Commerce CMS. Why? Because I’ve found the stock contributed module for Drupal which does coupons is poor.
Not to take anything away from the tremendous effort to design a free module, but the design doesn’t fit a real e-commerce solution. The coupon system is limited to single custom coupons without any concept of “promotional codes.” This limits the usefulness to handing out coupons when we want a customer to buy from us and only want them to receive a discount, in-store credit for video game trade-ins and a few other limited areas.
A real coupon system needs to have promotional code support along with the ability to add custom code names (i.e. “MAY07SALE”) or a partnership with another company whom you wish to use their name (i.e. GoDaddy’s “digg” promocode for diggnation). The coupon system lacks expirations dates– they last forever, not really great for promotions. Lastly, a coupon must be able to work on one or more products but not your entire inventory. For example, “10% off copies of Need for Speed Carbon this week.”
2old2play Still Off Line (sorry)
To all the 2old2play members and users out there, I’m sorry. I have been working on the site maintenance all weekend and still have a TON of stuff that needs to be worked out. The database is just SOOOO much bigger then I thought and going line by line seems to be my only real option for not screwing things up entirely on the site. What I’m basically having to do is go through each “section” of the site and optimize the code before moving onto the next. When you think about the shear number of “sections” (i.e. forums, blogs, clan forums, gallery, tournaments, news, comments, shop, and on and on and on and on) you can understand why this is such a huge deal.
I basically have decided that NO MATTER WHAT I will put 2old2play online by Monday as promised. The only issue is that there may and will be a ton of stuff that wont be done. So if you notice things broken or out of place DO NOT email or PM me since I’m %100 sure I already know about it. I just don’t want to be down any longer then we already are. So sit back and try to relax for one more day as I stumble through a bit more code until we can open back on Monday ready or not…
P.S. In case the blog doesn’t say, its 3am here so if I sound crazy or spell like a 2 year old it’s because I need sleep and have been working all day and night. So I apologize in advance.


Posted in Development, Off the Cuff