Mar 16

Better use of categories and tags

Category: thoughts

I was recently looking through some blogs and noticed their use of categories against tags. It got me thinking about how I sort this blog. On this blog I have a whole heap of categories that I probably treat much like tags. Only a few actually have a significant amount of posts beside them and I’m considering slowly migrating them to be tags instead of categories. WordPress is good in the fact that it offers both loose categories that you can put something into and tags as well. Tags seem to be even looser than categories but they seem to be roughly equal. Categories have the advantage that they can be nested however tags can’t but all in all I don’t use hierarchical categories so realistically category == tag. All in all, perhaps starting after this post, I’ll work on adding more tags to items and paring back my categories (I actually added a new category to put this post into!).

Let the experiment begin!

No comments

Mar 15

Today: 15-Mar-2010: More Meeting-o-rama

Category: today

My entire day seemed to revolve around meetings. Started off at 9am with the team meeting and being informed that I’m being put onto yet another task as well which takes priority over everything else. The unfortunate thing about politics higher than you is the fact that you get pulled all over the place. Such is life unfortunately. New work, new tasks and new integration targets.

The next meeting was a pseudo meeting for myself where I filled in a few more HEAT requests for the day. I had three, including one requesting to install HEAT at the suggestion of Luke Drury. I’m told it is only used in ICT related business. Such is life, I guess Service Desk really enjoy rerouting all of my HEAT jobs.

Following this was a meeting with one of the Faculty Librarians about Access All Databases (AAD) and looking at options. AAD is an application that has been picked up from elsewhere and repurposed by the Library and it shows. It is in dire need of a rewrite and it scares me how badly the entire item is structured. We’ve got some changes and we’ll have a demo at the relevant meeting later in the week. Lucky us! More work likely but no time to clean it up properly.

Next on the list was the ePrints meeting, the last for the quarter. We did alright this quarter and most things were completed acceptably. There are some outstanding items and a few things left but all in all it wasn’t too bad. Was a relatively quick meeting which also makes me happy as well and I got to lunch at a reasonable hour instead of being horribly late.

After lunch I ended up doing some quick support and investigation as to why something wasn’t displaying properly in our library catalogue. Looks like a data error but you can never be cetain about these things. We’ve changed the data but it will take a while for everything to flow through due to the design of the system.

From here the next meeting was to work with ePrints with an ICT staff member to implement a feature that I had previously built into ePrints. Whilst I was working on the Author ID project within ePrints one of the needs was to reference a data set that was stored and managed outside of ePrints, namely the department tree. To do this I created a new field type called the “ExternalItemRef” which extended from the built in “ItemRef” field type. ItemRef links ePrint datasets together and allows you to do references which is cool, ExternalItemRef does the same thing but instead of using an ePrints defined data set, it works with any particular table that is available to the system within the same database as ePrints. You define the name of the table, the key for the table (a unique integer value) and then a text value for it that is then displayed. This gets processed by the field and neatly integrated into ePrints. Further to this I have a widget that permits the user to have a popup dialogue displayed to enable searching of item results. The popup dialogue was itself new functionality that I added to the system to enable searching on the various tables easily. Because it is a popup it can present information in my mind a lot easier than a simple AJAX drop down list. The thing that took the longest was in fact loading the data from an Excel spreadsheet into the MySQL database but after a bit of work it was easy enough to do and we’ve got instructions for next time. The trick appeared to be not using Excel but OpenOffice.org – free software to the rescue. Also regular expressions are amazing at data transformation. I need to do some more practice at loading data into MySQL and work out more effecient ways of doing it but I feel I’ve got it figured out enough for this situation.

The afternoon was spent reviewing the various systems that are available internally, looking at their issues and working my way through my horrific inbox. So many little things that need doing, cleaning up and fixing. One day at a time!

No comments

Mar 14

Online Booking Fee Applies

Category: today

At the prompting of Dom Knight (of Chaser fame) I was looking over my cinema’s booking system. Recently rebranded from Birch Carol and Coyle (itself a merger from long ago) to form ‘Event Cinemas’. They’ve done a technology overhaul and remade their website to be very good looking (with some Flash but not overdone, I’d describe the site as flash but Adobe have taken that word from the web site descriptive vernacular). They have a nifty iPhone application that appears to work well though as Dom notes perhaps not as good as it should. They have a mobile application which also doesn’t appear to work well. But this isn’t what bothers me, what bothers me most is the little note they had: Booking Fee applies online. Of course it doesn’t note that this is per ticket. So if you book five people online in one transaction you have to pay an additional on top of the purchase price. It costs you more to book online per person than it does to show up in person. Let us dwell on that. I could potentially understand a flat fee here to cover some sort of consistent expense but a per person fee seems a bit much. Especially at a dollar. Perhaps this is to make up for the cheaper tickets you get there, a sort of recovery mechanism. Not sure.

Whilst I was typing this up I ‘timed out’ a few times. This wasn’t in a screen far in, it was the first screen after selecting the session time. At this point the only persistent information that could possibly time out is the movie, date and time. All values I feel should easily be persisting at this point. There should be no issues with those values timing out. The trick is that the timer is for the entire booking session. You have 8 minutes to pick how many tickets you need, what extras you want and your payment method. I also managed to trigger a runtime error as well within the application, a well written application indeed.

The booking process, when it isn’t crashing, asks for a member number as well. It says that is has already filled it in for me but then works out that it really isn’t the right number. So I proceed without it which is unfortunate. But that is the story here.

The process for all of this acquires an email address, credit card number of other identifying item. And that is the key. That is the value in this transaction that they should be encouraging.

The process doesn’t necessarily make it easier for their front counter staff beyond having everything in the system and being able to go through slightly quicker with the order pre-done. It is about building a database of information. Not only can you register people with CineBuzz to get them to provide details and link it in but even if they don’t do that signing in online with credit cards will allow you to handle and work out all of this information into your databases directly. You don’t need to recover it from point of sale systems located all the way around the country, you can have it deposited directly into your system and providing you information. In some cases where you get the booking days before you end up making interest off the money you just took. And you haven’t even had to provide the service!

Sitting through a business intelligence course, I know the value of having information available to you. Encouraging online booking can integrate into so much more. All of the different systems, availability of historical and trending data that is available. Even mild predictive values systems based on online sales and ability to prepare systems. The more information the better. It is worth more than the $1 per person that they seem to be charging for the pleasure of booking online.

No comments

Mar 12

Today: 12-Mar-2010: Slack Day

Category: today

Instead of going to work today, I used my flex up and took the day off. Was fun to not have to do anything on a Friday and I didn’t achieve much but did clear up some stuff. Always good to have a quasi long weekend. Didn’t work on as much of my thesis as I would have liked but still I’m better placed over the weekend.

No comments

Mar 11

Today: 11-Mar-2010: Meeting-o-rama

Category: thoughts

Busy day, at least towards the end. The morning I barely remember but it was a wash of different tasks. The afternoon became more structured and hectic. At 2pm I started on the discussion about issue tracking around the place, 2:30pm I was in the ICT Security office getting stuff reconfigured to fix this weird port issues we’ve got, 3pmish I was visiting our friendly Apple head/Audio Engineer to acquire stuff. I was supposed to finish at 4pm and headed to have a meeting with my masters supervisor about a few things. Ended up being late to all so I had left my pad with the Audio Studios, rushed to get that and to my 4pm which meant I wasn’t packed up, came back to my desk and worked for another 15 minutes or so responding to calls and emails. What the? Crazy work ethic. I was trying to reconfigure the library blogging platforms, test and production, as well throughout the day and had various issues with things. Need to file HEAT requests for getting the changes made into the public as well. Many things to do, little time!

No comments

Mar 11

Today: 10-Mar-2010: Recruitment Training!

Category: today

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’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’t leave the building – or even the two joined rooms.

Beyond this I didn’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.

No comments

Mar 9

Dec 2009 to Feb 2010 – A cumulative review

Category: today

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’m going to try to work on doing this again.

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 “ICT”), I’m not a systems co-ordinator for the Division of Academic Information Services (or just “DAIS”). This is a new position for me which involves a whole heap more meetings that I was doing previously and I don’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’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’m the owner of these systems a bit more than I was earlier.

So now within the Library I seem to be tasked with the following items:

  • ePrints – more management than development that I was previously involved with
  • Access All Databases – more development, this is a new system for me
  • Finding Information Tutorial – this is a custom CMS that was made that I am hoping I will be able to port to Joomla! instead
  • Library Catalogue Search – another new system, the unified search system for the Library which is pretty cool
  • Library Blog – various versions of WordPress, almost all of them out of date
  • Mobile Services – a new research project in general for the Library which is fun
  • Cleaning up all of the inconsistencies in the services
  • A few other things that I’m sure I’ll complain about when I get to them

In the short time I’ve been here, we’ve done a library management system upgrade and accordingly I’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’ve also managed to replace four virtual servers off a legacy virtual machine box that was about to die (four RHEL5 VM’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’ve also rebuilt the internal library systems development support environment helpfully called “libtrac”. It is now running Subversion, Trac and a new JIRA instance that I’m using to bring everything together.

Throughout the period I’ve done the typical support tasks, diagnosed issues and in some cases been able to resolve systems. I’ve managed to fix some problems for people but some others I haven’t been able to resolve yet but I’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’ve also started shifting operational systems into Subversion to allow control of them to ensure that we don’t lose something along the way and we have a consistent methodology for ensuring systems get migrated between one system to the next.

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’ve also met with different people and learnt a whole heap of things which is pretty cool in the grand scheme of things.

I’ve also had a new staff member (I now supervise two people, scary!) start and they’re now working on the mobile services project primarily as a developer. My other staff member I’m hopefully going to work on skilling them up to be a better programmer than they are previously. I’ve got to get in line with the University’s “BUILD” 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.

Coming up for me is a complete rebuild of some of the oldest of the library’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’s life easier. This means that the library catalogue system will be rebuilt from dev through test and prod. I’m also shifting “Access All Databases” 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.

No comments

Feb 1

My loathe affair with Optus

Category: review,technology

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’t expect any more than 2G beyond the major centres – if you’re lucky enough to get coverage at all. “3” also exists as a 3G only network however it really doesn’t have much coverage beyond the capital cities.

A long time ago I was a reasonably happy Telstra customer. I think I’ve mentioned this before. But then I got sick of the lack of features that they offered me (or the features they didn’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’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’s coverage leaves a lot to be desired where I live so that helped me go to Optus.

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 – so at that point you had five months left. Optus didn’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’t much use my phone so the TurboCap didn’t interest me.

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’ TurboCap because it was the only prepaid option that provided data with it. But here is the trick that isn’t documented in their terms and conditions however there is actually an absolute limit. Yes, there is a point where Optus won’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 YOU CAN’T RECHARGE AND LOSE ALL OF YOUR MONEY. I can’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’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’t recharge more than $40 on the TurboCap your data credit doesn’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 every 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’t use the phone much it means that in 5 months I’ll be at the point where I’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’d rather not.

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’t think makes a difference but anyway. They also had a money back deal where if it wasn’t working with coverage then I could return it. Telstra didn’t seem to have that and to be honest that’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’s the rub: periodically it decides that I don’t have credit. It’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’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 “zero credit” screen and then drop out a few more times before working is just down right annoying. Plus I’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’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’t read since I’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’ own instructions didn’t work. I also tried registering for the Optus Zoo and it just claimed that the mobile number was invalid so I can’t use that to check my balances online either. Thanks Optus.

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 – I prefer to spend what I have rather than getting a “loan” 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’d get faster internet and better signal coverage. Might even be cheaper.

No comments

Dec 31

OSDC2009 Presentations

My OSDC2009 Presentations are now up on both the OSDC Website (see http://2009.osdc.com.au/sam-moffatt) and also on my University’s ePrints site. You can check out the individual papers and their associated presentations on their respective ePrints pages:

No comments

Dec 9

Free Git/SVN hosting providers

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’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 – not only do these systems keep different versions of your data but if you use them properly you’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.

Firstly I’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 “code wiki” which I feel is a great explanation. It keeps versions of files around for you and ensures you’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’t too bad but doesn’t work well when you have larger repositories and files that you might want to share. Git doesn’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’s Windows tools leave a lot to be desired. If you’re working with people who aren’t technical, Git can be painful and I’d suggest Subversion. Both are a learning curve but Subverion’s is easier and the centralised control is useful for most projects.

Provider A: GitHub
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 “private” 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’ve got some peace of mind there. GitHub have personal and business branches offering different “private” 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.

Check out GitHub’s pricing at http://github.com/plans

Provider B: Unfuddle
Unfuddle is something I’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 “Notebook pages”. 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 “notebook pages”.

Check out Unfuddle’s pricing at http://unfuddle.com/about/tour/plans

Provider C: CVSDude
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’t like Trac’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’re really selling for each option.

Their overview page serves as an entry point for finding more information, check it out at http://cvsdude.com/hosting-products.html

Provider D: GForge Group (and JoomlaCode)
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’t log in for 30 days your project will be permanently deleted. GForge are selling a stand-alone product more than anything so they’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’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’s hosting is free for GPL non-commercial Joomla! related projects and is offered as a service to the community.

Check out http://gforge.com/gf/register/?action=ProjectAdd for more details.

Provider E: PixelNovel
PixelNovel is another host I’ve just seen today that offer a tool for Adobe Photoshop that integrates Subversion straight into the tool. This means that you don’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’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.

Check out their pricing and plans at http://pixelnovel.com/pricing

As with everything before you hand over cash, code or templates read the fine print. Though it doesn’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’s on performance and uptime guarantees where as others don’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.

4 comments

« Previous PageNext Page »