Djangocon.eu presentation slides

Best of both worlds

Deploying Django projects with Capistrano and Supervisord

While Django is a great Web framework, there are places where Python ecosystem falls short of its competitors. However, nothing prevents us from picking the best parts to create a mixed environment that is productive and nice to work with. I will present my approach to deployment of Django webapps controlled by supervisord, using Capistrano – an automated deployment tool belonging to the Ruby on Rails ecosystem – and my capistrano-offroad package that adapts Capistrano for non-Rails applications. I will also talk about release management process, based on the Git version control system, upon which the deployment setup is built.

Read the slides here or get the PDF — more detailed articles on topics outlined here will follow. For now, nice summary by Reinout van Rees is available here: Deploying Django applications with Capistrano and supervisord

Update: Movie with the presentation is now available at Djangocon’s blip.tv.

Share and Enjoy:
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Reddit
  • Slashdot
  • StumbleUpon
  • Technorati
  • Twitter

Unedited CEO Letter about First Angel Presentation

[My team's been bugging me to publish this email on our blog.  I have reservations about doing so, because it wasn't written for public consumption.  On the other hand, it does give an unvarnished view of a real Angel meeting. Overall, the educational value outweighs the risks--I hope.  This email was written about a month ago.]

All,

So I thought I’d share the details of the funding meeting I had today–the good, the bad, and the ugly.  First some context.

This all started when I realized that I really shouldn’t put any more money into SetJam.  I’d already put in twice as much as I had planned, and I remembered (from playing poker in Vegas!) that one of the biggest mistakes players make is to forget the concept of “sunken costs”.  This economic principle says that even if you have a million dollars invested in something, if it is cheaper to throw that thing away and do something else entirely, you should do so.

It’s very hard for humans to do this.  Coders will continue to code in a direction they know is wrong, just because they’ve already put SO much time into it they can’t bear to throw it away.  Designers do this, so do investors.  I realized that I was susceptible to this with SetJam, so I made the decision that if I couldn’t get outside money in, it probably wasn’t worth the investment.

I went to the Chairman of the New York Angels to get advice as to the proper path forward.  I thought the rational choice was to try to raise enough money to validate SetJam to the next round of financing.  This is the $100k I wrote about earlier.  I also convinced him we should get together a small group of angels we both know, try to get them interested, and hope that a few of them would contribute $25k.  He agreed.

We decided the best time would be after the regular monthly meeting for the New York Angels.  Two days before that meeting though, one of the normal presenters had to drop out.  We both decided that it made sense to go ahead and take their spot and present to the whole group.  That meeting was this morning.

The first thing I noticed when I arrived is that the New York Angels were FAR fewer than they used to be.  It used to be a group of 75–I saw maybe 30 people there.  It was pretty clear that the economic disaster of the past year had taken its toll.  There was lots of talk about recruiting new members and for existing members to remember that they were there to actually write checks occasionally.  Not a very auspicious beginning.

Typically the process works like this.  5 companies present, and are then asked to leave the room.  The angels talk about problems with each of them.  Interested investors then raise their hands, the names are collected, and if there is enough interest a “due diligence” session takes place a couple of weeks later, where the investors ask the “hard” questions and hopefully you get a few to invest.  Actually getting the investment done often takes months.

As you know, we don’t really have that kind of time, and I really didn’t want to be tied up raising money right now.  Not to mention, at this stage, we may very well have a hard time answering the “hard” questions.  I did a different kind of presentation.  I tried to sell them on “us” instead of “it”.  “It”, SetJam, is a little hard to sell right now.  “Us”, SetJam is something I can really believe in.

I really tried hard to sell us.  It was more like a old country revival meeting than an investor presentation.  I ended the presentation by saying that David and I were going to be doing an “impromptu” due diligence session after the meeting and that anyone interested should join us.  I said we wanted to close things up then and there, so people should come ready to invest.

I was the last company to present, and we were all ushered out of the room.  During that time, all of us entrepreneur kind of hang out talking, not really sure what we are waiting for.  After about 45 minutes, angels started filtering out of the room.  It’s an awkward time because you’re not sure what to do besides watch them come out.

After a few minutes, David, the Chairman of the New York Angels, poked his head out and asked me to come back into the room.  This is very unusual.  Of course, you can always fantasize that everyone was so blown away by your presentation that the only problem is that you need more investment.  I’ve learned that fantasies are just that.

Sometimes they aren’t though.  As I walked in, there were still about 12 angels in the room milling about.  David said that the $100k would be no problem, but that everyone agreed I needed to raise more money.  This is a very good thing to walk into.

After conferring with about 5 of the angels, it was clear that though everyone thought SetJam should raise more money, that raising more money would meaning spending three months trying to pull a round together.  Then someone had a rather unprecedented idea.  Since there were about 15 angels who were interested, why not have everyone commit $5-10k on the spot with NO due diligence, and then deal with the bigger round later.

Everyone thought that was just a swell idea.  One of the angels just started calling around to the other angels in the room–”Bob, you willing to commit $5k on the spot for SetJam?”  “Phil, how about you?”  One by one all of the angels agreed.  The angel who’d led the rally collected names and amounts.  The total was somewhere around $100k, but David felt that there was more money around from people who had left already.  He agreed to tally this all up and to cap it at $200k for now.

A few take aways:

1.  There were no “checks”, so it’s possible everyone will regain their sanity once they get home and we will raise nothing.
2.  We likely will raise our $100k and possibly more.
3.  We now have about 10-20 very smart and very connected people who are (or soon will be) financially involved with SetJam.

The biggest takeaway is this though:  This team earned that investment.  If it weren’t for everyone working on SetJam because they care about working with great people to build something of real value more than just taking home a paycheck, this would never happen.  People believe in that kind of commitment and are willing to back it.  You all are the reason we’re going to get a chance to make SetJam into something real.  Congratulations!

[Note: We eventually had to cap the note at $275k.  We also just released a new redesign of SetJam, you should check it out here!]

Share and Enjoy:
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Reddit
  • Slashdot
  • StumbleUpon
  • Technorati
  • Twitter

The New TV Stack: How to Watch Internet TV on your TV Set

I’ve spent the weekend preparing a presentation for SetJam’s prospective investors.  One thing I’ve had to define was where SetJam fits into the “New TV Stack”, that is, the collection of technologies, products, and services that enable the New TV experience.  Since everyone I talk to seems a little confused about how all the various components fit together, I thought I’d blog this out.

Since this can get a little complicated fast, I’ve created a simple diagram I can reference:

Picture 5

The Remote Interface

Picture 6

The first component of the New TV Stack is the “Remote Interface”.  It’s the thing you actually hold in your hands to control your TV experience.  The first set of Remote Interfaces belong to the dedicated “TV Boxes”–those companies like Boxee, Roku, and Tivo that make a box specifically designed to bring online-TV to your home over your existing broadband connection.  Each of these TV Boxes has their own proprietary remote.

Roku’s is the simplest:

roku-player-review

Tivo’s is the most like a traditional remote:

tivo_remote

And Boxee has added a (much needed) keyboard to theirs:

D-Link-Remote-Keyboard-Layout-ZACH-2-1024x660

The next Remote Interface is Apple’s.  They’ve been pushing the iPhone (or iPod) “Remote” app as the default remote for their TV experience.  It’s tightly integrated into Front Row, which we’ll discuss more when we get to software.

The TV manufacturers who have built in Wi-Fi provide a standard remote; whereas, the “Open” or Internet platform uses a keyboard with a built in mouse or track pad.  My favorite (and what I use) is the Di Novo Mini (works for Macs and PCs):

dinovo-mini

I’ve also included the “Tablet” [edit: now we know... the  iPad] with a question mark.  This is part prediction and part wish, but I believe a tablet is the BEST remote interface for the TV.  If the tablet would mirror EXACTLY what’s on your TV screen, and enable you to manipulate those elements locally (while turning into a full keyboard with a simple touch), I believe it could finally be the the Remote Interface that finally makes the Internet fully usable on the TV.

Hardware

Picture 7

The next component of the New TV Stack is the hardware that enables you to connect your broadband Internet connection to your TV.  Not surprisingly, the dedicated “TV Boxes” each have their own box.  Tivo’s is the most versatile, as it acts as a DVR as well as an Internet connected device.  Roku’s looks like a traditional set-top box, and the Boxee Box looks like a half submerged cube (arty, but of dubious practical value):

Boxee-box

Apple has the Apple TV.  The Apple TV is essentially a cheap mac that’s restricted to the “Front Row” interface, which I’ll discuss more when I get to software.

Most of the Internet-enabled TVs have built-in Wi-Fi.  This seems like a good idea at first, but hardware gets out of date MUCH faster than screens, so I’d hate to have to upgrade my TV every 2 years!

The Open or Internet platform just uses a regular old PC or Mac that hooks to your TV through VGA or DVI to HDMI.  There are a number of PCs designed to fit normally in the living room (I use a Mac Mini), and they have the obvious advantage of being upgradable, just like computers have always been.

Software

Picture 8

The software that controls your New TV experience is perhaps the most important piece of the stack in my opinion, and really separates the platforms.  Each of the dedicated TV Boxes has their own proprietary software.  Boxee’s is the most open and easiest to develop for, followed by Roku, and then Tivo.

I’m not a huge fan of any of them for two reasons.  First, unlike the web browser (my development platform of choice), they control too much of the UI experience.  It’s very hard to develop any kind of new interface because all the key functions are controlled by their software.  Second, I don’t want to have to build three versions of my app.  The Internet has solved this problem basically, and I don’t like it being reintroduced just because I’m moving to a larger screen.

Apple’s Front-Row is a pretty nice interface, but it suffers critically because they control what apps are on it.  I can’t see a closed platform ever winning in this space:

whatis_selection20091014

The TV manufacturers generally use Yahoo’s “Connected TV” platform.  Technically it is open to application development, but we’ve only heard nightmares about how hard it is.  They did release a new version of the platform at CES, so it might be easier now.  Regardless, it is yet another platform we would have to develop for.

The Open platform of course just uses a web browser or the OS of the PC you choose (Windows or Mac).  This has the obvious advantage of bringing the power of all your favorite Internet or desktop apps to your TV immediately.  Some people ding it because these apps aren’t designed specifically for the “lean back” experience, but as I said earlier, I really believe this problem will be solved at the Remote Interface level–maybe with the new Mac Tablet!

Discovery

Picture 9

The dedicated TV Boxes each have their own discovery software.  They are in general, pretty poor in my experience–particularly since they are limited to the content that has been developed for their platform.  Some independent app makers have ported their discovery apps to these platforms, but they have to adhere to the TV Boxes often rigid UI and so end-up feeling a bit like a Franken-app.

Apple’s Front-Row is beautiful (with heavy use of “cover-flow”), but it’s also ill-suited for the massive amount of content available over the Internet.  Of course, since you can’t access that content on your Apple TV, I guess you don’t really need to worry about it!

The discovery tools for Wi-Fi enabled TVs, as you can only imagine, are horrific.  These are the geniuses who’ve made it take 15 clicks to change the aspect ratio on your TV for years, so you can only imagine the tortures they’ve invented to enable you to discover their limited online offerings.

Obviously, I’m HUGELY biased toward the Open platform when it comes to discovery, but let’s face it, the Internet has been designed to navigate nearly limitless content for about a decade now.  Surprisingly, Google (or YouTube) aren’t the best sites for discovery (except for short-form, user-generated content).  SetJam and our competitor Clicker both deliver significantly better experiences for premium content (with SetJam focused exclusively on premium content).

As I’ve detailed elsewhere, SetJam focuses on our “Time-to-Watch” metric, which measures how quickly we get you to your show.  Because of this, it feels much more like a light tool (think Google) designed specifically for TV.  Clicker is really building an entertainment portal, so when you search there, you are much more likely to stay there (think Yahoo!).

Upcoming SetJam TV Listing Page

Content

Picture 10

Content is of course the end of the New TV Stack, and what we really care about.  All of the platforms are limited by what the content providers will make available online, but that content-base is continually widening (about 90% of current TV shows are available and most movies come out about the same time as the DVD is released).

Some are available for Free with commercials, but the vast majority (about 80%) are only available to purchase (on Amazon or iTunes) or through a subscription (Netflix, Comcast, or Epix).  The subscription model is gaining the most momentum, and at SetJam, we’ll be integrating 7 new subscription services this spring alone.

The dedicated TV Boxes with proprietary software are all limited to the degree that they’ve been able to integrate online content sources (Boxee has the widest content, since its platform is the easiest to build on).  Apple TV is the most restricted (because of all the platforms, they are the only ones who sell content and therefore have interests to protect).  The Wi-Fi enabled TVs are limited by their difficult development environments, big company reaction times, and poor discovery software.

The good old Internet, of course has the widest range of content available.  The biggest problem is that there is so much to watch, discovery become a problem.  The good news is that the Internet is the most open of all the platforms, so the development of discovery apps is moving quickly.  We here at SetJam, along with dozens of other companies, will continue to work at this problem in the coming years.

Conclusion

Which New TV Stack will eventually win is an open question right now.  Likely there will be many winners, as different people will gravitate to different experiences.  Those who want an old-fashioned remote experience will probably buy one of the dedicated TV Boxes, an Apple TV, or take advantage of the new capabilities of their existing Set-top boxes.  Those people who don’t want to buy any hardware will probably use whatever their TV gives them.  Those who are slightly more technical and want the broadest content, will likely hookup a PC to their TVs.

One thing though is for sure–TV will never be the same, and from what I’ve seen to date, consumers will have more choices and more power over their TV experience. That’s something we can all appreciate!

Share and Enjoy:
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Reddit
  • Slashdot
  • StumbleUpon
  • Technorati
  • Twitter