BCIT Term Wrapup

A good term at BCIT this Spring. A very good term, both in terms (oh dear!) of course enjoyment and in terms of marks.

I took the 12 week ‘XML For Web Applications’ COMP2899 course downtown. My first course at the downtown campus – it’s really nice there: very modern and shiny. Course was also excellent – interesting material… I never knew you could do so much with XML and there was so much XML capability built into every browser. I knew about basic XML, DTDs, XPATH and parsers already but the course also taught schemas, XSLT and web services – overall very interesting. The course required quite a lot of learning but the labs, assignments and tests were all very fair – basically just to show that you’d done and understood the lecture content. I got a 99% mark which I’m very pleased with – especially so because the final exam was closed book with no ‘cheat sheet’!

I took the XML course for several reasons. Partly because XML interests me – all applications need configuration data and free-format text files are a recipe for disaster. Partly because I’m trying to complete the Advanced Java Development Certificate program and none of the courses I still needed were running this term. There’s one required course which hasn’t run for at least 18 months! I emailed the part-time studies director and he recommended the XML course. The course isn’t on the Java program but apparently there’s a re-organization coming which will put it on there (although another 5 months have passed now and the XML course hasn’t been added to the Java program and the lost required course still hasn’t run).

Having looked at the XML course I noticed that it’s also part of the Web Application Software Development Certificate program. I looked at that program and was amazed… not only are all the courses on things I’m interested in, I’ve already done half of them! So now I have TWO goals.

Over the last year, I’ve come across small pieces of PHP in several places. Tweaking WordPress themes has exposed me to some, and the BCIT AJAX course has required writing some PHP to handle the server-side functionality but this has pretty much all been self-taught. So when I noticed that a PHP course, COMP1920, was part of the Web Development program and there was an accelerated version coming up, I signed up immediately.

The PHP course was really eye-opening. For starters, it was the standard 12 week syllabus condensed into 6 Saturdays – you do one ‘evening’ in the morning and the next ‘evening’ in the afternoon. The course itself started out at the basics as some of the students hadn’t even programmed before, let alone seen PHP. But with the workload doubled, I was very happy with the pace.

The course lecturer makes an incredible difference to any course and the PHP course reintroduced me to the best lecturer I’ve had at BCIT. Jason Harrison is a programmer’s programmer – he isn’t there to teach you the theory, the 20 different parameters you can use with a function, he’s there to teach you how to get results. Jason teaches the course as 80% programming and 20% business. One of the things that PHP is great for is rapidly developing web-based applications and so a lot of people make a lot of money from using it. It seemed that most of the students had signed up for the course with that in mind and so we were all as spellbound when Jason started offering advice about business strategy as when he introduced the fopen() function. Actually… maybe more so!

I’m used to lecturers emphasizing the evils of cheating and the need for students to complete their work on their own but Jason’s approach is the opposite. Yes, work that you hand in has to be written by you, but there’s nothing wrong with consulting other students for advice. After all, that’s what you’d do in the real world. In the PHP course, Jason takes it a stage further – there are sections of the course which you MUST complete with other students – some parts in pairs and the final assignment as a team. The final assignment was something I’ve never seen on a BCIT course. The brief was to form a team, research something related to the course material that might be of interest to the other students and then give a 30 minute presentation – complete with demonstration and class exercise.

The course work was great. Because we were working at double pace, the first half of the course was heavily loaded with labs to be submitted each week. The second half of the course had coding assignments, the final assignment and revision all falling over each other. This generated a terrific buzz – I was writing up our class exercise, struggling with PHP session management and guiding other students through their problems simultaneously. Again, just like the real world.

Everything came together wonderfully. The final coding assignment had two options: the easy option was marked to a maximum of 100%, the hard option was marked to a maximum of 115%. Unfortunately there was no overlap between the two projects… so you had to make a decision at the beginning and stick with it. I chose the hard option and got bogged down in session management for a bit but once I’d conquered that it came together well – I even had time to extend it beyond the requirements with a bit of personal flourish. Our presentation on email injection, form validation and CAPTCHA went very smoothly. I presented the class exercise on getting the other students to add a CAPTCHA test to an existing PHP form – went OK, most of the students managed to complete it and I think I answered all the questions well. It seems my Toastmasters experience showed through… I’d mentioned that I was in Toastmasters at the beginning of the course but not had any feedback. After my presentation I had THREE different people come up to me and ask me for more information. Because of the compressed timetable we had a short break after the presentations and then straight into the final exam, no time to rest on our laurels!

Overall I loved the course… content, lecturer, format all worked very well. Oh and I was very pleased with my mark as well… 100% 🙂

Jason also teaches an advanced PHP course but for some reason it’s only scheduled once a year. I’m itching to get on that course!

Comments are closed to reduce the spam. If you'd like to add something, please use the contact form to let me know and I'll reopen comments for you. Thanks