Video: Presentations from linux.conf.au 2014

|

Linux.conf.au 2014 just ended on Friday and they streamed most of the presentations live and have also posted the recordings. Here are three that I found interesting.

The Six Stages of systemd

GTK to QT - A Strange Journey

Raspberry Pi Hacks - Building g

Interview: Chris Smart of the Korora Project

| |

Chris SmartChris SmartBackground

MontanaLinux: Please tell me about yourself... as much as you feel comfortable with... as open or as closed as you want to be... family, education, work, hobbies, religion, volunteering, diet, music tv / movies, etc.

Chris Smart: I'm just another Linux geek. I love computers and Free and Open Source Software, having been involved in it for over a decade for both work and pleasure. Let me see... I'm an Australian bloke in my 30's, coming from a family of six (evenly split boys and girls), happily married with one child (and another on the way). I'm currently studying part-time Masters of IT at Australian National University and I work for a local firm full-time developing software that runs on Linux based products.

Linux Background

ML: How long have you been using Linux and how did you get into it?

CS: In 1999 I was working for a local Internet Service Provider and most of our systems were Linux based, so that was my initial introduction. I recall Linux Care was renting office space next door on the same floor and I got to know a bunch of great hackers, including Andrew (Tridge) Tridgell, Hugh Blemings, Paul Mackerras, Stephen Rothwell, Rusty Russell and others. I didn't understand much of what they talked about but I loved spending time with them, although I'm sure that I was quite annoying. I was very lucky to have such an introduction to open source software and in a way these guys became my open source heroes who I still look up to.

ML: What was the first Linux distro?

CS: If I recall correctly it was Red Hat 5.2, although I also dabbled in Debian and shortly thereafter Gentoo. The reason I switched to Gentoo was that I was hungry to learn more about Linux and that seemed like a great way – build your own operating system. Cool. I have to say that I learned more using Gentoo in 3 days than I did the others in 3 months. I loved it, and I was hooked.

ML: Do you use Linux in your job?

CS: Yep, exclusively.

ML: Do you listen to any Linux audiocasts and if so, what?

CS: I have in the past but I can't recall what they were now. From memory I found that the news was usually quite old for me given my massive daily RSS feed haul, so I stopped shortly thereafter.

On Korora

ML: Where did the name Korora come from? Is it Kororaa or Korora?

CS: Kororā is the Māori word for the Little Blue Penguin (also known as the Fairy Penguin) which is native to Australia and New Zealand, so it seemed like the perfect name for an Australian based distro when we started back in 2005. I guess I could have also called it Fairy Linux but that didn't seem to have the ring to it. Originally we spelled this with two a's on the end due to the accent on the letter however some years later it seemed unbalanced and so I changed it from “Kororaa Linux” to “Korora Project” when we wanted to better reflect the Fedora Project.

ML: You started Korora in 2005 and it was originally based on Gentoo. How did that get started?

CS: I loved playing with Gentoo but copped a lot of criticism from others about “compile time” and “over optimising GCC flags”. I wanted to show that Gentoo could be more than just that, so made a binary install method for Gentoo. It started out as a script and then later became its own install media. One day I was playing with the new AIGLX/Compiz 3D desktop and thought, “I could turn this into an awesome live CD,” and so I did. That was pretty popular back in the day.

ML: In 2010, you switched to Fedora as the base for Korora. What lead to the switch?

CS: I stopped work on Korora for a few years for a number of reasons, including the fact that it was just too much work for me. I started using other distros like Ubuntu and Arch, however I was always drawn to Fedora because I liked the principles of the project. As many who know me can testify, I eagerly tried every new Fedora release but quickly became frustrated because I just couldn't get it to do the things I wanted: config files were in different places, packages were different, etc. After using apt-get, yum was horribly slow and painful. I always gave up.

Then one day in 2009 I decided, “no, I'm going to force myself to use Fedora for 3 months, no matter what!”[1] It was hard, but it worked and at the end of that 3 months, I was loving it. Although it's quite bleeding edge, I surprisingly found it much more stable than Ubuntu which I had starting becoming very frustrated with. I think that's a testament to the awesome Fedora community as well as their dedication to working with upstream to get things fixed.

[1] http://blog.christophersmart.com/2009/07/10/trying-fedora-for-3-months/

ML: What do you like about Fedora?

CS: I spell out many of the reasons why I like Fedora and therefore why Korora is derived from it on our website.[2] Really it comes down to the project's core values; Freedom, Friends, Features, First.

A central goal for Fedora is advancing Free Software and content freedom, which benefits everyone. They don't support proprietary software, they create replacements for it (take the Nouveau driver for instance). New releases often showcase the latest in Free Software innovation; technologies that many other distros will also adopt.

I really admire Fedora's policy of working as closely with upstream as possible. Features and fixes are shared to the benefit of everyone, which helps to make existing projects better. That's the Free Software way. To me it creates a much better, more stable operating system.

[2] https://kororaproject.org/about/why-fedora

ML: Has the Fedora community been friendly towards Korora?

CS: It is now, I think, although I doubt that many in the community have even heard of it. Originally some members were very vocal about not supporting us, particularly if anyone came onto the #fedora IRC channel and asked for help. This turned out to be because of a misunderstanding that Korora was not open source and that we didn't document the changes we make to the system. Once I cleared that up and wrote a new page on our website dedicated to explaining what's inside our remix, it seems that “Korora” isn't a dirty word any more. And that's great. It really makes me happy because at the end of the day Korora is about making Fedora more attractive to people like I used to be , when I kept trying it all those times but not sticking with it. Fortunately I didn't give up in the end, but I'm sure that many do and that's a shame. We hope to fix that and show what using Fedora can really be like.

ML: If you had a magic wand and could change something about Fedora, what would it be?

CS: I honestly don't know! I think if I could change something about Korora, it would be more great ideas and more contributors to help us make them become a reality.

ML: Obviously Korora is fun for you. What do you enjoy about it the most?

CS: I enjoy the fact that Korora is useful to others. It's definitely a lot of work and very time consuming, but I like making things and I like seeing those things enjoyed.

On Korora Development

ML: Korora 19 was released on the same day as Fedora 19. Is matching Fedora's release dates a goal of yours?

CS: I think that releasing 19 on the same day was actually a mistake, as Korora got drowned out in Fedora's deserved limelight. We do want to release as close as possible, so we are aiming for a release within two weeks of Fedora's beta and stable releases. Having said that, it also depends on third party repositories like RPMFusion, which can sometimes lag behind a Fedora release. We're now also releasing five desktops instead of just two (plus two architectures of each) so without help from the community this can blow out the time frame.

ML: What is "Korora Package" aka KP?

CS: Building Korora involves the use of a number of command line tools like git for revision control, mock to build packages, and livecd-creator to make the iso images. We wrote kp to manage that process which makes it easy for us to work collaboratively. Being a small project we don't have the resources for large build farms. It's not fancy, but it works well and means any user can rebuild Korora for themselves.

ML: Looking at your Team page (https://kororaproject.org/about/team/), three people are listed... you, Ian Firns and Jim Dean. With the death of Fuduntu and more recently, SolusOS... there seems to be a growing fear of giving smaller distributions a chance. What assurances can you offer potential Korora users that Korora isn't going away any time soon?

CS: Well, we all work full time jobs and have families, so there are no guarantees. We don't have commercial backing, no-one pays us, in fact like many small projects it costs us our own hard-earned cash to keep Korora going.

Having said that, I don't think that it's a risk to anyone who wants to try Korora, I mean you just install it and away you go. Ideally, you upgrade every 6 months or a year. So even if we disappeared tomorrow I don't think it would hurt anyone who's a user of the system. If you are talking about contributors, well I'd like to think that we have a strong enough community to keep it going, even if some of the main developers couldn't continue, but we're not at that stage yet. I hope that what we're trying to achieve resonates with contributors out there who would be able to carry on.

Having said that, I don't know what the motivations for those other projects were, but we make Korora because we love Fedora. As long as Fedora is around and won't ship the software we are able to, we feel there's a place for Korora. We all use Korora ourselves because it does what we want and makes it simple.

Hopefully as Korora gets popular and more and more people support us, the more our motivation grows.

ML: To what degree would end users be affected if you did get hit by a bus?

CS: I don't think they'd be affected at all immediately, as Firnsy can fill the gap. What it would mean is that resources are stretched a little more thin. It might change the direction of the project somewhat if someone else is running it, but I think if it's true to our goal it would be fine.

ML: Are there any particular development areas you are looking for help with?

CS: There is so much that could be done and much of it is really simple. The best is testing and feedback, just telling us what worked and what didn't is super helpful (even better with solutions!).

There are a number of packages that we ship (like some Mozilla plugins) which someone could easily manage, or even just notifying us of new versions.

It would be great to have people take over the configuration of certain desktops like KDE and GNOME. We have a new contributor who has done just that with Xfce and that was the key to making it possible at all. We may end up dropping some desktops if there isn't enough support or desire for them.

It would be great to be able to have a fantastic, unique look and feel for Korora, so anyone with artwork skills could help there.

Any of that would all mean we have more time to concentrate on future direction and features we want to implement.

Finally, just spreading the word on Korora. If you like it, let everyone know. The more popular we get the more the community grows and the more we can achieve.

Conclusion

ML: Is there anything I neglected to ask about that you'd like to mention?

CS: Download Korora today! :-)

Thank you for taking the time to answer my questions.

Videos: Intro to OpenVZ 2013

| |

I was lucky enough to be a guest on the Sunday Morning Linux Review episode 115 to talk about OpenVZ. In prep for the show I wanted to provide the hosts with some recent, updated videos that show off OpenVZ. I made the following videos which are in webm format... so you can play them in your browser or download and play with a media player:

Related links:

openvz.org
OpenVZ Quick Install Guide
OpenVZ Stats
Blog post about 1,000 containers on a single host

Video: Changing the World One Line of Code at a Time

Just noticed that the Linux Foundaton posted this video 2 days ago. I recognize at least 5 of the voices in the video: Jim Zemlin, Richard Stallman, Eben Upton, Mark Shuttleworth and of course Linus Torvalds. A few other voices seem really familiar and I have some guesses but I'm not sure if I'm correct. Anyone else care to guess?

Oh, here's another by the Linux Foundation from about two weeks ago that basically merges clips from the recent Gabe Newell presentation and an interview with Linus Torvalds into a nice short, easily digested package.

Update on x2go

| |

I've been playing with / using x2go more lately and I sure do like it. I originally learned about it by reading the Fedora 20 ChangeSet and saw that it will be a new feature in the upcoming Fedora 20. I started using Fedora 20 shortly before the alpha release came out. Fedora 20 Beta was released on 2013-11-12... and I've been building my MontanaLinux remix about once a week. Anyway, I'm getting off track. Back to x2go.

I figured out how to make sound work. This FAQ entry did the trick for me.

I have used the x2godesktopsharing applet to connect to an existing X11 session and that works great too.

x2go has been making quite a bit of progress especially on Fedora / EL systems thanks to volunteer packager orionp (orionp on #x2go on the FreeNode IRC network). orionp is not only responsible for the Fedora 20 packages, but has also built them for Fedora 19 (currently in updates-testing) and EPEL6. I've been connecting to a number of different systems (physical, virtual KVM and OpenVZ containers) testing it all out. Who knew that an OpenVZ container could be a pretty good desktop system complete with sound? Sound does use a bit of network bandwidth so it is only appropriate for LAN and really fast WAN connections.

I've tried several desktop environments and in general, they work well. Some seem to tolerate multiple users more than others. For example, I don't think KDE handles sound for multiple users very well, whereas with XFCE it seems to work fine. x2go seems to outperform SPICE from my anecdotal experiences thus far. Multimedia works quite well except when I go beyond 1920x1080.

I still haven't tried x2go folder sharing (which uses sshfs which has always worked well for me), USB device access, nor printing. I haven't needed those features yet. The Microsoft Windows x2goclient works well.

There are a few bugs that orionp will be fixing ASAP. I reported this bug for the EPEL packages. Luckily there are easy work-arounds until the updates are done. I've learned a little about x2go troubleshooting as a result.

I also got a chance to install my Fedora 20 remix on a remote machine over x2godesktopsharing. I had to manually boot the target machine from LiveUSB which automatically logs in as user "liveuser". I enabled sshd, set a password for liveuser, enabled x2gocleansessions, ran x2godesktopsharing, enabled sharing... and then connected from my workstation and did the install. It went well. Thanks x2go developers!

Update: (25 NOV 2013) The x2go packages in Fedora 19 have been moved from the testing repo into updates. An updated x2goserver package has been submitted to the EPEL6-testing repo. I'll test it ASAP and if good, give it some karma.


Video: Linus Torvalds, Where is Linux Going

| | | |

LinuxCon 2013 Europe was this week... and videos from it have started being published. Here's a video with our favorite Linux leader about the future of the Linux kernel. Enjoy!

Oh, and here is the Kernel Developer Panel

Interview: The Fedora Project's Máirín Duffy

| | |

Máirín DuffyMáirín DuffyBackground

MontanaLinux: Please tell me about yourself... as much as you feel comfortable with... as open or as closed as you want to be... family, education, work, hobbies, religion, volunteering, diet, music tv / movies, etc.

Máirín Duffy: Let's see if I can cover all of those in one sentence. I'm a married vegetarian Roman Catholic mom and RPI alumna living in Boston who is happily employed at Red Hat as an interaction designer and occasionally teaches kids how to use FLOSS creative software, and additionally am a big fan of Zooey Deschanel (so I like New Girl and She & Him.)

Artsy Stuff

ML: What software-based graphics tools have you worked with in the past and what currently are your favorite applications?

MD: My first digital painting program was the Smurfs Paint 'n Play for the Coleco ADAM. When we finally got a PC with a VGA card, I used Deluxe Paint II and the Disney Animation Studio painting programs. I used Photoshop and Gimp when I was in high school and was introduced to the Macromedia tools in college. My tools of choice in college were Macromedia Fireworks for almost everything, and Adobe Illustrator, Macromedia Director, and Macromedia Flash for everything else. I followed sodipodi and I switched over 100% to FLOSS tools around Inkscape 0.39.

At this point I've been using a fully FLOSS creative work flow for around 7 years — starting with Inkscape and Gimp on Fedora and branching out to Scribus, MyPaint, Krita, Blender, Darktable, etc. as new applications became available. Inkscape is by far my favorite graphics tool and I use it for almost everything.

ML: Are there any hardware accessories that you like to use in your daily creative work? ...and if so, please tell me about them.

MD: I have a Lenovo x220T which is a laptop with a swivel-screen that has a built-in Wacom tablet and stylus. I use it often when I need to do illustration work; it's good for sketching, too.

ML: I believe you have done some FOSS training sessions at a few educational institutions. Please tell me about those experiences and do you hope to do more of those in the future?

MD: I've done a lot of sessions, but the two longest ones were probably the Inkscape class I did at a middle school near Red Hat's Boston-area office (10 weeks) and a Gimp and Inkscape class I did with the Girl Scouts in Boston (8 weeks.) (You can read more about each respectively at http://opensource.com/education/10/4/introducing-open-source-middle-school and http://blog.linuxgrrl.com/category/girl-scouts-class/)

It is a lot of work to put together classes like that, but working with kids is really fun. The thing about these classes is that the kids get to keep the software. For example, I found out that a student I taught in one of the classes still uses Inkscape at home and entered an art contest with a design she made in it well after the class was over. You know, when I was a similar age to those kids, I was a student in an outreach program at the school that later became my alma mater (RPI.) We were taught character animation in Macromedia Director. Not only could I not go home after the class was over to practice and build on my skills because I didn't have the software — it was quite expensive back then — but by the time I entered college Macromedia Director was basically sunset as a product in favor of Flash. Is there anything today that can even open up *.dcr files from Director? My Director projects are probably bitrotted forever, and I'm not that old.

I think us folks in the FLOSS world take it for granted that there are these amazing and free tools using open standards right at our fingertips and the more we can share and teach them to others, I truly believe the world will be a better place.

General Questions

ML: What FOSS / Linux conferences have you participated in? Have you given any presentations and if so, on what topics?

MD: I have; probably too many to list them all at this point. I was just at Grace Hopper a couple of weeks ago and participated in the Open Source Day Systers Mailman 3 Hackfest (got a few commits in to Mailman 3 too!) Last year, I gave a talk at the Red Hat Summit OpenSource.com panel about FLOSS creative software. I keynoted at Software Freedom Day Boston a couple years ago or so about attracting more designers to FLOSS. I gave a talk at the Linux Plumbers' Conference a couple years ago about storage technologies and UX (related to some of the Anaconda design work I did.) I wrote a paper about designing for free software as part of an open source workspace at the ACM CHI conference in 2010 (http://blog.linuxgrrl.com/2010/04/06/contributing-to-free-open-source-software-as-a-designer/.) I've also given talks at the Libre Graphics Meeting, SXSW, GUADEC, FUDCon, LibrePlanet, FOSS.in, LinuxCon, and probably others I'm not recalling at the moment.

ML: Do you consider yourself a technology lover? If so, do you have any visions of the future you'd like to share?

MD: I learned how to read by playing text-parser adventure games on an old 8088 machine; I grew up with a love of technology and auspicious thoughts for a future with even better technology. Unfortunately, I'm a bit more cautious about technology now - particularly tablets and phones. I'm a new parent, and I worry about the ubiquity of these devices and how they may affect childrens' development. It's also sad to go to pretty much every public place and see heads bent down staring at screens rather than healthy social interaction (I'm as guilty as anybody.) What about the divide between people who can afford these devices and a ubiquitous internet connection and those who can't? There's bad that comes with the good that technology brings, and I think a lot more careful thought and action needs to be put into mitigating that bad.

ML: What hardware have you purchased for yourself? Do you have a laptop, smartphone and/or a tablet? If so, what?

MD: I have an x220T tablet, a Samsung Galaxy S4, and a Nook HD. I've never purchased a piece of Apple hardware in my life, although I was - oddly enough - given a gumstick iPod Shuffle once when I signed a lease on an apartment. It bricked after a few months.

ML: Do you use any non-FOSS software? If so, what and why?

MD: The only non-FLOSS desktop software I use is my income tax software. I have it installed on a hard drive with a Windows install on it that came with my husband's personal laptop before we swapped an SSD into it. I use that once a year, because I'd rather do my own taxes and the laws change too frequently for any potential FLOSS solution to be workable.

I do have more non-FLOSS apps on my phone than I'd like to admit, and I use more non-FLOSS web apps than I'd prefer (although many are FLOSS.) I used to not even use Flickr or Twitter because they aren't open source - as I get older, I think I'm getting more soft in tolerating that. One piece of proprietary software I'm particularly proud of avoiding, though, is Gmail.

About your work with Red Hat

ML: How long have you worked for Red Hat and what positions have you held there?

MD: I've worked for Red Hat close to 9 years, if you don't count my summer internship before I started full-time. I've been an interaction designer the entire time, but I have worked on different teams over the years.

ML: What projects have you worked on within Red Hat?

MD: I've worked on a lot of projects over the 9 year period so it would be boring to list them all out. The two main products/projects I've worked on are Red Hat Network / Red Hat Network Satellite and Fedora. As of late I've been spending a lot of time on Hyperkitty, the mail archiver web UI for Mailman 3.

About your work with the Fedora Project

ML: How did you first get involved with the Fedora Project?

MD: I used Red Hat Linux when I was a high school student but was converted to Debian in college. I migrated to Fedora and got involved with the Fedora Project when I did a summer internship with Red Hat's desktop team in the summer of 2004.

ML: What things have you worked on in Fedora?

MD: A lot of things! I've been the community design team lead for several years at this point, which has involved a lot of wrangling to get the artwork ready for each release on time, although honestly gnokii (Sirko Kemter) does a lot of this work now - he makes sure things are ready and prepares a lot of the release artwork. Most recently on the Fedora design team I've done a lot of artwork for the Fedora Badges system (badges.fedoraproject.org) I redesigned the fedoraproject.org website with a team of Fedora design team members in 2009-2010 although it is due for some updates these days, I think. I've done a lot of UX work for a lot of different components that are in Fedora, including virt-manager and anaconda, the installer. I've also done UX work for some of the infrastructure applications that help run Fedora, including the Fedora Packages app (http://apps.fedoraproject.org/packages). I've served on the Fedora board too, but not a full term.

ML: What do you think Fedora's strengths and weaknesses are both as a FOSS development project and as a general purpose Linux distribution?

MD: By development project, I'm assuming you mean a FLOSS project community and not necessarily a development platform (but please correct me if I'm wrong.) As a community I think Fedora has a major strength in that it attracts many smart and passionate folks. The corresponding weakness (which is shared by other FLOSS projects) is that demographically it's not a particularly diverse set of folks. We are actively working on that though; for example, Fedora has participated in the FLOSS Outreach Program for Women in the past couple of rounds or so.

Another strength of Fedora is that as a community, Fedora is particularly concerned about openness and transparency with respect to project discussion but also privacy when it comes to personal information — so much so that, for example, when we proposed a Fedora badge for folks voting in a vote to choose wallpapers, we had to make the badge an opt-in badge rather than automatic because concern was voiced about individuals' privacy with respect to whether or not they voted. Folks aren't just interested in software freedom; they are interested in other social justice issues (like privacy) as well. A weakness to counter that is that in a community of passionate people, the discussions can get pretty heated — particularly on the mailing lists. This is also not unique to the Fedora Project. We are hoping to help tame the flames with affordances provided by Hyperkitty, when it's ready.

As a general-purpose Linux distribution, I think Fedora's strengths are that you have highly-skilled, full-time software developers alongside community developers putting out software in Fedora first. The corresponding weakness is that because there's new technology in Fedora first — for example, systemd or GNOME 3 — when you use Fedora you have to learn the new things sooner than other distros' users since you're getting it first. That can take time; there might not be as much documentation and as many how-to blogs available yet to learn because the tech is so new.

ML: What things would you change about Fedora if you had a magic wand?

MD: If I had a magic wand, Hyperkitty would be ready and deployed across all of the Fedora mailing lists and we'd be having much more productive and efficient conversations!

About your Anaconda design work

ML: Anaconda is the installer that Fedora uses on the install and live media. Why did Fedora need to redesign Anaconda?

MD: Will Woods covered this much better than I could in a two-part blog series that starts here:
https://ohjeezlinux.wordpress.com/2013/02/05/anaconda-retrospective/

Adam Williamson and I wrote this too to go along with the initial release of the new UI:
https://fedoraproject.org/wiki/Anaconda/NewInstaller

The redesign was initiated by the development team. The design wasn't conjured up first and then pushed on to them. They made a decision that a redesign had to be done, and they sought out UX help for the UI part of it. That is how I became involved in the project. A lot of underlying problems with Anaconda were addressed - quite well - by the development team but haven't gotten as much attention as the UI because the UI is simply more visible. (The two links above give specific examples.)

ML: Is the Anaconda redesign completed or is it an ongoing process?

MD: The major chunks of it are completed, but improvements are an ongoing process. We've done several usability test rounds (with the help of two interns, Stephanie Manuel and Filip Kosik), including a couple where we performed tests at DevConf.cz in Brno, Czech Republic and in Red Hat's Boston-area office. You can see the test documents from those tests here: https://fedoraproject.org/wiki/Anaconda/UX_Redesign#Usability and a summary of the analysis from the test results from Brno https://www.redhat.com/archives/anaconda-devel-list/2013-April/msg00018.html and Boston https://www.redhat.com/archives/anaconda-devel-list/2013-April/msg00011.html. We combed through all of the test videos and reports and incorporated some user feedback we'd gotten on the redesign as well and came up with an exhaustive list of issues to address, many of which have already been addressed: http://fedoraproject.org/wiki/Anaconda/UX_Redesign/Usability_Test_Suggestions

The Anaconda developers, as they encounter usability-related UI bugs, will often consult with me or other UX folks to hash out a solution and then fix the bugs.

So the redesign isn't stagnant; as bugs filter in they are addressed on top of our active work to identify issues and address them through QA and usability testing.

ML: What has been the most challenging part of the redesign?

MD: The most challenging part of the redesign (which my vent^W talk at the Linux Plumbers' Conference a couple of years ago actually focused on) was any interaction involving storage technologies. I actually converted that talk into a blog, so if you want to go more in depth on this you can take a look at that: http://blog.linuxgrrl.com/2013/01/04/storage-from-a-ux-designers-perspective/ Storage technology is all over the place and I think it's a bit of a miracle it is as standardized as it is. There are so many tough situations you can get into when you get storage wrong. (An example from Anaconda: http://blog.linuxgrrl.com/2013/03/04/refreshing-storage/)

ML: I must admit that when I first encountered the partitioning screens starting with Fedora 18, I was not fond of them. For various reasons, I do a lot of Fedora installs and eventually it grew on me... but I still hear quite a bit of complaining. How much and what feedback have you gotten from the community?

MD: The main feedback we get about most of the new Anaconda screens is either complaining about the position of the 'done' buttons in the upper left (folks want it in the lower right) and the text of the 'done' button (it's previously been 'back,' and we got complaints then because it doesn't always mean back, so we changed it to 'done.')

I think these complaints are symptoms of the hub and spoke model we've chosen to go with. For most of the screens, hub and spoke works great. Where it falls apart is the storage-related screens, because the storage 'spoke' is actually a little mini linear wizard in itself. I'm not convinced that hub and spoke generally was the wrong model to go with, but we've been making small tweaks here and there to the storage area so that it'll make more sense based on the usability test results and feedback we've gotten.

I also think some of these issues are symptoms of a design goal we had — make it possible for less-experienced users who just want a working system without much fuss to get one. In the design, I think I tried a bit too hard to prevent those users from being exposed to more complicated bits like custom partitioning. I mean, where I was coming from was reasonable: if you know how to create a RAID 4 array and you can actually recite the difference between all of the RAID levels, you're probably smart enough to poke around and find what you want. If 'RAID' makes you think of bug spray in all-caps, you back away slowly from the computer if you encounter any form of custom partitioning. Again, though, I think I made some bad calls there and those are shaking out in the usability test results and user feedback.

Actually last week I talked to Chris about instead of only having custom partitioning accessible from the 'Done' button on the first storage screen, to also have a button to just go to it since many people want to go there and aren't sure how when they get to the first storage screen. (It really is not intuitive to hit 'Done' to get to custom partitioning.) I'm hoping to mock up the fix this week. (I know this does seem a bit late to get to it, but to be fair I was on maternity leave for much of the Fedora 19 development cycle.)

ML: What complaints have you encountered and how valid do you think they are?

MD: That's a particularly broad question so I'll answer it broadly with respect to the user feedback we've gotten. Generally, I was pleasantly surprised by the feedback we got on the UI part of the redesign. Any time you embark on a major redesign — especially if the thing you're redesigning has been pretty much the same for a 10-year long period — you're going to get backlash. The things folks had the most trouble with were the parts of the redesign I knew were weak (particularly storage.) The parts of the design I thought worked well, for the most part, didn't receive a lot of complaints. I was seriously expecting hate mail, but I didn't receive any. I actually received a few well-reasoned and productive critiques that then went straight into the 'Usability Test Suggestions' wiki bucket list of items to address. The most common off-the-cuff feedback I hear is along the lines of, "I didn't like it at first, but now that I've had time to get used to it, it works fine for me."

I think a big reason for the less-severe-than-expected and surprisingly-helpful-feedback was how open we were with the redesign and rewrite process — I worked pretty hard to blog our major design decisions and process and the Anaconda team are very open in IRC and on the anaconda mailing lists. If someone was really bothered by it and did a search, my guess is they'd find all of that documentation and be able to see where we were coming from with some of the decisions and that may have moderated their feedback a bit.

I will also be the first person to say that there's no way that the design work I put together for the Anaconda team was perfect. Have you ever taken a drawing or painting class? If you start in with the eyes, and try to render them perfectly, then move out to the nose and the mouth and the head and the body — rendering each as accurately as you can, one-by-one — you are going to find yourself with a disproportionate and likely poorly-composed work with many smaller nicely-rendered bits. Nobody, not even the great Renaissance masters, sit down to an easel and draw a perfectly lifelike rendering of what's in front of them starting with the very first stroke. You have to start with broad strokes first, lay down the foundation for your composition, do one pass for gesture, do another pass to pick out the positions of the major body parts, another pass to hit the major shadows, do another pass... so on and so forth, until you get down to precisely-rendered, life-like details. You don't start with those details. The design we started with for Anaconda is a few passes in, but we're working with the feedback we get to make additional passes and refinements.

ML: I've hear some people advocating for the use of a separate tool for the complex task of partitioning... perhaps gparted... but that wouldn't work would it? If I understand correctly, the Fedora installer has requirements for more advanced partitioning / filesystem features that gparted does not offer... things like Linux software RAID, LVM, and various combinations of those. Is using an external tool even a viable option?

MD: Using a separate tool for partitioning would be a good idea in that, at least for the full / non-live installer, you're in a limited environment to get your work done. Partitioning is scary work, even if you really know what you're doing. Anaconda itself is a limited environment — you don't have a web browser to look up help and it's constrained in ways a full desktop is not. Anaconda handles these things because it has to, but I personally think it would be ideal if Anaconda handled installation and a lot of the complicated storage bits were handled by another tool that specialized in storage. As you point out, though, the tools that exist now don't meet the same requirements that Anaconda does, so Anaconda continues to handle storage configuration like partitioning. Anaconda is now modular, though, so the storage-handling code is now actually broken out into a separate library called blivet. Maybe at some point an external tool could be written that uses that library.

ML: Are there any upcoming changes in Anaconda in Fedora 20 that you'd like to mention?

MD: If I can get that mockup I mentioned earlier done and the team has enough time to implement it, maybe there will be a button to go to directly to custom partitioning. If not Fedora 20, hopefully Fedora 21.

Conclusion

ML: Is there anything I neglected to ask about that you'd like to mention?

MD: Yes, "How do you like working at Red Hat?" To which I would answer, "It is the best job in the world." Thank you for the interview, I enjoyed it and I hope it helps your readers understand a bit more about the Anaconda UI redesign.

ML: Thank you for taking the time to answer my questions.

A Partitioner's Tale

| |

As you may know, Fedora totally redid their Anaconda installer starting with Fedora 18. There are many reasons for it and I'll not go into that here but one perception out there in Internet land is that the partitioning section of the newer Anaconda installer is a pain to use. I must admit that when I first started using it (installing Fedora 18 alpha and beta releases), I really did not like the changes. This dislike persisted for some time until I finally got used to it. Then time passed. Fedora 19 development started, ran its course, and then Fedora 19 was released. It offered some Anaconda refinements. Now Fedora 20 is approaching its beta release and there are yet more Anaconda refinements.

Since I build my own personal remix of Fedora with the stuff I want pre-installed, I do a lot of installs... to test stuff out. I've definitely gotten used to the newer Anaconda now and I actually like the partitioner. The last time I installed Fedora 17 (to test my last remix build, it has since gone EOL) I actually felt weird using the older Anaconda. I actually prefer the newer one now.

Few people do as many installs as me... and some are still stuck in the "not liking the newer Anaconda" stage. Their main gripe seems to be that the partitioner is very confusing and somewhat broken. I disagree with them and I've been doing some troubleshooting with a couple of problem installs users were having. Turns out their problems had less to do with Anaconda and more to do with having terrible pre-existing partition layouts on their hard drives. I though it might be useful to examine two cases where I have the actual fdisk listings of their partition tables. I'll not mention the names of the users who provided them to spare them some negative attention.

Example one - Let's just jump right in. Here's an image that shows a really poor pre-existing partition table:

Here is a somewhat incomplete fdisk -l listing for it.

Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63       80324       40131   de  Dell Utility
/dev/sda2           81920    20561919    10240000    7  HPFS/NTFS/exFAT
/dev/sda3   *    37459968   204937215    83738624    7  HPFS/NTFS/exFAT
/dev/sda4       307337216   312578047     2620416    f  W95 Ext'd (LBA)
/dev/sda5       307339264   312578047     2619392   dd  Unknown

That almost looks reasonable until one examines the details closely. There is a gap between the end of sda2 and the start of sda3. There is a gap between the end of sda3 and sda4. sda4 (the extended partition) is very small and as a result sda5 (a logical inside of the extended) is very small. What we have here is a bunch of free space but no way to get to it. One can NOT make any additional primary partitions. One can NOT make any additional logical partitions... and to the best of my knowledge... one can NOT make any more extended partitions. All of that free space (> 50GB) is in a virtual no-man's land.

How did this poor partition layout manifest itself in the Anaconda installer? The partitioner said there was plenty of space to install Fedora but whenever you went to actually create partitions / mount points it would give an error about there not being enough room to create said partition. Basically Anaconda was confused by the layout but really didn't have a way to communicate that the layout was unworkable. The end user is left with the impression that Anaconda is horribly broken when it was really a badly mangled pre-existing partition table that was to blame.

Example two - Here's another example of a really poor pre-existing partition layout as witnessed by the complete fdisk -l output.

Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0008cbe0

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1       476313598   625137344    74411873+   5  Extended
/dev/sda2           16065   157765631    78874783+  83  Linux
/dev/sda3       160312635   476295119   157991242+  83  Linux
/dev/sda5       602389368   625137344    11373988+  82  Linux swap / Solaris
/dev/sda6   *   476313600   528878053    26282227   83  Linux
/dev/sda7       528891993   602389304    36748656   83  Linux

I wish I had a screenshot of what that looks like inside of gparted but I don't. Just look at the start and end sectors for each partition. sda1 starts somewhere in the middle of the drive. sda2 is near the front. sda5 is after sda7. I don't think there is freespace and if an install is to be done, the user needs to reuse one or more existing partitions.

What did Anaconda do with this? The user reported that the install progress bar just hung at a very low single-digit number. The user just ended up having to power cycle after waiting entirely too long for it to finish when it wouldn't. After rebooting the install seemed to be functional but what exactly happened to make the installer get stuck is unknown. Anaconda gave no indication that there was an issue and did its best to work but obviously got confused.

How did these partition tables get mangled? - For both partition tables, I don't think any sane partitioning program would allow a user to create those partitions on purpose so you really have to ask... how did they get that way? To the best of my knowledge, both users engage in the practice of distro hopping. Distro hopping is where one is interested in using or playing with a different Linux distribution with some regularity. One of those users might be the host of a popular Linux-related podcast who reviews one or more different Linux distros every week... or not. :) But seriously, those partition tables can only be the result of multiple Linux installers, using different methods, strong-arming their way. An odd partition operation to make this distro install... and another one later... and maybe more down the line... and you get a mangled layout. Or at least that is the best explanation I've been able to come up with.

How should Anaconda respond to pre-existing unusable or sub-optimal partition layouts? - It would be nice if Anaconda could play the part of partition therapist and recognize when a user has a really bad partition table that is virtually impossible to work with... and just inform the user in a kind but clear way that they need to fix that before Fedora will install. Historically Anaconda seems to just get confused and error out... thinking that it could do something with it but failing. Can this be fixed? I'm not sure but I hope so. I certainly don't expect Anaconda to figure out methods of fixing the bad partition layouts but they do exist and a small portion of users are going to run into trouble. Luckily I've yet to see a situation where Anaconda makes the situation worse by breaking existing OS installs.

But wait, there's more - It turns out that both users had additional partition related problems.

User one has a Dell laptop that offers a special featured named DirectMedia. Go ahead. Take a little time to read that wikipedia link especially the Design Controversy portion of it. It turns out that the existence of that odd extended / locigal partition combination might just have been the result of MediaDirect... and even if they had been able to install Linux, at some point later when Windows was booted again, MediaDirect would have probably regenerated the problematic sda4/sda5 combination probably breaking any Linux install that was done. Now that takes "Made for Microsoft Windows" to a new and more scary level doesn't it? :(

User two once used dd to backup the contents of one partition to another and as a result had two partitions with the same UUID. As you will recall, one of the U's in UUID stands for unique but in this case it wasn't. Just what confusion might that lead to? They reported on a few occasions that most boots of their computer things were normal but other boots the contents of their home directory would totally change... only to change again next boot. After they figured out that they had two partitions with the same UUID it started to make more sense.

Conclusion - The point is that where there is smoke there is sometimes fire and no Linux distro installer can be a complete fire extinguisher in all situations. Some users have bad partition layouts and it would be a good idea to take that into account. Oh, how about a recommendation... boot your machine with some live media that includes gparted and get your partitions in ship-shape before installing. gparted is more battle tested for partitioning, resizing, etc than any distro's installer. Lastly, the newer Anaconada isn't so bad so get over it! :)

Two Projects We Love

|

OLPC: In Rwanda schools and on their moneyOLPC: In Rwanda schools and on their moneyIt was recently announced that the Raspberry Pi (RPi) has sold 1.75 million units in the 1.5 years they have been available. That is seen by most folks as a screaming success. In contrast, the One Laptop Per Child project (OLPC) has sold about twice as many OLPC units in about 6+ years... yet it is seen by some as a quasi-failure.

Target Audiences - Both projects have targeted the education market. OLPC is aimed at general education and early grades whereas the RPi is targeted at the same and older age groups specifically in computer science education.

The OLPC has been sold specifically to governments and school systems and while they dipped their toes in the consumer market with the Give 1 Get 1 programs, those efforts were not well executed and as a result only became a small fraction of their sales. The bulk of the RPi sales have been directly to the retail market. RPi is still working on educational materials and it is still unclear how well it will do within school systems. Retail sales may still help with the RPi goals but to what degree is unclear. It appears the bulk of their sales are going to hobby type projects and I'm not sure if those qualify.

Copy Cats - The hardware of both projects launched new mass-market product categories because oddly the retail and wholesale mega-corps got scared and had to introduce competing products. The netbook did quite well for a couple of years but the pricing on more traditional laptops dropped low enough to practically eliminate it. There are a large number of ARM-based RPi like single-board computers (not counting the embedded market that pre-existed) but I'm not sure that any of those will be notably successful. RPi clones are somewhat overlapped by the mini-Android clone market.

Hardware and Pricing - Both projects have had unanticipated delays in their design and production phases but they made it through. OLPC ended up being more than double their target price, which appears to have been unrealistic... while the RPi, perhaps having a closer relationship to a component manufacturer, hit their targets. The OLPC is a more complete gadget whereas the RPi requires a significant amount of hardware extras before it is usable. While it is easy to overlook the extra costs associated with the RPi, they are definitely real.

Both projects have revisited their designs coming out with newer hardware releases. The OLPC is in their fourth iteration and they completely changed CPU arches yet the outsides look exactly the same. The second RPi release doubled the RAM without a price increase... awesome.

Software - One major difference is in software. The OLPC Project designed a custom user interface and several stock educational activities on top of Linux whereas Raspberry Pi hasn't had to do as much in the way of software. Both projects have successfully relied on the communities that sprung up around them to augment the software both provide but the RPi seems to have a ways yet to go with the software for their target audience.

Roots and Expectations - Given the similarities and differences between both projects, why is one more often perceived as a greater success than the other? I think a lot has to do with the roots and expectations. One had a big name and lots of media up front and was expected to "change the world" and the other, not so much. I think that is the main reason for the perceptions but there is certainly more to both projects than such a simplified type of judgement conveys.

Unanswered questions - Here are some of the questions that come to my mind. Did I leave any out?

How well will RPi do inside of school systems?

Will RPi rev their hardware like OLPC has with major changes? If so, how will it impact manufacturing costs and pricing?

Will any of the wanna-be products be able to significantly poach users away from RPi or will RPi do that themselves with a later model?

Does the current RPi model B have such a strong mindshare that a future model may be overshadowed by it?

What future plans does the OLPC project have?

How many more OLPCs could have been sold if they had added the consumer retail market as a target and executed as well in that space as RPi has?

OLPC has taken a small foray into the consumer market by allowing their name and look be to be used by one budget Android tablet maker. How well will that do and will there be others?

How exactly do these OLPC licensed third-party projects benefit the OLPC project?

And lastly, will any of those questions ever be answered??! :)

Conclusion - In any event, I'm glad we have both projects and wish them continuing success and a long future. Keep up the great work everyone. Will there be any other projects that make it this level? I certainly hope so. We definitely need more open hardware in the market.

Video: The Linux Way

| |

I saw this mentioned on the Fedora Planet. Andy Grover gives a presentation on The Linux Way and how while it is based on The Unix Way, it has been updated for a new era. The real content starts about 4 minutes into it. Enjoy!