31 October 2007
Today, Adobe launched the new Education Developer Center, which will cater to people who are teaching or learning how to create web and desktop applications using Adobe® Flex™. I work for Farata Systems, a company that develops rich Internet applications (RIAs) using Adobe Flex and Java™. I've also been teaching Flex to various audiences, including students of one of the most prestigious schools — New York University (NYU). In October 2007 I'm going to teach the Flex course at NYU for the fourth time.
It's no secret that enrollment in computer science and information systems courses is on a decline in the United States. High school graduates do not select IT-related majors for various reasons, and the following two seem to be cited more often than others:
My short answer to the first statement is this: Raise your hand if you know a computer science graduate who tried but failed to find a job in IT. Not too many hands, are there? Software engineers are in big demand in the U.S., and this trend will surely continue. Offshore teams do not represent a threat to U.S. software developers. They bring more competition to the field, but there are plenty of IT jobs in the United States.
The second statement is more fodder for discussion. I was recently speaking with professors about the high dropout rates in computer science departments. One of the reasons cited for the dropouts was that a large number of students enrolled in CS were under the impression that they would just be learning how to create cool web pages. In reality, though, they had to study data structures and algorithms, how to create compilers, and similar disciplines, which was not a lot of fun. Those who graduated and started working as enterprise software developers quickly realized that most of the disciplines they'd been studying in school were not needed to perform their daily duties. Some professors would argue that educational goals of the universities are much wider than just baking programmers for the industries. I can buy this — but then don't complain about the decline in enrollment in your classes.
Curriculums in computer science and information systems should include more courses in practical disciplines, arming students with the skills prospective employers are looking for. Learning object-oriented programming with Java and C++ is a must, and knowing how to work with databases and what software engineering is all about are important as well. But it's the 21st century, and you can't ignore the web. Colleges should introduce more courses about web application development early in the program. And these courses should be fun.
This is where Adobe Flex comes into play. Every high school kid knows about YouTube. Many of these kids know that these videos are rendered using Adobe Flash® Player. Some of these kids know that Flash programmers write programs that support rich media content delivered by Flash Player. A number of kids know that you can easily create rich Internet applications with ActionScript™. But only a small group of people know that there is very robust technology called Adobe Flex that can be used for creating the content for Flash Player.
Not only videos, but banners and animations as well can be delivered to consumers by Flash Player, which is a virtual machine (VM) similar to the Java Virtual Machine that is a multiplatform environment for delivering web content. Flash Player 9 is already installed on more than 90% of computers in the world. Major enterprises have already started using Flex for creating RIAs. Wall Street is using Flex for development of mission-critical applications. Yahoo! maps are created using Flex. eBay is developing applications in Flex. Federal agencies, SAP, Salesforce.com, multimedia firms — all are using Adobe Flex for creating very interactive, visually appealing web applications.
If you have not had a chance to work with RIAs, check out the article Rich Internet applications: State of the Union to get familiar with major players in this emerging market.
I'd like to give you some reasons for adding a class on rich Internet applications with Adobe Flex to your curriculum:
I do not like the word "exciting" when it comes to professional programming, but I can promise you this: You will become excited from the minute you start preparing your Flex course.
I'm sure Adobe realizes the huge potential in bringing Adobe Flex into higher education, because students turn into employees, and they will start using and recommending this technology for enterprise projects. Such a strategy worked out great for Java, and it will work for Flex as long as Adobe offers support for students and educators. Launching this online Education Developer Center shows that Adobe is serious in this department.