What's going on?

Hello! I'm Charlie and IΒ program computers. I make websites at Upstatement as a lead engineer in an IC role.

By any measure, I have been on the internet too long.

Here are some clients I've made cool internet stuff for recently:

Here's some older work I'm still really proud of:

  • Magic Leap launch announcment
    I got to help design and completely build the homepage for Magic Leap's first product announcement, it won some awards and had at least 3 whales and a space ship. Screen caps pending!
  • Google Androidify
    I embedded with Google Creative Labs to build a live viewer of user-created avatars in about 48 hours that ran smooth enough to play on the largest screen in Times Square. Still the longest consecutive hours billed of my career at 35. A young man's game!
  • The Great Gatsby for NES
    A surprise viral sensation from a lifetime ago (2012), made the front page of the WSJ and was invited to speak at the Frankfurt Book Fair. This was a huge deal and delight that I am still wondering if I dreamt. I recently made a proper NES port for the grey lady. Cartridges are for sale at the MIT flea only.

Here's some of my technical writing:

Here's some things I keep meaning to do, and some I have:

Three.js Demos

I spent a lot of time over the last few years doing little experiments to help me learn more advanced graphics programming. Most of these were in Three.js, which is a wonderful library and learning tool for dipping your toes into the world of 3D graphics. Here are some demos I made, some of which have ended up as Chrome Experiments.

I have also contributed some code to three.js from time to time, most notably my GPU accellerated particle system.

The Great Gatsby for NES

In late 2010 my friend Pete Smith and I adapted The Great Gatsby as an NES platformer. Adhering to both the literary source material and the technical and narrative trappings of the hardware, we did our best to somehow create a game that did justice to both at the same time, and I believe we succeeded. It was a viral hit, with about 250,000 unique visitors in the first 48 hours, and mentions in The Washington Post, Business Insider, Time Magazine, and even an article on the front page of The Wall Street Journal, complete with a hedcut for our 16x16 pixel Nick Carraway. It achieved true nerd immortality when Roy from The IT Crowd wore one of our t-shirts on the series finale. It was kind of a big deal for me is what I'm saying I guess.

It was created in Flash, which seemed like a good idea at the time, and lives on today at greatgatsbygame.com, along with the original user manual, featuring artwork by Michael DiMotta.

Up There

Up There is an accurate Milky Way simulation that brings the galaxy into your classroom or livingroom, rendering over 100,000 nearby stars at their true positions in three dimensional space. Using the HTC Vive (and soon Oculus Rift) you can reach out and interact with every star and learn how far away it is, how big it is in relation to our sun, what radio signals it might be recieving from us, what path it is travelling through the galaxy and more.

Development on Up There is still in its early stages, and more features and datasets will be added over the next few months. Learn more at Up There's website and/or follow our progress on twitter.

Blender Sketches

Blender at first glance is an impenetrable riot of grey rectangles. With the help of some generous youtubers' tutorials, I learned Blender and 3D modelling by committing to doing a sketch every day, which I've kind of fallen off the wagon on. They vary a lot in quality but it was a wonderful exercise, one that I'd like to get back to soon.

I'll make a nice interface eventually, but for now you can look through them on flickr.

The Crystal Pepsi Trail

For their relaunch of everybody's favorite transparent beverage, Pepsi wanted to bring back the feeling of the 90s with The Crystal Pepsi Trail. We built the game using Phaser and created a website with all the trappings of the period from whence it came, including scrolling marquees, web ring badges, and of course blink tags.

Google Androidify

Google wanted to build a web experience that could run on the biggest screen Times Square. Working with developers at the Google Creative Lab, we used Pixi.js to create a web version of Androidify application that could run both on your mobile phone and on Times Square's largest screen. Spanning two GPUs and over 23 megapixels (323' x 77' / 2,368px x 10,048px), we ran the almost same code that's on the website at 30 frames per second throughout December 2014.

Users created their own avatars on Androidify.com and could see them appear live in Times Square, and receive a photo from when it happened. Hundreds of different clothing and decoration assets, body types and skin colors combined into billions of different combinations of Androids. The project continues to thrive with many millions of androids created over its run.

GE: Minecraft Tower

For the GE show's episode on manufaturing technology, the wanted a tie in with the then up and coming Minecraft video game that featured a recreation of Edison Memorial Tower in Edison, NJ. I researched the site and designed a minecraft-buildable version of the tower, and then constructed it in-game. We created a short music video about its design and construction, which consisted of screencaptures of the design process and timelapse videos of building the tower on a local minecraft server, with "camera men" logged in and standing atop precarious towers at dramatic angles. In other words, I got paid to play Minecraft for a week or so while I road tripped across the country.

Other Projects

About Me

Hello. I'm a programmer and interactive designer living in Somerville, MA. Most of my time right now is going into my VR astronomy project Up There, but I do web development, interactive graphics and data-vis, and game development freelance work from time to time. You name it basically, I've been at this a while now, my full cv has some more information. If you think I could help you out on a project, email me or dm me on twitter.