Friday, October 21, 2011

New KDE book, Beginning KDE Development!

This week has been amazing! I'm not sure what I expected when I applied for the GSoC Doc Sprint, or when I became part of Karan's team, whichproposed creating a guide for new KDE developers. I know I did NOT expect to have a book in print within the week! However, our wonderful hosts and guides from Google, FlossManuals, and Aspiration guided all of us so well, that WE DID IT! Not only the KDE team, but also the people from OpenMRS, OpenStreetMap and Sahana also created and published books! Four books in one week, from 29 people. I still can't believe it. Rohan, Supreet, and Karan (Rohan Garg, Supreet Pal Singh, Karan Pratap Singh) - you are the best!

Publication isn't the end of the process though. In fact, the opposite. Because of the way FlossManuals is set up, the books are in a "rolling release" unless they are deliberately frozen. So interested folks can edit and add over time, or even clone books or chapters to "fork", if needed.

Also, one of the teams was describing how they created a book before, with a co-located coding and documentation sprint. Doesn't that sound like a great idea, KDE teams? As they told it, as the doc team struggled with difficulties, and consulted with the coding team, often the code was made better, cleaner, simpler -- which make the documentation more straightforward as well. It sounds like a great idea; to make the new documentation match exactly the new code, released together at the same time. Sounds like a best practice to me! We did something like this at the Amarok sprint at Randa last summer, and it worked out very well. Since we had Myriam there hunting down bugs too, which was triply effective.

Not every team will want a book, of course. Books aren't always a practical documentation form-factor, although FlossManuals points the way to the future, I think. The books don't have to be printed, but can also be made available as HTML, PDF, or ePub files. Also, the files can be given away or sold, as the project chooses, and the projects set the price on the printed books as well. Since we have make the e.V. the owner of the book, they could even decide to set a higher price for awhile, as a fundraiser, or buy them cheaply in bulk to send to the GSoC students, or make available at KDE booths at FOSS events.

Our book, Beginning KDE Development, was created with the GSoC students in mind, to help them get up and running KDE trunk, if necessary, as quickly as possible. Along with the technical helps, we've also discussed the KDE community, where to get help, and how to communicate -- all in one short book. I hope you will visit, create an account, and help us make it better! We have to have it in excellent shape in time for the next group of GSoC students 2012.

Adam Oram has written an interesting series of blog posts about the event, with some pictures. Check out the series here: Thank you O'Reilly for sending Adam to help us, and chronicle the event! And most important, thank you Google for selecting our team for sponsorship. You've done KDE a great service.

Tuesday, October 11, 2011

Life and Death, Love, Respect and Foolishness

Death clarifies a lot of issues. At least it did for Steve Jobs, as he so eloquently expressed at his famous Commencement address at Stanford (text, video). Personally, I wish he had made other choices, but he didn't ask my advice. He did follow his intuition and curiosity, however, and that is what I want to take from him. These things helped make him insanely great, coupled with his intense focus on perfection.

A couple of days ago was the eight anniversary of my cousin Carol's death. Her life and death changed my own life in many ways, and I continue to be blessed to have known her especially in her last bit of time on Earth. And I'll be forever grateful for her son Colin becoming our son. He and his hubby Rory bring joy to our life so often. Carol was a year and a day younger than me, yet she has been eight years gone. So Steve's words about living each day as if it might be your last have special meaning to me.

What does all this have to do with Free and Open Software, you might ask? Apple was the opposite of free, at least once Wozniak stepped away. Yet I've recently heard yearning for a dictatorial leader who has a vision, and makes US "insanely great." Steve did that, at great cost. He left many people feeling shredded and shamed by his public tantrums, although he deserves universal acclaim for the beautiful objects his teams produced. But there is more than personal and professional hurt left as part of his legacy. There is also a very dirty secret about how the workers who produced those beautiful objects have been treated, right into the present. We can't forget the dark side of this leadership style, which relies on domination hierarchies to produce both software and hardware. If we choose that terrible beauty, let's at least acknowledge what our choice entails.

There is a better way, in my opinion. There is freedom. Freedom of association, freedom of thought, the generous gift to the world of one's code, documentation, web pages, work, money, time. What is this freedom based on, since most of us don't work for money in KDE and Kubuntu? We work for love. We don't often admit it, but we love the freedom, we love the people, we love what we do, and we love the product we put out. We work in partnership with people all over the world!

I've noticed some problems lately, as the quality of that love has become strained. Like any other relationship, our love must grow and change as our projects grow and change. Kubuntu is six and a half, while KDE is fifteen now! Happy anniversary, and welcome to growing pains. We have as many projects now as there used to be developers. This means we need to spend more time listening to one another, and suspending judgment until all the facts, all the ideas, all the creativity has been taken into account. And at that point, we don't need a leader to tell us what the right decision is. We can continue to listen until we've come to consensus. Yes, this takes some time, but not as much time as Do it all over again! as Steve often demanded. If we have respect for one another, and enough self-respect to do our best with the work we contribute, we will turn out LOVELY products!

Steve asks himself in the Stanford speech, "If today were the last day of my life, would I want to do what I am about to do today?" And whenever the answer has been "No" for too many days in a row, I know I need to change something. Please don't stay on in a position or a team where you aren't in love. Doing so will only result in burn-out, bitterness, and other nasty stuff. Instead, bow out gracefully, and find a project and team you ARE in love with. As Steve said, Stay Hungry. Stay Foolish.

Friday, October 7, 2011

Celebrate Ada Lovelace Day!

Who has helped you along the way? Women aren't generally encouraged to be geeks in our culture, but some of us are working to change that! I've met many heroes along the way, in Rootsweb, Linuxchix, KDE and Ubuntu Women, but today I'd like to mention someone of the encouraging friends I've met along the way, in honor of Ada Lovelace Day.

Joan and Pig were and are great friends from Rootsweb, which is a free genealogy project. They encouraged me to take the step of becoming a listowner, and then to administer the forums gatewayed to my lists. I still have those lists and boards, although they aren't too active these days. And Pig knew about Linuxchix, and guided me there when I was thinking about making the jump from Windows 2000 Pro to Linux. Both these women are not only tireless researchers, but also take the time to help others with both research methodology AND technical issues. Their patient, clear advice has guided me for a decade.

In Linuxchix, I met many heroes, but especially Akkana Peck and Carla Schroder. Both of these women rock! Carla has taught herself an amazing plethora of skills, which she's then turned around to teach others. You are my hero and example in that, Carla. Akkana is always willing to ask questions and find the answers, which is so rare in adults. She also then turns around and teaches others, whether it's astronomy, or how to use a plug computer.

Then there is Mackenzie Morgan, my youngest hero. I invited her to Linuxchix, and she in turn urged me to get involved in Ubuntu Women, where I've met so many wonderful people, and many heroes! I also met Linda Halligan on Linuxchix, and have been inspired by her hard work, skill, and enthusiasm in her life, as a mother, and in her work for Ubuntu, especially Ubuntu Washington, our LoCo. Maco has been an inspiration for many in her friendly geeky encouragement and increasing craft skills, along with her code contributions to Ubuntu, Kubuntu and Ubuntu accessability.

Two more women who have inspired me in Ubuntu Women and in life, are Amber Graner and Lyz Krumbach. Both have faced significant personal obstacles in their personal and professional lives, yet remain calm, helpful, creative and dependable. Dependable is a compliment? Yes, of the highest order. Many people have great ideas, but few follow through. These women do, time and after time, and so are asked to take on more and more responsibilities. They shoulder so much, I'm not sure when they have time to LIVE! And yet they do. :-)

Finally, both in Ubuntu Women and in KDE, Lydia Pintscher and Myriam Schweingruber are my heroes. Both excellent geeky women, giving in so many technical and community-building ways to KDE and Ubuntu Women both. How do they find the time?

As usual, I didn't focus! But so many people have helped me along the way, picking out just one person is impossible. Even this list is much too small, and not detailed enough about the many accomplishments of this pantheon of geeky women. Many men have helped me along the way as well, but this blog is for Ada Lovelace Day!

Thank you all!

Thursday, October 6, 2011

Teaching the next Adas: join KDE for Ada Lovelace Day tutorials

October 7th is Ada Lovelace Day, a day many people celebrate by writing about women who influenced them in their science, technology, engineering or math career.

KDE wants to celebrate the day a bit differently this year. We will help the next generations of Adas find their way in KDE and Qt. We’ll do this by holding a tutorial day for women and their friends -- women are the main focus of the event but everyone else who’s nice is welcome as well.

The tutorials will be given by the excellent Myriam Schweingruber and Dario Freddi. Don’t forget to sign up.

How To Help With Bug Reports (5PM UTC)
Coding in a Free Software project is a very important part of the work, but by far not the only one. One of the possible fields where non-coders can get involved is bug triaging. This course will give an overview on bug triaging and testing. After the course the participant should be able to pick their preferred application and start helping in bug triaging. Myriam will talk about all the fine details of becoming a bugmaster from choosing the right project for yourself to figuring out what is missing in a bug report. This is probably one of the most valuable skills you can bring to KDE right now.
Building your own launcher (3PM UTC)
In this tutorial, you will create a basic application launcher for KDE. Yes, a full-fledged one you can then have fun in turning into a real “start menu” with your new skills. While doing that, Dario will teach you the basics of KDE, Qt and QML, which will empower you to create your first shiny application.

        Basic knowledge of C++, mainly syntax-wise
        Beginner knowledge of Qt could be preferred, but not a requirement
        A Linux+KDE installation
        A working KDE development environment (Show up early in the channel if you don’t have that set up yet so we can still do that together.)
        KDevelop 4.2+ (preferred) or Qt Creator, or your IDE of choice :)

    You will learn about:
        Basic usage of CMake for building your project
        Basic Qt paradigms
        Some of KDE’s basic APIs such as KService, KIO, Solid
        Basic QML programming
        The Model/View paradigm and how to use it with Qt/KDE
        Interaction between QML and C++

The tutorials will take place in #kde-tutorials on freenode. (You can use the webchat if you don’t already have a working IRC client.) Each course will last approximately 1 hour and will include a question and answer part.
Join us and spread the word to your friends :)

Sign up for the tutorials!