Cornify is here

Ok, I had to get this on the site.  Cornify is the best thing since sliced bread.  This is the hot micromeme of the month ...


[UPDATE] Checking it out at Twitter is really interesting. I think Clay Shirky was the first to really get it out there 2 days ago. It's fun to see something this simply happy to make a move in the community. It's also cool that it starts with a pony

This is the next Great Depression

Ok, it's official.  At least as far as New York is concerned, it's a Depression - yes, with a capital 'D'.  Let me count - 1, 2, 3 people I can think of off the top of my head no longer have a job.

The first one worked at Goldman Sachs and CSFB doing Mortgage Backed Securities - I guess that was a foregone conclusion :-)

The second was doing journeyman architecture for a financial company.  He loves architecture but he'd really do any job that requires a brain and gives him a reliable paycheck.

Now that I think of it, I know an actual architect who lost his job as well.

Oh, and the third person is a Senior Windows Systems Administrator.  That's a skill that should still be in demand even in this environment - although he was just laid off with zero severance.

If anybody needs one of these people - send me a line.

The terrors of the deep

I just had to include an excerpt from Moby Dick.  At this point in the book (Penguin Classics p. 453) one of the young negro boys named Pip is sent out onto one of the boats as an oarsmen to chase after a whale.  While on the boat, he is tossed overboard and is forced to keep himself afloat on the vast ocean for some time while all the other boats are off in the distance.  Being alone in infinite space has a special affect on the boy:

"... Pip's ringed horizon began to expand around him miserably.  By the merest chance the ship itself at last rescued him; but from that hour the little negro went about the deck an idiot; such, at least, they said he was.  The sea had jeeringly kept his finite body up, but drowned the infinite of his soul.  Not drowned entirely, though.  Rather carried down alive to wondrous depths, where strange shapes of the unwarped primal world glided to and fro before his passive eyes; and the misermerman, Wisdom, revealed his hoarded heaps; and among the joyous, heartless, ever-juvenile eternities, Pip saw the multitudinous, God-omnipresent, coral insects, that out of the firmament of waters heaved the colossal orbs.  He saw God's foot upon the treadle of the loom, and spoke it; and therefore his shipmates called him mad.  So man's insanity is heaven's sense; and wandering from all mortal reason, man comes at last to that celestial thought, which to reason, is absurd and frantic; and weal or woe, feeds theirs uncompromised, indifferent as his God.

I'm having trouble dissecting the final sentence.  It appears that Melville is saying that sensing the incomprehensible workings of the other world is akin to madness.  That the rational mind knows to leave well enough alone and simply keeps a steady course away from those corners - indifferent to them as God is indiferrent to us.  It's a powerful statement not only of abandonment on the one hand, but faith in the other.  The ship does come to rescue Pip, and although there may be indifference, God still keeps his "... foot upon the treadle of the loom.

Highly Valuable Advertising Slot ... in your email

Have you ever looked at people's email signatures?  These days, it's very common to have a link to their blog, their Twitter URL, maybe a LinkedIn profile.  In addition, their name is typically there as well - although it's usually redundant since the name is in the FROM field.

Oftentimes, the sender also includes some pithy quote - and if they're l33t, they're using some sort of quote generator to get nothing but the best from the web.

Others put in statements like "Save a tree - don't print this email."  While the sentiment is nice, that's probably not an effective request for the sender (especially since it's usually just a link to some organization trying to boost their membership numbers).

Some people think a bit more strategically.  Since the sender of this email is actually looking for something specific, I'll put in the full quote.  Heck, they might just find their man:

Yipit is looking for an experienced web sys. admin consultant:

We would happily buy you lunch if you suggest the candidate we choose.

Wow!!! He said something really useful.  I don't think there's room for some annoying list of everything you need done in there - but there's room for one.  I really do think, that with all the emails a person sends around in a day, that there's a reasonable chance you'll get a bite.  So, my recommendation for today is for everybody to add a small actionable request to the bottom of their email.  If you're a Ph.D. student say, "I need somebody to read a chapter of my dissertation".  If you're a marathon runner say, "I need a recommendation on a pedometer".  If you're a sailor say, "Anybody have a berth for the 2009 Block Island Regatta?"

I think I'll ask for some investments in

Quoted in a VC slideshow

This is kind of funny.  I was quoted on page 12 of a slideshow produced by the VC group North Venture Partners.  I think what's most amazing to me is that people still have time to write all of this stuff.  I'm thankful somebody is doing it and I hope that somebody also follows my call for a Walmart approach to VC.

Being that it's a Web 2.0 world, I would be more inclined to see something along the lines of but instead of loans and lenders, this would be for shares and investors.  The only truly necessary thing to do on a custom-basis would be to have audited books.  Everything else could be automated including the legal forms, escrow, etc...  For the most part, has already done much of the heavy lifting.

The company that does this would make money by charging a percentage of the investment.  Because investments would be done on a bidding basis, going around the system would be extremely difficult and not efficient.  Minimum bids would be really low (i.e. $100) in order to get traction.  All businesses would have to have a C Corp set up - the site could even force that C Corp to be a Delaware corp for consistency.  The thing I've noticed is that people just want to be told what to do - they don't want alot of custom choices.

The one choice that might need to exist is whether the investment should be East Coast style or West Coast.  That option would probably introduce enough complexity for the VC groups to justify charging their investors for their services :-)

Caroline Kennedy is out - This paper endorses ...

Ok, I don't normally go into politics here, but I think this is important.  Thankfully, Governor Paterson has declined a seat in the Senate for Caroline Kennedy.  She was always a lesser choice and I'm glad he held firm in this conviction.  She would not have been the best person for this state, nor for this country.  We have many gifted politicians from which to choose - she is not one of them.

I think there are two excellent options.  First up is Carolyn Maloney from Manhattan.  She is the first woman elected to her district and generally holds good middle class opinions.  However, she has been holding on to a safe seat for twenty years now and I wonder if a downstater is the correct choice.

Kristen Gillibrand was also the first woman elected from her district.  She graduated Magna Cum Laude from Dartmouth and is an upstater.  She fits all the criteria for a solid choice by Paterson.

I just hope he doesn't choose Cuomo.  Attorney General Cuomo hasn't really accomplished anything as far as I'm aware - he's simply the son of a famous governor who has played all his cards right.  He essentially followed in the footsteps of Spitzer with his anti-capitalist/Wall Street vitriol and kowtowing to the power brokers of New York state.  We can do better than that.  We did better than that by booting the disgraced Spitzer.

So far, Paterson has been my favorite governor ever - I have a feeling he'll continue to impress. Down

I noticed today that is down.  I've noticed this before with sites that are growing but aren't yet "big".  Twitter and their fail whale is of course an obvious example.  What do these sites have in common?  They run MySQL.  I'm a big fan of MySQL and have been using it since version 3.23 in 2001.  However, it simply is not a robust database when scaled horizontally unless you do alot of trickery.  The main problem is that it cannot be clustered without giving up referential integrity.

For those who are unaware, referential integrity is when you have two tables with data that are in lockstep with eachother.  These tables are just like spreadsheets in Excel - a set of columns and a set of rows.  Let's imgine that there is one table for all the desks in a building and one table for all the employees in a building.  Each row in the 'desks' table would have an entry for the location of the desk and who sits at that desk.  Each row in the 'employees' table would have an entry for each employee - first name, last name, etc...  If a database has referential integrity between the two tables, you can never have an employee in the 'desk' table without that employee also existing in the 'employees' table.

Many people say "Good Riddance" when they give up referential integrity.  It obviously takes alot of processing power to maintain those relations and sometimes there's a reason that an application needs flexibility in the situation.  For example, if the 'desks' and 'employees' tables are in the same database as a 'payrolls' table, there could be a situation where we need to be able to deal with the fact that an employee was fired by deleting them from the 'employees' table even though that person has now become a consultant and still uses the desk.  The biggest problem with database design is that as the application matures, business logic put into the database can become outdated and difficult to extend.

However, most modern applications accept the need for deep reliability about certain fundamental data points.  There is typically a situation where you know that you need that integrity and then you're stuck, in the case of MySQL, between choosing that integrity and choosing uptime.

The best solution to this situation is to have multiple read-only MySQL servers and 2 write-only MySQL servers acting as a master-slave.  All typical web requests would hit the read-only databases.  Any logging type requests would be queued for insertion into the master write-only database.  There are 2 of these databases so that one can be dropped at any given time.

Cheers! is back up.

The economy gets worse?

A friend of mine was laid off yesterday.  He worked at a company doing enterprise search services for large organizations.  His focus was on the media industry in NY - which I guess isn't buying enterprise search as much as other industries.

I find this a bit disconcerting.  Hopefully for the city, that company had other problems.  It sounded like they didn't get the VC round they were hoping for and that's certainly an issue.  I'm surprised that a company at that stage wouldn't be cash flow positive.  They had well over 100 people.

If anybody needs work, let me know.  I run across good jobs sometimes.

Wired Awards

I just got this email from the CEO of Crowdspring asking me to vote for them for some upcoming awards.  Here are the links: I really like what these guys in Chicago have done with this idea.  I voted for them and I hope they win.  Crowdspring epitomizes the intersection of crowdsourcing and expertise - which is where things are heading IMHO. 

Here is the link to their post:

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.