Which is Riskier? Owning a Business or Being an Employee?
Many people have different ideas of which is riskier. For the majority of people, starting a business is much riskier than getting a job. For me the opposite is true.
With a job, you have one customer, your boss. If at any point you happen to displease your customer (ie. your boss) you can terminated. If the company runs out of money, have no doubt that they will terminate your position. Remember, it’s not personal it’s business. Just like if you use a maid service and you run out of money, that service will be one of the first financial cuts you make. You might love their service, but if you can’t pay for it you will terminate the service.
As an employee you’re income is limited. We’re not talking about the great tax breaks you get as a business owner, but you’re salary increases. Unless you’re on commission, which few people are, any increase in salary you receive is dictated by your boss, or your boss’s boss, and so on. You cannot control this, it’s completely up to the company you work for whether or not you get an increase. On top of that, it will never be beyond a certain cap.
But more than that, I often hear people talk about how amazing safe their job is. The most common comment, at least here in Ottawa, is that if you work for the government you’re good for life. Do you really think so? Just like any other institution, be it a business or a government entity, you’re job is only guaranteed as long as money is allocated to your department, project, etc. Governments sometimes have to slash spending. Although it may often appear as though they have unlimited resources, they don’t.
No job is 100% sure. Just look at the recent headlines from Ottawa here where they’re considering terminating 500 government jobs. These 500 people may have thought they had very secure jobs, but they no longer do.
With a business you have more than one customer, you have many. If you’re a consultant, you have many clients. If you sell products, each person you sell to is another client. For LandordMax, we have many customers (each person who buys the software is another customer).
Although we really hate to miss out on customers, it’s possible that someone doesn’t buy the software because they no longer have the budget for it. That they ran out of money. Maybe they hired an accountant, a property manager (who may have in turn purchased LandlordMax). The reality is that we can survive the loss of a customer, or several customers. Our risk is spread over our total customer base, not just with one big customer (a boss or company). The more customers you have, the lower your risk is as a business. As an employee, with very few rare exceptions, you’re risk is very high, it’s focused on the needs of only one or two people (your company and your boss).
Now I ask you, which is riskier?
Permalink to this article Discussions (2)
What Does it Take for a Software Framework to Become Mainstream?
Firstly, and most obviously, for any software framework to become mainstream it has to be good. Ignoring what good means, what else does it take? Good documentation! Right now in the Ajax world there are many frameworks coming out trying to be the “one” main framework. The problem is that although several are really good, there’s virtually no documentation for any of them. Talk about a great opportunity to take over a market.
For example, today I was looking at the Dojo toolkit. It looks very promising. It can do some amazing stuff. But there’s virtually no documentation. The only documentation that’s available is for the older version (which is significantly different), and even that’s very sparse. The only documentation is the code examples. Problem is that Javascript is not a strongly typed programming language, and nor is there really a great IDE solution that lets you work with it. So you end up having to go back to the “old school” way of learning code. Opening files one at a time, trying to figure out where a variable was defined, what type it is, what it really does. This is extremely tedious, frustrating, and especially time consuming. But worse than that, it makes for a very high learning curve since some of these frameworks are pretty large and complex.
And Dojo isn’t the only guilty framework here. Open-jACOB is another one that looked really promising (especially Draw2D) but it was next to impossible to figure out. The demos are amazing. Good luck figuring them out though. The list goes on. Even Ext-JS which currently has the best documentation among all of them is mediocre documentation at best. What saves them is their forum. But having the forum be a main source of documentation is not a good solution. A lot of time is lost trying to find the relevant threads, and then finding the right answer.
If you look at the Java world, everyone is familiar with Struts. Back in the day Struts was the main J2EE framework to develop by. It was decent framework for its era. Whether or not it was the best is debatable, but it was popular because figure out how to use it. It had good documentation. They did a good job of documenting it. It can always be better but they at least brought it to a point where you weren’t always frustrated trying to figure out how to do the next thing. The latest Spring and MyFaces frameworks are also experiencing success for similar reasons.
It takes more than just being a good framework to become mainstream. Above being easy to learn and use, it also has to be well documented. I remember back in the day looking at alternative frameworks to Struts (when it was the new kid on the block) and getting frustrated. Although today I no longer use Struts, it did have its moment in the sun. And I personally believe one of the main reasons it did became so famous was because of its documentation. If you can’t figure it out odds are you won’t use it.
So my quick tip of the day: if you’re one of the several new Ajax frameworks vying to dominate the market look at improving your documentation sooner than later. Many of you have amazing features but if we can’t figure out how to implement them, then we just won’t. I know that if one of the frameworks I played with today was easy to learn and properly documented, odds are very high I would have gone with it, even if it wasn’t complete! There’s a great opportunity here, nows your chance to seize it.
Permalink to this article Discussions (2)
Are Software Awards Real?
Before I begin, let me just say that this article was inspired by Andy Brice’s article The software awards scam. If you haven’t already read it, you definitely should. While I’m talking about Andy’s blog (Successful Software), let me just quickly add that I’ve been following it for some time and it’s very impressive. He has many really good articles, of which I’ve linked several across multiple posts here on this blog.
Getting back to the article, for those of you who aren’t familiar with software awards, many shareware directories (sites that are basically lists of software applications) sometimes give out software awards. What are software awards? The concept is that the better your software is the better the award you get. Maybe it’s a 4/5 stars, maybe 5/5 stars. Tucows (one of larger download sites) is famous for it’s cow awards (1-5 cows per software). Basically they exist to evaluate the software they list to let you know which ones are good and which aren’t.
Now if you think about it, how can some of these sites properly evaluate all the different types of software applications? They can’t possibly. What features make for a good property management software application? What features and usability make for a great mp3 player? What about a speaker testing software application? The list goes on. It’s possible but not on the budget many of these sites have. Especially when you consider that most are one person shops.
Even Tucows rating is very inaccurate. When LandlordMax was initially launched we paid for a Tucows expedited review (or whatever it was called) to get a detailed review report. We scored an average review. Not because of the features we offered or the usability, but because we didn’t provide some arbitrary features. These include:
- Flash-style or some form of professional visual intensive tutorial that aids in rapid learning of the program’s basic operation. (2 points). This is a nicety and doesn’t really tell you how effective the software is.
- Learning curve: “Does your application package offer quick launch, desktop or additional shortcuts?”. In no way does this describe the quality of the application.
- Repair function in the uninstall. How many applications really do have a repair feature that actually works?
- Functionality: “This is the Reviewer’s overall opinion of the functionality of your application. This criterion is rated in terms of functionality, speed, and resources.” Completely subjective. For example Photoshop sure takes a lot more resources than NotePad, therefore NotePad must be a much better application.
- Does it offer tips on startup? If it does, would that make the application any better? Would it help you play mp3’s with better sound quality? Would it help you balance your check book?
- “Linking customer support information into the application can gain you one to four points instantly, depending on what type of customer support you provide.” That’s for a whopping 9% of your total score! All I can say is wow. How can providing an embedded link to your customer service in the software make it better or worse, and especially by almost 9%
- File size. This is part of the “Program Enhancement” section. An amazing 3 points here. “If a competitor is offering the same exact features as your application and it’s half the size, it will receive more points that your application.” How can you accurately figure this out without a lot of effort, and even then… Unless you truly understand the benefits of Photoshop, how can you compare to the Windows Paint program?
- “Author home page: 2 points = The site contains contact information, brief program information, and online help and documentation.” Again, I agree that it’s great to have but it still doesn’t really tell me how good or bad the software is.
- “Cost vs. Value: With respect to the price you’ve set for your application, the reviewer’s ask themselves a question depending on what license type you fit under: (3 points)”. I’m sorry, but for property management and real estate software, unless you’re directly involved in the field you can’t possibly answer this question with any real accuracy. I’m sure the same is true in many niche markets.
- And the list goes on…
Overall, as you can easily see, their evaluation criteria clearly doesn’t measure the quality of a software application. It does measure something, and it’s should be consistent. Well even here I beg to differ. When we ran LandlordMax a second time through the Tucows rating service we got a significantly different score. Either way it’s pretty easy to game this system. If you provide a software that has an amazing installer, lots of documentation (the quality is indifferent), that’s small in size, and so on. you will get a good score on Tucows. The quality of the application (features, easy of use, etc.) is only a secondary concern. And it’s easy to understand why, there’s just no way they can accurately rate all the software applications submitted to them on an ongoing basis. Just reviewing LandlordMax requires at a very minimum some understanding of the property management and real estate domains.
And even with this poor rating scheme, it’s still only a rating scheme. They try to abide by it and do offer something. As long as you’re aware of what they really measure, they mostly do what they claim (giving them the benefit of the doubt here even as I had a somewhat contradictory experience with LandlordMax). When it comes to other shareware sites, unfortunately most do fall short. Especially with one person operations. There’s now way for them to review every piece of software submitted. It’s not possible.
And this is where Andy’s article really sheds some light into this industry. It’s something many of us suspected but didn’t know for sure. At least not until now that is. Andy took the time to write a dummy application (he actually just changed a text file to an exe by changing the file extension name from .txt to .exe) and submitted it to 1033 shareware sites. Many gladly accepted his software. Even better, many gave him 5-star reviews with nice shinny award graphics. Of the 1033 sites he submitted it to, 218 sites listed it and 394 are pending. Of the 218 sites, “approximately 7% of the sites that listed the software emailed me that it had won an award (I don’t know how many have displayed it with an award, without informing me)”.
Although I personally had a very strong suspicion it was a sham, I didn’t know to what degree (or for sure it was). We initially started to display the awards here at LandlordMax but quickly stopped once we started to get the feeling that they weren’t necessarily based on the quality of our application. We have some, but nowhere near as many as many as we could.
Although we stopped adding new “awards” we haven’t removed the older ones. Why not? This is where the reality of business and ethics step in. If we remove them and our competitors leave theirs on, then we haven’t won any awards in comparison. This might seem trivial but those awards can turn into significant differentiators, and hence real revenue dollars. We did receive them in good faith and have displayed them in good faith, well at least until it was recently confirmed otherwise. Now that we know we are faced with the dilemma of whether or not to remove them.
They’re still technically legitimate, someone did give them to us. No we probably didn’t earn them if we believe Andy’s report, but unfortunately I know Andy is absolutely right (numbers don’t lie). If we remove them we will probably lose some revenue from our less web-savvy customers. They will see our competitors showing their many awards and we won’t have any to match because of principles. Again, you have to look at it from the non web-savvy customer’s perspective, not you guys. They don’t know that most of these awards are a sham. Unfortunately we now know that the odds are very good that most of our awards are not “real”. The other side is that principles don’t always put food on our plates.
In this case I personally believe that the right thing to do is remove the awards page. In the long run our customers will appreciate our stance. They will appreciate our honesty. And therefore we will take down our awards page. Actually we might simply convert it to a “Reviews” type of page, similar to what Andy’s done with his website. I don’t know when this will happen since we’re already more than busy enough with our current workload (and this is a lower priority task after all), but we will make the change at some point.
Permalink to this article Discussions (2)
The #1 Programmer Excuse for Legitimately Slacking Off
Today I came across a comic that I just had to share. The fact that it’s too true too often is what makes it funny. The part that’s sad is that it doesn’t need to be.
In today’s day and age, where PC’s are now pretty much commodities, most software shops shouldn’t be able to use hardware costs as an excuse. Hardware is just so cheap in comparison to developer costs. Get a faster CPU, get more CPUs (maybe you do need a quad rather than just a duo). Get more RAM, it’s cheap. Get a high-end hard drive, that alone could double your performance. Get two drives and make a RAID-0 drive to increase the performance. SSD (Solid State Drives) are even affordable now and can significantly increase your performance. Spend the money it’s worth it.
If nothing else, calculate the lost time compiling, starting a server, whatever. Even if it’s just the difference of seconds, those can quickly add up. But when the difference can be calculated in minutes then you really have a case to upgrade your hardware. On top of the time wasted waiting while your box is trashing at full throttle, there’s also the time lost trying to get back into the groove of things, of remembering your train of thought. It quickly adds up and can make the difference between a successful and non-successful project.
And I haven’t even started talking about the advantages of larger monitors!
Permalink to this article Discussions (2)
LandlordMax Mac Version Update
A while back I talked about possibly offering a Mac version of LandlordMax. We bought all the necessary hardware, started work on it, we were very excited. If you follow this blog you’ll already know that after some time we ran into a few roadblocks. Nothing that insurmountable, we just got to a point where the cost to benefit ratio (the development costs versus the potential revenue) didn’t work anymore. It wasn’t that we were converting the system, it’s that there were certain UI (user interface) issues we didn’t know how to program on the Mac. Our knowledge is mainly Windows UI programming.
Therefore we ended up having to postpone the Mac version so nothing was moving. Then suddenly out of the blue Werner Randelshofer from the Quaqua Look and Feel posted a comment on my article LandlordMax Mac Version. I quickly replied and asked if he would be interested in helping us. This eventually led to an off-line discussion by email.
Before I go on, let me tell you how much of a stand-up person Werner is. We basically asked what it would take to have him help us, possibly even offering a small contract (you can even see this in comments for the article). For someone with his know-how of the Java Swing language on the Mac, this would have been easy for him to make a quick buck. It reminds me of the story I recently read on Friday Reflections, which to quickly paraphrase (and I’m doing the story proper justice here), it’s not the actual work effort that’s valuable it’s knowing where and what to do. Anyways, Werner instead suggested that he would be happy if “it contributes to the final solution for LandlordMax“. And that just an Amazon gift certificate or a bottle wine would be great. Thank you Werner, I really value you’re beneficence, it’s very appreciated. A lot of salespeople might groan at his beneficence, but you know what, it’s because of it that I’m sitting here today in front of my computer writing so positively about him and Quaqua.
Although I’m sure he never thought about it when he decided to help us (I have no doubt he was acting altruistically), he’ll probably get more benefit from his beneficence than had he charged us a very high quick one time bill. Firstly, we might not have taken him up on his offer (we already turned down one person who tried this tactic). And secondly as you can already see he’s getting his name out. He never asked to be written about, in fact he never even mentioned it. This is coming directly from me to show my appreciation. It’s my personal recommendation. And not only am I recommending him as a professional Mac Java Swing developer but I’m also recommending his product Quaqua. By the way Quaqua is free so there’s absolutely no reason you shouldn’t look at using it if you’re writing a Java Swing program for the Mac. On top of recommending him publicly, if we ever need more help with the future Mac version of LandlordMax I won’t hesitate to contact him. Who knows what this might lead to…
Therefore because of Werner’s contribution, we’re re-allocating back some of our efforts to working on the Mac version of LandlordMax. We definitely won’t be releasing a version 3.11 for the Mac, but hopefully the next major release of LandlordMax will be fully Mac supported. So let’s see where this journey leads us…
Permalink to this article Discussions (4)
LandlordMax Discussion Forums are Open
After a long hiatus, we’ve just re-opened the discussion forum at LandlordMax today. It’s very exciting in that our customers will now not only be able to communicate directly with us, but with each other as well. Fellow LandlordMax’ers will be able to talk to each other, to share ideas, to basically also be able to help each. It’s very exciting!
So please don’t hesitate to take a look and write a message yourself. Maybe even be one of the first to start a new topic. Before long it will be filled with a lots of discussions and many different topics.
And thank you Ian for the great Forum software that’s part of HelpSpot. I don’t know what we’d do without it here. It’s a great product which I recommend to anyone looking for an online help desk support system.
Permalink to this article Discussions (9)
Ya Gotta Love Innovative Advertising
Last week when I had a few moments to waste I went to the local Timmies and picked up one of those free local real estate magazines, the ones showing all the latest listings (in this particular case it was Homes & Land). Anyways, as I was perusing through the magazine, one page in particular caught my attention. Actually not a page, but an ad. I looked at it two to three times before I realized what was happening, which is very amazing. I thought I had circled it myself, but in reality it was part of the ad.
Click here to see the full page ad
Now some of you might think this is misdirection, in-proper, just not right. Possibly. I won’t argue here whether or not it’s right, but what I will say is that it really got my attention. It made me think I had circled that particular listing, so I paid a lot more attention to it. I looked at it a few times trying to see why I would’ve circled it. And remember at the time I didn’t have a pen in hand, I had just gotten the magazine. And I also wasn’t looking for any real estate properties. That’s effective advertising!
In a magazine that has many listings, this one particular really caught my attention. Enough that I looked at the property in detail. If my guess is right, the property that was circle was intentionally selected for some reason or other by the real estate agent. This was her main property to move for this issue of the magazine. And I’m sure it worked. I’ll even try to contact her (Shirley Charbonneau) as soon as I’m done writing this article to follow-up and see just how effective this advertising tactic really is. Personally I’m sure it very effective.
Which leads me to the moral of today’s story. Even in a sea of ads if you’re smart you can quickly draw attention to your ad. It doesn’t always need to be splashy, in your face, the largest, the most expensive, or what have you. You just have to be smart about it, creative. You have to come up with an innovative way of doing something a little differently that will draw people’s attention to you. Congratulations to you Shirley on doing just this!
Permalink to this article Discussions (0)
Nine Woman Can't Have a Baby in One Month
Why is it that so many people continue to believe that software developers can do the impossible? In life there is always a critical path to everything, a path that you just can’t skip ahead. Yes sometimes work can be divided and thereby accelerated such as painting a room. You can get one person to paint four walls or you can get four people to pain one wall each speeding up the by four times. But if you want to apply two separate coats of paint you absolutely can’t get eight people to paint at the same time both coats. It just doesn’t work. The first coat of paint needs to dry before the second coat of paint can be applied. That’s a critical path you just can’t skip, no matter how much you wish it away.
However in software development a lot of people tend to forget this notion. There is a tendency to think that if we add extra developers to any effort we can shorten it by the amount of people we add. The thinking is if we add 20% more developers the time to implement the project should therefore decrease by 20%. The reality is that it doesn’t work this way. It’s not like painting a room. You can’t just grab a brush and start painting. It’s not that simple. Even if you’re the best developer in the world someone from the project still has to show you how to setup your environment. You have to learn how the software is implemented. You have to “get up to speed” which can take some time. This can take anywhere from a few weeks to several months depending on the project because of the inherent complexity of software development.
In some cases adding extra resources can even slow down your effort. For every person you add someone from your existing team needs to “bring them up to speed”, which means their not producing during this time. The closer you are to the deadline the more likely you are to slow the effort by adding new people to the team because of this training cost. They just won’t be productive quick enough to be worth it. They’ll probably only really start to get “up to speed” after the deadline.
My favorite analogy by far is the title of this entry, you can’t put nine woman together and expect them make a baby in one month. The critical path is nine months, no matter what you do. Some work just can’t be divided. Ever try to learn a language by dividing it up with several people while simultaneously skipping ahead some steps? And that’s what you have to anticipate with any software project. There will always be several critical paths.
Not only that, but sometimes one developer can implement a solution an order of magnitude faster and especially better than another developer . This is true in almost any profession. Just look at professional sports athletes, there is an amazing difference in quality. Can anyone beat Michael Jordan at basketball? Anyone want to play hockey against Wayne Gretzky? Every profession has it’s stars and its obvious that there is a difference among them, even among the elite of the elite.
The same is true with software and developers. I’ve heard sayings that an elite software developer can easily be worth ten junior developers. I completely agree. One Michael Jordan is worth several average players. Sometimes it’s worth waiting for a more qualified, or even just a specialized developer, to implement a solution. They might be able to do it in a way that will simplify the life of every other developer on the team and thereby reduce the total cost of the project today and tomorow rather than add to everyone’s effort. We’ve all seen patch jobs that take much longer to do anything with because of a bad implementation. That are buggy and needs to be continually fixed. That are just a complete mess. This is often the result of trying to push the critical path, of trying to apply two coats of paint at the same time.
Not only will you be ahead if you understand the critical path, it will also reduce your total software development costs. It will give you higher quality code which will lead to less bugs, less fixes, less workarounds, less hacks. It will lead to a better solution. Happier customers. Better maintainability. It will make improving and adding new features easier in the future. It will lead to higher employee morale. A better team. Lower turnover within the company. It’s just worth it. If you don’t believe me, just look at the statistics from this article on what happens if you push the critical path too much. Critical paths exist for a reason and it’s absolutely worth your time to acknowledge them rather than trying to wish them away.
Permalink to this article Discussions (11)
LandlordMax Customer Testimonial
As many of you know, several months ago we released a free online Real Estate Analyzer as a promotion tool to generate traffic to LandlordMax. It’s been a great success and we’ve received many positive emails about it. This week, we received one in particular that I just had to share:
I am a property owner as well as a Investment RE agent, I am looking to purchase your product as a management tool but your analyzer “I must admit” Rocks the pants off anything I can currently give my clients as a pro-forma. My question is does the actual program have this analyzer built in? And if it does can I input the Info on a property we are looking at print it out and give it to my client, with my Information and maybe Logo/picture on It?
Al Romero
Property Owner and RE Agent
YorkHomeGuide.com
What a great comment!
For those of you who are curious about the answer, the current version of LandlordMax doesn’t have this built into it however we’ve been planning on adding this in a future version. Although I can’t guarantee if it will make it into the next major version, it will definitely be in a future release.
Permalink to this article Discussions (0)
Book Recommendation: On Writing Well
Since I started FollowSteph.com about two years I’ve been reading a lot on how to improve the quality of my writing. So far the best resource I’ve ever come across is the book On Writing Well – The Classic Guide to Writing Non-Fiction by William Zinsser. If you haven’t already read a copy, you absolutely should! This book is amazing and filled with great advice that will improve your writing skills.
I’ve only read it a month ago and already I’ve applied many of the suggestions he offers. This is not saying that I’m a great writer, only that I can always improve myself and this book has clearly shown me some great ways to achieve this. Sometimes his advice is subtle and other times it can be so obvious that you can’t understand why you never saw it.
On my last blog entry How to Write Out Your Domain Name, I made several edits directly attributable to this book. For example the beginning of the last paragraph of the blog entry starts with: “It’s only a matter of time before uppercasing each word in a domain becomes the standard…”. In my first draft I had started it with “I’m willing to bet that it’s only a matter…”. I changed it because in On Writing Well the author suggests:
“Don’t say you were a bit confused and sort of tired and a little depressed and somewhat annoyed. Be confused. Be tired. Be depressed. Be annoyed. Don’t hedge your prose with little timidities. Good writing is lean and confident”.
I couldn’t agree more. If you look at the last draft it’s much more powerful without the “I’m willing to bet that” beginning. It’s obvious when you read it, but I doubt I would have noticed it if it wasn’t for the book. After all, we all do it, it’s just that the book brings it to your attention. It’s part of evolving your writing and making it better. Learning something each day.
As another example, in the second paragraph I state “Back in the old day, which in internet time is less than a decade ago, everyone wrote out their domain names in all lowercase.” Before having read the book On Writing Well I would have finished this sentence with an exclamation mark, mostly to get across the light humor I embedded in the sentence. However after reading this suggestion from William I decided not to:
“Also resist using an exclamation point to notify the reader that you are making a joke or being ironic. … Readers are annoyed by your reminder that this was a comical moment. They are also robbed of the pleasure of finding it funny on their own. Humor is best achieved by understatement, and there’s nothing subtle about an exclamation point.”
Although not everything he says should be taken as a rule, which even William himself states, I really respect his advice. He offers examples for each of his suggestions to show the difference. More importantly though, is that when I now read other authors I really enjoy, I notice some of these suggestions in their writing. A great example of how to properly embed humor in your content is just about anything written by Joel Spolsky from Joel On Software. He does exactly what William suggests, he doesn’t force out the comedy, it lets the reader pick it up on their own.
These aren’t the only tips the book offers, it’s loaded with great advice on how to improve your writing skills, be it for blogging, business, etc. What I’ve described above is just two small examples of many that I learned from reading On Writing Well. If you haven’t already read it, I strongly suggest you do.
Permalink to this article Discussions (0)
« PREVIOUS PAGE | NEXT PAGE » |