Full Frontal Conference 2015 - An Overview
Last Friday the Mothership dev team went to Full Frontal Conference at the Duke of York Cinema in Brighton. Sam and I went last year and found it very useful, especially as it was leading up to the open sourcing of Mothership, a topic which Hannah Wolfe of Ghost gave a talk on. This year there wasn't anything quite that relevant, but there was a lot to take home nonetheless. Here are a few of the talks that really stood out to me.
Obviously, it's important to be careful when using new features of a language as support may initially be a bit spotty, but either way here is a list of the new features that stood out to me:
- Spread operator - The spread operator is a feature which was implemented into PHP in version 5.6, although for compatibility reasons I haven't have much of a chance to play with them in PHP yet. Essentially they allow greater flexibility with regards to the number of arguments passed to a function. There's a lot to them so I would suggest reading Mozilla's documentation for more information on usage.
- Constants - They're constants!
letvariable declarations - This was probably the first feature that made me pretty excited to hear about. This feature allows variables to be declared on a block level, i.e. within a
ifstatement. The variable only exists within the scope of that block, and then reverts to its original state once the block is left.
- Unicode support - We can now use emojis in our code! Don't do that!
The next talk that really stood out to me by Marcy Sutton, on mobile accessibility.
For those who might not know exactly what is meant by 'mobile accessibility', in this instance it is referring to the ease at which people with disabilities can use your website on mobile devices. To me, this is a hugely important and oft overlooked part of web development.
Mobile accessibility is important because:
- More people access the internet via mobile devices than desktop
- More accessibility = more traffic, so it makes business sense. Marcy also pointed out that there may be legal ramifications for failing to make your sites and web apps accessible.
- We as humans have a moral obligation to help those who are less able-bodied than the rest of us.
Marcy broke disabilities down into four major categories:
The majority of talk covered issues faced by those whom are visually or cognitively impaired.
First and foremost it is important to be aware of the barriers to entry when using your web app. Some examples given were:
- Locked zooming
- Hijacked scrolling
- Visual clutter
- Ambiguous icons
Personally I think this is good advice, not just when catering for people with disabilities, but for users in general. It is annoying when you can't zoom in and out of websites, and probably my least favourite trend of modern web design is when scrolling does something other than show you further down the site.
There were some easy wins, though. Semantic markup is very important, a button should be a button, and not a div. We should also use the
aria-label HTML attribute to make it absolutely clear what the button does. It is also important to make sure that the touch targets are not too small, i.e. not just the text should be a link, but the whole box. This is another pet peeve of mine so it was good to hear it said. Finally, a major point raised was that things that are invisible on the screen should not be visible to screen readers either. This can be done by disabling the HTML element, and setting the
tabindex attribute to
Firefox and Chrome for Android both have tools for auditing accessibility. Annoyingly, screenreader statistics suggest that the most commonly used mobile platform by people with disabilities is iOS, which doesn't quite have the same auditing features.
Obviously, there are considerations to take when deciding which tools to use. It might not make business sense to spend a week rather than a day building some functionality, by using vanilla JS instead of a framework. However, the impact on user experience should not be ignored. Loading an entire framework can cause frame rate drops, and may even cause pages to crash on mobile sites. Anyone who has tried to look at a newspaper site on an iPad has probably had to deal with this at some point.
Fortunately, Paul has also written an application for testing page performance called Big Rig, and I can't wait to try it.
In conclusion, it was a good conference. It would have been nice to talk about every single talk, but they were so varied and covered so much ground that I would have been writing this forever. I do wish the venue was different. The seats are really comfortable in the cinema, but as soon as there is an interval everyone is crammed like sardines in the lobby. Given how quickly the tickets sell out, I'm sure they could afford to hire a bigger venue.
Finally I want to mention one thing that I think was really commendable - the conference's emphasis on representation. There was a clean 50/50 split of male and female speakers, and 2 out of 8 of the speakers were non-white. This emphasis was made explicit by the final talk of the day - a powerful talk by Lena Reinhard about our responsibilities as developers and as humans to treat all people with respect.