Varud

Socially Proximate Predictions

Flower

Version Control

I’ve burned way too many hours on version control over the past few months, I just wanted to write a short and sweet post to let people know what’s going on.  First off, there are three valid options for version control these days:

  • Git – Used by the Linux kernel at this point.  A super-flexible system for distributed development.  The one drawback to this system is that distributed development is built right into the system so that it is very difficult to get acquainted with for the casual developer.  I do not recommend this system unlesss the user is technical or the project already exists in Git.
  • Subversion (svn) – I’ve used svn for many years now.  It’s a really fantastic system.  It is used by Google Code (version 1.4.0 btw) for all of their hosted open source projects.  I highly recommend this.  Version 1.5 is probably much better but for this particular type of software, I prefer to follow rather than lead.  I’ll move to 1.5 when it’s standard on Mac and Google.  Larger groups would benefit from going to 1.5 right now because of it’s better merge handling.
  • Mercurial – I didn’t play around with Mercurial much but it looks fantastic.  It’s especially good for Python developers because of the large Python/Mercurial community.  I would highly recommend this package for somebody who isn’t already working with the other two – based simply on what I’ve read and community feedback.

The second large problem is hosting.  I tried to do my own hosting but it’s a real pain in the #$@$.  At first, all is well.  Then, you have to do something weird (like delete and re-add a directory) and all of a sudden you’re out on a limb – wasting time – not getting things done.  Here are the options:

  • Github – Github is hands down the best option for Git projects.  All the open source projects using Git are there and a small fee can be paid for private projects.
  • Assembla -  Lots of people recommend Assembla.  I haven’t tried them but they look fine.
  • SpringLoops – This is a really great svn host.  I’m using them right now.  It’s pay as you go which is a really good option (free for small projects).
  • Svnhub – This is Github for svn.  When this is live, I will definitely check it out.

None of these services are more than a few dollars a month – even with many users.  Don’t waste your time hosting and also don’t waste your time with a half-assed solution from someplace like Dreamhost.  These sites are more than just version control hosts, they also give administrative control, good workflow, project management hooks (to Lighthouse, etc…).

Lesson learned.

Regressive Taxes and NY Bridges

The news this week in NY is focused on the budget deficit for the MTA.  The NY Times City Room has a nice article about the current thinking of the Governor, the Mayor, and the various boards involved.  I agree with this commenter that a toll on the inter-borough crossings (Brooklyn, Manhattan, and Williamsburg bridges) is a bad tax.  This mainly lies around the issues that tolls are inefficient.  40% of the income would go to maintaining the toll.  That doesn’t include the increased waste caused by sitting in traffic, the BQE backing up, and Williamsburg being full of cars waiting to pay the toll.

The best solution is a gas tax.  Increasing the gas tax would cost virtually nothing and it would raise money in a much more equitable way.  The tax would ideally come from all the counties where the MTA operates.  If that is not possible, the 5 boroughs should be where the tax is raised.

The underlying problem of inefficiency in spending is still to be addressed, but honestly, I’m not sure where this waste is.  MTA workers may get paid slightly more than they should, but it’s not over the top.  Every year, the Post uncovers some $1M that was wasted, but that’s the nature of a billion dollar operation.  That’s not waste, it’s just organizational inefficiency – it can be battled but not defeated.  The only area I see waste is in the bus system.  On 23rd street, every morning, there are about a dozen buses pulling up every 5 minutes – each with just one or two passengers.  I presume that most of the passengers were dropped off in midtown but if this is the case, the buses should terminate at midtown and the passengers should take the subway or a local bus.  Otherwise, express busses that are terminating in Manhattan should accept local passengers while in Manhattan – that would be another good option to reduce waste.

NYCTech Guide

In a follow up to my previous post and others’ about the New York startup scene, Gary’s Guide has put together a fabulous central resource for technology companies.  This is a fantastic site, and even better, it’s not in Flash.

I recommend everybody to check it out.

Change.gov, revision control, and Creative Commons

There’s been alot of buzz about Change.gov over the past few weeks (I can’t believe it’s only been that long).  Lawrence Lessig is excited about the use of the Creative Commons license (which we also use) and Tim O’Reilly really wants them to use a version control system.  I like Tim O’Reilly, and he’s made great contributions to the technology community and society at large.  However, Larry Lessig is much more measured in his responses – rightly so.

Using the CC license is definitely the right way to go on the site – it makes it clear to people that the content on the site is public and that there is no hidden value to the information there – that one day a user couldn’t be sued.  It also allows for instant and automatic use of the content (i.e. full redistribution by bots of the content to users behind government firewalls).

In addition to issues of applicability, the use of the CC license is also a signal that Obama wants the entire government to move towards an open by default stance.  This movement was started by Carter and others with the Freedom of Information Act – these are great contributions to a free and open society.

Version control is a separate issue – no less important.  Unfortunately, I think O’Reilly goes too far.  I don’t disagree with anything he says, but his focus is not tight enough.  Just as Lessig acknowledges that the CC license won’t apply to otherwise copyrighted information coming from other departments (yet), the same measured approach needs to be taken with versioning.

O’Reilly wants everything to be shown as a versioned document, specifically legislation.  While that is great in theory, it doesn’t even meet basic tests.  Most legislative disputes are discussed either by informal discussion or in private committee.  The deliberative process needs to be kept secret in order for legislators to horsetrade, bluff, bandwagon, and balance against and with eachother.  This may sound Machiavellian, but it’s important.

Really, there are two applications for revision control.  The first is to document why and how a document changed.  This is what I refer to above and I think is not realistic to implement it – regardless, it confuses the issue.  The second application is to track official and approved changes to a standing document.  This is very much how a proper blog is maintained – or in an old fashioned sense, how newspapers display retractions.  O’Reilly and others need to push for version control on standing documents – where the need is great and the drawbacks are few.

Having solid version control on these standing documents makes changes more transparent and provides accountability to the people.

Banks

One of the first things that even an ultra-light startup needs to worry about is a checking account.  I already had an account with Citibank, so I figured I should go with them.  That way I could manage my personal and business money easily.

Citibank does not work that way.  In order to access business funds, one has to log into the business interface.  This thing must have been designed in 1998 and hasn’t been touched since.  In addition to a terrible user interface, it loses my cookie every few days so I have to put in a whole slew of information to get back on the site.  They give me a random number generator to get onto the site as well as me having a password – that should be enough for security sake.  Google is smart about these types of things and they actually design systems (like Analytics) for different size organizations.  If I had millions of dollars in my account, maybe the extra hurdles would be worth it.  However, with about $3k in the bank, what’s the point?

Another issue is the $20 monthly fee.  Chase is much better with regards to these issues and I would recommend to people that they consider Chase or BoA before Citibank.  Local banks may also be a good option but I don’t know.

Legal Docs for Startups

I just found the National Venture Capital Association’s page of legal documents.  This is a fantastic resource for the ambitious and cheap entrepeneur.  In the ultra-light startup mode, there is no money for lawyers.  However, that doesn’t mean that the legal framework can be eschewed.  Entrepeneurs should be concerned about the following issues:

  1. Intellectual Property – Make sure that everybody who works on the project signs any IP claims over to the company.  If somebody has some particularly valuable piece of IP that they don’t want to just give up, they can license the IP for free to the company.  That way, they retain ownership but the terms of it’s usage are clear.
  2. Incorporation – Everybody says LLC is great, but Adeo Ressi of TheFunded.com is pretty clear that a C-Corp is the correct option.  Investors don’t want to deal with an LLC because then they would have annual (quarterly?) tax obligations as partial owners.  The C-Corp protects them from that – they only have to worry about dividends and capital gains when they sell.  It’s good to start an LLC just to handle things like buying your computers and stuff until you’re ready for a C-Corp.  Incorporate.com does a great job.

Everything else is secondary to those two issues above.

They really are “Pipes”

I wasn’t looking for it, but this might be the oldest reference to electronic communication paths as “pipes”.  This history page of the top 100 posts of the BBS era has a bunch of examples like that.

I presume the history of using the word “pipes” in a communication sense comes from the actual use of pipes to talk between two floors in a building or on a ship.  Even as recently as the 40s, talking throug pipes was more reliable for short range communication than electric lines.

Google tries out user rankings

I always wondered when Google would come up with a way for the end user to moderate up and down certain search results.  For example, about.com has garbage with a ton of ads.  Unfortunately, about.com always gets to the top of search results for basic computer queries.

It looks like now Google will address that with these moderate up and down keys next to the search results.  They call it SearchWiki.  They’re pretty explicit about how this only affects one’s own results – but I’m confident they’re just trying to not incentivize SEO black hats from using click farms to moderate up their placement.  In the end, Google will have to consume this information and modify search results accordingly (I hope).

Tax Credits

For anybody in New Orleans, here’s a great post from Chris Schultz about tax breaks for startup investment in there.  Montreal has similar tax breaks for investment as well.  These types of things can really help out an economy although I think they need to be well targeted and they need to have an expiration date.  Otherwise, the government starts getting deep into moral hazard.

NY, in it’s infinite capitalism, has things like NYC Seed for which we just applied.  They want to make money though, nothing for free :-)

There is a group called ITAC which will help out all sorts of technology companies in New York City with getting government money in addition to help with business plans and such.  I met the head of that group a few Friday’s ago, Franklin Madison.  He seemed like a very nice fellow.

This fantastic post was submitted by David Rose on the NY Tech Mailing list, although I can’t find a link to it so here it is in full.  It really sums up what is needed in the city, coordination of all the resources available.  I don’t think this is anybody’s fault – it’s just that there’s so much going on that there really needs to be a solid team of people working on putting it all together for people to read and understand:

The Council of the City of New York
October 27, 2008

Committee on Economic Development jointly with the Committee on Small Business
Oversight: Encouraging the Growth of the City’s Technology-Based Business Sector

Testimony of David S. Rose, Chairman of New York Angels

Good afternoon. My name is David S. Rose, and I am a serial entrepreneur-turned-early-stage-investor who has been founding and financing technology companies in New York City since 1983.  I testify today as Chairman of New York Angels, the largest and most active organization of professional technology angel investors in New York City. Our 75 members, including many of the best-known high-tech investors on the East Coast, have invested over $35 million into more than four dozen early stage technology companies during the past six years.
Read the rest of this entry »

Events in Django

Being that I am creating a site tightly coupled with events and calendars, I need some event functionality.  There are three options:

  1. The event subsystem from Django Basic Apps
  2. Somebody’s self-maintained event app
  3. And … the event system that’s in Pinax

Option 3 really is great.  What a great app written with some really good methods including Periods and Relations.  I’m very excited to use it.