?

Log in

No account? Create an account
Needle, ITA, Google, and why I have such a crush - Lindsey Kuper [entries|archive|friends|userinfo]
Lindsey Kuper

[ website | composition.al ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Needle, ITA, Google, and why I have such a crush [Aug. 1st, 2010|02:49 pm]
Lindsey Kuper

Back in April or so, on Plans, I wrote to my friend Courtney, the person who I thought would be the most interested:

[sherwood00], I think you would be intrigued by Needle. This article does a pretty good job of summing up what it's for. I think of it this way: There are a lot of people who work with data who have pushed Excel about as far as it can go. They don't want to keep on trying to shoehorn their data into Excel, and what they really need is the power and flexibility of a relational database, but they don't want to become database programmers. Needle is for them. It also does things that an off-the-shelf relational database doesn't do: it can help you try to make decisions (say, about whether something is a mistake or not) based on patterns in your data. Needle was developed by people I respect a lot, and I'm very interested to see what will come of it.

Courtney said, "Ooh, can you leave that link up for a while?" I've left it up since, but I know how busy she is, and some of the rest of you might care, too. So here it is in a more permanent home. I also want to say a little more about Needle and where it came from.

Needle is an ITA Software project. If the name sounds familiar to you, it might be because you've read Paul Graham's essay "Revenge of the Nerds", which was written in 2002 and which was one of the centerpieces of his book Hackers and Painters in 2004. ITA makes the software that runs travel search websites like Kayak and Orbitz. They are also probably the biggest corporate user of the Lisp programming language. So, as a Schemer, I was already a confirmed fangirl before glenn mcdonald, my favorite music critic and one of the best bloggers I know of, started working there in 2006. (Some of his thoughts upon starting the job are chronicled on his blog.)

My reasons for liking the things I like aren't particularly rational. I've barely played with Needle at all. I don't even really know if it's good for what it claims to be good for. But one of the things I like the most about Needle is that it has glenn all over it. Or maybe it just has Trebuchet all over it and I can't tell the difference, but one way or another, it's been imbued with a personal touch that I immediately recognize. I think it's damn cool that one guy, at a company that employs several hundred people, can launch a big project like this and that his personal touch can be allowed to shine through. For that to happen, it must be a pretty cool company.

I've come close to applying for internships at ITA lots of times, but the timing has never been quite right, so what I've done instead is push my friends towards applying for them in the hopes of vicarious enjoyment. In fact, much of what I've written here about my raging crush on ITA is cribbed from a breathless email I wrote to Monica keystricken over a year ago in an effort to get her to go work there.

So, now it turns out that Google is acquiring ITA. My reaction to this is partly, "Maaaan, does Google have to take everyone good?"1 There's also a little bit of disbelief that, you know, after all this time and all this hemming and hawing, it turns out that this dream people have of writing Lisp at Google might actually come true.2 (Might.) But mostly, my reaction is "Hah! Told you!"


  1. Google also just acquired Metaweb, so now they've also got Kirrily, plus these guys, whose definition of "machine learning" is still the one I like the best.
  2. Funny story: Back in March, I was at Grad Cohort, standing in the hallway chatting with a Google software engineer between sessions.

    Me: I used Python in my Google interview; it didn't go that well. It was too bad I couldn't have used the language I was most fluent in.
    Her: Oh, no; you can use whatever language you want!
    Me: Scheme.
    Her: ...oh. Yeah, not that.

LinkReply

Comments:
From: wjl
2010-08-02 01:04 am (UTC)
Her: Oh, no; you can use whatever language you want!
Me: Scheme.
Her: ...oh. Yeah, not that.


I think they let Chris use ML for her interview! Maybe you weren't insistent enough? :)
(Reply) (Thread)
[User Picture]From: lindseykuper
2010-08-02 02:39 am (UTC)
I wouldn't be surprised if Scheme is considered weirder than ML is. In any case, though, what happened in my phone interview (which was as far as I got in the process) is that my interviewer already had a shared document open with the Java prototype of the thing she wanted me to write, and I felt like scrapping it and writing Python instead was already kind of a dramatic departure, so I didn't want to push any harder.

It was a long time ago, though. I'm more confident now. Also, now I might just write the Java because I'm less of an evangelist.
(Reply) (Parent) (Thread)
(Deleted comment)
[User Picture]From: lindseykuper
2010-08-02 02:40 pm (UTC)

"yes"

Is that "I seem to recall" or "it stands to reason"?
(Reply) (Parent) (Thread)
[User Picture]From: oniugnip
2010-08-02 01:31 pm (UTC)
I used a little bit of Common Lisp.

Srsly, it depends on who the interviewer is; if a language isn't good for communicating with your interviewing person, then you should switch!
(Reply) (Parent) (Thread)
[User Picture]From: keturn
2010-08-03 01:27 am (UTC)

you know this guy, right?

There are two ITA posts on my friends page right now, and the two of you don't appear to be friended. Work with cos at ITA.
(Reply) (Thread)
[User Picture]From: lindseykuper
2010-08-03 06:08 am (UTC)

Re: you know this guy, right?

Cool! *friended*

Unfortunately, the timing continues to be bad for me -- this round of school is a 5-to-life thing, with summers off for good behavior. But I'll apply for an internship for next summer when the 2011 summer internship hiring season starts. Which, like the Christmas shopping season, will probably be in approximately seven minutes.
(Reply) (Parent) (Thread)
[User Picture]From: floydcollins
2010-08-04 03:04 am (UTC)
We have a lot of ITA connections. I'd work for them if they didn't require everyone to live in Boston! Also Google has no twin cities presence at all.
(Reply) (Thread)
[User Picture]From: cos
2010-08-04 04:24 am (UTC)
I've played with Needle some. My impression of it, as I described to my friend who's interning on the Needle team, is that it reminds me of Data at the beginning of Next Gen: You could see he had the potential to be able to act convincingly near-human, but it was going to take a *lot* of work. Needle is kind of amazing, and also frustrating because it's not quite the magic that it sometimes feels like it is, but it makes one *expect* magic.

BTW, I think the most significant thing about Needle isn't that it lets you do powerful database things easily, it's that it makes it easy (or is supposed to - my friend has been relaying my usability comments to her colleagues :) to collect that information from diverse and relatively unstructured sources that weren't designed as database input. Which means, among other things, that much of the chaos of the web can be organized without requiring the web to change. It also has similar implications for organizations' own internal data - such as a college that has lots of unstructured information and wants to find a way to answer some interesting questions about it. The power here comes from a) being able to set up a database structure that can be used to answer such questions much more easily than otherwise, and b) being able to use the data that you've already got, as is, to populate that database. I think b is a much bigger deal than a.
(Reply) (Thread)
[User Picture]From: lindseykuper
2010-08-04 12:42 pm (UTC)
That's a good point, yeah! Semi-structured and unstructured data are where it really stands out. I was trying to get at that when I said that it could help you find 'patterns in your data', but that was pretty vague, and I was taking too narrow a view of it when I said 'whether something is a mistake or not'. The whole point of a tool like this is that unstructured data doesn't have to be a pile of 'mistakes'.

"Amazing and also frustrating" seems like a pretty worthy goal for new technology to shoot for. If something isn't a little frustrating, I think there's a good chance it's not really a new innovation.

I'm glad to hear that you can confirm that it's powerful and interesting after having spent some time with it. I was actually a little afraid that you'd say "Eh, it's nothing special" and I'd look foolish. The media seem to have been talkative about the ITA acquisition, but pretty quiet about Needle in particular (if you Google for 'ita', 'needle', and 'google' in various permutations, this post is right now showing up somewhere between first and sixth place in the results). So either I'm unjustifiably excited about Needle, or we know something that the media don't.
(Reply) (Parent) (Thread)
[User Picture]From: jes5199
2010-08-06 09:41 am (UTC)
apparently superconnector cos works for ITA
(Reply) (Thread)
[User Picture]From: jes5199
2010-08-06 09:41 am (UTC)
maybe I should read the comments before I post one
(Reply) (Parent) (Thread)
[User Picture]From: jes5199
2010-08-06 09:44 am (UTC)
cos accidentally introduced keturn to tornadogrrrl. They already lived in the same house, at the time.
(Reply) (Parent) (Thread)
[User Picture]From: lindseykuper
2010-08-06 12:25 pm (UTC)
I think that beats me quoting Adam Kennedy to himself.
(Reply) (Parent) (Thread)