<?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 &#187; joomla</title>
	<atom:link href="http://pasamio.com/category/joomla/feed/" rel="self" type="application/rss+xml" />
	<link>http://pasamio.com</link>
	<description>Sam Moffatt's Tech Blog: Writings on Technology</description>
	<lastBuildDate>Tue, 20 Jul 2010 14:25:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Thinking about things differently</title>
		<link>http://pasamio.com/2010/07/15/thinking-about-things-differently/</link>
		<comments>http://pasamio.com/2010/07/15/thinking-about-things-differently/#comments</comments>
		<pubDate>Thu, 15 Jul 2010 12:20:01 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[internet]]></category>
		<category><![CDATA[joomla]]></category>
		<category><![CDATA[technology]]></category>

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

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

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

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

		<guid isPermaLink="false">http://pasamio.com/?p=500</guid>
		<description><![CDATA[I missed a loop when adding my increment code which lead to some weird results for large data sets. This update fixes that loop to remove that weird issue. As always the latest updates are available at http://joomlacode.org/gf/project/pasamioprojects/frs/]]></description>
			<content:encoded><![CDATA[<p>I missed a loop when adding my increment code which lead to some weird results for large data sets. This update fixes that loop to remove that weird issue. As always the latest updates are available at http://joomlacode.org/gf/project/pasamioprojects/frs/</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/05/06/migrator-14-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Migrator 1.3 released</title>
		<link>http://pasamio.com/2009/05/04/migrator-13-released/</link>
		<comments>http://pasamio.com/2009/05/04/migrator-13-released/#comments</comments>
		<pubDate>Mon, 04 May 2009 06:30:01 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=491</guid>
		<description><![CDATA[After a couple of months I&#8217;ve released another update to the Migrator tool. This is a minor update to support the ability to reconfigure the increments that are used to handle transformations &#8211; this should help users with larger data sets when exporting as they can configure up a larger number. As always the latest [...]]]></description>
			<content:encoded><![CDATA[<p>After a couple of months I&#8217;ve released another update to the Migrator tool. This is a minor update to support the ability to reconfigure the increments that are used to handle transformations &#8211; this should help users with larger data sets when exporting as they can configure up a larger number. As always the latest version is available at the FRS site: http://joomlacode.org/gf/project/pasamioprojects/frs/</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/05/04/migrator-13-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Summer of Code Mentor Observations for 2009 &#8211; Part 3</title>
		<link>http://pasamio.com/2009/04/07/summer-of-code-mentor-observations-for-2009-part-3/</link>
		<comments>http://pasamio.com/2009/04/07/summer-of-code-mentor-observations-for-2009-part-3/#comments</comments>
		<pubDate>Tue, 07 Apr 2009 12:17:45 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>
		<category><![CDATA[soc]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=431</guid>
		<description><![CDATA[More observations from the front line as I finish up my first pass: Use formatting sparingly! Don&#8217;t make your entire proposal bold, it doesn&#8217;t help. Excessive font sizes for headings doesn&#8217;t help and all sorts of weird fonts through out also don&#8217;t help. Additionally some proposals seemed to have a fixed width set for them [...]]]></description>
			<content:encoded><![CDATA[<p>More observations from the front line as I finish up my first pass:</p>
<ol>
<li>Use formatting sparingly!<br />
Don&#8217;t make your entire proposal bold, it doesn&#8217;t help. Excessive font sizes for headings doesn&#8217;t help and all sorts of weird fonts through out also don&#8217;t help. Additionally some proposals seemed to have a fixed width set for them which whilst not being their major malfunction (they were junk proposals in reality) it would have detracted from a better proposal. Also using excessive tables doesn&#8217;t help as well. Excessive capitals is also just as bad as using too much bold text.<br />
The converse is true. If your proposal looks like a big chunk of text then this is a serious lack of formatting and should be resolved. Basic use of a paragraph (general rule: at least 3 sentences in a paragraph!) will help and for something like SoC you need at least three paragraphs: who you are, what you&#8217;re going to do and convincing me you can do this. The first and last can usually get away just one paragraph though the middle could easily fill out to be an A4 page or more of content (think around three, plus you&#8217;ve got to have a timeline in there somewhere).</li>
<li>It is Summer of Code<br />
This means you need to at some point write serious amounts of code. And I mean &#8220;serious&#8221;. Language packages don&#8217;t cut it and nor does sample content. Neither have code in them and neither are relevant to the program as a whole.</li>
</ol>
<p>I&#8217;m starting to reduce my nag points which I think means I&#8217;m almost happy with things. I&#8217;ve read every proposal at this point and thrown out a whole heap more. Time to work through ranking the remainder slowly.</p>
<p>Edit: Updated to add more to the formatting heading. Not always is less more even though quite often more formatting is less.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/04/07/summer-of-code-mentor-observations-for-2009-part-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Summer of Code Mentor Observations for 2009 &#8211; Part 2</title>
		<link>http://pasamio.com/2009/04/07/summer-of-code-mentor-observations-for-2009-part-2/</link>
		<comments>http://pasamio.com/2009/04/07/summer-of-code-mentor-observations-for-2009-part-2/#comments</comments>
		<pubDate>Mon, 06 Apr 2009 14:51:22 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>
		<category><![CDATA[soc]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=425</guid>
		<description><![CDATA[Some more observations as I&#8217;m going: If you have to put your CV in, put it at the bottom. I saw one proposal I didn&#8217;t mind and was structured nicely. They broke rule 2 and 3 from Part 1 (CV elsewhere and majority proposal) however they made up in some other areas. However as annoying [...]]]></description>
			<content:encoded><![CDATA[<p>Some more observations as I&#8217;m going:</p>
<ol>
<li>If you have to put your CV in, put it at the bottom.<br />
I saw one proposal I didn&#8217;t mind and was structured nicely. They broke rule 2 and 3 from Part 1 (CV elsewhere and majority proposal) however they made up in some other areas. However as annoying as their CV being there was, it was done in a way where I mostly glazed over it because it was formatted well that I was happy I could ignore that section.</li>
<li>Work towards defining a timeline you expect stuff to be done in.<br />
If you haven&#8217;t got a timeline (or haven&#8217;t worked out from rules 6 and 7 in Part 1 that you need a timeline) then you need one now. Timelines are great for adding a bit of extra bulk to your application and you can then link it in with the ideas you&#8217;re talking about to provide a framework in which we can evaluate what you&#8217;re doing, when you&#8217;re going to do it and later evaluate if you&#8217;re on track or not. Without this then we&#8217;re not in a position to work out if you&#8217;re not going to finish something on time or keep you on track and we have to work it out again and that usually doesn&#8217;t go well. So we avoid that.</li>
<li>Be Different in being the same.<br />
So you&#8217;ve picked an idea from the ideas page and that itself isn&#8217;t such a bad thing to do. But personalise it and make it your own. Find something unique in the proposal that isn&#8217;t on the ideas page and you think might not be picked up by others. When I&#8217;m sitting reading through similar proposals having something unique helps me differentiate you from a pack of proposal that look very similar. It may be something really small but it will stand out.</li>
<li>When given the option to write, write.<br />
I&#8217;ve seen a few proposals where they are too short and wonder why they have so much space left. Use it. Write something useful and detailed about your proposal. You&#8217;ve got space for a reason. Don&#8217;t pad it out with something useless and irrelevant to your project (e.g. how many awards you&#8217;ve had, a copy of your academic transcript, a full listing of all of your previous positions) but make sure its something useful like maybe a thought out database schema, a minor class diagram or an interaction diagram of some variety. Basically put some thought into it if you think you&#8217;re horribly short. Mind you if you&#8217;re a brilliant writer some of this might apply but if you can throw in some extra detail demonstrate your skills that way not by how many positions you&#8217;ve had.</li>
</ol>
<p>I&#8217;ve passed the 100 mark so now I&#8217;m into the final stretch of evaluating everything so it will be interesting to see how I go.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/04/07/summer-of-code-mentor-observations-for-2009-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Summer of Code Mentor Observations for 2009 &#8211; Part 1</title>
		<link>http://pasamio.com/2009/04/06/summer-of-code-mentor-observations-for-2009-part-1/</link>
		<comments>http://pasamio.com/2009/04/06/summer-of-code-mentor-observations-for-2009-part-1/#comments</comments>
		<pubDate>Mon, 06 Apr 2009 07:55:16 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>
		<category><![CDATA[soc]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=419</guid>
		<description><![CDATA[A few observations I have from applications so far this year (I&#8217;ve done around 40 so far): Don&#8217;t copy and paste This includes two things: don&#8217;t copy from the ideas page because it just looks bad (plus it makes it look like you&#8217;re padding your content out) and don&#8217;t copy from your other proposals. I&#8217;ve [...]]]></description>
			<content:encoded><![CDATA[<p>A few observations I have from applications so far this year (I&#8217;ve done around 40 so far):</p>
<ol>
<li>Don&#8217;t copy and paste<br />
This includes two things: don&#8217;t copy from the ideas page because it just looks bad (plus it makes it look like you&#8217;re padding your content out) and don&#8217;t copy from your other proposals. I&#8217;ve seen a few where I&#8217;ve seen things copied and pasted between proposals and it just cheapens the proposals. Not the boring &#8220;who am I&#8221; crap but stuff like time lines and other stuff that could easily be unique.</li>
<li>The boring crap about you as a person can live else where.<br />
I don&#8217;t personally bother with referees or so much what you&#8217;ve done because at the end of the day if I think your proposal sucks then I&#8217;m not going to bother. Once I&#8217;ve gone through and found a proposal I like I&#8217;ll grill at that point, or even ones I don&#8217;t like but have a passing interest in.</li>
<li>Your proposal in your words should be the majority<br />
I&#8217;ve also seen a few proposals where the actually interesting bit of what you think you&#8217;re going to do is maybe a third of the proposal (or even half) with the rest of the space taken up with things that aren&#8217;t relevant like references and their CV. See point 3, this is stuff you can reference.</li>
<li>Don&#8217;t use Word<br />
The worst thing about this is that the rich text editor seems to not properly handle the Word crap, which is unfortunate. I&#8217;ve had proposals where the &#8216;font definitions&#8217; from Microsoft Office (you can easily identify them by their &#8216;mso-&#8217; prefix for things) spams up the page and in one case was longer than the proposal. Please don&#8217;t use Word, use Notepad or some other text editor. Hopefully something with a spell checker or at least if you have to write it in Word copy it through Notepad and reapply your formatting.</li>
<li>Put emotion into your proposal and demonstrate understanding of the problem<br />
There were a number of proposals that seemed to miss the point of the idea and more that seemed to not understand the root problem the idea was trying to address. Try to understand the problem and perhaps have some form of emotional attachment and look at the problem and provide depth. Show you&#8217;ve at least done a cursory study of the problem instead of saying you&#8217;ll start solving the problem in week 4 of your SoC.</li>
<li>Community Bonding is when you learn stuff<br />
There are tonnes of proposals where they spend a month before they start writing code instead working on research, planning and learning how the system goes together. There is over a month of time _before_ SoC starts but _after_ you&#8217;ve been accepted where you can spend the time learning the system, setting goals and preparing to get started from day one. You can even start coding during this period to give you a head start though I&#8217;d personally understand if you didn&#8217;t want to do that. Eating a month into coding time trying to work out what you&#8217;re going to do with the other period of time isn&#8217;t good enough. SoC is already time limited without you creating even more work for yourself.</li>
<li>Put the slack at the end not at the start<br />
The other issue with number six is that the slack is pushed at the start when you think you have time. So you plan there but why would you have a timeline in your proposal if not to plan? So far I&#8217;ve only seen one, perhaps two, projects that had their slack time at the end of the project not at the start of the project. Slack time is where you catch up on the deadlines you know you reached. You need it. You really do. Even if you don&#8217;t think you do, you will. And if you waste it in the first month by &#8216;planning&#8217; or &#8216;designing&#8217; what you&#8217;re going to do in the next two months then you&#8217;re already behind the person who had it in part planned at proposal time, solidified their plans in the month after they were accepted and started from day one writing code.</li>
<li>Be different<br />
A carry on from number 5 is being different. Propose something relevant (check with the mentors first) that isn&#8217;t on the list but you&#8217;re passionate about or interested in. Doing something unique will set you aside from masses who just went for the publicised ideas. Also try to keep your own idea to yourself to minimise your competition: SoC is still after all a competition so you want to maximise your changes. Doing something new and different is a breathe of fresh air. Already I have two categories so far with 9 proposals and 6 proposals respectively vying for attention. This doesn&#8217;t mean you just apply for one and you can&#8217;t apply for ones from the ideas page, but it does mean that you should try something that isn&#8217;t necessarily on the ideas page &#8211; something you can be passionate about.</li>
</ol>
<p>I&#8217;m sure I&#8217;ll have more to come but that is a good start for me so far.</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/04/06/summer-of-code-mentor-observations-for-2009-part-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Protecting against invalid data: The Joomla! 1.5.10 installer issue</title>
		<link>http://pasamio.com/2009/03/31/protecting-against-invalid-data-the-joomla-1510-installer-issue/</link>
		<comments>http://pasamio.com/2009/03/31/protecting-against-invalid-data-the-joomla-1510-installer-issue/#comments</comments>
		<pubDate>Tue, 31 Mar 2009 10:11:16 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[joomla]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=403</guid>
		<description><![CDATA[With the release of 1.5.10 we introduced an interesting side effect with an installer fix. This  side effect caused a whole heap of incorrectly written XML install files for components to fail to install. The reason for this is simple: a check added in the component installer that silently ignored errors in the XML file [...]]]></description>
			<content:encoded><![CDATA[<p>With the release of 1.5.10 we introduced an interesting side effect with an installer fix. This  side effect caused a whole heap of incorrectly written XML install files for components to fail to install. The reason for this is simple: a check added in the component installer that silently ignored errors in the XML file specification until the installer fix by passed that check in certain specific situation causing those broken XML file&#8217;s to break but for intended functionality to actually behave properly.</p>
<p><span id="more-403"></span>Joomla! has a custom install file that basically permits the component extension developer to specify code that should be run when the extension installs. There is also a similar item for when the extension is uninstalled as well which behaves in an identical manner to the install file, except it is only run when the extension is being uninstalled. During installation the installer copies the file denoted by the installfile and uninstallfile from the root of the package to the administrator folder. This feature has been around for a while and interestingly when I flicked through a copy of Mambo 4.5.1, I found the following comment:</p>
<pre>// check if parse files has already copied the install.component.php file (error in 3rd party xml's!)</pre>
<p>After all of these years the comment has evolved into its present incarnation:</p>
<pre>// Make sure it hasn't already been copied (this would be an error in the xml install file)</pre>
<p>As you can see the comment hasn&#8217;t changed much in its intent. This comment was placed above the code that is used to copy the install file across, which checks to see if the file exists which brings us to <a href="http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&amp;tracker_item_id=15217">JoomlaCode&#8217;s bug number 15217</a>.</p>
<p>Bug 15217 is that &#8220;custom &lt;installfile&gt; isn&#8217;t upgraded on component installation&#8221;. Basically the same check that the above mentioned comment warns about prevents a new 1.5 feature, &#8216;method=&#8221;upgrade&#8221;&#8216;, from upgrading the installfile. For good or ill the bug was submitted on the 24th of February 2009 and by the 2nd of March 2009 it was in the Joomla! 1.5 release branch. This means that by the 3rd of March it would have made it to the Joomla!&#8217;s Nightly Build. At this point, third party developers could have themselves installed and tested the build to see if it caused an issue but unfortunately we ended up finding out after we released that people hadn&#8217;t used installfile as documented (either by us or by my favourite Joomla! 1.5 development book by James Kennard) and had used their own work around for bug 15217 instead of filing a bug report and getting it fixed. I was told in a bug report related to the new issue 1.5.10 introduced that I shouldn&#8217;t blame a third party developer for not reporting the bug and developing their own workaround. I wonder if our third party developers aren&#8217;t writing bug reports, who we should hope to get bug reports from for code related issues? It would have been nice to have had the issue reported early on instead of so late in the piece but I thank the reported of the issue for bringing it to the fore.</p>
<p>Interestingly I think this bug has been exarcerbated by an interesting combination of situation. The installfile tag is very old where as the upgrade functionality is new for Joomla! 1.5 and permits overwriting extensions that have been installed. So when the original check was written over three major versions previous it couldn&#8217;t have been imagined that there would be an upgrade attribute added. We combine this with another feature also added to 1.5: SQL install statements live in their own file and specifying them in the manifest file only sets them to be used, doesn&#8217;t copy them like the installfile/uninstallfile tags do. Interestingly this was added using the administrator folder and the &#8220;files&#8221; tag that normally copies files across with either one per file and a full pathname with folders set or the &#8220;folder&#8221; tag (and attribute for the files tag) that had been added somewhere along the line (folder tag was I think added in 1.5 and the the folder attribute for files was added in Joomla! 1.0 or earlier; these also seems to be a contributing factor for this issue as well causing confusion in functionality). This appears to have perhaps caused some confusion about how the feature works with the install file using one older method and the newer SQL file using newer features. Add to this the new language feature that has the &#8220;folder&#8221; attribute as well and can handle folders accordingly permitting developers to put language files within a subfolder relevant to the client. This tag does copy the files to the relevant location and also copies the files from the root of the extension like the installfile/unintallfile tags however in permitting the &#8216;folder&#8217; attribute this tag avoids some of the issues by permitting the files to be located in different folders. Further more these files aren&#8217;t contained within the application&#8217;s directory but are in fact shipped off to a different part of the filesystem. This means that confusion about what the tag does and how the files get there are quite clear as there is only one way, unlike the installfile which could errorneously be copied by the files tag in the administrator or correctly by the tag&#8217;s processing itself.</p>
<p>At the end of the day it was a silent check that should have raised more noise for developers so they could be alerted of it when they failed to follow documentation. It would have also been nice that any of the developers who had found the bug where the installfile didn&#8217;t update had actually reported it instead of just doing a workaround and then getting upset when the bug is fixed and their work around breaks. It would have also been nice to have them also regularly testing the release tree to see what is coming up instead of waiting until a release came along to surprise them (they could even join bug squad and help out there as well). Many eyes make issues shallow unless they don&#8217;t get reported or don&#8217;t get tested. Soon there will be a Joomla! 1.5.11 that will put in checks against incorrect install file definitions and in 1.6 we&#8217;ll be deprecating those two tags in favour of a newer &#8220;scriptfile&#8221; tag that will behave like the SQL one does and not try to copy files (it also uses classes with functions instead of fixed &#8220;com_install&#8221; and &#8220;com_uninstall&#8221; functions that clash when more than one are defined).</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/03/31/protecting-against-invalid-data-the-joomla-1510-installer-issue/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Joomla! 1.5.10 and updating your Joomla! instance</title>
		<link>http://pasamio.com/2009/03/30/joomla-1510-and-updating-your-joomla-instance/</link>
		<comments>http://pasamio.com/2009/03/30/joomla-1510-and-updating-your-joomla-instance/#comments</comments>
		<pubDate>Sun, 29 Mar 2009 14:06:28 +0000</pubDate>
		<dc:creator>pasamio</dc:creator>
				<category><![CDATA[joomla]]></category>

		<guid isPermaLink="false">http://pasamio.com/?p=390</guid>
		<description><![CDATA[Being a Joomla! person, I keep up with the updates for Joomla! and I even have my own tool for doing this. The Update Manager I wrote for Joomla! 1.0 (and the version I wrote for 1.0 still works though we haven&#8217;t had any upgrades!) was upgraded to support 1.5 and is now a part [...]]]></description>
			<content:encoded><![CDATA[<p>Being a Joomla! person, I keep up with the updates for Joomla! and I even have my own tool for doing this. The Update Manager I wrote for Joomla! 1.0 (and the version I wrote for 1.0 still works though we haven&#8217;t had any upgrades!) was upgraded to support 1.5 and is now a part of my <a href="http://sammoffatt.com.au/os/index.php/joomla-15-products/10-advanced-tools">Advanced Tools package</a>.</p>
<p><span id="more-390"></span>The first step is to install the Advanced Tools package. Advanced Tools, as its name suggests, is a bit more advanced than your average extension and it installs files into a few different places. For the purposes of this post we don&#8217;t care about these extra features however it might be useful to use them later on.</p>
<p>The location in question is the installer adapter directory. This is located in /libraries/joomla/installer/adapters and stores the adapters that Joomla! uses to install new packages. This hooks directly into the universal installer so when you install a new package the right type is selected. The Advanced Tools package has adapters for the Table Editor (you can install new tables using this), the package manager (used to install half of the advanced tools) and the library manager (used for stuff like my JAuthTools libraries). This part is pretty simple, just make sure that your Apache user can write to the /libraries/joomla/installer/adapters folder in your site (it should be the same permissions as your components, modules, plugins or template directory) and you should be fine to install it.</p>
<p>Advanced Tools is available on my <a href="http://joomlacode.org/gf/project/pasamioprojects/frs/">Pasamio Project&#8217;s FRS site</a>. The latest version is always available there and at the time of writing the latest version was available was 1.5, and you can grab it here: http://joomlacode.org/gf/download/frsrelease/6797/22390/com_advancedtools.tgz &#8211; keep in mind with 1.5 you can directly install from URL&#8217;s in the install manager.</p>
<p><img class="alignnone size-full wp-image-391" title="picture-3" src="http://pasamio.com/wp-content/uploads/2009/03/picture-3.png" alt="picture-3" width="572" height="284" /></p>
<p>Once you&#8217;ve got Advanced Tools installed, you should have a new &#8220;Advanced&#8221; menu item at the end of the top menu bar (look for it after help). This menu has a few useful tools in it, such as the Package Manager, Library Manager and Table Editor &#8211; in addition to the Update Manager:</p>
<p><img class="alignnone size-full wp-image-392" title="Advanced Menu" src="http://pasamio.com/wp-content/uploads/2009/03/picture-4.png" alt="Advanced Menu" width="127" height="142" /></p>
<p>So if we select the update manager we get taken to the update manager first screen:</p>
<p><img class="alignnone size-full wp-image-393" title="Update Manager first screen" src="http://pasamio.com/wp-content/uploads/2009/03/picture-5.png" alt="Update Manager first screen" width="554" height="225" /></p>
<p>So there are some quick notes about what its going to do, these a mostly self explanatory, so we&#8217;ll click the download the update file to get a list of available updates:</p>
<p><img class="alignnone size-medium wp-image-394" title="Update Manager - Step 1" src="http://pasamio.com/wp-content/uploads/2009/03/picture-6-300x77.png" alt="Update Manager - Step 1" width="300" height="77" /></p>
<p>Ok, so its found two updates. One is a full package and another is the patch package. Most of the time the patch package is the best bet, and very rarely (if ever) should you grab the full package. So lets download the package package by selecting it.</p>
<p><img class="alignnone size-medium wp-image-395" title="Step Two of Update Manager" src="http://pasamio.com/wp-content/uploads/2009/03/picture-7-300x48.png" alt="Step Two of Update Manager" width="300" height="48" /></p>
<p>So its told us that we&#8217;ve grabbed the package from JoomlaCode and asks us if we&#8217;d like to install. We can also copy the link provided to see where it goes as well. So all we need to do is continue.</p>
<p><img class="alignnone size-medium wp-image-396" title="Update Manager Step 3" src="http://pasamio.com/wp-content/uploads/2009/03/picture-8-300x98.png" alt="Update Manager Step 3" width="300" height="98" /></p>
<p>And there we go, we&#8217;re all finished. At this point it&#8217;ll still say your current version in the top right, however when you navigate to another page you should see this updated appropriately!</p>
]]></content:encoded>
			<wfw:commentRss>http://pasamio.com/2009/03/30/joomla-1510-and-updating-your-joomla-instance/feed/</wfw:commentRss>
		<slash:comments>44</slash:comments>
		</item>
	</channel>
</rss>
