Many companies act like there is a great wall of China between professional developers and developer communities when recruiting. They don’t dare to tutor students, have interns or aid free software projects. They’re afraid, don’t see the benefits, and argue that everything should be kept separate.
In doing this they are dismissing an excellent way of recruiting top developers; dismissing the methods that have been used successfully by companies such as Canonical and Google. I’ve looked at some of the ways we’ve been hiring Qt developers.
At the end of 2004, teacher Ola Anders Andersen asked me if the Skolelinux project had a stopmotion program which would help 10-11 years old kids make small videos, moving objects around picture by picture.
The application obviously doesn’t need to be on par with what Aardman Animations used to make Wallace and Gromit, the teacher said. A simple, easy to use stopmotion app will be both fun and educational for the kids. Since there was no stopmotion app available as free software, he asked Skolelinux to help. They contacted Gjøvik University College, asking the students Bjørn Erik Nilsen and Fredrik Berg Kjølstad to make the application. Both were final year Bachelor students back then.
With aid of Herman Robak from Opera Software and university teacher Øyvind Kolås, Bjørn and Fredrik worked for half a year making Stopmotion using Qt. They got a lot of feedback from teachers, students and the community. They were also contacted by an engineer from Aardman Animations who gave tips on must have features, making sure relevant professional tools were considered.
The Stopmotion application is still popular among hobby enthusiasts, students and other people around the world. It’s updated regularly with patches and translations now supporting 15 different languages. The project was awarded with grade (A) and the ‘Eureka Award’ at the Gjøvik University College. They later won the Rosing Student Award, which is a prestigious creativity prize from The Norwegian Computer Society in Norway.
After Bjørn finished his Bachelor, he went to the Norwegian University of Science and Technology finishing his M.Sc. in Computer Science. This before he started as a full time Qt developer. He has held several talks at Qt Developer Days. The teacher Øyvind Kolås now works as a senior engineer at Intel. Fredrik is currently pursuing a PhD in Computer Science at MIT.
Casper van Donderen joined as a Qt Nokia developer in 2011 after an internship. He first started with Qt as an intern at Philips Electronics in India, making novel input methods for television. He used Qt on a PC-application connected to a smart TV for rendering text input. After Philips, he went back to the Utrecht University, Netherlands to finish his bachelor degree. Going to the Maemo summit in Amsterdam 2010, he was talking to Jesper Thomschuetz and Alexandra Leisse about a half year bachelor graduation project. After an interview, he worked at the Oslo office for half a year comparing HTML5 and QML, making an interesting report on early HTML5 and QML performance.
After the exam, Casper reconnected with “old” Nokia colleges in Oslo. Now he are working on improving the documentation and creating Qt examples, making sure that they end up in the Qt SDK. In addition he is engaged in our regular project fair here in Oslo, which is a “seeing is believing” meeting for one or two hours. Our Qt developers are showing each other new research and features which may or may not become a part of Qt in the future.
Free Software Communities
Frederik Gladhorn started at Nokia in the summer of 2010. He has studied at the Universität Stuttgart and Universidad Politécnica de Madrid. After he graduated, he started at Bosch R&D. So how is this relevant to Qt? He contributed to different KDE projects quite some time before staring at Nokia developing Qt. He is known as a great problem solver. One of the projects Frederik has worked on is Parley, a vocabulary trainer. It’s a neat application to help you memorize things, using the spaced repetition learning method, also known as flash cards. In addition, he has tutored several students with Google Summer of Code projects.
Avgoustino Kadis at Imperial College London was one student Frederik tutored. Avgustino made an automatic translation and retrieval of unknown words from a text. Now Frederik works on Qt accessibility on Linux, making it play nicely with the AT-SPI2 standard and other free software products. Frederik is #2 from the left on this picture, tutoring students working on the KDE Network Manager back in 2009:
Google Summer of Code, KDE and Skolelinux are just a small fraction of projects where professional software developers tutor students. The KDE project has tutored more than 200 students using Qt through Google Summer of Code. The Skolelinux project has tutored more than 20 projects, involving 2-8 students in each project. Many of these projects use Qt.
Todays professional software developers first learned about Qt through free software, then graduated to internship, or a student project. Many have been tutored by professional software developers. There are no artificial divide between a student or a professional contribution. It’s a team effort. Making it even more interesting is that Canonical is recruiting this way. Google does it. Yes, Nokia does it of course. I hope you are tutoring students too. Software engineers are still in demand due to the smartphone explosion and new areas of Internet, apps and automation going forward. Tutoring students with free software using Qt, will make it easier for you to recruit.
Just as we speak I’m tutoring a student project which improves the user experience on Plasma Active. More on that in a later blog. Stay tuned