Fluidinfo receives an additional $170K in Series A second closing

August 23rd, 2010

We’re happy to announce a second closing of Fluidinfo‘s Series A investment round. We’ve raised another $170K, taking the round to just under $1M in total. Some of the people investing in the second closing are:

Michael Parekh: A Wall Streeter for over 20 years and former partner at Goldman Sachs, Michael founded and helped to build the Internet Research effort at the firm (twitter, more info).

Esther Dyson: who seed funded Fluidinfo in late 2007, and who’s been a huge source of help ever since (and before). We’re thrilled to have her following on in this round (twitter, more info).

David Snow: the Editor in Chief of PEI Media. David also participated in the seed funding of Fluidinfo (twitter, more info).

Ted Carroll and Earl Macomber: who were both also seed-stage backers of Fluidinfo. Ted and Earl are the managing principals of traditional information and media focused private equity firm Noson Lawen Partners, and have again made personal investments (twitter, more info).

Ed Carroll: who was also a seed stage Fluidinfo investor. Ed is now entering his senior year in high school and hopes to attend USC next year as a freshman at The Marshall School. Ed spent a month at Marshall this summer and walked away with Top Five honors in their Entrepreneurialism program. Good luck Ed!

There are three other new investors who also came into the round, but who prefer not to be mentioned publicly at this stage (so you’ll have to ask us about them privately :-) ). The above all join Betaworks, IA Ventures, RRE Ventures, Lerer Ventures, Chris Dixon & Founder Collective, Joshua Schacter, Andrew Rasiej, Ross Williams, and Esther Speight as Fluidinfo Series A investors.

Our thanks to everyone!

Tim O’Reilly joins the Fluidinfo advisory board

August 10th, 2010

Tim O'Reilly - out standing in his field

The wild rumors are all true. Tim O’Reilly has joined the Fluidinfo advisory board!

I’m an unabashed fan of Tim, his company, and everyone I’ve ever met who works at or has worked at O’Reilly (especially Sara Winge). I’ve been talking to Tim on and off about FluidDB since March of 2007 after being introduced by Esther Dyson. Tim would blog about something, and I’d email him and say “FluidDB will be able to do that” or (more recently) “FluidDB can do that.” When we first met, we spent 90 minutes together and I showed him a demo of a few things. He drilled down hard in the first 2 minutes: “Tell me what’s different about it.” So I went for it. When the meeting was over, Tim left the room and went to the elevator to leave. I was packing up my stuff when suddenly he was back, wanting to ask and suggest more. He came back to the room four times, lastly to get my phone number :-)

Since then, Tim has been extremely generous, introducing us to many great people. You can see who very easily in the graph of introductions I put together over the years as I talked to people about FluidDB. He made the introduction that led through Gerry Campbell to John Borthwick and Andy Weissman at Betaworks who led the Fluidinfo investment. Tim invited me to the Social Graph Foo camp in 2008, to a Science Foo camp, and to two general Foo camps, and he’s been helping me in the (ongoing) attempt to get a US visa.

It’s a personal thrill to have Tim formally involved with Fluidinfo. During years working on what at times seemed like the dark side of the tech moon in Barcelona, to have had Tim and Esther (and others!) behind us along the way has been wonderful. I often feel I want us to succeed as much for them as for anyone else.

Top tweeters as followed by HN readers now in FluidDB

July 29th, 2010

Yesterday Jeff Miller posted some interesting data on the Twitter users most followed by readers of Hacker News.

I just took those top 100 Tweeters and added Jeff’s data (their rank and the fraction of HN readers who follow them) to FluidDB. The tags I used in FluidDB are ycombinator.com/top-100 and ycombinator.com/follow-percent. The top-100 tag has values that are the Twitter user’s rank (from 1 to 100), and the follower-percent tag holds the (floating point) percentage of Hacker News readers that follow that Twitter user, as found by Jeff.

What does this all mean?

It means you can now query on Jeff’s data using FluidDB. And because FluidDB contains various other pieces of information about Twitter users, you can combine his data with other data in searches – including searches that Jeff probably never anticipated (and, because of FluidDB, never had to anticipated).

It also mean you can add to the data too. All you need is a FluidDB account (sign up) and then you can take the FluidDB API for a spin (docs).

To see the kinds of things that are possible, you can also do some queries using the advanced tab of Tickery.

For example, Who are more than 20.0 percent of HN readers following that have a TunkRank score of at least 60?

Or, Who is in the HN top 100 that I have met?

Or, Who of the top 100 do I follow?

The possibilities are endless. The main point of FluidDB is that you can play too. You can add your own data (any data) to the exact same objects that I’ve put Jeff’s data onto and which Tickery and TunkRank and We Met At are all using – and you don’t have to ask permission.

We’ve written plenty more on this subject. See also Tickery, for programmers, TunkRank scores added to FluidDB, Putting metadata onto tweets with FluidDB and FluidDB as a universal metadata engine.

You can get all the code I used to put the data into FluidDB from our hackernews repo on GitHub. It was about 90 minutes of work from start to finish.

Have fun, and please comment below!

Open sourcing Tickery

July 20th, 2010

TickeryToday we’re excited to announce that we’ve open sourced Tickery under the Apache License. You can download the source from the Fluidinfo repository on Github. If you’re not familiar with Tickery, you can go play with it and also read our two blog posts, Meet Tickery and Tickery, for programmers.

We’ve open sourced Tickery in order to show other developers the insides of a non-trivial application that uses FluidDB. Tickery was written over a three month period (November 2009 to January 2010), and much of it was done at a fairly fast pace. While the code could be cleaner and better documented, it’s not bad. We’re of course interested to help people understand the code, so please feel free to join the FluidDB users mailing list, or join us in #fluiddb on irc.freenode.net. Naturally we’ll be happy and interested to receive improvements or patches, and you can of course run your own instance of Tickery.

Tickery is written entirely in Python, and was built using a number of other open-source tools, including Twisted, Pyjamas, txFluidDB, txRDQ, txJSON-RPC, and Ply. Thanks to all those projects for their openness and support.

We also had the benefit of lots of help from Luke Leighton and the other Pyjamas developers – thanks!

Maintaining startup energy –or– learning to unicycle together

June 10th, 2010

Image: ibikenz

Learning to unicycle is really hard. The first time you take hold of the seat of a unicycle you immediately appreciate how impossibly difficult riding one will be. It feels like it shouldn’t be possible, and if you didn’t know by example that it is, I suspect very few people would seriously consider it.

Unicycles have so many degrees of freedom – it’s hard enough even to lean it against something static without it falling over, let alone putting yourself on top of one, with no means of support. As opposed to something like juggling, where any idiot can toss a couple of balls and probably catch them, there’s not much of an in-between zone in unicycling: either you can or you can’t. It’s always a pleasure to hand your unicycle to a loud-mouth passerby who comments how it can’t be that hard, etc.

A funny thing about learning to unicycle though is that you can have two people, neither of whom can unicycle alone, and put them side-by-side holding hands or shoulders, and the two can ride. It’s a great way to get beginners riding and learning together, and in a way it’s remarkable – neither person can ride alone, but they can reliably do it together without much trouble. The reason is that while they’re both having a hard time and are very often unbalanced or somewhat out of control, they’re very rarely falling in the same direction at the same time.

I think that’s a great analogy for how people at a startup can support one another in the very early stages. There are so many degrees of freedom – so many ways in which things can go wrong, from the mundane to the spectacular. Most apt, you may be low on energy or feeling negative or even doomed, but probably not in the same way or at the same time as your partner(s). Together you might each be able to do something that you couldn’t have done otherwise.

I was describing this analogy to Esteve Fernández (not for the first time), Nicholas Tollervey and Jamu Kakar over lunch yesterday, and decided to finally write it up. Without knowing it, Esteve kept me in a positive mood quite a few times as we spent 18 months building FluidDB. Thanks :-)

Anatomy of a funding

May 24th, 2010

Yes!! Fluidinfo is finally funded. Getting there took a while, and wasn’t easy. In fact, it was the most difficult thing I’ve ever done. Below are a few loosely related comments on how it all went down. I hope this will be of interest to people who are specifically interested in the progress of Fluidinfo, and also to other entrepreneurs. I’ve been waiting years to write it. Predictably, now that I’m in a position to do so, I don’t really have time to do a decent job.

There was a lot of rejection along the way. I blogged about expecting and embracing startup rejection in Nov 2008. We had to ignore all that, and take heart from the strong support of a few people. More on them later.

We were even called "unfundable" (and “world-changing”) in a generous article by Robert Scoble, who is a very careful listener and much smarter than people seem to realize. I was of course determined to change that.

Tim O’Reilly uttered the most memorable fund-raising related sentence along the way: “This could take over the world…. but I don’t see how we could fund you.” Argh! Best, clearest, and most useful advice came from Jeff Bezos who simply said “Never give up”. Most haunting startup article: Avoiding the Cargo Cult by Roman Stanek. Most inspiring and favorite other entrepreneur met along the way: Jason Calacanis.

Several times we could have been funded if I’d accepted very low valuations. I said no to deals that didn’t feel right. I said no, and we pushed on to a release living on fumes, when people told me FluidDB was just ideas – as if the years of coding counted for nothing. I even said no to a couple of informal offers to acquire Fluidinfo.

Several times we could have been funded if we’d agreed to just build some kind of application, instead of insisting on working on FluidDB as a general storage architecture. I was never willing to give up or even relegate the importance and value of getting the right architecture in place. I think many startups have powerful general ideas but get diverted along the way into building something more specific. They have the intention of getting back to the more general and broadly applicable vision, but they never do. There are many reasons why that happens, among them the fact that once low-level engineering (programming) decisions are baked in, they are very hard to revisit.

So you could say I wasn’t willing to compromise on the vision – to get funded earlier in order to do less. And I felt compelled to push back on the elevator pitch, a posting through which I met Andy Weissman. I don’t think entrepreneurs should obediently infantilize their grand visions just so someone who’s probably not going to fund you can perhaps understand what you’re doing. Sure, if you have a compact idea that you can package up into a tiny pitch, go for it. If after trying to do that, you don’t, go find some potential investors with the patience to listen to you. The Betaworks guys told me after we’d first met that they’d blocked off 3 hours to talk to me – they knew it might take some time to see the scope of what we were attempting, to ask about it and consider it, to let it sink in, to hear why it might work, etc. (It didn’t take 3 hours, BTW, but they were prepared.)

I spent a lot of time pondering the link between obviousness, the creation of value, and passion. I often try to get people to read that article.

I’ve been introduced to many people along the way. A couple of years ago, in order to avoid real work, I started drawing a graph of the introductions I could remember. I filled my entire 3 meter whiteboard. So I wrote a small program to generate input for Graphviz and fed it all the information. You can see the result here. The colors are for people I’ve only talked to on the phone (light green), only emailed (orange), or was introduced to but never got a reply back from (yellow). All the rest (darker green) I met in person. I had to force myself to meet people, at first just telling myself it was part of my job and that if I didn’t do it Fluidinfo would simply cease to exist at some point, and in the end actually coming to enjoy it.

If you know your way around the seed and venture world, you’ll recognize many names in that graph. You can infer that they all – one way or another – found a way to say no, with the exception of Esther Dyson (who is a saint) and the investors who have just funded us. Many never actually bothered to say no, and several simply stopped replying to email. (See also: Pond Scum.) As an entrepreneur without a lot of outside support, it’s good to have things to keep you going. Planning to have the last laugh is sometimes all it takes. :-)

Quality I most enjoyed running into while meeting all those people: intellectual generosity. One thing I learned to stop doing: taking other people’s time and attention for granted.

The total money we spent on hardware over the last 4 years is $2000. That was one laptop, a couple of sticks of RAM, a USB memory, a couple of external hard drives, and a printer. The whole of FluidDB was written on two 15″ laptops, with no external monitors.

I can’t stand entrepreneurial cliches. They drive me nuts. There are so many people out there pontificating about startups, funding, VCs and entrepreneurs. If you spend any amount of time in that world you’re going to hear the same old tired cliches over and over and over. Standout exceptions: Chris Dixon, Scott Rafer, Nivi and Naval at Venture Hacks, and Paul Graham. Yes, there’s a bunch of other good stuff out there too.

I made the mistake of talking to VCs too early (see the post on rejection mentioned above). I should have been talking to earlier stage funders, but I was so sure the VCs would find Fluidinfo irresistible, and I wanted a bigger amount of money, that I neglected to talk to the only people (with money) who could really appreciate what we were trying to build.

John Borthwick and Andy Weissman, the founders of Betaworks, are fantastic. Betaworks are changing early-stage financing in New York (and beyond). Look at the intro graph: John is very easy to find. Those are almost all introductions he was making long before they funded us. They invited me to speak at their monthly brown bag lunch. They’ve had us in their office for a couple of months this year, given us keys, let us come to their weekly company-wide meetings, taken me into confidence multiple times, let me be present when sensitive things were discussed, created opportunities, pulled the funding round together, been generous and accommodating on the terms of the deal, and more. Spending time with the other small startups in and around the Betaworks office has been great – there’s a lot of very smart people there, and they’re working hard (while having fun) building all sorts of things. John is very good at his job. Keep your eye on Betaworks.

And never give up :-)

FluidDB enters alpha

May 24th, 2010

We’re using the Techcrunch Disrupt event to launch FluidDB into a real alpha. Until today we’ve only let a small number of people in to play with the API, and we’ve been giving away API passwords by hand. As of today, we’re taking the brakes off a little, allowing anyone to sign up and begin using the FluidDB API. Of course to do that it will help enormously if you’re a programmer :-)

Although FluidDB has been up and running for 9 months, we’re being careful not to raise expectations too quickly. So for now we’re still labeling it an “alpha”. We have concrete plans for what will constitute a beta—these are mainly to do with speed and with adding flexibility to the API to reduce the number of calls apps have to make—and plan to be in beta by the end of 2010. Now that we have our funding cleared up, and can hire more developers, you can expect FluidDB development to ramp up quickly.

Please feel free to comment below. We’re listening!

Fluidinfo is funded!

May 24th, 2010

We’re thrilled to announce that Fluidinfo have just closed a small Series A round ($800K) led by Betaworks, with participation from IA Ventures, RRE Ventures, Lerer Ventures, Chris Dixon and the Founder Collective, Joshua Schacter, Andrew Rasiej, Ross Williams, Esther Speight, and Ed Carroll. They’ll be joined by early Fluidinfo seed funder Esther Dyson. We’ve been talking on and off to Betaworks for two years, and we couldn’t be more pleased with the close relationship we’ve developed with them over that time, and with the fit of our collective visions and aims.

We’d never have gotten this far without the support of several early “sweat equity” contributors and 17 friends and family seed investors – our huge thanks to that group too.

Fluidinfo is now a US (Delaware) corporation, thanks to the efforts of Gunderson Dettmer, and for the time being we’ll be based out of the dynamic Betaworks offices in New York. As you’d expect, we’re looking for a few passionate programmers to join the team.

In other news, we’ve been selected as a finalist in TechCrunch Disrupt Startup Battlefield, and we’re most of the way through a major overhaul to the Fluidinfo web site, with more good stuff to come.

I’ll stop now, to try to keep this short. Watch this space for some upcoming posts.

Fluidinfo is a TechCrunch Disrupt finalist

May 24th, 2010

Fluidinfo has been selected as a finalist in the TechCrunch Disrupt Startup Battlefield taking place today in New York.

Over 500 companies from around the world applied to present at TechCrunch Disrupt, and only 20 were accepted. We’ll be on stage fighting for the right to call ourselves the most disruptive start-up on the planet :-)

It’s quite an accomplishment and an honor to be selected as a finalist. The entry process wasn’t simple: a written application, a 5-minute video, a phone interview with TC CEO Heather Harde, a couple of hours talking and demoing to Erick Schonfeld, a written script of a presentation (with lots of suggestions from Erick), and several live rehearsals. Ben Siscovick of IA Ventures is kindly helping with the live presentation. And along the way I had to reluctantly pull out of giving a presentation at the NY Tech Meetup. Thanks to John Borthwick of Betaworks and to Todd Levy of bit.ly for helping cover for me, and especially to Nate Westheimer the NYTM organizer for his understanding and support.

I’ve never really liked these startup competitions. They amount of time allotted to present always seems too little, and the audience too general. But more importantly, they’ve always seemed biased towards startups working on much simpler things, with snazzy UIs and demos – exactly the kind of thing we never had. But the theme of TechCrunch Disrupt was too irresistible to ignore. In the demo video I submitted, I told them I had no demo and that real disruption will not necessarily arrive with a UI. To their credit, TC bought it and were courageous enough to consider Fluidinfo further, and to finally accept us. Erick Schonfeld was very thoughtful, supportive, and encouraging in this.

Hopefully the presentation will be available online – if so I’ll post a link here. I’ve been thinking about it and working on it for some time. I’m on stage sometime after 2:15pm (EST) today.

I think it’s going to go well. Hopefully by the time you read this we wont have already been voted off the TC Disrupt island!

TunkRank scores added to FluidDB

May 6th, 2010

TunkRank is an influence measure for Twitter users. It was originally proposed by Daniel Tunkelang, and an online implementation was written and is maintained at tunkrank.com by Jason Adams. Given a Twitter user name, TunkRank computes a measure of that user’s influence based on followers of the user, how many people the user’s followers follow, etc. As well as a web interface, TunkRank scores can be obtained through their HTTP API.

Today we’re excited to announce that TunkRank scores can now also be accessed through FluidDB. This gives us a great way to concretely illustrate some of the unique properties of FluidDB. I’m going to give some examples that use Tickery, so you might want to go play with that a little first, or read our earlier postings, Meet Tickery and Tickery, for programmers.

  1. But wait, TunkRank already has an API
    That’s true, but why stop at one? The TunkRank API provides TunkRank scores in isolation. So a 3rd party application can fetch a score and use it in some way. By also putting TunkRank scores into FluidDB though, they become searchable and can be combined with other data in FluidDB. For example, here’s a Tickery query showing people I follow who have a TunkRank of over 30. Look at the FluidDB query: has twitter.com/friends/terrycojones and tunkrank.com/score > 30. In English: "Hey FluidDB, get me all objects that have a twitter.com/friends/terrycojones tag on them and that also have a TunkRank score greater than 30." That’s pretty interesting: a data mashup of Twitter friend information with TunkRank scores. You can’t (easily) do that when the two sources of data are held in isolation, each behind their own API, but it’s trivial if the information is in the same place.
  2. TunkRank’s domain name is on their data in FluidDB
    In the query above, the tag name for the TunkRank score is tunkrank.com/score. The tunkrank.com domain is part of the name of the data. With that name comes reputation and trust: if you see a tunkrank.com/score on a FluidDB object, you know it came from TunkRank. Want to put your domain name on individual pieces of data? Send us an email and if you can show us you own the domain, we’ll give you the FluidDB namespace with that name.
  3. TunkRank continue to control their own data
    The permissions system of FluidDB allows TunkRank to control their own data. If Jason Adams wants, he can take permission away from Tickery to read the TunkRank scores. Because FluidDB’s permission system works at the level of the tag, not at the level of the FluidDB object, you get fine-grained control over the pieces of information that comprise objects.
  4. Tickery was conceived independently of the idea of TunkRank scores
    Tickery doesn’t know anything about TunkRank. It happens to have an advanced tab that allows arbitrary FluidDB queries because that’s part of why we built it – to illustrate how other data added to FluidDB objects could easily be queried. Think about it – here we have two applications that were built independently of one another able to enhance each other because their information is in the same place.
  5. TunkRank did not ask for permission to add their scores
    Because FluidDB objects do not have owners, there was no need for TunkRank to ask for permission to put their scores onto the same FluidDB objects that Tickery is using. They just did it. You can too, all you need is a FluidDB user name (you can get one here) and then send mail to api@fluidinfo.com requesting an API password. (FluidDB is still in private alpha.)
  6. TunkRank and Tickery can move at different speeds
    As described in the Tickery for programmers posting, Tickery is using the FluidDB about tag, putting its information onto objects with a fluiddb/about whose values have the form twitter.com:uid:XXXX, where XXXX is a numeric Twitter user id. In FluidDB, anyone can create an object that’s "about" something. The upshot of that is that TunkRank does not have to wait until Tickery adds a user, it can just go ahead and put a tunkrank.com/score onto an object with the appropriate about tag – no questions asked. TunkRank doesn’t care or need to know if the object already existed, or whether Tickery had already put its tags there. Think about this too: here we have two (or more!) applications that are following the same convention, putting their own data into the same database, and each can move at its own speed without regard for the other. There’s no coordination beyond the about tag convention, when new data shows up from an application, it naturally goes to the place it belongs.
  7. Anyone can play – that’s the point
    Other tags can be added to the same FluidDB objects, and can be queried on using the FluidDB query language in Tickery’s advanced tab (or by using the FluidDB API directly). To illustrate, Esteve Fernández and I put esteve/met and terrycojones/met tags onto objects to indicate people we’ve physically met. That data can be instantly (and interestingly!) mashed up with other data. For example, here are the people Esteve is following that he has not met, but who I have met, via the query (has twitter.com/friends/esteve and has terrycojones/met) except has esteve/met. And to show Twitter friends info, TunkRank scores, and our met tags in a single query, here are the people I follow who have a high TunkRank but who I’ve not actually met.

If you’ve read all the way down to here, thanks.

If you were having trouble grasping the point of FluidDB before, I hope these concrete examples have helped (if not, please let us know in the comments). Considering just Twitter, TunkRank, and Tickery as three related web applications, it’s clear that when their data is in the same place – via something like a Wikipedia for data – that it becomes more valuable.

But FluidDB is not about Twitter – the above is just an example of three applications (four, if you count the informal esteve/met and terrycojones/met tags) that are related and which all benefit from having their data co-located. People (and applications) can do more with it – they can search it more easily, they can add to it, they can do things that the original application designers did not and could not have anticipated. This applies to any data anyone cares to add to FluidDB.

Finally, FluidDB does not have the disconcerting (to some) free-wheeling anarchy property of a wiki. While preserving the essential character of wikis: it is always writable and it has an object for everything, it has three important things that a wiki does not have and which make it suitable for use by applications: 1) a strong permissions system (e.g., only TunkRank can add tunkrank.com/score tags to objects, unless they allow others to too), 2) a query language, and 3) typed data.