Going Solo

December 10th, 2007

So, I finally bit the bullet and started my own company. I’ve been a free-agent for about three weeks now, and I love it.

Hooray for me!!

The new company is called Wry Research, and at least at first, I’m mostly just doing AI research consulting for a couple of clients. I’m trying to also fit in some original product development, when I have spare time. But I don’t have a whole hell of a lot of spare time, so I’m mostly just consulting right now.

But life is very good, and I’m enjoying the freedom and flexibility of being a solo software developer.

In the near future, I’ll talk about some of the work I’m doing as a consultant. I’ll also talk a little bit about a really cool research project that I’m doing, in conjunction with the Columbia Medical School Neurovascular Research Lab. Depending on the success of the research, it could lead me to developing a very cool product/service for the medical research community.

I’ll keep ya posted :)

Eternity II is here!!

August 7th, 2007

Last week, the Eternity II puzzle (which I’ve talked about here and here) went on sale. I can finally wipe up the drool-puddle-of-anticipation that’s been forming on my desk and get to work cracking this nut.

Unfortunately for those of us in the United States, the puzzle is not available here, and there are very few online retailers willing to ship the puzzle to the USA.

But I did track down the puzzle at Hamley’s and placed my order. Their online shopping cart is a little bit crappy (it got confused verifying my non-European billing address), so I had to call them on the phone ( (+44) 800 2802 444) and a very friendly girl with an Irish accent took my order.

I placed the order at noon last Wednesday, and the package was delivered (in Boston, MA) by about 2:00 pm on Friday.

Holy crap.

At first, I thought they must have used an American order-fulfillment location, but the package had international shipping stickers and a return address in the UK, so it seems to be an actual international delivery. Fulfilled in just two days. I’m very very impressed. I had no idea that it was even possible to ship something overseas so quickly.

The puzzle cost £35, plus another £25 for shipping. With today’s lousy exchange rates and the weak dollar, that’s a total of $120. Unfortunately, when I win the $2 million prize, that means I’ll really only be netting $119,999,880.

Bummer.

Anyhow, if any of you American algorithm enthusiasts have been sulking because you can’t get Eternity II here, sulk no more!!

MIT Puzzle Research

June 4th, 2007

I was browsing around tonight, as I sometimes do, looking for interesting CS research publications, and I stumbled upon this little tidbit:

Jigsaw Puzzles, Edge Matching, and Polyomino Packing: Connections and Complexity

For those of you share my fascination with the Eternity II Puzzle, you’ll definitely be interested in reading this paper. In it, the author talks about the various degrees of complexity of jigsaw puzzles, polyomino packing puzzles (Eternity), and edge-matching puzzles (Eternity II).

I don’t mean to spoil the punchline or anything, but they’re all NP-complete, meaning the most successful algorithms will involve optimization, approximation, partial solutions, and problem decomposition.

Interestingly, the author also provides a proof that all three types of puzzles are trivially transformable into one another. In other words, a polyomino packing puzzle like Eternity could be logically transformed into an edge-matching puzzle like Eternity II, and the two puzzles would share the same locus of possible solutions.

Hopefully, that helps at least one of us get a little closer to the big $2 million bounty!!

Introducing Sproiiiing: the Hottest New EoC Framework

May 2nd, 2007

The last few years have been an exciting time in the Enterprise Java world. We’ve seen a proliferation of lightweight application frameworks that vastly simplify the wiring of applications without introducing dreaded dependencies into our precious class hierarchies.

But these frameworks still fall short of the mark. Every time you use an import statement or define a new class, you place a burden on the consumers of your application. Import statements create dependencies on other classes in your project. The existence of specific methods and (even worse) classes, constrain the functionality of your application to the features defined at compile-time by your developers.

Based on these unacceptable constraints, I’ve been working hard on a new “Elimination of Code” framework (EoC), and I’m proud today to announce the availability of the Sproiiiing framework!!!

Read the rest of this entry »

I’m a Bostonian!!

March 30th, 2007

It’s official.

I’ve been in Boston for three and a half days now. I’ve found an apartment. I’ve opened a bank account. I start my new job on Monday.

Holy crap. Boston is a very cool city. Very cool.

I’ll tell you more about it later.

For those of you who have sent me email over the last few weeks, sorry I haven’t responded. I’ve been up to my eyeballs in packing boxes. I’ll reply soon.

Solving Impossible Problems

January 27th, 2007

I’ve always been interested in enormous, impossible progamming problems.

That’s probably why I’ve steered my career in the direction of machine learning algorithms and statistical AI.

And, for those of you who followed my 30-days-30-ideas thread last summer, that’s why I was so interested in the AI-Coder business idea.

But anyhow, about those impossible problems…

Read the rest of this entry »

The New Decision

October 28th, 2006

Yesterday, I returned from obscurity to tell you that I’ve been busily grinding away at three major projects. Today, I’m going to tell you a little bit about the first project, with some background information for those who may not have been following along.

Over the summer (and immediately following my failed interview at Google) I announced a project to brainstorm 30 business ideas in 30 days. Although the project slipped a little bit (I ended up developing 28 ideas in 43 days), I came up with a broad range of possible software projects.

Over the next month or so, I arrived at a decision: the AI-Coder project rose to the top of my list, and I started working on an implementation. But within a few weeks, I ran into a number of difficulties (both technical and legal) and I decided to reconsider.

So, I returned to my list of semifinalist projects and began to weigh the options.

And now I’ve chosen a new project.

Read the rest of this entry »

Hello Hello Again

October 28th, 2006

Well, it’s been a busy two months.

It’s nice to be back here again, sitting in my blog-writing chair and saying hello to all the nice people out in blog-land again.

(No, I will not use the word blogosphere.)

Read the rest of this entry »

AI-Coder Due Diligence: Why I’m Changing Plans

August 27th, 2006

As much as I’m loathe to admit it, I’ve bitten off a bit more than I think I can chew with the AI-Coder project.

Why the sudden change of heart?

I’ve been doing my homework.

Read the rest of this entry »

AI-Coder: High Level Design

August 22nd, 2006

As an artist, I’ve often started a new drawing or painting right in the medium, dipping a paintbrush into my palette and splashing something preliminary onto the canvas. Some of my favorite drawings have started with pen on paper, having no idea what the hell I was working toward, but just enjoying the process.

In many cases, those first few haphazard strokes set a tone and texture that guides the rest of the creative process.

While the paint is still wet, and the figure is still mostly unformed, I’ll step back from the canvas and look at what I’ve done so far, asking myself “What is this? I like what I’ve got so far, but how can I turn it into something worthwhile?”

The decisions made during that post-improvisational stage often determine whether the painting gets hung on my wall or tossed into the dumpster.

I feel the same way right now, at the beginning of the AI-Coder project.

Read the rest of this entry »