Weird At My School
What's happening to computer science in education?
In this week's first WTF moment, I looked at Slashdot last night (yeah, I know...) and was greeted with the headline College Board Kills AP Computer Science AB. For the benefit of non-US readers, Advanced Placement (AP) is a program of advanced classes in high schools, in which students who pass a rigorous standardized test can receive college credit for their coursework. Anyways, according to the Washington Post article cited by Slashdot, an AP spokesman said that the more advanced "AB" was among the four least-popular topics, along with Italian, Latin literature, and French literature.
B-trees are as unpopular as Camus? That's news.
Cay Horstmann, who works on the AP Computer Science courses' Development Committee, shares some insights in his blog Is Computer Science the New Latin? He shows a graph of the rapidly dropping enrollment in college CS programs -- particularly women, for whom CS is the choice of less than 0.5% of freshmen, the lowest rate on the 35-year chart -- and asks:
Why don't students major in CS? Nobody knows for sure. The Dilbert image of working long hours in cubicles, only to have your job outsourced, surely doesn't help. We do know that most students have made up their mind by the time they reach college, so the way to their hearts and minds is in secondary school.
There's probably a counter-argument that there are plenty of effective programmers who don't come from an academic CS background, which is a big bag of glass shards that we really shouldn't open up on a Monday. At least for the moment, let's assume that genuine CS really is worth saving. So what do we do? Cay recommends duty now for the future:
you can see, CS in American high schools is in bad shape. That is a problem
for all of us in the computing industry. What can you do? If you have kids in
school, make your voice heard with the school board. Volunteer in the CS
club. (They don't have one? Start one. I fondly remember my high school days
in the physics and technology club, the
refuge of the nerds. We were a proud group of nerds, and many of us ended up
with a Ph.D.) Get your company to send speakers, volunteers, and equipment.
Get kids into your company so they (hopefully) see that it's not Dilbert
land. And remember, what got you into CS may not be what excites them, so be
on the lookout for new approaches such as href="http://www.alice.org/">this or href="http://worldwind.arc.nasa.gov/">this or href="http://greenfoot.org/">this.
Also in today's Weblogs,
James Gosling crows about
"I've had several run-ins in recent months with crusty C (and a few Fortran) programmers who say "you must be faking your benchmarks!". Nope. The HotSpot crew has done a truly great piece of work."
EvanÂ Summers continues his series on re-imagining Java in
First Class Java: Thoughts on a dot notation, wondering
"what notation for first-class references to methods, fields, properties and what-not?"
In Java Today,
Joe Darcy's blog has a catch-up announcement that the source for OpenJDK 6 b07 and b08 were released in late March. "The most notable fixes in b07 were resolving the last remaining JCK signature test failure (6636951), making window decorations appear (6586752), updating to the 1.1 version of the OpenJDK trademark notification, and enabling the out-of-the-box build to succeed without any binary plugs being present
(6672710). If the plugs aren't used, neither the midi synthesizer nor SNMP will work at runtime."
In a new video from NetBeans.tv, Sun Microsystems evangelist David Coldrick interviews Sun JavaFX developer Josh Marinacci during the Sun Tech Days in Sydney, Australia. They discuss JavaFX and the state of desktop Java, how improvements to client-side Java (like Java SE 6 update 10) will help JavaFX, his day-to-day work on JavaFX, the prospects of Java RIA versus Ajax, the JavaFX designer tool he's working on, and more. Josh has more details of his Sun Tech Days Australia presentations in his blog.
The latest JavaTools Community Newsletter, issue 164 is out, with tool-related news from around the web, a reminder to check out the java.net Community Corner pod schedule, news from projects, and a Tool Tip on presenting your project at JavaOne.
In this week's Spotlight,
entries are now being accepted for the RoboSim Programming Contest. The contest "is designed to test an entrant's coding skills in Java using the Greenfoot Framework/IDE to direct a simulation of a Sun SPOT equipped TrackBot through a simulated maze. The winners will receive free passes to the JavaOne 2008 Pavilion." To participate, read the rules (PDF or HTML), and follow the instructions in the trackbots-greenfoot-contest-2008 project. The deadline for entries is April 14th.
In today's Forums,
kbr continues last week's discussion of Java icons in the Windows Sstem Tray and other user experience issues, in
Re: Plugin2, animated gif based branding (white background flashes).
"Please feel free to file an RFE about the kill option in the system tray. Another developer also raised this at a presentation on the new plug-in a few weeks ago. One question is how to identify the JVMs. Keep in mind that the JVMs launched on behalf of the new Java Plug-In run multiple applets and the existing tools like jps don't have a good way of enumerating them. I think the most we would be likely to do would be to add a "kill this JVM" menu option and some way of listing the applets it is hosting so you can decide whether you really want to do that."
In a similar vein,
pete1 has some suggestions regarding the
User experience installing 6u10.
"I have got a request, though. Installing Java is now much faster, but would it be possible to make the process simpler as well? Suppose you are using Windows, and you uninstall the Flash player through the control panel. If you now start IE and visit a site that uses Flash, all you see is a box inviting you to install the Flash ActiveX control. If you accept the installation, Flash is installed without the need for the user to answer any more questions. It would be perfect if the Java installation could be this simple. I think it's easy for us to forget, as programmers, how confused normal users get when they use their computer. Every screen they see in the installation wizard is a chance for them to give up. If they are asked a question which they don't understand, they may give up because they are afraid their computer will go wrong if they answer incorrectly."
Finally, Markus Karg asks about strategies for
Web Service Events.
"I am using JMS quite heavily in my application to be able to push events asynchronously from server to clients. This prevents a lot of polling. Now with the advent of WS-* support in GlassFish, I was wondering whether there is a WS-* based replacement for JMS. My idea is to just write some kind of annotation like "@WebServiceEventListener" to mark a client as beeing interested in getting asynchronous events. In the end, even a MDB could become WebService-triggered instead of JMS-triggered. Is something like that existing in GlassFish, or at least planned for the future?"
Current and upcoming Java
- AprilÂ 8-11 - JAX India 2008
- AprilÂ 8-11 - Struts Training Philippines
- AprilÂ 12 - JUG.RU meeting
- AprilÂ 18-20 - Great Lakes Software Symposium 2008: Spring Edition
- AprilÂ 18-20 - Pacific Northwest Software Symposium 2008: Spring Edition
- AprilÂ 21 - Triangle Java Users Group - Groovy
- AprilÂ 25-27 - Northern Virginia Software Symposium 2008: Spring Edition
- MayÂ 2-4 - Rocky Mountain Software Symposium 2008: Spring Edition
- MayÂ 5-9 - Java Training Philippines
- May 5 - CommunityOne 2008
- MayÂ 6-9 - JavaOne 2008
- MayÂ 12-15 - Java Power Tools Bootcamp
- MayÂ 19-23 - Daring Java Conference: Java to Celebrate Its 13th Birthday at Bangalore
- MayÂ 19-23 - Great Indian Developer Summit 2008 Features Co-located Conferences on Java, Rich Web and .NET
- MayÂ 19-23 - J2EE Training Philippines
Registered users can submit event listings for the
href="http://www.java.net/events">java.net Events Page using our
href="http://today.java.net/cs/user/create/e">events submission form.
All submissions go through an editorial review before being posted to the
Archives and Subscriptions: This blog is delivered weekdays as
Today RSS feed. Also, once this page is no longer featured as the
front page of java.net it will be
archived along with other past issues in the href="http://today.java.net/today/archive/">java.net Archive.
What's happening to computer science in education?