A little bit of Spring and MQTT

I’ve been involved with Spring (the Java framework, not the season…) for a couple of years now – since I joined VMware in 2012 through the former SpringSource organisation in the UK – and I’ve remained “involved” with it through my transition to Pivotal and the framework’s evolution into Spring 4 / Spring.IO under Pivotal’s stewardship.

To be clear, although I’ve been a “Java guy” / hacker through my time at IBM, I have never been a hardcore JEE coder, and my knowledge of Spring itself has always been limited. My good buddy Josh (MISTER Spring, no less) has done his best to encourage me, I briefly played with Spring Shell last year with @pidster, and the brilliant work done by the Spring Boot guys has been helpful in making me look at Spring again (I spoke about Boot – very briefly, as a newcomer to it – at the London Java Community unconference back in November).

Taking all of that on board, then, I’m still an absolute Spring n00b. I recognise a lot of the benefits, I see the amazing work that has gone into Spring 4, and I’m excited by the message and mission of the folks behind the framework. I would say that though… wouldn’t I? 🙂

[considering this is my first blog post in a while, I’m taking a while to get past the preamble…]

This week, I chose to flex my coding muscles (!) with a quick diversion into Spring Integration. With a long history in WebSphere Integration back in my IBM days, this was both something of return to my roots, and also a learning experience!

With the new Spring.IO website (written with Spring, and hosted on Pivotal Web Services Cloud Foundry, fact fans!), the Spring team introduced the new Spring Guides – simple and easy-to-consume starter guides to the different technologies available in the Spring family. I knew that the team had added MQTT support via Eclipse Paho, so I thought I’d take a look at how I could modify a Spring Integration flow to take advantage of MQTT.

Incidentally, there’s complete reference documentation on the MQTT support, which is helpful if you’re already familiar with how Spring Integration works.

The resulting simple project is on Github.

Once I’d figured out that it is useful to ensure the latest versions of the various modules are listed as dependencies in the build.gradle file, it wasn’t too hard to adapt the Guide sample. In the example, the docs lead a developer through creating a new flow which searches Twitter and then passes tweets through a transformer (simply flattening the tweet sender and body into a single line of text), into an outbound file adapter.

The bulk of the changes I made were in the integration.xml file. I wanted to replace the file output with the tweets being published to an MQTT topic. To do that, I added the int-mqtt XML namespace information to the file, and configured an outbound-channel-adapter. It was also necessary to add a clientFactory bean configuration for a Paho MQTT connection. You’ll notice that, by default, my example posts results to the test broker at Eclipse (iot.eclipse.org port 1883 – an instance of mosquitto for public testing). Full information on how to build and test the simple example can be found in the project README file.

Thanks to my colleague Gary Russell for helping me to figure out a couple of things, as I was a Spring Integration newcomer!

Advertisements

Pivotal CF – the enterprise platform for software development

My boss and mentor, James Watters, just blogged about the launch of what we’ve been working on since before Pivotal was formed earlier this year – Pivotal One, powered by Pivotal CF (based on Cloud Foundry).

As I wrote back in April

Pivotal is bringing together a number of key technology assets – our Open Source cloud platform (Cloud Foundry), agile development frameworks like Spring, Groovy and Grails, a messaging fabric (RabbitMQ), and big, fast data assets like Pivotal HD.

What we’re announcing today delivers on that promise and our vision – the consumer-grade enterprise, enabling organisations to create new applications with unprecedented speed. The cloud – infrastructure clouds, IaaS like Amazon EC2, VMware vSphere, OpenStack, CloudStack, etc – can be thought of as the new hardware. It’s like buying a beige server box back in the 90s – the IaaS layer gives you a bunch of CPU, network, and storage resources, and for your application to use them, you need a layer in between – an operating system, if you like. We’ve spoken of our ambition for Cloud Foundry as “the Linux of the Cloud”, and it already runs on all of those infrastructures I’ve listed above – in the future, hopefully more.

Why is that important? Why should developers care about this Platform (PaaS) layer? A development team shouldn’t have to go through an 18 month delivery cycle to deliver an app! We’re putting an end to the whole cycle of calling up the infrastructure team, having new servers commissioned, operating systems installed, databases configured etc etc just to get an application deployed and running. When you first push an application to Cloud Foundry, and can then bind data services and scale out with simple individual commands, it really is a liberating experience compared to what traditionally has been required to get your application running. We’re making it quicker and easier to get going – a friction-free, turnkey experience. You should just be able to write your code and make something amazing.

We’re also delivering choice – of runtimes and languages, data services, and also importantly, a choice of “virtual hardware”. When Comic Relief ran in the UK this year, in order to avoid any risk of hardware failure (we all know there’s a risk that Amazon might go down), the applications were deployed on Cloud Foundry running on both Amazon EC2 with geographical redundancy, and on VMware vSphere – no lock-in to any cloud provider, and the developers didn’t have to learn all of the differences of operating different infrastructures, they just pushed their code. We’re happy to know that it was a very successful year for the Comic Relief charity, and that Cloud Foundry helped.

Pivotal One also includes some amazing data technologies – Pivotal HD (a simple to manage Hadoop distribution) and Pivotal AX (analytics for the enterprise). We recognise that as well as building applications, you need to store and analyse the data, so rather than just shipping a Cloud Foundry product, we roll up both the elastic scalable runtime, cutting-edge technologies like Spring.io, and and our big data offerings. That’s different from many of the others in the same market. We’ve been running our own hosted cloud, now available at run.pivotal.io, on AWS for over a year now, so we’ve learned a lot about running systems at scale and Pivotal One can do just that.

Above all, I wanted to say just how excited I am to be part of this amazing team. It is an honour to work with some incredibly talented engineers and leaders. I’m also personally excited that our commercial and our open source ecosystems continue to grow, including large organisations like IBM, SAP, Piston … it’s a long list. We took out an ad in the Wall Street Journal to thank them. I also want to thank our community of individual contributors (the Colins, Matts, Davids, Dr Nics, Yudais… etc etc!) many of whom, coincidentally for me, are in the UK – check out the very cool Github community where some of their projects are shared.

I’m convinced that this Platform is the way forward. It’s going to be an even more exciting year ahead.

A small selection of other coverage, plenty more to read around the web:

Upcoming speaking gigs

Fresh from a quick presentation and supporting Hackference this past weekend (more on that soon), I’ve turned my attention to the next couple of months of travel and events. There’s a lot of stuff happening!

Firstly, to my enormous regret I have to miss the Brighton Mini Maker Faire this coming weekend – if you are in the UK then it is a great day out, and I encourage you to go along, with or without a young family in tow.  I wrote about attending the first one in 2011, and helped as a volunteer last year. I’m sure it is going to be fabulous!

platform

Instead of being in the UK, this coming weekend I’m headed to Santa Clara for Platform: the Cloud Foundry Conference – our first developer summit for the whole Cloud Foundry community. On the back of partnership announcements with companies like IBM, Savvis and Piston, this is looking extremely exciting. I don’t have a formal speaking slot, but I’m going to be heavily involved and have helped with the planning and scheduling. I’m hoping to get a couple of topics onto the agenda for the unconference slot on the Monday afternoon, too!

Follow along via the Twitter hashtag #platformcf

SpringOne2GX

Immediately after Platform is the annual SpringOne 2GX event. There has been a huge amount of activity in the Spring community over the past couple of months and I think it is safe to say that this year there is some major excitement around where Spring has been headed. I’ve been privileged to spend some time with folks like Adrian Colyer recently, and I know the entire team has been working hard on many projects, so expect some very interesting news about the evolution of Spring and its capabilities. I’m speaking on the Cloud Foundry track, on the first morning of the conference, with my good friend (and Spring Developer Advocate) Josh Long, covering the topic “Build your Spring Applications on Cloud Foundry”.

The Twitter hashtags are #s2gx or #springone2gx

Later on the same day I’ll be zipping up to San Francisco to participate in a panel discussion at CloudBeat 2013, alongside my friend Diane Mueller and others. The panel topic is “Is PaaS Still Coming?” and we’re on at 1.50 in the afternoon slot. If you are interested in coming along, full event details can be found here, and you can save 20% on a ticket (there is a bunch of great content throughout the event, so if you are in the Bay Area it looks worthwhile). Hashtag for this one is #cloudbeat2013.

[pause for breath… and relax]

structure-europe_media-badge_see-me-speak

The following week I’m enormously honoured to have been invited to a panel at GigaOM Structure Europe, at home here in London.  The topic of this one is “DevOps: Is Synchronicity Here?” and rounds out day 2 of the event by taking a look at the current state of DevOps. This link should save you 25% on a ticket and I’d be delighted to see you there.

Next up, the speaking circuit takes me to Aarhus in Denmark, which is exciting as I’ve only ever visited Copenhagen before. I’ll be at GOTO Aarhus 2013, speaking on Cloud Foundry and why it is a great platform for running Java apps in the cloud.

Later in October I have a trip to Singapore, to talk to Pivotal customers about the products, projects and technologies we are developing, at our first Asia Pacific Pivotal Summit.

Finally – last but by no means least – to finish off October, I have two talks on the slate at JAX London 2013: “Run your Java code on Cloud Foundry” and (with my non-Pivotal, Open Source Community hat on) “Eclipse Paho and MQTT – Java messaging in the Internet of Things“. Both of these are on October 30th in London. If you want to get a ticket to come along to JAX London (it looks jam-packed with great content) then the promo code JL13AP should get you a 15% discount on the ticket price.

Embracing my inner geek and fandom: Nine Worlds

In February, I backed a Kickstarter campaign for a new conference event called Nine Worlds Geekfest – an event which promised to be a first-of-its-kind mixed genre gathering of geeks, sci-fi fans, gamers, cosplayers and (as you can read below) lots of other fun topics.

Whether you’re into board gaming, film and film-making, Doctor Who / Torchwood, science, feminism, Tolkien, SF&F academia, video games, partying like a dancefloor demon, role play gaming, Discworld, My Little Pony, social gaming, SF&F literature, knitting, Harry Potter, creative writing, Star Wars, queer fandom, buying cool stuff, steampunk, open culture, Star Trek, skepticism, costuming, comics, or fanfic, chances are you’ll find something that rocks your world. [from Lanyrd]

#nineworlds #geekery The event took place at two hotels near Heathrow this past weekend, and I took a rare Friday off work to be there from the start, staying until late on the Sunday in the end, for reasons which I will mention in a moment. If you follow me on Twitter, no doubt you’re already aware of my weekend activities 🙂

Aside: perhaps it isn’t much of a surprise to those who know me, but yes, I am a geek. I like science fiction and comic books. I’ve enjoyed the Whedonverse (Buffy, Angel, Firefly, Dollhouse etc), Star Trek, Babylon 5, superhero movies based on cartoons and comics I grew up with, Star Wars, The Matrix, Doctor Who, etc etc. In fact, one thing I have really started to get back into this past year has been the latter, Doctor Who… I grew up reading the Target novelisations (Peter Davison was my Doctor but I’m a fan of the whole series), avidly listen to Big Finish audio plays, and listen to several of the great podcasts about the show from fellow fans. It is also the 50th anniversary year of the show, and I’ve also been lucky enough to attend BFI screenings of showings from the Tom Baker and Sylvester McCoy eras, with Eccleston and McGann screenings to come.

What kind of a fan or geek does that make me? Doesn’t matter. Go listen to this great (short) podcast from Shannon, or read her great blog post of the same. No really, follow that link and go read it, I’ll wait. She makes a beautiful statement on how we should accept one other.

… and that brings me back to where I started, Nine Worlds. The team that put the event together set out to create an interesting, fun, volunteer-run, inclusive and diverse event – and that is the standout memory of my 3 days at the con. The range of tracks, fandoms and cultures on offer and on display was outstanding and I enjoyed the opportunity to mix with all kinds of folks and make new friends from across all of them. I had a lot of fun, and met a lot of fantastic new people I’m looking forward to seeing again either next year, or at events in between. I went to a couple of Red Dwarf talks – Robert Llewelyn and Chris Barrie were both great, funny and engaging speakers in the main theatre. I was late to arrive at the Film Fest Quiz and as a result ended up spectating, but it was great fun to see cheesy clips from 1980s horror and teen crush movies! The evening comedy session on the Friday with Helen Keen was hilarious. It was also good to see her moderate the Saturday morning “Future” panel with Charlie Stross, Cory Doctorow, and Lilian Edwards, even if I did leave that one feeling despondent about society’s ability to be optimistic about the potential benefits of technology and its ability to decide to use it for good!

To satisfy my Dr Who obsession I spent a large part of Saturday on the dedicated track. I wandered past Andrew Cartmell in the trade room and stopped for a chat and an autograph (great to talk to him about the Big Finish “Season 27” Lost Stories, and happy to discover that he’s also a fan of the line “unlimited rice pudding!!” from Remembrance of the Daleks). Simon Fisher-Becker’s session competed with a bunch of others and saw very low attendance, but Simon gamely just said “why don’t I just come down off the stage and sit in a circle with you”, so 5 or 6 of us got to quiz him in a very casual setting about his life and career, which was lovely. Later in the afternoon I found myself on the wrong side of the RTD vs Moffatt debate, which got pretty passionate… The evening session was a hilarious and great Big Finish panel with Gary Russell, Joe Lidster, Una McCormack, Matthew Waterhouse, James Swallow and Robert Dick – it just reinforced my love for the company and the amazing quality output they produce, as well as prompting me to want to go off and buy more of their stories!

Big Finish Panel

Sunday saw additional Dr Who panels, including Chicks Unravel Time (I’ve now bought that book of essays); the Ones You Love to Hate, about villains in the series; and one on companions. I was disappointed that none of the panelists really mentioned Turlough, but someone else in the audience did say that he was her favourite, and I’d have to agree that he was one of the more interesting additions to the TARDIS crew in the past 50 years.

On the technology side, I got to play with an Oculus Rift developer headset. Very impressive stuff, and it left me wishing I had jumped on board at Kickstarter time.

Another aside: I’ve posted photos on both Flickr and Facebook, depending on your preference. I need to replace the Flickr set with better resolution copies.

Last evening fun - geek singalong

The most fun I had all weekend, though, were the singalongs. I arrived early for the Once More with Feeling session and got talking to the pianist, David Merriman, about how he was going to run it… and ended up being the man nearest to the microphone when we needed to get things started and people gathered around the piano! My intervention(s) led to me being identified as “the music guy” (sorry, David!) around the con halls the next day, and several people insisted that I had to stay late for the Sunday evening sci-fi singalong as well… which ended up incorporating a spontaneous recreation of the end scenes of Dr Horrible’s Sing-a-long Blog, when I jokingly shouted “solo number!” to a cosplayer dressed as Captain Hammer. You had to be there, but it was so, so much fun. Evidently I’ve impressed the Whedon track team enough that they want me involved next year…

Oops #schwag #books #autographs #lego #geekout I left with a stash of goodies (including a number of signed books)  which will only reinforce my fan tendencies… I’ve marked up with picture with notes on Flickr if you are curious enough to look at what I picked out.

Criticisms? none really, just learning points I hope. Firstly it was unforgivable for the venue to a) charge for wifi at all, let alone b) not flag up their discounted rate to con guests as they checked in (should have been £5/day not £15/day if you were attending); and then they locked access to a single device, which was rubbish – especially given that many sessions were in the basement where there was no mobile reception. The bar was also expensive, and I was amused to discover that the cash only con-bar was actually more expensive than the main hotel (£4.90 a bottle at the con-bar; £4.50 a pint at the hotel bar; I took my choice). I’d hope both things can be negotiated in future years. I haven’t booked my return ticket for next year yet… but it is looking pretty likely.

Thank you to everyone who made Nine Worlds happen – organisers, volunteers, track leads, and speakers. And thank you to everyone who attended… you were all Brilliant!

There’s so much more I could say about the weekend, but then lots of people had different experiences, from different tracks – check out the various write-ups on Lanyrd.

I’m hoping to record a short segment for The Doctor Who Podcast covering the Dr Who track soon, so if you are a fellow subscriber, listen out for that.

Keeping the faith in Shoreditch Village Hall!

Last month, my friends at Shoreditch Works (a pair of amazing co-working spaces in the Silicon Roundabout area) ran a Kickstarter campaign to support their goal of repurposing an empty warehouse building in the area into a “Village Hall” – a place to run events, offer community time, mentor youngsters, help startups, etc.

They crushed it with the the campaign, raising well over their original target, and ended up with funds to do things like offering free desk space to local startups, and apprenticeships in community management.

We had a small celebration towards the end of the fundraiser, a few weeks back, and I said a few words. You can hear some of them in the video below. I said some other things too that were far more emotional and gooey than I may have intended on the night, but it was off-the-cuff.

Yesterday, the team heard that it’s unlikely that the building they had originally targeted will now be available, as the lease has gone elsewhere. The hunt begins for an alternative, suitable, location.

I know this is a huge blow to all of those involved, who worked hard both on the campaign, and on all of the logistics and preparations around the creation of the new space. Of course, it is also disappointing to many of us who backed the Kickstarter and hoped for the Village Hall to be opening in the next few months.

To the team, I say this – exactly what I said on the night of the finale – I believe in you. We believe in you. This is going to happen! Shoreditch does need exactly what you had in mind, and I know we as a community can still make it happen. A setback? yes, but just a setback, nothing more.

Let’s do this thing!