My Skills

I mainly work with web technologies, and as most of my knowledge comes form the job I do, the majority of my skills are based in open source areas.  Here's a few of the skills I have, and which I hope to add to over time.:

HTML

HTML is the code of the internet, it's what web pages are made of.  They don't form the way it looks by itself, but rather it works in conjunction with CSS in order to present a page to you in a manner which is (hopefully) aesthetically pleasing, and in a manner which allows you to find the information you need.  I've worked with HTML since I was around 10 when I got my first PC and started using the internet, back when it was dial-up modems.  I have always enjoyed working with it and being able to rapidly see progress on an interface, and then see a site come together.

More recently I've worked with XTML and HTML 5 to produce websites and hosted applications within my work, so I have a well rounded knowledge of these areas.  I always strive to work towards standards compliant markup, and work to get all pages I work on passing through W3C online validator.

CSS

As mentioned in the HTML section, cascading style sheets (CSS) are what causes the web page to look the way it does.  It adds the colours, borders, spacing and various other visual attributes to the mark up.  I've worked with this for both web application development in order to get a system interface visually pleasing to those who need to work with it every day as well as with websites in e-commerce sites and customer portals.

I've recently worked with some new styling brought in by CSS3, as well as working on CSS media queries which help change the layout of a website if the screen size (in pixels) is below a certain size.

Javascript and jQuery

Javascript is often used in order to perform some simple client-side validation on web pages so people can have some feedback on the information they are filling into forms.  It can be used for a lot of other things, such as manipulating what is shown on screen and hidden from view at different stages.  jQuery is a library which harnessed the power of javascript and makes it easier to work with in a manner which will work across different web browsers without having to write different versions of the code for different software.

I've worked with both of these for display manipulation and validation on screen for websites, customer portals as well as within hosted software solutions for tasks as trivial as showing or hiding things right through to adding new DOM elements, validation on screen and AJAX requests to get information in real time without the need for a page submission.  As part of the AJAX work, I have begun to venture into JSON to pull data back from servers and services in a way which has the data in a standard format for processing within the client.

XML

eXtensible Markup Language, or XML, gets a lot of negative publicity within web development circles, and seems to come under intense ridicule form other areas of software development because of the nature of it.  From what I have seen this stems a lot from the very loose standards for XML.  Whilst strict in the nature that every opening node has to have a matching closing node, a lot of these can be done as a single open/close node and have the information contained within attributes of the node, and not within the node itself.

I think that the negativity surrounding XML is unjust, and I have found MXL incredibly useful when dealing with data feeds to and from external parties as part of an import/export within hosted applications.  I disagree with the ridicule as it allows XML to be highly flexible for pretty much any intended purpose, and the mockery surrounding XML is actually aimed at those who abuse XML and take its extensibility too far, when leaving it as simple as possible would have been more than adequate.

PHP

PHP is what I spend most of my waking time on, it's my main skill in terms of web development and software creation.  I use PHP in my daily life for everything from simple code to control displaying what is on page to full blown processing of information into and out of a system.

I use it in conjunction with HTML and CSS in order to produce data in a manner which make them readable, and work it alongside javascript and jQuery in order to get information in real time from systems in order to keep the user as informed as possible along their journey within web applications.