12
Jun 10

Introducing the Countdown Timer gadget

The Countdown timer gadget was created as a learning project and because I needed something to remind me to take breaks throughout the day. I wanted something that had a tiny footprint both in appearance and function, similar to the gnome-timer applet (for Linux desktops).

5 minute countdown underway

The concept is very basic – countdown from a preset time (in minutes) and alert when time is up. This gadget is more akin to a kitchen timer than a countdown-until-my-birthday type timer. However, the gadget will happily countdown 135971947923 minutes in case that amount of time happens to be of value to you.

the settings dialog box

As with any quality gadget or applet, this one is configurable. The Custom Countdown setting (in minutes), if set, will override the default of 30 minutes and any Preset Timers selection (also in minutes). Lastly, the Number of Alarm Sounds option defines how many times the audible alarm will sound when time is up. Putting a 0 in this option field disables it.

The Countdown Timer gadget was designed to work with Windows 7 but there should be no problem running it in Vista. I’ve committed the code to my github account where you can follow along for nitty gritty details.

Download it now

See the included README for installation instructions and additional info. Post questions and comments to this entry and I hope you find it as useful as I have.

Last Updated: July 1st, 2010


09
Jun 10

PHP released 15 years ago today

PHP version 1, by Rasmus Lerdorf, was released into the world on June 8, 1995. It’s original name of Personal Home Page was renamed, with a heavy nod to recursion, to “PHP: Hypertext Preprocessor” in 1998 with the launch of version 3.


I owe a great deal of my professional success to this language, it is the one that truly sold me on programming.

<?php
/**
* June 9, 2010
*/

echo<<<HAPPY15THBIRTHDAYPHP
* May your future be full of fantastic features and ever greater efficiencies.
* You've powered the dynamic web from yahoo to facebook.
* May you continue to enthrall and encourage programmers young and old.
* You've come a long way, be sure to have lots and lots of cake today.
* May your full fledged Unicode support be your gift to us sooner rather than later.
* You've got your problems, but then don't we all.
* May you survive and thrive another 15 years.
HAPPY15THBIRTHDAYPHP;
?>

Bonus: here’s some cool PHP usage statistics and trend graphs.


12
Apr 10

How to win at the “platform” game

A contemporary story brought to you by Twitter… who arguably, would have never risen to its present great heights in popularity, and thereby valuation, if not for the labors of its creative users… and now, we shall see their true colors…

“…Twitter investor Fred Wilson speculated that Twitter would edge out third-party developers whose add-ons for the microblogging service merely filled feature holes that the company ought to have built itself. Then Twitter, which previously hadn’t developed its own mobile apps, bought Tweetie, a popular Twitter service for the iPhone, and released its own BlackBerry app.”

With apparent lack of long term reputation strategy, their latest purchase is not well timed as “…these announcements came right before Twitter’s big developer conference, Chirp, which opens in San Francisco tomorrow.”

Twitter also purchased Summize nearly two years ago to fill the former void of search.

And the lesson to gleamed from Twitter’s totally tubular tale is… “The real reason to build a platform is to boost your company’s valuation. An open application programming interface lets third-party developers donate their labor and ideas to the cause of enriching your investors. And through their creativity, investors get inspired about the potential to make money.”

The moral of the story is: be the foundation (platform), not the pretty structure that sits above it. Because if you’re a company building off of some other company’s platform, being bought out is the only way to achieve a big pay day. Good luck with that.

Quotes from VentureBeat’s “How Twitter won the platform gamble“.

Also worth noting, as another prime example, Apple’s App-store.


06
Apr 10

A Windows-centric Migration Path to a new Solid State Drive

As a fan of Windows 7, and of new hardware technology in general, I took the train to SSD-land some two months ago.  Presented here is some of what I learned whilst accomplishing the migration. The specifics apply to Windows 7 based PCs, but the concepts could be adapted for other OSs.

Do you need to read all this?  You may need to completely reinstall Windows to take full advantage of the SSD. For instance, if you installed Windows 7 using any SATA mode (as set in your PC’s BIOS) other than AHCI, you will probably need to reinstall, though this workaround may work for you.

Not migrating to an Intel SSD? Rumor has it this SATA mode (AHCI) is not necessarily required. OCZ drives may function normally under IDE mode.

Regardless, I recommend that you read on, SSD adopting reader, for tips and insight in the great migration to a speedier computing experience.

Continue reading →


25
Mar 10

What the FEFF?

Since I’ve been thinking I ought to write about my work more often, and inspired by the strangeness of this incident, here goes.



Visual of the Culprit

I’d been trying to debug how a few ?s came to be in an ad banner tag submission. I’d dug into change logs and other points where we log transactions to no avail. Since we’d never seen anything like it before, I’d basically decided I’d spent enough time on it and was about to resort to a “it was caused by network ghosts” type explanation. I figured the ?s came from some erroneous network transmission.

On our system, there was nothing strange in the tag field whatsoever. On the adserver though, there appeared some question marks, looking like this:

???<iframe src=”http://view.atdmt.com/M0N/…” frameborder=”0″ scrolling=”no” marginheight=”0″ marginwidth=”0″ topmargin=”0″ leftmargin=”0″ allowtransparency=”true” width=”500″ height=”250″><script language=”JavaScript” type=”text/java …

Then, though when I don’t really know, it hit me. I should view that offending code in a more verbose setting, don x-ray specs if you will – my first choice was VI. Lo & behold, the offending characters appeared before my eyes.

Continue reading →