This year I was lucky enough to grab a ticket for ffconf 2015 before it sold out. I missed the boat last year, but I had attended once before in 2013, so felt confident that it would once again be a worthy pilgrimage to (not so sunny) Brighton. I always liked that the speakers for ffconf are never announced ahead of tickets going on sale. Everything boils down to the content and how talks are curated. Here are my notes from the day:
- Template string literals.
- Default parameter values.
- Rest parameters.
- Spread operator.
- Block scope variables let and const.
- Destructuring assignment.
- Arrow functions.
In addition to major new features, Robin took some time to cover some smaller, lesser talked about bits and pieces that are also very useful:
Many of these features are already supported in browsers today, or you can of course use a transpiler such as Babel to convert your code to ES5.
Watch Robin’s talk on YouTube.
Sara Soueidan - SVG in motion
Sara gave a really comprehensive talk on pretty much everything you need to know about SVG when it comes to animation. She gave a very detailed run through of all the main embedding techniques, their appropriate fallbacks, and how to choose the most suitable method depending on what you need to animate. I’ve done a little bit of SVG based CSS animation, and I know from bitter experience just how many pitfalls there can be to get things to work cross-browser. I still don’t think I truly understand everything I need to know when it comes to properties like
viewbox, but Sara’s talk was especially useful in helping to explain things more clearly. She also went on to give demos of other interesting techniques that I had not seen before, such as SVG Sprite Animation and ‘repsonsive’ SVG animation based on viewport size.
Watch Sara’s talk on YouTube.
Anna Shipman - Operations: a developer’s guide
Anna gave a really useful talk on operations aimed at developers, explaining the difference between concepts such as virtualization and containerization. She covered weird sounding terms such as hypervisor, and explained the differences between tools such as Vagrant/Otto and Docker.
Anna also gave some great examples of using simple Unix command line tools such as
make, which can quite easily do many of the common build tasks we often leave to NPM/Gulp/Grunt.
Watch Anna’s talk on YouTube.
John K. Paul - The Web Audio Phenomenon that Shall Not Be Named
John talked about his interests in both programming and linguistics. Both have their own syntax and semantics, but natural languages can have different kinds of semantics depending on the sentence. Programming is more like a set instruction. Natural languages can also have pragmatics, something which does not exist in code. For example, what might a person have been thinking when they conveyed a sentence to another person? How could computers accomplish this understanding?
John went on to give a demo of a website he made to highlight something called the McGurk effect. He used Web API’s such as
Web Audio, and the Media Recorder API to build a Node app that lets people record their own McGurk videos to share with friends.
Watch John’s talk on YouTube.
Marcy Sutton - How to win at mobile accessibility
Marcy gave a talk on mobile web accessibility, covering common barriers to accessibility on mobile and how we can overcome them to help build more inclusive experiences for everyone.
Common accessibility barriers include:
- Preventing pinch/zoom.
- Scroll highjacking.
- Ambiguous icons without labels.
- Conflicting gestures such as swipe.
Marcy noted that mobile web browsers often have much spottier ARIA support compared to their desktop counterparts, and as such the most used button for a11y on mobile websites is often the reader mode button. This is what we’re competing against! She then went on to demo several websites on iOS using VoiceOver, pointing out common accessibility issues and how to fix them. Marcy also covered things such as the importance of semantics, touch target sizing, tab order, and making sure that hidden content is reachable.
Useful resources for accessibility include:
Watch Marcy’s talk on YouTube.
Paul Lewis - You should use <insert library/framework>, it’s the bestestest!
Paul also gave a demo of a new project he’s been working on called Big Rig, which gives automated load and scroll performance analysis for websites. I would love to see this working in Firefox soon as well as Chrome!
Watch Paul’s talk on YouTube.
Martin Kleppe - Code Calligrams
Martin gave a really interesting talk about both the art and the technique that goes into making code calligrams. I’ve always been aware of these types of things superficially, but never took the time to understand how they are constructed. Very clever stuff, and most definitely something that I’d like to spend some time learning more about.
Code calligram examples:
Watch Martin’s talk on YouTube.
Lena Reinhard - A Talk about Everything
The last presentation of the day was from Lena, who gave a very honest, powerful and sometimes uncomfortable talk about the challenges many people face every day in the software industry. I tried to put together some words here that might do the talk justice, but everything I tried to write down fell short of hitting home. You should just go watch the video instead (you could hear a pin drop in the venue).
Watch Lena’s talk on YouTube.