turf dancing

These guys are absolutely incredible.

javascript 3d rendering Wednesday,
June 30, 2010

What I did

Once upon a workday, I decided it would be fun to learn JavaScript. Web development has been one of my hobbies1 for a while now, and JavaScript appears to be an increasingly fundamental piece of the internet pie.

As a student at DigiPen Institute of Technology, my greatest interest was in graphics programming. So much so that one of our projects in which we made a primitive 3D rendering pipeline entirely in software was so intriguing to me that I chose to take it well beyond the course requirements.

‘Well,’ I thought, ‘to get my 3D renderer to run in JavaScript I’d really need to get a good grasp of the language.’ It seemed like a sufficient task to keep me motivated. So with that idea, my porting was underway. Here is the result (if your browser supports the canvas tag):


Your browser does not support HTML5 Canvas.

What I learned

  1. Javascript is an honest-to-God programming language. Sure it’s made for “scripting”, but it’s very functional and well conceived.
  2. Webkit browsers come standard with a decent set of development tools built right in, including a great debugger and profiler. It’s actually quite an advanced environment. Clearly, there are web developers who use these tools every day. Otherwise, I can’t imagine how such a thorough toolset magically appeared.
  3. Firefox appears to be way behind Safari/Chrome in JavaScript performance. Granted it may just be tuned to normal case scripting tasks. I doubt JavaScript was initially conceived with a 3D software rasterizer in mind.
  4. Most importantly, I learned how much there is to learn. I still know nothing of this so called jQuery business. Maybe one of these days I’ll actually get a good idea, and make a iOS web app.

Is this useful?

Probably not. This renderer is far from optimized. I’m sure the JavaScript code is creating way too many objects. Also, it’s lacking many optimizations standard to a rendering system. No z-buffer, no clipping, and it’s doing full per-pixel hyperbolic interpolation too, which you don’t understand, but it was fun to say.

I hope you’ve found this interesting. I normally write about Apple and other tech stuff here. If that interests you, feel free to subscribe, or follow @skoda on twitter. Or not, I don’t care.


  1. Hobbies, as I refer to them, are only differentiated from work in that no one gives me money for them (yet)

one hot iphone? Wednesday,
June 30, 2010

A fellow coworker from work just saw this on his brand new iPhone 4:

One hot iPhone.

The funniest part is that it was completely cool to the touch. I have never seen this message on any iPhone. Has anyone else experienced this?

status bar mania Tuesday,
June 29, 2010

A number of times recently I’ve seen ridicule from fellow Apple enthusiasts toward Android’s hideous status bar. While it’s true in normal situations you’re likely to have a much nicer and less cluttered status bar on an iPhone when compared with Android, the gap is closing. And unfortunately it’s not because Android’s bar is getting better. I whipped up this scenario today on my iPhone:

Full iPhone status bar.

The kicker is, Apple knows that this is way too many icons. My phone is set to display battery percentage as well, but when too many icons get crammed up there the setting appears to get ignored to get some extra space. Maybe it’s time to rethink which of these things deserve status icons, or maybe even give control to the user which get displayed, as with the icons displayed on the Menu Bar on a Mac.

origami hang glider

I can’t wait to give origami hang gliding a shot. (via Phil Coffman)

what is i.b.m.’s watson?

Taking the fiction out of science fiction. (via Daring Fireball)

tip for apple Wednesday,
June 16, 2010

Citing issues with the WiFi at the recent keynote presentation at this year’s WWDC, I’d like to offer a suggestion to Apple to prevent such issues in the future:

Stream the keynote live yourselves!

If Apple streamed their presentations live, it would obviate the need for all the live blogging, video streams, audio streams, etc. No one would be concerned about breaking the news. All the blog sites could be kept current by people watching the keynote remotely. Also, I’d get way more excited about watching the presentations if I knew I was seeing it live.

Just a friendly suggestion.

calling all innovators, make me some new peripherals Friday,
June 11, 2010

1 Comment

Today I was sent this link for a new tablet concept. The big feature being touted? Three USB ports. Sigh…

Let’s all stop and imagine for a second what it would be like to use an otherwise wireless tablet connected to three different peripherals with cables all at once. I don’t need to elaborate, any 5-year-old imagination should see how terrible that would be.

As it is, I can’t wait to be rid of that old iPod dock-connector on my iPad. Wireless everything. That’s the future. Putting USB ports on a tablet hinders forward progress by maintaining the idea that wired peripherals are good enough, and we don’t need to move on.

“But I can’t print from my iPad!”

Well, maybe the problem isn’t with your iPad! Why can’t I just email a PDF to my printer from whatever device I’m on, and let the printer figure out how to print? Device drivers suck. Just mentioning them makes me cringe a little. Why can’t someone make peripherals that suit the way I use technology now, rather than expecting newer devices to support an interface that’s decades old?

modify the look of the safari 5 reader function

Love Safari’s new Reader feature, but wish it was just a little different? You can edit the CSS yourself. No more justified text! Woot!

the next mobile battleground Friday,
May 21, 2010

Flash was just a minor skirmish. Today Adobe Flash has little (and steadily decreasing) relevance in the internet landscape. The cloud is going to be the next major battleground of the mobile revolution. The latest breakthrough software has been based on internet services coupled with well integrated client applications. Here are a few examples that iPhone users should be well aware of:

  • Dropbox
  • Twitter
  • Instapaper
  • Simplenote

These are some pioneers of the real cloud services that have seemed like a pipe dream for the last decade.

Google has been banking on the cloud. They’ve been pushing their web apps for years. They offer a wide range of free, ad-supported tools and services to anyone who will choose a username and password.

The iPhone, and more importantly the App Store, has brought a many of these cloud based services to mobile devices in an effective and usable way for the first time in history. No longer is a phone relegated to calls, texts, and email.

Google has recently been pushing hard to catch up with devices that can stand next to the iPhone. They’ve been having a good bit of success. Apple, on the other hand, is anemic when it comes to hosting cloud services. They have MobileMe which consists of email, file storage, photo sharing, contact and calendar syncing, etc., all for an expensive (relative to Google) annual subscription. But by reputation, MobileMe is widely considered a joke.

It appears that Apple is building up some infrastructure to start making headway in this direction. They acquired Lala streaming music service, which has led to somewhat obvious rumors that some kind of streaming iTunes is on the way. It’s also been published that they’re building a server farm in North Carolina, which could very well support a lot more cloud based services. They’ve recently updated the email web app for MobileMe, and there have been yet more rumors that MobileMe is soon to become a free service. All that said, Apple is still extremely quiet about plans for expanding their presence in the cloud.

Granted there are a host of third parties with great services, but Apple knows better than anyone the power of controlling the software for your devices. Google has lots of first party services that are getting well integrated into Android. If Apple wants to keep on top of its share of the mobile device market, they need to create some compelling new services. Google doesn’t appear to be cutting them a lot of slack. Let’s just say I hope that, come June 7th, we hear about a lot more than just a new iPhone.

you will laugh

This is the funniest picture I’ve seen in months.

fly the eco-friendly skies

A team from MIT makes an airplane that runs on 70% less fuel than conventional planes as part of a NASA initiative to create more fuel efficient aircraft.

software recognizes sarcastic tweets

This is an interesting idea. I wouldn’t know where to start to come up with an algorithm for detecting sarcasm. It would be cool to build this into an instant message client to automatically notify people of possibly sarcastic statements (I know some people who could use the hints).

nintendo ds testing platform revealed by fcc

There goes the FCC, leaking someone’s hardware platform again.

advertising gone right Friday,
May 14, 2010

As a follow up to my mention of the appalling ads in Wired’s RSS feed, I thought I’d take the opportunity to point out someone who has managed to get advertising on the web right — just right. Fusion Ads has the best ad platform I’ve seen on the web. Both their advertising and publishing partners create great things, and Fusion’s ad spots are a great way to discover them.

Our passion is to serve ads that are downright gorgeous, accepting only relevant advertisers of the highest calibre. We choose from among cream-of-the-crop publishers who exclusively show only a single ad per page.

Take a look back at the ds.ign.com homepage around the release of Lock’s Quest. It’s clear that not everyone adheres to this same ideal of advertising. Many sites out there have such distracting ads that the content is actually second-order.

I’ve discovered many services that I use quite regularly in Fusion Ads. In fact, I’m drafting this post in Simplenote right now, a Fusion-supported free iPhone and web app for writing/synchronizing text notes across devices. On various occasions I’ve refreshed Geek & Mild repeatedly just to see if there are new ads that might interest me. That’s a high mark for any advertiser, to create ads that draw customer attention. It seems the standard M.O. of advertisers is to force feed ad impressions.

Additionally, their new touch network has enabled developers to provide some very useful tools for the iPhone OS platform free of charge. I feel as though they’re adding value to my experience online, not taking away from it. Fusion Ads, good show.

here on gilligan’s isle

I love how one of the best snippets about why the iPad is a “big deal” is technically a post about Gilligan’s Isle.

advertising gone wrong Monday,
May 10, 2010

It appears as though Wired has been running an experiment in their news feeds. Increasingly, I’ve found more and more graphical “Ads by Google” filling up their Wired Top Stories RSS feed. Ten days ago I tweeted the following:

Wired’s in-feed ads are getting so out of control, I had to zoom my browser out to capture this: http://bit.ly/bB0P2A

Comparing that to what I saw in Google Reader today, I’m not sure what to make of Wired’s strategy. This is hardly just distasteful advertising. It’s almost as though they want people to stop following their news feeds. I guess I’ll have to comply with their wishes.

the adventures of beetlecam

Simply incredible! (via @philcoffman)

what ipads did to my family

There have been so many great articles lately about the iPad. Too much stuff to link (although Gruber is trying), but this one I thought would bring the conversation home for many people.

the battery flashlight

Who says a flashlight needs to have a case?