Friday, September 24, 2010

Restructure for the sake of progress.

There has recently been a lot of chatter about the future of Fedora, vision statements, goals, progress and where to go from here. I would like to voice my opinion on the topic and for all who disagree please let me know why and voice your solution because I am always open to new ideas and I am definitely not saying this is the only way to continue or to solve the current issues but its the idea I had.

First off, what's the problem? Well from my perspective there are a few but I only want to focus on a couple right now: There's a lack of focus which makes marketing really difficult as there are so many things to promote and we have such a breadth of innovation wrapped up together offering a multitude of solutions which is confusing for newcomers. This is something I would like to think that we as a project aren't fond of. Others might have opinions of what they think are problems and they might very well be problems, but these are the ones that I personally think I can offer an idea for solution.

Our lack of focus is pure marketing pain: This rounds out a bit of the recent talks about Vision Statement which I'm not against as many appear to be and I think the blog post from Thorwil nails this right on the head. What can we do, where can we go and how do we do it without breaking up the community? My proposal for this is to continue the Fedora Project in a similar manner as it is going now but to migrate a little on how the Fedora Distribution is handled. I think we as a group should focus on the concept of a "Fedora Experience" and ask ourselves "What makes Fedora, Fedora?" I think we need to strip out a lot of our ambiguity for the official Fedora Distribution. Lets get rid of the KDE LiveCD, lets throw out the Spins, and lets let the Fedora Distribution focus purely on the default Gnome offering along with all that entails as a start to finish desktop experience, the "Fedora Experience". Now before you get angry and want to throw me to the sharks please just read on and save the flame mob until the end. I just don't see a way to be able to carry on the way we are while continuing to grow adoption. If we refocus on just one installation of one environment then we are decreasing the strain of the documentation team, the QA team, release engineering, the design team, the marketing team, and others who partake in the wonders of the Fedora Distribution as we've stripped out the ambiguity of "Its Fedora because it came from" or "It's Fedora because its all one package repository" and we just focus on one environment.

"But Adam, you're just pissing people off and they will leave the project"

This is true and this is false, this is inevitable and its completely avoidable, this is heavily a loaded statement. My idea is that we will restructure ourselves into forking off brands who operate under the same parent project, The Fedora Project. The idea is that those of us interested in KDE (or $other) will break off and make "Kepi Linux" (random name I selected for sake of example) and what is Kepi Linux? Kepi Linux is a distribution of linux focused on delivering a KDE centric experience that is based on the Fedora Project, it is a brand. I'd like to take a moment to quickly direct everyone's attention to Steve Yegge's talk at OSCON 2007 it's only about 25 minutes but if you don't have that kind of time the jist is, "The look, feel, packaging, and naming of a product, i.e. the brand, is more powerful than the function." I want people to take that and think about it hard for a moment because as much as you'd like to argue it at first, when you mull it over you know its true in at least some capacity. So back to the Kepi Linux example, now we have this new brand, new identity, and new outlet that packagers and developers can come together an work on that allows the specific group to focus on their own space. Essentially the KDE SIG within the Fedora Project would be the driving force behind Kepi Linux. As long as it is structured such that we are still using the same package repository, still using the same build environment, same bugzilla instance (maybe with some changes for branding), the same account system, continue contributing code, content, and packages to the same project and still share the same over all goal of leading the advancement of free, open software and content then I think we can still as the community at large stick together while being slightly more focused on our own areas (brands).

This idea probably isn't perfect and I understand that a paradigm shift like this would require a *LOT* of work from a lot of people but I think it would be a positive change in the long run. If we were to make Kepi Linux we could even have an "About Us" page that describes how we are the KDE SIG and that Kepi Linux is a sub project of the Fedora Project but is different from the Fedora Distribution, this way we are removing the confusion from new users because if they want Fedora and they go to there is one option, period. We are removing the over saturation of the Fedora brand which I like to think will result positively.

Just my thoughts on the topic, take them for what you will.


Tuesday, September 07, 2010

Personal Priority Queue

There comes a day when I realize that I've found myself drowning long enough that something has to give. I contain only a certain amount of cycles that can only perform so many instructions within a finite amount of time. Sadly, no matter how much sleep I try and do without, I can't keep up or catch up and its time I enact a priority queue with my time.

Lets take a quick rundown of what gets higher priority and renice what is in need of it. First and foremost is my family, period. Highest priority is obviously set to my family. Then we make our way down the chain to the essential tie between my day job and graduate school. We'll apply them equal priority. Following that we can lump in randomness and hobbies with equal priority but the only thing I really want to discuss is Fedora. I love Fedora, I love working on Fedora and I wish I could work on it all day, everyday but a sad reality is that Fedora doesn't pay the bills and Fedora doesn't land me a Masters Degree (though I do try to incorporate Fedora into my assignments in my graduate courses when ever it is applicable).

What does this mean? Am I leaving Fedora? First off, I don't think I will ever leave Fedora because I believe in it too much and I love the community, what it stands for, and the efforts that are put into the project by it. However, I am going to have to scale back my time allotment which means I'm going to have to be more conservative with my excitement as it has gotten my hands in many pots and stretched me too thin ultimately causing my current predicament. I wanted to be able to contribute to Fedora in every way I am capable but the unfortunate fact is that I just can't pull it off. My problem is that I get too excited about too many different aspects of Fedora and I want to contribute all I can. I want to be a part of Fedora Design, Fedora QA, Fedora Ambassadors, Fedora Python SIG, Fedora Java SIG, Fedora KDE SIG, Fedora XFCE SIG, Fedora Desktop Team, Fedora Cloud SIG, Fedora ARM SIG, and other areas of the Fedora project that I find extremely interesting. Here I sit trying to find a way to keep up and I can't, I just can't. I will continue to maintain my packages and hang out in irc as much as possible but beyond that I am going to have to attempt to gracefully duck out of my other Fedora endeavors until I can find the time to really get back in the mix. I thank you Fedora, as a project and a community for offering such a cultivating and welcoming arena with so many outlets that I find so interesting that I want to dive in head first. I must take care of some other aspects of life right now but you will always be near and dear. In hopes that I am able to dive in full swing at a later date, I bid you all good luck and will continue to lurk around. :)

Thursday, June 24, 2010

dvtm - dynamic virtual terminal manager

Not too long ago I found myself in need of organizing my terminal sessions, I had too many windows open and it was cluttering my work space and bloating my alt+tab layout. I poked around the internet and found the likes of Terminator[0] and it was nice but not my personal preference so I did a little more poking and I found my way to dvtm[1]. dvtm is a dynamic virtual terminal manager that will essentially perform tiling window management from within a terminal window. It was originally a port of dwm to ncurses and has made my life eponentially easier since I found it. I wanted to show off some screenshots in hopes that others might find it fits their needs!

The package was already available in Fedora but since I spend a large amount of my time on RHEL machines for my day job I went through the processes to get it into EPEL, so everyone can have dvtm! :)

Here's some screenshot awesomeness (same apps, just different layouts within dvtm):

Hope people want to give it a shot! Also, be sure to read the man page, all the questions I could imagine were answered there. Happy hacking! :)


Friday, June 18, 2010

Big Fedora Logo For Fedora Planet!

Here's a big Fedora Logo (or at least as big as will let me post) for those who were upset with the Ubuntu Logo that found its way on the today. Enjoy and long live FOSS software!

Monday, June 07, 2010

Getting CyanogenMod on your Motorola Droid (Android 2.1 OTA) from Linux.

Step 1: Download sbf_flash[0], and follow his directions with 1 modification, shutdown your phone and hold "UP" on the directional pad before "just plugging it in" (note, the screen will be blank/black and have some white text on it in a very primitive font, if that's what you got you're good) and I believe the application must be run as root. Also, the sbf image you will need is SPRecovery[1]


Step 2: Download CyanogenMod's latest release (at time of this writing it was 5.0.7) and copy it to the root of your SDCard and rename it ""

Step 3: Shutdown your phone and reboot into SPRecovery by holding the 'x' key on your keyboard while it powers on (be holding 'x' before you hit the power button just to be sure). This should boot you into SPRecovery.

Step 4: Make a backup!!! You are going to want to make a backup here just in case something goes wrong. Use the volume up/down buttons on the side of your phone to move the selection up and down and the camera button on the side of your phone (power button takes you back to the previous menu).

Step 5: Flash the update, select "install" and in the next menu tell it to allow, then select "Install /sdcard/"

Step 6: Install the Google Apps, first copy the gapps file over to the root of your SDCard, rename it "" overwritting the old one. And repeat Step 5 remembering to hold 'x' while booting to get to SPRecovery.

Step 7: Reboot and enjoy

NOTE: If your phone goes into what appears to be an infinite reboot loop, pull the battery and then hold 'x' again when you power back up to get back to SPRecovery and tell it to do a wipe of user data, its an option in the main menu. This happens but not always so don't be alarmed if it does.

Step 8: (Optional) Download ROMManager from the App Market and buy the extremely reasonably priced Premium version that will monitor new releases of the ROM as well as automate the flashing process.

NOTE: ROMManager is going to require a different Recovery image but it will handle the installation of this and will continue to make life awesome for you .... again, *highly* recommended.

Feel free to come hang out in #koush on if you have questions or just want to talk about the awesomeness that is CyanogenMod on the Motorola Droid!

Monday, May 17, 2010

Death to ARM, Long live ARM!

Not all that long ago I wrote a blog post that expressed some frustrations I was having with ARM as a platform but in retrospect I think my statements were a bit hasty and overzealous. I stepped away from the unique aspect of ARM boards that make them so appealing, they are different, they are disjoint, but they are also extremely capable. We live in a world where you can't walk into the middle of a town and throw a rock in any direction without hitting a person carrying an ARM device which is an extremely powerful statement. Its a platform where extremely cool things are happening, it is the reigning champion of consumer embedded devices and as cloud computing (yes, I hate the term too but bear with me) becomes more and more the way of the future, embedded computing really will be a more viable solution for the dawn of tomorrow.

What does this mean? Well, that depends on who you are and where you sit in the world. It means to me that I think we within the Fedora Community need to put more efforts into the Fedora ARM SIG and even though I am an ARM SIG member I probably made my fellow Fedorans(?) a bit upset with my outcry as well as dealt myself a bit of a credibility blow which I have only myself to thank. In an effort to bring myself back from my current state I in the process of gearing up for doing some actual contribution to the Fedora ARM port, I've got a book entitled "Embedded Linux Primer" by Christopher Hallinan that I'm almost half way through and I've got a GuruPlug on order from GlobalScale because even if I hit fits of frustration along they way it would be ignorant of me to claim that embedded computing doesn't power the world, ARM is leading the way in that market, and I feel this is an area that Fedora could be great in. So lets hope that Apple doesn't buy ARM and screw us all. Long live Fedora and long live ARM!

UPDATE: I have cancelled my previous order of the GuruPlug in favor of a SheevaPlug for two reasons. 1) The GuruPlug requires me to buy JTAG board to do dev work and I don't want to shell out the extra cash. 2) I'm hearing reports of GuruPlugs doing random reboots when using the ethernet port. So now I just have to wait for my SheevaPlug in the mail!

Tuesday, May 04, 2010

Vote with your dollars

"Vote with your dollars," a phrase a co-worker said to me when we started discussing smoking vs. non-smoking dining options. It's an idea that has stuck with me ever since and I find myself applying it to anything I do these days. For example, I pay for a Red Hat Enterprise Linux subscription for my house even though I could run CentOS. Why do I do this? Because I want to support Red Hat, I want to vote with my dollars and let them know that I appreciate what they do for the open source software community at large with all of their endeavours.

This past weekend I found myself at a store, I won't say which one because I need not endorse them and they certainly don't need or want a mention in my measly little blog. At this store I was on a mission to purchase a portable mouse to go along with my new Asus EeePC 1001P (which I recently blogged about). The netbook is wonderful but when I've got it sitting on a desk I'd rather have a real mouse. As I was cruising for a perfect selection I found myself with two mice to decide between, both were capable and according to their boxes they had almost identical feature sets but one was cheaper. If I were a regular consumer, I would have grabbed the cheaper one and gone on with my life and not thought anything of it, but I am not a regular consumer. I'm a voter. There was another difference between these two devices and that was that the more expensive one had an image of Tux on the side and a listing for "Linux kernel 2.6+" in the system requirements field. I was sold. I voted with my dollars and gave my money to Logitech as they took the time and money to verify functionality on a Linux machine and to print the information on their labels. So kudos to you Logitech and I thank you for your help in the struggle to push the Linux movement. While many might find this victory small and meaningless, I think this is a big statement to the world. We came, we dominated, and now your peripherals wear our insignia. I happily paid the extra money to the company that was willing to give me some peace of mind that when I plugged that mouse in to my Fedora 13 Beta powered netbook that it would work and it did and I'm happy.

Thursday, April 22, 2010

Why I hope Intel breaks ARM in half

I've been a growing fan of the ARM platform for a while now but as time goes on my frustrations with the extremely drastic differences between ARM boards has begun to get under my skin. I've often thought to myself, "Why can't we just take an x86 machine and shrink its components to make an embedded system on a chip that walks, talks, and acts like the same old systems we're used to?"

In walks Intel to slaps me in the face with a big fat, "oh yeah ... we're totally doing that" and I love it. Its an amazing concept because I can take this SoC that will give me potentially days of battery life and run software that I've been running on my laptops, desktops, and netbooks since I've owned a computer. You know, software like the entire Fedora Distribution and all packages that might entail.

Intel recently demoed tablets and cellular telephones running on Moorestown CPUs that are claiming to be twice as fast as the current Pineview line of Atom processors as well as sporting a two to three times longer battery life. I'm a proud owner of an Asus EeePC 1001P and I'm getting about 8.5 hours of battery life on that thing with casual wifi browsing and a couple ssh sessions opened and this is all powered by an Intel Atom N450 which is a Pineview core running Fedora 13 Beta (full Gnome, etc. and it runs like a champ). With these claims of two to three times battery life, we really are approaching literally days of computing on a single charge from a processor that I can just fire up Fedora on. I like where this is going.

Lets go on a tangent for a moment, Apple has put a bid out to purchase ARM and I honestly hope they win it so they can absorb another platform just to kill it off. My hope is that Apple will win ARM, developers and distributors will not want to pay Apple/ARM prices or deal with their unreasonable developer agreements and will find comfort in Intel's Moorestown. Android and MeeGo are already supporting the Intel Moorestown line thanks to thier Linux roots and I like to think its just a matter of time before the mobile market abandons ARM all together. With the trend of tablet computers and smartbooks starting to gain some speed I think to myself, why divide ourselves as developers among multiple different ARM specs instead of having a standard target archticture that's been around for decades? But I digress.

Back on topic but keeping in mind the content of the tangent, lets think for a moment what this would mean for mobile platforms. Now, I want to start with the disclaimer that I love Free and Open Source Software but lets face it, half the internet runs on Adobe Flash. So while Adobe is beating its head against the wall trying to reinvent Flash for mobile platforms using several different abstraction models to keep the insanity of supporting all flavors of ARM from killing them entirely, Intel is quietly about to unleash the answer to their problem. To be honest, I don't care about Adobe in this respect (sorry Adobe, I just don't) but what I do care about are end users. If the end user can get a brand new Moorestown powered netbook with a day or two of battery life, double the performance of the current Intel Atom processors, and slap Fedora on there with out of the box support for everything they need as well as the option to add third party repositories for things such as Flash then I'm on board. Because in reality, the only reason x86 hasn't made it to cellular phones yet is because Intel hadn't found a way to pull off the battery life needed to do it. Now that they have, and I say we break an ARM or two.

Sunday, April 18, 2010

Fedora 13 Beta - Asus EeePC 1001P

It's tax season again and I got money back, not a very large amount but enough to cover a new budget netbook. With the budget in mind and the goal of long battery life I did my research and it was clear that the Asus EeePC 1001P (160gb version) was going to be top notch for the price. This little netbook (that I'm making this blog post from) is powered by the latest Intel N450 Pineview processor which offers some attractive bits in terms of battery life and form factor since it allows for a 6 cell battery that is almost entirely flush with the body of the netbook. For under $300 (USD) it is advertised to get up to 11 hours of battery life and is showing between 8 and 9 hours of battery life in real world usage.

I ordered it off and it arrived via FedEx on my doorstep yesterday afternoon and as per the included documentation it needed to charge for 8 hours before its first use. While I don't entirely trust or believe the battery needs that much time sitting on a charger I decided to play it safe. Once that horrible waiting period was over I was finally able to get it powered up and get Fedora 13 Beta installed. I was lucky enough to guess the right BIOS key so that I could get this little guy to boot from the USB stick with Fedora 13 Beta on it before Windows 7 (that came pre-loaded on this) ever got the chance to infect my CPU and other components.

Fedora 13 Beta installation went fine, but upon reboot the wireless card was not detected at all which was discouraging as all I could find on the internet were sources of needing to use ndiswrapper to make it function. Now, Fedora being notorious for leading the way and keeping in mind that I'm running a development build I had the bright idea to plug it into an ethernet port in order to download updates that have been rolling out as the bug squashing ninjas (Read: Fedora Contributors) find and fix problems in preparation for stable release.

Downloads done, presto rebuilds done, package installs done, reboot, wifi!!!

So here I am on my brand new netbook running Fedora 13 Beta + updates with *everything* fully functional and I couldn't be happier. One last piece is to find out why gnome-shell won't run but from what I understand its a graphics card specific bit because there are lots of reports of people having it up and running on other systems which is only a minor set back as gnome-shell is only a tech preview and is under heavy development itself. All in all, I'm extremely satisfied with Fedora 13 Beta + updates as well as with my Asus EeePC 1001P. Only recommendation I'd have to anyone in the market for one of these EeePC 1001P netbooks is to test out the keyboard, its just a preference thing. I like the keyboard on this quite a bit but I know of some who aren't fans so be sure to give it a test run before sinking the cash in.

Final words: Fedora continues to kick hind parts and take names, everything on this brand new netbook is working wonderfully and I couldn't be happier. Many thanks to all those involved in making my computing experience this amazing!


Monday, April 12, 2010

Texas Linux Fest 2010

This past Saturday was the Texas Linux Fest 2010 and Fedora's very own Max Spevack was a featured presenter. The Fedora crew (Max Spevack, David Duncan, Scott Collier, Julio Villareal, and me) arrived at 8am to setup and we transformed a simple and somewhat boring table with a plain white table cloth into an interactive environment for Fedora and the community at large via an impressive event box. The event box contained all the tools needed to make our booth top notch and in my opinion a contender for "best in show."

I would also like to note that there was a Red Hat booth right next to us where Thomas Cameron and a fellow 'Hatter' named Shawn(sp?) (I never caught her last name) were stationed. I want to mention how powerful of a statement I personally felt came as the result of Red Hat and Fedora having separate booths right next to one another at an event like the TXLF because while there is a closely knit relationship between Fedora and Red Hat, the two as entities are separate. While these two are separate they are not necessarily disjoint and I think it is a powerful move to make that distinction to the Linux community who is not aware of that fact and still have the uninformed misconception of Fedora being Red Hat's development playground. I consider it important to show up standing shoulder to shoulder to represent our specific areas to the Linux community.

With that said, on to the starting line! At 9am the doors flew open at the Texas Linux Fest and the line from the registration counter was out to the parking lot. We had prime real estate and as the participants were funnelled through the entrace and were brought in through a walkway that ran right by the Fedora booth. The booth got immediate attention and the day was off with a bang, people everywhere, we were running through media quickly, the tattoos were a great success, ink pens being taken, and all the usual reactions I would expect conference goers to have to swag. The main piece of the "swag grab" that I enjoyed was that the people who would come up to the booth didn't just grab and go, they would walk up, we as Fedora Ambassadors would engage them in conversation and a few minutes would pass (or hours in a couple instances) and they would pick up a couple items from the table and continue on their way.

We had one gentleman who was having issues with his Broadcom wireless card (surprise, surprise), he was a relatively new user and I was happy to help him. We scrambled around for almost an hour trying to find a free network drop to plug his laptop into an ethernet cable to install the appropriate kernel modules from rpmfusion. Once wifi was setup and successful, the gentleman who I had been helping quickly ran to the tables of other distributions who apparently hadn't had as good of luck as I had in getting his wireless to function and said, "The Fedora guy made it work." I'd call it a victory :)

As the day went on, conversations of everything from wacom tablets to ARM Architecture strategy was discussed between Fedora Ambassadors and those in attendance of the Texas Linux Fest. We at the Fedora booth used a convertible tablet laptop that I had from work to have a hand written "running list" of topics to take away from the event as a somewhat informal way of gathering information based on what the community is interested in, what they would like to see from the Fedora Project in the future, and what they love about Fedora now. We had quite a bit of positive feedback and a few requests for the future of Fedora, I'd call this a win as well.

All in all it was a spectacular event and I look forward to next year's TXLF!

I unfortunately lack a high quality camera, but David Duncan is not bound by this limitation and has some amazing photos here.

I went ahead and exported the output of the Xournal document from the tablet writings to a pdf and it can be viewed here.

UPDATE: I got word from Thomas Cameron that Shawn's last name is Briscoe. So thank you to Shawn Briscoe for coming out and kicking hind parts along with Thomas Cameron at the Red Hat booth! (I know this is a Fedora Ambassador's report but if you're this far in my blog post then you know my opinion on the co-existence of the two groups).

Monday, March 29, 2010

Package Management with Fedora

On March 3, 2010 I met with the Sam Houston Association for Computer Scientists in order to give a presentation on Package Management within Fedora. The Sam Houston Association for Computer Scientists (SHACS) is a student chapter of the ACM at Sam Houston State University and is an organization that I have been fortunate enough to be invited back to a number of times to present about Fedora and on this occasion I was fortunate to have around 30 people in attendance.

This Presentation was given about package management. I began covering about the overview of what a package is, describing how packages are groupings of files and metadata about those files in order to be installed unto a functional system. Some of these files may be executable, others will be for configuration of the executable application, documentation, or many other types of content. At this point I asked one of my favorite rhetorical questions, "Why should I care?" I went on to explain about how this concept can be used to break users from the bounds of their commonplace "next, next, finish" installation methods, the constant upgrading of individual applications one at a time, and using yet another utility to upgrade the operating system itself.

Going away from this concept for a moment, RPM makes its way on to the scene of the presentation with a quick overview of the history, what RPM is as a package format including a quick overview of macros and standards they represent, and then moving on with RPM the essential utility that allows us all to survive in a package powered world.

Now that have learned to install packages, what about all the dependencies? How will we be able to handle all of this by hand? Short answer: yum. Long answer: Yum is the YellowDog Updater Modified and it performs a large number of important functions and the most commonly known is that it automatically installs dependencies of packages without any further user intervention. Now we go back to the original rhetorical question, "Why should I care?" Well here we are, lets imagine being able to update, install, and remove any application on your system with a single tool, a single application, a single interface. Now take that and imagine it is also able to update itself along with everything else on your system. That's exactly what we have. None of the old traditional concepts that have snaked their way into proprietary operating systems that plague the planet, but pure open source package management that is your one stop shop.

"But Adam, I don't want to use the command line! It's scary!!" Don't fret! Here comes PackageKit to save those who are mouse interface inclined! At this point in the presentation I walked through some basic steps of how to navigate through PackageKit which took a very short time since it is so pleasantly straight forward.

Last little bit of the presentation is going over the concept of a repository so that users know where their code and content comes from, the ideas of where it comes from and the flow of developers/packagers that contribute to a repository that once tested and proven stable it released upon the public for installation via tools such as yum.

That's all for now! Apologies for taking so long to write up a report.


Slides from presentation (odp)