Rant

Google Didn’t Fuck You; You Did

Posted in Brain Dump, Rant on February 15th, 2010 by Eric Lamb – Be the first to comment

With the release of Google Buzz last week a lot of people have been screaming bloody murder over some privacy concerns they have and Google’s perceived lack of forethought on the matter.

Google Didn't Fuck You; You Did

Google Didn't Fuck You; You Did

First, Google Buzz appears to be a FriendFeed clone that Google just launched about a week (or 2) ago. Initially, it was enabled inside of all gmail accounts by default without any authorization to the contrary. I haven’t had the opportunity to try it though. Not because I don’t use gmail (I do; sorta) but because I use Google Apps gmail which wasn’t a part of the rollout.

From what I can glean; Google Buzz works by parsing your contact list and then making connections between everyone in it and displaying their social network activity info publicly for all to see (seriously, just like FriendFeed). Make sense? No? Here’s the Crunchgear explanation of Google Buzz:

Google Buzz is a social network and sharing product built by Google. Based within Google Profiles, Buzz offers a stream of status updates, pictures, links, and videos from your friends. You can “like” these items and you can comment on them. Updates from Flickr, Picasa, Google Reader, or Twitter can also be automatically imported into a Buzz stream. Buzz will recommend items you might like based on your friends’ activity.

So, apparently, one of the “features” of Google Buzz is that when it was initially released it displayed your contact list publicly which raised all sorts of hell from people who can’t afford for this to happen (think lawyers, journalists, etc).

This smacks of a high level of naivete on most of the users. Under what delusion are people living in to think that they have any expectation of privacy from a publicly traded company. Yes, I know they claim to care about your privacy, and I’m sure on a personal level the people working for Google do, in fact, care about your privacy. But the organization itself? Not a fucking chance.

Let’s get serious here; as stated above, Google is a publicly traded company which means their priorities start and end with cash ($$$). Frankly, it’s naive to think otherwise. Ask any corporate officer and they’ll tell you they have a responsibility to their shareholders. This is a notorious lose for consumers but it’s the reality nonetheless. Cry all you want but Google fucking their users in this way did ensure they launched a new social network with millions of users. From a fiscal standpoint, this was a HUGE win even with all the bitching and moaning. Even taking into account any users who would leave Google (along with any ill will this may have created) this was still a winning strategy for launch.

If privacy is an issue then, it seems to me, that you really should have taken greater measures to protect yourself. Relying on Google to protect something like this screams of escapism and finger pointing. Guess what? It’s your fault. Deal with that instead of crying that a publicly traded company that provides a service you use for free does something in a way that you don’t like.

Do I think that Google was right in any way for doing what they did? Not for a second. That said, people need to take responsibility for their own needs instead of blindly trusting a for profit company to do it for them. Yes, even when that company claims to “do no evil”.

Bookmark and Share

Code Like It’s 1999 With Dolphin CMS

Posted in Brain Dump, Programming, Rant on December 2nd, 2009 by Eric Lamb – 1 Comment

It’s interesting how life can throw you a little too much coincidence. For example, I was having a nice conversation (with a pretty smart dude) where it was mentioned how much more painful development on large projects used to be back in the confused days of early PHP. Then life decided to highlight this little message with a project using Dolphin 6.1 from Boonex.

Coding Like It's 1999 :: Dolphin CMS

Your Soul is the Fish

The work came from a client that had a straight-forward install of Dolphin. She wanted to customize it a bit to make it a little more user friendly; nothing too difficult. Before the project came to me the client had gone the usual route of hiring someone on the cheap who ended up not being up to the task and was, subsequently, left high and dry. This left me with a project that had some of the work started, but not finished, which added to the pain a little but Dolphin sure has it’s own ways of ruining a mood.

In case anyone else has the misfortune of having to work on a Dolphin CMS project I thought I’d highlight just what you’re in for.

The Good

To be fair, for as bad of a nightmare Dolphin CMS is as a project (compared to coding standards in today’s landscape), it does have one or two(ish) redeeming qualities.

For one thing Dolphin CMS has a pretty logical directory structure. Looking for the language file? Why it’s in the “lang” directory of course. Looking for a class? Just check out the “inc/classes” directory. Admittedly, this is a small thing if you’re using a modern IDE but I still appreciate it (so many programs I’ve ran into lately don’t even include this level of logic).

Dolphin CMS also has what can only be called an advanced admin panel. This thing allows you to customize all sorts of areas including the content of pages as well as the layout of the pages. I had a lot of fun playing with that thing. This is double edged though because it serves no practical purpose if you want something unique and cool. For newbies though I think this is a nice feature to learn about the possibilities for a website.

The Bad

Right off, Dolphin CMS is PHP 4 compatible. This is just silly; it’s fucking 2009 already and Dolphin CMS using PHP 4 as a baseline is probably more to blame for the rest of this list than anything else. If you’re going to use old technology why not use old coding standards? In that situation I imagine complacency and laziness would come naturally.

Then there’s the use of short tags in Dolphin CMS. I admit to having a problem myself with maintaining this standard (it’s still natural for me in a template file) but it’s irritating if you have short tags disabled in your ini file.

Another offense: inline HTML and PHP together ALL OVER THE PLACE. You can’t hardly open any file, seriously, any file, without wanting to tear your eyes out of your skull from the cluster fuck in front of you. Add to that the confusion in that the system has a template system (see below) Dolphin CMS just doesn’t use it for the parts you’d actually want to change. Gave me a headache when I would think about it.

As mentioned above there is a template system (of sorts) but it doesn’t actually templatize anything. I guess it’s more of a layout system but considering the majority of templates only had header, footer and content references it’s a poorly utilized one. To make it even worse though Dolphin CMS uses a hard-coded, numerically indexed, naming convention. Want to know what template file you’re file is using? Just open up that file and look for a variable called “$_page['name_index']” and use the value as a reference. Seriously, why would you use a number instead of something meaningful like the name of the file (or similar)?

Back Pedaling

I just got done working with Dolphin CMS so, yes, I’m a little raw. Wah; I know. Still, the fact remains that Dolphin CMS is one of the biggest pains in the ass to work with that I’ve run into in quite some time. It’s not too complicated to work on, it’s structure should be familiar to anyone who’s worked with PHP ten years ago, which is it’s biggest issue. You have to dumb yourself down to work with. And for the love of god don’t try and abstract anything.

The most heinous thing though is that Boonex actually charges for this filth. Real money too. Crap can be excused if it’s free but there’s nothing worse than paying for a box full of horse shit.

Bookmark and Share

Welcome to The McDonaldification of Web Development

Posted in Brain Dump, Business, Rant on November 2nd, 2009 by Eric Lamb – 2 Comments

When I was a kid I remember McDonald’s as having some of the best food and providing the best experience ever. Just the thought of going there was exciting. Breakfast, lunch and dinner; it didn’t matter what meal it was. They went out of their way to, at least try, to make the experience fun for the kids. Yes, this was part of a plan to get the kids hooked to bring in the family (which it did in spades) but it was one of those rare strategies that was win-win for both the customer and company.

Welcome to The McDonaldification of Web Development

Welcome to The McDonaldification of Web Development

Fast forward 20 years (sigh…) and McDonalds and it’s ilk are the lowest of the low when it comes to quality of service and product. It’s been years since any fast food restaurant has provided me with an experience worthy of my money; the food is always horrible processed shit, and the service (even at the most basic of basic levels) is completely nonexistent. Hell, I can’t remember the last time I was given ketchup with fries without having to ask for it…

Having worked in web development professionally for the last eight years I’m starting to notice a similar pattern in this industry. What was once an industry ruled by high profits for a job performed by professionals (mostly anyway) has quickly become an industry full of amateurs and scammers (mostly) trying to make as much money with as little thought to quality as quickly as possible. I’ve spoken before about the lack of quality I find in a lot of programmers I work with, and while I’m not saying it’s the complete cause, I do think there’s a link.

Oddly, I’m in the minority here. In my, limited, exposure to other programmers I can say definitively that the majority just plain suck; mostly because they refuse to grow and learn.

I’ve heard all the arguments before, “My weekends are mine”, “I work hard enough; I don’t have the energy”, and the best ever, “My employer should pay for this like Google does. Whah!!”. (I know Google doesn’t, in fact, do this but people still say it.) All just pure crap excuses for maintaining a level of competence just high enough to not get fired.

Bottom line: working 8 hours a day is just not enough to matter. If you think you’re a programmer and you don’t spend time improving your skills you’ll quickly, really quickly, become obsolete. It just doesn’t matter if .Net is going to be around forever and your employer won’t ever upgrade from 1.1; you’re a hack (and not in a good way).

Now that I’m an active freelancer I’m really, really, starting to see the differences. Time and time again I end up taking a meeting with someone who has just been worked over by others in this field. The stories some of these companies and people have are just appalling and I’ve heard some doozies. Worst of all, behavior like this tends to skew their perspective and they view all freelancers as suspect.  Too much of my time is spent building confidence in me as a professional it’s really starting to become laughable.

It was all really quite the mystery until I recently reached out on craigslist to find a designer for a WordPress theme (I need to update this site BAD). I was pretty explicit that all I was looking for was a PSD file that I would personally turn into a WordPress theme but 4 out of 5 responses to the ad indicated that the respondent hadn’t even read the post. Frankly, it was irritating wading through the crap and, obviously, automated responses.

This is troubling for a couple reasons. For one thing it basically indicates, to me anyways, that the person (company, freelancer, whatever) had very little regard for what I wanted, instead opting for a fastest gun approach. The number of emails I received immediately after posting my ad was around 20 and after reviewing each one it was obvious they were automated. I pity the individual or company who entertains these people.

The long term harm this can cause for other programmers (much less themselves) is completely short sighted. Crappy work begets a crappy experience for the client. Simple.

Bookmark and Share

Why Do Programmers Suck?

Posted in Brain Dump, Programming, Rant on October 19th, 2009 by Eric Lamb – 1 Comment

One of my bigger pet peeves when dealing with other programmers is this belief in absolutes and how unbending some programmers can be in dealing with them. We all fall prey to it, even me and, probably, you too, but some of us (especially the young) can be so blinded by interpretation as to lose all credibility. Now, to be clear when I say “absolutes” I’m talking about the home spun wisdom either given to us through experience or, more than likely, through someone else’s experience.

goto

goto

Absolutes are but one example of how dealing with programmers can be difficult. Another of my personal favorites is the religious fanaticism we have towards our tools (and against those tools and users of the tools we don’t use). Arrogance is key here.

Still, it’s not like it’s a good thing to be so problematic. There’s a wonderful thread laid out on Reddit which goes into a lot of detail on how I’m not alone with this:

I am a programmer and electrical engineer. I get along well with most people, but most programmers irritate me. They are always trying to one up each other and prove how smart they are. They commonly engage in petty infighting and ruthless backstabbing.

They want to feel like artists and desire to spend all of their time refining their beautiful, unique creations. But unlike actual free-thinkers, they constantly seek refuge in argument by authority, blindly quoting their favorite gurus to support their positions.

Their arrogance and narcissism are beyond belief. In what other industry do recent college graduates show up at their first job absolutely, religiously, convinced of the infallibility of their favorite fad, arguing their point to the extent of damaging their own prospects?

One thing common to most programmers seems to be the desperate need to believe in absolutes. “You must never use goto”. “Only one entry and one exit from any function”. “All objects MUST have a copy constructor”. “Singletons are evil”. “Do not use global variables, ever”.

I’ve been a consultant for the last 19 years. I’ve seen the insides of about 20 or more different companies, so I know these attitudes are pervasive in programmers across many industries. More so when the programming is business-centric, less so when the programming is industrial, scientific or embedded.

I guess what it really comes down to is that programmers, especially young ones, need to be right and need to be seen as super smart. They crave rules, discipline and order while at the same time regarding themselves as creative and ingenious beings. They seem to need these things as if their entire self-image depends on it, cognitive dissonance be damned.

What is it about the profession or the training that so commonly leads to this outcome?

Of course none of this applies to fine folks who frequent this website. I see a much higher level of maturity here than I see in most development teams. And I myself would NEVER be guilty of any of these tendencies ;-) .

Any ideas?

Bookmark and Share

Hey!! You There, Pussy! Don’t Be A Pussy.

Posted in Brain Dump, Business, IT, Programming, Rant on September 28th, 2009 by Eric Lamb – Be the first to comment

Working in IT requires balls; you have to make some really tough choices with very real consequences. It’s not really a problem for programmers; very few of us work on projects that has the potential to destroy lives or break companies apart. On the other hand, in IT, you’re dealing with the backbone of an organization. Make a mistake here and: You. Are. In. Trouble.

Don’t Be A Pussy

Don’t Be A Pussy

Not to worry though; try as hard as you want to not fuck up and it’s just going to happen that much sooner.

I can say with absolute certainty that there’s going to come a time in your career when you fuck up. Big. Like really BIG. The type of mistake that has the potential to sink the company or client you’re working for/with. When it happens it’s going to be bad. So bad that you’ll have the fear of Dad in you. You remember that right? When Dad was coming home and you knew he knew what you did and you knew your life was over. If you didn’t have a Dad; think shear panic mixed with absolute paranoia and terror. Yeah, that’s the stuff.

What you did/will do isn’t important. What is important is how you deal with it. You’re going to have options when it  comes to dealing with the issue(s) and how you act is going to determine how your colleagues and peers look at you for the next few months. Make the wrong call and you’re in for some real uncomfortable silences and some really awkward sidelong glances.

If this has already happened to you; congratulations. Just know it probably won’t be the last. On the other hand if it hasn’t happened yet get ready; it will. You’re going to make some stupid mistakes in your career; mistakes so idiotic and so demoralizing your confidence will shatter and you’ll have a hard time getting back on the horse.

Like I said above, I have absolutely no idea what you do or what you can do to fuck it up so, as anecdotal examples only, I’m going to rely on my personal experience. I can honestly say, with absolute pride, that I have done the following:

  • Deleted a database and couldn’t restore the data
  • Deleted all the rows in a table and didn’t have a backup
  • Deleted a user account and all the email and files associated with it.
  • Changed every users password to “password” in a database
  • Sent an internal cost analysis report for a client project to the client

And that’s only what was off the top of my head; I’m sure I’ve blocked out some of the worse things. The one constant between the above list (aside from the stupidity involved) was that I owned the mistake. You have to immediately handle the situation whatever that means (it’ll depend on the situation).

After that though a funny thing will happen; it’s very likely your confidence will be shot. This is important because you need confidence (read: balls) to work in IT. There are too many things, that you just don’t know how to do, that you’re going to have to do, and that requires the confidence to know you can do these things. It’s why we make the big bucks.

In my experience the only thing you can do in these situations is get back on the horse ASAP. The sooner you do something, anything, that has consequences the better. You can’t wallow in the past and getting hung up isn’t the answer.

BTW: After reviewing the above I have to say:

Thank fucking God I don’t work in IT anymore.

Bookmark and Share

Buying Books Just Got Harder

Posted in Rant on September 9th, 2009 by Eric Lamb – Be the first to comment

Truth: I’m a whore when it comes to books. I Just love ‘em. I love the way the feel in my hands, I love the way they smell and I love how I can just lie down with a good one and, somehow, miraculously, that makes a good day. We’ve been hearing for a while how books were going to die and be replaced by the Internet but I don’t see that happening anytime soon. You can’t hold it (no a Kindle isn’t the same), there’s no smell (except warm plastic I guess) and there’s no satisfaction reading a computer all day (in fact, it’s bad for your eyes).

Reading is Good.

Reading is Good.

I have a special leaning towards hard c0ver books though. Paperback books are good for a trip, I guess (for example a long flight or train ride). But if you want to keep that book, which I always do, then a hard cover book is the way to go. The great thing about hard cover books is that they can be purchased online through Amazon for a fraction of the cover price. There’s a reason Amazon is on top of the online book selling market and it’s not because they rape their customers (are you listening RIAA?)

It used to be that all I had to worry about when buying a book was ensuring it was the hard cover edition. I never cared about edition versions (first, second, yada-yada-yada) or anything but now I have to worry about Large Print Editions (LPE). LPE books are irritating.

Obviously, the print is HUGE. I’m sure they’re made specifically for sight challenged (blind) people but to us who can see it’s a little disconcerting reading text so big. Each page can only contain around 2.5 paragraphs of text. This makes the books big. Like really BIG. It’s irritating holding a normal novel and having so many pages to thumb through.

Apparently, I’ve been living under a  rock all my life because I hadn’t been exposed to LPE books before .

Recently, I bought a book on Amazon which I thought was going to be a nice little addition to my library. Just a guilty pleasure book but one I wanted. I was a good little consumer, making sure it was hard cover, it was being sent from a reputable seller, and that it was in English (don’t ask).

Then it arrives and I’m just bummed. Not because of the book, per se, but because now I have to worry about the format of the text when I’m buying a book.

So as I said, buying a book just got harder. A little, sure, but it’s now one more thing.

Fuck.

Bookmark and Share

What Does Zend Server CE Have to Offer?

Posted in IT, Rant, Servers on July 29th, 2009 by Eric Lamb – Be the first to comment

Since I had to setup a whole new computer I decided to move away from the IIS experiment I’ve been working on for the last year and try something a little different. I’d heard about Zend Server CE before but after a failed attempt to get it working a few months ago, because of IIS ironically enough, I hadn’t really given it the attention I thought it deserved. After having played with it for about a week I have to say I’m completely… underwhelmed.

Failed to Login

Failed to Login

Zend Server is supposed to be a complete Web Application Server that is purpose built for php development. It includes application monitoring, problem root cause analysis and and extended caching capabilities. Pretty enticing really.

Unfortunately, Zend Server CE doesn’t include any of the above bells and whistles. Instead, it’s a stripped down version that appears to just match the features and functionality of XAMP or WAMP (Apache, php and mysql wrapped in a nice little installer for Windows).

I’ve used both used both XAMP and WAMP and, with little exception, I’ve always wished I’d gone with a manual installation instead. It’s not that they’re bad programs, it’s nice that they’re available for newbies, but my needs aren’t easy to package up in a “one size fits all” package. I like to try new things and experiment and sometimes what I want to do isn’t easy without breaking something. Admittedly, I haven’t tried to use any one size package for a few years so this may not be the case anymore.

Either way though, I know I have a bias; I might even be a bit of a snob about the issue. Totally possible.

That being said, after installing Zend Server CE, which went very smoothly actually, I was confronted with what appeared to be an incomplete installation of php; php-win just didn’t work. It did nothing in fact; I couldn’t get it to do a damn thing. Since I do a little maintenance scripting with php-cli (and php-win.exe is essential on Windows) this was a pretty big issue.

On top of that, I just couldn’t figure out how to modify the –configure options so changing the setup was obviously going to be an issue. I don’t know if I’m an idiot but I just couldn’t figure it out.

Then the let down happened; I was under the impression that there were going to be some cool profiling toys to play with. Instead, there’s a web GUI for configuring PHP, which is pretty nice I guess, but for me, it’s just easier to edit php.ini directly than navigate through a web interface. Kind of useless. What with the integration with Zend Debugger I was really expecting more.

Ultimately, it seems that if you’re a complete newbie to php Zend Server CE is a worthwhile fit but if you actually know what you’re doing you’re still better off setting up a development environment manually.

This is pretty disappointing. A product from Zend, that’s supposed to ease the pain of php development being released to the community, offering nothing more than you could already get from a dozen other programs kind of seems like posturing. I understand the desire to have a demo of a paid product but it should, you know, be different.

A good change I’d like to see would be to include some of the more advanced features like the Application problem diagnostics and the Application monitoring (alerting) functionality in the CE version. It would benefit the community far better than the current version.

Bookmark and Share

Don’t Just Jump In and Code. Ever

Posted in Brain Dump, Programming, Rant on July 23rd, 2009 by Eric Lamb – 1 Comment

Obvious statement; programmers are, at their core, are problem solvers. Yes, our output is code, but at the base level the entire process of creating the code is in response to some sort of problem. On top of that, once the initial problem is solved we’re still responsible for fixing new, unknown, issues when they come up.

Problem Solving Flowchart

Problem Solving Flowchart

Solving problems is what we do. I was reminded of this the other day when a bug was logged about a project I’m working on.

The issue was that the tab ordering on a form, where you use the tab key to move between fields in a form, was skipping the select fields in FireFox on a MAC. Since I wrote the program the issue was reported in so the responsibility for fixing it fell to me.

Now, how would you solve the issue?

Assuming you took exactly the same path I did, you would probably attempt to replicate the issue and found that, yes indeed, when tabbing between fields in a form the order for the tabs was unreliable; it would skip all the select boxes. Seeing the proof, you might start looking into what could be causing it.

Immediately, all sorts of suspects come to mind:

  1. The field “label” elements could be wrong.
  2. The divs the fields are placed in are out of order
  3. FireFox could just be broken (hey, it does happen)

As do a couple “simple” solutions that remove the issue without technically fixing the problem:

  1. Set a dedicated “tabindex-n” in each field element. This could force the tab flow but it’s not known if it will fix the issue .
  2. Write FireFox specific JavaScript to force the tab order in that browser (costly but certain to fix)

You now sit at a crossroads of sorts; you can figure out why tabbing isn’t working by eliminating suspects or you can attempt to bypass the issue entirely and use  one of the above “simple” solutions or you take door number #3 and do more research on the issue before making a decision on direction.

We’ve seen it time and time again; programmers eager to just jump in an start changing things, writing things, and just creating things. This is always, 100% of the time, no excuses, unequivocally the wrong move.

Doing, just basic, research on the issue produced this gem from CoolWeblog:

I just spent the better part of an hour trying to get tabindex to work under Firefox/Mac OS X.

The solution lies not in Firefox, but in the Mac OS X preferences.

Apple Menu > System Preferences > Keyboard and Mouse > Keyboard Shortcuts

and under “Full Keyboard Access” choose “All controls”.

Sweet lord….

Attempting any of the above solutions would have been a HUGE waste of time; essentially just grasping for straws.

Bookmark and Share

Exclusive DLC is Bad for ME

Posted in Brain Dump, Rant on June 15th, 2009 by Eric Lamb – Be the first to comment

Really, I should call this post “I whine about how Bethesda told me to Fuck Off and hand over the money” but it’s a little too wordy. Instead, just a quick little rant on why exclusive downloadable content (DLC) is a really bad call for consumers.

Fallout 3

Fallout 3

I never really care too much about “deals” made between companies. I understand that nearly everything is a business, especially in the US, so deals are pretty common and I just accept it. I’ve never really been burned by them until recently though.

This particular case was with the Bethesda video game Fallout 3. I definately wouldn’t classify myself as a gamer but I do play them; probably more than I should. I just don’t follow any games. To be even more clearer: I DO NOT CARE ABOUT VIDEO GAMES. I just like to play.

One day I saw a commercial for Fallout 3, and having played the first 2 Fallout games, as well as Oblivion, I immediately went out and bought the game for the Playstation 3 (PS3).

Excellent game. Just a really, really, deap and immersing experience. I enjoyed it a lot.

Once I was done, and the game makes sure you are done once the game is beat  (unlike Oblivion), I put the game up and went back to my life.

Then I heard Bethesda was coming out with downloadable content for Fallout 3 and I started looking into it. Turns out the DLC was only for the Xbox and not the PS3; Microsoft, the fuckers, paid a shitload of money to lock this in.

Sigh…

Here’s the problem; I had paid the same amount for the PS3 version as the 360, $60, and while I had a 360 I decided on the PS3 version because, well, the 360 was having non-RROD issues and I didn’t want to go through the trouble of getting the damn game to work.

And I got hosed for it.

The lesson, apparently, is that Microsoft has no issue forcing my decisions. If I want to get full value out of the games I buy, and they are available for both the PS3 and 360, I had better buy for the 360 because they will ensure I regret that decision. I resent the crap out of that.

Like I said, I understand the business decision to do this (obligation to turn a profit and all that). But I also think it’s a slimy, short thinking, decision that runs an unacceptable risk of alienating customers.

It’s a good thing both Bethesda and Microsoft make good video game products.

Bookmark and Share

Just How Good Are You?

Posted in Brain Dump, Programming, Rant on May 22nd, 2009 by Eric Lamb – 4 Comments

What do doctors, lawyers, programmers and strippers have in common? The need for continuing education (ok, strippers probably don’t but, you know, strippers. Think about it).

I realized early on that I was never, ever, EVER, going to be done learning about programming. Until I retire, and probably not even then, I’m going to spend a good portion of my life with my nose in a book, reading blogs, and/or diving into subjects WAY above my head.

stripper

stripper

I don’t think this is as bad as it might sound though. I really love this shit. You have to if you want to be taken seriously. I accept that I’m not a Wozniak or Cutler; I have to actually work to understand this profession.

Oddly, I’m in the minority here. In my, limited, exposure to other programmers I can say definitively that the majority just plain suck; mostly because they refuse to grow and learn.

I’ve heard all the arguments before, “My weekends are mine”, “I work hard enough; I don’t have the energy”, and the best ever, “My employer should pay for this like Google does. Whah!!”. (I know Google doesn’t, in fact, do this but people still say it.) All just pure crap excuses for maintaining a level of competence just high enough to not get fired.

Bottom line: working 8 hours a day is just not enough to matter. If you think you’re a programmer and you don’t spend time improving your skills you’ll quickly, really quickly, become obsolete. It just doesn’t matter if .Net is going to be around forever and your employer won’t ever upgrade from 1.1; you’re a hack (and not in a good way).

The crappy developers rarely, if ever, read blogs, books or articles on anything related to development. And when they do, it’s usually just to reinforce a preconceived notion they already had. You’ve seen it; “See! Look, I’ve been saying all along Java sucks and here’s an article on Reddit.”

On the other hand, good developers spend time thinking about their projects. They read books about programming concepts like Code Complete and The Mythical Man Month. They’re interested in the past; learning about how Windows NT was built or how AOL was founded is a good read to them. When asked for weekend plans they actually weigh programming against it.

I’m a little sick of the discrepancy here; there are just way, way, too many crappy programmers out there. Just lazy, untalented, bastards.

If you’re not living programming to your bones chances are you’re just not going to succeed. Sure, you can make a living but you’ll never be anything more than what you are right now. If the idea of never excelling doesn’t scare you do us all a favor and just stop writing code. Just stop right now.

Bookmark and Share