What is an intelligent and motivating way to foster open source contribution AND innovation? A really good option is offering a Hack Week. Don´t know what this is? Hack Week – at least at SUSE – is a week-long kind of development `sprint´ permitting our developers to dedicate their time on special projects. No matter if they want to give a shot at new and fancy development ideas, if they want to work on something entirely of their own design, or if they want to invest more time in an already existing project, they can just do so as long as their engagement is related to free and open source software.
In short, Hack Week is the time of the year where our developers can experiment with code and freely exercise their creativity, without being interrupted by their daily work. Hack Week already started back in 2007 and has quickly become a fixture in SUSE’s engineering calendar. Currently we are celebrating Hack Week #14! Everybody can submit project proposals, and everybody is free to join any of the proposed projects. This is really cool, as often you end up collaborating with people you didn´t know (well) before, exchanging opinions and expertise and contributing to tools you previously could not imagine they would be possible. Of course there are also “lone wolf” projects where you can act out your individuality.
But still, emphasis is put on the networking and collaborative nature of Hack Week, as it brings together virtually AND physically hundreds of hackers at the SUSE engineering sites around the globe to collaborate on open source. Hack Week thereby is a happy and constructive place. The basic philosophy and atmosphere stimulates an open-minded and respectful interaction: support ideas you like, ignore ideas you don’t like; help to improve ideas of others, and accept help to improve your own. Hack Week also provides unique opportunities to learn stuff, to open one’s mind to the unknown, to broaden one’s horizon, to read, listen and to be taught by others.
Past Hack Weeks brought us projects that led to a an extension of our SUSE portfolio (for example the ARM port, or Ceph integration), that benefit the open source ecosystem in general ( for example Inqlude, a Qt library archive), or that broaden collaboration and communication options for the community (for example Jangouts, an open source video conferencing tool). And we are really very excited to see the outcome of this year’s Hack Week.
One of my Hack Week projects is to dig out fun and interesting projects and write about them for our daily `Geeko Hack Week Gazette´. And I thought to share some of our reports with you to give you a better idea of Hack Week.
A Project in its 4th Hack Week
In her new blog post about the social program during openSUSE Conference 2016, my colleague Tanja Roth just reminded us that Hack Week #14 was kicked off at oSC16 with an amazing project which had started already back in Hack Week #11, and originally was initiated by our President of Engineering Ralf Flaxa. And fortunately the project members never stopped it – the SUSE Music(ian) Space, also known as SUSE Band. With every gig, they are getting better and better, and soon we will have to rent big halls and ask for an entrance fee. Find a teaser here.
And by the way – the SUSE Band is still looking for a catchy name – so why don´t you dig out your creativity and make a proposal?
Banana Banana …
Setting up his own tiny little OpenVPN gateway server is the project Christoph Wickert, who just joined SUSE in March 2016, is working on. No big deal you think? Well, his server is a Banana Pi running SLES 12 JeOS.
In future, he will be working remotely from his home office. In order to simplify his setup, his goal is to implement a secure and highly available connection from home to the SUSE offices through OpenVPN, all configured with Salt. Currently he is playing around with a KVM image based on JeOS 12 SP1 – but with the upcoming SP2, JeOS will have the Salt minion integrated, which makes it much easier. And Banana Pi is it because it offers better network capabilities than other alternatives. “My project is no rocket science”, Christoph said, “but the side effect is that it helps me to learn more about JeOS, advanced OpenVPN options with failover, SUSEfirewall2, and also Salt.” And who knows, probably other home workers can somehow benefit from his `gateway server set-up on a Banana Pi´ experiences.
Cool Tool for openSUSE
With SUSE Linux Enterprise, we ship integrated support automation and self-help tools that help reduce problem resolution time for SUSE Linux Enterprise and application related issues. One of these tools is supportconfig. It allows you to gather system troubleshooting information in an organized way, and you can create a tarball file that can be attached to a service request or sent to a support engineer.
For openSUSE, no such tool exists so far. All system useful for debugging has to be put together manually. This is very much time consuming and error-prone. Thus Egbert Eich decided to port supportconfig to openSUSE. Egberts goals for the project are to:
- adapt the tool for openSUSE,
- ‘modularize’ it, this means to gather the scriptlets for each investigated area into a separate file; ultimately, each such module should be shipped with the software component it addresses,
- add support to retrieve data from journald,
- and to improve the output format of some scripts.
Even if the project makes progress, Egbert anticipates that he will not be able to finish the work during Hack Week 14. Why? Because he encounters the challenge of creative people: while working on a certain topic, new ideas pop up consistently how to improve things.
Branding Made Easy
DocBook Authoring and Publishing Suite (in short DAPS) provides a tool set for easy creation and publication of DocBook XML sources on Linux. DAPS lets you create HTML (including webhelp), PDF, EPUB, man pages, and other formats with a single command. DAPS has been invented and in big parts developed by my colleague Frank Sundermeyer. And of course we use it for our SUSE documentation to generate all the different output formats from our DocBook XML sources. For this purpose, DAPS uses the suse-xsl-stylesheets.
Currently three different suse-xsl-stylesheet brands exist – for SUSE, DAPS, and openSUSE. Branding is done by adjusting the xsl-stylesheets manually, a time-consuming task. Frank back in Hack Week 13 started a project which he now continues to work on together with some other colleague.
The objective is to find a method to easily change the branding. Good luck guys – this would not only help us in documentation, but from what Frank told me this is also the number one enhancement request reaching us from DAPS users outside of SUSE.
Selling Cables, Hannes?
While I was prowling around yesterday together with our `two-weeks-off-school´ intern Hassan to find colleagues eager to talk about their Hack Week projects, we stumbled upon Hannes Reinecke. Hannes told us that he is working on a project regarding Fibre Channel over Ethernet (FCoE). He wants to enable FCoE over virtio-net and run run it in a KVM guest. Thus, he said, he would finally have a ‘real’ Fibre Channel host in a KVM guest, which hopefully also will enable ‘real’ Fibre Channel testing, like link failure, multipath operations, and much more. One highlight of our conversation was when Hannes tried to explain the use of different cables to Hassan.
While I had a look at the Hack Week projects, one special title really terrified me: `Orca – hunting cephalopods for fun and dinner´. Thus, according to the saying `face your fear and it will disappear´, I tried to find out more about this project initiated by Lars Marowsky-Brée. Here´s an excerpt from Lars’ own description:
“Orcas are amazing animals. They are playful, intelligent, great swimmers, and very social. They also love to play with their food, hunting down their prey with advanced strategies – understanding where its prey hides, how it will try to escape, and how to overcome those tactics – and having a lot of fun doing so, before relentlessly tearing it apart, killing it, and eat it. Not necessarily in that order. Oh, and they have the right color scheme.
This forces their prey to also improve and adapt more advanced strategies and tactics. In this arms race, both sides evolve and improve: the evolutionary pressure has made cephalopods highly intelligent, adaptable, and resilient. Unfortunately (for them), they are still very tasty. So we should exert more evolutionary pressure on individuals to help them stay alive as a species.”
My word – I never ever ever ever read a more descriptive explanation of a technical project – and these are just the first two paragraphs from the project description.
At the end, I understood that the project aims to provide enhancements for Ceph http://ceph.com/ , a distributed object store and file system designed to provide excellent performance, reliability and scalability, and the foundation of our SUSE Enterprise Storage. More precisely, the project wants to:
- make Ceph more robust in the face of faults
- improve Ceph recovery
- increase customer confidence in their deployed clusters
- improve supportability of production clusters
This sounds more than promising – and we are all looking forward to the final results!
Great Motto: Code Together!
Right in time for Hackweek 14, our genius video team at SUSE released the latest and greatest video parody. After three years in a row jumping on new hype bands with newfangled songs, the creative team around Russ Dastrup this time finally harks back to the time-tested vintage treasury of songs from … the BEATLES! But instead of `Come Together´ the next generation now shouts out “`Code Together´ If you haven´t seen the video yet, just take the time and watch it on the SUSE Video Channel on YouTube.
And this is not just LIPSYNCH but REAL ART! You might recognize some well-known SUSE employee – Jeff Price who literally drums his heart out of his body, and Sean Rickerd who flips out with his bass guitar.