Alec the Geek

mobile version http://alecthegeek.mofuse.mobi/

Archive for July, 2008

Application Lifecycle Management safe in China!

Posted by Alec on 31 July 2008

I am glad to report that voga.com.au has not been blocked by the great Firewall of China. Anyone in China who needs assistance with their software process can safely get hold of services and help from your truly. I’m sure the doom mongers are feeling a bit foolish now?

With thanks to Alexia Golez

Posted in Personal Opinion, ego | Leave a Comment »

Handy Hack:Convert a version controlled file to a different content type

Posted by Alec on 30 July 2008

This is not exactly rocket science, but does show up an important principle of Version Control (see below).

Let’s take a practical example that happened to me today:

I have a document under source code control (git in this case) and I am editing it using OpenOffice. Naturally it is an ISO standard Open Document format file and so it’s file name is something like GreatDocument.odt. However I now need to distribute this document to a wider audience for comment and feedback; and of course everyone else uses MS Word 2003. The practical solution is to change the document format to .doc. However I still want to keep the full history of the item — the fact that it changed from ODT to .DOC format is actually not significant in the grand scheme of things. For git the following commands need to be performed:

  1. Using OpenOffice save the file GreatDocument.odt in MS Word format using the Save As function. This should create a second file called GreatDocument.doc
  2. Rename GreatDocument.doc to something else, e.g. GreatDocument.word
  3. issue a git-mv command to show that the file is changing. e.g. git-mv GreatDocument.odt GreatDocument.doc
  4. Overwrite the .doc (which is actually in ODT format of course) with the true Word file. E.g. mv GreatDocument.word GreatDocument.doc
  5. Now commit your changes to the repo. git-commit -a

Of course you will need to modify this to suite your platform and version control tool. But the principle should hold in the majarity of cases.

And what is the important Version Control principle involved?

The physical format of a controlled Item is less important that its history and logical purpose

Posted in Software Configuration Management, Software Development, Work Practices | Leave a Comment »

Well deserved recognition for jarich

Posted by Alec on 24 July 2008

use Perl | White Camel Awards 2008

The first White Camel recipient for 2008 is Jacinta Richardson. She has been credited for saving more than one Perl Monger group from dying and has been heralded as the “gardener of the Australian Perl Community”, in the sense that she provides energy while subtly encouraging others to take responsibility. She is an active member in every Monger group in Australia, as well as many other FLOSS groups in the area. She has helped organize OSDC, Linux.conf.au, and SAGE conferences. She works with Perl Training Australia in supporting the Perl community with such ventures as perl.net.au and Perl Tips.

In in Australia we often punch above our weight in many areas, not just sport, and our communities for users of FLOSS are world class. It’s people like Jacinta (a.k.a jarich) who help make it happen and it’s good that we recognise the hard work she (and others) do to keep this infrastructure going.

And in further proof of Australian class from OSCON this year:
schwern’s status on Thursday, 24-Jul-08 00:29:13 UTC – Identi.ca

In Paul Fenwick’s “Illustrated History of Failure” and so far it’s brilliant. #OSCON

Posted in Open Source Software, Perl | 1 Comment »

Something I have been whining about for years

Posted by Alec on 22 July 2008

Syncable tools for the offline web

SD is a peer to peer bug tracker which can sync to itself, RT or Hiveminder. You can extend SD to sync to other bug tracking tools by writing simple adaptors. If you’d like to help make SD work better with your bug tracker, drop us a line.

With all the cool kids (and me) moving to distributed version control tools it’s been obvious that that there is a gap because our bug databases are centralised. Why is that a problem? Because code changes should always be booked against either a user story or a bug report. The link needs to be hard! i.e. I should be at least warned when I commit code without a ticket and when I look at a completed ticket I should be able to find the corresponding code. When you are committing code changes at 11,000 meters above sea level that can be a bit hard.

The only thing I know about SD is what I’ve read above, but already I want it!

[update 25/July -- the SD website now works so go for it!]

Posted in Application Lifecycle Management, Project Management, Software Configuration Management, Software Development, Work Practices | Leave a Comment »

Installing a Serena Dimensions standalone system

Posted by Alec on 22 July 2008

Many Dimensions consultants, trainers and administrators have their own personal recipe on setting up a standalone Dimensions CM environment. Here is my latest:
Read the rest of this entry »

Posted in Application Lifecycle Management, Serena Dimensions, Software Configuration Management | Leave a Comment »

Wake up before Apple just replaces M$?

Posted by Alec on 18 July 2008

Apple Climbs Into Third Place In U.S. PC Market

Now that there is an AppStore with applications in iTunes, why wouldn’t Apple move next to distribute all applications through iTunes

A very cogent comment from ionix5891 on /. warning us no to sleep walk into the arms of another monopoly power. As I said before, Steve Jobs can be a very scary guy!

Personally, now that Ubuntu 8.04 (or Spiny Norman as I call it) is so polished I’m not feeling such an urgent need to rush back into the arms of Cupertino. Mr Shuttleworth may have made life a lot less exciting, but now it all ‘just works’. Well, except for some proprietary media formats still.

Having said that, the family is still happy plugging away on the iMac (except when my son wants to run games)

Posted in Business, Linux, Mac | 3 Comments »

Handy Hack: Enter the office lottery syndicate with Perl

Posted by Alec on 16 July 2008

If you are asked to chose numbers for a lottery here is a rather inelegant hack to create some entries. Assume you need x numbers from a range of a to b inclusive then run this program as

./lottery.pl  a b x.

#! /usr/bin/perl
#

our %dup;

our $lower = $ARGV[0];
our $upper = $ARGV[1];
our $needed = $ARGV[2];

for (1..$needed) {
    my $x = int(rand($upper-1)+$lower);
    if ($dup{$x}) { redo }
    print  "$x \n";
    $dup{$x}++;
}

Posted in Perl, ego | 1 Comment »

Top Tip: Long flights across the Pacific

Posted by Alec on 11 July 2008

Here in Australia it takes us over 14 hours to fly to America and there are a few little wrinkles and things you can do to help make the trip a bit easier. There are of course many, many, other sites on the intertubes with further suggestions:

  • Invest in some decent carry on luggage so you don’t need to wait at the luggage carousel. It can be a long wait and if you do an internal flight as well that’s twice you need to wait for your luggage. I carry a laptop rucksack and a small suitcase — I can live for weeks from that. If you are travelling to West Coast US on business then you never need a suite or tie anyway.
  • Copy the details of your passport, flight number (or use your boarding pass), return dates and hotel address into a sheet of paper so that you can fill in your US immigration and customs documentation. Also have a pen handy
  • Ask the cabin crew if you can get your US forms as quickly as possible during the flight. It’s easier to fill when you are fresh and less tired. NB This usually doesn’t work — they have a process and you can’t upset it!
  • Don’t eat too much before flying. It can make for an more uncomfortable flight and takes longer to recover from jet lag.
  • Take a plastic carrier bag with you and put your shoes in it, then place in overhead luggage bin. They are out of the way for the rest of the flight, easy to find at the end and you don’t upset other passengers rubbing your dirty shoes on their luggage
  • Collect as many of the travel amenity kits as possible whenever you travel and carry one or two in your hand luggage. This is useful for two reasons:
    • You can change out of your shoes and into flight socks before settling down
    • Far fewer flights now offer these kits anyway
  • Try and sleep if possible (I never can)
  • I always find it hard to work in economy so make sure you don’t have expectations of getting lots done
  • Use a lip salve and skin moisturiser if needed

Updated 10/Oct/08

  • Consider wearing trousers with large patch pockets on the legs so that bulky items (e.g. wallets and passports) are located at your knees and you don’t have to sit on them for 14 hours in your back pocket

See Also:

Airline Seating Tradeoffs

Optimise your aircraft seat

Posted in LinkedIn, Work Practices | 2 Comments »

Top Tip: Cygwin Perl has problems running with UNC path names

Posted by Alec on 10 July 2008

When running Cygwin Perl using libraries that live on UNC paths (e.g. when running prove with the -l option) Perl will croak because it is unable to load the library. An example error message will look something like:

t/00.load.............Can't open perl script ""-I//server/sharename/work/mymodule/lib"": No such file or directory

The fix is to map the UNC path to a drive letter and use the Cygwin mount point (e.g. ‘/cygdrive/z/work/mymodule’) as the path instead.

The command is

net use z: '\\server\sharename'

Posted in Cygwin, Perl | Leave a Comment »

Handy Hack: Force cpan utiltiy re-run the configure questions

Posted by Alec on 9 July 2008

When you first the cpan command line utility it asks you a rather tedious list of questions about your setup. Occasionally you need to go through it all again. Use the command ‘o conf init‘ at the cpan prompt to force this behaviour.

Posted in Perl | 1 Comment »

An easy way to document process

Posted by Alec on 8 July 2008

What is a “Lightweight Ticket Process” ? « Alec the Geek

Document the process in some fashion. A process that is not documented can be very hard to talk about, agree and improve.

Following on from a brief twitter conversation with Kate this morning here is a simplistic example of how I currently document processes. The motivation for this approach is:

  • Simple to edit and and maintain
  • I hope simple to read and understand (even if you are not technical)
  • Can be used as the basis for detailed work instructions

Posted in Application Lifecycle Management, Software Configuration Management, Software Development, Work Practices | 1 Comment »