A better use for a botnet

August 13, 2009

This one falls under the category of “I wish I had thought of that”.  A web application that captures a screenshot of your web design using distributed computers and browser version(s) of your choice.  Hello Browsershots!


A great, unobtrusive idea from killie6.com

August 6, 2009

Check out the details here.  Death to Internet Explorer 6 and every corporate environment that requires it.


Random Thoughts – July 2009

July 31, 2009

“I think it’s the appeal of having to rely on myself” – Thanks Carol Clark

If you do something stupid because you’re stupid, that’s a problem.

Most people are too afraid to simply be who they are.

Is it just me or do ComponentSource downloads take forever?  Are they on dialup?

One bad programmer can easily create two new jobs a year – Thanks David Parnas

There is no failure, only feedback – Thanks Bill Shaw

Exceptions are made only for the exceptional.


Cost of Microsoft’s new cloud services

July 17, 2009

Break out the calculator …. here are the prices.


100 essential skills for geeks, how did I score?

July 10, 2009

Wired.com put up a post today on their GeekDad blog that I could not resist.  I often wonder how much of a geek I really am.  I only had to read the first 10 questions to get my hopes up.  I scored 7 out of 10, but after that, it got hard.

How did I score?  I’m only half geek!  Yep, 50/50.  Right down the middle.

At first, these results sound quite depressing, especially if you are looking to hire me.  However, I’m quite happy with the results.  If I were to take the survey “100 essential skills for business”, I’m certain I would score 50/50 on that one too.

Being a great software developer (or freelancer, for that matter) means knowing your area of expertise, understanding that it is a means to an end, and quickly coming up to speed on business processes (or domains outside your expertise).

Read on, for my individual responses….

  • Properly secure a wireless router. [Yes]
  • Crack the WEP key on a wireless router. [No]
  • Leech Wifi from your neighbor. [Yes, but he said I could.]
  • Screw with Wifi leeches. [No]
  • Setup and use a VPN. [Yes]
  • Work from home or a coffee shop as effectively as you do at the office. [Yes]
  • Wire your own home with Ethernet cable. [Yes]
  • Turn a web camera into security camera. [Yes, ask my dog.]
  • Use your 3G phone as a Wi-Fi access point. [No]
  • Understand what “There’s no Place Like 127.0.0.1″ means. [Yes]
  • Identify key-loggers. [Yes]
  • Properly connect a TV, Tivo, XBox, Wii, and Apple TV so they all work together with the one remote. [Yes, but it takes a looooonnnngggg time]
  • Program a universal remote. [Yes]
  • Swap out the battery on your iPod/iPhone. [Yes]
  • Benchmark Your Computer [Yes, is there anything geekier?]
  • Identify all computer components on sight. [Yes]
  • Know which parts to order from NewEgg.com, and how to assemble them into a working PC. [Yes]
  • Troubleshoot any computer/gadget problem, over the phone. [Yes]
  • Use any piece of technology intuitively, without instruction or prior knowledge. [Yes, but it gets harder every generation of gadget]
  • How to irrecoverably protect data. [Yes, oh, hell yes.]
  • Recover data from a dead hard drive. [Yes, who hasn't.]
  • Share a printer between a Mac and a PC on a network. [No need :) ]
  • Install a Linux distribution. (Hint: Ubuntu 9.04 is easier than installing Windows) [No]
  • Remove a virus from a computer. [Yes]
  • Dual (or more) boot a computer. [Yes]
  • Boot a computer off a thumb drive. [Yes]
  • Boot a computer off a network drive.  [Yes]
  • Replace or repair a laptop keyboard.  [No, thankfully!]
  • Run more than two monitors on a single computer. [Yes, who wouldn't want a 25% productivity boost.]
  • Successfully disassemble and reassemble a laptop. [No]
  • Know at least 10 software easter eggs off the top of your head. [No.  Who has the time?]
  • Bypass a computer password on all major operating systems [No]
  • Carrying a computer cleaning arsenal on your USB drive. [No]
  • Bypass content filters on public computers. [No]
  • Protect your privacy when using a public computer. [Yes]
  • Surf the web anonymously from home. [Yes]
  • Buy a domain, configure bind, apache, MySQL, php, and WordPress without Googling a how-to. [No]
  • Basic *nix command shell knowledge with the ability to edit and save a file with vi. [No]
  • Create a web site using vi. [No]
  • Transcode a DVD to play on a portable device. [No]
  • Hide a File Behind a JPEG.  [No]
  • Share a single keyboard and mouse between multiple computers without a KVM switch. [Yes]
  • Google obscure facts in under 3 searches. Bonus point if you can use I Feel Lucky.  [Yes]
  • Build amazing structures with LEGO and invent a compelling back story for the creation. [Yes]
  • Understand that it is LEGO, not Lego, Legos, or Lego’s. [Yes]
  • Build a two story house out of LEGO, in monochrome, with a balcony. [No]
  • Construct a costume for you or your kid out of scraps, duct tape, paper mâché, and imagination. [Yes]
  • Be able to pick a lock. [No]
  • Determine the combination of a Master combination padlock in under 10 minutes. [No]
  • Assemble IKEA furniture without looking at the instructions. Bonus point if you don’t have to backtrack. [No.  Ever heard the term "flat pack"?]
  • Use a digital SLR in full manual mode. [Yes]
  • Do cool things to Altoids tins. [No]
  • Be able to construct paper craft versions of space ships. [No]
  • Origami! Bonus point for duct tape origami. (Ductigami) [No]
  • Fix anything with duct tape, chewing gum and wire. [Yes]
  • Knowing how to avoid being eaten by a grue. [No]
  • Know what a grue is. [No]
  • Understand wherre XYZZY came from, and have used it. [No]
  • Play any SNES game on your computer through an emulator. [No]
  • Burn the rope. [No]
  • Know the Konami code, and where to use it. [No]
  • Whistle, hum, or play on an iPhone, the Cantina song. [No]
  • Learning to play the theme songs to the kids favorite TV shows. [No]
  • Solve a Rubik’s Cube. [No]
  • Calculate THAC0. [No]
  • Know the difference between skills and traits. [Yes]
  • Explain special relativity in terms an eight-year-old can grasp. [No]
  • Recite pi to 10 places or more. [No]
  • Be able to calculate tip and split the check, all in your head. [Yes]
  • Explain that the colours in a rainbow are roygbiv. [No]
  • Understand the electromagnetic spectrum – xray, uv, visible, infrared, microwave, radio. [No]
  • Know the difference between radiation and radioactive contamination. [Yes]
  • Understand basic electronics components like resistors, capacitors, inductors and transistors. [Yes]
  • Solder a circuit while bottle feeding an infant. (lead free solder please.) [No]
  • The meaning of technical acronyms. [Yes]
  • The coffee dash, blindfolded (or blurry eyed). Coffee <brew> [cream] [sugar]. In under a minute. [No]
  • Build a fighting robot. [Yes]
  • Program a fighting robot. [Yes]
  • Build a failsafe into a fighting robot so it doesn’t kill you. [Yes]
  • Be able to trace the Fellowship’s journey on a map of Middle Earth. [No]
  • Know all the names of the Dwarves in The Hobbit. [No]
  • Understand the difference between a comic book and a graphic novel. [Yes]
  • Know where your towel is and why it is important. [Yes]
  • Knowing the answer to life, the universe and everything. [Yes]
  • Re-enact the parrot sketch. [No]
  • Know the words to The Lumberjack Song. [No]
  • Reciting key scenes from Monty Python and the Holy Grail. [No]
  • Be able to recite at least one Geek Movie word for word. [Yes]
  • Know what the 8th Chevron does on a Stargate and how much power is required to get a lock.  [No]
  • Be able to explain why it’s important that Han shot first. [No]
  • Know why it is just wrong for Luke and Leia to kiss. [Yes]
  • Stop talking Star Wars long enough to get laid. [Yes]
  • The ability to name actors, characters and plotlines from the majority of sci-fi movies produced since 1968. [Yes]
  • Cite Mythbusters when debunking a myth or urban legend. [No.  But I should.]
  • Sleep with a Cricket bat next to your bed. [No]
  • Have a documented plan on what to do during a zombie or robot uprising. [No.  But I should.]
  • Identify evil alternate universe versions of friends, family, co-workers or self. [Yes]
  • Be able to convince TSA that the electronic parts you are carrying are really not a threat to passengers. [Yes.  But not without laughing.]
  • Talk about things that aren’t tech related. [Yes.  In my mind, at least.]
  • Get something on the front page of Digg. [No]

  • Trying to motivate your software development team?

    June 27, 2009

    Here is a great blog about the mysteries of software development and the different levels of programmer capabilities.  If you can’t glean some gems from here about motivating your team, you can’t read.


    Lazy evaluation rocks your face people!

    June 21, 2009

    Sometimes I love a post about programming because of a turn of phrase (see title above).  Some times I love the quality of the writing.  Sometimes I love the elegant simplicity of the presentation.  Some times I love all three.  Thanks Justin.


    A software developer needs resolve

    June 20, 2009

    There are many, many traits needed to be a good (or great) software developer.  You see them mentioned everywhere:  math skills, deductive reasoning, curiousity, craftmanship, etc..  I also think they need resolve.

    Resolve to push through the tough times and the easy times.  All of us are expected to adapt to new or changing requirements.  A lot of us must also push through the moribund things we have done a 100 times and offer no challenge whatsoever.  Just this week, I was cruising through some website changes in classic ASP, when one phone call turned the whole week to….well, nasty.

    Just look at this example from Computerworld.  I can guarantee you there are software developers involved in the decisions making process at these small businesses, helping decide whether to buy, build or maintain.  That takes resolve too.


    Random Thoughts – April 2009

    May 3, 2009

    It’s not what I am, however skilled, it’s who I am.

    In the business world, actual know-how far exceeds prestige.

    Creativity and discipline go hand in hand for successful entrepreneurs.

    Entrepreneurship often depends more on successful execution than radical reinvention.

    No is a complete sentence.


    .NET Isolated Storage

    April 23, 2009

    After having just been introduced to .NET Isolated Storage, I’m ready to give it my vote of confidence.  It’s a pretty slick way to store info that may be required by a .NET framework application between sessions or throughout a ClickOnce update.

    For me, I was struggling with an n-tier application that did not properly store connection strings in a central location.  While searching for an elegant solution to that problem, this Isolated Storage bubbled up.  I couldn’t use it for that problem, but the next day a new problem presented itself.  It was question of how to enable a (different) software application to have a 90 day demonstration license upon install.  Isolated Storage gave me a way to check for previous installs (and expiration dates) between sessions and installations.  You see, the store can be based on an assembly’s identity, which is perfect in this case.  I will tell you that anything that solves a problem for me, in an elegant fashion, is a winner in my book.