![]() |
|||||||||||||
|
Web Technologies and Business
Web technologies are not just for the "Web" anymore. The technologies that have been developed to do more sophisticated interactions on the web and deal with heterogenous platforms both at the server and the client machines has created an opportunity to leverage those tools and technologies to solve one of the most troubling and costly trends between businesses and their use of computers Over the last 10 years businesses have increasingly struggled with the continual and breakneck speed of progress in the computer world. New versions of operating systems (OS), new software that must run on that OS, and new hardware to support the growing demand for more memory and faster processors. Business are left with a wide variety of machines and operating systems. Constantly struggling with migration and hardware issues. Massive resources are lost in chasing this will-o-the-wisp of the "final solution". How does your business get off of this train? First there are NO perfect answers, every solution has trade-offs. The key is deciding what are YOUR trade-off levels, and determining what will work for your business. What follows is a brief outline of some strategies that you might want to consider. Micro-Phyla Systems will be glad to work with you on exploring these ideas and how they might be leveraged to your benefit. There is more to this than this short paper can fully cover. (You might be interested in a 60 page outline of much of the concepts at a more technical level in a paper I wrote for the Borland Developer conference. The paper focuses primary on the "client" component. Thin and Smart Web Clients and is also found on the "Papers and FAQ" page.) If the concepts presented here interest you, then drop us a line and we can discuss it in more detail. The Strategy The basic strategy involves a number of broad component areas, they are: Each of these components interact to free your business from the constant "demand to upgrade" of proprietary and single vendor software and operating systems. These components put YOU back in control. This might imply that we are "anti-Microsoft", but this is not the case. MS provides viable solutions and they might be included in the mix. We do though, have a basic distrust of any situation in which the business looses control over their systems and the cost of those systems. All of this can be confusing and complex, and that is where MPS can help. Let us examine a basic overview of each component. Open Source Software Open Source Software IS NOT FREE! Shockingly, that that must be said right away. Yes, often the "up front" costs are very low or in essence, appears "free". The reality is that you need help and guidance and that is where the "Open Source" industry makes its money. The beauty for you is that if you don't like one source of help, you can move to another, and IF you are careful, and stick with "standards" (more on that later), your investment is not tied to a particular source of "help". A common example to illustrate this: the Apache Web Server. This is an industrial strength web server that is used by the vast majority of websites in the world. You can download the latest version "free". It supports multiple platforms such that you can run it on NT, Windows 2000, Linux, Solaris, MacOS 10. Take your pick, mix and match, you decide. Realistically you will probably need some "expert" to assist you in installing and getting the most out of your web server. If the software encounters a "bug" you do not have to wait and see if the vendor considers the bug worth fixing. YOU can fix it, (or realistically hire someone to fix it) because you have the source code. Generally, you just need to report the problem to the open source community (in this example that would be Apache.org) and someone will likely have a fix up shortly (assuming of course you have provided ample information to duplicate the problem). But remember YOU have the source code, and if it is a show stopper for your business, you and take the steps needed to get it fixed. So is it really "free", absolutely not! Will it cost you less? Yes, often times it does cost less, especially if your needs are quite "mainstream". In addition, if your business decides to "freeze" at a particular "version" you are never forced to upgrade because, again, you have the source code! If you do decide to upgrade to a next version you can download that version and "try it out" to make sure it will work for you, "try before you invest". The key point is that in the arena of web technologies, the majority of the basics needed to implement web technologies are in fact available in the open source market. From operating systems, to databases, to web servers, to application servers to web service engines. All of which will function on multiple operating systems. You have choices! Multi-platform software and languages It use to be, in the "old" days, that if you wanted a hope of ever moving your software to another platform you had to write it in "C". And that did not always work too well. We have now come full circle and cut the shackles to "operating systems" with the "virtual machine" (VM). Java has just such a foundation and there have been others in the past, and can be others in the future. The concept of "write once, run anywhere" (WORA) is not total hype (It is not as simple as that phrase implies, but it is, in a limited way, very possible to get to a reasonable approximation.). As VMs become more robust and standardized we are seeing this WORA concept becoming a workable reality. The other part of this is the browser. It uses another multi-platform language, HTML. Through industry standards (W3C) all browsers that claim to support those standards, must behave the same way with the same set of HTML "code". International Language and API Standards In the last few years the new "mantra" has been "standardization". The W3C, for example, manages the HTML "language" and insures that there is a standard foundation that a browser can adhere to and function consistently. Most of your open source community is very "religious" about following these standards such that it is forcing a consistency from vendor to vendor that you can count on to move your business processes and protect your development investment. These standards also protect you from "vendor abandonment" as well as subtle "version changes" that can brake your development investment and send your business back to the "drawing board". Painting a Picture So what can this strategy look like for a business? As an example we'll outline the migration of a medium sized business to this strategy. The business in question uses MS SQL on the back end and that part "for now" we will leave alone. The key on the database end will be the creation of a database "wrapper" that presents the data in a consistant and vendor neutral manner. This is done via the development of a Java/JDO/JDBC API to the database as well as utilizing XML for the majority of interactions to the database. Later the database can be "swapped out" without affecting any other component of the system. On the front end we discover there are casual "management" users of the database and very sophisticated power users that fall into a number of categories. It is decided that the management users really need more information so an intranet system is designed to "open" the company data to all users that need to make decisions. A Linux server, using some old hardware that was lying around, is setup using Apache web server and Tomcat. At this point NO money is spent on hardware or software. Once that is completed, settled and fine tuned, such that it meets the designed needs, the power users are addressed. Because the browser can not meet their needs, a series of stand-alone Java applications are designed that use "WebStart" for centralized deployment and version control. The project is broken down in to realistic phases that can be meet, deployed and tested within a small timeframe. The business is now free to use any client machines it desires. Because of the web based "intranet" system, old machines are still viable. The power users can upgrade to any OS or version they desire. The company can migrate to Linux, Mac, or another OS without breaking their development investment. The backend database can be ported to Oracle for more power or a lateral move to a low maintenance database like, Interbase, or an open sourced database like Firebird, or MySQL Later this company decides to move some part of the business to the internet. A site is developed using standard API's in Java, first just for "presence", and then to slowly market some specific products or services. Market demands will direct this development, not hype or wishful thinking. If demand grows, more powerful machines can be used, using Linux or moving to Solaris for even more power. (Though Linux is rapidly growing up to meet even these "power" demands). Also bandwidth and security issues must be addressed on an ongoing basis (This should be address right from the beginning). Web services can be introduced using Apache Axis as the server. Again standard Java API's are used throughout to insure that the company has the maximum flexibility and will have a ready supply of trained Java developers and consultants that can "pick up the ball" at any time and move some "piece" forward, or fix something just discovered. Does this story appeal to you? If so, MPS can help you get the ball rolling. I personally take pride in making sure that my clients are never dependent on my services. Source code, and good documentation will always protect your design and development investment. I can bring together a host of talent that will meet your needs. I want to help you move your business forward, not enslave you to the technology rat race. Thank you for listening. John B. Moore |
||||||||||||
copyright © SonicSpider LLC 1995-2004 |
|||||||||||||