Memories were being relived as I dug through years worth of archived email in a quest to find a reseller / hosting account. I once had lofty aspirations to create my own web company and quickly became the obsessive CEO.
The plan was to sell domain names, web hosting, and deliver websites to my clients - a one-stop-shop of sorts. I’d frequently obsess over the idea and smatter my coworkers, and friends (actually, anyone that would listen) with my fantastic ideas. I was obsessed. By obsessed, I mean, I obnoxiously sent out weekly (sometimes daily) emails containing mindmaps, and reams of links - all while maintaining a wiki bursting with my exceptionally mediocre ideas. :) I purchased reseller accounts, hosting plans - nothing was stopping me! Now that I think of it, obsessive tendencies probably run in my family - to this day my Mother vacuums her house three times a day, sure there were 11 people in our family and things got messy, but three times a day!! Try watching TV with the vacuum running three times a day It’s enough to make you quit TV and take up programming. Anyhow, during the time of my obsession, a couple senior coworkers gently suggested that I need more experience. I remember thinking:
Man, I’ve already been through school, I have an freak’n edumacation. I’m building sweet programs. How much more experience do I need?
Of course they were right. Since then, every year / month / day has brought heaps of new knowledge and experience - experience is one of those things that can only be acquired with time. My idea of the one-stop-shop crumbled when I realized that I couldn’t compete with discount hosting like GoDaddy / Dreamhost. I also realized that I enjoyed working in teams on large web applications rather than solo projects. Today I’ll occasionally meet an obsessive CEO, I’ll offer some advice, and smile. Good ideas tend to be self evident - they don’t require wikis and link farms to convince people. If you can execute your idea (develop it yourself) then your personal passion and drive will contribute to it’s success or at least provide you with irreplaceable experience - even if it is a hair brained idea.
If you’re interested, I still have the reseller account which offers reasonable domain discounts. Thanks to all my friends who tolerated me through those growing pains. :)
Steph and I lived in Japan for a year. Our apartment had a single breaker rated at 1500 watts - use any more and you’d lose all power. Our apartment came with an air conditioner to tackle the oppressive summer heat, a dehumidifier, and kerosene heater for the humid winter months. Japan is humid! Now, the A/C took 1740 watts, our dehumidifier 800 watts, coffee maker 800 watts, and kerosene heater 500 watts. Keeping the power on for a given day was a feat - the A/C used more power than we were allotted! Japan was full of ironies.
Some of our pictures from Japan.
A video of our messy apartment:
I’m running the half marathon for diabetes in Calgary on May 31st . One of my younger brothers has diabetes, so the run has personal significance.
My training up to this point has been terribly lax, I’ve been running 7km in about an hour. At this pace it’ll take at least 3 hours to break 20kms - Ouch!
If you're interested in donating (or better yet, joining the run too), then follow these steps:
- Visit The Canadian Diabetes Association
- Search for Adam Kahtava
- Donate
Anyhow; life isn't just about geeking out. I've got to run. :)
A couple more factors that have shaped my blog subscriptions.
Content matters, design doesn’t: Subscribers read your blog through RSS readers. Content is key, twitter widgets, plug-ins, and badges are self serving - they matter more to the blogger than their audience. If readers desire a more granular need-to-know-you level of information, then chances are that they already stalking you. If you’re a graphic designer then aesthetics do matter.
Debriefings on local events without a unique personal voice are lame (actually, anything without a personal voice is lame): Most subscribers skim, they seek out information and move on. Well written articles with a unique personal voice continue to draw me in. Information about the number of people who showed up, what you ate, or the decor of the venue are minor details. Seriously, I’ll email you if I’m interested.
Subjectivity is interesting: Reading / writing / learning is about considering alternative views and new opinions, there’s always a degree of subjectivity - nothing is absolute.
Some authors are always right, which is always wrong: A blogger’s blog is their domain, but it’s distasteful when an author defends their posts in an attempt to save face (to appear right all the time). Sharing opinions publicly is about collaboration, and validation, not being right or wrong.
Gary Vaynerchuk offers this piece of advice:
The only way to succeed now is to be completely transparent, everything is exposed, everything you do - Gary Vaynerchuk
For most web / knowledge workers, transparency is key to cultivating an online presence - today, your online presence (your Google search results) is your resume, everything you do online is fair game - your search results (or lack of results) generally reflect whether you're an overall good-person, experienced, or a bit outdated.
A reassessment: last month the faltering economy finally hit home - I was out of work. While search for a new job, I was surprised that most potential employers (nearly all) were looking me up on Google. From Google they'd land on my blog, my Twitter account, flickr, and so on. In one of my interviews I was told of an unfortunate candidate that had questionable content and photos online - this was a deciding factor in his no-hire decision. This had me feeling a little uncomfortable and begged for a reassessment of my level of transparency.
Randy Pausch once said:
I'll [hire] an earnest person over a hip person every day, because hip is short-term, earnest is long term - Randy Pausch
I echo Randy's sentiments. If you're an earnest, authentic, and good natured person, then transparency can be a huge asset. You should be exposing everything you do! Well… maybe not everything, there's little value in knowing what you ate for lunch, or when you're sleeping / awake - practicing some self moderation and making use of your inner monologue is recommended, because excessive transparency can bleed into white noise.
no matter what remember the web is NOT Las Vegas. What happens on the web does NOT stay on the web. I'll bet this guy wishes he'd have remembered that. - Arcanecode, Guard your credibility
With applications like Twitter and Facebook it's easier than ever to be transparent, but do we run the risk of being too transparent? How much is too much?
Over the past couple months I had the pleasure of working in a Java shop. Up to this point I've spent most of my time in the .NET realm. Working with Java was a great chance to experience the similarities and contrasts between environments, cultures, and web application implementations. Here are a couple of my observations.
Java developers are more knowledgeable than the typical .NET developer. Java developers tend to gravitate towards complexity, Linux, UNIX, open source, and continuous learning. They are less familiar with the wizards and drag-n-drop style development that often characterize .NET development. The Java developers I worked with didn't depend on a single unified IDE (like Visual Studio), instead each developer chose their text editor / environment (Emacs, Eclipse, TextMate, E-TextEditor, and jEdit were all being used on a single project). Each developer was responsible for being productive with their editor; and took responsibility for learning shortcuts, and other performance enhancing techniques. This broad use of editors placed an emphasis on the core command line tools which ensured that developers knew how the application was put together, and cultivated broad application troubleshooting skills within the team.
Unified IDEs (like Visual Studio or Eclipse) do not result in faster development, better developers do. Developers empowered with the ability to choose their development environment / text editors / operating system resulted in more passion and responsibility. Informal friendly rivalry between editor users drove development faster while providing diversity within the work place.
Programming languages and technology stacks don't matter to experienced software developers. As a developer it's easy to become a fanboy of languages or technologies stacks, but… they don't matter - writing good software within the bounds of our project do. There's no reason to be tied to a specific language or technology stack. Sure, languages fall into a specific category (dynamic, static, classical inherited, prototypical inherited) but programming languages are very similar.
Steve McConnell has been saying this all along:
mastering more than one language is often a watershed in the career of a professional programmer. Once a programmer realizes that programming principles transcend the syntax of any specific language, the doors swing open to knowledge that truly makes a difference in quality and productivity. - Steve McConnell, Code Complete 2nd Edition
These books set the tone for my perspective in this new year.
A Short History of Nearly Everything (Bill Bryson) emphasizes that, as humans we rarely know what we're doing - our existence as a species on this earth is a tiny fraction of time, but we continue to kill ourselves while obliterating other species and our environment. This book was also a great reminder that the greatest innovators and inventors are individuals with a burning passion - not individuals with a laundry list of formal qualifications.
The World Is Flat 3.0: A Brief History of the Twenty-first Century (Thomas L. Friedman) argues that, we can't accept complacency in our jobs or careers - the world has changed and you'll be left behind. Bureaucracy on every level may save your job today, but this won't be the case in an increasingly global world. As individuals our careers and future are solely our responsibility - we should be versatilitsts, not specialists.
The Age of Heretics: A History of the Radical Thinkers Who Reinvented Corporate Management (Art Kleiner, et el) demonstrate that, most corporations / business / organization don't really know what they're doing (MBA theory is based on the past, and not entirely relevant for the future). Many successful businesses have been run by heretics - people who understood the system around them, then push the limits of these systems to provide more value, innovate, and become successful. Also, that success is almost entirely dependent on people, teams, integrity, honesty, and the relationships that ensue.
The Last Lecture (by Randy Pausch, Jeffrey Zaslow), is a sober reminder that living life to the fullest and living a good life are what really matters. Also, that: “engineering isn't about perfect solutions; it's about doing your best with limited resources” - Randy Pausch.
Cheers to another great year as we continue to gaining broader perspectives, seek out a better quality of life, get out and do more things, meet new people, and cultivate existing relationships. :)
During our Domain Driven Design (DDD) book club we had the re-occurring discussion over the fallacies of the one-size-fits-all approach. We discussed how DDD is not the solution to every problem - other approaches like the Smart UI Anti-pattern work great for small one-off projects, teams with limited experience, projects under tight time / financial constraints, etc… However; we also postulated that, if your team has past successes with DDD, then they can be just as productive using DDD while gaining the benefits that DDD can provide.
Our postulation wasn’t earth shattering by any means. Basically we were reiterating that: if you already know how to do it right (or at least righter than the alternatives), then do it right the first time. Developing cross browser compatible web sites using web standards jumps to my mind as another example - a cross browser site is trivial if you’ve had a previous success. This idea extends well beyond software. Experienced professionals like Mike Holmes (from the construction industry) runs his organization (Make it Right) on this very idea.
If you’re going to do something, do it right the first time - Mike HolmesĀ
The Law of Two Feet is just as applicable to life, as it is to Open Spaces.
The Law of Two Feet:
If at any time during our time together you find yourself in any situation where you are neither learning nor contributing, use your two feet. Go to some other place where you may learn and contribute. - Open Spaces, Wikipedia
By applying this philosophy to software development (programming languages, operating systems, and development ecosystems), I’ve really been been re-igniting my passion as a software developer. I am foremost a software developer and the tools and products I choose are secondary, but I lost sight of this over the past couple years. I was buying into being a [insert your choice of ecosystem, language, operating system here] developer.
Anyhow; this isn’t to say I won’t be raising my concerns (running away), I’ll continue to make noise (because I believe it has value), but when change doesn’t manifest. I will (like so many people before me) use my own two feet and move towards a situation where I can continue to learn, contribute, and be the change I’d like to see .