Here comes week 2 and everybody is busy preparing for the mathematics class test. As for our work in COMP2013, Michael set up our git repository ahead of time. To the best of my knowledge though, nobody has written anything solid yet.

My task

My task for this week is the front end of the application - Since I'm most at home with web front end (along with Java and Python), I'm to prototype and start coding up the web interface of our application, so my current plans are a page for every major feature that we decided last week that's to become part of our application, bearing in mind the application is used for home automation:

  1. "Mood modes"
  2. Security CCTV feeds
  3. Door and window sensors
  4. And if we get to it, general monitoring e.g. state of electrical appliances, lights, temperature etc.

I still can't decide on more specific things like JavaScript events and AJAX calls, since we haven't even decided where the files are going to be hosted - either in the RPi or up in some cloud service. It's probably going to be a static web page though, unless we decide to run some kind of PHP backend and/or database.

This blog

And we also started this blog. Dean Mohamedally, one of our professors, wanted us to make our reports on our progress online and public, so the teaching staff and Microsoft, who are sponsoring our hardware, can know what we are doing on a week-to-week basis. Michael initially started one on WordPress platform, since the teaching staff suggested it, and other groups in our year are using it, but after I spent an hour or two exploring it, I wasn't impressed with how far we could take the platform without paying for the premium version, which is about 80 dollars per year. And since I come from MediaWiki and know what it's capable of, I drafted a blog-centric interface using a generic MediaWiki installation and plugin set that comes with a wiki hosted on The other team members took some convincing to switch to this platform since:

  1. This is the first time anybody on our team used WordPress
  2. I'm the only one who knows MediaWiki inside-out and its speed in composing articles
  3. I'm not impressed with what the basic (free) version of WordPress offers when I know what MediaWiki is about.
  4. They are concerned about the time needed to work with and learn Wikitext, which is designed to be much faster to work with than raw HTML, which is what WordPress requires.

Why I proposed MediaWiki:

  1. It is written for fast composition of articles. Much faster than WordPress, without installing multiple editor-enhancing plugins for the latter anyway.
  2. It is designed from ground-up to be a collaborative platform - individual page version control, timestamping, rollback features.
  3. It supports both Wikitext and raw HTML syntax, comes with a WYSIWYG (RTE) editor as well as a source editor.
  4. I can customize MediaWiki and run scripts on it. I have to pay 30 dollars per year just to change the CSS on WordPress. Don't even mention JavaScript.
  5. Supports templates and scripting (both in Wikitext and JavaScript) - If there's something we use very often, we only write it once.


So, after we settled on the MediaWiki platform, being the web front-end guy on the team, I tweaked the interface CSS and JavaScript until I settled on something decent, and something I'm happier with than what we had on WordPress. Now whenever one of us writes a blog, it automatically appears in the right place in the main page, so we simultaneously sort by date, user, and if we decide to use it, category.

As of the time I'm writing this blog post, I'm happy with the interface we have now, but I'll probably be performing minor tweaks every now and then. There are still a few days to go until our group session, so I'm going to start coding up some generic template HTML and CSS for our front-end.