<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sam Moffatt @ Pasamio.com</title>
	<atom:link href="http://pasamio.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://pasamio.com</link>
	<description>Sam Moffatt's Tech Blog: Writings on Technology</description>
	<lastBuildDate>Wed, 18 Aug 2010 13:26:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Don&#8217;t call us, we&#8217;ll call you</title>
		<link>http://pasamio.com/2010/08/18/dont-call-us-well-call-you/</link>
		<comments>http://pasamio.com/2010/08/18/dont-call-us-well-call-you/#comments</comments>
		<pubDate>Wed, 18 Aug 2010 13:26:57 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[technology]]></category>
		<category><![CDATA[thoughts]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=750</guid>
		<description><![CDATA[It sounds like a line that you get given when you probably don&#8217;t have a chance at what ever it is. But it is the sort of line I would have liked to have seen from the insurers this evening. Almost every insurer said &#8220;I&#8217;m sorry, we can&#8217;t insure you over the phone&#8221; to my [...]]]></description>
			<content:encoded><![CDATA[<p>It sounds like a line that you get given when you probably don&#8217;t have a chance at what ever it is. But it is the sort of line I would have liked to have seen from the insurers this evening. Almost every insurer said &#8220;I&#8217;m sorry, we can&#8217;t insure you over the phone&#8221; to my online quote and encouraged me to call them. What I would like to see is a call back facility. Suncorp in particular has a 24 hour phone line I can ring so why not ask me what my phone number is and offer to call me in the next 10 minutes based on their call centre load. In fact if I&#8217;m going to call them now then that is the same thing! Depressing!</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/08/18/dont-call-us-well-call-you/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Today: 10-Aug-2010: Increasingly I find myself in a meeting&#8230;</title>
		<link>http://pasamio.com/2010/08/10/today-10-aug-2010-increasingly-i-find-myself-in-a-meeting/</link>
		<comments>http://pasamio.com/2010/08/10/today-10-aug-2010-increasingly-i-find-myself-in-a-meeting/#comments</comments>
		<pubDate>Tue, 10 Aug 2010 13:19:38 +0000</pubDate>
		<dc:creator>Pasamio</dc:creator>
				<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=745</guid>
		<description><![CDATA[Another day moves slowly away through meetings life gently progressed. Had chats with people about Sedona, something might happen and something might not. Mostly out of my hands for now. RPCS is starting to draw closer. Will have a whole heap of new stuff to add for them so doing it together with Sedona might [...]]]></description>
			<content:encoded><![CDATA[<p>Another day moves slowly away through meetings life gently progressed. Had chats with people about Sedona, something might happen and something might not. Mostly out of my hands for now. RPCS is starting to draw closer. Will have a whole heap of new stuff to add for them so doing it together with Sedona might not be too unrealistic. Not a lot else that I would deem as productive time beyond pushing stuff from one place to the other. Another day at the office.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/08/10/today-10-aug-2010-increasingly-i-find-myself-in-a-meeting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Today: 09-Aug-2010: Productivity?</title>
		<link>http://pasamio.com/2010/08/09/today-09-aug-2010-productivity/</link>
		<comments>http://pasamio.com/2010/08/09/today-09-aug-2010-productivity/#comments</comments>
		<pubDate>Mon, 09 Aug 2010 12:34:03 +0000</pubDate>
		<dc:creator>Pasamio</dc:creator>
				<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=730</guid>
		<description><![CDATA[I&#8217;m not sure where the majority of my &#8216;regular&#8217; working hours went. Somewhere between fighting with MySQL Workbench and sending emails to people some form of work happened. I&#8217;m not entirely sure what but I guess that dealing with emails is work. The first problem appeared to be four new classes of student that have [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m not sure where the majority of my &#8216;regular&#8217; working hours went. Somewhere between fighting with MySQL Workbench and sending emails to people some form of work happened. I&#8217;m not entirely sure what but I guess that dealing with emails is work.<br />
<span id="more-730"></span><br />
The first problem appeared to be four new classes of student that have been created. This causes issues with the catalog because the driver is hard coded to recognise these classes. An easy enough fix to add the four items to the requisite array but it would be nice to abstract this out into a database table at some point or similar. </p>
<p>Next battle was fighting MySQL Workbench to get it to create an ER diagram for me. Eventually I managed to work out how not to trigger its &#8220;<a href="http://support.microsoft.com/kb/125749">pure virtual function call</a>&#8221; &#8211; you need to ensure that you close the bottom panel before opening a new table. I&#8217;m sure they&#8217;ll get around to fixing it one day. MySQL&#8217;s GUI tools have historically had problems for me. MySQL Query Browser rarely manages to let me graphically create a table without crashing. Yet I still try. I think I&#8217;ve managed to work out most of the error conditions to avoid them but it is sad that such easy to trigger bugs exists. In any case I managed to get the diagram modelled correctly which will be useful for future reference as well as for the Faculty of Business who were chasing it. Hopefully it is of use to them.</p>
<p>The afternoon was spent fighting with our EQUELLA instance and trying to work out why it was misbehaving. I didn&#8217;t work it out and ended up purging the item in question instead and starting on a new item. I&#8217;m not sure what I did to get it so grumpy but the item is purged now so it isn&#8217;t going to cause me an issue. The institution in question is going to be wiped out again in a part of testing. I managed to create some cool tools as a part of working out how the system works which should make some future work easier. Also finished work on an interface as well. I went home perhaps a little bit too late but it gave me the chance to concentrate on getting things worked out in peace. I found a minor quirk in Joomla! that I&#8217;d found previously but now I have a reasonable solution to get around it.</p>
<p>More work, more juggling but the wheel slowly turns.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/08/09/today-09-aug-2010-productivity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Today: 06-Aug-2010: Would you like a plugin with that?</title>
		<link>http://pasamio.com/2010/08/07/today-06-aug-2010-would-you-like-a-plugin-with-that/</link>
		<comments>http://pasamio.com/2010/08/07/today-06-aug-2010-would-you-like-a-plugin-with-that/#comments</comments>
		<pubDate>Sat, 07 Aug 2010 03:25:16 +0000</pubDate>
		<dc:creator>Pasamio</dc:creator>
				<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=720</guid>
		<description><![CDATA[In the wide world of USQ Library today turned into another day of digging through code, asking why and then progressing on with fixing things. Today&#8217;s strange problem was trying to work out why variables that seemingly were global variables weren&#8217;t marked as global variables yet were working. This revelation turned out to be a [...]]]></description>
			<content:encoded><![CDATA[<p> In the wide world of USQ Library today turned into another day of digging through code, asking why and then progressing on with fixing things. Today&#8217;s strange problem was trying to work out why variables that seemingly were global variables weren&#8217;t marked as global variables yet were working. This revelation turned out to be a require of the relevant file into function scope &#8211; I&#8217;m not sure why I didn&#8217;t think to look for that first but the excess of globals threw me off. The function in question had around 12 other globals marked in various places so it isn&#8217;t completely out of place. Par for the course for the last week really and Business provided the most interesting aspect of the day.<br />
<span id="more-720"></span><br />
The next most interesting revelation of the day appears to be Sedona. Sedona is a system that the Faculty of Business appear to be running up to help support them in obtaining AACSB accreditation. Sedona appears to a database which is shared between apparently 220 institutions. Apparently the approved method of importing is to use a CSV file, there is no way of adding new fields to the system unless it is deemed to be useful to &#8220;all Australian universities&#8221;. An example of such is two relatively pointless HERDC and ERA fields as well as an FOR08 field that was for Bond University. The FOR08 field is particularly useless with some 1400 FOR codes in a standard HTML multiline select box. </p>
<p>Sedona doesn&#8217;t appear to offer any form of integration services so the fact that they could integrate with ePrints via SWORD (deposits) or OAI-PMH (harvesting) is sounding impossible even though it would be a great standard way to send data around. The suggested synchronisation involved FTP but details are light on the ground. </p>
<p>Apparently the system doesn&#8217;t work properly with Chrome to the point that it won&#8217;t let you login claiming you need IE, Firefox or Safari. The system isn&#8217;t normalised as well with the author names fields (first name, middle name and last name) being stored as individual fields in the database (e.g. fname1, fname2) and limited to five authors. For overflow there is an &#8220;et al.&#8221; multiline textbox. The system does have a method of adding co-authors however this is distinct and is again a multiline select box. There is another free form box for citations which makes sense as they limit the list of periodicals (drop down select list) and lack enough information to build most citation types from the data that the system stores.</p>
<p>The system does appear to have given some thought to an export with an Access database being generated with appropriate tables. Access, whilst not perhaps my preferred database system, is perhaps one of the better choices for data export and certainly beats sending CSV or XLS files around. There is the proprietary aspect to Access but there could be no option at all and at least maintains type data better. It also appears that this form of export is the way of adding extra fields that might be required by the University to store extra information. It wouldn&#8217;t surprise me if an Access database isn&#8217;t the preferred synchronisation tool though that personally scares me. But at least they have thought about it which is a good start.</p>
<p>Overall I look at the system and think we could integrate it into ePrints and increase the overall value of our data anyway. We could handle the few extra fields that Sedona appears to add with the extra item types. The extra datasets are exactly that: datasets. ePrints has workflow to handle editing items to do what it needs. It would be less limited and give us more power to do what we need. </p>
<p>Reports appear to be the systems strong point. There is a prebuilt CV and various other rather trivial reports for a member. There is a set of aggregate reports that I haven&#8217;t looked into and there appears to be a rather picky way of formatting things for the AACSB requirements (including printed CV&#8217;s in a particular format &#8211; I hope AACSB doesn&#8217;t cover IT related areas given the backwards requirements).</p>
<p>The fun task I ended the day with was returning to work on the monstrous PHP application I&#8217;ve been fighting with all week. The particular point I&#8217;m at is adding plugin functionality to a section of the code base. Since I&#8217;ve been incorporating the Joomla! Framework into the system, doing this turned out to be relatively trivial. At the point where I wanted the plugin trigger I load a file called &#8216;notifier.php&#8217;. This loads in the Joomla! framework bootstrap file which defines a while bunch of things (JPATH_BASE, JPATH_ROOT, etc) that Joomla! uses and loads the relevant files plus a few other files to get the system started off the bat. The &#8216;notifier.php&#8217; file also defines a class aptly named &#8216;Notifier&#8217; which extends JDispatcher. JDispatcher is the work horse of the Joomla! event subsystem from which plugins derive. The Notifier constructor loads up a particular directory and opens all of the files in it and tries to create new classes in the format plgNotifierFilename similar to how Joomla!&#8217;s plugin infrastructure works. This then registers those classes with the notifier class for use. Then in the original file I use JDispatcher&#8217;s &#8220;trigger&#8221; method to send a message to all of the registered plugins and the integration is done. In the original file there is only 4 lines of code added to load the file, create the class and trigger the message &#8211; plus a comment summarising this as well. It is one of those things where the framework makes life really easy to extend systems in a flexible manner. Now if I want to attach multiple plugins to extend that particular bit of code it is easy to do and with the framework it is easy to define multiple plugin triggers.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/08/07/today-06-aug-2010-would-you-like-a-plugin-with-that/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Today: 05-Aug-2010: Meeting-o-rama!</title>
		<link>http://pasamio.com/2010/08/05/today-05-aug-2010-meeting-o-rama/</link>
		<comments>http://pasamio.com/2010/08/05/today-05-aug-2010-meeting-o-rama/#comments</comments>
		<pubDate>Thu, 05 Aug 2010 13:13:34 +0000</pubDate>
		<dc:creator>Pasamio</dc:creator>
				<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=718</guid>
		<description><![CDATA[There are days where meetings seem to dominate. Today was one of those. With four hours of the day scheduled out into meetings it felt like I didn&#8217;t get much done but some how managed to get more work: ePrints, DiReCt, media repository and some finalisation on mobile. I did have a few minor wins [...]]]></description>
			<content:encoded><![CDATA[<p>There are days where meetings seem to dominate. Today was one of those. With four hours of the day scheduled out into meetings it felt like I didn&#8217;t get much done but some how managed to get more work: ePrints, DiReCt, media repository and some finalisation on mobile. I did have a few minor wins in understanding how different parts of the library systems come together however there is a still a lot more to learn. </p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/08/05/today-05-aug-2010-meeting-o-rama/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Today: 03-Aug-2010: Today that was could no longer sustain us</title>
		<link>http://pasamio.com/2010/08/04/today-03-aug-2010-today-that-was-could-no-longer-sustain-us/</link>
		<comments>http://pasamio.com/2010/08/04/today-03-aug-2010-today-that-was-could-no-longer-sustain-us/#comments</comments>
		<pubDate>Wed, 04 Aug 2010 12:36:02 +0000</pubDate>
		<dc:creator>Pasamio</dc:creator>
				<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=712</guid>
		<description><![CDATA[Today was another mixed day. We deployed out the trial library mobile application ahead of the system management committee (SysManCom) meeting. It is available at http://libtute.usq.edu.au/uMobile/ and is still in trial (we found some more bugs so we&#8217;ll get that sorted). SysManCom progressed with a reasonable reception of the mobile application which is nice. Some [...]]]></description>
			<content:encoded><![CDATA[<p>Today was another mixed day. We deployed out the trial library mobile application ahead of the system management committee (SysManCom) meeting. It is available at http://libtute.usq.edu.au/uMobile/ and is still in trial (we found some more bugs so we&#8217;ll get that sorted). SysManCom progressed with a reasonable reception of the mobile application which is nice. Some tasks to follow up on from the meeting which is always fun &#8211; some writing to be done about eBooks in the library for users. This should basically amount to because publishers don&#8217;t give us the tools students can&#8217;t put the &#8220;ebooks&#8221; we subscribe to on &#8220;ebook&#8221; readers. Yay for DRM.</p>
<p>After the demo one of the most painful parts was the fact that we rely upon the CMS for a significant amount of content. The main problem with the CMS is that it is horribly unfriendly for mobile devices. At one stage the home page had a Flash banner which didn&#8217;t degrade properly which left a frustrating image that said &#8220;click here&#8221; but wasn&#8217;t actually linked to anything. So I spent the middle of the day working out how to strip out the USQ home page template so that we can embed it else where. I managed to get it sorted mostly though as I&#8217;m abusing an XML parser it&#8217;ll barf on poorly formatted pages or with HTML entities not in XML. Most of the CMS pages are fine but some legacy ones aren&#8217;t so lucky. I&#8217;ve put in some minor checks to clean things up but hopefully it isn&#8217;t too much of a problem.</p>
<p>The afternoon rounded out with a meeting before leaving early so that I could return for my evening of debates. Life in the fast lane.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/08/04/today-03-aug-2010-today-that-was-could-no-longer-sustain-us/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Today: 03-Aug-2010: Global Annihilation</title>
		<link>http://pasamio.com/2010/08/03/today-03-aug-2010-global-annihilation/</link>
		<comments>http://pasamio.com/2010/08/03/today-03-aug-2010-global-annihilation/#comments</comments>
		<pubDate>Tue, 03 Aug 2010 13:10:54 +0000</pubDate>
		<dc:creator>Pasamio</dc:creator>
				<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=708</guid>
		<description><![CDATA[Continuing from yesterday&#8217;s Global Domination theme today I worked on finalising my global annihilation. I worked on getting rid of almost all of the globals in the path way that I&#8217;m working on at the moment and I feel that I&#8217;ve succeeded. The application is perhaps a textbook example of why globals are evil. Today [...]]]></description>
			<content:encoded><![CDATA[<p>Continuing from yesterday&#8217;s Global Domination theme today I worked on finalising my global annihilation. I worked on getting rid of almost all of the globals in the path way that I&#8217;m working on at the moment and I feel that I&#8217;ve succeeded. The application is perhaps a textbook example of why globals are evil.<br />
<span id="more-708"></span><br />
Today I got a handle on the extensive amount of variables. Whilst yesterday I managed to get the configuration global variables wrangled in and put into a nice neat little class and out of the global scope which made a whole heap of things clearer.</p>
<p>The piece of code in question is a data mapping system. It takes an array as an input and then transform it eventually into XML and feeds this into a web service. The list of valid keys is stored in an array (in the global scope) which is filled in with the values from the input array. I couldn&#8217;t work out why there was a function that basically appeared to clear what was an empty array until I realised that the global was being filled with data and so if the code path was reused it&#8217;d have the old data in it. Nasty work around for a problem that should have existed.</p>
<p>So the functions related to the mapping and the two arrays that were living in global scope were shifted into a class on their own. The relevant functions were adapted to work properly with the variables not being global and I&#8217;ll work on eradicating the other situations where the variable was still used but the particular purpose I need it for is cleaned out. At the same time I pulled into the class some extra functions that were related to the system but weren&#8217;t located with it (curiously enough!). </p>
<p>But working through the mapping functions I noticed another quirk. Just as previously the global was being altered even though it was supposedly a template, another one of the functions decided that it would alter the input array that it was given before setting that value in the output array. The field in question, a format field, is reset if the field isn&#8217;t set under a particular condition in a loop. This means that the loop goes through a few times and this variable is undefined and the items checking this behave one way. Then an iteration occurs which triggers this code path and the variable is changed. The lines that were previously run would have checked that and possibly taken a different code path as would the following items. Why this approach was taken baffles me and could potentially be a source of a few bugs. It is unlikely this has been a concern as the code spewed out copious amounts of undefined index errors due to insufficient checking to see if the values were there and just hoping they would be there. Fortunately I managed to clean up the majority of it though a few undefined index errors remained. The solution mostly was using Joomla!&#8217;s JArrayHelper::getValue function which will work out if the value is set and give you the option to filter the value to a particular type and also set a default value if one isn&#8217;t there. Handy little function cleaned up the majority of the errors.</p>
<p>A few other changes were made, globals were annihilated and I progressively removed dependencies to clean up the system and all was right with the world. And tomorrow? Fix another part of the broken.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/08/03/today-03-aug-2010-global-annihilation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Today: 02-Aug-2010: Global Domination</title>
		<link>http://pasamio.com/2010/08/02/today-02-aug-2010-global-domination/</link>
		<comments>http://pasamio.com/2010/08/02/today-02-aug-2010-global-domination/#comments</comments>
		<pubDate>Mon, 02 Aug 2010 13:52:53 +0000</pubDate>
		<dc:creator>Pasamio</dc:creator>
				<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=706</guid>
		<description><![CDATA[I think today I have seen one of the most poorly written bits of code I have ever seen. I have so far counted over 50 different global variables interspersed throughout the code occurring three levels deep into the application (yes, that&#8217;s three levels of includes before the global was set, scary!) even though they [...]]]></description>
			<content:encoded><![CDATA[<p>I think today I have seen one of the most poorly written bits of code I have ever seen. I have so far counted over 50 different global variables interspersed throughout the code occurring three levels deep into the application (yes, that&#8217;s three levels of includes before the global was set, scary!) even though they were being used at the root level.<br />
<span id="more-706"></span><br />
This spaghetti code is amazing in its complexity and a distinct lack of maintainability. I&#8217;m surprised that the code has hung together so well as at the moment I&#8217;ve managed to combine around 21 different global variables into a single configuration class which should make things clearer. I&#8217;ve spent the day pouring over the code cleaning things up to form a more coherent base. Whilst I&#8217;ve been cleaning things I&#8217;ve been trying to work out where things are being used. Already in one file I found five functions sitting around that aren&#8217;t being used anywhere. The most depressing thing is that since the code wasn&#8217;t version controlled there are legacy files with &#8220;old&#8221; or &#8220;2&#8243; suffixed and functions with &#8220;old&#8221; in their name &#8211; or worst of all combinations of those options: &#8220;old2&#8243;. I even found a function that never would have returned a sane value. </p>
<p>Suffice to say the entire system lacks at form of standardised testing which makes refactoring even harder. Given the intermixing of HTML outputting all over the place I think it would be hard to quickly put in a unit testing framework to ensure that the system behaves sanely. </p>
<p>Whilst it immensely frustrates me that I have to deal with it, I&#8217;m hopeful that I can start cleaning it up and improving the overall quality. Shifting functions around and centralising items in ways that makes sense as well as clearing up old cruft and the elimination of the immense plague of global variables that this application has. I thought Drupal was horrible with all of it&#8217;s global variables (it was seriously the most global&#8217;s I&#8217;d seen before at around 20 of them) but this one at over 50 and counting takes the cake &#8211; it really is global domination.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/08/02/today-02-aug-2010-global-domination/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pine Tree &#8211; a cut down Joomla!</title>
		<link>http://pasamio.com/2010/08/01/pine-tree-a-cut-down-joomla/</link>
		<comments>http://pasamio.com/2010/08/01/pine-tree-a-cut-down-joomla/#comments</comments>
		<pubDate>Sun, 01 Aug 2010 13:21:25 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=697</guid>
		<description><![CDATA[The other day someone was talking to me about building a version of Joomla! that is effectively just a simple blog platform. I figured that this wouldn&#8217;t be too hard to achieve &#8211; just need to pull stuff out. So that&#8217;s what I did. This is somewhat similar to another journey I took though in [...]]]></description>
			<content:encoded><![CDATA[<p>The other day someone was talking to me about building a version of Joomla! that is effectively just a simple blog platform. I figured that this wouldn&#8217;t be too hard to achieve &#8211; just need to pull stuff out. So that&#8217;s what I did. This is <a href="http://pasamio.com/index.php?p=681">somewhat similar to another journey I took</a> though in this one I&#8217;m not adding anything new.<br />
<span id="more-697"></span><br />
I started by looking at the installation SQL file and sample data. I nuked a whole bunch of stuff in both files and brought it into a single installation file removing the sample data file. I nuked a few other pointless SQL files that were sitting around in the installation directory. </p>
<p>From here I set apart removing extra components until I got down to what I felt was the absolute minimum. I&#8217;ve actually been a bit lenient and included a few extra components I wasn&#8217;t quite willing to part with. In the administrator area I&#8217;ve killed almost all of the components except for content, frontpage and media. The admin modules are gone as a lot of the front end modules. The search plugins are mostly removed except for content and the XMLRPC layer is dead. A few of the templates are dead and I&#8217;m asking a friend to make a simple one as a replacement for rhuk_milkyway. I&#8217;ve also cleaned out some images and I nuked a lot of legacy junk that isn&#8217;t required any more.</p>
<p>I&#8217;m calling it Pine Tree as a difference though since I don&#8217;t really take apart the framework it isn&#8217;t that much lighter than a normal Joomla! instance. A copy is available on <a href="http://joomlacode.org/gf/project/pasamioprojects/frs/">my JoomlaCode project</a>, check out at <a href="http://joomlacode.org/gf/project/pasamioprojects/frs/?action=FrsReleaseBrowse&#038;frs_package_id=5353">http://joomlacode.org/gf/project/pasamioprojects/frs/?action=FrsReleaseBrowse&#038;frs_package_id=5353</a>. It is slightly branded though not a lot. There is one minor bug fix but on the whole it is a copy of 1.5.20 with a whole heap of stuff removed. Oh and don&#8217;t bother with the sample data or migration, either option will likely fail (will probably remove these later). There is also no administrator so don&#8217;t bother clicking on that either. Pine Tree template design and quick logo done by <a href="http://making.id.au">Making Digital Design</a>. Let me know what you think.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/08/01/pine-tree-a-cut-down-joomla/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>The evils of a word processor</title>
		<link>http://pasamio.com/2010/07/21/the-evils-of-a-word-processor/</link>
		<comments>http://pasamio.com/2010/07/21/the-evils-of-a-word-processor/#comments</comments>
		<pubDate>Tue, 20 Jul 2010 14:25:34 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[thoughts]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=669</guid>
		<description><![CDATA[I&#8217;ll admit I&#8217;m not the greatest fan of the modern word processor. Being in the web world perhaps the greatest evil is the markup that is generated when text copied from Word is pasted into any rich text capable HTML editor such as TinyMCE. Word is not alone in doing this, OpenOffice.org also has its [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ll admit I&#8217;m not the greatest fan of the modern word processor. Being in the web world perhaps the greatest evil is the markup that is generated when text copied from Word is pasted into any rich text capable HTML editor such as TinyMCE. Word is not alone in doing this, OpenOffice.org also has its fair share of ugly HTML and most other systems have a nasty habit of creating ugly HTML. But this isn&#8217;t what I&#8217;m concerned about in this blog, it is more about the plethora of formatting options it provides and lack of focus in the user interface.<br />
<span id="more-669"></span><br />
I&#8217;m observing my mother fight with Word. To make things complicated she&#8217;s copy and pasting items from a PDF. This is then being pasted in a new style which alters the paragraph indenting and margins as well as some how changing the way the text that is already there looks as well. I&#8217;m not quite sure how it is doing this, or really why, but it certainly looks like crap.</p>
<p>But I feel the worst thing about all of this is the distraction it is causing. She&#8217;s not focusing on writing the document, she&#8217;s fighting to style the document first. This breaks up her mental workflow because now instead of thinking about what she should be writing she&#8217;s off being bothered about the formatting and style. Eventually I convince her to stop fighting with Word to format it the way she wanted and just get on with writing the document. But how much time is wasted getting a word processor to try and do what you need?</p>
<p>I ponder this at times when the USQ course material publishing system went from a semantic based system into a system driven by OpenOffice.org and Word. I wonder just how much time our academics waste trying to get the format right when eventually it probably is going to be trashed anyway?</p>
<p>As a LaTeX user, this is food for thought.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/07/21/the-evils-of-a-word-processor/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Thinking about things differently</title>
		<link>http://pasamio.com/2010/07/15/thinking-about-things-differently/</link>
		<comments>http://pasamio.com/2010/07/15/thinking-about-things-differently/#comments</comments>
		<pubDate>Thu, 15 Jul 2010 12:20:01 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[internet]]></category>
		<category><![CDATA[joomla]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=681</guid>
		<description><![CDATA[The other day I was looking at something and came across &#8220;Hotaru CMS&#8221; which on it&#8217;s about page describes the system as a &#8220;plugin powered content management system&#8221; or &#8220;WordPress without blogging&#8221;. The system describes that it is a platform to build upon, that &#8220;Hotaru plugins provide such key components as user systems and post [...]]]></description>
			<content:encoded><![CDATA[<p>The other day I was looking at something and came across &#8220;<a href="http://hotarudocs.com/">Hotaru CMS</a>&#8221; which on it&#8217;s <a href="http://hotarudocs.com/About">about page</a> describes the system as a &#8220;plugin powered content management system&#8221; or &#8220;WordPress without blogging&#8221;. The system describes that it is a platform to build upon, that &#8220;Hotaru plugins provide such key components as user systems and post publishing&#8221; and how it has a few different extension types: main themes, admin themes, plugins and language packs. But it got me thinking &#8211; wait, this is just Joomla!?<br />
<span id="more-681"></span><br />
It is interesting to see things written from a different perspective and how often Joomla! fits into so many categories. The great thing about Joomla! is that a lot of the functionality is implemented as an extension of some variety. Don&#8217;t like the way the built in content system works? Provide your own! Flexicontent is an example of this where they&#8217;ve done their own content system which is great. You don&#8217;t like the user system? Well you can replace that to if you really want to &#8211; which in part is the approach that CommunityBuilder took. If you just want to add support for external authentication or perhaps change how the session handling works you can write a plugin to do that anyway.</p>
<p>But I&#8217;d like to take a step back and detail one of the projects I&#8217;m working on at the moment. At USQ we&#8217;re working on a media repository to store our media files for course materials and lecture recordings. One of the aspects is mediating connecting the raw recordings (done in Camtasia Relay) with the courses which are in Moodle. Camtasia&#8217;s support for Moodle is a bit awkward and we&#8217;d like to improve it a bit more or build an interface that at least mediated things so that we can choose to put things into Moodle (our learning management system) or the new media repository. So we need a bridge of sorts. Being a PHP person and PHP being one of the most preferred programming languages at USQ (see Moodle) I figured I&#8217;d do it in PHP. Then I realised I wanted to do it properly and needed authentication integration plus a few other tricks. I also figured I&#8217;d like to have a controller, view and a model for stuff. Then I figured I&#8217;m going to need some database drivers, particularly Oracle but for initial testing I&#8217;m going to need to do it locally outside of the normal development framework since its essentially a skunkworks project.</p>
<p>The choice I&#8217;ve taken is to use the Joomla! Framework and strip out the majority of Joomla! to put in what I need. In this particular case I&#8217;ve picked up the authentication plugins, user plugins and user component from Joomla! and left all of the content stuff behind. I&#8217;ve started adding my own extensions to the project to handle the aspects required, pulling in some of the DAV support work I did for Joomla! a while ago and including that into the libraries. So the pieces are slowly coming together and eventually I&#8217;ll get everything up and running properly. I&#8217;ve also ported Joomla! in a small part to an SQLite3 database where I&#8217;m putting stuff for the time being. I&#8217;ve grabbed a stock joomla.sql file for MySQL, modified it to be SQLite friendly and then I&#8217;m using that base database to handle everything. It has more than I need in it table wise but that doesn&#8217;t necessarily cause concern but perhaps wastes a bit of space. I&#8217;ll hook up everything and get it to work, perhaps a bit heavier than it needs to be but also immediately portable back into a Joomla! instance later if this is the path I want to take.</p>
<p>Perhaps at a JoomlaDay somewhere I&#8217;ll demo it.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/07/15/thinking-about-things-differently/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Today: 12-Jul-2010: Just a little bit further</title>
		<link>http://pasamio.com/2010/07/12/today-12-jul-2010-just-a-little-bit-further/</link>
		<comments>http://pasamio.com/2010/07/12/today-12-jul-2010-just-a-little-bit-further/#comments</comments>
		<pubDate>Sun, 11 Jul 2010 21:07:03 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=682</guid>
		<description><![CDATA[One of the nice things about Linux is the smooth way that the package management system operates. It just happens. The problem with Windows is that it doesn&#8217;t really happen &#8211; which is a painful experience. So Microsoft has released a beta of their WebMatrix tool with integration into the Web Platform Installer. Funky! Being [...]]]></description>
			<content:encoded><![CDATA[<p>One of the nice things about Linux is the smooth way that the package management system operates. It just happens. The problem with Windows is that it doesn&#8217;t really happen &#8211; which is a painful experience.<br />
<span id="more-682"></span><br />
So Microsoft has released a beta of their WebMatrix tool with integration into the Web Platform Installer. Funky! Being the geek that I am I was kind of curious to play with it &#8211; even though I&#8217;m not particularly a Microsoft person having a Mac laptop as my primary machine, multiple Linux servers at home, personal dedicated Linux servers hosted in data centres and at work deploying on HP-UX, Solaris and RHEL5 machines.</p>
<p>So I tried at home on my favourite Windows XP VM and it installed fine. Fine is of course subjective because it required three restarts to actually install itself (one for .Net 4.0, one for Windows Installer 4.5 and the final for Visual Studio Web Developer Express) &#8211; I&#8217;m not quite sure why these couldn&#8217;t have been bundled together into one restart (which is reasonable) or even what VS Web Dev Express was doing to require a restart. But I&#8217;ll live. I fired it up and did a Joomla! install and everything worked nicely. I tried the VS Web Dev integration and found it loaded everything up except that Web Dev doesn&#8217;t do PHP &#8211; back to the drawing board. As an aside why Microsoft doesn&#8217;t support PHP in VS Web Dev directly is a wonder &#8211; PHP as a language appears to be more popular than either of Microsoft&#8217;s according to <a href="http://www.langpop.com/">langpop.com&#8217;s</a> view of the world. To be fair, langpop.com is a mildly biased view towards open source areas (Google Code, Slashdot, IRC, Ohloh, Freshmeat) which would explain the dominance of languages such as PHP or Python. In any case, it worked and it had a funky editor with highlighting and not a lot else as well as a database editor that handled MySQL &#8211; and all in one package.</p>
<p>So I try to install it at work. First hurdle: I need Windows XP SP3. Ok, bummer. File a job, wait for ICT Service Delivery (yes that is their real department name) to get back and install SP3. They call me back in a week and say &#8220;when do you want this? is now a good time?&#8221; and I say sure. A few hours later and 64+ updates my computer has SP3 on it. Let&#8217;s try Web PI 3 beta again and see how we go. Much better, we&#8217;re off installing WebMatrix and all sorts of shiny. I ticked the Joomla! box as well and that is also installing. Everyone is happy. It then goes to try and configure IIS on my XP box. It pops up a component install view window and eventually gets to the point of asking me for an XP install CD. Except this is a corporate box and I don&#8217;t have one. I don&#8217;t have an i386 directory handy to just copy files from. I have local admin so installing stuff isn&#8217;t an issue but I don&#8217;t have those files. Bummer. I go hunting for them and I can&#8217;t readily find them locally and I don&#8217;t even know where to find them on the network. Sheepishly I hit cancel and WebPI keeps installing without configuring IIS 5 on my local machine. I thought I&#8217;d selected to use the WebMatrix server so I&#8217;m not entirely sure what is going on anyway. .Net 4.0 installs uneventfully (no restart this time) and Windows Installer 4.5 requires a restart. This time I&#8217;m not installing Web Dev so I don&#8217;t need to restart for that, yay! The rest went relatively smoothly which is good however at the end it complained IIS5.1 failed thus items dependent upon it (e.g. FastCGI for IIS5.1, PHP5.2.13, WinCache 1.1 for PHP 5.2) failed to install. MySQL Windows Essential 5.1 didn&#8217;t work because a service entry couldn&#8217;t be created, possibly because a MySQL service entry already exists.  Joomla! didn&#8217;t work either but since both IIS 5.1 and MySQL failed to work I&#8217;ve got a selection of options.</p>
<p>Curiously I had an XAMPP install of MySQL set up and WebPI didn&#8217;t detect this properly opting to install its own version, perhaps a check on port 3306 to see if something speaks MySQL would be more appropriate to check. Improvements for next time.</p>
<p>So I fire up WebMatrix Beta and use its installer to install Joomla!. This one works better. It presents me with the same dialogue and insists I can&#8217;t have a blank password (my insecure XAMPP MySQL install insists otherwise but I secure it and both my security office and WebMatrix are happy). Joomla! appears to install perfectly fine now. Go figure. It also appears to have used the XAMPP MySQL install which is nice. </p>
<p>So some quirks in no particular order:</p>
<ul>
<li>Requests has an images filter which is nice but if you enable it, go from requests into something else and back again the filter button is depressed but the list isn&#8217;t filtered. Clicking on it filters the requests but messes up the state.</li>
<li>Requests has an images filter which is a good start but no JS filter or CSS filter.</li>
<li>The built in DB tool connects to MySQL fine however if you try to create a table with a column as both an &#8220;identity&#8221; (Microsoft SQL Server version of &#8220;auto_increment&#8221;) and a &#8220;primary key&#8221; it complains about multiple keys. Setting the field to just be identity appears to resolve the issue</li>
<li>Perhaps most annoyingly the font choice is harsh, at least for me. Compared to Monaco on my Mac, it just looks disgusting. Unfortunately there doesn&#8217;t appear to be a way to change it either. After coding for half the morning in Smultron whilst my desktop was updating, WebMatrix was just garish and jutting in comparison.</li>
<li>Whilst there is no autocomplete for the PHP as far as I could see, it would be nice to include a reasonable formatter. At least something that fixed indentation by default. Mind you, Smultron doesn&#8217;t have this but I do miss it at times.</li>
</ul>
<p>I also at one point managed to get WebMatrix to terminate however you need to remember that WebMatrix is still in beta as a product so it is understandable that there might be some issues that will hopefully get fixed. All in all it looks like a good tool. As a cut down editor it seems to fit the bill quite nicely as well as being one of the easier ways to get up and running on Windows with a web development environment and PHP.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/07/12/today-12-jul-2010-just-a-little-bit-further/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ATO, HECS/HELP and interest &#8211; or lack there of</title>
		<link>http://pasamio.com/2010/07/10/ato-hecshelp-and-interest-or-lack-there-of/</link>
		<comments>http://pasamio.com/2010/07/10/ato-hecshelp-and-interest-or-lack-there-of/#comments</comments>
		<pubDate>Sat, 10 Jul 2010 02:51:21 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[australia]]></category>
		<category><![CDATA[thoughts]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=676</guid>
		<description><![CDATA[In Australia, it&#8217;s tax time again. This means that the tax office sends me nice letters saying how much I owe them for my HECS/HELP debt, how if I paid it all up front it&#8217;d reduce by X amount (if only I had that much money!) and how they don&#8217;t charge &#8220;interest&#8221; on the loan, [...]]]></description>
			<content:encoded><![CDATA[<p>In Australia, it&#8217;s tax time again. This means that the tax office sends me nice letters saying how much I owe them for my HECS/HELP debt, how if I paid it all up front it&#8217;d reduce by X amount (if only I had that much money!) and how they don&#8217;t charge &#8220;interest&#8221; on the loan, they merely &#8220;index&#8221; it against the cost of living. What ever makes it easier to sleep at night. But recently I realised something simple: the Australian Tax Office charges interest not including amounts you&#8217;ve already paid.<br />
<span id="more-676"></span><br />
So lets step back and explain the process. In Australia the government gives you an &#8220;indexed&#8221; loan to help pay your university education debt. It is &#8220;indexed&#8221; at the cost of living set by a method I&#8217;m not entirely privy to but doesn&#8217;t entirely make sense. For 2009/2010 the indexation was &#8220;1.9%&#8221;. A far more accurate way of explaining it is that you are charged interest equivalent to the rate of inflation averaged out for the year on the first of June. Interest calculated yearly, interest charged yearly. Repayments to the loan are based on your income so if you earn less than a certain amount you don&#8217;t have to pay at all and it is on a scale so the more you earn the more you pay back on your loan. </p>
<p>The money is normally taken out automatically from your pay like withholding. This means that you don&#8217;t ever see that portion of money. In my case I lose $200 per fortnight to my HECS/HELP debt. This means that per year I knock off roughly $5.2k from my debt with the Australian Government. Funky. </p>
<p>The trick comes in is that this amount isn&#8217;t paid onto my loan until after I&#8217;ve done my tax. So all the money I&#8217;ve paid thus far this year doesn&#8217;t get counted and interest is charged including anything I&#8217;ve studied up until May the same year. Since semester 1 starts in March and &#8220;census&#8221; date is in April (the date at which course fees are paid) and semester two starts in July (next financial year), you get interest calculated on both semesters (plus in my case a summer semester, semester 3) not including the amount you have already had &#8220;withheld&#8221; over the same period of time.</p>
<p>So when it comes down to it, it is better to opt not to have your employer withhold your HECS/HELP debt, save the money in a high interest account somewhere and then a few months into the new financial year pay it as a part of your tax debt. Of course the problem with that is that you pay tax on the interest you accrue from the bank account however you&#8217;re at least earning money and not losing any money in the process.</p>
<p>The question of course becomes, who earns the interest on the withheld money? I&#8217;ll leave that as an exercise to the reader.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/07/10/ato-hecshelp-and-interest-or-lack-there-of/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Where the bloody hell are you?</title>
		<link>http://pasamio.com/2010/06/16/where-the-bloody-hell-are-you/</link>
		<comments>http://pasamio.com/2010/06/16/where-the-bloody-hell-are-you/#comments</comments>
		<pubDate>Tue, 15 Jun 2010 23:44:52 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=673</guid>
		<description><![CDATA[To borrow one of the worst marketing slogans from my countries history, &#8220;Where the bloody hell are you? &#8211; I feel the same about the so called people who cry out for Joomla!&#8217;s community. I&#8217;m an Australian, we have a rather solid belief of just getting the job done. Just do it may be the [...]]]></description>
			<content:encoded><![CDATA[<p>To borrow one of the worst marketing slogans from my countries history, &#8220;Where the bloody hell are you? &#8211; I feel the same about the so called people who cry out for Joomla!&#8217;s community. </p>
<p>I&#8217;m an Australian, we have a rather solid belief of just getting the job done. Just do it may be the Nike saying but it does reasonably well for describing Australia. I don&#8217;t particularly care for all of the noisy people crapping on about things who are ranting and raving about community. I care about people pulling their finger out and just doing it.</p>
<p>Get out there and do it. The community is anyone doing something positive for Joomla!. Fixing bugs, writing patches, porting to MSSQL even. Organising events, organising JUGS. What IRKS me is that some people don&#8217;t seem to be interested in contributing unless they get some form of massive recognition out of it. I&#8217;ve seen that recently and it disappoints me that the Joomla! community has people who work on those terms. </p>
<p>Perhaps it is just me, but you do something not to be known but because you enjoy it. I was asked the other day what my get rich quick scheme is but I don&#8217;t have one. I do what I do because its intellectually stimulating and a challenge. Why do you do it?</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/06/16/where-the-bloody-hell-are-you/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Is piracy the problem or the symptom?</title>
		<link>http://pasamio.com/2010/04/17/is-piracy-the-problem-or-the-symptom/</link>
		<comments>http://pasamio.com/2010/04/17/is-piracy-the-problem-or-the-symptom/#comments</comments>
		<pubDate>Sat, 17 Apr 2010 12:45:25 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[gaming]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=666</guid>
		<description><![CDATA[Is piracy the problem or the symptom? In problem solving an important technique and skill to have but the crux of the skill in my mind is the ability to differentiate between the problem and the symptom of the problem. The question &#8220;are you treating the symptom or the problem?&#8221; perhaps raises this most pertinently. [...]]]></description>
			<content:encoded><![CDATA[<p>Is piracy the problem or the symptom? In problem solving an important technique and skill to have but the crux of the skill in my mind is the ability to differentiate between the problem and the symptom of the problem. The question &#8220;are you treating the symptom or the problem?&#8221; perhaps raises this most pertinently. But let me diverge to why I&#8217;ve come to this point.<br />
<span id="more-666"></span><br />
Today I had another reasonably lazy day. I started with a significant sleep in before spending a few hours of Wii Fit exercising. It is curious to see that I am improving in different things and getting better but still not quite there. Amazing that Nintendo have created something so useful.</p>
<p>After this I had a flick through Slashdot, tended to my inbox and looked through my Twitter stream. One of the stories in Slashdot that I noticed was <a href="http://games.slashdot.org/story/10/04/16/2052232/Crytek-Thinks-Free-Game-Demos-Will-Soon-Be-Extinct">the CEO of Crytek saying that game demos were a &#8220;free luxury&#8221; that isn&#8217;t afforded in other areas such as movies</a>. A curious statement and at the time I didn&#8217;t see a need to follow up with it. </p>
<p>In the afternoon I headed to the local shopping centre. My aim was to get a replacement for the Nokia phone charger with the European plugs (turns out I&#8217;m not the only one to get it, I remember at Council a Nokia phone coming through having a charger with a European plug, my hatred of their plug style is  blog for another day) that now has a dint in the charging bit. I&#8217;m not a fan of this style charger (appears its an AC-8 charger) as the plug into my Nokia N80 is hardly connected and easily comes out. The new &#8220;high energy efficiency&#8221; charger cost me $37 for a Nokia genuine charger. Not sure where they get $37 out of that but whatever. I popped past EB and figured I&#8217;d pick up a copy of L4D which was being sold at $25. I hadn&#8217;t bought it previously on Steam when it was on sale and I figured it was about time I got a copy of it. So I grabbed a copy of it. I prefer boxed games because it saves me having to download around 4GB of data which at the moment for me on a wireless broadband connection will cost me around $60. Yes, twice the amount that I had paid for the game to just download it. </p>
<p>So I head home and look forward to a bit of zombie shooting. I put the DVD in and nothing happens. Ok, this isn&#8217;t fun. It&#8217;s opening up a terminal when I double click on it. So I spawn a terminal and run the command manually. &#8220;Program too bit to fit in memory.&#8221; Wonderful. A quick Google reveals that this is an encryption problem and restarting Steam would appear to be a solution. Ok. I try that a few times and no joy. I restart the computer, again, no joy. Why the Setup.exe file would be encrypted seems a tad strange which leads me to believe its probably corrupted. Re-examining the search results I get some suggestions that it might be corrupted. Looking over the disc at some of the files reveals apparently empty looking files. Great. After an hour of futzing with things I can&#8217;t get it to work and this isn&#8217;t fun. This isn&#8217;t what I paid for &#8211; to have something not working.</p>
<p>So it brings me back to the article where the <a href="http://www.develop-online.net/news/34545/Crytek-foresees-the-end-of-free-game-demos">Crytek CEO is whining about piracy</a>. At this point in time I want to just shoot zombies not have to fight with antipiracy software. Fortunately I can activate the game and find an active install to copy the resources off to save me the download. But at this point I might as well have gotten a pirate copy off of someone anyway. If I have to download the entire thing off the internet then I might as well have pirated it and cracked it. This is starting to remind me of what happened with CNC4 &#8211; I got to the point where downloading a server emulator off the web was required to let me play the game. I could have again pirated the game to get it to work just as well.</p>
<p>There in lies the problem. If I can pirate the game for less than it costs me to buy the game and gives me a significantly better product (in this case, one that works) &#8211; of course piracy is increasing. But even that is a true statement given the industry keeps posting year on year profits that are increasing you wonder what they&#8217;re missing. Antipiracy measures are making life harder for those who want to pay money. The recent issues with <a href="http://www.joystiq.com/2010/03/07/ubisoft-drm-authentification-server-is-down-assassins-creed-2/">Assassin&#8217;s Creed 2 and the Ubisoft DRM servers going offline</a> demonstrates the issue for legitimate user is screwed whilst the pirate can continue to play the game. In this case 100% due to failure on the vendors part. But this raises the more worrying issue &#8211; what happens when the vendors decide they want to switch off the server?</p>
<p>But it puzzles me that what we are in is a DRM arms race. We have companies spending lots of money to try and protect their assets and an army of people trying to break it for nothing more than reputation. And the people breaking it are winning. I was recently listening to a podcast from <a href="http://www.abc.net.au/tv/fora/stories/2010/03/12/2843876.htm">Richard Dawkins</a> which comments about an evolutionary arms race with the comment that when you&#8217;re in an arms race something else loses out. Thinking back to other arms races around the place there wasn&#8217;t any winners but arms dealers, weapons suppliers and perhaps some scientists. All of the money spent on this not being spent on other items such as making the games better. How many millions are wasted on ineffective DRM that people are paying for? </p>
<p>The other curious happening in the Crytek article that I saw was the idea that people could monetise computer game demos because demos are &#8220;prohibitively expensive.&#8221; Demos are a marketing tool and making people pay for either your marketing or your beta without something useful in return isn&#8217;t going to go down well. At the moment demos are maybe the tutorial and the first mission. I fail to see how this is prohibitively expensive, some extra QA to ensure that your first few levels work fine? Releasing a product that actually works instead of patching something on release day so that it works properly? This depresses me. I could see paying for a demo as being good so long as I get the demo portion of the game off. The demo would have to be comparable value. For example I can go to the movies and see Avatar for $10 which is 3 hours of entertainment guaranteed (quality is another question and a problem in both film and gaming) &#8211; if I&#8217;m going to pay that for a demo, this is what I&#8217;m going to be expecting. And more than perhaps the first level, if its 10%, then 10% of the game I should get. </p>
<p>But at the end of the day this doesn&#8217;t stop piracy and barely slows it because its trying to treat the symptom, not the problem. As to the actual problem, that is something they need to work out before it is too late. </p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/04/17/is-piracy-the-problem-or-the-symptom/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>The concept of root</title>
		<link>http://pasamio.com/2010/04/15/the-concept-of-root/</link>
		<comments>http://pasamio.com/2010/04/15/the-concept-of-root/#comments</comments>
		<pubDate>Thu, 15 Apr 2010 11:15:31 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[accesscontrol]]></category>
		<category><![CDATA[joomla]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=664</guid>
		<description><![CDATA[Looking through various access control systems, it is interesting to see the different concepts and features. The concept of root, a user with all privileges inalienably granted to it. So let&#8217;s have a look at how this works for Windows, Linux and Joomla!&#8217;s upcoming 1.6 version. When you look at Windows, the administrator user and [...]]]></description>
			<content:encoded><![CDATA[<p>Looking through various access control systems, it is interesting to see the different concepts and features. The concept of root, a user with all privileges inalienably granted to it. So let&#8217;s have a look at how this works for Windows, Linux and Joomla!&#8217;s upcoming 1.6 version.<br />
<span id="more-664"></span><br />
When you look at Windows, the administrator user and group, is the most powerful user. However the user is granted this through the user of privileges. There are a lot of different privileges available to Windows but they can be removed from the user. Any user can be &#8216;root&#8217; for a Windows installation, they need not be a special user ID or name to make this happen.</p>
<p>This is contrasted to the UNIX methodology (as seen in Linux/Mac OS X amongst other recent operating systems) where there is a special user ID and username for root across all system. This user inalienably has god rights. It can bypass almost all file system permissions (NFS does deny root typically) and you can run everything that might not necessarily be permitted such as binding to a privileged port. Linux has the same sort of feature that Windows does as privileges except they call it capabilities. Whilst privileges in Windows are additive (you give someone privileges), capabilities in Linux are more subtractive &#8211; you start with everything and spawn processes until you lose them.</p>
<p>Joomla! 1.6 is itself going to have a root user as well. However it isn&#8217;t going to be a normal part of its operation. Root for Joomla! is going to behave like it does in Linux, it will have everything and the idea is that it has the ability to fix the access control lock out that you have created. Jooma! has the middle ground here between Windows and UNIX &#8211; not only do you have a super user who can do everything (if you really need it) but you also have the regular access control model which can add administrators as well. In some respects its the best of both world.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/04/15/the-concept-of-root/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nothing beats the real thing&#8230;but a pirate</title>
		<link>http://pasamio.com/2010/04/11/nothing-beats-the-real-thing-but-a-pirate/</link>
		<comments>http://pasamio.com/2010/04/11/nothing-beats-the-real-thing-but-a-pirate/#comments</comments>
		<pubDate>Sun, 11 Apr 2010 13:28:23 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[movies]]></category>
		<category><![CDATA[thoughts]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=662</guid>
		<description><![CDATA[So lately I&#8217;ve had issues with CNC4. I paid for it and ended up downloading a server emulator to play the game. It even gave me the pre-order mission anyway. A while back I got EzyDVD&#8217;s Battlestar Galactica collection. Every single episode of the new series plus Razor and The Plan. It also has the [...]]]></description>
			<content:encoded><![CDATA[<p>So lately I&#8217;ve had issues with CNC4. I paid for it and ended up downloading a server emulator to play the game. It even gave me the pre-order mission anyway. A while back I got EzyDVD&#8217;s Battlestar Galactica collection. Every single episode of the new series plus Razor and The Plan. It also has the 1978 and 1980&#8242;s material as well. It is a box and IMHO very well presented. Early on one of the DVD&#8217;s wasn&#8217;t playing properly, I put it in my Mac and it worked on both my Mac and the PC. I tried Season 3 Disc 4 today and that isn&#8217;t working. Fortunately I have DVD rips of season three downloaded so I stopped watching &#8220;the real thing&#8221; and swapped to the pirate. The pirate copy doesn&#8217;t require me to sit through two sets of copyright notices, Universal&#8217;s gratuitous logo and then wait for their fancy little intro sequences just to watch a single episode.</p>
<p>So much for the real thing. I want to spend money on supporting things but Firefly and Dollhouse is proof that doesn&#8217;t matter either. The fact that it takes ages for a Region 4 DVD to come out (compared to Region 1 and 2) so I can&#8217;t at times legally buy something anyway. Let alone the fact some things never get released in Australia anyway. Rather depressing at the end of the day.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/04/11/nothing-beats-the-real-thing-but-a-pirate/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Banning smoking</title>
		<link>http://pasamio.com/2010/04/10/banning-smoking/</link>
		<comments>http://pasamio.com/2010/04/10/banning-smoking/#comments</comments>
		<pubDate>Sat, 10 Apr 2010 06:54:18 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[thoughts]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=660</guid>
		<description><![CDATA[I had a thought the other day about smoking. The problem with banning smoking is two fold. The first problem is that you put out a large corporation that makes lots of money, pays some taxes and pays more towards your electoral campaign. It also employs people. The second problem is harder: smoking has a [...]]]></description>
			<content:encoded><![CDATA[<p>I had a thought the other day about smoking. The problem with banning smoking is two fold. The first problem is that you put out a large corporation that makes lots of money, pays some taxes and pays more towards your electoral campaign. It also employs people. The second problem is harder: smoking has a significant addicted population. These people vote. So not only do you have corporations with donations but people who vote.</p>
<p>But I feel there is a curious middle ground to be made. Each year increase the minimum age to buy cigarettes &#8211; or simpler, those born after a particular year cannot buy cigarettes. This way older smokers aren&#8217;t threatened and eventually dissipate and it is hard for newer smokers to get started. A curious example is that of slightly older members of social groups or families being able to supply cigarettes to younger people who can&#8217;t buy it yet. As the age increases, this will become increasingly hard to do and slowly this impact will dissipate. This strategy also gives the ability for those companies producing cigarettes to diversify into other areas. </p>
<p>The main complication with doing this is international travel. If one can reasonably travel to another part of the world and become addicted then this poses a problem. Ideally there would be a global ban like this but I don&#8217;t foresee that happening. </p>
<p>A simple thought on a weekend afternoon.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/04/10/banning-smoking/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>iPhone OS 4.0 Ruminations</title>
		<link>http://pasamio.com/2010/04/10/iphone-os-4-0-ruminations/</link>
		<comments>http://pasamio.com/2010/04/10/iphone-os-4-0-ruminations/#comments</comments>
		<pubDate>Sat, 10 Apr 2010 06:35:04 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[apple]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=658</guid>
		<description><![CDATA[My day job is in theory based around development, primarily web application development. Whilst lately I&#8217;ve been doing far too much infrastructure stuff, most of what I do lives in a web browser eventually. I am also an Apple user. I have an iPod Classic, an iPod shuffle, an iPhone, I got my Dad an [...]]]></description>
			<content:encoded><![CDATA[<p>My day job is in theory based around development, primarily web application development. Whilst lately I&#8217;ve been doing far too much infrastructure stuff, most of what I do lives in a web browser eventually. I am also an Apple user. I have an iPod Classic, an iPod shuffle, an iPhone, I got my Dad an AppleTV and I have a MacBookPro, convinced my ex-gf, her father, my father and my sister to get Mac. Probably a few other people along the way. I came to a Mac because it was the cheapest laptop I could buy that would reliably work well. I was a Linux user at the time (still am to a point) so the UNIX functionality and X11 features in Mac OS X appealed to me. Worst comes to worse, I reasoned, I could run X straight from my computer when I&#8217;m at home and hopefully the browser and text editor choices would be fine. I&#8217;ve come a long way from that.</p>
<p>So Apple lately have been doing a lot nifty stuff. They&#8217;ve released the iPad, their tablet PC. In the announcement the other day they said they&#8217;d sold 450,000 of the devices. To be honest that is impressive. That is a lot of tablet PC&#8217;s sold, probably a significant portion of the market now are Apple after a week. They also announced iPhone OS 4.0 which has some curious things. </p>
<p>The first change with it isn&#8217;t technical but legal. They&#8217;ve changed the Terms of Service section 3.3.1 from:</p>
<blockquote><p>3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs.</p></blockquote>
<p>To:</p>
<blockquote><p>3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).</p></blockquote>
<p>So basically if you&#8217;re not writing Objective-C, C, C++ or JS (HTML5/CSS/etc) then you&#8217;re not welcome. Bye bye CS5&#8242;s funky Flash Export to iPhone App feature. I&#8217;m not going to comment on this in general however Apple have consistently said those four languages are it. Using or developing tools to get around it was seriously tempting fate given all of the announcements Apple made. I&#8217;m not surprised, I&#8217;m not sure if it is a good or a bad thing (Flash shares a special loathing in my heart) but given Adobe have lately made their Flash player on Mac a piece of crap and not improvement (don&#8217;t get me started on Linux support), I can see where Apple have come from. Some argue that there way it handles it&#8217;s fast switching blah blah won&#8217;t work with quasi emulated apps because it doesn&#8217;t know data structures blah sounds to me like crap. The observation that Adobe&#8217;s write once run anywhere CS5 deployment could mean that Apple&#8217;s extra features aren&#8217;t supported until Adobe deem it to be included is a problem. That would mean any cool features would be unavailable to a portion of the developer community potentially never. It would potentially give Adobe control over the platform in a way Apple may not like. At the end of the day Apple is a public company and what makes them a profit is why they are there, so this is where their decision takes them. And whilst many claim Apple owe Adobe for their heritage, it is clear that recently Adobe haven&#8217;t been supplying a good experience for Mac users of their software anyway. Titanium keeps being included in the list of tools that might be excluded but I&#8217;m not entirely sure, it is certainly a border case.</p>
<p>The other interesting feature they added is multitasking. But nowhere do I see that people are understanding that it isn&#8217;t multitasking, it is just services. Apple aren&#8217;t giving people the ability to run what they want in the background, they&#8217;re offering services that will handle what they need for them. Other comments like the platform can&#8217;t support true multitasking and Apple&#8217;s design is flawed have come up in a few places which miss the point of the services. Apple doesn&#8217;t want your trashy code chewing memory and CPU, potentially going rogue and killing the users battery like it can on other platforms. That is unfriendly. The iPhone OS runs a system more than capable of multitasking it is just Apple prohibiting access to do so. The services they&#8217;ve got seem to meet the criteria and also permit reasonable flexibility. Will it be enough? Perhaps, but it is a start. They&#8217;ve got seven services: background audio (Pandora), VoIP (Sykep), background location (anything that watches your location), push notifications (yawn), local notifications (think alarm clock), task completion (the closest to true multitasking, example is a photo upload takes a while) and fast app switching (my old Palm worked like this in some respects). I think these will work well and solve a number of needs on the device and bring it up. </p>
<p>The other features announced included folders (better categorisation really) which reminds me in part of how stacks works as well. The next was improvements to mail for a unified inbox. Apple Mail on the desktop has this and I&#8217;m not a fan of it (I use the per mailbox inbox). Other Mail enhancements included threading and opening attachments in other apps. The last useful feature is the multiple Exchange account functionality, this will mean I can use Google&#8217;s Sync toy with my work&#8217;s Exchange account whilst still retaining some other identities I have. I have things sort of working but it could be better. Their book app is also coming to the iPhone which is more than predictable.</p>
<p>From the enterprise front they&#8217;ve beefed up support. Some of it already sounded familiar but the wireless app distribution is going to be useful for work (the current method involves connecting it to a desktop and loading the apps manually or App Store, this is a third option). Game Center seems interesting and a bit late to the game but better late than never as they say. They&#8217;ve also got an advertising framework built in. Not sure how this is going to play out but we will see. Hopefully they won&#8217;t nuke the third party advertising frameworks but I don&#8217;t see them as making that mistake, a regulator would surely snap them for that. Including it in the framework will probably mean the demise of most alternatives and they&#8217;re doing it in a way that can be relative unobtrusive compared to how it is handled now. Time will tell.</p>
<p>All in all there are some things that people don&#8217;t like (TOS Change) but I can see the Apple progressing slowly and improving. They&#8217;ve got a head start over every other platform and it appears that only Google have been able to come close to match them. Microsoft have pulled out all stops with Windows Phone 7 to create something that looks cool but they&#8217;ve almost left it too late, those burnt by Windows Mobile are perhaps wary of the next operating system. The Apple ad with the PC going &#8220;Trust me&#8221; over the ages rings true. My iPhone will miss out on a lot of the cooler stuff with services because of it&#8217;s age which is annoying but life. How application developers will handle this will also be interesting. </p>
<p>Of course now the iPad is out, maybe they will update a whole heap of other things.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/04/10/iphone-os-4-0-ruminations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Today: 09-Apr-2010: To leave or not to leave?</title>
		<link>http://pasamio.com/2010/04/09/today-09-apr-2010-to-leave-or-not-to-leave/</link>
		<comments>http://pasamio.com/2010/04/09/today-09-apr-2010-to-leave-or-not-to-leave/#comments</comments>
		<pubDate>Fri, 09 Apr 2010 13:06:35 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=653</guid>
		<description><![CDATA[Today was a slower day and I rocked up to work around 9:30am, read emails, attended a meeting about RPCS (we got some action yesterday), did some more emails, fixed a few things and had a long lunch with my boss discussing the shape of the world and things to come. I headed back to [...]]]></description>
			<content:encoded><![CDATA[<p>Today was a slower day and I rocked up to work around 9:30am, read emails, attended a meeting about RPCS (we got some action yesterday), did some more emails, fixed a few things and had a long lunch with my boss discussing the shape of the world and things to come. I headed back to my office, processed a few minor things, made a few backups, responded to phone calls and emails before heading home for the day. </p>
<p>I went home, spent most of the afternoon crafting my assignment together. And then submitted it. To do this I need a TurnItIn originality report. Easy enough. I do all of that, wait for the report to come up, download the report (0% copied!) and upload it and the assignment to EASE. I have the sneaking suspicion that I had forgotten something and re-read the specification. I had, it was an introduction and a conclusion. I was close to writing one but didn&#8217;t because I forgot to put it in the original outline (I had everything else mind you). So I write up an introduction paragraph and a conclusory paragraph, regenerate the PDF (using LaTeX, NeoOffice on Mac is just a hog, is slow and non-responsive. TeXShop on Mac is fast and lets me write what I need with minimal fuss. Random style is hard but such is life) and resubmit to TurnItIn. Since I&#8217;ve already submitted they&#8217;re telling me I will need to wait two days. This really annoys me that I need this to submit, my university is paying anyway plus if we used the Moodle API we wouldn&#8217;t have this problem. In some respects it is a form of extortion because they want a material support to release it in some respects (signing up again with a new account would obviate the problem). In any case I submit anyway with the old report. We&#8217;ll see how we go.</p>
<p>Just recently I had issues with Outlook Web Access doing stupid things. I think my mailbox was over quota because when I emptied the trash via Apple Mail, everything started working. The weird thing is that when I clicked &#8220;Check Names&#8221;, it nuked the entire email for some reason. Curious behaviour. Anyway, email sent with mild frustration. Another day passes.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/04/09/today-09-apr-2010-to-leave-or-not-to-leave/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
