|
|
Over the past 16 months or so I have been working on a project with a co-founder. Unfortunately I am only able to devote myself part time to it. This was all the more frustrating since I was supporting a product I had written about three years ago for medical/lab equipment. The sales were pretty low as it is a very niche product.
I got support calls and emails from time to time and they were eating into the valuable time I could have been spending on the new venture.
So, I decided to either sell the intellectual property or open source it. Open source was the least desirable outcome since most of the users were biology or chemistry researchers, not software developers.
I posted an ad on sitepoint a few months back and received a few responses. I asked for a fair price based on annual revenue/profit. The perspective buyer and I agreed on a price after he satisfied himself that there was a market and that the product was viable.
We finalized all the transfer of funds, etc a few days ago. I am thrilled. While the mechanics of the deal took far more time and effort than I had hoped that is all past and I am free to focus on the new venture.
I will post a few more details soon - things like the activities we had to complete, some of the terms, the questions and issues raised, and perhaps some comments or suggestions for others who may o the same from wither side of the bargain.
I hadn’t been to stackoverflow in a while, but as I was browsing answers about hudson CI servers I noticed an ad from telerik. It was a congratulations note - apparently my score on stackoverflow entitled me to a free license!
Pretty sweet. I rarely win anything. So before they could change their minds I signed up right away. Right now I am working mostly in C++ for my projects, but we will eventually move to .NET for some functionality. I look forward to trying out the tools. I will post some reviews here as well when I do.
Here’s another post about it.
I went to the DevDays event in Boston with my startup partner. I’ll describe it briefly - though bear with me because I am writing this from a laptop at a public library in the middle of Massachusets in some hippie town.
We drove up from Long Island the night before. We took the Port Jeff to Bridgeport Ferry and arrived at a friend’s house in Cambridge. My employer gave me the day off since I paid for the event myself.
Getting to the event was easy - we took the T from Porter Square to Park Street, then switched lines and the subsequent walk was pretty short. (A good thing, since like an idiot I didn’t bring a rain jacket, nor did I check the weather before packing and leaving from NY)
Registration was a breeze and of course there was some swag from FogCreek. We sat down in the auditorium and had our eardrums blasted out by the rock music for a few minutes, then we decided to wait in the lobby until the music was lowered or until the event started. The volume remained ridiculous so we went in just before the start.
Introduction
The intro was almost painful to watch, but funny in some places (Joel and Jeff did a little video clip with some self-deprecating humor.) I give it a B for effort, but overall it was a little off. It was riddled with inside jokes for those people who listen to the stackoverflow podcast.
Ned’s Python talk was really good, though I expect that if you knew Python it might have been a less than time well-spent. I am not a Python developer so it was a great eye-opener for me for the power of this language - especially if you want to get some non-trivial work done quickly. He walked through code that showed how a dictionary spell checker and word-substituter worked. Succinct code and impressive functionality. I learned a bit about Python. (Monty - not the snake)
Dan Pilone’s iPhone talk was good. he gave his view on the hype and the reality of making money with the platform and dispelled the bad press/rumors about the evil empire that Apple (may have) become. He described the process and answered some questions about the process. I was able to ask him some questions during breaks as well and he was happy to spend the time answering them. For iPhone developers this was probably lots of review, but for me it was not wasted time.
The first break brought more of the abusively loud noise. People had to yell to be heard (while standing next to each other). I think Joel got a few complaints and made a joke of it later on. Someone rational had the sense to agree and eventually lowered the volume for subsequent music breaks.
Joel gave a well-prepared and slick walkthrough (amazing how much functionality he covered in the short time) of FogBugz 7.
Joel dropped a bomb and announced that he is going into competition with one of the sponsors of the show. Yep - FogBugz will have something called Kiln which allows code reviews from within the FogBugz browser as well as hosted Mercurial repositories.
I wonder what smart bear has to say about that - I wonder if they’ll pull their ads and sponsorship, or perhaps I am reading more into this than is there.
Joel gave a good demo of FogBugz 7 and I earned a few little shortcuts and time savers and one or two features. It almost makes up for having bought the last Fogbugz book (about 6.x) just before 7.0 was released.
The Microsoft dog and pony show could probably have been dropped. Perhaps I am being overly critical - especially given that:
- I was not interested in the topic
- It was getting really warm
- I needed to use the facilities
I went outside and told the staff about the heat problem. They were on it in a jiffy. Kudos to the event staff for that. I also have to say I was impressed with the toilet facilities. It was able to handle the load of all those developers pretty well. I was also very thankful for the proximity given the result of some food I had the night before.
John Resig gave a talk about some pretty impressive stuff, though I have never used java script and probably never will. It is clear he and others have done some great work in that area.
Miguel did not disappoint - he put on an entertaining show full of impressive Apple-defying feats, ObjectiveC bashing, and general humor. It was worth coming to Boston just to see him. Novell is a lucky company.
All the speakers were well-prepared and informative, though I suspect that if one worked with the technologies presented for a little time they would have known most of the content. I had assumed I would only be interested in hearing Miguel and Dan speak, but the python talk and the java script testing were really eye openers for someone not familiar with those worlds.
Although the internets was supposedly available through some magic wireless network I was not able to get on. Apparently only 1 byte of IPs was available. Not a big deal - I went outside with my iPhone to get emails and phone calls.
Lunch was yummy - there was a choice of three sandwiches with an apple, chips, soda, water and a cookie. A granola bar was available at the first break and cookies were served in the afternoon. It was at least as good as kindergarten. The sponsors and promoters did a great job at providing value for the attendees! For $99 you got fed, entertained and got to learn a bit of stuff . At the very least you had access to the presenters for more advanced discussions during breaks.
It was a good day and we followed it with a business meeting the next day with a vendor since we were in the area. I’ll try to post more about this when I have time, though there is not really much more to say.
Thanks Joel and team for the opportunity.
An old nitpick of mine just resurfaced with a vengeance, and since the most compelling things for me to write about seem to be annoyances and complaints, this will fit right in.
I am working on a start up with a partner. We’re going to be supporting some hardware cards with our software application. Well, we thought we were going to support hardware cards. It now turns out we’re going to support only one card manufacturer. Unfortunately the other manufacturer thinks it’s better to restrict access to its API than to give it away for free. You can’t get their API unless you buy the card, and we have not yet bought their card.
We’re software developers. We’re a startup. We’re staying clear of investors for now. Our startup is bootstrapping itself and exotic hardware is an expenditure we’re going to live without for now. We don’t want to spend $10,000 right now on a piece of hardware just to get access to an API.
We’re not losing sleep over this – the more reasonable manufacturer’s cards are a fraction of the cost, and deliver the same, if not more functionality. In fact, if the unreasonable company let us use their API we wouldn’t have found the competitor with a better value, so we are happy this has happened. However, that doesn’t change the fact that the policy is dumb.
I have seen this kind of idiotic thinking in the past - for some reason some companies selling a service or data or hardware think that they should keep their APIs/interface a secret to protect something. Protect what, exactly? From people trying to use their products? I would have imagined that you’d WANT to give people access to it - even offer to help them with writing applications for you API and hardware or service. After all, the more developers that write software for your products the more access you have to end users. (read $$)
APIs shouldn’t be revenue generators – the services or data they provide are the revenue generators. Provide easy access to the APIs and help developers.
We weren’t trying to get something for free. We were hoping to provide value to our customers who already own the hardware cards and wished to use our software as well. Most likely now they will see our solution, look at the vendors we support, notice the price difference, perhaps ask why we don’t support the other vendor (yet) and likely switch to the cheaper hardware we selected. So, in not allowing us access to an API, the intransigent manufacturer has cost themselves many sales.
We have every intention of supporting the one who rejected us - eventually. They are a big name in the field - the name everyone seems to know. But they are going to lag in sales for our solution and market because of this stupid, screwed up posture.
There is no business justification for putting up roadblocks to your APIs. None.
If you are selling services, products or anything else and you have an API to access them: please, think about your policies. If you don’t allow third party vendors or anyone else access to the API for free, you are putting up HUGE barriers and likely costing yourselves business.
Remember Romeo and Juliet? Never was there such a tale of woe …
I think there is a quote in that play about names. Something like “What’s in a name”?
I sometimes have a problem with names. Not only do I have difficulty remembering peoples’ names, I take lots of time figuring out what to name things– objects, classes, function calls and variables.
I wish I could share the carefree attitude of many of my coworkers who just pick any old name out of a hat. I don’t mean that I care about things like an iteration variable name. I is just as good as J or K or Q. But some names are better than others. Ishmael for example was a good name. Astyanax is another. Carl the Greenskeeper was perfect. And don’t get me started on the Bond Girls’ names…
It took my wife and me a long, long time to name our son. I think we were filling out his birth certificate name card as we were checking out of the hospital after the delivery. The nurses would bug us for a name every chance they got during the three days we were guests at the maternity ward.
This naming story is about a developer I once knew. His name is Peter. (Ironically enough he’s aptly named, though he was actually promoted far beyond his competency level)
Peter was one of those people who wrote things like “for all intensive purposes” and then would defend its use when someone pointed out that perhaps he meant to write “for all intents and purposes”. He also did a great many horrible things trying to write code and manage developers. He is likely to figure prominently in my blog posts, and not in a good way.
Peter was a busy developer. He had lots of code to write – well, when I say write, I mean he kept busy copying and pasting. And pasting. And pasting. Sometimes he had to rename the things he pasted. After a particularly busy day of copying and pasting, he wrote a class that did something “generic”. He also generalized that. Being the extremely bright guy he was, he named his creation GenericGeneral. And it was good. And on the seventh day he rested. (thankfully)
From that day on, whenever Peter walked by in the hallway, Alan and I would salute “The General”.
Please avoid being mocked like we mocked Peter; it is not a good for anyone. Do your team a favor and take the time to name things properly.
Originally this post was going to be titled:
“Everything I needed to know about software marketing I learned from my drug dealer”
but I didn’t want to attract the wrong element to my little blog.
During the course of my career I have heard lots of analogies. Maybe it is peculiar to our world, perhaps not. Apparently you can make analogies between anything. Try it; it’s fun. The analogy I am trying on for size today is that selling software is like selling smack. It pays off (big) in the long run if you give a little free taste. While I won’t say that selling software is EXACTLY like selling crack to a 13 year old, hopefully I can get away with advising software companies to consider the oft-used ,“first one’s free” marketing plan.
This is nothing new, even in the software world. (Nor am I the first to make reference to it.) I only bring it up because the lesson really hit home again recently. At first I felt guilty – guilty for taking advantage of an offer and feeling guilty that perhaps I was doing something sneaky. I was going to take advantage of a great deal with no intention of paying any money, and I was planning on milking it for as long as necessary. But, I soon realized that maybe I should feel manipulated rather than guilty. I’m not the one in control of the situation – it’s these guys – they are the dealer who is after my soul.
So how exactly should you apply the wildly successful and hugely profitable practices of cigarette companies and corner drug-dealers to software development? That’s easy. Do what all the other little software companies do – provide free trials.
The freeness of FogBugz is a bit different than the usual try/buy. Many companies provide free services or software for personal use, but Fog Creek will host your two-user solution for free. You get to join with a buddy! This is good reasoning – I can’t recall the details exactly, but I seem to remember that there was a software company that started out as two guys in a garage, or was it in a dorm room, or perhaps at a bar. Hmm. It will come to me.
Back to FogBugz — At first I was unsure about the offer. (If you want another bad analogy then I guess you could say my other issue and defect tracking system was like a gateway drug? It opened up the door to more possibilities.) So after the first foray into issue tracking I started doing some investigating. And what did I find? Can you imagine automatic email responses and magic project estimation for free? It was so tempting. And so easy. It felt so good.
Everyone knows about the free giveaway. In fact, this blog post is mostly useless because that model is the standard for small companies. Examples of good, free software are everywhere. These guys just signed me up with no questions asked, and let me park some useless bits on their servers. (Now if only I had customers who would use it…)
The real news is that I took a HUGE company to the cleaners; I am really milking them. Yep, I took Microsoft for a ride. One has to wonder who’s in charge over there – giving away $3500 worth of software like that! What are they thinking? I’m selling my Microsoft stock.
That’s it. That’s the big tip. Sell your software for $0. (I don’t know what that is in Euros, so if you know, put it in the comment section.) Oh, and get in on the Microsoft deals.
If you come back next week I might have something more worth your time.
By the way, I love FogBugz. And I can quit. Any time. Really.
I downloaded baby smash today after listening to the latest Startup Success Podcast. I tried it out on my laptop and I loved it. After playing it and getting really good at it (I got to, like, level 5 in under an hour) my wife made me let my 18 month old son use it. She mumbled something about him being more mature than I was too. (I didn’t hold a grudge against him though, he loved the program. Plus, I get to stay up later than he does, which is nice.)
But let’s get back to baby smash!
The thing about laptops is that there is a power button next to the keyboard. Predictably, my son was able to turn off the laptop within a minute of using babysmash. I can’t blame Scott for this though - there’s not much a developer can do about the location of the power button.
My son rarely gets to use daddy’s laptop - usually he can usurp the iMac that my wife uses. He can’t wait to try it again. I’ll install it on the desktop since I can’t figure out how to use Vista anyway. He can bang away on it all day.
I am going to bring in headphones to work tomorrow so I can play babysmash most of the day. I am getting really good at it! Besides, I think it is actually more productive than constantly hitting refresh on my browser and looking for questions to answer on stackoverflow…
By the way, I lied, I didn’t really get to level 5. But I hope to get there soon.
In all seriousness, if you have a baby at home and they seem drawn to your computer/keyboard, try this out. It’s great! And you just might get hooked on it too. Like me.
One side-benefit is that there is a lot less mess to clean up after. So, instead of picking up 21 puzzle pieces and a wooden tractor and various little farm animals and DVD boxes and trashed DVDs and crayons and my watch and some books and plastic spoons, all I have to do is power down the computer. It’s also free.
Thank you for sharing, Scott!
P.S. Please add multi-player mode to it so I can verse [sic] my son while I am at work.
I try not to get too upset with poor use of language, improper spelling or grammar mistakes, but the little language devil on my shoulder is always there, hopping up and down, poking his pitchfork into me and daring me to laugh – especially when the offender is someone in a position of power and is attempting to impress his minions with big words he saw somewhere. (Perhaps in the latest management book lying in his superior’s office)
In my world words, syntax and grammar are important. Imprecision, ambiguity, overloading and just plain improper use of words causes problems. Lots of problems. So perhaps you’ll forgive my penchant for precision in language use.
I had a manager by the name of John – we’ll call him John for this little story. John had a bit of a complex. He was a smart guy, but he didn’t go to college. He was a self-taught computer programmer and worked his way up the ladder of a well-respected software development company. He had many bright (and some not so bright) programmers working for him. While he normally was easy to get along with, he did carry a chip on his shoulder to try to prove to all the college educated folks that he was at least as smart as they were. I don’t think most of us cared one way or another, but John cared. He cared enough to make sure he used the biggest words in the office. Apparently big words are impressive and mean more than little words. It didn’t particularly matter if the words were correctly used or if they were pronounced correctly. The point was to use them. And use them he did. This is a story of one such word.
John ran weekly Monday morning meetings. I never really thought they were useful meetings, (but that is for another rant) and I went, because, well, we all had to be there. John was excited about a new project he had just been told our team was to engage in. He was visibly excited about it. Obviously he had big plans for us and for how much overtime we were going to put in so he could look good for his bosses. His right hand did the usual twitch/tick/twirl of the cell phone holder clipped to his belt, and he rocked back and forth on his heels as he told us the plans.
Apparently beside himself with excitement over the project and lost in the moment, he told us that to him, this was the ‘penultimate’ project. Some people nodded, fully grasping his meaning – that if ultimate was the best, then penultimate must be even better. Others just stood or sat waiting for the meeting to end. Still to this day I regret not raising my hand to ask what the last project was going to be, and could we just skip to it instead of having to do this next to last one. Perhaps it is for the best. I did not want to lose my job at that point. It was the ultimate.
Since 1998 I have been looking for and sometimes landing freelance development contracts. These are after-hours moonlighting things that unfortunately have never been able to support all my financial needs. But it keeps me entertained and allows me to survey some problem domains and technologies I would not experience in my regular day-job. I also get a great perspective on marketing, customer interaction and plain old lunacy.
I am not poking fun at any of the customers or potential clients I have worked with. No, I am talking about the apparent idiots who think they can pay some schmo who just read “Learn C++ in 21 days” or “Headfirst Java” or some nerdy high schooler to re-write the equivalent of MSWord or Outlook Express or Firefox or something else that contains thousands to millions of lines of code.
I regularly check one or two freelance sites as well as craigslist for projects, but this has tapered off a lot given my existing projects. (not to mention my day job)
The following is an example of the lunacy I referred to. Note the time-frame requirements. I can’t imagine how many man-years are invested in the programs he wants to compete with.
Anyone want to take a shot at it? I am sure it is just a matter of using scrum or TDD or even continuous integration. Or all three! Surely it is a simple matter…
(Again, I am not making this up. This was an actual posting on a freelance web site.)
Title: Commercial grade software for US income
Category: Programming / Software / Database Development
Description:
I need a Commercial grade software made for US income tax preparation and online gui income tax preparation software example are like:
1) Taxact.com
2) Tax Cut
3) Turbo Tax
4) http://www.internet-taxprep.com/plindex.asp?welcome=RR1375356
5) http://www.taxhead.com/
a) must also capture customer info; name, address, email
b) need a free look at software: a free dummy trial or video demo (must show how easy it is to do by customer himself)
c) need to ask questions that would determine what papers they have in hand, to determine forms to be used from IRS.gov
all forms are avaialable at http://www.irs.gov/formspubs/lists/0,,id=97817,00.html as formfill
I would like this project completed in 1 to 3 weeks maximum
The comedy doesn’t stop there. What is even funnier is that people actually bid on this stuff. And they go big. You too can have a clone of Quicken written by some team in India for only $2000. I wonder if they factored in the QA bit. That might eat into the profits…
There is another aspect as well: marketing and market share. Do these guys (forgive the gender specificity please) really think that even if some yahoo could write a competing product that they will be able to displace the other established software? Perhaps “overly optimistic” is an understatement…
I can’t think of a way to summarize or make a funny comment about this entry. I think the bid request speaks for itself. So, goodnight, Gracie.
No, I didn’t work for Nike. I did work for many people who seemed not to understand logic and were not impressed with doing things the right way. After getting lucky on my first real task at a software company, I was told we absolutely had to have a this great new feature put into the code. The required assembly language part was all done. My job was to make the call to the assembly language and put it into the product. Somewhere. Anywhere. Now.
This “must have feature” was the greatly hyped Intel® Pentium® Processor serial number. After getting the secret orders I ran back to my office to plan my whiz-bang implementation. But. There. Was. One. Minor. Problem. There was no context for this information. It was meaningless. It helped no one. So I made an ass of myself and raised the question, “Why are we doing this? It isn’t used anywhere in the product.” (I didn’t even get to the part where I asked what we should do for multi-processor machines)
I needn’t have worried. A careful, well-thought-out argument came back my way: “Just do it.” Apparently having the Intel® logo on our box in the stores would make the product boxes fly off the shelves even faster. At least that is what the marketing and product geniuses claimed. So I “just did it.” It was as useful as an ice cube in Antarctica. And I had a hand in it. What a proud day that was for me.
But wait. It gets even better. The objections started slowly and imperceptibly, but as momentum gained the apparently super-duper-useless feature became a liability. People were afraid of the serial number. It could identify them. Products that touted being able to take advantage of the serial number were seen as Big Brotherly, and not in a Philadelphia loving kind of way.
I don’t recall what became of the code I put into the product, but hopefully it was removed or quietly optimized out of the product by a compiler that was smarter than my managers and knew the code wasn’t getting called.
Just Do It. But first, make sure it is useful.
|
|