Intro to PHP talk at LUV Beginners

Linux Users of Victoria (LUV) holds a beginners’ session every month, aimed at people who are interested in Linux, but who might need some additional guidance or direction to get going. I was honoured to be asked to present at this month’s session, providing an introduction to the PHP programming language. You can see the presentation on Slideshare here;

For a presenter, the venue, The Hub at Docklands, is perfect. It comfortably seats around 25 people, has good lighting, a whiteboard and a projector and projector screen. These worked perfectly with my Ubuntu-ised EEEPC, running Open Office Impress. My Logitech wireless presenter generally worked well, but it was sluggish at times.

The feedback from the presentation was generally positive. Introducing PHP is a very large topic, and in condensing it to around 2 hours there was a lot that had to be left out.

On reflection, I think that there are generally two entrypoints to PHP – and the current material and literature is really only appropriate for one of them – something that the community may have to consider in the future.

  • Coders who are already familiar with programming concepts such as variables, flow of execution, conditional processing, data structures etc. For this group of people, PHP is simply another programming language. The specifics that they are interested in are how PHP does object oriented, what specific language features it has, what the appropriate IDE and testing / quality assurance tools are etc.
  • People who have come from a blogging or design (say CSS and HTML with graphics) background, for instance via WordPress or Drupal, appear to approach learning PHP in a different way. The concepts that are important here are how PHP differs from HTML, the static vs dynamic concept, and a solid foundation in the client-server HTTP request response lifecycle.

Perhaps the PHP introductory documentation has to be rejigged to be more appropriate to each audience?

Ada Lovelace Day – Donna Benjamin, Brianna Laugher, Lorna Jane Mitchell and Elizabeth Naramore

One of the reasons behind the Finding Ada campaign is to promote the wealth of female talent in science, engineering, technology and computing. In previous years, I’ve heard the laments of many would-be bloggers; “but I don’t know any women in technology or computing!”. In contrast, I believe there are so many to choose from!

Donna Benjamin

Donna is a stalwart in the Linux and Drupal communities in Australia, and a key member of AussieChix. Although she holds many positions of responsibility within those communities, it is her passion, dedication, fervour and strong commitment to the values underpinning open source  that make me admire her so much. Education, openness and freedom are principles she strongly advocates Рand on that basis alone she deserves credit. Her leadership abilities enable her to gain support Рoften from volunteers at events such as Software Freedom Day or for running conferences Рand drive people to deliver on a shared vision. She is a force to be reckoned with, and a wonderful role model for other women.

Donna is @KatteKrab on Twitter, etc.

Brianna Laugher

Also a key player in the open source community, Brianna heads up Wikimedia Australia, an organisation dedicated to supporting the creation of free cultural works. She is active in the open source and Linux communities in Melbourne, and shares my passion for language.

Brianna is @pfctdayelise on Twitter, etc.

Lorna Jane Mitchell

Although having collaborated online as part of PHPWomen, I had the privilege of meeting Lorna while travelling in the UK. She is one of the most dynamic, energetic and determined people I’ve ever met – and an absolute dynamo during her time with PHPWomen. She now looks after the developer community at iBuildings, and has the (fun!) job of organising the Dutch PHP conference. As part of PHPWomen’s Big Sis L’il Sis programme, Lorna has mentored and coached a number of up-and-coming PHP developers, imbuing them with the confidence and skills to hone their PHP development technique.

Lorna is @LornaJane on Twitter, etc

Elizabeth Naramore

One of the founders of PHPWomen, Liz has previously worked on PHPArchitect magazine and in a number of development roles. She has played an instrumental role in establishing PHPWomen’s partnerships programme, in which open source software projects with strong values and statements about supporting equity and diversity within their development communities are promoted through PHPWomen. Liz is also a Mum – and how she manages her young family and still has time to code, I just don’t know!

Liz is @ElizabethN on Twitter, etc

So? Do you know a standout women in science, technology or computing? Then blog about them for Ada Lovelace Day!

Bonnie Babes – an open source email and website solution

The Bonnie Babes Foundation website, email and shared calendaring has recently been developed using free and open source software. That is, each of the software tools is completely and absolutely FREE! My time on the project (around 100 hours all up) was also donated, so the only costs incurred by the Foundation were for web hosting ($15 per month at Servers Australia).  So, how did it all come together?


Bonnie Babes were previously using a POP-based solution using the organisation’s primary email contact address. This meant that if five separate people on five separate computers each sent mail, no one else could see what had been sent. This was migrated to an IMAP-based solution using Thunderbird.

The old POP email was moved to the IMAP folders. The biggest hassle here was that there was around 80 times more email to migrate to IMAP than I had budgeted for during the analysis phase. Luckily, Servers Australia came to the party and gave us some breathing space with an extra half a gig (NOTE: Big thanks Jared!). There was one machine that would crash every time I tried to import the mail from Outlook into Thunderbird, so as a workaround we first imported the mail from Outlook into Outlook Express, and from Outlook Express into Thunderbird. This finally worked (just be careful if you have to do this, as it imports ALL accounts from Outlook Express).

The staff at the organisation were used to using Outlook rather than Thunderbird, however they seemed to adapt fairly quickly. The only glitches we found were that the formatting in Thunderbird is a little different to Outlook – so ‘Paste without formatting’ was used as a workaround.

Filters have been set up on one computer rather than different computers having different filters applied.

Shared calendar

One of the requirements of the organisation was to have a shared calendar so that appointments, events and to do lists could be shared among multiple staff. An Exchange server was out of budget, so I settled for Sunbird. With Sunbird, it can be set up so that a remote calendar can be used. An .ics file was set up for this purpose on the web server, however it was made available under the FTP root rather than the web server root for security reasons.

The calendar is then accessed via a standard FTP URL such as:


The website has been created using WordPress, with a number of plugins. Chief among them are cForms, for building user editable contact forms and the eShop plugin for online commerce. I had originally planned to use the WP e-Commerce plugin for the Online Shop component, however this plugin seems to be full of bugs and I had no end of trouble installing it.

One very useful plugin that deserves a mention is pageMash – used for ordering pages within WordPress. I’m surprised that this functionality hasn’t been made better yet – as the developers state, it’s still a little ‘janky’. Hopefully this will get a look in for the 2.8 release of WordPress.

One of the very nifty things I learned about WordPress during this exercise is that there is an .ics calendar available of upcoming releases – very handy (and very quickly put into Sunbird!)

Of course, the website validates as XHMTL transitional and CSS 3 valid (a very big thanks to Jason King for picking up that the theme version 1.0 wasn’t compliant).

Google tools

The web presence also makes use of a number of freely-available tools by Google, including;