Archive for July, 2007

YouTube Vs Hollywood: Transformers Movie Shootout!

Monday, July 30th, 2007

And the results are in, YouTube 2 - 0 Hollywood! Mr Bay you have been beaten…

Easily, the best Transformer films of the summer are

Mee, Grimlock luv U-Tube!!!

Momentumless Linux and the Death of Open Source - A Developer’s Response

Sunday, July 15th, 2007

A couple of blog and news posts on the Internet this week seemed to make the headlines with death knells for Linux and Open Source for a multitude of reasons, both chronic (less anti-Microsoft sentiment about) and recent (GPL 3). But on reading, I couldn’t help but feel that both posts sounded wrong, utterly utterly wrong in fact. No disrespect intended to the authors of course.

The first post Open Source Is Dead, Long Live Open Patents? by David DeJean, which took a commonly cited angle on GPL3 hurting Open Source by fragmenting the community. But that is to not understand the community. Bare in mind one important fact about community-oriented Open Source developers, of which I am one - we write the software because we love to. For the vast majority of SMD’s (Small-to-Medium size project Developers, for want of a better term) we don’t really care whether our project is GPL2 or GPL3 - why? Because they are both effective Open Source licences and they will both serve our personal purposes fine as either licence would suit our pet projects. Of course, we’ll all still get our goat up as to whether Linux or the GNU Compiler Tools should be GPL 2 or 3 - but that’s a separate issue - it’s won’t stop us writing the software we love. It is naive for commentators to think that because a new licence comes out that it will hurt the amount of FOSS produced. As for businesses, if it made sense to switch to Linux before GPL 3, it will still make sense after GPL3 - irrespective of what or who adopts GPL 3. It technically affects Tivo (although they will be able to stick with Linux 2.4 kernel) - so what? Such cases only make up a small part of the econosphere. Plenty of business providers seem to be happy. Even embedded solution providers are saying that GPL 3 won’t turn customers off, with Jason Wacha of MontaVista saying “Our customers are used to working with licenses that are much more restrictive than the GPL. In my opinion, typical proprietary licenses are much more restrictive in pretty much all instances than the GPL.”

(more…)

Transformers - The Worst Movie Ever!

Sunday, July 8th, 2007

Robots in disguise? No. Michael Bay - film maker in disguise. He has taken a cult classic and turned it into a steaming pile of utter junk of the “Yeeh hawww! God bless America variety.” Certainly, he should never be allowed near a movie studio ever again. Here’s why…..

You would think that Transformers would be a film about robots. No, in fact the only time robots make it into the film is to appear in cabaret style slapstick sketches where they incompetently fall about the place. They are like extras from a pantomime, lacking any personality, led by incredibly boring Optimus Prime who comes across a sort of Treebeard, from Lord of the Rings, with a number plate strapped - he really is that bland in this film.

A massively disappointing thing in the film is that all the Transformers look the same - kind of like a couple of electricity pylons stuck together. It’s actually hard to tell Megatron, the ultimate baddie, from any of the robots because they all look the same. Poor Megatron doesn’t even have his trademark canon strapped on his arm??? And Optimus’ colour scheme makes him looks like he’s about to lead a gay pride Autobot march rather than go into battle. Worse again he has lips - no doubt this is to give the audience something ‘human’ to identify with. However the only thing this movie could be identified with is the type of thing that you flush down a toilet after a long night on the beer. Yes, it’s that bad.

And to top it off the film can’t resist rolling out the usual racial stereotypes

  • The black people in the film are portrayed as stupid and fat
  • The dialogue is peppered with things such as ‘Could the Iranians have invented this weapons system? No, they’re not smart enough. It must be the Chinese or the Russians…’ (not an exact quote as I’m trying to forget things about this film but close enough)
  • And whilst the autobots collapse clumsily around the place, the U.S. marines fly in to save the day. Wup dawg!

The Autobots and the Decepticons also never really get to have a good fight with each other. For example when Megatron and Optimus tee off they look more like a couple of fat wrestlers bumbling each other around that robots having a death match. You don’t really get to see much, just a blurry zoomed in camera on their shoulders as they tussle about like drunks thrown out after closing time. There are a few saving graces to this movie. The acting isn’t bad, there’s a few funny gags along the way, the lead female in the film - Megan Fox - does a very good job of looking hot, the small boom-box radio transformer at the start of the film is funny and has a bit of personality.

But the bottom line, if you want to watch a war film - along the lines of Armageddon or something - then this might pass the time for you. Think of this as Iraq with cabaret robots. If you, like me, grew up with Optimus and Co and were hoping for a strong appearance on the silver screen then this is two and half hours of your life that you’ll want back! But like the brilliance of the original series - you can’t have it!

Digg this story or rate it on Reddit


QObject, QMake and Sadness - ‘Undefined reference to vtable’

Sunday, July 1st, 2007

Mmmm… Bit of a longwinded title there! Basically, I could not shake off the following error recently, when writing a class Browser which inherited from QObject. Apparently, the answer is that sometimes you simply have to delete your Makefiles and regenerate them using QMake (KDevelop automatically creates Makefiles from me if none are found), in order to get over this error.

/path/to/frogface/trunk/src/browser.cpp:38:
undefined reference to `vtable for Browser’
browser.o: In function `Browser’:
/path/to/frogface/trunk/src/browser.cpp:34:
undefined reference to `vtable for Browser’
/path/to/frogface/trunk/src/browser.cpp:34:
undefined reference to `vtable for Browser’
collect2: ld returned 1 exit status
gmake[1]: *** [../bin/frogface] Error 1
gmake: *** [sub-src-make_default] Error 2
*** Exited with status: 2 ***

Thanks to the patient folks on the QT mailing for the help!

Funnily enough as I write this, someone’s just posted the following checklist on the #qt irc channel, which is good advice

  1. Make sure the Q_OBJECT macro is present in the definition of all QObject-derived classes
  2. Make sure you define your QObject-derived classes in your header files ONLY
  3. Make sure all of your header files are listed in your .pro file in the HEADERS= list
  4. Run qmake every time you add Q_OBJECT to one of your classes or modify your .pro file
  5. The last one is particularly important as I’ve made an art form out of forgetting it :)