Tuesday, November 25, 2008

Do you Suck GoGrid? Come On!


Well, although I was a bit skeptical about the fact that GoGrid would have maliciously or even accidentally removed our root user from our MySQL user table... I'm a bit more curious today.

I awoke to an email from our eng that our root user had been removed again from our MySQL table. I have the highest regard for our eng and if he's pissed about this and thinks it's an issue with GoGrid, I'm on his side. He and I are the only ones with access to these boxes. And I don't touch them.

So what's the deal? I called GoGrid and spoke to Josh, the tech support guy, who is fast becoming a friend of mine. He's incredibly helpful, but he's working alone today. Which isn't doing us much help. I know they're a startup so I'm giving them the benefit of the doubt. For now. He's looking into it for us.

I have an inkling about what's going on. They have an outsourced support team. With full access to our boxes. I spoke with them two nights ago and unimpressed is putting it nicely. I'm starting to wonder if, while looking into our case, they changed the user yet again.

If we were fully live, I'd be pissed. Fortunately for GoGrid, we're not. But if this happens again, here we come Amazon EC2.

Monday, November 24, 2008

Backup Plans. A Must! Assembla and GoGrid At Fault



We were thrust into the unwelcome position of creating plans for alternates for two of our services. Neither was at our urging, but it's probably a good thing we encountered these situations early on.

The first was our svn respository. For those unfamiliar with coding, it's really just a place to store all of our code so we can reach it at all times. It also lets several team members work on the same code at the same time, managing all of the different versions. It should be mandatory for any coding project. Even those with just one person. Because this repository stores history too. So if you make a change, then a few months later determine the change was a mistake...you can just unwind your changes.

We were using an online service called Assembla. At first, I have to admit, I was surprised it was free because it was such a kickass service. That didn't last long though. A message was posted on their blog about changing their free service to a subscription model. If we wanted it to remain free, we'd have to allow our code to be visible to the public. Naturally, this wasn't an option. Unfortunately, we don't read their blog. Why should we read the blog of an svn service? I don't think anyone else read it either, because a few weeks later, when they realized this, they sent emails to people using their service, advising them of the changes. Great timing as we were about to push out our alpha. We need our code. In SVN, readily available.

We weren't the only people pissed about this. I'd be fine going into their service if I knew I had to pay. But they advertised a free service, got our business, then decided to flip a switch. Comments on their blog skyrocketed. From both sides of the argument. One side said "hey, it's a good service, a charge is fine". The other, "we felt deceived, we don't have a choice now that you have our code, and there's no way to be grandfathered in since we helped build the product and community".

The flaming continued. And in several instances, their CEO, Andy Singleton, vociferously called out several members, reciting personal details, and hurling insults. I really couldn't believe it. Definitely not the way to conduct yourself. And not the way to make me feel comfortable about having my code on their site. What if he got pissed at me? Would he just steal my code or "accidentally" make it public?

I wrote. He responded. And told me how trite it was for me to complain. How I should just stop serving pizza once a month for my team and pay for the service. Yea, that's the way to my heart. Let's see. I believe it's $2/user/space/month. And $3/Gb/month for space. Since we have 4 team members and 3 spaces at the time. Hmmm...if my math is correct, that turns out to $24/month just for our users. Then the space. Probably be another $2 maybe. So $26/month. And what happens when we have a few more eng's to add on? Like we do this week. We are a bootstrapped startup. Any costs we can save, we will. And $32/month is not worth it. We have a small project. We don't use it. They'd be making probably $30/month from us. So we moved our repository to our own server and are using Redmine, which I'm incredibly happy with.

The next backup service issue has to do with our servers. Yesterday our servers on GoGrid were mysteriously rebooted. According to GoGrid, there was a node outage. And since our virtual server sits atop this node, we were affected too. Then the root user entry in our user table in MySQL was removed. I have absolutely NO idea how these could be linked. But it is strange. I just got off the phone with GoGrid. They're definitely bright and proactive, but this outage isn't consistent with their 10,000% uptime guarantee SLA. They'll be sending out an RFO (reason for outage) in the next day or so. The question remains, how reliable will they be? They're a startup too - can we trust them? I always like to give the little guys a chance. As long as it doesn't impact business, I think we'll be ok with them. For now.

UPDATE: GoGrid has been great. They just called me back to talk to me more about the issue. To ensure we're covered under their SLA, etc. Good customer support.

Lesson: Have a backup plan. Or, at least think about one ahead of time. And don't screw your customers.

Friday, November 21, 2008

It's OK to be Wrong, I promise


My business partner and I have written and re-written our company presentation numerous times. I've never been particularly happy about it. Because I just couldn't nail down our pitch - our objective, and that's what starts the whole presentation off. Part of the problem is the depth and breadth of our involvement in our company. It's hard to rise above it and get an objective, broad overview when you spend most of your time underneath it all.

Yesterday, we had an invaluable meeting with Jane Lindner and John Voltz of Jane Capital. Jane is a friend of my mom. Which furthers my advice of reaching out to your network - parents, friends, co-workers - because you never know who they can put you in touch with.

We went through our presentation with a fine tooth comb and got some great advice. One of the keys from this meeting, aside from the tips for our pitch, was a comment Jane made to us at the end. She said, one of the important characteristics about the two of us is our willingness to accept constructive criticism. She says that she too often runs into bullheaded entrepreneur's who think their way is the only way. Rajiv and I realize that we're not always going to be right. And that's more than ok. It's much better to realize that and evolve rather than staying the course and heading towards potential failure. Fail early and fail often.

Show humility - it's really the least you can do.



“To be humble to superiors is duty, to equals courtesy, to inferiors nobleness.”
-Benjamin Franklin

“To become truly great, one has to stand with people, not above them.”
-Charles de Montesquieu

“I claim to be a simple individual liable to err like any other fellow mortal. I own, however, that I have humility enough to confess my errors and to retrace my steps.”
-Gandhi

iPhone 2.2 Firmware Update Available Now


Although I have some Vyoo posts waiting in the wings, I just wanted to let people know that the iPhone 2.2 update is out (here).

My iPhone has been hanging quite a bit recently and exiting programs, especially Safari. Hopefully this takes care of the problem.

Additional release notes:

1) Street view
2) Emoticons
3) PodCast downloads from iTunes (wi-fi and cell)
4) Stability (call drops, call failures, crashing)
5) Location sharing
6) Public transit directions (select cities only)
7) HTML email formatting
8) Improved sound quality for visual voicemail

I'm downloading it shortly, if I have any problems, I'll share.

UPDATE: Installed and running smoothly. No problems so far.

Wednesday, November 19, 2008

GMail Skins, GMail Themes Are Pretty Cool


This is turning into a Google blog - but today Google is launching skins, or as they call them, themes, for GMail (here). Some of them are pretty damn cool.

They're rolling them out over the next few days in case you don't see them today. You can go to your "Settings" and then to "Themes" to update your GMail.

I'm not really sure how practical having a busy interface is for mail. While some are pretty basic in Google's typical fashion, some look pretty busy.

The Great Googley Moogely - Google Voice for the iPhone


A few days ago I got an update for the Google App on the iPhone. I had read a few blog postings about the update and the addition of voice activated search. I finally got to try it, and I'm quite impressed. Just speak into the phone and voila...the search happens.

It's pretty damn accurate too. I even tried speaking gibberish into the phone and it came back with what was probably the closest pronunciation to my "rrraaaaaaa" sound. Red. And the search naturally brought back search results for red.

You can refine your searches in various ways, but the most useful is probably the local search tab. A quick search for burritos pulls up my local taquerias, along with a button for getting directions (which opens up Google maps) and a button for calling the location. This pretty much kicks ass. Way to go Google.

While in Florida last week, I used Google Maps extensively. While some people haven't taken full advantage, because they use their phone in their home location, anytime you're in an unknown place or aren't sure what you're looking for, Google Maps saves the day.

I ran errands, got food, found gas and ATM's, and basically couldn't have gotten myself lost if I tried. All while out of town. What's the world coming to?

I wonder what my grandpa would think of all this? I should probably show him.

Tuesday, November 18, 2008

My Grandpa


My last day in Florida was a good lesson in history. I visited my grandfather for the second time this trip. He's 88 years old and full, I mean full, of wisdom and stories from his vast lifetime. From the Great Depression, to college in the 30's, to World War II, and on and on.

He recanted stories of his first airplane ride and how the hull was made of metal piping covered with cloth. He talked about Atlantic City when it was the vacation destination of the world. Now look at it. He spoke about his wild nights partying and picking up women. Yes, my grandpa did. He spoke of his marriage to my grandma, how he met her. He talked about the history of our family and the migration from Germany in the mid 1800's. He talked about his family fighting for the Confederacy in the war. And surprisingly, it was the one time he admitted to being on the losing side of something. He spoke about the transition from the Great Depression to wartime prosperity, to the sexual revolution, to civil rights and beyond. He's a living history book.

He had story after story after story. When you grow up with your grandparents, you take them for granted. You don't take their gifts for granted, because those are always awesome, but you take who they are for granted. I always took it for granted that my grandpa grew up in the 1920's and 30's. That he had a direct connection to people born in the 1800's - which to me, seems so so very far away. He is my living connection to my family history and I never really understood the significance.

We're but a blip on the radar of life on this earth. But within each of our families, there are lifelines that tie us to the past. Talking to him about his life is one of my few chances I have to get my family history lesson face to face - along with his take on the progression of our culture. He has far more experience.

I came to realize that as different as we are, we share a lot of commonality. He's a staunch Republican (who thinks I'm a liberal). I'm a staunch middle of the roader. But certainly not a staunch Republican. I like to think I fall somewhere in between. I often say, because it's nice and cliched at this point, that I'm fiscally conservative and socially liberal. But really. Why do we have to be on one side or the other anyway? Before I go off on a tangent, my point is that I share a lot of the same perspectives he has. And it's a pretty cool thing to figure out after all these years.

If you haven't spoken to your grandparents. I mean, really sat down with them, regardless of whatever differences you have, it's an incredibly rewarding experience to learn about your past. What brought you here. Where your family has been. And to also let him know where you're going, so he doesn't lose all hope, like most grandparents, on the current generation.

Thanks Grandpa!