Glad you could make it!
I’ve converted my old blog (old as in circa 2010!) to a new one. The main change was moving the pages from being hosted on the Dragonfly web framework (written in newLISP) to my very own newLISP on Rockets framework (which, as you may have guessed, is written in newLISP as well!)
The primary reason for this change was to get all my websites on a single platform and to "eat my own dogfood" in terms of the newLISP on Rockets framework. Also, the Rockets framework is based on Twitter’s Bootstrap and thus has a nice responsive design that works much better on mobile devices. Go ahead, try it on your phone!
Not everything is converted yet (the user profile page, for example) and there may be some bugs over the next few days as I work all the kinks out. Please let me know if you have any issues.
Enjoy the new site!
I know I'm late to the party on this, but I'm really loving Amazon's EC2 cloud computing service. I'm saying this as a guy who loved to build servers with my bare hands, often blessing them with my own blood after touching a sharp corner. I literally bled for these things. Now, I'm not sure I ever need to set up my own server again.
My startup project, JetCondo, runs on a "Micro" instance, which is a paltry little thing by server standards--a whopping 8 GB of storage space and 612 MB of RAM, and whatever amount of CPU they feel fit to dribble out. Still, it's faster than my home server ever was, and it's cheap. At current rates it works out to about $10 a month. My home server ate up about $7 per month just in electricity.
But the value you get out of that extra $3 is immeasurable, especially for a startup. Today I wanted to create a new server instance so that I could start building a web application for my very first consulting client. I had almost resigned myself to going through the half-day dance of installing Ubuntu, configuring Apache, setting up newLISP, etc... and then I realized: hey, wait a moment! I can just copy my existing instance, can't I?
Turns out you can. You have to save an image of your current system first, and by default this shuts off your running server while it makes the copy (it's kind of scary when this happens!) but in a couple of minutes it's back up and running and now you have your own personal image file for your server. Then creating one is a matter of a right click, selecting "Launch More Like This", clicking Next a couple of times, and choosing your own AMI image from the list of "My Images".
In a minute or so you have cloned your server, and it's exactly the same as the one you had. It's like magic. Instead of half a day's work it took a few clicks and a couple of minutes. And of course you can launch as many as you need or even script it so that new instances are launched as needed given incoming traffic, but that's something for the future. Right now it's just cool to report that it works, and it's a great time saver.
Launching a startup on your own can be quite lonely at times.
At this delicate, embryonic stage, you don't even really want to discuss what you're doing with anyone, except maybe your wife. It's too early. None of the stuff is ready yet, it's all existing in your head, and there are a billion and one things to do to get it ready.
I've found a little solace in reading other startup blogs, although you start to realize just how greatly the odds are stacked against you. Most of these startups fail for one reason or another.
So you have to be okay with the idea of failure. Personally, I'm completely fine with it. I've got a set deadline and a set of things I want to accomplish in that time. After that, I'll be going back to more traditional employment, barring the extraordinarily unlikely chance that I'm bringing in enough money from the startup that it's not necessary.
It's more of a personal thing with me, a chance to prove I can do something and create something great on my own.
But it's definitely lonely sometimes.
I'm trying to expand my efforts in book marketing, and much of that involves fumbling around trying things at random, hoping that something works out.
To that end I've started a blog at GoodReads, which you can read here: http://www.goodreads.com/author/show/6479441.Jeremy_Reimer/blog
This brings up the number of blogs I have to three: my personal blog, the newLISP on Rockets blog, and now my GoodReads blog. Once JetCondo.com gets going that will increase to four. It seems a bit weird, like casting a wide net in hopes that someone reads at least ONE of my blogs, but in truth I never felt that comfortable talking about everything in one place. I have a lot of things on the go, especially now, but they aren't all connected. People interested in my science fiction probably don't care too much to learn about newLISP, for example.
So after the end of this week, I might actually stop blogging every day on my personal blog, and alternate between the the three instead.
The final part of my semi-review of The Lean Startup deals with the lesson about Engines of Growth. Startups need to grow or they run out of money and die.
There are basically three engines of growth: Sticky, Viral, and Paid.
The Sticky engine relies on some sort of lock-in to keep customers using the product. For example, people would stay on Facebook because all their friends and family are there. Another example would be a proprietary database or file format that people would stick with because the cost of switching would be too great. You don’t have to have 100% stickiness, because you can still search for new customers, but the rate of gaining new customers has to be higher than the rate you are losing them.
The Viral engine is the trickiest but perhaps the best bang for your buck. Basically, users tell friends and family about your product and you get new customers via word of mouth. Basically you need each customer to bring in more than 1.0 other customers to have steady growth. If customers bring in only one other person each, growth will be steady but slow. Lower than 1.0 and growth will slow down and eventually stop. This number is the viral coefficient.
The Paid engine is the most traditional: you buy advertising, and if the cost of gaining a new customer via advertising is less than the money that customer brings in, you’ll make a profit. Traditionally, companies fed that money into more advertising, in a kind of feedback loop that ended up with national ads in every magazine and on every TV show. This is how big-name brands like Coke and Tide became popular, not because the product was actually that good--in fact, the two are pretty mediocre--but because the advertising was very effective.
The Viral engine is probably better for startups who can’t afford a lot (or any) advertising, but the challenge is that you have to build a compelling product that people will actually like so much that they will evangelize others. Tivo made good use of this method, as do a lot of web-based startups.
The important thing to remember is that no matter which engine you choose, you need to be able to measure whether or not what you are doing is working. So for the Sticky model you need to know your customer retention rate and your new customer acquisition rate. For Viral you need to know the viral coefficient. Finally, for the Paid model, you need to know how much it costs to get a customer and how much each customer brings in.
It sounds simple but a lot of startups don’t bother to analyze all these things and thus end up growing too slowly or not at all.
Speaking of startups, I did a little work today on JetCondo.com, installing the Solr 4.0 database. It’s not much but it’s something. I also made a new comic. Go read it!
My free short story Starfarer hit 200 downloads today, after being available for two weeks.
It’s not much, but it’s more people reading my fiction!
On a slightly different scale, my article on Haiku hit 124,555 views in three days.
If only there was a way to connect readers from one category to another... hmm...
I’m in the process of installing Solr 4.0 on my web server. This is a tool I used at my former job to search things really quickly in interesting ways. This is something I want JetCondo.com to be able to do, so it’s a hurdle that must be overcome.
I met with another ex-coworker (an early member of the ever-increasing club of people laid off by my company) yesterday and we had an interesting chat about software and selling apps and the web and how things might be monetized. There are a lot of options, but my primary concern is how to make advertisers happy while not making users unhappy with spammy, intrusive ads. I was reading through an ancient Penny Arcade post (circa 2003!) and Mike Krahulik was talking about how all the advertisers wanted flashy, animated, pop-up ads, but he personally hated them and refused to sell ads like that on his site.
Here’s the kicker, though: the ads on his site got more engagement and more sell-through than the flashy ads on other sites.
Because the ads on his site were for things that people who were on the site already were actually interested in.
There’s a lesson there, somewhere...
Eric Ries is not very fond of what he calls "vanity metrics"-- numbers that show things going up or down (like hits on a website or number of new customers per month) because they don’t actually measure what was done to cause the change.
This leads to people making the following conclusions:
In my experience, when the numbers go up, people think the improvement was caused by their actions, by whatever they were working on at the time. That’s why it’s common to have a meeting in which marketing thinks the numbers went up because of a new PR or marketing effort and engineering thinks the better numbers are the result of the new features it added.
Unfortunately, when the numbers go down, it results in a very different reaction: now it’s somebody else’s fault. Thus, most team members or departments live in a world where their department is constantly making things better, only to have their hard work sabotaged by other departments that just don’t get it.
<p class='p2'>He suggests two solutions to this problem, both of which need to be implemented. First, people need to work in cross-functional teams, not traditional departments like marketing or engineering. Second, metrics need to actually give real information about what caused the change. Primarily, he suggests using A/B testing on the product (giving different versions with and without a new change to different groups of customers).
For the entrepreneur working with a small team of a few (or even one!) the first solution is irrelevant, but the second could prove invaluable.
In other news, I made a new comic. Go read it!
I’m reading Eric Ries’ The Lean Startup and I’m surprised how many good lessons there are inside, not just for entrepreneurs, but for basically every company.
Take this quote:
A few years ago, a team that sells products to large media companies invited me to help them as a consultant because they were concerned that their engineers were not working hard enough. However, the fault was not in the engineers, it was in process the whole company was using to make decisions. They had customers but did not know them very well. They were deluged by feature requests from customers, the internal sales team, and the business leadership. Every new insight became an emergency that had to be addressed immediately. As a result, long-term projects were hampered by constant interruptions. Even worse, the team had no clear sense of whether any of the changes they were making mattered to customers. Despite the constant tuning and tweaking, the business results were consistently mediocre.
<p class='p2'>Does that sound like your company? It sounds exactly like my former company! That’s basically all we did for the five years I was there. Management always blamed the engineers and kept meddling and changing procedures, seemingly at random, when the problems lay elsewhere.
Definitely something to think about.
It’s much more important to spend your time building your actual product. Logos and color schemes and font choices and stuff are fun, but they shouldn’t take time away from actually, you know, making something.
Still, it’s nice to have an image to focus around. I doodled something that looked like a flying building today when I was writing mockups and design diagrams for JetCondo.com. (Those who know me know that I always HATED planning and writing documents, but it turns out that it wasn’t that bad)
Oh, I also updated the server from Ubuntu 10.04 to 12.04 LTS, which was somewhat harrying (I always worry that the Internet will drop out halfway through and I won’t be able to SSH in again, but everything was fine). This was a big maintenance task that I had been putting off, so it’s nice to have finished it.
Anyway, here’s the logo.
Tomorrow the plan is to put some real rockets on that thing.
I'm a writer and occasional programmer. I write science fiction stories and novels.
I am the writer for the upcoming documentary series Arcade Dreams.
I also write technology articles for Ars Technica.
I'm the creator of newLISP on Rockets, a web development framework and blog application.