On friday of this week (October 27, 2007) the Orleans Star published a very positive article about LandlordMax. It ran on page 7 and had a teaser featured on the front page with my photograph! You can find the complete article on their website here.
I have to say that I’m very impressed with article written by Laura, the journalist who interviewed me. She did an amazing job of bringing together the facts with the little amount of time we had together for the interview (as is normal of almost all interviews). She was very accurate about the original inspiration of why I founded LandlordMax, on what LandlordMax is all about, what’s unique about it, how’s its growing, etc. Not only that, but I was also very impressed with how she used my comments (quotes). They were very accurate and in context.
Overall I personally think she did an awesome job and I’d definitely recommend reading the article if you haven’t already.
Thank you Laura for the great article!
Last week Dirk L Andersen posted a very positive comment about LandlordMax on our discussion forum. It started with:
“This product from what I see initially looks fantastic. …[discussion on the possibility of integrating Quickbooks with LandlordMax for accounting]… I am recommending your product from this point on. We are fed up with the high priced programs that really actually do less than your product. A big Wow, look here, for us in this field.”
“… Thank you for your efforts. Your product has more and better features that the program we paid over $1000.00 US for and who now wants $1000 US for their latest upgrade. They do not even have a qif export nor the ability to send reports to a comma delimited text file as yours does. …”
And thank you for all the great suggestions on how to improve LandlordMax. Although I didn’t list our full discussion here, if you’re interested you can read it here. Our discussion leads not only to the initial feature Dirk requested, but also to the current status of the software and the future of some of the other major features of LandlordMax.
Ever wonder what’s involved in building large scale enterprise systems? Although I don’t fully agree with everything here there are some excellent points in this article
Homeowner uncovers mortgage fraud
This is the story of larger scale scams going on in the real estate market.
Business of Software microISV survey
For all you would-be entrepreneurs looking to start a Software company, this survey has some interesting metrics you should be aware of.
Debit or Credit? Here’s the answer
If you don’t know whether you should use your credit card or your debit card when making purchases, this article will definitely help you. Bob explains most of the ins and outs of both.
Tradition will accustom people to any atrocity…
I don’t know how many times I’ve heard this one. The most famous example I’ve personally heard is of the grandmother cutting her roast in half because of the size of her oven and each generation afterwards for no other reason than that’s how it’s always been done.
Fears of dollar collapse as Saudis take fright
If you’ve never really thought of how the international community can affect the dollar, then you really need to read this article. You’ll be surprised at how much outside influence others have on the dollar.
Building a Fort: Lessons in Software Estimation
If you want a great analogy of how hard software estimate truly is then read this.
How Much Internet Connection Downtime Costs You?
If I had a nickel for every time I had this discussion…
Learning from Bill Gates & Steve Jobs
Different people have different presentation techniques. You need to pick a technique that works with your style. In this case the author compares the differences between how Bill and Steve present.
Today’s Quick Links are all real estate related because of the collapsing real estate market. For some people these are bad times while for others great deals are starting to appear. I can tell you based on our continuing growing sales of LandlordMax that the more astute real estate investors are still very active in the market today. Most likely what’s happening is that the late comers coming in at the end of the boom for quick capital appreciation gains are being punished for being last. It’s very much a repeat of every other boom bust cycle, just like the recent dot com stock market boom and bust.
Without further ado, today’s Quick Real Estate Links:
August foreclosures zoom
The number of homes in some stage of default jumped 36 percent month-over-month in August
This Is Why I Rent: Median Incomes Do Not Support Median Home Prices
Another interesting argument of renting versus buying with the exception that this time it’s not from the point of view of which is better financially, but rather which is possible.
Current Foreclosure Crisis Deemed the Worst in U.S. History
I think the title says it all!
Builders’ confidence at all-time low
Home builders see weakest buyer traffic in 23-year history.
Every once in a while a specific blog comment will elicit a full article rather than a simple blog comment response. Recently Andy Brice from Successful Software (founder of Perfect Table Plan) wrote such a comment on my recent blog entry Manias, Panics, and Crashes: A History of Financial Crisis:
“Interesting. I’m expecting the insane UK housing market to level off or crash any time now. But I’ve been saying that for the last 5 years…”
Andy is a very smart person whose blog I regularly read (and sometimes comment on). Whose opinion I respect. In this case I absolutely agree with him. I’ve been saying the same thing for North America for some time now, as is evident even in my first month of blogging over two years ago here on FollowSteph.com.
The interesting part of his comment is that he (myself included) know just how hard it is to accurately predict a full economic shift from mania to bust. It’s easy enough to see when we’re in a mania; the fundamental economic principles no longer govern asset prices. But what’s hard is to predict when the general public will realize this. It’s just like the Tulip Bulb boom of long ago; as long as there’s a bigger “sucker” willing to pay more for the asset (in that case rare tulip bulbs) the prices are going to keep increasing.
But now comes the reality. Again it’s not possible to exactly predict when a boom or bust will actually happen, it’s easy to predict when we’re in a boom or bust phase. If the economic fundamental no longer justify the prices then we’re in for either a bust (overly priced as is today) or a boom (under priced as often happens when people overcompensate after a depression). The bigger the discrepancy the bigger the boom or bust.
The good news is that although we can’t accurately predict the exact time a bust will happen, we can still accurately predict when it’s a good time to get in and out at a profit. As Benjamin Graham expresses in his book The Intelligent Investor, as long as you’re buying your asset for less than the real value (intrinsic value) and selling it at a higher price than the real value you’re ahead. He doesn’t show you how to maximize your profit, he just helps you identify how much your asset is overpriced or under priced. No one can accurately tell you when an asset has reached its maximum price (over valuation), that’s speculating on you knowing and understanding the publics psyche which no one can do.
To put it in other words, asset (stocks, real estate, etc.) prices will always shift above and below their true economic value (known as intrinsic value). If you buy them for less than their intrinsic value you’re ahead. If you sell them for more than their intrinsic value you’re ahead. The key to investing is not to try to buy assets at their lowest price and then sell them at their highest price, no one can do this. It would be amazing if that were possible, but it’s not.
What does this all lead to? Well over time an asset can only deviate so much above or below its intrinsic (real) value before it has to re-align itself (adjust its price back to a reasonable value). Right now, at least in North America for sure, prices of real estate properties have deviated significantly above their intrinsic value, so much so that they are now correcting themselves and trying to re-adjust to their intrinsic value. And don’t think we’re there yet, they’ve still got a lot of re-adjusting to do. I expect significantly more fallout before it stabilizes. As a very basic general rule of thumb, a real estate investment property should generate you at least a yearly revenue of 10% of the purchase price (including all costs – renovations, closing costs, etc.). Right now we’re not even close to this, many properties are running at negative cash flow values! This isn’t sustainable.
Knowing this however doesn’t mean you can’t profit from the boom and bust cycles. All it means is that if you buy assets in the under priced area of the above graph and sell in the overpriced areas you should be able to consistently make profits and protect yourself. The “margin of safety” is generally considered to be the discrepancy between the actual price and the intrinsic value – that is how much the asset is under priced. The further off you from the intrinsic value you are, the bigger the profit potential and the closer you are to the max and min’s of the boom and bust cycles. Of course you need to be extremely careful the further away you are from the intrinsic value, especially for overpriced assets, because when the adjustment happens it will be faster and more volatile!
It’s possible to consistently achieve respectable profits, all you need to do is look at the intrinsic value to know when to get in and out. Although sometimes it may take years for an assets actual price to at least come back to it’s intrinsic value, it eventually does. But as Andy’s comment suggests, knowing when a market has peaked is hard to predict. He already knew that the intrinsic value was no longer aligned with the actual price of the asset (in this case real estate), but he still couldn’t know when the adjustment would occur. No one can!
Wednesday we had a very pleasant surprise. We broke our previous one day sales record by 13%! The most interesting part is that it came right out of the blue. We didn’t have any out of the ordinary advertising or promotions. It wasn’t a special real estate or tax day. It just happened on a Wednesday in the middle of a normal month. That’s always exciting!
To quote a simple definition I found online, scope creep is: “The tendency of a project to include more tasks or to implement more systems than originally specified, which often leads to higher than planned project costs and an extension of the initial implementation date.”
In other words it basically means a feature that was initially thought to be simple that’s exploding in scale. For us unfortunately this has already happened a few times with the next major release of LandlordMax. We wanted to offer Quickbooks support but that’s been postponed because of the scale. We also wanted to offer check printing but that’s been pushed to a future version as well. The latest feature which is experiencing some serious scope creep is full email support within LandlordMax. The good news is that we’re going to push this one through because I think we’ve finally limited it’s scope creep (and it’s much smaller, speaking very relatively).
That being said, I thought it would be an interesting read to go through our experience of what email support entailed, and just how quickly it exploded in scale.
The initial requirements were extremely simple. There were only two:
- Provide the ability to send emails within LandlordMax directly through a mail server and through Outlook.
- Provide the ability to import and export information (contacts) between LandlordMax and Outlook.
Both of these features have been highly requested for some time, and we thought it was time to add them in. Sounds simple. Send off an email, and import/export information. Nothing to it. Ah, if life were only that simple. Once we started to drill into the details of how to do this, it was no where near as simple as it first looks.
Before we go on, let me quickly ask you to make an estimate as to how long it would take to implement these two requirements? Take a second, or a minute, or whatever you think is reasonable, and do a quick cursory estimate. Write it down. We’ll compare your original estimate with another estimate at the end of this article and see what the difference is. My guess is you will be shocked.
Getting back, today I’ll only cover the second requirement because it’s the smaller one of the two. If I were to cover the first requirement (sending emails) it would be much longer. However to help you in reviewing and coming to a better final estimate I will finish off the article with questions on issues to be considered for the first requirement (sending emails within LandlordMax).
Let’s start with the second requirement, “Provide the ability to import/export information between LandlordMax and Outlook”. That should be simple. Just connect and share information. Ok, the first question is how do you connect? Do we build a connector? Do we buy a connector? What versions of Outlook do we support? Simple questions often have larger repercussions.
We initially started by looking at what was involved in building our own connector but quickly dropped this idea because it was not cost effective. Firstly we’d need to figure out how Outlook works, secondly we’d have to test each version of Outlook we’d want to support, and thirdly we’d have to continue supporting future version of Outlook. This is not where we add value for our customers. Therefore we decided to purchase a third party connector that will do this for us. Now comes the task of looking for a vendor that can do this in a nice, clean, simple way, and that doesn’t cost a fortune. All the while giving us a financially feasible way of redistributing the connector embedded within LandlordMax. We eventually found one that works with Outlook 2000, 2002, 2003, XP, and 2007. Great! One thing done.
Now that we can connect to Outlook, how do import/export information back and forth? What will the screen look like? What information will be exchanged. How do we know which contact we import are tenants, vendors, landlords, etc.? How do you import more than one at a time? What about contacts that don’t fit into these categories? What about synchronizing the data (if a change occurs in one will it be picked up in the other)? There’s a lot of options and choices here. And above all else, how do we do this in a very intuitive and user friendly way. If we didn’t have this last requirement it would be a lot easier. But that’s our main differentiator. We simplify the lives of our customers. We spend the time figuring out how to do it easily so that they don’t have to fight with the software, that’s why we’re the “EASIEST Property Management Software”.
Therefore, to answer the questions:
How do import/export information back and forth?
With the connector we decided to purchase this is just programming code.
What will the screen look like?
We’re still struggling with this one. We’ve got a good first pass implemented but we’re ironing out all the usability issues. Always trying to make it simpler. By the way, although I might be skimming this answer, it’s a very large one to which a lot of time has already been spent!
What information will be exchanged?
We’ll try to import and export as much information as possible. What this means is that we have to figure out all the mappings between the data in the two different products.
How do we know which imported contacts are tenants, vendors, landlords, etc.? How do you import more than one contact at a time?
This becomes a big part of how the import/export screen components will be drawn on the screen. Will there be drop down menu’s to select a type of contact? Will it be … ? The list goes on. We’re still determining the best solution. As an aside, if you only allow the user to import one contact at a time, this issue goes away, but that’s not a viable solution. Many people have lots of contacts, in the hundreds. It’s really not a viable solution to ask them to import their contacts one at a time.
What about contacts that don’t fit into these neat categories?
This one might seem simple, but it resulted in a huge scope creep! Maybe you have real estate agents you want to store within LandlordMax. Maybe you have bankers, etc. So what we ended up with was a completely new Workarea (section) called Contacts. Simple, just a new area to enter in data. Not so fast!!!
With each new area comes filters. You have to be able to filter the data. Ok, that’s not too bad. But wait, what about reporting. You need to be able to generate reports on the new Contacts. So we added Contacts to the Reporting workarea and create several new reports. Is that it? Nope. Still more. On top of creating the new tables, you need to be able to support upgrading existing databases to handle Contacts. Ok, we’re done now right? You would think so but not yet. The list just goes on. Basically this ended up being a costly extra that we hadn’t planned. But the benefit is that we also end up with a new feature that other people have been requesting, a way to store other contacts.
What about synchronizing the data (if a change occurs in one application’s contact will it be picked up in the other)?
For the current version we’re not offering synchronization of the contacts. That just too massive a feature to implement. Although it might seem simple at first glance, synchronizing data is complex. It’s so complex that it extended the release beyond when I’m willing to accept. So for now a synchronization feature has been postpone.
To quickly give you an idea of the effort involved in synchronizing data between the two applications, here are some common issues that must be correctly dealt with. Which data has already been synchronized? For example I have a contact in Outlook called “Stephane Grenier” and I add him to LandlordMax as a landlord. Then on another attempt I go to synchronize again. Is this the same contact? How do I know? What is the identifying characteristic (the unique key)? Is it the name? If so, what happens if I change the name to “Steph Grenier” because of a typo? Do I create a new entry? What about the existing “Stephane Grenier”? Do I delete that one since it no longer exists? As you can see it quickly escalates in complexity to deal with all the possible scenario’s.
What generally happens with synchronization algorithms is that you have a basic set of rules for which the user corrects the data afterwards. Merging data has always been tough. There are many tools just to merge two text files (it doesn’t get any simpler than that). Text files! Not contact data across different applications in different sections of the applications. It’s not a simple task. Although nice, we’ve decided that it for now our customers can just re-import data if they want to. It’s more valuable to our customer to get the release out sooner than holding it back for this feature. And holding it back could be quite long…
So far we’ve just talked about scope creep for the second requirement, importing and exporting contacts from Outlook. This is the smaller of the two requirements by far. I’ll leave it as an exercise to the reader to think about the sending of emails as a requirement. Here are just a few of the issues we had to resolve:
- How do you select which method to use to to send emails (directly through the mailserver or through Outlook) without annoying the user with popup choices each time?
- How do you pick which email address to send it from?
- How do you support multiple send email addresses?
- Do you record sent emails? If so where? How do you access them later?
- How do you create the body for the emails? What about spellchecking? What about advanced editing (bold, italics, etc.) How much effort will it take?
- How do you send an email to multiple contacts at once? What if they’re different types of contacts? A tenant and a landlord?
- How do you send a generated report as an attachment?
- How do you send an email to all your tenants? What if you want to exclude some tenants?
- How do you filter the contacts (say tenants) you send the emails to (for example Current tenants only)? How do you make this generic enough?
- How do you send an email to all your tenants with only some variables different (for example send each of your tenants reminders that their rent is due in three days, with their specific amounts displayed in the email) – By the way this is one of the larger email features we’ve postponed for now.
- How do you send emails to people not in your contacts list? Can you create new contacts directly from the send email window?
- Can you receive emails? (this won’t be supported within LandlordMax for now either).
- How do you integrate email on every data screen to easily offer the ability to send emails to the current person you’re looking at (for example tenant, vendor, etc.)
- How do you integrate sending emails in the list view to the selected rows?
- How do you make all this very user friendly and very intuitive (above all else!!!)
And this is only a quick list that I came up with right now on the spot. The list goes on. I know we faced several other issues. And I’m still expecting a few more new ones to make their appearance.
At this point I’ll ask you to re-estimate the total effort needed to implement the initial two requirements. Rather than just say it’s a lot more, I recommend you go through the exercise of actually thinking about it for at least a few moments. What did you come up with? How many times larger was your final estimate? Notice I asked “how many times”, not “what percentage”. I suspect that for many of you it’s many times larger.
What’s happened is that a simple requirement has exploded in terms of scale and effort required because we hadn’t fully analyzed it beforehand. I doubt it would have been possible without getting our hands dirty trying to implement it. Without hindsight it’s almost impossible. Having gone through the experience it’s easy for me to direct you in the right direction in terms of effort required. But without this hindsight it would be almost impossible. How much effort do you think is required to support Quickbooks? What about check printing?
Along the way we’ve had to make hard choices on what features we’re going to implement and what features will have to be postponed. This is what software development and project management is all about. Making choices. Right or wrong decisions have to be made in terms of what gives you and your customers the best value for the money. Scope creep happens. Features that weren’t planned need to be implemented. A good project manager will be able to, at least more than often than not, make the right decisions as to what features are in fact necessary and which are truly scope creep. This is the fun of project management.
Are we doomed to repeat history? Unfortunately yes! The book Manias, Panics, and Crashes: A History of Financial Crisis originally written in 1978, now on it’s fifth edition (2005), clearly illustrates just how predictable we are:
“The end of a period of rising prices for assets to distress whenever a significant number of investors have based their purchases of these assets on the anticipation that their prices will continue to increase. Some of these investors may have a ‘negative carry’ in that the interest rates on the funds borrowed to buy the assets exceed the cash income on the assets; these investors anticipated that they would be able to use the increase in value of the asset as collateral for new loans that would proved them with some of the cash that they would need to pay the interest on the outstanding loans. When asset prices stop increasing, these investors are shunted into distress mode since they have no ready way to get the cash they need to pay the interest on their outstanding indebtedness.”
And what about:
“Causes of distress and the symptoms of distress are observed at the same time and include sharply rising interest rates in some or all segments of the capital market, an increase in the interest rates paid by sub-prime borrowers relative to the interest rates paid by prime borrowers, a sharp depreciation of the currency in the foreign exchange market, an increase in bankruptcies, and an end of the price increases in commodities, securities, and real estate. These developments are often related and show that the lenders have become over-extended and are trying to reduce their exposure to risks and especially to large risks.”
Sound familiar to anyone? And to think this was written years ago and it’s repeating itself yet another time. History does repeat itself.
The good news is that if you educate yourself you can come out ahead. And this is why I strongly recommend the book Manias, Panics, and Crashes: A History of Financial Crisis. It’s a pretty intense book written using somewhat verbose and specific economic terms, as you’ve probably already noticed from the quotes above. Therefore if you’re not familiar with economics and business expect it to take a bit longer. But overall the information is excellent and very viable. And although I believe myself to be fairly well versed in economics and business, this book sure brought home some points I hadn’t fully appreciated. A very good read. Well worth your time.