A diary, what I've been up to lately...
ProgZoo Performance, September 2009
There has been a great deal of tinkering lately. The big tutorial, with 140 students is on Friday. I haven't had one go well yet sadly. Fortunately I always have a back up exercise, on paper in case the system goes down (which it has done without fail so far). It works OK (mostly) with classes of 50 but 140 has always bought it down.
- First week - the Wiki broke down and the main server had to be rebooted. So, I moved the wiki sql database to another machine.
- Second week - the Wiki stayed working but then the machines running the Java became unreliable they would run out of memory and deliver empty png files. Worse - I was caching the empty png's and these were shown in preference even when the machines did actually deliver them. I stopped caching empty images.
- Third week - Even without caching the machines were still delivering errors too often. Also - the error rate was high because the overloaded machine responded slightly quicker. I have now adjusted the queue so that only one job is done at a time. My tests have shown no errors but it is pretty weedy that each of these super servers can only do one java program at a time - not to mention a waste of multi-core.
- Fourth week -
The second group of students form Lincrea, Japan finished on 18th July 2008. I enjoyed teaching them and I was sad to see them go. We covered a range of different topics themed around internet applications. We did some good work with Ajax and the scriptaculous library. The results of this are at Find the Duplicate Game
Eriko, Kentari, Haruki and Mitsaru.
The [PMP Exam] went live 18th July 2008, I've working on this for a while with Caitrin McCullough at O'Reilly. The questions have been taken from http://www.headfirstlabs.com/PMP/free_exam/HeadFirstPMP_PracticePMPExam.pdf - I used pdftotext to extract the questions, distractors, answers and feedback, tidied them up a little then put them into mysql.
Caitrin added more text and assigned "performance domain" and "task" data. The quiz interface uses scriptaculous (which uses prototype) and features the blind-down/blind-up effects. There's an editor (hidden behind the password protected area of headfirstlabs.com) which is crude but usable. The question editor uses in place Ajax controls.
- SQL Hacks - I wrote this with Gordon Russell over the summer of 2006. We worked mostly with the editor Brian Jepson.
- Headfirst SQL - Hands on at http://www.headfirstlabs.com/sql_hands_on/ - this allows readers to try out examples from the book using a web based interface rather like SQLzoo. Completed October 2007.
- PMP Exam
- Headfirst PHP & MySQL - I've not really done any work here - but I've been advising them how to set up a mysql account so that readers can connect their own scripts to our mysql server. It seemed simple but it's taken an incredibly long time. Around 30 emails. Here are some things I've learned:
- Outgoing mysql connections on port 3306 are blocked by Napier in line with JANET policy.
- You can use an anonymous MySQL account with no password - give permission to ''@'%' - then anyone can connect using any user name (any username that does not exist). This anonymous user can give any password.
They used my quote on the back cover of Headfirst SQL. I like being able to wander into a bookshop and find my name on the cover. I'm "Andrew Cumming - Zookeeper at SQLZoo.net" which nicely gets the URL out there.
Reflections on working with O'Reilly
I've always admired O'Reilly - Java in a Nutshell was the first O'Reilly title I bought years ago and I have been impressed ever since. It was a huge thrill when I got an email out of the blue inviting me to write SQL Hacks (I was convinced it was a hoax until I received some free books from Brian).
As you would expect the editors write well, we communicate almost exclusively via email and when I look back at our correspondence I am shamed by my English and impressed by theirs.
They are very good to work for and I enjoy being the technical adviser for such a company - I think I qualify as a geeks geek.
The money is not great but it's still well worth it.