Tech Time Got Eaten

Sadly, I did not get my prototype done today.  There were a few reasons — the most glaring is that my limited stock of willingness to debug code on a Sunday was eaten by getting an archaic VBulletin moved from its previous location to one of my VPSes, as a favor to my college buddies.  Nice update interface, very user friendly — a pity about it taking 400 clickthroughs to complete installation (I kept track). 

Still, its done and now the server is hardened so that we don’t get owned by every exploit on the Internet.  I wanted to cry when I saw its previous state — using an outdated PHP and MySql running as root, naturally, with a four letter password the same as the name of the previous site owner.  Sigh.  Suffice it to say I got a lot of use out of rand() today.

On a note at least semi-related to uISVs: I continue to be amazed by how awesome it is to have a VPS over shared hosting, provided that you have some skill in Linux administration.  If you do, totally amazing — I got to hack together that forum without disrupting either of the blogs running on the same machine and I can host them all with admirable performance for $20 a month.  Then I use a second VPS with the same company (Slicehost) to run Bingo Card Creator.  I’m probably going to get a third one to host this project and, if my expectations are correct, it may need to be a little bigger than the 256 MB $20 a month variety…  Hopefully much bigger…  First Prayer of Computer Programmers with Business Sense: Please Lord, send me scaleability issues.

Comments Off

Best App Name Among Sprinters

Don’t Wreck My PC.  While I personally really appreciate the ability to have keywords in program name, because it will be far and away the most common anchor text, for sheer brandability and selling the program, that name just rocks.  (Your program name is also your USP.  Sweet deal) 

I also love the logo — bright and colorful does great things in B2C.  Suggestion: skin the app so that it uses this same color pallete and general style for buttons & etc.  Oh crikey does that help conversions (by about 50% when I made my app look more Fisher Pricey).

Don't Wreck My PC

Comments Off

30 Day Sprint: Houston We Have a Prototype

I’ve been sadly neglecting my blogging duties (long week) but thanks to some Javascript magic inspired by Lightbox I have managed to solve one of the key challenges for the widget itself, namely, how to make them trivially viral.  The key was finding Lightbox Gone Wild, which is like the standard Lightbox used by Bingo Card Creator for displaying screenshots, except it allows arbitrary HTML content in the lightbox. 

I love it when other people do my work for me.

Anyhow, this lets me include a little unobtrusive link on every widget to tell you about it and get the widget source code, which will display the code inline on the target page, both encouraging folks with sites to not be annoyed by the widgets (since I am not siphoning off their viewers) and encouraging spread of the widgets (because you don’t have to drop what you’re doing to learn about the widget). 

As mentioned, I have a prototype — essentially, its the Javascript front-end to generic widget display and virality.  Unfortunately, at the moment, I don’t have the back end ready, which makes the front end difficult to show.  So here is one of my tasks for the weekend: I can trivially get a back end working specific to Bingo Card Creator, which will allow me to code up a Top Bingo Cards widget. and show folks all the spiffy interface goodness with perfectly servicable widget code.  My hope is to have that up in the next two days, suitable for production use by blogging teachers and bingo enthusiasts everywhere.  (Plus, score, it will start driving business value for me even without having the widget creator website up.)

Then I get back to work writing the web application that allows user friendly creation of widgets without having to do the backend in Rails yourself.  I’ll also need all the ancillary stuff — account management, billing, homebrewed analytics to supplement Google Analytics and Clicky (no point in being viral if you can’t tell how viral you are), scaleability, marketing copy, a blog and some evergreen articles to start it off, yadda yadda yadda.

I’m going to be very busy this weekend but I’m loving it.

Comments Off

Convenient List of 30 Dayers

Mike W has banged up a nice chart summarizing who is doing what for the 30 Day Sprint.  Check out the bottom of his blog post.  (I love it when people do things I was meaning to get to… less time typing means more time…. typing.)

On the agenda for tonight: BSG episode, set up local Rails environment, develop first proof-of-concept widget.  (It will read an RSS feed and display the last five articles in a list.  Got to start somewhere…)  I’m also aiming to get to bed a little earlier than usual because I’m tuckered out like crazy for some reason.

Comments Off

Reflection on Development Schedules

This was much easier last time, when I was at the job which got out at 4:30 and has a 20 minute commute, rather than the one that got out at 9:00 with the 2 hour commute…

While I didn’t get anything done for myself today, I did manage to put some of the finishing touches on the best 800 lines of code I’ve ever written.  Sadly the day job owns it so I can’t go around showing it off, but darn, when all six hundred automated tests worked it was a beautiful, beautiful thing.  Its probably one of the few times where I actually got to put my CS degree qua CS degree to use, rather than just using programming skills.

Let’s see, what would have the same complexity.  OK, imagine you own a zoo.  The zoo has many families of animals.  Each family is composed of several individual types of animals.  The zoo has to fill certain exhibits, given constraints like “This exhibit needs at least one animal from the family of cats, one animal from the family of turtles, and two animals from the family of rodents of which at least one is not a rabbit”.  Each exhibit is in an enclosure, of which the number is strictly limited.

Certain animals eat each other, and as a result can’t be placed in the same enclosure.

Your tasks:

#1 — I give you an exhibit and a list of animals the zoo has on hand.  You tell me what animals I can put in the exhibit to satisfy it.

#2 — As #1, except there are 2 exhibits with 1 enclosure and a limit on space, and your solution must be correct for any possible exhibit (and correctly report “impossible” as well).

#3 — Here’s the freaking zoo.  Enumerate all possible states of it.

I’ll admit — I stayed a little later than I was planning not so much because this was urgent to get done today but because I was so close to beating the stupid thing.

Comments Off

Sketches and not much else

After getting out of work at 8 PM (early) and back home at 12 PM (typhoon) I find myself with not an amazing amount of productive energy for today.  I sketched out a few interface screens but don’t will probably trash them before I even get to work tomorrow, so there is no reason for digitizing them at the moment. 

Seen On Other Projects:

I hope folks are following the other 30 Dayers as they’re all worthy of your support and many of them are doing very interesting things.  So far, one of the projects which has really caught my imagination is the poker graphing utility that Steve McLeod is working on — not so much because I like poker or gambling (I only do either in Puzzle Pirates — arr, matey, and I have lost enough booty that way to field a virtual flotilla), but because I’d be interested in seeing how he plans to promote something cleanly in an online field saturated with scum and villany.

Alright, to bed with me — I’m hoping to get to work early tomorrow, leave early, and have a few hours to myself to start cranking out prototypes.

Comments Off

Kickoff of 30 Day Sprint: One Lazy Day

Well, I would like to say that I had a very productive day today, getting down 6 pages of notes, a few hundred lines of code, and 3 great marketing ideas.  That didn’t happen.  What did happen was I got up late, had breakfast at about 6 PM, and then saw a late showing of 21 (capsule review: don’t bother).  But I’m now a heck of a lot more rested and relaxed than I was yesterday, and have a page or two more in the development notebook than I did, which is a modest start to a modest project.

The Big Picture:

Pretend for a moment you’re a small business.  (This should not be a great leap of imagination for most of the people reading this).  You have a niche, full of people who are constantly talking to each other about what matters to them — and, in your ideal world, what matters to them would be what matters to you.  But the world isn’t ideal, and while you have a few dedicated fans out there, they’ve got precious little reason to spread your message and no easy ways with which to do it.

Enter the Internet.  It makes spreading ideas much, much easier than before — anybody can put up a web site, a web site can reach anybody, and the costs involved are so miniscule in comparison to the old way of doing things you wonder if people are being serious.  (I pay about twenty two cents to get my software in front of people.  If you had said that to an AOL exec in the nineties, he would have paid me a few hundred million and told me to print enough CDs to wallpaper every home in Africa.)  But all is not easy in Internet-land.  Because while its gotten easier for you to push yourself, the real trick on the Internet is getting other people to be interested in you of their own accord, and that is tricky.  Seth Godin might say that the problem is getting to care — that in an age of zillion of choices of businesses, products, charities, blogs, etc, you have to find some way to work above the din, some way to get your message out, some way that your fans get heard above the noise.

It’s deeply tricky stuff.  And its a really, explosively big topic.  And I really hate dealing with really, explosively big topics, so let’s zoom in a bit closer to the ground.

The Problem:

On the ground, there is this one small business (or charity or political campaign or person who spends their days writing letters to the editor about the importance of flouridated drinking water, but for sake of brevity we’ll say its a business) with a website.  They put an awful lot of work into the website, and more is happening all the time.  And, wonder of wonders, some people actually like what they’ve done, and once in a while their best stuff — that tech demo, that blog post, the tutorial — makes its way out of obscurity and gets spread around the place.

Linking.  Its the most foundational building block of the Internet. Its so foundational, so ingrained into the soul of us tech folks, that we forget how difficult and limiting it is.  Its difficult because it requires that you master a special form of black magic — you must mutter all manner of ache reph incantations — and limiting because, if you manage to do it right, all you get is little blue text with a line under it

Its apparently magic blue text, because when people see it they try clicking it (admit it, you tried, didn’t you?). 

That is pretty much the state of the art of customer engagement on the Internet.  If you do everything right, your customers will reward you with magic incantations and little blue lines.  Many of them will fail at the incantations.  Many who succeed will end up giving you links which are less than wonderfully descriptive of the content behind them, mooting their value to you.  After all that effort spent in getting your fans to care about you, we consistently fail at giving them the tools to show the world they care. 

Maybe, if we’re lucky, we tell them how to copy/paste the right incantation. 

We Can Do Better:

There are a bunch of ways to do things better.  We could, for example, give our customers pretty badges to link to our sites with.  That would be a blast from the past, since businesses have been doing it since at least 1998, but it is difficult to get people to put up your badges just like it is difficult to get folks to slap their logo on the side of your car.  (People do it, don’t get me wrong — there was a Coca Cola sticker on my fridge in college just because we had a fridge and a sticker and the combination looked obvious at the time — but for now we’re talking about advancing the art.)

Recently, there has been a development on the Internet called widgets.  A widget is, basically, a piece of web content which is embeddable in other pages — its a technological artifact that carries a communicatory message, sort of like a link.  Except they’re typically richer than links, in that they provide their own reason for spreading (the person who puts the widget on their page gains something from it) and the widget contains its own little wizard who will happily tell you the incantation to put it on your page.

And what did mankind come up with once it started embracing widgets?  Well, a lot of Would You Survive The Zombie Apocalypse quizzes and What Kind of My Little Pony Are You badges.  But there is the potential for so much more.

Consider, for example, consider this widget:

Firefox Get It Now Widget

That widget tells two stories in the blink of an eye.  #1, all the cool kids use Firefox, and you can be a cool kid if you just click the text.  #2, supposing you were not just a cool kid but the kind of kid who was so cool he was concerned other people knew it, you could click that second little link and show off how cool you were on your blog. 

(If you don’t see the commercial applications for this, let me hum a few bars: you’re providing something of value to customers, in this example something psychic but potentially something of actual utility for their site or readership, and in return they give you permission to both spread your message and they assist in spreading your marketing via the widget’s built-in virality.  Its a lot like AdSense, except minus the ad blindness, the constricting limitations of that ad format, and, oh yeah, the cost.)

So why don’t we see that all over the place?

It took me about two minutes to knock that graphic up in Paint.NET, and it probably shows.  So why don’t we see a lot more stuff like this on the Internet?  Well, its pretty bloody hard to do — to actually take that from a static JPG image to a widget, capable of not lying in the first sentence, showing the right alternative to folks who have Firefox already, spreading itself, and doing the math necessary to collect the statistics necessary to do the calculations to substantiate the claim, you have to have a bit of programming expertise.  Web app, backing database, Javascript, AJAX, uh oh.  Most people, including most businesses and most folks trying to spread a message on the Internet, don’t have that available.

So here’s my business proposition

I think you can make some subsets of widgets easily.  Click a button and BING the computer takes care of the magic for you.  I think that folks, after they see the results and how successful widget-marketing could be, would be happy to pay for a subscription to the website that makes it all possible.  (Why a subscription?  A bunch of reasons, most acutely “It makes me more money that way”.  Plus, integrated statistics tracking and widget serving makes the service much more valuable to my potential customers at a rate which far outstrips its cost to me.)

The basic, early-in-development idea is that I provide a bunch of pre-coded building blocks (Data Sources, Presentations, etc) and that folks can snap them together in minutes or seconds as opposed to paying contract programmers several thousand bucks for coming up with the same thing, minus the hosting infrastructure.  This appeals to me as a businessman because after I have the basic platform set up improving it is just a matter of bolting on new Data Sources/Presentations/etc, giving me an easy built-in development path.  Additionally, controlling access to particular Data Sources/Presentations via a tiered pricing model will help move folks from the inevitable free plan up to the $10 or $100 a month plans.

Now, if I were a Silicon Valley entrepeneur I would say “We’re looking at the potential of 100,000 customers by next year, giving us a valuation of $8.7 billion”.  Happily, I don’t live in Silicon Valley, and thus have more modest aspirations.  Here they are: I’m going to start by getting myself a customer.  Then I’m going to get 10.  Then I’m going to get a hundred.  And then I’m going to get a few hundred.  And then… then there is no then, because a few hundred paying subscribers translates into enough revenue to support me indefinately.

Why this project?

This is a scratch-my-own-itch project in a few ways: I wanted to make it possible for teachers to embed things like the list of popular bingo cards on their own pages.  Then I realized that to do that I would have to learn more Javascript than I am currently capable of doing, and then I would have to come up with a good way to explain how to do the embedding to an audience which does not have an outstandingly high level of average technical skill.  Plus, it gives me a chance to develop a bona-fide web app outside of work, and while all sorts of this scream “positive technical challenge” I’m fairly certain that I can come up with a minimum working solution before I get bored or frustrated with it. 

Now all I have to do is design, implement, and market this sucker… in 29 days.  Wish me luck!

Comments Off

Incredible Interest In The 30 Day Sprint

I was sort of expecting maybe one or two folks to actually get back to me about the 30 day June cooperative development sprint that I proposed the other day.  There are, hmm, substantially more than two folks interested.  Well, great, the more the merrier. 

In the interest of not totally overwhelming everyone and also keeping the amount of administration to an absolute minimum (I will be, shall we say, sort of busy that month… ;) ) , Sohail (fellow BoSer who wanted something like this to get organized) and I are going to set up a unified RSS feed.  (Basically, its like PlanetMicroISV except it only contains posts about this project, and it doesn’t have a dedicated website.  If you don’t know how to use RSS yet, I recommend http://reader.google.com)

We encourage you to subscribe to the RSS feed and post here with the category or tag level feed for your own blogs which is specific to this challenge.  For example, if you were me, and you were diligent about filing these posts under the category 30days, your feed address would be http://www.kalzumeus.com/category/30days/feed .  This will hopefully keep the signal to noise ratio of the unified RSS feed fairly high.

Participants In No Particular Order

(If your name isn’t on this list but you got in contact with me, it is either because I wasn’t quite sure if you wanted to be publicly acknowledged or I missed it in the torrent of email.  My apologies.)

Scott Kane

“I Hate Integers”

Steve McLeod

Sohail

Simon Shutter

Peter Row

Marcus McConnell

Bracken Mosbacker

Tarek Demiati

Joel Marcey

Yakov Vorobyev

If I missed you or you have a feed URL which you’d like added, kindly drop it in the comments to this post.  Akismet, the WordPress anti-spam package, sometimes doesn’t play well with links in comments.  Rest assured that even if it doesn’t pop up automatically I’ll be hunting to make sure it doesn’t get lost.

Alrighty, thats all the time I have for today.  Come back on the 1st for the official kickoff of my project, and hopefully my first of many comments on what other folks are coming up with.  See you in June!

Comments Off

More Talking and More Doing

I’ve been quiet for far too long, as mentioned in the last update.  Recently, in the continuing quest to take over the world one set of bingo cards at a time, I ran into a snag.  I can solve the snag, that isn’t the problem.  Thinking about how to solve the snag, however, made me realize that :

  • it requires programming effort
  • it is really difficult for a technically disinclined person
  • it affects a lot of link-chucking people, like bloggers
  • it gets in the way of some people making money
  • it has a solve-once apply-anywhere model to it. 

So, basically, it screams “I Am A Viable uISV Problem“.  And its got an obviously achievable minimal solution and an iterative improvement path which could keep me busy for quite some time.

When I realized this, I got that far-away look in my eyes, and I started to see code and database schematics and promotional schemes.  (Hey, THAT certainly didn’t happen last time… guess I’m learning…)  I just have to do this now.  So I snapped up a catchy domain name (might not end up using it, but at the moment I’m liking the branding potential) and will shortly grab my sketchbook and start capturing design documents.

I’m crazy busy at work and can’t do another one week long coding binge to get this accomplished, so it will be a longer term project.  Artificial deadlines work very well for me, and there has recently been a bit of a buzz about something called the 30 Day Challenge on the Business of Software forums. 

I’ve got little interest for anything which purports to be for complete Internet-commerce newbies, as it smacks of Make Money Online and I have my sights a little higher than $10, but I love the idea of a peer group and a deadline.  So I’ll make any of you readers out there a deal: I’m going to start developing my new project starting on June 1st.  I will offer it to paying customers on July 1st — exactly 2 years after BCC, come to think of it.

In the meanwhile, I am going to be posting about everything and the kitchen sink, like I usually do: a bit of code, a bit of design, a bit of marketing, etc.  If you also have an itch that needs scratching, and you get in touch with me by the 1st, we can informally develop and blog in tandem.  This will be very informal — no rules, no mandates, just a bit of community and some of that lovely “Its early and rough but at least the page displays, let me show you my new toy” interaction that we’ll surely need after long nights and missed weekends.  Rather than develop a separate domain for the purpose, I’ll just post my contributions to the discussion on my blog — I suggest folks try that as the barrier to entry is nothing and we’ll have plenty of issues building websites without having to build a website about building our website.

This offer is open to as many people as want to take me up on it, for whatever you want to do.  (Within reason — I’m not going to devote 3 seconds of my life to considering the merits of Porn Collector 2008 or Payday Loanz4u).  I’m interested in seeing what you come up with, and can’t wait to show off my new baby as well.

Come back to the blog on the 1st for the first of many posts on the topic.  (Ideally I’ll be blogging daily but can’t commit to that.)  I plan on unveiling at least the problem domain and general gist at that point — having done this once I’m much less worried about getting cloned these days than I used to be.

Comments Off

What I've Been Up To

Hideho everybody.  Its been about a month since I updated the blog, which as you’ve probably surmised means I’ve been pretty busy with real life.

Day Job — We have about 7 non-Japanese speaking Indians arriving from our sister office.  They’re here to learn Japanese business practices and be better able to lead our outsourcing efforts in India.  Given that I’m the only person at the English who speaks English and doesn’t answer to “Mr. President”, it looks like I’m going to end up being their manager one way or another, so I’ve been doing preparation for them so that they can both get some work done once they get here and enjoy their stay.

Bingo Card Creator — Answering emails and not a whole lot else.

Next Project — Doing some research.  Its a long, long way off at the moment.

Bonnie Lass — Going through some adjustments, particularly as she just started working.  I’m torn by a desire to be supportive when she says “I was grading homework until 6:30 last night!” and a desire to remind her that I’m a Japanese salaryman and that 6:30 is practically a day off.  (Speaking of which, did anyone see the NYT article about Japan having a shortage of engineers?  The NYT blames cultural factors and malaise.  I have a simpler explanation: there is no pay premium for engineering over a normal college degree, which means that the starting salary for a computer programmer is about $24,000, and you’re more or less required to work 12 hour days at a minimum.)

Hobby — The last several years I’ve seen my interest in video games declining, but Senjou no Varukyuria (Battlefield Valkyrie) has brought it right back.  Its difficult to describe… let me try: its World War II Europe in an alternate universe where the I-can’t-believe-its-not-Japan country that looks more like Holland has an army populated by bread bakers who moonlight as Norse goddess killing machines.  That is actually pretty close to normal for a Japanese game.  Despite the heaping helping of weird, the plot and characterization is better than anything I’ve ever seen in a game or movie (I was crying at one point), and it actually functions really well as a game.  (Its hard to describe — strategy RPG with FPS elements, whose boss fights resemble intricate ballet, with bullets being exchanged.)  Plus the entire thing looks like its hand-drawn in colored pencils despite being full, gorgeous 3D.  I promise you, you’ve never played anything like it.. 

So basically, when I get home at midnight and have two hours to kill before going to bed, its generally been here instead of the ISV.  But I’m on the last mission so things should be getting back to normal soon.

Comments Off