Kevin Jaako's blog

54% of YOU use Firefox. (and why I don't care)

Posted by Kevin Jaako
Mon, 08/11/2008 - 09:12

It had been a long while since I'd given any thought to browser trending or user stats, but a recent gander into the google analytics' visitor trends for blog-shmog.com tells me that A. 54% of you are using Firefox and B. less than 5% of you are using IE 6. (woohoo?)

Google Analytics browser stats for blog-shmog.com

54% Firefox,
23% Internet explorer,
19% Safari,
4% Opera, Camino, etc.

Now- being someone who earns his livelihood from internet-related technologies, a few short years ago, figures like that would have come to me like music to my ears, but as I sifted through my analytics stats, I found myself very underwhelmed and -in fact- a bit indifferent.

I've kept close tabs on browser trends since the hay-day of NN vs IE, but I completely lost what little interest I had left the day I discovered javascript toolkits and conditional CSS selectors. -Well, now we're at Firefox 3, Internet Explorer 7 and Flash 9... The web is a whole different place, so it begs the question: Do browser usage stats really matter anymore?

Facts and Figures

First and foremost- my stats come from google analytics' trending of blog-shmog.com visitors. They don't really paint an accurate picture of global browser trends. For more accurate numbers, turn to things like w3 schools' monthly browser stats. Blog-shmog.com is a technology blog, and it's visitors tend to be ahead of the curve when it comes to web technologies. W3schools places firefox adoption at 42% and IE 6 use at 25% (compare that to the 5% I recorded on blog-shmog.com) - The difference is real.

Tools and Technologies

Netscape vs Internet Explorer browser war boxing
Browser wars: the epic NN vs. IE battle. old school.

The reason browser trending matters to any of us (creators and consumers of the web alike) is because it can be a challenge to build websites and web applications that look and function identically across all platforms and systems and many developers fail to rise to this challenge.

Organizations like WaSP and the W3C create comprehensive standards that all browsers should follow in displaying the sites they visit- but most browsers bend the rules, and others completely ignore them. Even 5 years ago it wasn't uncommon to see websites load two completely separate javascripts- one for Netscape and one for Internet Explorer! But things are improving...

Now developers have tools at their disposal, such as javascript toolkits like jQuery and mootools that will do all the heavylifting and cross-browser juggling for us. We have conditional CSS comments, PNG hacks and countless resources available to help us iron out those other pesky IE bugs. Yes, the world is a friendlier place!

So does browser trending really matter anymore?

Good question, lets break it down:

Should browser trending have an impact in determining the design/IA/usability of our web apps?
NO. Sadly it once did (remember IE's proprietary <marquee> tag?), but it should never, ever, ever, ever be a factor again. ever.

Does browser trending still have an impact on determining whether or not the desired functionality of our web apps are feasible?
No. Nowadays, after relatively minor fiddling, every browser can do pretty much the same thing. Sweet.

Okay, well does browser trending still have an impact on the development strategies used in building our web apps?
No. Thanks to javascript toolkits and frameworks, we can ignore browser incompatibilities and focus entirely on building functionality.

"We are sorry, but this site can only be used in Microsoft Internet Explorer."

Unless you're building some crazy shiznat that uses bleeding-edge unimplemented technology, what browser your users choose doesn't matter anymore- and if you are, then you're obviously choosing not to target a mass audience anyway, so it shouldn't matter what users you exclude. I'm not saying that web development has reached a state of perfection... far from it! Browser incompatibilities still suck, but at least things have reached a level now where we can iron out the development kinks in a matter of hours, not days.

A responsible web author knows that it doesn't matter what browser is the most popular. A successful web app needs to work in ALL browsers, for ALL users. The difference being that now more than ever, this IS possible. So who cares about browser trending? Bite the bullet and make your damn website work in all browsers. I'm tired of seeing websites that say: "We are sorry, but this site can only be used in Microsoft Internet Explorer.".

Wake me up again when less than 2% of the population use non PNG-enabled browsers... In the meantime, go download Firefox.

Apple 65W Power Adapter Repair

Posted by Kevin Jaako
Wed, 03/05/2008 - 17:36
my Apple 65W Power Adapter is fixed!

I'm definitely anal when it comes to coiling my cables. I take great pride in my wicked awesome technique as I carefuly twist each coil over the other to make the most tidy, perfect bundle. Recently however, despite my best efforts in ninja coilery, my Apple 65W Powerbook Power Adapter bit the dust- a cable short in the pull relief, right where the cable exits the brick. Tragic.

With nothing to lose, I cracked, smashed and pried 'er open and managed to hack together a pretty decent repair job. A few hours and a few screwdriver-induced injuries later, she's uuuuh-gly but working again!

Here's how:

Apple designs their power adapters to be disposable. They're not only friction-sealed like their iPods, they're physically glued shut. If you want in, you're going to have to work for it! Get a flathead screwdriver, 2 old butter knives, a few band-aids and get cracking. It also helps to have a handy girlfriend who shares your passion for breaking things, but those are notoriously hard to come by!

Apple 65w Power Adapter Repair - photo by Kevin Jaako
The culprit: a cable short in the pull relief.

The easiest place to start prying is near the physical power plug, opposite the 24v output cable; You should be able to see where the two halves meet. I'd also recommend leaving it unplugged for a few hours before you start sticking any conductive objects into an unknown power supply!

Now might also be a good time to say that I take NO LIABILITY WHATSOEVER for screwdriver injuries or electrocution, nor any lost/damaged property arising from a poor repair job. This is only to be attempted if you KNOW WHAT YOU'RE DOING! ok? ...good.

Cathy Wang - photo by Kevin Jaako
Cathy Wang:. Mighty destroyer of Apple products.

Apple really crams a lot into these little power bricks. BE CAREFUL. If you're using a knife to wedge the two shells apart, watch that you don't damage any components- they're closer to the plastic shell than you'd expect! You might also want to amputate the cable before you begin, it'll make it easier to fumble with the brick.

Something else to note: Between the outer plastic and the goods inside is a very thin metal shell. When you start getting the thing to open up, make sure you don't pry off the metal shell. (see picture.)

Apple 65w Power Adapter Repair - photo by Kevin Jaako
The pull-relief. Slowly cut away the soft plastic to expose the knot inside. Be careful!

Getting it open is 70% of the work! Once she's cracked, the rest is easy!! Find the soft plastic pull-relief. It's the small blob that stops the cable from ripping out when you yank on your power cord. Buried inside you will find the cable is tied into a small knot. Get a pair of clippers and carefully start cutting off the soft plastic, making sure not to cut into the cable. CAREFULLY!!! Use small snips! It will take a few minutes, but once it's free, untie the knot and you'll find you have more than enough free cable to start stripping off insulation and finish the repair.

The rest is straightforward. Strip off enough insulation to work with, and twist & solder the brick back onto it's amputated tail (no hard feelings, right?). Tape up the joint and make sure you have no shorts. Carefully inspect the adapter to make sure you didn't damage any components when you pried it open and you're done! Seal the two halves back together, get out the electrical tape and start taping!

Apple 65w Power Adapter Repair - photo by Kevin Jaako
Tada! Ugly, but functional. (Hey, just like me!)

You may also want to zap-strap a twist of cable around the body for extra pull-relief, just to make sure you don't have to do this all over again. It will shorten the adapter a bit, but it's worth it in the long run! It's also a good idea to give the thing a quick test before you tape it all up, but be careful, you've got household current buzzing around inside!

If you want to read a bit more about the procedure before attempting it (a wise choice, pancho), there are plenty of good articles out there to be found.

Good luck!

update: I may have a sick obsession with coiling cables, but this guy takes it a bit too far! Enjoy.

AMOD AGL3080: an in-depth review.

Posted by Kevin Jaako
Tue, 01/29/2008 - 18:14

I've recently had the opportunity to test-drive the AMOD AGL3080 GPS Logger. For the past three weeks I've been within 15 feet of the AGL3080 at all times. It's sat in my pocket, on my car dash, in my backpack and I've even carried it around the house in my hand- Just to get a feel for it.

And... I'm impressed.
My DG-100 has a serious contender for pocket-space in my future photowalks.
Here's why:

./history

AMOD AGL3080 - photo by Kevin Jaako
AGL3080 Front. 3 status LEDs: memory full, satellite lock, low battery... yummy.

AMOD has recently relaunched the AGL3080. Their first-gen release was sadly flawed and suffered from susceptibility to RF interference, making the GPS module very inaccurate. AMOD seems to be pretty actively chasing down owners of their first-gen device, and offering upgrades, so if you own an old AGL3080, you should get in touch with them! The new version works flawlessly.

./drivers & format

The AGL3080 is a driverless GPS logger, which means it mounts as a USB external drive. If you read my blog post about the DG-100, you know that driver issues with many GPS devices can be a #*$@!'ing nightmare, especially if you're on a Mac!

The AGL3080 saves each GPS track in NMEA format (although oddly enough, it gives each file a .log extension, so make sure GPSbabel doesn't mislabel it as a Geogrid file!)

Convert your file into GPX format to use with GPS Photo Linker or HoudahGeo, or convert it to KML or KMZ to throw into Google Earth.

The device uses the SiRF III chipset, which, personally, is the only chip I trust for good reliability & accuracy- especially in urban environments. (Recently, I've heard good things about the Nemerix chipset used in devices like the iBlue, but it still doesn't have the sensitivity of the SiRFstar III chipset, so no cookie for you.)

This puts the AGL3080 as a front-runner among the small handful of GPS loggers worth considering.

./form & function

AMOD AGL3080 - photo by Kevin Jaako
AGL3080 Back. 3 AAA batteries for 15 hours of continuous use. No USB-charging, though.

The AGL3080 takes 3 AAA batteries for about 15 hours of use per charge. It's very sleek & solid and it fits perfectly in my hand or in my pocket, however it's not as flat as the DG-100, so it doesn't stay put on the car dash quite as nicely. The front is smooth & glossy and the The battery-compartment door (frequently the first part to break on many of my devices) is rugged and easy to open. It has a built-in carabiener hoop, à la Sony GPS-CS1. (Similar to the Sony, the provided carabiener and strap are shite, replace ASAP.)

As I find myself slowly adapting to life in Japan, the carabiener hoop is begging me for a cute dangling cell-phone toy. Update on that to follow.

The device logs position, altitude, heading, speed, acquired satellites, hdop & vdop every 1 second and saves it to its 128mb of flash memory. It creates a new log file for every time the power is cycled, so it's fairly easy to identify tracks if you're looking for a particular day's data.

AMOD AGL3080 - photo by Kevin Jaako
Sample GPX output. The AGL3080 logs: lat, lon, elevation, heading, speed, satellites, hdop & vdop @ 1Hz. Impressive. Textmate screenshot using skitch.

Richard Akerman has identified an interesting quirk where the log files are missing the standard filesystem created/modified datestamps, though it doesn't seem to affect the data.

While 1Hz logging may be a tad on the excessive side, it provides very good resolution (although I would recommend using a quick GPSBabel filter at download to strip out excess track points within 5m. You can chop your GPX file size by about 2/3 with no reduction to your precious data.)

The AGL3080 won't recharge your batteries over USB like many other devices. Instead, go buy a good wall-mount battery charger. Your rechargeables will charge faster and stay healthy for much longer. Still, it's a feature that many will find important in chosing their first GPS logger and sadly the AGL3080 doesn't support it.

./bottom line

AMOD AGL3080 vs GLOBALSAT DG100
AGL3080 & DG-100. Both devices use the SiRF III Chipset for near identical results. Shown: Route 38 - Takikawa (滝川) to Ashibetsu (芦別), Hokkaido, Japan on Google Earth

Okay- here's the verdict. The AGL3080 hands down beats the DG-100 for one reason and one reason only. Data.

We geocoders are interested in collecting quality GPS data to tag our photos, videos, blog posts, etc. My DG-100 logs only a small subset of available GPS data. (position, altitude and speed) The AGL3080 logs position, altitude, speed, heading, acquired satellites, hdop and vdop (Dilution of precision... look it up.) USB-charging and logging frequency are one way to evaluate a device, but if it doesn't log every single piece of available GPS information, why bother carrying it around with you?

This, of course, is extremely subjective. Some people don't place as much importance on maximum GPS data; they want the smallest device possible, or USB charging- and that's all fine; there are plenty of other GPS devices on the market that are better suited for those criteria. But for me- it's all about the data.

Oh- and the fact that it will work on my Mac without spending a few dozen hours hacking around with a C script is pretty cool too. =)

You can get your hands on a AMOD AGL3080 through semsons, amazon.com or you can contact AMOD directly.

Review & Photography © Kevin Jaako, 2008. All rights reserved.

Globalsat DG-100 works on a mac.

Posted by Kevin Jaako
Sun, 01/06/2008 - 02:09

Globalsat DG-100 Data Logger

A few months ago, Cathy & I bought a Globalsat DG-100 Data Logger straight from the local distributor in Taiwan. I was pretty thrilled with it until I tried hooking it up to my powerbook and learned that Globalsat only wrote their lousy, buggy software for PC.

An exhaustive web search turned up a few surprise results from friends Boris Mann and Richard Eriksson (neither of whom had luck with the device either) and unfortunately not much else. There was talk of coming support for the DG-100 in GPSBabel, but the "coming soon" tag had been up for months with no results. Update (09/03/08): GPS babel has recently released a new version with DG-100 support!! (skip this hack, and go download the new version!)

Recently I stumbled across a beautiful C script written by Mirko Parthey that had it pretty much figured out. I hacked together a GPX output function and my DG-100 and my Mac are now very good friends!

GPS track: Takikawa - Tokyo

First, you will need to grab the PL2303 USB to serial driver from sourceforge. Then download (or install from CD) Xcode from Apple.

Once you're done, grab my revised copy of Mirko Parthey's dg100.c which includes several small bug fixes and GPX output mode and you're ready to go. Compile the program with gcc dg100.c -o dg100read and run it from terminal using ./dg100read > myGPSfile.gpx to redirect output to file. To change device functions (read/delete/etc), uncomment the desired lines from the script and recompile.

Its pretty unglamorous, but it's simple, reliable and it works on a mac.



A few things to note:

- Don't fall into the trap of only installing Xcode gcc! you need the header & library files. Install it all!

- The DG-100 mounts on my system as /dev/cu.PL2303-3B1. If this is different for you, cd to /dev/ and find the appropriate device name and stick it in the C script.

- The PL2303 drivers are a little strange. The USB port you have the DG-100 connected to will affect it's device name. "3B1" is the address of my powerbook's right-side USB port. You'll either have to keep using the same USB port, or recompile if you ever need to change ports.

- sometimes port_close() doesn't end the session with the DG-100 properly. If the program stops responding normally, just reboot the DG-100.

the Shmog is unveiled.

Posted by Kevin Jaako
Sun, 01/06/2008 - 00:37

blog-shmog

This is Blog-Shmog.

Born today, the Shmog is soon to become the creative playground for Kevin Jaako. Thoughts of photography, interaction design, user interface theory, web technologies, social networking, the internet, software development, hardware schematics, japan and happiness.

Coming soon?

KJ