Unfinished Widgets
Like many other software developers, I have my share of unfinished or unreleased projects.
Wiindow Shopper
Wiindow Shopper would have let you browse the latest updates on the Wii Shop Channel, and, if you love a game, it would let you vote for it, Digg-style. It had a facility for browsing by newest additions or by console, as well as by popularity. I had even gone so far as to build in a cool little Easter egg.
I was sad to see this one go. The reason that it was never released was because the Wii Shop Channel’s internals were changed to use HTTPS for browsing games. And, while I found the new URL of the HTTPS site, the server had an invalid certificate which the Wii would just skip right over, but Konfabulator would grind to a halt at when it went to fetch the page.
I shelved the Widget. One good thing came out of it, though, and that’s my glossy flag set!
Snapper
Snapper was a Widget which would plug into your Mac’s iSight and take a photo every X seconds, and store it to your hard drive. You could browse the archived shots using the browser in the upper right.
I got it shooting photos, but that was about it.
Funnily enough, you can see its reincarnation in Harry Whitfield’s Widgets which have a license window in them.
Folding@Home Watcher
Back when I was big into processing protein folding, I would run this Widget that I wrote to tell me exactly how far along the unit in progress was. All work units had a deadline on them, and the Widget would display that in red, and steadily turn the body red if you started falling behind in processing.
I even got so far as making an About Box for the Widget. Dunno why I never released it.
Temperature Monitor
This is a Widget I run on my Desktop to this day which shows me the various operating temperatures of the components in my Mac Pro. The one I mainly use is the “Ambient Air” sensor, because it’s actually a good indication of what the temperature is in my apartment.
Bank Watcher
This Widget plugs into my Wells Fargo bank account and fetches and graphs my various account balances.
As you can see, I’m in debt. The reason I wrote this Widget was to get back on track with my finances.
Not released because of a couple of reasons. First, Wells Fargo changes their login crap way too often for me to keep up with them (you can see interpolated lines on the graph where they changed the login system and it broke the Widget), and second, if tons of people started using this Widget all at the same time, Wells Fargo would catch on and probably try to shut the Widget down on purpose.
Ratio Watcher
Ratio Watcher was a bit of a dodgy Widget in that it dealt with dodgy BitTorrent trackers. On private trackers, you have to keep your ratio above a certain amount, and with what was previously quite a limited upload speed, it was hard for me to keep on top of my ratio. This Widget helped me watch and see when I was going under.
Not released because it was specifically tailored to my needs and it wouldn’t have worked on any old tracker.
Atmosphere
Frequenters of the Konfabulator Forums will recognize this Widget. It was meant to bring a little more realism to the Desktop back when the official Weather Widget didn’t use realistic weather icons. It also featured the ability to read weather data from several different weather providers, so you were almost guaranteed weather data whatever the circumstances.
I stopped working on it for a couple of reasons, the biggest of which being that I signed a non-compete agreement with Yahoo! when they hired me, and Atmosphere would have competed with the official weather Widget.
Ironically, a couple of weeks before I was laid off from Yahoo!, I was working on refreshing all the weather icon artwork in their weather Widget for some higher resolution initiatives we were working on. It looks a lot better than the stuff I did for Atmosphere, as well as the stuff that’s in the weather Widget currently. If it doesn’t end up in the Weather Widget, then I’ll post that artwork here for people to have a look at.
Majora’s Mask Clock
My brother actually designed this Widget, and I coded it. For whatever reason, we never released it.
Hm.
Heather’s Weather
I wrote this Widget for my girlfriend, Heather. We were planning on going up to Banff, Alberta, but it was during the winter, and the weather was unpredictable, so we wanted to keep an eye on the extended forecast to figure out the best day to go.
Judging by the screenshot I took today, the weather there is unpredictable even outside of winter.
Some of these never even made it out of the Photoshop document phase.
World Clock D
World Clock D was going to be a Widget which would have the same functionality as World Clock Pro, but in a digital form factor. I soon figured that it would be too much work to do on its own. Maybe someday it will surface in World Clock Pro 3 (God knows when I’ll release that, though).
Triptactics Airport Code Finder
This was a Widget that I started on contract for a client. For some reason, it never got off the ground.
Stack ‘Em! 2
I wanted to write an update to Stack ‘Em! with new themes and updated features, like holding onto pieces for later and such. Never completed it.
Kuler
This Widget was going to be extremely simple. It would plug into Adobe’s “Kuler” application and return highly rated swatches ambiently.
Delegate Watcher
This mockup never got off the ground either. The resulting Widget would have displayed the current delegate count of the two Democratic candidates. (Go Obama!)
That’s about it for this post… Until next time.
6 commentsHey! Something cool happened.
I embarked on another voyage to find a shapefile containing all the boundaries for the zoneinfo rules… Lo and behold, with a little digging, I found it! This is going to save me a ton of trouble. Now I have to spend a few evenings coming up with JavaScript to read directly from tz itself, so that the Widget can update itself whenever time zone rules change (as has happened in Caracas recently).
I’m aware that the images on the site are broken. This happened when I botched an update to WordPress. Sorry about that; I’ll have it fixed eventually. Luckily I held on to the original PSDs.
There’s some cool stuff in the pipe in addition to World Clock Pro 3. I also have some neat ideas for more posts to this blog, so stay tuned for that!
And lastly, I’m sorry about the lack of news. I’ve been working on a transition from an engineering position at Yahoo! to that of a designer, so I’ve been rather busy both at work and at home.
2 commentsGlossy World Flags
There were some freely available pixel-art flags available here about a week ago. They have moved.
Click below to get ‘em.
3 commentsTracing Africa
Widget development is tough work.
World Clock Pro has gone through many stages of development, but its third incarnation has by far been the trickiest to build. You see, when you create a Widget that tops the download charts for years at a time, you have to be very careful when you screw with the recipe. How do you follow up a version that’s gotten downloaded by nearly half a million people? Your users expect a lot from you with each update. And, so far, every update since the beginning of 2005 has been rather mediocre.
World Clock Pro’s last major version was released two and a half years ago, and in that time it’s been passed up by better, smarter Widgets which tell time in new, interesting ways, or just do a better job of laying out information and giving complete control to the user. Admittedly, a lot of these newer world clocks are much better than the current version of World Clock Pro which is available to the public.
I’ve struggled to update World Clock Pro for a couple of years now, mainly because over that time period, my skills with Photoshop and JavaScript have developed past my ability to employ them. That is to say, whenever I would start coding an update to World Clock Pro to bring it up to version 3, I’d get sick of what I designed or what I wrote in code during development. Even the latest version, written just a year ago, isn’t up to the coding standards I’ve set for myself today.
The other problem is I release things way before they’re ready for mass consumption. Whenever I release a preview of something, that usually dooms it to failure. Two versions of World Clock Pro 3 have died off this way, as well as a fairly interesting weather Widget (though there were other reasons for the latter’s demise).
So, I’ve decided to take an entirely new approach with World Clock Pro 3, version 3 (Yes, I am aware of the irony!).
First, my coding skill has reached the point where I’m deep into object-oriented programming and loving it. Writing World Clock Pro 3 using object-oriented code should enable me to make changes easily should I ever change my mind during the development process.
Second, I have a solid idea of what I want the clock to look like. I’ve been tossing around ideas in my head for the past couple of weeks. I like what I did with the last incarnation of the clock for the face’s graphics, but the preference inspector will be changing dramatically – more on that later.
Third, I won’t be releasing feature-incomplete betas of the Widget. This is what got me into trouble the last few times, and it’s not going to happen once again.
Fourth, I have a very solid idea of what I want version 3’s feature set to be. Which brings me neatly around to the title of this post – Tracing Africa.
Now, why in God’s name am I tracing all the countries on this continent? There are plenty of shapefiles available online for the different countries of the world, as well as all the major time zones. You must be screaming, “RICKY SERIOUSLY WHAT ARE YOU DOING DITHERING ABOUT WITH VECTOR GRAPHICS WHEN YOU COULD BE CODING MY WIDGET ARRRRGH”
It’s simple! I am coding your Widget.
Back to the shapefile issue. The reason I’m not using any premade shapefiles is twofold:
1.) I like having control over my own content, but more importantly,
2.) There are no shapefiles corresponding to the different Zoneinfo database names.
“WHAT IS THIS GOBBLEDEEGOOK YOU’RE SPEWING OVER ZONEINFO DATASET BASERULES,” I hear you screaming at your monitor. Well, let’s go over this in a little more detail.
“Zoneinfo,” also known as tz, is the de-facto standard for time zone and daylight saving time information. The tz database is what all the major players use to plug proper time zone and daylight saving time support into their applications and operating systems.
Zoneinfo uses names such as “America/New_York” or “Europe/Ljubljana” to get its job done. These different names have different time zone and daylight saving time information attached to them in the database. For example, “America/New_York” has a base time offset of -5:00 associated with it in the tz database, as well as a rule that tells the app to start Daylight Saving Time on the second Sunday in March and end on the first Sunday in November as of 2007.
Right now, World Clock Pro uses some funky code to work with this written by a talented chap named Harry Whitfield. However, it doesn’t read directly from the Zoneinfo database; it uses a version that is massaged for the Widget along with some predefined locations.
World Clock Pro 3 will do the right thing and use a compacted version of this Zoneinfo database, and will even update it independently of the Widget itself to avoid problems when a stupid random US Government change fucks everything up. But, we’re still left with this “predefined locations” problem.
You see, when World Clock Pro 1.5 was released, we had a lot of complaints that it didn’t have city X in its options. So, in version 2, Harry and I added the ability to create custom locations for each clock. However, this required the user to know the latitude, longitude, time zone, and daylight saving time rules of the location in question. The nicest thing I can say about that approach is that it’s counterintuitive.
Ideally, what we want to be able to have happen is the user types in the location that they want, and we know exactly what to do with it.
The cool thing is, there are already services that allow this. Mapping services. Just go to Yahoo! or Google Maps and type in an address, and BAM, you’re all set. It finds exactly where you are on Earth. Even searching for a city or country name just works. The awesome thing is, World Clock Pro can plug into this great functionality, with a little help!
The best way for me to describe this is with a picture.

What happens with the latest preview database is something more like this:

Why does this happen? Because I don’t have sophisticated search algorithms, but Yahoo! does. Yahoo! knows what you’re talking about when you type in “New York.”
And, as an added bonus, I don’t need to maintain a needlessly complicated database, yet I get the benefit of geocoding, which effectively gives the Widget millions of locations.
So, back to tracing countries.
No comments














