Most of the time, I really do like my job--I get to teach interesting topics to interested students, and that's a lot of fun.
There are times, however, when I really wonder why I left behind the relatively stable world of library science for the chasing-your-tail world of cutting edge technologies.
Take, for example, the web-database class that I developed four years ago--not particularly long in most academic lifecycles. At the time, PHP and ASP were the cutting edge technologies du jour, and students came into the class knowing nothing about PHP, MySQL, or ASP.
Over the past several years, a number of factors have signficantly changed the context for the class.
- Students now learn PHP in the web programming class that precedes my class (that class used to be JavaScript and Perl only)
- Students now learn MySQL in their introductory database class
- Component-based technologies like JSP and .NET have emerged as successors to page-based technologies like PHP and ASP
As a result, before I've really even solidified the course in its original form, I'm having to learn entirely new technologies and teach to a differently prepared audience. All of which, as any teacher will tell you, is more than a little stress-inducing.
I've spent most of the past two weeks trying to re-teach myself JSP, this time incorporating Tomcat 5 and JSTL. The nice part of using JSTL is that it hides all the Java code from me--and since I never did learn to program in Java, that's a goodness. The downside is the documentation really stinks--I've found a ton of web sites, but none of them are clear and direct, particularly when it comes to doing simple database-related tasks.
After four days of banging my head against the code, I've finally figured out how to do the simplest of tasks--retrieve several hundred records from a MySQL database and display them ten at a time. Oy.
The future, I think, is to let go of the traditional approach of teaching how to do things in a specific language, and instead offer a more studio-like environment in which students are given access to resources and tools, and then work on developing a project. (We teach most of our classes in "studio mode," but in most cases they're far from real studio approaches--they're lectures with occasional hands-on exercises.) Surprisingly, it's the students who are often most resistant to this mode of teaching--we've successfully conditioned them to see school as a series of core dumps, and switching gears into a more user-directed model often generates resentment and confusion rather than enthusiasm and creativity.
PLEASE don't be talking about 409....I am ALREADY stressing enough for getting myself into it!!
No, 409 is a delight to teach. I'm talking about 751, the web-database class.
Technology is changing quickly... and faster than I sometimes think. It's hard to believe the things I'm learning now could be outdated in a few short years.
I learned ASP.NET (.aspx) and MS SQL Server in web-database class at my community college recently. Why don't everybody at IT use ASP & ASP.NET and MS SQL Server?
dang... and I thought my high school PHP class that I teach was cutting edge. Rats. :)
David, that's a question that I get asked a lot; we discussed it in some detail this quarter, and I provided some readings on the topic, here:
http://www.it.rit.edu/~ell/751/751-033/archives/2004/04/19/
In a nutshell, we use JSP and mySQL rather than ASP.NET and MS-SQL for the following reasons:
* open source solution that students can install on their own computers
* cross-platform capability, so I can run it on my Mac, the students can run it on their PCs, and we can run it on the Linux boxes in the lab
* builds on the Java programming that IT students have already had
There is a short entry over at Philip Greenspun's Weblog (http://blogs.law.harvard.edu/philg/2003/09/20#a1762) about using Java to develop web services
and applications in general. After working with VB, REALbasic, Java, and PHP, I have to agree that
using simple IDEs and scripting languages over some of the heavy duty languages makes a lot of sense for most applications and web services.
Adamd, that's a great link--thanks! It _totally_ validated my feelings about JSP vs PHP et al. Am sending it to my students to read, as well.
I'm using ColdFusion MX at my co-op right now, and I think it's God's gift to OO web application development.
I really love it. It's all Java under the hood now (I love stack traces!) so it's easy to error check, to trouble shoot, etc. If it was open source, I really think people should consider using it more.
But I agree with the studio style. I'd love to sit down with JSP or C# and create a web app, instead of PHP MySQL. I'm kind of dreading going back to PHP because I've been pampered by CFMX for the time I've been here.
I recently ended a job hunt and it is interesting to note that a majority of the positions that I found were needing either or both Java and ASP.NET.
ColdFusion is a wonderful web app environment. It is extremely easy to learn and the tag based approach is really geared for designers. I think it's downfall is the cost of the application server.
Tomcat and other ASF projects documentation is exceptionally lacking. I totally agree with you. I was searching documentation for the Apache XML-RPC Java implementation last week, and documentation barely consisted of 300 words.
I dig your Yiddishisms - "oy" in this post and "kvetching" in the tablet post. And thanks for pointing out the powerful Washington Post editorial - this whole was is a shande, as far as I'm concerned.