How Time Flies
Well I just looked at my to-do list and the “write blog entry” that I have been snoozing finally got the better of me. I didn’t think I had been hitting the button that long then I realised that the last entry so just over one year ago.
It’s been an amazing year for me. The last time I wrote I had just got my furniture as we relocated to London. This time I write I’m waiting for my furniture as I’ve just move to Seattle. At the moment I’m on a plane heading to IT Forum in Barcelona Spain. The year has been full of conferences internal ones like our Envision conference, now TechReady, and external ones like TechEd.
In between conferences I was travelling all over EMEA talking to ISVs. There is so much interest from ISVs connecting their solution to MBS it’s interesting. Business Solutions is an interesting field. It not for the faint hearted. There is a lot of complexity in developing a business application today. The complexity doesn’t come from the development tools or environment it is comes from the rules we as business people create to run our businesses.
In talking with people at conferences I often get asked what is Microsoft Business Solutions ? And I tend to rave on for a few minutes about the applications we have and how they are solving customer needs and how that because they are built on the Microsoft stack we deliver great business functionality in an environment that IT people can manage. But I never get the time to get back to basics and really describe the heart of the business application what are some of the fundamentals that make a business applications.
So I though I’d restart writing these blogs and see if I can capture some of that for you developers out there that might be interested in changing tack and writing an ISV solution around business applications.
At the heart of the business application is money, isn’t everything about money ? Well in the case of the business application it’s about tracking money or accounting. It’s funny, I used to teach developers how to develop around Navision and Axapta and every time I’d mention accounting they would switch off. I know the feeling, I spent almost three years doing a Masters in Accounting. But there is huge opportunity in making business applications more productive which gets my continued interest. So bear with me here and I’ll hopefully “learn you something good”.
Accounting is old, it was developed around 14th century. Because it is so old the principles have been very well refined and defined and every accountant the world over follows the same rules. So I know you are asking if it is so simple then why do we have thousands of different business application providers the world over. That complexity started with the birth of the computer and development tools. The big iron mainframes used in the 1950s and 1960s started to be commissioned by business to run their accounting, we have a lot to thank IBM for. Additionally a bunch of other computer corporations that don’t’ exist anymore, or have been merged or acquired or changed names a number of times.
Back then there wasn’t a lot of standardisation of development tools, let alone operating systems or hardware. So every time a business wanted an application is was hand made from the ground up. Through the sixties this fragmentation continued with the introduction of mini-computers that again had different operating systems and different development tools. Hence the business application that ran on top of the OS was different for each company that wanted something to manage their business.
In the 70s a group of people, incidentally ex IBM, in Germany decided that is was a good idea to create packaged applications that could be resold to business because all business had the same need. Of course I’m referring to SAP. A little bit of trivia, SAP started the year I was born. Their background was supplying packaged applications to run on the big iron that businesses had at the time. At that time computing was expensive and of course this was before the birth of the PC. So it was really only open to the realm of the large corporations who had the money to purchase the stuff. But packaged business applications started to became cheaper than custom writing your own.
Jump forward a number of years to 1980 and the birth of the PC. That opened a new ear in business applications because it now meant that there was a new range of cheap tools and computing power that could be applied for business applications. Development tools with languages like Microsoft Basic and standardised operating system with Microsoft DOS meant that more and more business could start to afford the hardware and operating systems to run a computer in the office. And the big corporations could expand their use of computers.
In this time frame the spreadsheet was created first Lotus 123 and eventually more advanced ones like Microsoft Excel. The spreadsheet revolutionised the ability for business to work with numbers in a familiar and simple way. The spreadsheet is arguably the most used business application still used today. Accountants love spreadsheets because it is a very similar metaphor to the paper based ways of accounting.
Custom applications of course continued to be developed for the PC with the use of standard database technology I’m sure you remember dBase ? It was very popular for people writing business applications because it provided a simple environment to build the data model and present a simple interface to enter data. There are a number of different examples of databases and development tools like dBase that don’t exist any more.
Packaged applications proliferated on the PC. Developers like Navision, Damgaard and Great Plains all started in the early 80s producing accounting applications that ran on the PC. So too did many other developers that developed accounting applications for their specific country needs of interpretation of what accountants needed.
Fast forward to the 2000s and the primary operating system is Windows, the first choice of development environments is .NET and the first choice of development tools is Visual Studio. One of our goals in Microsoft Business Solutions is to provide a simple and consistent way for application developers to use our technology to create business applications. Of course this is part of our “Green” strategy to centre our development around the .NET framework.
But as you can see from this short history the operating systems will continue to evolve, development tools and environments will continue to make developer more and more productive. And business applications will continue to evolve. They will evolve to allow business to be more flexible, more adaptive to changing needs. Adaptive business applications will allow business manages to control their business to get a competitive advantage by running a business the way they want. Either by expanding into new channels, introduce new product lines, merge or acquire companies, expand to take advantage of cost effective manufacturing bases in different countries.
One constant remains accounting. In business we need to know if what we are doing is making money, the “Profit Motive”. It is true that there are other reasons to be in business, charitable organisations, governments etc. But what ever form of business they all account for their operations in exactly the same way with double entry booking keeping. What is different is the way they use the same system to do accounting i.e. the different way they classify transactions.
So accounting is at the heart of the business application but there are other business needs like tracking inventory, tracking the manufacturing process, managing purchasing, managing sales. The link to accounting is in all these systems because all these systems generate a financial transaction.
Take inventory. If we are a retail business we purchase inventory and then we sell it at a profit, hopefully. This generates a number of financials transactions to track the costs of goods sold and hence the ability to report to shareholders at the end of the year. That is the ability to report a profit or loss.
Double entry Accounting is a simple process of tracking the ins and outs to accounts. The other systems add complexity, as they start to bring in the physical word into the business application so that business can manage the physical world.
Inventory for example, it costs money to buy, ship and warehouse. If we don’t have stock in our warehouse when a customer needs it then we face losing a sale. However if we have paid for a stock that is sitting in our warehouse then our money is locked up. So these inventory systems and manufacturing systems become more complex so that we could manage the physical world.
In the 50s and 60s some of these systems were so complex and processing intensive for the software at they time so they were burnt straight to silicon to get the speed benefits. This allowed business people to make decisions faster based on the information these systems collected and manipulated. Of course back then they had to wait for data to be punched out to some form of output terminal.
Today advances in hardware, operating system, development tools means that we have the ability to view the information from our business application in many different applications and devices. Over the last 15 or more years the user experience for office and information workers has been Microsoft Office. With Microsoft Business Solutions we already give unprecedented ability for people to manage their business data out of our Microsoft Dynamics solutions with Microsoft Office. We will continue to innovate in this area. The user experience today is fundamentally different from 30 years ago and even 15 years ago and will continue to evolve in the coming years.
The next 5-10 will be very interesting for business applications. I’m glad I’m part of it.
This posting is provided “AS IS” with no warranties, and confers no rights.