As Web technology evolves, so do the needs of ColdFusion students.
Speed is king in the fast-paced world of the Internet. Stand still too long and your competition will buzz right by you. Given that fact, it isn't surprising that
ColdFusion, the cross-platform Web application server developed by Allaire Corp., is becoming more popular among companies racing to build ecommerce sites, collaborative databases and other Web applications. Combining visual programming techniques, database tools, tag-based server scripting and interactive debugging, ColdFusion lets users integrate browser, server and database techniques.
"It's one of those technologies that have what I call a high "oooh-ahhh? factor," explains Steve Heckler, president of Westlake Internet Training in Arlington, Va. "Folks who have done HTML really struggle if they try to use competing technologies like active server pages, CGI script or Java servlets. But because ColdFusion's tagging language stacks on top of what they already know , HTML , they find it feels pretty familiar right away." Heckler has seen demand for ColdFusion training at his company double over the past year.
Knowing students? backgrounds at the beginning of a course is a key issue in ColdFusion training. It's particularly important because many of the early users of the technology come from the Web development arena and bring little traditional programming experience.
"They often have grown up with the Web and understand it, but have difficulty with the programming piece: conditional processing, looping, use of complex data constructs and other concepts that you really need in order to get the most out of ColdFusion," says Carolyn Lightner, director of educational services at Allaire.
Accordingly, many vendors offer introductory classes that focus on the special needs of the non-programmer. Allaire offers a three-day class on fundamental programming and database management. "We're trying to get students to understand basic programming concepts, how to query databases and how to manage data through a Web interface," says Robert Crooks, Allaire's curriculum manager.
Learning how to deal with variables is another challenge for students coming from a non-programming background, he says. In ColdFusion, some variables are specific to particular Web pages, while others span multiple pages or are available to multiple applications on the same server. "Understanding how those work, where the information is stored, and how to access it is a major challenge," Crooks says.
More recently, however, Allaire's training partners are seeing more students with a traditional development background. "We're still working with Web developers, but we're seeing a lot more traditional programmers who are working on enterprise-scale, mission-critical projects," Lightner says.
"I think it just reflects the industry," adds Crooks. "A couple of years ago there really wasn't a lot of programming talent in the Web space. It was primarily people who had been managing static Web sites and who were gradually moving into building dynamic sites. But now dynamic sites have really taken over the Web, to the point where it has attracted a lot of programming talent."
Students with strong programming backgrounds have different needs than non-programmers, says Crooks. For the most part, they're used to working with a general network operating system that has a great deal of continuity.
"The thing that's challenging about the Web is that each time a browser makes a request to an HTTP server, it's a completely independent request," he says. "The server has no memory of anything that happened earlier. So you have to build in that memory through the programming logic by using different variable types and finding ways of storing information , some of it on the client and some on the server, so that you can connect up the two on request." To meet that need, Allaire has made the concept of managing the client state for Web applications a major part of its Fast Track course.
Building Web sites
The typical introduction to ColdFusion begins with an explanation of the major components of a ColdFusion Web application, including the ColdFusion Markup Language (CFML), the ColdFusion Application Server, ColdFusion Studio and the SQL skills programmers need to build database-driven Web sites.
Students usually start by reviewing some database architecture. They then jump into the process of building pages with Visual Studio. In a typical exercise, the students will build a page that can look up a customer in a fictitious company's client database.
Next, the instructor might talk about how to build a Web page that is capable of drilling down into that database. For example, students might modify their original pages so that clicking on a client's name executes another CFML page and sends it an ID number to look up. The second page should display complete contact information for the client.
Students gradually build a Web site complete with many of the features they would find in a full-blown corporate site. In Allaire's Fast Track course, for instance, students build a site for a coffee bean distributor. The site allows distributors to log in, place orders and check on their order status. In Westlake's introductory class, students design a site for a travel gear company called J. Cold (a play on the J. Crew retailer) where users can go online and buy kayaks, parkas and reindeer sausage.
"We find that having things fit together thematically and having students add on to an exercise step by step works particularly well," says Heckler. For instance, students? first task is to select a record from the database and extract it as a bulleted list. Next, they have to put the records into a table. Finally, they'll drill down deeper into the database so that they can click on an individual record and display more details.
Westlake trainers also find that students respond well to seeing some of the unexpected things users can do to their Web sites. As an example, the instructor has students build a search interface that searches by last name. The instructor then asks students to type in a number that will create an error message. Students have to figure out how to write code to prevent that error from occurring.
"We really try to reinforce not just the mechanics of getting the data out, but also how to validate what the user is typing in. The user should never be able to type in something funny and get an ugly error on screen," says Heckler.
Rising complexity
Advanced ColdFusion classes take the technology to the next level. They typically focus on how to build more complex Web sites using distributed applications and modular code, and how to make applications run faster and recover from unexpected errors. Course topics include accessing stored procedures, using cookies, writing customized CFML tags, and using ColdFusion's advanced error and exception handling capability.
One of the most popular topics in Westlake's advanced ColdFusion class is the use of regular expressions. Used to validate complex forms, regular expressions let the developer verify that the information the user has entered conforms to the correct pattern. A common example is a request for a Social Security number. By using regular expressions in ColdFusion, developers can ensure that users key in three digits, a dash, two digits, another dash and then four digits. "The students like that part of the course because they can turn around a lot of the code we teach and use it elsewhere," notes Heckler.
One of the more challenging aspects of the course, he says, is understanding how stored procedures can improve security, execution speed and scalability. In Westlake's class, students build a stored procedure for fictional online bookseller Amazing.com's Web site. "We first show them what stored procedures are and how to get at them from within ColdFusion," says Heckler. "Then we show them how to perform some basic cross-table queries, where they can select data out of multiple tables at the same time."
But with the Web constantly changing and the audience for ColdFusion education becoming more technically sophisticated, trainers admit that no curriculum is ever complete. "We're constantly revising our classes as we get feedback from instructors and find that students? interests and need for education change," says Crooks.
Full Text COPYRIGHT
COPYRIGHT Bill Communications Inc. 2000. All Rights Reserved.