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.

 

While It’s Compiling: Skills Matter interviews Guillaume LaForge

Groovy & Grails eXchange 2014, Skills Matter, London

For an insight into this week’s Groovy & Grails eXchange, we caught up with Guillaume LaForge, whose keynote will cover ‘What’s up in the Groovy world?’. In addition to travelling the world speaking at conferences, LaForge is Head of Groovy Development for Pivotal, the creator of the Grails web application framework, the founder of the Gaelyk project (a lightweight toolkit for developing applications in Groovy for Google App Engine) and co-author of Groovy in Action… he’s a busy man! But we were lucky enough to pin him down to find out more about the latest release of Groovy, the burning ambitions he has yet to achieve… and ’Brownies dans un mug’!

Tickets for the 2015 Groovy & Grails eXchange are now on sale – with a very limited number priced just £95! Book yours now!


A couple of weeks ago, you announced the release of Groovy 2.4.0-beta-4. Can you give us some of the highlights of this latest release?

We’re aiming at releasing the final version of Groovy 2.4 at some point in January. Obviously we fixed various bugs, added minor refinements here and there, and also worked on some performance improvements (both for dynamic and static contexts), but the big bonus in this release is the support for Android. Developers will be able to use the Groovy programming language to develop their applications for the Android mobile platform!

A lot has happened in the Groovy sphere in the last year. Has the recent level of change been particularly strong?

The Groovy ecosystem never ceases to amaze me, as it’s very busy, very active, with lots of great tools, libraries, plugins, that make developers more productive. I started the Groovy Weekly newsletter roughly a year ago now, and there’s always so much news to cover. It’s really lovely!

Your career has been dominated by your work on the Groovy language. What is it about Groovy that has kept you hooked?

Interestingly, I thought I was the kind of person who would get bored easily with any topic after a few months. But Groovy is clearly a very motivating project, as there are so many things we can do with the language, with the project, and with its ecosystems, whether it is new features, or new opportunities to meet users and customers around the world. Groovy keeps on giving and being loved by hundreds of thousands of developers, and it’s really awesome to have the chance to work on such a project.

You’re Head of Groovy Development at Pivotal, you initiated the creation of the Grails web application framework and set up G2One with Graeme Rocher, you founded the Gaelyk project…you’ve been busy! Do you have any burning ambitions you haven’t yet achieved?

Ah, tricky question…there are still things I’d like to achieve with Groovy, like our long term goals of reworking the core of Groovy with a new runtime and new grammar etc. We also have some ongoing projects with new documentation and a new website. So there are still things I’d like to do with Groovy before really thinking of other ambitions to achieve! There are definitely topics I’m interested in these days like Machine Learning, for instance. I studied this a long time ago, and Groovy could play a nice role for dealing with fast and big data and could offer nice domain languages for modeling problems and for finding hindsight into the data, etc.

That might be a topic I’ll be looking into more seriously soon.

On your blog, which is about ‘all things groovy!’, you also have a section for recipes including one for a ‘Brownie dans un mug’. Is cooking your secret passion??

I’m essentially a “sweet” person… you know, the kind who loves sugar! So once in a while, yes, I enjoy cooking some deserts, but I’m very far from being an expert. Another passion of mine is running. I’ve been running more or less regularly for the past 2-3 years, and I’m even planning to try to run my first marathon next year!


 

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.

 

CukeUp! 2015: Call for Papers

cukeup_2015cfp

After a sold out 2014 conference, CukeUp! returns to London for its fourth iteration. The conference brings together all stakeholders who use BDD for two days of talks and workshops, helping teams to crack complex software problems. We’re on the look out for talks that will inspire and educate others around BDD and it’s wider practices – so if your team is just starting out on the road to BDD, you’ve got some nifty tips to test the untestable or you’ve got a use case on how to bring technical and non technical teams closer together – we want to hear from you.

We are planning for talks to last around 30 minutes, so keep introductions to a minimum and allow time for questions!

To submit an idea for a talk head over to the Call For Papers page. We’re especially keen to hear from people who haven’t spoken at conferences before. If you are worried about presenting alone, feel free to pair with someone on your team. The CukeUp community is very friendly and this is a safe way to dip your toes in the public speaking arena. If you need some help a great place to start is here.

If you have any questions then please contact us at cukeup@skillsmatter.com.

The CfP will close on January 23rd. All presenters will be contacted the week commencing February 2nd.

Please be sure to read the Skills Matter Code of Conduct. It outlines what we expect from our speakers and guests so that we can continue to provide a fantastic environment to learn and share skills for everyone.

While It’s Compiling: Skills Matter interviews Martin Odersky

martin-odersky

On the day the Scala eXchange welcomes more than 500 speakers and delegates to the Business Design Centre, Skills Matter catches up with keynote speaker Martin Odersky. The German computer scientist is the creator of Scala and the founder of Typesafe, a company to support and promote Scala. Currently a professor of programming methods at EPFL – the Swiss Federal Institute of Technology – in Lausanne, Switzerland, Martin Odersky told us about keeping Scala lean, which industries love Scala the most, and whether Scala can remain the essence of what Typesafe is and does.

SCALAX-141000x150px-black


Scala was first born in 2003. Has there been a lot of pressure to keep adding features? And have you always been convinced about the need to keep it lean?

There’s always pressure to add features. Users always want new features. So we tried for a long time to keep the feature set down to a reasonable size and…hopefully we’ll be able to make it even smaller.

You have described Scala as a fusion. Can you explain this in a little more detail?

The idea underlying Scala is that object-oriented programming and functional programming are not opposites but two sides of the same coin, and that one gains a lot by merging them. That’s not an amalgamation, taking all these features from functional programming and adding all these features from object-oriented programming – that way you would get a fairly large language. It’s really a fusion…So for example, the functions in Scala themselves are actually objects. Functions and objects are, in Scala, very much the same thing. And the same holds (true) for a lot of other things. Unlike many other languages that have classes and functions as types separately and then algebraic data types separately, we have one concept which is essentially classes forming a hierarchy. They serve as a framework for doing pattern matching as well, which in other languages requires an algebraic data type. So in that sense, Scala tries to have only a few concepts but very generally composable ones.

Are there particular organisations or industry sectors in which Scala has proven particularly successful?

We’ve got quite a few. I think its used everywhere there’s a JVM and nowadays it’s starting to be used on the client with Javascript as well. But there are a few verticals where Scala particularly common: It’s very much established by now in Big Data and machine learning. There, Scala is probably the number two language behind Python. Another big vertical is e-commerce – think of Walmart Canada, and many others. Another one is the finance industry – the most prevalent in London – so in the banks and the hedge funds Scala is also very common.

What have the main criticisms of Scala been and how have they been remedied?

Some of the difficulties comes from the user community, because now you have Java programmers and Haskell programmers that form part of the same community and that has proven to be a much tougher challenge than the technology. Sometimes these communities don’t get along very well, sometimes its very hard to read somebody else’s Scala code because there are different ways to write the same thing. We try to help by establishing simplicity as a criterion for a middle ground.

What was your vision when you set up Typesafe and have you been surprised by its success?

Scala already was a success and we had just run the first Scala Days..there was a lot of excitement and also a lot of people from industry – a lot of companies like LinkedIn, people from Swiss banks, Foursquare etc were talking about it. And that’s when it dawned on us that it really had bypassed the capabilities of just a research lab at my university. It was becoming too much work to continue to support it and also, we could see the opportunity. So we joined with the Akka team in 2011 to form Typesafe, and Typesafe now is I think still very much true to these roots…but it has also developed the reactive space starting with Akka, with middleware that is more application oriented and less language oriented.

A question about the direction Typesafe is going and its ongoing support of Scala, given its development of other products such as Akka and Play for Java developers. Will Scala always remain at the core of Typesafe?

Yes, I do think so. Scala is very much the essence of what Typesafe is. Internally everybody does Scala and everybody loves the Scala APIs. That’s not to say we don’t also do Java and Java 8 for the bigger market – that’s very sensible and we have to do that. But at its roots, it’s a Scala company and it will stay one.

You were a student of Niklaus Wirth in Zurich. How did that experience influence you?

When I was young, I was sort of a compiler hacker…and Modula 2 was a new language at the time and for me a very exciting language, so I wrote a Modula 2 compiler. I was actually on the cusp of joining Borland, at the time the big programming language and software company, but I decided to wait and finish my masters thesis. And then I realised that I had fun doing research so that’s when I decided not to go to Borland but to go to Niklaus Wirth – the inventor of Modula 2. At the end of my studies in Zurich (with Niklaus Wirth), I decided that functional programming was really cool and that I wanted to do more, so that’s why after Zurich I ended up doing much more functional programming.

You have had a long, varied and impressive career. What has your motivation and objective been throughout?

In Zurich with Niklaus Wirth (I was working with) very practical languages, which were also quite efficient, which functional programming wasn’t at the time. Towards the end of my PhD I discovered that functional programming could be very elegant and theoretically well founded, and that appealed to my sense of elegance and rigour. After that, I always wanted to bring the two together – to do something that’s really practical but that has the elegance and rigour of functional programming. So that led me to the work to combine functional and object oriented programming, first with Pizza, then with GJ, afterwards with Funnel and Scala.   The central question was always whether we can take the proven mainstream – object oriented programming – and the more academic notion of functional programming and combine the two harmoniously, keeping the good parts of both? That has driven me for most of my professional career.


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.

 

While It’s Compiling: Skills Matter interviews Rebecca Grenier

For an insight into December’s Scala eXchange brought to you by Skills Matter, we caught up with Rebecca Grenier, who’ll be speaking about Slick – a relational database mapping tool that brings Scala’s features to database interactions. Until recently a Software Developer for EatingWell Magazine in Vermont where she used Slick to transition from a PHP website to Scala, Rebecca is now working her magic on the University of Vermont’s websites. She told us about the hunt for experienced Scala programmers in Vermont, eating well at EatingWell, and her efforts to make the image of women programmers a more normal one.

Becky And The Hackettes

‘The Hackettes': left to right – Megan Brown, Rebecca Grenier, Buffy Miller, and Sarah Lindberg.


SCALAX-141000x150px-black

Only 2 days left – Book your ticket now!


What are the coolest things about (the relational database mapping tool) Slick?

Slick is a great showcase for Scala itself, using some of Scala’s best features to improve how programs can work with relational databases. These features include static type checking, the functional collection methods, and for expressions.

What have been the main challenges faced during EatingWell’s transition from a PHP website to Scala?

Here in Vermont the biggest challenge has been lack of any experienced Scala programmers to hire. I hear they are hard to find everywhere but here they do not exist (in our experience so far).  Every single new hire needs to not only learn our specific systems but also the Scala programming language and often the whole functional programming paradigm as well.  Recently we have found some expert Scala consulting companies located in the larger cities who are helping a lot.

What did you love most about working as a software developer for EatingWell Magazine?

I loved working with the EatingWell editors and food writers as I am a wanna-be healthy eater and home chef myself and their recipes and articles are hands-down the best anywhere.  It was challenging working for a company who was so focused on print-media rather than digital, being in a support role and not a member of the core business.

You’ve taken a one-year term position at the University of Vermont to work on the Department websites. Do you see a dearth of females students focusing on tech-related subjects?

Well, my work at the Communications Department hasn’t led to a lot of involvement with the student body yet, but all the statistics I hear about women entering into STEM fields are not great.  I believe the key is getting younger girls involved with programming and computers.

Tell me about Becky and The Hackettes?

Becky and the Hackettes was a dream I had ever since I first heard of the Vermont Hackathon.  I wanted to see an all-women’s team compete.  The first year I participated (which was the second year of the Vermont Hackathon), I did not know any other women programmers who could participate, so I joined a men’s team just to see what it was all about.  It was fun but I was dismayed to see the low percentage of women, which only dropped further as the night got later and later.  The next year I had met some other women programmers who were willing to join me and four of us competed as “Becky and the Hackettes”.  Despite the fact that almost none of us used the same programming languages (if you want an all-women’s team you have to take what you can get), we worked together well, created a great application and took home second place.

Any other initiatives you’re involved in to encourage women to get involved in tech and coding?

I have also been very involved with GirlDevelopIt, which is an initiative that offers low-cost introductory tech classes to women to try and get more of them into the field.  I have been a Teacher Assistant to many classes, taught a few, and created a totally new class on “How to get your first job in tech”, which actually did lead to at least one person getting their first job in the tech world. I also frequently am asked to serve on panels that want to ask questions to programmers, which I try to do whenever possible to hopefully make the image of women programmers a more normal one.

You’ve been a web programmer in Vermont for more than decade – why there, rather than a tech centre like San Francisco or New York?

I stay in Vermont because this is where my family is and because I love it here. I love the seasons, I love our brave and independent politics, our Senator (the only Independent in congress) Bernie Sanders.  I love our rural rednecks and “city” hipsters, and that they are only a 30-minute drive from each other. One of these winters I’m going to take up skiing, too.


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.