There’s a buzz in the air… or is it on your arm?

Can you feel it yet?

Apple Watch

This is a guest post by Boisy Pitre, Mobile Visionary and lead iOS developer at Affectiva. You can find him on Twitter here, and see his previous guest posts here.


It is the imminent release of Apple’s latest gadget-wonder… the long awaited Apple Watch. Announced last year, the wearable device is due to hit stores in a few months; its launch, sale price, and subsequent success or failure is the basis for immense speculation in and around the techno news websites and journals.

Last Fall’s announcement of the eagerly anticipated watch was true to Apple’s style of introducing something new: bold yet gentle, glamorous yet modest, confident yet demure. Touted as something truly personal to the wearer, the Apple Watch wooed and wowed the event’s audience and the wider general public. It was easy to see that this wasn’t just another technology device trying to act like a watch, but perhaps the very redefinition of the watch itself.

Predictably, it didn’t take long after the announcement for the questions to follow. How briskly will it sell? Who will buy it? And who wears a watch anymore?

What’s Old is New Again

The concept of wearable devices isn’t necessarily new; it’s been around for some time and has existed in various incarnations. Thinking back 15 years ago, I can distinctly remember attending PalmSource (yes, I’m talking about the Palm Pilot for those of you who can remember) in 2000, and witnessing an attendee walking around the show floor with Palm devices strapped to his forearms. It was reminiscent of Locutus of Borg in an episode of Star Trek: The Next Generation.

Thankfully, we’ve come a bit farther in style today. From arm bands with iPods to smartwatches like the Pebble and offerings from Samsung, you don’t have to look like a cyborg to have technology up close and personal to your body. And all indications are that with its myriad of colors, band styles, and body types, the Apple Watch will be as much of a fashion statement as a technology wearable.

Of course, as developers we are the spark and fuel that moves the pistons of Apple’s engines. Seeking new opportunities and pathways for our work is a constant motivation. So what does the Apple Watch mean for the developer?

A Totally New Platform

Just like the iPhone spurred the creation of the amazing “app economy” in 2008 with the release of the native iPhone SDK, the debut of the Apple Watch brings a whole new set of creative potential to the table. Although it has some utility on its own as a timepiece, where the Apple Watch really shines is its integration with the iPhone itself. The Apple Watch is really complete when it can pair up with an iPhone. The iPhone acts as a deliverer of both content and apps to the watch via Bluetooth. In essence, your Apple Watch becomes an extensible and conveniently accessible accessory to your iPhone.

This means if you have an iOS app already written, you can extend it to bring its functionality to the Apple Watch (assuming that there is some aspect of your app that makes sense appearing on someone’s wrist). Your iPhone is the “carrier” of the smarts that your Apple Watch will use; and in doing so, you have whole new ways to extend the usefulness of your iOS apps.

Think Different

A watch is not a phone, and a phone is not a watch. We carry our phones in our pockets and on our hips, but our watches adorn our wrists. As something that you will wear on your arm, the Apple Watch becomes a very convenient, immediate, and intimate place to view and interact with data. It opens up a whole new world of ideas for apps.

Not only is the Apple Watch as a platform more physically accessible, but its screen is considerably smaller in size than any previous iOS device. Given that the largest Apple Watch is 42mm tall (the other option is an even smaller 38mm in height), you have to carefully think about your app idea, and how it will “fit” onto such a targeted space.

The smaller design space of the Apple Watch, along with the intimacy and complete accessibility that it offers, is certain to inspire creative app extensions. It’s going to be interesting to see where developers will lay stake in this brave new world.

And It Will Get Better

Like all technology, the Apple Watch is bound to get “smarter” over subsequent revisions and generations. The perceived limitation of its tethering to the iPhone will become less and less pronounced, eventually to the point where Apple Watch may become a truly stand-alone, Dick Tracy type futuristic device. Think full audio and video interaction… a complete communications experience right on your wrist.

Challenges certainly remain to get there. Increased processing horsepower and capacity required to drive more features will require more battery life, and that will challenge Apple in interesting ways. There’s not a lot of room to put larger and larger batteries on your wrist.

Are You Ready?

Wearables are about to get a lot more popular, and the apps that will empower them are going to be more and more in demand. If you’re an iOS developer with an existing app, I encourage you to look at how your app might be able to augment your user’s experience on their wrist with their Apple Watch. Not all apps may be able to find that crossover, but many will, and with it will come the opportunity for you to become more familiar and close to your users.


Swift London Are you interested in iOS development? Swift London is a group for iOS and OS X developers of all abilities who want to learn how to use it, who meet regularly at Skills Matter. You can join them for their next meetup on Tuesday 17 February – full details here.

The organisers of the Swift London Meetup group have also put together an impressive line-up for a two-day Swift Summit which is taking place in London on 21 & 22 March. The programme includes speakers such as Chris Eidhof, Daniel Steinberg & Ayaka Nonaka. See the full agenda here.

While It’s Compiling: Skills Matter Interviews Arti Mathanda

CukeUp!

CukeUp! 2015, the conference all about BDD, is coming to London next month on the 26th and 27th March! There’ll be talks and workshops by Behaviour Driven Development experts and the inspiring Rachel Davies and Dan North will be our keynote speakers. In preparation for this fantastic event, we’ve picked the brains of Arti Mathanda, the event’s programme lead, to find out more. Check out the full programme here.


Arti, you were invited to join the CukeUp! 2015 organising team by Matt Wynne, lead developer at Cucumber Pro. Can you tell us how this came about and what points of difference you hope to add to this year’s programme?

I’ve known Matt for several years now. Last year we caught up again at Sandi Metz’s course and we started to talk about how one of the CukeUps that I had attended was very code focussed and he asked if I would help out with this years conference. I said yes! I was hoping to help make CukeUp more business focussed and also to help increase visibility for minority speakers.

What topics will you be exploring in the workshop you’re delivering at the conference this year?

My colleague Adam and I will be talking about how we use Hypotheses and Measures and how to use them to prioritise your work.

What initially attracted you to working with BDD?

It just seems like the right thing to do. BDD done right helps you figure out why you’re doing the work you’re doing and if it actually makes sense to spend time and resources doing it.

What questions would you most like to ask the community about at CukeUp!?

What are some of the topics you’d like to hear about at the next CukeUp? What are your favourite talks/workshops from this year. Most importantly – did you have fun!

What themes are you most looking interested in hearing about at the conference?

I want to hear about product owners and business stakeholders using BDD – rather than just the tech teams.

As is often the case at tech events, less than half the speakers at CukeUp! are female. What do you think holds women back on the tech scene? Is this changing?

There’s a multitude of reasons why women hold back on the tech scene. One of them is as innocuous as people organising conferences tend to ask people they know to speak at them – and since tech is typically a white male dominated industry, that usually leads to mostly white men being asked to speak. We made a concerted effort to reach out to the women we knew in the industry, whose work we admired. We have a pretty good number of women speaking at this year’s CukeUp including the keynote speakers on Day 1. There’s still work to be done, but we’re heading in the right direction. We also made sure there was a good Code of Conduct and resources for people who were scared of public speaking.

Read more about CukeUp! 2015 and see the full line-up here


While It’s Compiling is a continuing series of interviews with experts across a range of bleeding-edge technologies and practices, exclusive to Skills Matter. Be sure to subscribe to this blog for future interviews, or follow us on Twitter.

What is our community expecting for 2015?

2015 is well and truly upon us, and it came along quick! After a busy, event-filled but ultimately fun 2014, we asked a range of experts from across the Skills Matter community what their predictions are for the year ahead. From social networks to BDD, here’s what they thought…


Cate Huston

Social Networks: Cate Huston

“These are less predictions and more hopes.

There’s some great insight in Coder’s at Work from Douglas Crockford where he talks about the social systems that existed around timesharing and how those went away when we moved to the “personal” computer. But social is normal – to be human is to be social – so I’d like to see social networking move away from contrived ideas of what social is, and more to enabling normal, human, social, interaction.

I think we will see fewer new social networks and more integrations and innovations on top of existing ones. See the way that Discourse is doing logging in as an example, they accept almost anything. It’s kind of ridiculous that so many people are building their own versions of identity. Android has had intents for a long time, but the advent of extensions in iOS 8 is a good sign for this.

The other thing I’d like to see is social networks taking harassment seriously. In 2014 we saw some truly appalling treatment of women online, taking place on social networks. Death threats, rape threats, revenge porn… I’d like to think by the end of 2015 we’ll have found better ways to balance freedom of speech and the freedom to threaten and harass.”

Cate Huston is a developer and entrepreneur focused on mobile. She’s lived and worked in the UK, Australia, Canada, China and the United States, as an engineer at Google, an Extreme Blue intern at IBM, and a ski instructor. Cate speaks internationally on mobile development and her writing has been published on sites as varied as Lifehacker, The Eloquent Woman and Model View Culture. She blogs at Accidentally in Code and is @catehstn on Twitter.


Daniel Steinberg

iOS Development: Daniel Steinberg

“At the end of 2014 developers had to decide whether to transition to Swift or to adopt the new techniques and APIs introduced in iOS 8. Apple will certainly give us more widgets, services, and APIs to play with in June, but I think this year will be about exploring what it means to write idiomatic code in Swift. This is a year where we’ll figure out the design patterns and best practices for coding in Swift. This will also be the year where Apple revises the language and the libraries to work more naturally together.”

Daniel Steinberg has been writing and teaching about programming the iPad and iPhone since the SDK’s first appeared in beta and Mac OS X for many years before. He has presented at Apple’s Worldwide Developer Conference, MacWorld, MacHack, CocoaConf, and other Mac and iOS developer conferences. Daniel also teaches the iOS 8 development and Swift Kickstart: Introducing the programming language and platform fundamentals course at Skills Matter.


christina ohanian

BDD: Christina Ohanian

“Behaviour Driven Development (BDD) isn’t a new concept in the software development industry, but it certainly has come a long way since the early days. BDD has proven (certainly for me) that behaviours and examples are very useful and powerful conversation starters to describe and talk about how our solutions should be experienced by people. It allows development teams the chance to discover ways to build (and test) their systems, collaboratively, with the ultimate outcome that we have built the right solution for our users where the system behaves as it should.

However, it hasn’t all been plain sailing. BDD has suffered from a number of misconceptions throughout the last few years, and I feel it is starting to lose its core meaning and purpose. One pertinent example is something I witness a lot: an unfortunate misunderstanding that confuses the practice of BDD with the practice of automating tests. The two are very different and distinct, and their role should be regarded as complementary – if practiced correctly. This topic has been at the core of many recent conversations. I hear the following questions often: what do we mean when we say BDD? How does it relate to test automation? Hang on – I thought BDD was just another way of writing test scripts? These are questions, which if interpreted incorrectly, can lead to harmful misconceptions. Ironically, they have the potential to lead, ultimately, to the very thing BDD was created to avoid – too much emphasis on the right way to build, instead of actually building the right thing for users.

My prediction for 2015, or perhaps my aspiration for the year ahead, is that we need to look at how we tackle this misconception, so we can get back to the essence of what BDD is. This is critical, as we continuously grow in today’s digital world: a world where new behaviours are created at light speed, shaped by powerful forces like mobile.

So bring on 2015, and let’s get back to the fundamentals of good BDD practice.”

Christina Ohanian is a member of the team at The App Business heading up the Quality Assurance team, where she manages and coaches a talented and motivated group of mobile testers. You can find her on Twitter, check out her website, or see her talk at the upcoming London Tester Gathering Workshops in June.


Evelina Gabasova

Machine Learning: Evelina Gabasova

“I think that machine learning and data science in general will become even more pervasive than it is now, and the area of its applications will grow even further. For example, I?m a big fan of emerging data-driven journalism or computational social science. Another trend which will get more important over the next year is making machine learning easier to apply and accessible to non-experts. Unfortunately, applying machine learning to data is still far from straightforward. Typically there are many steps we need to take before we can even start playing with clever machine learning algorithms ? like sourcing and pre-processing data. I love how in F#, data can effectively become a part of the programming language itself and make this part of the process much more fun.”

Evelina Gabasova is a PhD student in statistical genomics at Cambridge University in the MRC Biostatistics Unit. You can find her on Twitter, check out her blog, or see her talk at this years F# eXchange where she will be discussing how she uses F# for data processing in her research.

First class functions in Java 8

Raoul-Gabriel Urma

This is a guest post from Raoul-Gabriel Urma, a PhD candidate in Computer Science at the University of Cambridge. His research centers on programming languages and software engineering. Raoul has written over 10 peer-reviewed articles and given over 20 technical talks at international conferences. He has worked for large companies such as Google, eBay, Oracle, and Goldman Sachs, as well as for several startup projects – and has recently written a book on Java 8 in Action: Lambdas, Streams and functional-style programming by Manning.

Raoul also teaches a course on modern development with Java 8 at Skills Matter, alongside Jim Gough & Richard Warburton. At the end of this course, you will be ready to use Java 8 on your day job and be familiar with the cutting edge programming approaches which allow you to write more flexible and concise code. You can find out more information about the course here, or head to the Skills Matter page to book your place now!


Java 8 adds functions as a new form of value. What does this mean? Let’s look at a simple example.

Suppose you want to filter all the hidden files in a directory. You need to start writing a method that given a File will tell you whether it is hidden or not. Thankfully there’s such a method inside the File class called isHidden. It can be viewed as a function that takes a File and returns a boolean.

However, to use it you need to wrap it into a FileFilter object that you then pass to the File.listFiles method as follows:

File[] hiddenFiles = new File(".").listFiles(new FileFilter() {
   public boolean accept(File file) {
      return file.isHidden();
   }
});

Ouch, that’s pretty obscure! We already have a function isHidden that we could use, why do we have to wrap it up in a verbose FileFilter object?

In Java 8 you can rewrite that code as follows:

File[] hiddenFiles = new File(".").listFiles(File:: isHidden);

Wow! Isn’t that cool? We already have the function isHidden available so we just “pass” it to the listFiles method. Our code now reads closer to the problem statement.

The use of File::isHidden is a rather special case of a new feature called method references in Java 8. Given that methods contain code (the executable body of a method), then using methods as values is like passing code around.

I hope this brief post has sparked some interest in Java 8! You can find a longer explanation in this 10min animated video we put together:

 


 

While It’s Compiling: Skills Matter interviews Graeme Rocher

graeme-rocher

The Groovy & Grails eXchange 2014 (from left to right): Guillaume LaForge, Graeme Rocher, Russell Winder

After the success of the Groovy & Grails eXchange at Skills Matter, we spoke to the event’s second keynote speaker Graeme Rocher. Graeme is the project lead of Grails at Pivotal as well as CTO at G2One Inc, an open source services organisation providing training, consultancy, support and products around Groovy & Grails. He gave us some insights into what the new Grails framework is capable of, why contributions are so vital to the success and evolution of the Groovy language, and why he left London for Spain’s beautiful Basque Country.

Groovy & Grails eXchange 2015 tickets are on sale now – only £95! (for a very limited time)


You recently delivered a keynote talk at Skills Matter’s Groovy & Grails eXchange 2014 with a preview of the 3.0 rewrite of the Grails framework. Can you give us an overview of what the new version is capable of?

We’re previewing Grails 3, which is what we’ve been working on for the last six months or so now, which is a lot more flexible than Grails 2. You’re able to target multiple environments via the notion of profiles, so a Grails application could be potentially deployed in other targeted environments whether it be traditional Servlet, Netty or Batch. It’s also written to be built on top of Gradle, so the build system is completely new and more robust thanks to Gradle. And it has a completely rewritten code generation layer API which is now formalised, whilst before it was just a bunch of disconnected scripts. It is now much more robust. And it’s of course built on top of Spring Boot, which means that you can run your applications as a JAR file or you can write applications that are just little Groovy scripts, so you get much more flexibility in terms of how you create Grails applications.

With the core Groovy team being so small, how important are contributions to the success and evolution of the Groovy language, and do you need more people to get involved?

The contribution is essential to the survival of both projects and we’re constantly on the look out for new contributors. Groovy has done exceptionally well in this area, especially in the core with around 50% of contributions from the community, and it continues to operate very much as a community-run effort and that’s fantastic. Grails is a little bit more divided. We get massive contribution from the plugin community via plugins and that’s really buzzing and continuing to evolve, and that area of plugins in Grails is significant by itself. We get fewer contributions to the core, but they are still significant and we rely heavily on that. And of course we’re always on the look out for people to contribute.

You co-founded G2One – the Groovy/Grails Company – with Guillaume LaForge. How did it start, and did you ever expect it to become as successful as it did and ultimately attract the attention of SpringSource?

Well, you always have those hopes and dreams when you’re creating a startup so we went into it hoping to be very successful and in the end we were! But in terms of how it started, it was really around 2007 when I was presenting Grails at JavaOne and I got to meet Guillaume (LaForge) and the community and really get to know people, and we started spinning some ideas around and got in touch with some fantastic investors and the idea came to fruition to start a small startup. What we created was compelling enough for SpringSource to acquire and we still believe it is.

You co-authored ‘The Definitive Guide to Grails’ with Jeff Scott Brown, which explains the roles that Groovy and Grails are playing in the changing Web (amongst other things!). Can you summarise what roles these are and why they’re important?

The web is clearly evolving in terms of having much fatter clients and smaller services at the back end and these kind of Micro Service applications are definitely very well expressed in a concise language like Groovy. You can see that when you look at Spring Boot, how well Groovy fits into creating these types of small, focused applications that fit into Micro Service architectures where you have an essentially REST-based backend with Mobile and HTML frontends. Grails 3.0 with its profile support allows flexibility in creating small micro applications are what we like to call “Modular Monoliths”.

You’re based in Bergara in Spain’s Basque Country. What’s it like working there as a tech professional, and do you ever think about locating to a more tech-focused city such as London or Berlin?

Well, I lived near London for 12 years and London in itself was and is a fantastic hub for technology and innovation and a great place to be for creating a startup or for being in the tech industry in general. In terms of where I live at the moment, the Basque Country is a beautiful area, and it certainly has a tech community especially around the cities like Bilbao and Donostia. But it’s no where near the size of London. In terms of why I’m here, its mainly family reasons. My wife is from the area so its very much a family decision being here. But I’d certainly recommend London if anyone is really into the tech industry as a place to work and be


While It’s Compiling is a continuing series of interviews with experts across a range of bleeding-edge technologies and practices, exclusive to Skills Matter. Be sure to subscribe to this blog for future interviews, or follow us on Twitter.

Find out who we’ll be interviewing next, and get a chance to put your questions forward with the hashtag #whileitscompiling.