Mistake #1 - Being indifferent about your technology platform for dynamic applications
You may not be a programmer, but...
Many buyers of Web services are not familiar with programming languages and while you will not need to become a programmer or need to know the syntax of how to program (after all, that’s what you’d hire a Web developer to do), you should be familiar with Web programming history related to languages, what’s en vogue and what isn’t. Here’s a run down…
CGI Scripts/PERL
Ugh. I still get shivers thinking back on how difficult it was to program Web pages in this platform. In the early days of the Web, it was really the only way to have any programming logic built into your Web pages. CGI scripts require a working knowledge of PERL scripting which has its roots in mainframe programming. You can recognize pages built in this platform by their .cgi or .pl file extension.
Cold Fusion
When Cold Fusion came along in the mid to late 90’s, it enabled Web developers to more easily introduce some “if then” logic into their Web pages and connect them to databases that stored data entered into Web forms. Cold Fusion still enjoys some popularity among some beginning Web developers due to its ease of use, but nearly all experienced Web developers today will cite Cold Fusion’s limitations and lack of scalability (it doesn’t work well for larger enterprise applications) as their reasons for avoiding developing with it. Instead, developers have chosen to learn the more popular platforms mentioned below. This is important even for smaller Web sites to consider because your Cold Fusion Web applications will be harder to maintain and grow as the number of programmers proficient in Cold Fusion continues to diminish. You can recognize pages built in this platform by their .cfm file extension.
PHP
In mid to late 90’s PHP enjoyed some popularity among developer who were more familiar with CGI and PERL scripting. PHP allows a developer to get development done faster on these platforms with less head scratching than CGI Scripting. There are still die-hard PHP developers out there that support it because it‘s low cost, “grassroots” and even simply because it’s anti-Microsoft. You can recognize pages built in this platform by their .php file extension.
Active Server Pages
In the late 90’s, Microsoft entered the fray with Active Server Pages as many experienced programmers found the limitations of Cold Fusion to be bothersome as they moved into larger Web applications that relied more heavily on database interaction. Databases for Web applications were also taking on enterprise level sophistication evident in Microsoft SQL and Oracle.
Active Server Pages enjoyed a few years of serious popularity and is still commonly used today, but most serious developers clamored for more flexibility and more reliability found in compiled code. Without getting overly technical, ASP and the above platforms rely on the server to process scripts versus an actual compile program that is optimized for performance and reliability. You can recognize pages built in this platform by their .asp file extension.
Java
Java has, and continues to be, popular as a development platform due to the reliability and scalability of code being compiled into an application. Again, without getting too technical, compiled applications “run” within themselves and do not have to pass data (variables) from script to script which causes unreliability. Also, you can simply do more with the logic of Java than the previous examples. There are a few different file extensions that indicate Java pages, but they generally start with a “j”, as in .jsp or something similar.
.NET
.NET is Microsoft’s answer to the problems with its Active Server Page platform (mainly that you couldn’t produce reliable code through compiling). Because of Java’s popularity, Microsoft developed a compelling list of reasons for using .NET instead:
- Provides an object oriented programming framework for increased developer productivity.
- Code is compiled, which reduces errors and increases execution speed (runs faster).
- Provides multi-language support so developers can leverage their strengths and previous experience with a particular language. .NET applications can be written in a variety of languages, including: C++, C#, Visual Basic.NET, J# (java), Pearl, Jscript.net, and others. And more than one language can be used on the same project.
- Increased performance as compared to other frameworks such as Java J2EE, Traditional Active Server Pages, CGI, PHP, and Cold Fusion.
- Integrated development tools and pre-built controls increase developer productivity and reduce project development times.
- Lower cost of ownership, particularly for companies that are already using Microsoft software. With Microsoft you get an application server and a Web server for free (versus buying IBM WebSphere at $10,000 per CPU).
- Significantly more configurable, reliable, and scalable than Traditional Active Server pages (on par with Java J2EE).
- For companies already using Microsoft software, provides tight integration with Windows servers, Internet Information Server, and SQL Server, which helps to reduce development times and simplifies administration and maintenance.
You can recognize pages built in this platform by their .aspx file extension.
What does the future hold?
A cursory look at computer programming curricula around campuses will demonstrate the trend towards Java and even more so to .NET platforms. Ultimately, which of those two platforms you choose may be based on what’s recommended by a developer who will generally stick to what they are familiar with. I encourage you to evaluate the decision more closely with a long-term viewpoint. Otherwise, you may end up feeling like all those people who bought WordPerfect, Lotus 1-2-3, and Lotus Notes five to ten years ago.
Catch next month’s enewsletter to see four other common mistakes folks make when creating and maintaining Web sites.
If you have any comments or questions about any Aware InSites, feel free to contact us at info@awarewebsolutions.com or call 800-783-8919.