April 14, 2009

Orb Photos

March 18, 2009

Orb @ Lightwave

Thanks to all at Lightwave, Science Gallery, Trinity College, Dublin, IE for a wonderfully well presented exhibition, and for the opportunity to meet a number of fantastic artists from around the globe, as well as catching up with a few from the ITP crew.

Next up: NEXT.

March 7, 2009

I love the Internet

THRU YOU | Kutiman mixes YouTube

So, so good in so many ways. I want more.

January 29, 2009

A new era

“We know that our patchwork heritage is a strength, not a weakness. We are a nation of Christians and Muslims, Jews and Hindus — and non-believers. We are shaped by every language and culture, drawn from every end of this Earth; and because we have tasted the bitter swill of civil war and segregation and emerged from that dark chapter stronger and more united, we cannot help but believe that the old hatreds shall someday pass; that the lines of tribe shall soon dissolve; that as the world grows smaller, our common humanity shall reveal itself; and that America must play its role in ushering in a new era of peace.”

September 14, 2008

"I was schooled in the tyranny of Nature's plans"

Image: Beatrice de Gea/The New York Times
Lyric: Jakob Dylan

September 9, 2008

The Quest for the Original Maverick

Special thanks to the RNC for the inspiration:


September 5, 2008


via Jay Carney @ time-blog.com

August 1, 2008


Getting ready for All Points West next weekend. Up to 1024x216 at approximately 316 colors. We are go for animation.

July 18, 2008

The Last Hope

We're all set to display the new ORB and ultraORB at The Last Hope at Hotel Pennsylvania tomorrow, Saturday, and Sunday. We spent the evening in the space prepping things and meeting a few of the early arrivals. Looking forward to an interesting weekend.

Time for sleep now. I thought hackers were going to bed at 8:30am, not registering for conferences.

July 12, 2008

iPhone 2.0, Impression 2.0: Redemption

No 3G iPhone yet, but I've had the iPhone 2.0 software for about a day and after getting past the installation hurdles of the previous post, it really is fantastic.

This is an exciting platform. It's not just that there are 3rd party apps, but that they are actually usable. As we've already seen with mobile Safari and browsing the real web, while full frontal touchscreen takes a little getting used to for texting and emailing and isn't necessarily the ideal platform for dialing a phone, it's a great interface for a ton of mobile computing tasks. I've never seen a platform with apps that just flow like the best of these do.

On the surface, a lot of the stuff that I've seen could be (and has been) done in mobile Safari, but there are a lot of nice touches thrown in. Loopt integrates mapping and location services into an application that seems poised to realize the promise envisioned by Alex and Dennis of Dodgeball before device technology was mature enough to provide this sort of live interface to the data. I'm excited to see how this one plays out over time in the real world.

Yelp is another natural candidate for location and mapping and integrates them into a fine front-end to their extensive dataset. I used the standard Yelp quite a bit in mobile Safari and while it tended to be worth the effort, it was an effort. No more. I like having this one in the pocket.

The Mac/web crossover RSS reader NetNewsWire was another of my mobile Safari favorites. At first glance, not much has changed, but a closer look reveals a huge improvement — the feeds are actually synced to a persistent store on the phone. Particularly for someone in NYC this is very important. A regular annoyance over my last year or so of iPhonage has been going down into the subway knowing that I have hundreds of articles to read, and not being able to access them without a live signal. No more. It would be even better if it preloaded images as well (currently you see only text when offline), but this is still a great start. It also brings to mind the need for a good general-purpose document storage system for offline reading on the iPhone (i.e. eBook reader). There is one available, but it only works with a certain proprietary format. The odd thing is that everything to view the data exists in mobile Safari (good PDF rendering and all), and the phone has a filesystem — we just can't access and combine the two in order to achieve the obvious. I can perhaps understand why Apple doesn't ship the phone with a shell terminal, but would a Finder-like interface into an accessible directory of the 8GB that I paid for be too much to ask?

Twitteriffic is a very polished interface into the social networking, messaging, microblogging, call-it-what-you-will app, Twitter. Camera integration is quite nice here, and this is my favorite Twitter interface on any platform to date. Location integration is nice, but I'm not a big fan of Twitter broadcasting this information to the world at large with no privacy controls. That's no fault of Twitteriffic's though. Plug your ears AT&T, but it might be time to downgrade that SMS plan. Twitter has found a new home on this iPhone.

Bloomberg has a nice financial app with some sexy, albeit a little unstable, light on black stretching and scrolling graphs. I wish it were dumping more data in as I zoom in though, or even image layers, as it replaces a smooth wide-scale zoom with a few coarse scale settings and zoom within your chosen data scale. Landscaping the graph is really nice though and it's overall a slick first offering.

Moving on to an application that could have (and has been) done pre-iPhone 2.0 brings us to my simple favorite at the moment, iTunes Remote. It's nothing more than a well executed remote interface to any iTunes installation running on your local network. This actually fills a need I created by ripping all of my CDs uncompressed to the desktop in my office, which is connected to the receiver in the living room which drives speakers in both zones. Before I had been toying around with DLNA servers, which my PS3 or receiver could control (sometimes), but that always turned out to be a lot of trouble, and it seemed absurd to have a 50" plasma idling just so I can have a UI to browse my music. This is a huge improvement. Now how about some coverflow?

July 11, 2008

Low Score, Apple

After finding a line longer than my patience at AT&T Wall St:

I thought I'd save some time and get the next best thing: the iPhone2.0 update. After waiting about 20 minutes for it to install, I was greeted with this lovely unknown error "(-9838)":

I've tried two computers and no love. Looks like the servers can't handle the load.

Way to go. I mean, is it really surprising that a lot of people are hitting the iTunes store right now?.

A: No, it's not.

How about spending some of that cash from the AT&T lockdown on a few extra servers next time, eh? I just want to see the riots that ensue at the Apple and AT&T stores if the new phones stop activating as well. Maybe I should go wait in line after all.

UPDATE: No more error 9838, now just plain old stall:

And finally, this little mashup courtesy of Alex Bisceglie:

Who needs a phone, anyway?

UPDATE: I got a slice of iTunes store time long enough for the phone to at least wake from the dead. Still getting random unknown errors in iTunes, but at least I have a phone again. Others are not so lucky.

June 18, 2008

Mac Pro Optical Digital Audio Output and the Mute button

One of the great things about the new Mac Pro is its full size optical digital output, which feeds pure and clean digital audio to my receiver and on to the speakers in the office or main room. The downside of this is that the implementation is such that there is no master volume or mute capability; the optical out is a direct hard line out of whatever your apps hand it. Controlling volume with iTunes is no big deal, but it's really really annoying when you open a website with blaring loud awful music and have no way to quickly mute the sound. The best way I know is to open the System Prefs and change the audio output. So I figured what better time to hack a little AppleScript to at least automate the output switch.

I've only touched AppleScript on one other occasion, and I must say it's a bit of a mystery to me. It's sort of like the developers tried so hard to make the code like English that it turns into a confusing mess of pseudocode, and I've yet to find any comprehensive reference of what's possible in quick glances at what seems to be a maze of documentation. (Any pointers to such a reference would be much appreciated, BTW) But, there's always Google. To be fair, I've only spent a few moments with it and was able to figure out what I needed to make my mute button work, albeit with a big chunk of copy and paste from the O'Reilly Mac Devcenter blog.

So, without further ado, here's the code. You'll need to use AppleScript Utility (in /Applications/Applescript) to "Enable GUI Scripting" for this to work (the script will help you out with this if you haven't already done so). Use the Applescript Editor (also in /Applications/Applescript) to save the code (it seems to do some compilation in the process).

The long lines are hard to read here on the site, so the code is also available here.

Modified from the script found at http://www.oreillynet.com/mac/blog/2006/07/applescript_audio_output_switc.html to
switch between Digital output and Internal speakers, to act as a mute when using Digital out

This script toggles between two audio outputs in the "Sound" pane in "System Preferences" and adjusts the volume. 
Modified from a script at http://forums.macosxhints.com/showthread.php?t=45384 
to add volume control and GUI scripting detection. --David Battino, www.batmosphere.com.


tell application "System Preferences"
	set current pane to pane "com.apple.preference.sound"
end tell
tell application "System Events"
	if UI elements enabled then
			tell application process "System Preferences"
				tell tab group 1 of window "Sound"
					click radio button "Output"
					if (selected of row 3 of table 1 of scroll area 1) then -- Digital out is selected
						set selected of row 1 of table 1 of scroll area 1 to true
						tell application "Finder"
							set volume 0
						end tell
						set selected of row 3 of table 1 of scroll area 1 to true -- Internal speakers are selected
						tell application "Finder"
							set volume 2
						end tell
					end if
				end tell
			end tell
			tell application "System Preferences" to quit
		on error
			tell me to activate
			display dialog "Problem selecting audio device." buttons {"Whoops!"} default button 1
		end try
	else --GUI scripting is disabled
		tell application "System Preferences"
			set current pane to pane "com.apple.preference.universalaccess"
		end tell
		display dialog "Please check the box called \"Enable access for assistive devices.\"" buttons {"Okay"} with icon 1 default button 1
	end if
end tell

The script opens the System Preferences dialog, clicks on Sound, selects the Output tab, and toggles between outputs 1 and 3, which in my case are "Internal Speakers" and "Digital Out". When setting the output to the internal speakers it also sets the volume to 0 (mute). Perfect.

Now with a Quicksilver trigger, the script runs when I press F10 (in my case fn+F10, since I have the other special keys enabled) and mute is toggled. I also used the Quicksilver triggers and the iTunes plugin to map F11 and F12 to iTunes volume up and down. Not quite as nice as master volume + mute, but hey, it's digital to the amp — worth a little annoyance.

June 10, 2008

Multiple Database Connections in Ruby on Rails

I've been doing a lot of work in Ruby on Rails lately and absolutely love it. In the past few days I've needed to port an existing database over to a new schema for comparisons and benchmarking. It took a bit of digging to find what turned out to be a typical RoR (read: elegant) answer to the related problem of maintaining connections to multiple databases in Rails, so I thought I'd offer a link to Dr Nic here.

March 23, 2008

New Tools

It's also worth mentioning with respect to the new piece for Coachella, that I've acquired a few new tools that are making the process much quicker and easier. First and foremost, and really the centerpiece of it all, is the new Tektronix TDS3024B Oscilloscope. This baby has been on my wishlist ever since playing such a huge role in my senior design project success back at UIUC, and with the days counting down fast to Coachella, I decided I needed all the help I could get, and it really has been a big help.

I often describe working on electronics without a good scope as being comparable to trying to work with your eyes closed. It's not necessarily impossible but it increases both the time and frustration of even simple tasks by orders of magnitude. It's much easier to work intuitively when you can see what's happening right before your eyes. The image above, which I grabbed just to confirm that the duty cycle of the PWM was changing (in this design, the duty cycle of the PWM is also capable of changing faster than the eye can perceive), shows in yellow, pink, and green the CS, MOSI, and MISO lines from the FPGA to the SD card, and in cyan one of the channels of PWM out to an LED. Prior to this I had an old Tek265 analog scope which was useful in many circumstances, but for things like the serial bus debugging of the past few days, just didn't do the job. The 3024 has 4 channels @ 200MHz with all sorts of advanced measurement capabilities, FFT, advanced trigger, and a 640x480 color LCD. It also sports its own internal web server so getting screen captures is as simple as opening a web browser. The only negative is that when debugging a 50MHz serial bus on a 200MHz scope, the waves are pretty distorted, so a higher bandwidth wouldn't hurt. I wouldn't trade the advanced features for more bandwidth though, and to up the bandwidth to 500MHz crosses the line into 5-figure territory, which just wasn't in the cards this time. The reality is that the 3024 has been capable of everything I've asked, and I couldn't be more pleased with my decision on this one.

Also very helpful has been the Intronix LA1034 LogicPort USB Logic Analyzer. A logic analyzer is essentially an oscilloscope that trades the ability to see analog voltage levels for the ability to see lots of channels at once — in the case of the LogicPort, 34. It's somewhat limited in its sample storage capacity, which limits the length of data you can view at one time, but it mostly makes up for this with really smart triggering, which lets you focus that limited view on exactly what you want to see. The software also decodes serial buses, so it turns the SPI data and clock wave forms into hex that you can read directly (shown in the image below), which has been invaluable in the past few days. It's also an incredible bargain, when you compare with hardware solutions that (in Tektronix) start at $10k. The LogicPort is no $10k piece of gear, but it's a great addition to the lab that I'm very glad to have made. Plus, it's made in the USA by a small American company doing great work, which is always nice to support when the opportunity arises.

March 20, 2008

Verizon FiOS FTW

A few months back I switched to Verizon FiOS Internet service, which I had been watching for some time and had just become available. My big motivation for the switch was a really nice advertised upload speed of 5mbps (with the premium package: ~$58/mo). This blows anything previously in the "even close to affordable" category out of the water and is nice if you're sending big files frequently.

I've been happy with the service since day one, but today I was sending some 10 megapixel images up to my webserver and thought I'd used the time I saved to post this plug for FiOS.

Now how about getting that franchise deal with the city worked out so I can get switched over to FiOS TV too? Rumor has it that FiOS will be carrying 150 HD channels by EOY 2008.

View the archives.


Where am I?

Recent Photos

Powered by
Movable Type 3.35