<?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, 10 Mar 2010 14:03:05 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Today: 10-Mar-2010: Recruitment Training!</title>
		<link>http://pasamio.com/2010/03/11/today-10-mar-2010-recruitment-training/</link>
		<comments>http://pasamio.com/2010/03/11/today-10-mar-2010-recruitment-training/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 14:03:05 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=605</guid>
		<description><![CDATA[Almost entirely my day was in recruitment training. Starting at 9:30am and finishing around 4pm it was a full on day of training which was something different. Training for it is mandatory and a requirement of recruitment panel membership for interviewing new staff. I&#8217;ve now done it and it is out of the way. It [...]]]></description>
			<content:encoded><![CDATA[<p>Almost entirely my day was in recruitment training. Starting at 9:30am and finishing around 4pm it was a full on day of training which was something different. Training for it is mandatory and a requirement of recruitment panel membership for interviewing new staff. I&#8217;ve now done it and it is out of the way. It was in a weird way valuable, I feel it might have been compacted better. They provided food almost as a way of preventing escape more than anything and ensuring that you didn&#8217;t leave the building &#8211; or even the two joined rooms.</p>
<p>Beyond this I didn&#8217;t do much beyond a few emails, a small amount of fixing of code and helping people out. To round out my day I did some debate adjudicating and had teams that were starting their debating career in the last year of high school debating. They gave it a go whichis the most important part.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/03/11/today-10-mar-2010-recruitment-training/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dec 2009 to Feb 2010 &#8211; A cumulative review</title>
		<link>http://pasamio.com/2010/03/09/dec-2009-to-feb-2010-a-cumulative-review/</link>
		<comments>http://pasamio.com/2010/03/09/dec-2009-to-feb-2010-a-cumulative-review/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 11:50:48 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=597</guid>
		<description><![CDATA[So I used to do daily blogs but I got out of that habit, but I really need to work on doing it. Having a daily blog was a good way of me logging down what I was doing so that I could keep it in my mind or for reference later if I wanted [...]]]></description>
			<content:encoded><![CDATA[<p>So I used to do daily blogs but I got out of that habit, but I really need to work on doing it. Having a daily blog was a good way of me logging down what I was doing so that I could keep it in my mind or for reference later if I wanted to work out what I did. Good idea, poor consistency. I&#8217;m going to try to work on doing this again.</p>
<p>So for the last three months after I got back from my US trip I have started a new position within USQ. Instead of being an Analyst Programmer for the Division of ICT Services (or just &#8220;ICT&#8221;), I&#8217;m not a systems co-ordinator for the Division of Academic Information Services (or just &#8220;DAIS&#8221;). This is a new position for me which involves a whole heap more meetings that I was doing previously and I don&#8217;t have the ability to do as much coding any more and that portion of my ob has been unfortunately replaced with direction and meetings that I asn&#8217;t previously tasked with. I do still have a portion of coding and I also have an aspect of system administration in a sense more than I had previously. Some of the systems that I worked on as an analyst programmer were Library related so now I&#8217;m the owner of these systems a bit more than I was earlier.</p>
<p>So now within the Library I seem to be tasked with the following items:</p>
<ul>
<li>ePrints &#8211; more management than development that I was previously involved with</li>
<li>Access All Databases &#8211; more development, this is a new system for me</li>
<li>Finding Information Tutorial &#8211; this is a custom CMS that was made that I am hoping I will be able to port to Joomla! instead</li>
<li>Library Catalogue Search &#8211; another new system, the unified search system for the Library which is pretty cool</li>
<li>Library Blog &#8211; various versions of Wordpress, almost all of them out of date</li>
<li>Mobile Services &#8211; a new research project in general for the Library which is fun</li>
<li>Cleaning up all of the inconsistencies in the services</li>
<li>A few other things that I&#8217;m sure I&#8217;ll complain about when I get to them</li>
</ul>
<p>In the short time I&#8217;ve been here, we&#8217;ve done a library management system upgrade and accordingly I&#8217;ve had to update the library catalogue search. Fortunately in this case most of the work was done so it was a matter of putting parts together to make it all work. I&#8217;ve also managed to replace four virtual servers off a legacy virtual machine box that was about to die (four RHEL5 VM&#8217;s rebuilt entirely and data transfered in a single day, yay!), recovered a system that was hacked and reconfigured it to meet the start of the semester. I&#8217;ve also rebuilt the internal library systems development support environment helpfully called &#8220;libtrac&#8221;. It is now running Subversion, Trac and a new JIRA instance that I&#8217;m using to bring everything together. </p>
<p>Throughout the period I&#8217;ve done the typical support tasks, diagnosed issues and in some cases been able to resolve systems. I&#8217;ve managed to fix some problems for people but some others I haven&#8217;t been able to resolve yet but I&#8217;m getting there. One step at a time. The new tracker and Subversion items will allow me to do more items and record things without having the chance to lose them. I&#8217;ve also started shifting operational systems into Subversion to allow control of them to ensure that we don&#8217;t lose something along the way and we have a consistent methodology for ensuring systems get migrated between one system to the next.</p>
<p>In February I managed to go to my first conference for the Library to VALA 2010 in Melbourne. Even then I managed to present a session for Joomla! which hopefully brought new people into the fold. I&#8217;ve also met with different people and learnt a whole heap of things which is pretty cool in the grand scheme of things.</p>
<p>I&#8217;ve also had a new staff member (I now supervise two people, scary!) start and they&#8217;re now working on the mobile services project primarily as a developer. My other staff member I&#8217;m hopefully going to work on skilling them up to be a better programmer than they are previously. I&#8217;ve got to get in line with the University&#8217;s &#8220;BUILD&#8221; system for goal setting and performance management. I do wonder if the data goes into a system somewhere or if it is just being dropped somewhere.</p>
<p>Coming up for me is a complete rebuild of some of the oldest of the library&#8217;s systems. This includes upgrading horribly vulnerable Wordpress installs to better versions and keeping them up to date and upgraded in future. It also involves replacing ancient CentOS boxes and replacing them with newer RHEL5 boxes to get everything almost on a similar version to make everyone&#8217;s life easier. This means that the library catalogue system will be rebuilt from dev through test and prod. I&#8217;m also shifting &#8220;Access All Databases&#8221; the other way, creating a new production environment and cloning that back through to a test and dev environment as the production system has issues with availability and SAN presentation problems causing the file system to go read only. Lots of other little things, and small tasks but the world is slowly moving.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/03/09/dec-2009-to-feb-2010-a-cumulative-review/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My loathe affair with Optus</title>
		<link>http://pasamio.com/2010/02/01/my-loathe-affair-with-optus/</link>
		<comments>http://pasamio.com/2010/02/01/my-loathe-affair-with-optus/#comments</comments>
		<pubDate>Sun, 31 Jan 2010 14:05:00 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[review]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=592</guid>
		<description><![CDATA[So in Australia we have two main telephony providers: Telstra (formerly a state owned monopoly, now privatised) and Optus (owned by Singtel which is itself owned by the Singaporean Government). They provide the most comprehensive coverage for mobile telephony and outside of most major centres are the only reasonably options for 3G coverage (or any [...]]]></description>
			<content:encoded><![CDATA[<p>So in Australia we have two main telephony providers: Telstra (formerly a state owned monopoly, now privatised) and Optus (owned by Singtel which is itself owned by the Singaporean Government). They provide the most comprehensive coverage for mobile telephony and outside of most major centres are the only reasonably options for 3G coverage (or any coverage at all). Vodafone exists and has half decent coverage but don&#8217;t expect any more than 2G beyond the major centres &#8211; if you&#8217;re lucky enough to get coverage at all. &#8220;3&#8243; also exists as a 3G only network however it really doesn&#8217;t have much coverage beyond the capital cities.</p>
<p>A long time ago I was a reasonably happy Telstra customer. I think I&#8217;ve mentioned this before. But then I got sick of the lack of features that they offered me (or the features they didn&#8217;t offer me) since I was a pre-paid mobile phone customer. The feature that really hurt was the lack of international roaming. I tried hard but they wouldn&#8217;t offer it so I went off to look at my options: Optus and Vodafone. Optus had the slightly better international roaming coverage due to their Singtel links and covered more countries that I cared about than Vodafone. Vodafone&#8217;s coverage leaves a lot to be desired where I live so that helped me go to Optus.</p>
<p>When I left Telstra they had this interesting way of handling credit. If you bought a three month duration of credit, you got three months added. If in a month you added another three month amount you got another three months added &#8211; so at that point you had five months left. Optus didn&#8217;t have it this way and in Optus land you choose between having reasonable deals or having reasonably long lasting credit. The default option was a TurboCap which was limited to a month expiry (and in most cases a month renewal but there are two week options) and the alternate option was a two month expiry with much less options. I went for that as I didn&#8217;t much use my phone so the TurboCap didn&#8217;t interest me.</p>
<p>My girlfriend all of a sudden got me an iPhone and on a new prepaid item so that meant a new phone number. This new one was on Optus&#8217; TurboCap because it was the only prepaid option that provided data with it. But here is the trick that isn&#8217;t documented in their terms and conditions however there is actually an absolute limit. Yes, there is a point where Optus won&#8217;t accept your money any further. There are all sorts of limits on their extra cap features (MyTime money, MyBonus) which I understand however the MyCredit has a limit of $300. That means that once you hit this limit <strong>YOU CAN&#8217;T RECHARGE AND LOSE ALL OF YOUR MONEY</strong>. I can&#8217;t emphasise this enough. Optus have an arbitrary limit not described in their terms and conditions. I walked into an Optus store and the girl told me what was wrong and said it was in the terms and conditions. She pulled out a brochure and went looking through it but couldn&#8217;t find it. I ended up ringing Optus to complain about it and they offerred to kindly resolve the situation by removing $30 off my account so that I could recharge and not lose all of my credit. Thanks Optus. But whilst I was on the phone, the bloke dropped another pearl of wisdom. If you don&#8217;t recharge more than $40 on the TurboCap your data credit doesn&#8217;t roll over. Since I recharge from my NAB ATM I only have the option of $30, $50 and I think $100 I have as my recharge options. So I have to get $50 <em>every</em> recharge to retain my data. I tried a $30 recharge and with the previous $50 recharge (less lets say $10), it took me a week of normal data usage and almost no phone calls to burn through all the credit. So to retain my data credit I need to get $50 each month (there is no cheaper option with data on it). Since I don&#8217;t use the phone much it means that in 5 months I&#8217;ll be at the point where I&#8217;ll be unable to recharge properly again. At this point I guess I can let my data credit expire and use my data to burn through everything.  But I&#8217;d rather not. </p>
<p>So the next Optus product I bought was a wireless broadband package. Optus again had the better deal and half decent coverage where I want to use it so they won. Plus they threw in a small booster antenna that I don&#8217;t think makes a difference but anyway. They also had a money back deal where if it wasn&#8217;t working with coverage then I could return it. Telstra didn&#8217;t seem to have that and to be honest that&#8217;s what sold me to Optus (yes they can do good things when they try). I got it home, it worked and continues to work reasonably well. But here&#8217;s the rub: periodically it decides that I don&#8217;t have credit. It&#8217;ll drop out a few times or just stop and redirect my browsing to a no credit page. This has happened a few times even though I&#8217;ve had credit and it annoys me. If it drops out then that is fine, wireless does that. But to drop out repeatedly, direct me to a &#8220;zero credit&#8221; screen and then drop out a few more times before working is just down right annoying. Plus I&#8217;m sure they debit me 10MB of credit each time it drops out and I reconnect (around 60MB, or 1% of $100 worth of credit). So after a few times I&#8217;m seeing a few percent uselessly disappear from my account. So today I actually ran out of credit. Helpfully it sent me an SMS (that I can&#8217;t read since I&#8217;m online) when I had 20MB left which was approximately 10 minutes before it cut me off completely. Useful. Of course Optus will tell me that I need to use their crappy application or something to view stuff however the supplied device barely installed on Snow Leopard, it required me to extract the package archive to get to a sub installer for the driver to get things to work and then manual device configuration. Thank the internet for instructions because Optus&#8217; own instructions didn&#8217;t work. I also tried registering for the Optus Zoo and it just claimed that the mobile number was invalid so I can&#8217;t use that to check my balances online either. Thanks Optus.</p>
<p>Some of the reason I prefer prepaid is that I only pay for what I use not a fixed amount and then get charge an exorbitant amount if I all of a sudden go over. Prepaid works for me this way. I have a VISA debit card for similar reasons &#8211; I prefer to spend what I have rather than getting a &#8220;loan&#8221; where possible which is what a credit card or a post-paid mobile phone is. I prefer that control of my own and I get repeatedly shafted by either Telstra or Optus for wanting this control. Other issues are also there such as arbitrary limits not defined in terms and conditions annoy me especially when you get hit by them out of nowhere. All in all it almost makes me feel like making that faustian deal and going with Telstra. At least then I&#8217;d get faster internet and better signal coverage. Might even be cheaper.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2010/02/01/my-loathe-affair-with-optus/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSDC2009 Presentations</title>
		<link>http://pasamio.com/2009/12/31/osdc2009-presentations/</link>
		<comments>http://pasamio.com/2009/12/31/osdc2009-presentations/#comments</comments>
		<pubDate>Thu, 31 Dec 2009 03:03:20 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[conferences]]></category>
		<category><![CDATA[joomla]]></category>
		<category><![CDATA[opensource]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=581</guid>
		<description><![CDATA[My OSDC2009 Presentations are now up on both the OSDC Website (see http://2009.osdc.com.au/sam-moffatt) and also on my University&#8217;s ePrints site. You can check out the individual papers and their associated presentations on their respective ePrints pages:

Joopal and Drumla: not your usual mashup
Application level replication in Joomla! using graphs

]]></description>
			<content:encoded><![CDATA[<p>My OSDC2009 Presentations are now up on both the OSDC Website (see <a href="http://2009.osdc.com.au/sam-moffatt">http://2009.osdc.com.au/sam-moffatt</a>) and also on my <a href="http://eprints.usq.edu.au/statistics.php?fullname=Moffatt,Samuel+Alexander">University&#8217;s ePrints site</a>. You can check out the individual papers and their associated presentations on their respective ePrints pages:</p>
<ul>
<li><a href="http://eprints.usq.edu.au/5211/">Joopal and Drumla: not your usual mashup</a></li>
<li><a href="http://eprints.usq.edu.au/6249/">Application level replication in Joomla! using graphs</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/12/31/osdc2009-presentations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Free Git/SVN hosting providers</title>
		<link>http://pasamio.com/2009/12/09/free-gitsvn-hosting-providers/</link>
		<comments>http://pasamio.com/2009/12/09/free-gitsvn-hosting-providers/#comments</comments>
		<pubDate>Wed, 09 Dec 2009 05:19:48 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[joomla]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=579</guid>
		<description><![CDATA[During my recent presentation at the Joomla! Developers Conference in New York, I emphasised the importance of using a version control system (in particular SVN) to maintain copies of everything. From PSD versions of designs and templates to more traditional items like source code, some form of a version control system is what you need [...]]]></description>
			<content:encoded><![CDATA[<p>During my recent presentation at the Joomla! Developers Conference in New York, I emphasised the importance of using a version control system (in particular SVN) to maintain copies of everything. From PSD versions of designs and templates to more traditional items like source code, some form of a version control system is what you need to do. If you&#8217;re working in an organisation where you need to collaborate with more than one person then version control tools provide valuable collaboration and consistency controls. Another interesting aspect of hosted repositories is backups &#8211; not only do these systems keep different versions of your data but if you use them properly you&#8217;ve also got a backup for if your machine gets toasted. During my presentation I used CVSDude as an example. CVSDude is a local Australian company run out of Brisbane which is why they stick in mind but there are other tools.</p>
<p>Firstly I&#8217;ll do a quick overview of the two main systems being promoted: Git and SVN. SVN, or Subversion, was developed as a newer version of CVS. Subversion has been referred as a &#8220;code wiki&#8221; which I feel is a great explanation. It keeps versions of files around for you and ensures you&#8217;ve got everything in hand. Subversion is a centralised source control system, so you need a central server to run it on for different people (you can also run it on your own machine as well but there is only one point of truth). Git is a distributed version control system where basically every working copy has a full copy of the tree. This is great for pure source projects and a few other sorts where having everything on disk isn&#8217;t too bad but doesn&#8217;t work well when you have larger repositories and files that you might want to share. Git doesn&#8217;t permit partial checkouts as well so you get the entire repository or nothing. This can work in your favour (you can do stuff like commits locally and do history checking locally) or against you (it might be a chunky repository). Git repositories typically are more compressed and smaller than SVN however Git&#8217;s Windows tools leave a lot to be desired. If you&#8217;re working with people who aren&#8217;t technical, Git can be painful and I&#8217;d suggest Subversion. Both are a learning curve but Subverion&#8217;s is easier and the centralised control is useful for most projects.</p>
<p><strong>Provider A: GitHub</strong><br />
GitHub are one of the most popular Git hosting sites out there for open source projects as well as being a commercial hosting provider with &#8220;private&#8221; repositories. For people who are doing open source projects and interested in using Git, GitHub with its 300MB disk space (expandable for open source projects) and unlimited public repositories and collaborators is perhaps the most powerful option in the Git sphere. It is also all backed up as well, like most of the options, so you&#8217;ve got some peace of mind there. GitHub have personal and business branches offering different &#8220;private&#8221; hosting options starting at five private repositories consuming 600MB with one additional collaborator for $7 per month. The plans go somewhat incrementally up from there adding disk space, private repositories and private collaborators. GitHub has a wiki as an option as some point as well as a private/public pastebin service.</p>
<p>Check out GitHub&#8217;s pricing at <a href="http://github.com/plans">http://github.com/plans</a></p>
<p><strong>Provider B: Unfuddle</strong><br />
Unfuddle is something I&#8217;ve just come across after my presentation on a recommendation from someone at the conference. Unfuddle offers both Git and SVN support as well as a form of a wiki in what appears to be &#8220;Notebook pages&#8221;. It limits you to one active project but features RSS and iCal support as well as bug tracking, milestones and in the free version support for two people to collaborate. The free version offers 200MB and more expensive versions have file attachments, SSL and time tracking as well as more disk space, active and archived projects, people and unlimited &#8220;notebook pages&#8221;.</p>
<p>Check out Unfuddle&#8217;s pricing at <a href="http://unfuddle.com/about/tour/plans">http://unfuddle.com/about/tour/plans</a></p>
<p><strong>Provider C: CVSDude</strong><br />
CVSDude are a much older group who offered initially CVS hosting but recently handle Subversion. They support Trac which a popular development support tool that integrates with Subversion providing milestone support, issue tracking and integration (e.g. you can close tickets from SVN) and a wiki. CVSDude appears to be slightly below par with GitHub with their cheapest plan offering 500MB of storage, one project and two users (as opposed to five projects and 600MB from GitHub). They also appear to offer Bugzilla, a popular bug tracking software (perhaps they didn&#8217;t like Trac&#8217;s version or have disabled it?) as well as DAV storage whatever that means. CVSDude does emphasise that they have better backup facilities than others offer plus the Trac/Bugzilla instance provides more functionality than GitHub does. CVSDude annoyingly hides a lot of information behind marketing so you need to do a lot of reading to work out what they&#8217;re really selling for each option. </p>
<p>Their overview page serves as an entry point for finding more information, check it out at <a href="http://cvsdude.com/hosting-products.html">http://cvsdude.com/hosting-products.html</a></p>
<p><strong>Provider D: GForge Group (and JoomlaCode)</strong><br />
GForge Group appear to offer free one project per person hosting on their stack with a 75MB space offering. You can add up to five people to the project and it is a private project. GForge offers a wiki, mailing lists, forum, file release system, tracker and a few other tools as well. It has the interesting caveat that if you don&#8217;t log in for 30 days your project will be permanently deleted. GForge are selling a stand-alone product more than anything so they&#8217;re encouraging you to head that way with that however as an item it is an interesting. It looks like you can add to it however their store link didn&#8217;t appear to be working properly. JoomlaCode is powered by GForge AS and offers many of the same features (version control currently limited to SVN though GForge AS supports CVS and GIT amongst other things). JoomlaCode&#8217;s hosting is free for GPL non-commercial Joomla! related projects and is offered as a service to the community.</p>
<p>Check out <a href="http://gforge.com/gf/register/?action=ProjectAdd">http://gforge.com/gf/register/?action=ProjectAdd</a> for more details.</p>
<p><strong>Provider E: PixelNovel</strong><br />
PixelNovel is another host I&#8217;ve just seen today that offer a tool for Adobe Photoshop that integrates Subversion straight into the tool. This means that you don&#8217;t need to jump out of the system to handle it and it also does previews of the Photoshop files for you for when you&#8217;re going back in time. The standalone Photoshop plugin will work with seemingly any Subversion repository and costs around $60 per licence though it would appear you can pick up a free copy with a PixelNovel account which offers 100MB for nothing and goes up from there.</p>
<p>Check out their pricing and plans at <a href="http://pixelnovel.com/pricing">http://pixelnovel.com/pricing</a></p>
<p>As with everything before you hand over cash, code or templates read the fine print. Though it doesn&#8217;t say it outright, PixelNovel for example will delete your account after two months of inactivity or lack of bill payment and GForge have similar albeit much more upfront text. Some services offer SLA&#8217;s on performance and uptime guarantees where as others don&#8217;t whilst some mention backups in a very definite time frame (I think CVSDude offers 10 minute backups) and others mention that they do it without many details. Some also offer more tools than the others and PixelNovel has some specialised tools targeted at designers particularly. As with everything the devil is in the detail so good luck checking things out and make a decision based on your own personal needs.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/12/09/free-gitsvn-hosting-providers/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>How-To: Setting up depositor reassignment in ePrints</title>
		<link>http://pasamio.com/2009/09/24/how-to-setting-up-depositor-reassignment-in-eprints/</link>
		<comments>http://pasamio.com/2009/09/24/how-to-setting-up-depositor-reassignment-in-eprints/#comments</comments>
		<pubDate>Thu, 24 Sep 2009 05:48:02 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[eprints]]></category>
		<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=570</guid>
		<description><![CDATA[ePrints is one of those projects that I seem to spend a lot of time doing minor tweaks to and changes to help the Library do their job effectively. This shifts from major projects like Author ID to mundane tasks like refreshing their templates and style to match the marketing departments wishes. One of the [...]]]></description>
			<content:encoded><![CDATA[<p>ePrints is one of those projects that I seem to spend a lot of time doing minor tweaks to and changes to help the Library do their job effectively. This shifts from major projects like Author ID to mundane tasks like refreshing their templates and style to match the marketing departments wishes. One of the things I&#8217;ve done recently is setting up ePrints to be able to reassign the depositor field.<br />
<span id="more-570"></span><br />
In ePrints when an eprint is deposited it is marked against the user who deposited it. This user has the ability to do tasks with the paper until it is submitted for review and it eventually works its way into the repository. When it is in the repository this is the name that is assigned to the document.</p>
<p>Here at USQ we have cases where we have departmental staff in faculties or research centres that deposit papers on the behalf of academics. These might be secretararies or research assistants who handle the initial entry of data into the system, attaching the paper and the other tasks that are required. At the end of this process the library wanted to change the depositor from this user and reassign it to the primary author of the paper. So they needed a way to reassign the depositor. They didn&#8217;t want this to occur immediately and wanted to have some control over the reassignment. Initially I built it with a user picker for the depositor to select the new user however the Library requested a generic text field instead that the depositor could use to type the details of the person to which they wished the depositor reassigned.</p>
<p>So the first step in all of this drama is to add a few fields. We ended up with three fields: the first was a field for the depositors to enter the name of the user who the item should be reassigned to, the second was an ItemRef field which linked to the user table to have a representation of the user and the last was a checkbox which controlled if the user of the item is reassigned. The first field is visible to any one in the repository who has an account whilst the last two are visible only to repository staff (e.g. editors or administrators).<br />
So to do this, we need to navigate to /opt/eprints3/archives/[archivename]/cfg/cfg.d/eprints_fields.pl and add the following:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">{<br />
'name' =&amp;gt; 'new_depositor_name',<br />
'type' =&amp;gt; 'text'<br />
},<br />
{<br />
'name' =&amp;gt; 'new_depositor_assignment',<br />
'type' =&amp;gt; 'itemref',<br />
'datasetid' =&amp;gt; 'user'<br />
},<br />
{<br />
'name' =&amp;gt; 'new_depositor_update',<br />
'input_style' =&amp;gt; 'checkbox',<br />
'type' =&amp;gt; 'boolean'<br />
}</div></div>
<p>Once we&#8217;ve done this, you need to run &#8220;/opt/eprints3/bin/epadmin update_database_structure [archivename]&#8221; to add the new fields to the database.</p>
<p>The next task we need to do is add this to the eprint workflow so that the fields turn up on the screen. This can be achieve by going to &#8220;/opt/eprints3/archives/[archivename]/cfg/workflows/eprint/default.xml&#8221; and adding it into one of the stages. I picked the &#8220;Notes&#8221; stage or tab to put it in, eventually it looked like this:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&amp;lt;stage name=&quot;notes&quot;&amp;gt;<br />
&amp;lt;component&amp;gt;&amp;lt;field ref=&quot;new_depositor_name&quot;/&amp;gt;&amp;lt;/component&amp;gt;<br />
&amp;lt;epc:if test=&quot;$STAFF_ONLY = 'TRUE'&quot;&amp;gt;<br />
&amp;lt;component&amp;gt;&amp;lt;field ref=&quot;new_depositor_assignment&quot;/&amp;gt;&amp;lt;/component&amp;gt;<br />
&amp;lt;component&amp;gt;&amp;lt;field ref=&quot;new_depositor_update&quot;/&amp;gt;&amp;lt;/component&amp;gt;<br />
&amp;lt;/epc:if&amp;gt;<br />
&amp;lt;/stage&amp;gt;</div></div>
<p>If you don&#8217;t have a &#8220;notes&#8221; stage already, you will need to add a new one to the flow at the top, if you&#8217;re using a standard ePrints configuration, it will look similar to this:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&amp;lt;flow&amp;gt;<br />
&amp;lt;stage ref=&quot;type&quot;/&amp;gt;<br />
&amp;lt;stage ref=&quot;files&quot;/&amp;gt;<br />
&amp;lt;stage ref=&quot;core&quot;/&amp;gt;<br />
&amp;lt;stage ref=&quot;subjects&quot;/&amp;gt;<br />
&amp;lt;stage ref=&quot;notes&quot;/&amp;gt;<br />
&amp;lt;/flow&amp;gt;</div></div>
<p>Pretty easy! The next step is to add some translations in &#8220;/opt/eprints3/archives/[archivename]/cfg/lang/en/phrases/eprint_fields.xml&#8221;. Add these lines before the final &lt;/epp:phrases&gt; line:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&amp;lt;phrase id=&quot;eprint_fieldname_new_depositor_name&quot;&amp;gt;Reassign Depositor&amp;lt;/phrase&amp;gt;<br />
&amp;lt;phrase id=&quot;eprint_fieldhelp_new_depositor_name&quot;&amp;gt;Enter the details of the depositor to which this ePrint should be assigned. Only people submitting on the behalf of other users should select this option to change the depositor. All reassignments are approved by repository staff.&amp;lt;/phrase&amp;gt;<br />
&amp;lt;phrase id=&quot;eprint_fieldname_new_depositor_assignment&quot;&amp;gt;New Depositor&amp;lt;/phrase&amp;gt;<br />
&amp;lt;phrase id=&quot;eprint_fieldhelp_new_depositor_assignment&quot;&amp;gt;Select the new depositor for this ePrint to reassign them as the depositor. There is no issue if this is set to 0.&amp;lt;/phrase&amp;gt;<br />
&amp;lt;phrase id=&quot;eprint_fieldname_new_depositor_update&quot;&amp;gt;Approve Depositor Reassignment&amp;lt;/phrase&amp;gt;<br />
&amp;lt;phrase id=&quot;eprint_fieldhelp_new_depositor_update&quot;&amp;gt;Ticking this box will trigger the reassignment of this item's depositor to the value specified in the new depositor field.&amp;lt;/phrase&amp;gt;</div></div>
<p>So there is are two phrases for each field, the name and the help text that goes with it. Most of it is pretty self explanatory. The final step in this trip is to alter &#8220;/opt/eprints3/archives/usqep3/cfg/cfg.d/eprint_fields_automatic.pl&#8221; to set it so that it will change the depositor of the item once the tick box is checked.</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$c-&amp;gt;{set_eprint_automatic_fields} = sub<br />
{<br />
my( $eprint ) = @_;</div></div>
<p># Depositor Reassignment<br />
if( $eprint-&gt;get_value( &#8220;new_depositor_update&#8221; ) eq &#8220;TRUE&#8221; &amp;&amp; $eprint-&gt;get_value( &#8220;new_depositor_assignment&#8221; ) != 0 )<br />
{<br />
$eprint-&gt;set_value( &#8220;userid&#8221;, $eprint-&gt;get_value( &#8220;new_depositor_assignment&#8221; ) );<br />
$eprint-&gt;set_value( &#8220;new_depositor_assignment&#8221;, &#8220;&#8221; );<br />
$eprint-&gt;set_value( &#8220;new_depositor_name&#8221;, &#8220;&#8221; );<br />
$eprint-&gt;set_value( &#8220;new_depositor_update&#8221;, &#8220;FALSE&#8221; );<br />
}<br />
# End Depositor Reassignment<br />
my $type = $eprint-&gt;get_value( &#8220;type&#8221; );<br />
if( $type eq &#8220;monograph&#8221; || $type eq &#8220;thesis&#8221; )<br />
{<br />
These nine lines surrounded by Depositor Reassignment is inserted where it is and at this point we&#8217;re done. We&#8217;ll need to restart the server before we get too far just to ensure that everything takes properly and then we can test it all out.</p>
<p>The workflow at this point is that a user of the system marks down the person they wish to reassign as the depositor. We have an overnight report which runs to email one of our repository editors to notify them of items that are being requested to be transferred. They then view these items and enter the user ID of the user in question into the new depositor field (they can use lookup to validate it) and at this point they need to check the box to actually update the assignment. In ticking the box the the depositor is set to the value of the new depositor field, the reassignment field is blanked, the new depositor field is blanked and the check is cleared.</p>
<p>The most unfriendly aspect of this is finding the user in question. To do so you need to traverse the user search, find the user and then grab their user ID and put it in the field. This is a bit much. We also wanted to have the option to send an ameila but the editors need to be able to customise the email before it is sent and wanted control.</p>
<p>Fortunately the solution to the first problem was to utilise the Itemref custom InputForm Component that I created for the Author ID project. The second was to create a new one that primitively created a &#8220;mailto&#8221; link with a lot of the details pre-populated. For the latter I might have been able to do it within the workflow language but I felt it was easier to build in Perl.<br />
Before we begin, we&#8217;re going to need a few files:</p>
<ul>
<li>The &#8220;<a href="http://pasamio.com/wp-content/uploads/2009/09/Itemref.pm">Itemref.pm</a>&#8221; file needs to be put in the &#8220;/opt/eprints3/perl_lib/EPrints/Plugin/InputForm/Component&#8221; directory.</li>
<li>The &#8220;<a href="http://pasamio.com/wp-content/uploads/2009/09/USQ_DepositorEmail.pm">USQ_DepositorEmail.pm</a>&#8221; file needs to be put in the &#8220;/opt/eprints3/perl_lib/EPrints/Plugin/InputForm&#8221; directory.</li>
<li>The &#8220;<a href="http://pasamio.com/wp-content/uploads/2009/09/user">user</a>&#8221; file needs to be put in the &#8220;/opt/eprints3/cgi/users/popup/user&#8221; directory. The &#8220;popup&#8221; directory might not exist in your installation and will probably have to be added first.</li>
</ul>
<p>Once you&#8217;ve got these files in place we&#8217;re ready to do some more modifications. In the &#8220;/opt/eprints3/archives/[archivename]/cfg/workflows/eprint/default.xml&#8221; file where we had the following:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&amp;lt;component&amp;gt;&amp;lt;field ref=&quot;new_depositor_assignment&quot;/&amp;gt;&amp;lt;/component&amp;gt;</div></div>
<p>We&#8217;re going to change that to the following:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&amp;lt;component type=&quot;Field::Itemref&quot;&amp;gt;&amp;lt;field ref=&quot;new_depositor_assignment&quot; external_lookup_url=&quot;{$config{perl_url}}/users/popup/user&quot; external_lookup_params=&quot;userid=&quot;/&amp;gt;&amp;lt;/component&amp;gt;</div></div>
<p>This then tells the system to add a new &#8220;Find Entry&#8221; button which will popup with the user search window. The user search is limited to repository users so anyone who isn&#8217;t authorised will receive a login request form. It also tells ePrints to use the new Itemref InputForm Component to handle this field as well, which is what puts the Find Entry button and handles the other logic.<br />
To add the email option, we add a single line after the above mentioned on to load it up:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&amp;lt;component type=&quot;USQ_DepositorEmail&quot; /&amp;gt;</div></div>
<p>Pretty simple changes here so far &#8211; this then puts some text with a link up if we need it. The last change we need to make is to include this into our language files. There are a few strings, we&#8217;ll just put them into the &#8220;/opt/eprints3/archives/[archivename]/cfg/lang/en/phrases/eprint_fields.xml&#8221; file we used previously:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&amp;lt;epp:phrase id=&quot;Plugin/InputForm/Component/USQ_DepositorEmail:mail_depositors&quot;&amp;gt;Click here to populate a new email message to the depositors&amp;lt;/phrase&amp;gt;<br />
&amp;lt;epp:phrase id=&quot;Plugin/InputForm/Component/USQ_DepositorEmail:email_message_subject&quot;&amp;gt;EPrints Depositor Reassignment&amp;lt;/phrase&amp;gt;<br />
&amp;lt;epp:phrase id=&quot;Plugin/InputForm/Component/USQ_DepositorEmail:email_message_body&quot;&amp;gt;Hi &amp;lt;pin name=&quot;new_depositor&quot; /&amp;gt;,<br />
An item has been deposited on your behalf by &amp;lt;pin name=&quot;current_depositor&quot; /&amp;gt;.<br />
You can view this item here: &amp;lt;pin name=&quot;eprint_url&quot; /&amp;gt;&amp;lt;/phrase&amp;gt;<br />
&amp;lt;epp:phrase id=&quot;Plugin/InputForm/Component/USQ_DepositorEmail:new_depositor_id_unset&quot;&amp;gt;New depositor ID is unset. Setting the depositor ID will activate this item.&amp;lt;/phrase&amp;gt;<br />
&amp;lt;epp:phrase id=&quot;lib/metafield/itemref:find_entry&quot;&amp;gt;Find entry&amp;lt;/phrase&amp;gt;</div></div>
<p>All pretty simple, again these lines should be inserted before the &lt;/epp:phrases&gt; line in the file. Once you&#8217;ve done this, restart the server again to pick up all of the changes and you should see a user picker interface and a little bit of text you can click to make a quick email message. You can customise the email message by altering the language strings to change what you want to display.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/09/24/how-to-setting-up-depositor-reassignment-in-eprints/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ePrints Author ID</title>
		<link>http://pasamio.com/2009/08/28/eprints-author-id/</link>
		<comments>http://pasamio.com/2009/08/28/eprints-author-id/#comments</comments>
		<pubDate>Fri, 28 Aug 2009 10:47:03 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[eprints]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[university]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=560</guid>
		<description><![CDATA[One of the things I&#8217;ve been working on over the last month is the ability to create distinct and unique author identifiers for ePrints. ePrint&#8217;s is a really awesome Perl based repository that the University uses to handle its research papers but whilst it is great at handling ePrints, documents, users and a whole host [...]]]></description>
			<content:encoded><![CDATA[<p>One of the things I&#8217;ve been working on over the last month is the ability to create distinct and unique author identifiers for ePrints. ePrint&#8217;s is a really awesome Perl based repository that the University uses to handle its research papers but whilst it is great at handling ePrints, documents, users and a whole host of other things it really falls over when you try to treat authors as individuals.</p>
<p><span id="more-560"></span>Currently ePrints lists authors by using the creator field of an ePrint. This is usually entered as the cited name of the author. If you have a small number of authors with different names this works reasonably well as the system can differentiate between people without much issues. The problem comes in when people are cited differently or have very similar names but are distinct people. Then it becomes bad.</p>
<p>One way of solving the problem is really quite ugly: you go through and change the cited author to make it look &#8220;neater&#8221;. In fact one of our library staff decided that they would do that greatly damaging the value of the data stored with in the system, tainting it horribly and creating more work for themselves. The cynic in me wonders that they&#8217;re just creating more work for themselves later to go back through and fix it all up. So there is a solution, non technical and pretty ordinary.</p>
<p>So our solution was to turn authors into a first class data set within ePrints. They&#8217;re not some unidentifiable free text field with no great purpose (there was a creator ID field but email address was suggested to be used for it) but in fact they are now their own entity which is cool.</p>
<p>We&#8217;ve done some different stuff with the author ID project at USQ that I&#8217;d like to share:</p>
<div>
<dl id="attachment_564" style="text-align: center; background-color: #f3f3f3; padding-top: 4px; -webkit-border-top-right-radius: 3px 3px; -webkit-border-top-left-radius: 3px 3px; -webkit-border-bottom-left-radius: 3px 3px; -webkit-border-bottom-right-radius: 3px 3px; width: 264px; margin: 10px; border: 1px solid #dddddd;">
<dt><a href="http://pasamio.com/wp-content/uploads/2009/08/authorid-authoredit.png"><img style="padding: 0px; margin: 0px; border: 0px none initial;" title="Author ID - Author Editing Screen" src="http://pasamio.com/wp-content/uploads/2009/08/authorid-authoredit-254x300.png" alt="This screen depicts the edit view for an author." width="254" height="300" /></a></dt>
<dd style="font-size: 11px; line-height: 17px; padding-top: 0px; padding-right: 4px; padding-bottom: 5px; padding-left: 4px; margin: 0px;">This screen depicts the edit view for an author.</dd>
<div><span style="font-size: small;"><span style="line-height: 17px;"><br />
</span></span></div>
</dl>
</div>
<p>So an author has a name, they can be linked back to a user ID, they have an email address (both primary email address which should be used for contact and alternate addresses for aiding search), a biography and external identifiers. A cool feature of the primary email address is that when it is updated it automatically gets copied to the alternate email address list,  so you can easily update an email address and still retain the old one (you can still remove them from the alternate email address easily). The external identifiers section provides the ability to list useful identifiers for the author that mean something outside of ePrints. This could be stuff like a staff or student number that you record against the author to help with recognising your users. This is also a new field type developed called &#8216;Name-Value&#8217; to represent name value pairs of data and provide an editing interface.</p>
<p>But the problem with authors is that they don&#8217;t stay the same: they&#8217;re dynamic. So they might move around an organisation, shift faculties, join a research centre or even leave the organisation. Recording this in the author record is more than possible but it starts to get messy &#8211; we start talking about &#8216;versions&#8217; of the author but versions imply the wrong concept. A researcher might be working on papers in two different faculties, each paying for his time and each deserving of recognition. In our case we also need to use that information for reporting so that we can properly allocate funds based on research outcomes as well &#8211; for us it is important to know who paid for the research.</p>
<p>So to solve this problem I created a system called &#8220;author instances&#8221;. Author instances provide a subrecord of the authors that permits instances of specific data to be created and associated with the author. Then when an author creates a paper a link is created to this instance and not directly to the author. This allows the author record to contain information that is relatively static and data that might periodically change (such as department or even which institution someone is at) is then located in the author instance. As this isn&#8217;t &#8216;versioning&#8217; per se it also works well for when a researcher is concurrently producing papers for different parts of the institution (or even for bodies external to the institution).</p>
<div id="attachment_565" class="wp-caption alignnone" style="width: 310px"><a href="http://pasamio.com/wp-content/uploads/2009/08/authorid-authorinstance_edit.png"><img class="size-medium wp-image-565" title="Author ID - Editing an Author Instance" src="http://pasamio.com/wp-content/uploads/2009/08/authorid-authorinstance_edit-300x168.png" alt="This screen depicts the edit view for an author instance." width="300" height="168" /></a><p class="wp-caption-text">This screen depicts the edit view for an author instance.</p></div>
<p>The author instance is very light by default, it only contains the author that it is linked to, its display name and a preferred flag. The preferred flag is mutually exclusive within author instances &#8211; if one instance for an author sets the flag then it is cleared for all other authors. In the screen shot you will notice an untranslated field called &#8220;deptid&#8221;. This is another new metafield that has been developed called &#8220;Externalitemref&#8221; which is similar to the built in ItemRef field however it works on tables managed outside of ePrints. ExternalItemRef takes the params of a table name, a key field and a name field to operate in a similar manner to the ItemRef and link data back in.</p>
<p>The observant will notice that both the ExternalItemRef and the built-in ItemRef field also have a find entry button. This button has also been added to the ePrint item editing screen as well and triggers a popup window which allows easy searching for the particular item (user, author, author instance) that you are interested in.</p>
<div id="attachment_566" class="wp-caption alignnone" style="width: 310px"><a href="http://pasamio.com/wp-content/uploads/2009/08/authorid-eprint_edit_w-popup.png"><img class="size-medium wp-image-566" title="Author ID - ePrints Edit View with Instance selector popup" src="http://pasamio.com/wp-content/uploads/2009/08/authorid-eprint_edit_w-popup-300x104.png" alt="The standard ePrints creator fields have a &quot;Find Entry&quot; button as well." width="300" height="104" /></a><p class="wp-caption-text">The standard ePrints creator fields have a &quot;Find Entry&quot; button as well.</p></div>
<p>So as we can see there is now a &#8220;Find Entry&#8221; button that pops up with a new window allowing us to select an author instance for this author easily and not have to worry that we&#8217;re going to mistype their email address or similar.</p>
<p>This is just a quick introduction into some of the changes that the Author ID system which USQ has developed provides. Ideally we&#8217;d love to feed this back to the ePrints core so that everyone can use this, or a similar system, in a great way. If you want to read more you can check out the &#8220;<a title="Author ID Notes" href="http://sammoffatt.com.au/kb-downloads/doc/3/raw">Author ID Notes</a>&#8221; document on my <a title="Sam Moffatt Consulting Knowledge Base Downloads" href="http://sammoffatt.com.au/kb-downloads">knowledge base download site</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/08/28/eprints-author-id/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;Write a blog post about your upgrade&#8221;</title>
		<link>http://pasamio.com/2009/08/08/write-a-blog-post-about-your-upgrade/</link>
		<comments>http://pasamio.com/2009/08/08/write-a-blog-post-about-your-upgrade/#comments</comments>
		<pubDate>Sat, 08 Aug 2009 13:53:42 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=558</guid>
		<description><![CDATA[So today I upgraded Wordpress to its latest security release. I would have liked to use the automatic tool but somehow it forces me to use FTP for some reason unknown to me. So I did it the hard way and unlike Joomla! it asks you to delete files, copy things, make sure you don&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>So today I upgraded Wordpress to its latest security release. I would have liked to use the automatic tool but somehow it forces me to use FTP for some reason unknown to me. So I did it the hard way and unlike Joomla! it asks you to delete files, copy things, make sure you don&#8217;t accidentally delete something and check that you included everything right. I always find it annoying how Wordpress works however that&#8217;s the price that I pay for trying out something interesting. In other news my iBook G4 is in piece on my kitchen table whilst I try to work out how to fix it again.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/08/08/write-a-blog-post-about-your-upgrade/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Joomla! 1.5.14 released, easy updates with JUpdateMan</title>
		<link>http://pasamio.com/2009/07/31/joomla-1514-released-easy-updates-with-jupdateman/</link>
		<comments>http://pasamio.com/2009/07/31/joomla-1514-released-easy-updates-with-jupdateman/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 01:05:32 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=556</guid>
		<description><![CDATA[A few hours ago Joomla! 1.5.14 was released and I updated my websites. It&#8217;s a great feeling to be able to update a Joomla! site in under a minute from logging in, to finding and downloading the update to applying it. Check out the latest update manager and download the latest Joomla! release now.
]]></description>
			<content:encoded><![CDATA[<p>A few hours ago Joomla! 1.5.14 was released and I updated my websites. It&#8217;s a great feeling to be able to update a Joomla! site in under a minute from logging in, to finding and downloading the update to applying it. Check out the latest <a href="http://sammoffatt.com.au/os/joomla-15-products/3-jupdateman">update manager</a> and download the latest Joomla! release now.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/07/31/joomla-1514-released-easy-updates-with-jupdateman/feed/</wfw:commentRss>
		<slash:comments>41</slash:comments>
		</item>
		<item>
		<title>The reality of employment</title>
		<link>http://pasamio.com/2009/07/29/the-reality-of-employment/</link>
		<comments>http://pasamio.com/2009/07/29/the-reality-of-employment/#comments</comments>
		<pubDate>Wed, 29 Jul 2009 12:38:05 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[employment]]></category>
		<category><![CDATA[today]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=553</guid>
		<description><![CDATA[There are times when 140 characters just isn&#8217;t enough, microblogging works but in this case I have a quote which would be put 86 characters over twitters limits (I tried):
And generally speaking, &#8220;large, deep-pockets organization(s)&#8221; are no more stable than a startup, from the grunt&#8217;s perspective. At any moment, you&#8217;re one spreadsheet away from being [...]]]></description>
			<content:encoded><![CDATA[<p>There are times when 140 characters just isn&#8217;t enough, microblogging works but in this case I have a quote which would be put 86 characters over twitters limits (I tried):</p>
<blockquote><p>And generally speaking, &#8220;large, deep-pockets organization(s)&#8221; are no more stable than a startup, from the grunt&#8217;s perspective. At any moment, you&#8217;re one spreadsheet away from being laid off to improve the quarterly statements.</p></blockquote>
<p>It&#8217;s taken from a <a href="http://developers.slashdot.org/comments.pl?sid=1318149&amp;cid=28862033">comment</a> on the Slashdot article about the JRuby guys splitting from the Oracle/Sun behemoth. It is an interesting statement and something I feel is a rather accurate representation of the way life really is and a quite straight forward and direct statement of fact.</p>
<p>Yay for Macroblogging!</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/07/29/the-reality-of-employment/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Update Manager 1.5.1 Final Released!</title>
		<link>http://pasamio.com/2009/07/27/update-manager-151-final-released/</link>
		<comments>http://pasamio.com/2009/07/27/update-manager-151-final-released/#comments</comments>
		<pubDate>Sun, 26 Jul 2009 15:31:06 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=549</guid>
		<description><![CDATA[Hi all, I&#8217;m happy to announce that I&#8217;ve released the final version of the update manager. I would kindly ask all those who downloaded and installed the beta versions to update to the final release going forwards. There is a small introduction with links to the latest release on my open source consulting site as [...]]]></description>
			<content:encoded><![CDATA[<p>Hi all, I&#8217;m happy to announce that I&#8217;ve released the final version of the update manager. I would kindly ask all those who downloaded and installed the beta versions to update to the final release going forwards. There is a small introduction with links to the latest release on my <a title="Joomla! Update Manager Introduction" href="http://sammoffatt.com.au/os/joomla-15-products/3-jupdateman/36-jupdateman-introduction">open source consulting site</a> as well as <a href="http://sammoffatt.com.au/os/joomla-15-products/3-jupdateman/37-jupdateman-walkthrough">a walkthrough of the process</a>. This is the first stand alone release of the tool from the Advanced Tools package and I&#8217;m going to update the Advanced Tools package to incorporate this update sometime tomorrow. I&#8217;ve also applied to have this extension listed in its own right on the JED as well to make it even easier to find. Check it out and as always if you have any issues, let me know through the comments.</p>
<p>For those who had earlier versions of the extension installed, you will probably be getting the following message (or have issues updating to 1.5.12): <strong>Parsing XML Document Failed: Not a JUpgrader definition file!</strong></p>
<p>Updating to this version of the update manager will resolve those issues, so what are you waiting for? Update!</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/07/27/update-manager-151-final-released/feed/</wfw:commentRss>
		<slash:comments>37</slash:comments>
		</item>
		<item>
		<title>Update Manager 1.5.1b3 Release</title>
		<link>http://pasamio.com/2009/07/26/update-manager-151b3-release/</link>
		<comments>http://pasamio.com/2009/07/26/update-manager-151b3-release/#comments</comments>
		<pubDate>Sat, 25 Jul 2009 16:01:32 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=546</guid>
		<description><![CDATA[As I edge closer to a release I have what I hope will be the close to final. So far I have one outstanding issue with parsing XML files which I hope to have resolved with an alteration of the XML file. So you can download the Joomla! Update Manager 1.5.1 Beta 3 which now has displays [...]]]></description>
			<content:encoded><![CDATA[<p>As I edge closer to a release I have what I hope will be the close to final. So far I have one outstanding issue with parsing XML files which I hope to have resolved with an alteration of the XML file. So you can download the <a href="http://pasamio.com/wp-content/uploads/2009/07/com_jupdateman_151b3.tgz">Joomla! Update Manager 1.5.1 Beta 3</a> which now has displays for issues where your temporary path might be wrong (unfortunately it isn&#8217;t easy to handle detecting if something is writeable when in FTP mode so when I work that problem out things will be solved). As always, comments welcome!</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/07/26/update-manager-151b3-release/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Update Manager 1.5.1b2</title>
		<link>http://pasamio.com/2009/07/24/update-manager-151b2/</link>
		<comments>http://pasamio.com/2009/07/24/update-manager-151b2/#comments</comments>
		<pubDate>Thu, 23 Jul 2009 14:48:09 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=543</guid>
		<description><![CDATA[Some more updates and fixes including a message display system, the ability to force upgrade a site with a full patch and some minor bug fixes. Again, this release requires PHP5.
Download Joomla! Update Manager_1.5.1b2
If you have any issues, feel free to submit comments. So far I have one outstanding issue with some sites with FTP [...]]]></description>
			<content:encoded><![CDATA[<p>Some more updates and fixes including a message display system, the ability to force upgrade a site with a full patch and some minor bug fixes. Again, this release requires PHP5.</p>
<p><a href="http://pasamio.com/wp-content/uploads/2009/07/com_jupdateman_151b2.tgz">Download Joomla! Update Manager_1.5.1b2</a></p>
<p>If you have any issues, feel free to submit comments. So far I have one outstanding issue with some sites with FTP enabled not downloading files properly &#8211; I think it is a permissions issue but I&#8217;m still investigating this.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/07/24/update-manager-151b2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Update Manager updates!</title>
		<link>http://pasamio.com/2009/07/21/update-manager-updates/</link>
		<comments>http://pasamio.com/2009/07/21/update-manager-updates/#comments</comments>
		<pubDate>Tue, 21 Jul 2009 13:49:25 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=538</guid>
		<description><![CDATA[I&#8217;ve done a major update to the update manager that is distributed with the Advanced Tools pack. I&#8217;ve also released it as an individual download as well that you can get and update your Advanced Tools install or just install individually if you want. However the side effect of this is that I&#8217;ve killed the [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve done a major update to the update manager that is distributed with the Advanced Tools pack. I&#8217;ve also released it as an individual download as well that you can get and update your Advanced Tools install or just install individually if you want. However the side effect of this is that I&#8217;ve killed the old version. It was a hard decision because at one stage I was going to have a new file location and have the old software work going forwards as well as the new software working fine. I thought I&#8217;d force the update though to bring things forward. But its a big change.</p>
<p>First if you&#8217;re on the old version, you will get the following error message:</p>
<p><strong><span style="font-family: mceinline;">Parsing XML Document Failed: Not a JUpgrader definition file!</span></strong></p>
<p>Complete with a shiny red font and the like as well. Once you&#8217;re at that point you aren&#8217;t going to be able to continue with the old tool. It has reached the end of its era. The tool itself is a slight modification of the 1.0 version that I wrote a few years ago &#8211; so I guess its fitting that it gets a bit of a rethink into a new 1.5 like version with features backported from 1.6&#8217;s tree. Part of this means that I&#8217;m really only supporting PHP5 or greater any more. I don&#8217;t have PHP4 handy for me to test any more and really, its getting beyond a joke now. Joomla! 1.6 will require PHP5.2+, however most of what I&#8217;m working on should work fine with PHP5+ without issues.</p>
<p>So what features do we have:</p>
<ol>
<li>The ability to update the updater itself? Check!</li>
<li>The ability to switch between the 1.5 extractor, a backported 1.6 extractor and 1.5&#8217;s built-in PEAR Archive_Tar? Check!</li>
<li>The ability to manually upload files and use those instead of requiring an internet connection? Check!</li>
<li>The ability to specify a HTTP proxy to download updates through? Check!</li>
<li>Support for fopen and cURL for downloads? Check!</li>
<li>Support for working with FTP mode as well as without? Check!</li>
</ol>
<p>I&#8217;ve got a beta release that if anyone is interested in testing ready to go, just download the &#8220;<a href="http://pasamio.com/wp-content/uploads/2009/07/com_jupdateman_151beta.tgz">Joomla! Update Manager 1.5.1 Beta</a>&#8221; by clicking the link (or copying it) and installing it into your own site. It&#8217;ll work for new installs or update existing installs.</p>
<p>Let me know if there are any issues as comments here. Once I&#8217;ve finalised this release, I&#8217;ll switch over the paths from update2.xml to update.xml and get everything squared away all nice and tight.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/07/21/update-manager-updates/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Ban IP Address and Range 1.5.2 released!</title>
		<link>http://pasamio.com/2009/07/15/ban-ip-address-and-range-152-released/</link>
		<comments>http://pasamio.com/2009/07/15/ban-ip-address-and-range-152-released/#comments</comments>
		<pubDate>Wed, 15 Jul 2009 13:18:13 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=536</guid>
		<description><![CDATA[Progressing forward with my releases, Ban IP Address and Range has just received an update to allow it to redirect to a location instead of just displaying a message. This means you can redirect to a static page somewhere with more details, an image or something similar like that.
As always you can check it out [...]]]></description>
			<content:encoded><![CDATA[<p>Progressing forward with my releases, Ban IP Address and Range has just received an update to allow it to redirect to a location instead of just displaying a message. This means you can redirect to a static page somewhere with more details, an image or something similar like that.</p>
<p>As always you can check it out on the <a href="http://extensions.joomla.org/extensions/access-&amp;-security/site-access/4201/details">Joomla! Extensions Site</a> and there is some <a href="http://sammoffatt.com.au/os/index.php/joomla-15-products/8-smaller-tools/14-ban-ip-address-and-range">documentation online</a> as well (needs to be updated still though!). Downloads available from <a href="http://joomlacode.org/gf/project/tccprojects/frs/?action=FrsReleaseBrowse&amp;frs_package_id=3364">JoomlaCode</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/07/15/ban-ip-address-and-range-152-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Migrator 1.5 released</title>
		<link>http://pasamio.com/2009/07/15/migrator-15-released/</link>
		<comments>http://pasamio.com/2009/07/15/migrator-15-released/#comments</comments>
		<pubDate>Tue, 14 Jul 2009 14:13:56 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>
		<category><![CDATA[migrator]]></category>

		<guid isPermaLink="false">http://pasamio.com/2009/07/15/migrator-15-released/</guid>
		<description><![CDATA[Today i released an update for my migrator extension to 1.5 due to a fix to a subtle bug that I introduced with the configurable batch sizes that I introduced in Migrator 1.3 release. This is would cause weird SQL duplication for tasks that were suspended due to the timeout avoidance code. The change was [...]]]></description>
			<content:encoded><![CDATA[<p>Today i released an update for my migrator extension to 1.5 due to a fix to a subtle bug that I introduced with the configurable batch sizes that I introduced in Migrator 1.3 release. This is would cause weird SQL duplication for tasks that were suspended due to the timeout avoidance code. The change was pretty sime, a but of code that I had forgotten to update when I was doing some other changes. Next on the release list for tomorrow is an update to the ban IP address or range extension. </p>
<p>You can download Migrator 1.5 from: http://joomlacode.org/gf/download/frsrelease/10646/41924/migrator.zip</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/07/15/migrator-15-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Understanding versus Knowing</title>
		<link>http://pasamio.com/2009/06/28/understanding-versus-knowing/</link>
		<comments>http://pasamio.com/2009/06/28/understanding-versus-knowing/#comments</comments>
		<pubDate>Sun, 28 Jun 2009 08:33:13 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[filesystems]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=531</guid>
		<description><![CDATA[When I went through high school we had three segments for our maths and physics exams: we had the basic knowledge part that tested if we new a given fact and could apply it to a straight forward problem, we had the understanding part that tested if we could understand a fact and apply it [...]]]></description>
			<content:encoded><![CDATA[<p>When I went through high school we had three segments for our maths and physics exams: we had the basic knowledge part that tested if we new a given fact and could apply it to a straight forward problem, we had the understanding part that tested if we could understand a fact and apply it to a slightly more complex problem and we had a complex reasoning section of the exam which tested a combination of the items we knew and took a large number of steps to get to the final answer. Today I&#8217;m hunting around to look for file system permissions and I&#8217;ve read something that makes me wonder if there should be that distinction.</p>
<p><span id="more-531"></span>The article in question is entitled &#8220;<a href="http://www.windowsecurity.com/articles/Understanding-Windows-NTFS-Permissions.html">Understanding Windows NTFS Permissions</a>&#8221; and covers the basics of permissions for NTFS. It covers the fact you have read which is really made up of List Folder/Read Data, Read Attributes, Read Extended Attributes and Read Permissions. It also covers that NTFS permits permissions to be inherited but appears to miss the distinction of &#8220;This folder, subfolders and files&#8221;, &#8220;This folder only&#8221;, &#8220;Subfolders and files only&#8221;, &#8220;This folder only&#8221; when applied to permissions. Each of these actually impacts how permissions are inherited and applied, surely if you&#8217;re trying to understand this then explaining the distinctions here would be great and how they apply. He finishes with an interesting observation on the &#8220;precedence&#8221; of permissions. Now I find this curious because this is something I&#8217;ve been looking at late and I&#8217;ve been trying to find something that adequately explains it. Perhaps the author of the particular article is dumbing it down for his readers but it just strikes me as wrong. The author comments the following:</p>
<blockquote><p>The scenario proves that there is a hierarchy of permissions for NTFS 5.0 resources. The hierarchy of precedence for the permissions can be summarized as follows, with the higher precedence permissions listed at the top of the list:</p></blockquote>
<blockquote><p>Explicit Deny<br />
Explicit Allow<br />
Inherited Deny<br />
Inherited Allow</p></blockquote>
<p>Ok, so its an interesting way of explaining it, but to mimic an annoying kid: why? Microsoft says in a dialog just previous that deny overrules allow so why would they so blatantly change the mind? To do so would mean that you would have to understand how NTFS evaluates permissions and calculates the permissions &#8211; but weren&#8217;t we reading an article about understanding?</p>
<p>This is the core of my gripe, the article doesn&#8217;t particularly give you a depth of insight or understanding in permissions that you couldn&#8217;t get by clicking things on and off to observe their behaviour. It treats one mildly non-obvious behaviour but doesn&#8217;t explain why NTFS would do this. To be honest I stumbled across this behaviour on another web site which had run into the pitfall of believing that deny overruled everything and was trying to understand why his security model was broken. His article hypothesised something much simpler: the algorithm finds the first explicit permission and uses it, if both are set then use the deny. No complex precedence model, something quite simple. And as Ockham&#8217;s Razor goes &#8220;the simplest answer is often the best&#8221;. But interestingly this also fits into the way NTFS appears to have been designed. For container objects, a permission can be set at a level and it can be determined just how deep it should apply: should it apply to just this container, just to subfolders or just to files? Or should it apply to a combination of those?</p>
<p>Interestingly I&#8217;m on the hunt for something that formally explains how NTFS permission inheritance works, I had thought this article would tell me but it doesn&#8217;t. It tells me a lot of what I know already but doesn&#8217;t actually enhance my understanding. I had read an article a while back that informed me of this &#8216;quirk&#8217; in the behaviour but at the time didn&#8217;t think much of bookmarking it &#8211; and it is in fact this article that I&#8217;m looking for, and thankfully I just found it.</p>
<p>The article in question is &#8220;<a href="http://technet.microsoft.com/en-us/magazine/2005.11.howitworksntfs.aspx">How IT works: NTFS Permissions</a>&#8221; from the November/December 2005 issue of TechNet Magazine. It introduces the concept of &#8220;discretionary access control lists&#8221; (DACL) and also explains how they work. It explains that the DACL is checked in order until a match is found with the DACL created with denies first, then allows starting with the object and then incrementally for each item it looks for a match until it gets to the end at which point it denies. The single article just cleared up exactly how it worked, why it works and how it behaves explaining the behaviour. At this point I understand how and why it works, not just know that it works in a particular way &#8211; this is the difference between understanding and knowing.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/06/28/understanding-versus-knowing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Browser Story</title>
		<link>http://pasamio.com/2009/06/20/browser-story/</link>
		<comments>http://pasamio.com/2009/06/20/browser-story/#comments</comments>
		<pubDate>Sat, 20 Jun 2009 13:53:08 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[internet]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=528</guid>
		<description><![CDATA[I was sitting in Joomla! Bug Squad today chatting about browsers. Firefox 3.5 is almost ready (I&#8217;m typing on a release candidate with it, I&#8217;ve been using it since beta, I used 3.0 when it was still &#8216;Minefield&#8217;) and Safari 4 has been recently released (another one that I used throughout beta). Each offer improvements [...]]]></description>
			<content:encoded><![CDATA[<p>I was sitting in Joomla! Bug Squad today chatting about browsers. Firefox 3.5 is almost ready (I&#8217;m typing on a release candidate with it, I&#8217;ve been using it since beta, I used 3.0 when it was still &#8216;Minefield&#8217;) and Safari 4 has been recently released (another one that I used throughout beta). Each offer improvements in speed over their predecessor which got me thinking about the progression of different browsers.</p>
<p><span id="more-528"></span>I&#8217;ll start with Safari because that&#8217;s where the discussion began with. Many years ago there were two major browsers for the Mac: Netscape Navigator and Microsoft Internet Explorer. Netscape on a Mac at primary school was my first exposure to the internet which dialed into the local University and used their connection. This was back when browsers still costed money to acquire, we&#8217;ve come a long way. At one stage Netscape was shipped by default but as we progressed with Mac&#8217;s, Internet Explorer became the default browser that shipped on Mac OS (along side Netscape). Microsoft really had no interest in continuing to develop for the platform that they started their life on (yes, Word was originally a Mac application, which is why it has quirks like Mac&#8217;s) and their browser stagnated on the platform. In 2003, Apple announced that they were effectively forking KHTML and building their own browser which ended up being included as the default browser in Mac OS X 10.3 (that same year) with Internet Explorer an alternative and then as the only browser in Mac OS X 10.4 (which was where I started my Mac journey).</p>
<p>It was a bumpy road for Safari but they came out the other end with the open source project &#8220;WebKit&#8221;. This is significant because today WebKit is used more places than Mozilla&#8217;s Gecko engine. WebKit forms the basis of Safari on Mac, Windows and iPhone/iPod Touch for Apple developed products but is now a part of Google&#8217;s Chrome browser and their Android mobile phone platform and Nokia are using it with their Symbian S60 phones. Apple, Google and Nokia. There are other browsers that are picking it up, like Epiphany on Linux (moved from Gecko to Gecko and WebKit to just WebKit), iCab and Omniweb. There were also those browsers who were built around it,  like Shiira and Google Chrome. Just recently Palm has joined the mix with their new &#8220;Pre&#8221; handled being heavily powered by WebKit (you know, the iPhone killer). Really quite scary when I think how out of nowhere really this rendering engine has appeared and taken market dominance away from Gecko.</p>
<p>And Gecko, the engine that powers Firefox that came from the Netscape line. Gecko at one stage was the engine of choice for GUI based browsers for Linux. Sure there were other browsers out there that did their own thing but nothing really compared to Gecko. Gecko powered Mozilla&#8217;s Navigator line as well as Firefox but it also held a lot of sway amongst the GNOME guys as well. Gecko was the engine that powered Galeon. Galeon was perhaps for the longest time my most favourite web browser for Linux. It was lighter than Firefox and in some respects has some features that Firefox is only just getting. Unfortunately the Galeon people had a falling out and some moved to Epiphany. Epiphany has never been the browser that Galeon was which is disappointing to see.</p>
<p>Next on the list is Opera. Opera has never really been my favourite browser though it does have some nice features, I just never picked up on it. I continue to have a copy of Opera laying around my Mac but the last time I seriously used it was for testing websites when I wandered complete cookie isolation when both Safari and Firefox were busy being useful. The time prior to that was before Firefox 3 was in beta (Minefield!) and I wanted to test some CSS that Safari 3 rendered fine but Firefox 2 refused to display properly. Firefox 3 didn&#8217;t render the page perfectly (still) but it did go a long way to getting it right and Opera got a bit further but not quite there. Opera has some really cool features such as tab previews and their &#8216;quick dial&#8217; page as well as the ability to embed &#8216;widgets&#8217; into the application as well which seem to be able to work at a higher level than the Firefox extensions appear to work within normally.</p>
<p>Last on my list is Internet Explorer. IE is these days predominantly a Windows only web browser though in its history there were ports to both Mac OS (8, 9, X) and UNIX. IE also makes an appearance for Microsoft&#8217;s Windows Mobile operating systems as well. It is most revered perhaps for its lack of ability to follow standards and interesting flaws such as the PNG transparency issue. Interestingly since the Mac version 5 diverged using the Tasman layout engine not the Trident engine (Trident being the engine behind the Windows versions which is still used to this day). Tasman aimed to follow the standards and did so quite well and as such it didn&#8217;t feature IE&#8217;s Box Model bug and had better XHTML, CSS and PNG support (with full transparency and colour correction). The Tasman layout engine lives on today within Microsoft TV Mediaroom Edition with rumours it&#8217;d be used in IE7 which turned out not to happen. IE has been known to introduce a few features that have lived on however. The favourite icon support was first seen in IE an the AJAX revolution was started by Microsoft&#8217;s XMLHTTPRequest object. IE is also well known for the things it has introduced that have caused issues, such as ActiveX controls, insecurity with various security flaws and inappropriate designed trust models in addition to the fact that each version introduces new quirks and bugs for rendering inventing the need for browser specific hacks to get a page to render the same. Yes, I&#8217;m sure every web designer in the world loathes this browser but with Microsoft&#8217;s monopoly it is unfortunately not going to disappear overnight. Shame really.</p>
<p>At the end of the day I use Firefox the most on Windows (gaming PC, others PC if possible), Mac (main desktop) and Linux (work desktop). When I was using Windows for my work machine I had IE, Safari, Firefox and Chrome. Most of my browsing lived in Firefox but I used Chrome for my GMail accounts to keep them in their own little play pen away from where I was working. My gaming machine has a similar set up but since I usually only search to work out why games aren&#8217;t working (you&#8217;d be surprised by how much old games stop working when you change their preferred DirectX version), that usually just means Firefox. My Mac at the moment is a battle ground between Firefox and Safari. Safari at one stage in the last week was the only browser I had open after I got annoyed with Firefox eating CPU and memory. Safari is a might lighter browser and I do enjoy it over Firefox at times. It has features like the ability to save all of the tabs in a window into a bookmark folder and then to open bookmark folders as new tabs. It allows me to save a window full of &#8216;research&#8217; easily and close that browser window off until I need to work on it again and then immediately everything is back. Until Firefox 3.5, Safari also had a &#8220;reopen  last closed window&#8221; option which was unique and similar to the &#8220;reopen last closed tab&#8221; that has been around in Firefox for a while. Safari doesn&#8217;t have the last closed tab yet (annoyingly) however Firefox 3.5 nicely introduces the window option along side the tab option (I&#8217;ve already used it once since I switched to the beta). Firefox 3.5 also adds the ability to drag tabs out of a window into another window or their own fully fledged window, something that Safari has had for a while and that Google implemented within Chrome. It isn&#8217;t as smooth or slick as the WebKit browser&#8217;s implementation but it is a start and is useful for those times when you want to break a window out into its own, or join it to another window, but since it has a form in it that you&#8217;ve entered details in or something that you can&#8217;t easily get to (YouTube video, shopping cart submission, etc) with a direct link. Safari&#8217;s version is very smooth and neat whilst Firefox still has a lot of rough edges to sort out but it is a start that it is at least there. The Safari 4 beta had some interesting features that they took out, the fact that the tab bar was merged into the window title was one I liked personally as it gave me even more screen real estate for my web pages, so I&#8217;m sad to see it gone in the final. Firefox has the nicer developer tools and I feel at home with Firebug however Safari also has some quite capable tools available. The latest release of Firebug annoys me that they make it more complicated to enable a panel, instead of landing on a panel and having the option to enable it, it tells you to click on a few places to enable it. Frustrating that I can&#8217;t click a big button that just says &#8220;make it so&#8221; to enable it but that is life &#8211; since I have the old Firebug at work I still prefer it over the newer one my home FF3.5 instance has. Opera has a small place on my Mac and is really an incidental browser and comes fourth to Shiira, a WebKit powered browser. Shiira has some interesting concepts such as the ability to put a page into a sidebar (with tabs) that you can then use to power the main page. It turns out especially useful for those long link list pages where you click on them to go down into a content page but they provide no easy option to navigating to the related links unless you hit the back button. Shiira also has some other interesting UI changes which makes it my third place browser on the Mac (especially when I am navigating a complex web page with a link structure as noted before).</p>
<p>All in all it is interesting to sit down and look around to see what the world still looks like with HTML5 around the corner it will be interesting to see how the browsers adapt to the future.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/06/20/browser-story/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Prepaid Mobile Phones in Australia</title>
		<link>http://pasamio.com/2009/06/18/prepaid-mobile-phones-in-australia/</link>
		<comments>http://pasamio.com/2009/06/18/prepaid-mobile-phones-in-australia/#comments</comments>
		<pubDate>Thu, 18 Jun 2009 12:57:28 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[australia]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=526</guid>
		<description><![CDATA[It strikes me as annoying that some how prepaid phone users get treated as second class citizens. They historically don&#8217;t have access to half of the features that are offered to those on plans just because you own your phone outright. In addition Australia has locking of phone devices to networks as well and then [...]]]></description>
			<content:encoded><![CDATA[<p>It strikes me as annoying that some how prepaid phone users get treated as second class citizens. They historically don&#8217;t have access to half of the features that are offered to those on plans just because you own your phone outright. In addition Australia has locking of phone devices to networks as well and then have the hide to charge you $30 whilst someone presses a few buttons for a minute and hands you your phone back. This situation has thankfully steadily improved over the years and with the introduction of Vodafone in Australia it seems things are slowly getting better but not quite there.<span id="more-526"></span></p>
<p>As a phone user I&#8217;d started as a Telstra &#8220;communic8&#8243; user for my first phone. This worked out well as at the time Telstra had this &#8216;feature&#8217; where you could link it to another phone that was on a plan (my dad&#8217;s) and it could give you a nominated amount of money a month ($10) and one months &#8216;access&#8217; for this token amount. On top of this you were permitted something like three calls per day for around 3 minutes to that same number for free. Rather handy that you didn&#8217;t need credit to call home. Other useful things Telstra had (and might still have) is that your access to the network and credit expiry accrued each time you recharged up to about two years. I know this because I managed to get just that amount of access accrued on my Telstra phone before I switched.</p>
<p>All in all I was happy with Telstra as they have arguably the best coverage in Australia for mobile phones. They aren&#8217;t the cheapest mind you but all in all I was happy since most of the premium crap that required a plan didn&#8217;t interest me and my phone really didn&#8217;t support those features (an ancient Motorolla, a Nokia &#8216;potato phone&#8217; 3315 and a Nokia 6310i that I think my nan has). It turns out with Joomla! I end up overseas periodically and the first time this happened (a trip to Thailand in 2005), it really hurt not having any phone connectivity.</p>
<p>So at this point I went to Telstra and asked them what their international roaming options where for prepaid. The answer was simple: upgrade to a plan. I happen to like being prepaid and interestingly for the fact that I&#8217;ve already given them the money (e.g. they&#8217;re already earning interest on it before I&#8217;ve used it in addition to being more expensive) I still don&#8217;t get service. I&#8217;m personally not the sort of person who likes borrowing money if I can avoid it, so that means anything credit related (e.g. credit card, mobile phone) gets avoided where possible. This turns out remarkably easy, prepaid telephone only gives you what you pay for and a VISA debit card gives you access to your own money. Interestingly, and perhaps this is why providers hate prepaid, it is possible to continue to &#8216;rollover&#8217; your credit from period to period by renewing even if it is the smallest amount. This means that you never lose what you pay for where as regular plans are a pay for it if you use it and pay more if you use too much (Optus was half decent where they had a &#8216;rollover&#8217; for a few months scheme, not sure if it still runs but it exemplifies the fact you by design pay for what you aren&#8217;t going to use as opposed to prepaid which is pay for what you use).</p>
<p>So I decided at that point to stop being a happy Telstra customer and switch. Vodafone offered on of the best deals with their cap plan (this is about a month before their major advertising promotion on it) and to be honest it was really attractive &#8211; however the cap plans didn&#8217;t have international roaming. So they had some nice phones and all was good cost wise for prepaid (which did have international roaming) however Vodafone&#8217;s coverage for Toowoomba is below substandard. Given that my mum lives a good 20 minutes drive out of town that would mean I probably wouldn&#8217;t get coverage there. Here is where Optus come in with second rate costing but a far more advanced phone network. Optus also offered international roaming on their prepaid and the rates were a bit more (roaming always is a rip off) however you have a cost to pay for these things. They offered good coverage over places I&#8217;m likely to go to so that was good. Optus being owned by Singtel also meant that Singapore was incredibly cheap, Asia was relatively cheap and everywhere else was expensive (relative to international roaming costs). It actually reminds me of when I came back from Malaysia that it was cheaper to roam on my prepaid Malaysian SIM card than to go back to Telstra (yes, it was cheaper for me to SMS from a phone roaming from Malaysia to Australian networks than it was for me on Australian to even the same carrier) &#8211; and this is back in 2004.</p>
<p>So I&#8217;ve been on Optus and travelled around the world roaming quite happily. It costs an arm and a leg however I&#8217;m happy with that and expect it. I thought about my last trip overseas which costed a fair amount of money, much more than I normally spend in a month (and this is over a week) and wonder where the wisdom in not giving me the ability to spend money is. I mean really, when I want to spend money with you make it easy! A while after I switched to Optus I got a new Nokia N80 (noticing a trend here) and I&#8217;ve had that for a while now and I&#8217;m quite happy with it, however as a slide phone the design annoys me no end. Last year I ended up getting an iPhone as well and instead of converting my existing phone across I decided to put it on its own SIM card and run it through the TurboCap. This means I have two phones to feed, one that rotates on a two month basis (the Nokia) and another that requires a refresh every month. Compared to being able to let my credit lay around for nearly two years unmolested by the carrier (amazingly Telstra is on top for once) having to renew every month or lose it sounds strikingly like a plan where you decide how much you pay each month instead of being fixed into a specific dollar amount by the carrier. But I digress yet again and now with iPhone OS 3.0 tethering for the iPhone (that I already had with my N80) is now available. Of course I need to get Optus to enable it on my account, but again we&#8217;re back to being provided with a service and well I&#8217;m on prepaid. Some how Optus manage to limit tethering to just plan providers and you have to pay a further $10 for the privilege of using your own data in a different way. So being on a prepaid phone I don&#8217;t have access to the service.</p>
<p>As this is my second phone I&#8217;m half tempted to switch to another carrier because I have that freedom. I keep my Nokia because a) I don&#8217;t care about it as much now (I originally bought it in Singapore in a rather rapid one hour transit &#8211; one end of the airport to the other with this shop in between and some local cash acquisition; got every where I needed to go) and b) since a I can happily take it overseas, leave my iPhone at home and not worry about losing it (which would hurt more losing my Nokia; if I lost my Nokia I&#8217;d be tempted to get an Android phone &#8211; or maybe a Palm Pre to replace my existing Zire 31 that still lives on for the last 5 years now).</p>
<p>It would just be nice to be treated like a real customer. One of my other prepaid gripes is that they don&#8217;t have bills that you can easily review to see how much it really costs you but such is life.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/06/18/prepaid-mobile-phones-in-australia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Today: 29-May-2009: An interesting day</title>
		<link>http://pasamio.com/2009/05/29/today-29-may-2009-an-interesting-day/</link>
		<comments>http://pasamio.com/2009/05/29/today-29-may-2009-an-interesting-day/#comments</comments>
		<pubDate>Fri, 29 May 2009 12:58:06 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=519</guid>
		<description><![CDATA[Today was an interesting day. The usual Friday things happened: I came in, read my email and responded to those that required it, we had our 15 minute daily team meeting and I had my half an hour (or so) meeting with my master&#8217;s supervisor about metadata filesystems. Of course the usual occurs with work [...]]]></description>
			<content:encoded><![CDATA[<p>Today was an interesting day. The usual Friday things happened: I came in, read my email and responded to those that required it, we had our 15 minute daily team meeting and I had my half an hour (or so) meeting with my master&#8217;s supervisor about metadata filesystems. Of course the usual occurs with work progressing. Today&#8217;s work is UniHIRTS again and I think I&#8217;m at the point where I&#8217;m happy enough with it. I&#8217;ve gone through and wiped out a few of the simpler tasks that I could handle with a few remaining tickets that are nice to haves. I&#8217;ve done a bit of a reskin and unfortunately it doesn&#8217;t all look good in IE but it still looks tolerable.</p>
<p>But most interesting today I heard word from my old Council friends that they&#8217;ve finally gotten to ditching Novell. Whilst I was there a project called &#8220;Get Rid of Novell&#8221; and &#8220;Get Rid of Legacy&#8221; which seems to have been given a heightened priority since Novell decided to double the licensing cost of their software. Council now has 90 days in which to remove all Novell software. This should be interesting as they have a lot of Novell supplied software: SLES, SLED, the Netware servers, eDirectory and its client, Novell&#8217;s IDM product, iPrint and  Zenworks. One of the things that kept Novell software around was the fact that it was half the price of the Microsoft equivalent, however with this it appears that this isn&#8217;t going to be the case so one of the reasons for retaining Novell, cost, is gone. And whilst it is a great solution for a lot of problems, the software that is slowly being deployed within the organisation is increasingly dependent on Microsoft&#8217;s software: running on Windows, integrating with Active Directory and providing management tools that integrate into Microsoft&#8217;s management console tools. Should Novell had let them be at the original price for another year, they&#8217;d have the money instead of doubling the price and well ending up with nothing. But life moves on.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/05/29/today-29-may-2009-an-interesting-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
