Monday, 3 September 2012

BudgetAus News 3/09

Did you know there are 19 Portfolios that make up our government?? I didn't, not till I had to go through every one of them to add them to the database for use in BudgetAus!

I entered all remaining portfolios on a very long Sunday (yesterday) and hopefully ironed out a few bugs this morning. Now I can get on with other important steps like coding in pagination for the data. Thanks for your patience on this item as I know the results are difficult to navigate without pagination.

I also want to perform further in-depth checks on the data in the database to ensure it is all good, however I feel I should wait until my exhaustion from yesterday subsides so that I can do it with a fresh mind.

Today I also swapped the sorting of the results from being based on the 2011-12 figures to being based on the 2012-13 figures. Enjoy!

Thursday, 30 August 2012

BudgetAus News

If you are using BudgetAus this week please be aware that it is in beta and that it does not contain all the Portfolios in the budget. As of lunchtime 1/09, included Porfolios are:

Agriculture, Fisheries & Forestry;
Attorney-General;
Broadband, Communications & the Digital Economy;
Climate Change & Energy Efficiency;
Education, Employment & Workplace Relations;
Defence;
Families, Housing, Community Services & Indigenous Affairs;
Health & Ageing Immigration & Citizenship;
Industry Innovation, Science, Research & Tertiary Education;
Treasury & Related Departments

BudgetAus Soft Launch!

I've been learning PHP since my son's last birthday- June 18 so I was surprised to realise that in a fortnight that will make it 3 months since I began reading my first PHP text book Learning PHP, MySQL and Javascript! I also started JavaScript as per the text book instructions somewhere along the way. While I finished the book some time ago, I can't quite say that I took on board all it had to offer beginning as it did with PHP data types and ending with AJAX httpRequests.

However, I have managed to produce BudgetAus my first major project, inspired by The Open Budget which was produced during the 2012 GovHack event earlier this year. Given that I was learning to create and script for MySQL databases, I required the use of data which was extensive enough to warrant the use of a database so I went nosing around the internet looking for data that I could use without getting into mischief (technical or otherwise).

As it turns out I seem to be learning to code at a time where the Australian government is beginning to come to the party with open sourcing it's data which is very fortuitous for me because I like dealing with good data. At this point it is worth mentioning that the Australian Capital Territory government has just launched it's beta site DataACT which everyone in the world of open data is quite excited about.

While I really liked The Open Budget app, the data was not in any way complete and there were lots of things I wanted to get from the data which I could not using their interface. I also noticed that other people who visited it were equally engaged as I was by wanting to know more about our budget.

This began what has become a very intimate relationship of mine with the finances of The Australian Commonwealth. I have added several additional Portfolios to the existing data set, added Program numbers and Objectives where none were given and basically gone over the Program totals in each Portfolio Budget Statement with a fine toothed comb (or at least a tired but dogged determination!).


Accessibility Update

After reading Luke's excellent book The Truth About HTML5 I should update my previous statements about responsibility for web site accessibility.

As it turns out, Internet Explorer has finally come to the party when it comes to browser standardization and the latest versions are more consistent in terms of how they deal with code which makes it easier for the typical front-end developer to meet accessibility standards. I didn't know this when I wrote my previous comments but it is undoubtedly a good thing for all!

Luke's advice on how to improve web site accessibility using ARIA landmarks is, I think extremely important and I look forward to using it to improve the accessibility of my new web sites once I am finished creating the data and scripts that form their basis.

I've also shifted somewhat on all the hoopla about responsive design which advises to build sites for mobile first. I actually ended up using this approach with my newest site, BudgetAus because I thought it was something that people with Smartphones might find worth a visit and I wanted them to have a good experience.

I used to think that with the way Smartphones are designed to render pages not built for mobile use using their own means was good enough but I've been turned on to the benefits of not having to scroll unnecessarily and built the basic layout around this principle. Unfortunately competing against this is the number of results that the form scripts generate which are desperately in need of pagination so I'm working on that and giving users maximum control over the results. The forms probably need to have both their accessibility and usability for mobile users improved too so these will be my upcoming tasks.

Friday, 22 June 2012

Who's responsibility is web accessibility anyway?

Having completed my experiment in web layout, the experience prompted me to wonder why it is that the legal and practical responsibility for web accessibility is placed on individual developers rather than the web browser developers who are actually responsible for a lot of the differences in the way code is rendered from one to the other?

From a policy perspective it seems to me that browser developers and also assistive technology developers must need to work together to establish cross-compatibility in how code is rendered and yet it is not these parties who are held responsible when people with disabilities find access to content difficult, but the individual developer who has to try to compensate for what I assume are deliberate choices on the part of browser developers to market applications not to meet W3 standards.


It seems to me that blaming the individual developer and web site publisher for the level of web content accessibility (which very much depends on how many hacks and browser specific prefixes are employed by the coders) is putting the responsibility onto the wrong party in terms of creating good policy outcomes regarding accessibility. What do you think?

Tuesday, 5 June 2012

My first attempt at Responsive Design

It's been an interesting fortnight working on my little layout project. My main frustration throughout was that every time I changed the layout code I then had to change the page content, given that the page content contained these code snippets.

I started out the project quite skeptical that fixed designs were as bad for layout as mooted (even though I had always used fluid designs) so it was an interesting exercise to prove myself wrong. I am just happy to have a firm basis for my design decisions.

I did attempt to combine media type targtting with using a html5 layout tag but found the browser support for the rules applied to the multi-column tag that I used were not properly supported and so I ended up using XHTML strict for all pages and leaving html5 tags for a future project.

It is a natural progression from the conclusions of my layout experiment to learn responsive design so I have been boning up using the Kindle versions of Responsive Web Design with HTML5 & CSS3 by Ben Frain and The Book of CSS3: A Developers Guide to the Future of Web Design.

I have applied several break point styles to the index page.

I have also installed and now use Git and also PHP5, nginx & mySQL (on Ubuntu 11.10). It has been a busy time but so far I'm happy with the rate I'm picking things up. Given I've done very little code in the past few years, my commitment seems to be paying off.

Monday, 14 May 2012

Multiple layout designs- some radical decisions

I've made some fairly radical decisions over the past week. The concept of responsive design was brought up at a Drupal meetup I attended a few weeks ago so I've been researching this to see whether it is the best solution to layout and design decisions across multiple screen sizes.

In deciding to further my skills in web development I have decided that rather than simply rely on the opinions and experience of other developers that I can set up a web experiment where I can gather my own data to inform my opinions on web design.

I want the actual experience of using various types of layout ie fixed v fluid, table for layout v CSS, media response queries v all the rest. This means duplicating web site content across these various layout designs and testing them all for their performance across mobile, tablet and desktop devices.

I will also be providing opportunity for web site users to interact with this project rather than rely simply on my own testing for feedback. As such there will be a form in each page on each version of the site so that users can give their own feedback on problems or comments on how the various layouts compare.

Another somewhat far reaching decision I've made is to invest time in learning SVG as a good programming choice for producing graphical content which is usable across the wide range of devices and screen sizes that  are now common in the market.




Monday, 30 April 2012

Fluid Layout Design

I've completed the basics of layout and chosen a basic colour scheme for the site. With the layout I followed my philosophy of using a fluid design so that the same code could be viewed on a screen of any size and be equally usable. The benefit of this approach is that you only need to code (and pay for) one design rather than create one site for laptops/desktops and another site for mobile devices. Then there is the question of whether to create a mobile application which is yet more expense so needs to be evaluated from a standpoint of technical need and budgetary constraints.

From a technical perspective the creation of a separate native application is only necessary if mobile users of the site require a deal of complexity (as with games). Most web sites are relatively simple so creating mobile friendly web sites is the most economic and practical way of solving the question of having a web site display equally well across different device types.

So far this seems to be working. To do this I made three divs that float on the page in a horizontal line. I set the width of the center div as a percentage of the containing div (45% give or take). I also put a min-width on this main content div of 300px so that on mobile devices it does not take the width from the percentage (too small) but defaults to the 300px. For the divs on either side of this I set a min-width 200px and max-width of 300px which keeps the divs a uniform width on mobile devices. This layout allows the divs to fall underneath one another on screens of less than 500px width for ease of use.

To ensure all elements are fluid all margins, padding and font sizes are also expressed as percentages rather than fixed values. Initial browser testing is in IE 9, Safari 5.1, Chrome & Firefox.

I am using Phonegap with Android SDK and Eclipse to test how the site displays on mobile devices. I am using the Android emulator because the Eclipse Classic IDE it runs on is free however it was a significant job to set it up so that all these components work together.

Links
Responsive web design: a project-management perspective

A New Beginning

Welcome my portfolio web site. This is an ongoing project which will change and grow as an example of my current and increasing skill with web development using XHTML, CSS, RSS/XML & JavaScript. I hope to introduce PHP and build a database into the site as time goes on.

I've decided not to go with using HTML5 because I do not feel there is enough browser support for it to make it a viable choice for the average development project. The other major decision at this point was to make the page display the same across all screen sizes so I am using percentages for my page layout width and heights. It will be interesting to see how this plays out.