Skip to content

Truly free homeschool software

Recently I’ve been seeing articles about homeschoolers using free software:

Free homeschool software: Probably the best conjunction of words that a homeschooling parent has heard since they found out that their child is going to summer camp. Why shouldn’t it be? Getting more for less is as American as homeschooling itself.

I’ve commented on several of these articles to talk about the greater freedom of FLOSS, which also happens to be no-cost.  This article is my canonical writing on the subject for future reference.

There is another kind of ‘free’, which is the free in freedom.  There is a software that embodies the best aspects of free-as-in-freedom and free-as-in-no-cost.

Free and open source software (FOSS) is built by communities of participants and contributors.  This is the software that is at the heart of countless electronic devices (cellphones, wireless, etc.), what makes google.com hum, and what makes Firefox a better web browser.  It is built using a similar collaborative model to that used by Wikipedia:

http://wikipedia.org/wiki/Open_source_software

FOSS is specifically built and licensed to permit you to redistribute it at no cost.  It also allows you to modify it at will, so as to give those modifications to other people.  Because many, many more people can see and affect the software, problems (bugs) are discovered and solved more quickly than with proprietary, closed-source software.

This is a good starting place for finding a few, key programs:

http://k12opensource.org/software.html

Several great programs that also run on Microsoft Windows and Apple OSX operating systems are:

Photo/graphics (cf. Photoshop) – http://www.gimp.org

Office/productivity – http://openoffice.org

Audio editing – http://audacity.sourceforge.net

Web browsing and extensions – http://mozilla.com/firefox and https://addons.mozilla.org/

Kid favorite drawing – http://tuxpaint.org

You can also look in to switching to a completely free and open source operating system, such as Linux.  You can download a “live” CD, which allows you to boot your computer to run a living instance of Linux that only exists until you restart — it doesn’t install the OS until you ask it to.

http://get.fedoraproject.org

… or Linux running the new Sugar kids environment (as used in the OLPC XO):

http://wiki.sugarlabs.org/go/Sugar_on_a_Stick

Another option is to run a live OS from a USB device:

https://fedorahosted.org/liveusb-creator/

So many, many options; many thousands of software packages for every walk of life.  All free as in freedom and at no-cost.

Who owns your file system and what you put on it?

This was the central question I reckon I carried away after talking with folks from Nexenta.  They have an open source core, Nexenta.org, that uses an OpenSolaris kernel with ZFS and a rebuilt Debian non-GUI userspace.  The combination provides network attached storage (NAS) with lots of potential as an open solution.

What resonated most with me was the idea that my content may be licensed to remain open and accessible, but if the file system is not free and open, the writing and storage of that content is paramount to encoding it in a proprietary format.

This was the most compelling part of the discussion, the part that made me want to rip out proprietary hardware and file systems to replace it with anything more open.  The fact that my soup pot doesn’t usually include OpenSolaris, ZFS, etc. doesn’t matter to me.

Yes, I’m sure you can cook something similar right now with btfrfs and Fedora 11.  There is another angle to view, which is stability over time.  You want to be careful about putting your first-line storage on a development-quality file system.  With that idea … does it make sense to create a first-tier storage using Nexenta.org?  It is built from OpenSolaris, a robust, stable, enterprise-quality kernel plus ZFS, which has been deployed in the enterprise for a number of years? ZFS is also a few years older as a technology than btrfs.

Then use Fedora plus btrfs as second-tier.  The trick is, both work on commodity x86 hardware, so you can create a large first- and second-tier storage solution for a fraction of the cost of a propietary hardware and software blend.  That’s a bonus after freeing your content from a proprietary file system.

I want an ‘rpm2all’ tool

The open source software companies (ISVs) that I’ve been talking with about Fedora have a common problem.  Ironically they, as usual, are resolving this problem individually.  Making an RPM that relies upon system packages is not seen as desirable, as it reduces their portability and focuses (in their minds) on one delivery platform — RPM-based Linux, specifically Fedora and Red Hat Enterprise Linux (RHEL).  They see that as artificially limiting the pool of customers.

What if we had a tool that could take a proper Fedora RPM and build other targets such as ZIP files?  In the process, it would download and bundle the dependencies instead of relying upon system packages.

Why would we care?  Honestly, the only platform I care gets good packages is Fedora and friends.  If one of these ISVs customers is running Fedora, RHEL, or a RHEL clone such as CentOS, I want those customers to have a better RPM-based experience.  If those customers are running another OS, there is little I can do to help their experience, and we don’t have time to care.

But if I can make the ISVs lives easier, or at least no harder than before, that is a way we can help make Fedora-based distributions better.

Our argument that there it is a strategic investment to build good packages is falling on deaf ears.  The common viewpoint sounds like this: “Our customers are not demanding RPM packages, they don’t want to feel we are pushing a Linux-based solution of any kind, after all we’re Java and run anywhere, and have you looked at how hard it is to package Java apps for Fedora?”

From a business viewpoint, I understand.  Being able to convince them to re-engineer in the middle of the race is going to take a lot more understanding than I can give them in five minutes here and there.  So I got to thinking … if they ran Fedora or RHEL as a development, build, QA, and release engineering environment, but they could get an installer out the other side for any OS (ZIP, EXE, BIN, DEB, OpenSUSE RPM, Mandriva RPM) using some kind of magic ‘rpm2all’ tool, would that be compelling?

I know there is a lot more to it than I’ve described.  I bet the MinGW cross-compiler has something to do with it. They might still need to specify mapping details for the conversion or plug in a proprietary installer builder.

But just as an idea … what do you think?

People still write business articles like this?

This morning I was looking at the usual awesome performance of RHT stock and glanced at the business article under the headlines section.  Despite the article title being about another company, Red Hat must have been mentioned, so I gave it a look.

In reading it, a number of inaccuracies and old school misconceptions leapt off the page at me (ouch!).  Unlike many modern online news and magazine outlets, there was no way to respond to the article, either in a comments section or to the author.  In the tradition of pundits everywhere, I’ll use my own bully pulpit to ask …

Have people not heard of Wikipedia?  Five minutes research there would have debunked most of the mistakes this author made.   The assumptions and tone made it sound as if he just asked a few people in the cubicles around him, “What’s the story with this Java stuff anyway?  What is open source?”  Unfortunately, the author, Eugene Bukoveczky, admirably free lances from Nova Scotia between bouts of wood chopping and bicycle riding (sounds like my kind of dude!), so he cannot blame his office mates.

Here’s a quick list of the inaccuracies, in the author’s own words, with the comments I would have put on his own article page if Investopedia (oh irony!) allowed them.

  • (S)o-called “open source” Linux software’ — When writers use the term “so-called” and then wrap the so-called term in quotes, it’s a way of double-insulating themselves from something that they don’t understand and fear will taint them by association.  Yeah, all that in the first sentence of the article.  FAIL by fear and lack of understandiing.
  • “… Linux, a freebie operating system produced by legions of spare-time code junkies fueled by lashings of hot coffee, Red Bull, Jolt Cola or some other stimulant to tweak the creative juices” — We suppose at one time that was a semi-accurate description of Linux coding, but it’s been over fifteen years since actual Linux companies arose and began paying actual programmers actual money to do actually amazing work.  If you look at who actually contributes to the Linux kernel these days, you’ll see many familiar names that are i) public companies, and ii) doing quite well for some time.  Understanding that seems within the purview of an investment writer. Beyond that, most features of Linux that are crucial to success, from the file system to the graphical display, are coded by professionals doing real professional work … professionally.  Not sure about all the caffeine, but I can personally assure Eugene that I’ve met many developers, they are plenty creative to start with and caffeine is not what really drives them.  Finally, it’s a small point but an important one — Linux is not free-as-in-freebie, it is free-as-in-freedom.  The same kinds of freedoms that allow someone to call themselves an investment journalist without ever having to understand what they are writing about.  Again, all discoverable with reading a few Wikipedia articlesFAIL by lack of clue and basic research skills.
  • Corporations get to profit from their efforts by giving away a cleaned-up package of this code, and making money from supplying service and maintenance contracts to their users.” — While the second half is roughly correct where it applies to just one or two open source business models, the first part is just silly.  Open source software companies are not typically freeloading on the backs of poor community members. Those corporations are contributing in the actual open source project, the code is already cleaned-up by the time it comes to QA efforts.  Any bug fixes from there go back to the upstream (rather, they should, if one follows an actual open source business model), so everyone gets the “cleaned-up … code”, not just the customers.  FAIL by misunderstanding what an open source business model actually is.
  • Linux has managed to capture about a 23% market share of the server market.” — Another assertion without reference or meaning.  Which server market?  Looking at the latest Netcraft count of just web servers, open source clearly dominates, with Linux a sizeable portion.  Animation studios, such as Pixar, Disney, and Dreamworks?  95% of their servers are Linux.  No “dominant” Microsoft servers there.  FAIL by assumption and misunderstanding generic data.
  • Sun has championed Java, the programming language preferred by most Linux users …” — While I’m sure “most Linux users” would disagree, and there is plenty of data to show what languages are preferred, that is not the true irony of this sentence.  The irony is, Java is the programming language preferred by enterprise and corporate developers who are not working on open source at all.  FAIL by misunderstanding enterprise market.
  • The move (Oracle acquiring Sun) has also being interpreted as the first step in a much needed consolidation process for the entire Linux market.”  Assertion without reference, and his inability to understand and analyze accurately makes this a very dubious statement.  “Much needed”? Says who?  FAIL by assumption.

Much failure all around.  I am now stupider for reading the article, and hope my own writing effort has raised my intelligence score back up a point or two.

We don’t document bugs but there is a page for that …

For a number of releases the bug triage team and others have maintained a common bugs page.  The idea is to make it simpler for a Fedora user to know if i) a behavior they have seen is already recognized as a bug, and ii) what there is to do about it (if anything).  It’s also useful to review in advance of installing/upgrading.

The Common F11 Bugs page is bigger and better than ever.  That doesn’t mean there are more bugs this release, it means the testing and triage teams are working overtime to make this an even more valuable resource.

This page documents common bugs in Fedora 11 and, if available, fixes or workarounds for these problems. If you find your problem in this page, do not file a bug for it, unless otherwise instructed. Where appropriate, a reference to the current bug(s) in Bugzilla is included.

Improving and easing testing/QA for the last few releases has not only been a major focus in the Fedora community, I think we are in the area of “something to be proud of.”

Personally, I enjoyed lurking on #fedora-docs, watching Adam Williamson, QA guru, interact with everyone in the Docs Team around late-breaking release notes and bug reporting needs.  I’m watching the organically laid paths we put down over the years being found and useful to the current teams.  Sweet.

Community Leadership Summit jelling – wiki up, attendees list grows

On Friday I had a good chat with Jono Bacon, who dreamed up the Community Leadership Summit, and Mel Chua, community leader from OLPC and Sugar who is interning with my team this summer.  Unsurprisingly, Jono has a lot of stuff sewn up and ready to go, including venue courtesy of O’Reilly.

New and useful:

  • Event wiki.  If you’ve ever participated in a BarCamp-style event with pre-planning on a wiki, that’s what this is about.  Pitch ideas in advance, find people with similar talk suggestions, pair up, and wow-the-world.  Plus it’s good for travel planning, car sharing, where-to-eating, and so on.
  • Lots of people attending.  Looks like over 150 have signed up, meaning we’ll have a good number actually show.  Although not an explicit goal of the first conference, we’d love to see people from outside of high-tech.  Lots of communities with volunteer and paid leaders out there.
  • Think of the CLS as an upstream leadership project.  It is a neutral space where people from any community can contribute ideas and grow materials, content, processes, friendships, and so forth that we all benefit from downstream.

One thing I’ve appreciated is that Jono has been working to keep the event very neutral, including skipping the usual round of high-finance sponsorship seeking.  We figure, for a free event we can be a bit more lean in terms of what is supplied.  Example – expect to take a lunch break and walk outside to downtown San Jose with the group instead of having an expensive catered lunch.  At the end of the event, we’ll have an all-hands session to go over how the event went and plan what we want to do next time.

That said, if anyone who has the (perceived) neutrality of an O’Reilly wants to sponsor a few things, such as coffee service on one day or event lanyards, contact one of us organizers and we can see if it fits.

One idea I had for lanyards was, bring your own.  How many do you have collecting dust hanging in your home office or jammed in a drawer somewhere?  Heck, I might be able to provide lanyards for the whole event!

See you there?

Interesting open systems problem

(This article arose from my sitting on an open source round table on Monday 08 June in Santa Clara, CA at ConnectivityWeek 2009My slides with full speaker notes are available.)

For those who’ve never heard of building automation systems (BAS) and the smart grid, you have my pardon to take a few minutes to go read up.  In essence, BAS controls lighting, heating/cooling, and power.  In some buildings, especially modern (last decade+) construction or recent reconstruction, there are smart(er) devices right down to individual fans or perhaps lights.  In some cases these end-devices have various embedded sensors that report data or have localized smartness.  For example, the heater, the boiler, and all the thermometers share data.  From a building management standpoint, there is a measurable savings.

Where these end-point systems are generally interoperable (they use the term Open Systems), the software that interacts with the devices, providing information and control to humans, is closed and proprietary.  There are also many end-point devices that only interact with a proprietary interface.

The problem of the controlling software is a chance for open source to significantly change the game.  Money and energy savings, just to start.  A way to improve the quality of life for people around the world.  It is even more interesting because of how potentially useful the existing on-site hardware is.  There are many end-point installations that can be controlled with open source-based BAS software.

The power grid is, in essence, a massive network already connecting houses and commercial buildings.  It is also fairly ubiquitous:  “You have an existing network in your house,” someone said to me, “It’s the bus bar in your electric box!”

Kent Hoskin, from Robinson Solutions, told me, “If there is one thing you take away to share, it is this – there is a new computer to program.”  This includes the 4 million+ commercial buildings in the US alone.

One project is Open Lynx, which a lead developer demonstrated before I spoke on the open source round table.  In the demo, we looked at monitoring from an installation in Washington, DC.  In a larger demo on the expo show floor the day after I was there, they were going to show control beyond monitoring.

The round table was enlightening for all of us.  Many people were engaged when I spoke, taking notes, nodding their heads, and asking questions afterward.  It was great to be able to bring a bit of “been there, done that” experience and mentoring.  At the same time, I learned a lot about the history and potential future of BAS, and the 1.5 hour conversation I had afterward with some attendees was one of the best I’ve had in a while.  I’ve made some good contacts and am looking at ways that I can help get together other like minded people, which is one reason for this article.

A smarter local grid gives an owner a way to smooth out some of the costs.  For example, a company might have three buildings at a large site, each on a separate connection to the power utility.  One of the buildings might have an unusual spike of power draw on Sunday mornings that sets the rate for the week, while another building has an unusually low power draw at the same time.  A smart system could smooth out, drawing power from one building to the other to compensate, and keep the rate set lower to a level closer to the actual power used throughout the week.  For various reasons, the disconnected systems situation is more common than not.

In further research during my travels home, I learned a bit more about where the mentality of this industry is.  For example, they have ISO standard networking protocols (BACnet) and there some a rejection, scoffing, or eschewing of IP as a protocol.  In one article, Sustainable Design of Building Automation Systems, the author makes a classic case where the best answer is “open source and open standards”, yet doesn’t actually draw that conclusion:

In conclusion, a sustainable BAS is achievable with proper initial design considerations that include the use of open protocols, standardized network management tools and open access to product and training.

It reminded me of the way IT uses TCO as a way to calculate costs and savings when considering open source and open standards, but stops short of adopting the full open source methodology.  “Oh, let me take these open standards as given to me and swallow them without ever thinking I can affect the future here.”  I was happy that at least the people who attended the round table got a dose of how and why participation in open source is key to getting maximum potential and exponential value.

(Post updated to fix name and URL of Robinson Solutions.)

And I didn’t have to do a thing

This is the first Fedora release since … Fedora Core 3? … where I wasn’t buried up to my neck getting the documentation ready for release.

Paul and I have carried the Fedora Docs banner for a long time, but it became very obvious that we were standing in the way of progress by enabling other people to figure, “Oh, Stickster and quaid have got that.”  So in the middle of 2008, we did all the right things we could think of to turn the reigns of the Docs Team over to other interested and capable community members.

We set ourselves a FAIL/NOFAIL goal this release.  It is extremely clear that not only did we avoid failure, but things got better for Fedora Docs after we got out of the way.

  • More content available at release (refer to docs.fedoraproject.org/ – in addition to the Release Notes and the Installation Guide, there is the revised SELinux Guide, the new Security Guide, and the updated User Guide.)  We more than doubled the number of guides, and when you do a page count, you’ll see it’s even more content than a doubling.
  • Heavy, heavy collaboration amongst a larger group of writers, editors, and leaders.
  • Full leadership from a mix of community members.  While some of the writers are paid by Red Hat to work on content externally (halleluja!), the Docs Team leaders are all contributors from outside of the technical writing field who are just passionate about making the best documentation we can.
  • Deep progress on website improvements (CMS FTW!) and process improvements, more of which will become evident after the release.

All in all, I’m so beyond proud and bursting that I might just cry.  Really.

Everyone, thank you.

Power from the people, power for the people

The evolution of Fedora as an entity of freedom has been an interesting experience.  For example, participation in the project wasn’t always as freely available as it is now.  Before Core merged with Extras in Fedora 7, the only way to contribute to the central part of the distro was via an employee of Red Hat. Once again on the eve of elections for FESCo and the Fedora Board, I find myself recognizing the special and possibly unique parts of how Fedora the Project extends freedom to it’s most intimate friends, the Fedora contributors.

To vote in the general elections, we only ask of ourselves two things: agree to the Contributor License Agreement and join a contributing sub-project.

Those sub-projects are ultimately responsible for who is in those groups.  They can make the barrier very high or very low.  For example, in the Fedora Docs Team, we only ask people to introduce themselves to the list and request inclusion in the account group via the web application.  Voilà, you are in the ‘docs’ group.  At that point, without any further requirements to prove yourself, you gain the right to vote for i) Docs Team leadership, and ii) overall Fedora Project leadership.  That is an appropriate level of barrier for the responsibility evident in the group.  Other groups, such as the software packagers or infrastructure sysadmins, have higher barriers and more steps for being added to the account group.

This makes it ridiculously easy to participate in the voting.  I like that.  It means that someone who spends time helping people in fedoraforum.org can gain a vote for who runs the project without too much effort.  They shouldn’t have to prove their ability or willingness to contribute to any group other than one sub-project.  If the sub-project wants the lowest barriers possible, they can have that.  For some groups, that means very low; you want people to be able to join and get right to translating, writing, designing, and so forth.

My reasoning is, these are thinking human beings.  If they can make the decision to get an account and start working, why raise barriers to their ability to influence their own future?

What are some potential risks or downsides to this approach?

  1. People might game the system.  This means, use the relative ease of gaining access to the system to fake a majority and take over the project.
  2. Making the process too easy means anyone of any intellect, background, and set of standards can gain a vote.
  3. If emancipation is too easy, people won’t value it.
  4. People might game the system by organizing in voting blocks.

How does the Fedora Project mitigate these risks?

  1. Firstly, simply agreeing to the CLA isn’t a human-free process.  Each account that agrees to the CLA is checked by Spot (Tom Callaway, Fedora Engineering Manager.)  Doing this as part of his responsibilities, Spot makes sure that each person is in fact a real person.  There is also a dubious value in the gaming of the system.  Once the gaming is discovered, it’s a simple matter of overriding the poisonous votes.
  2. Aside from the fact that is the truth for any democracy, why should we care?  If we cannot attract enough people smart enough to vote well, then we have bigger problems than people voting stupidly.
  3. Yep, this is a problem; voter turnout for Fedora elections can be pretty poor.  But the solution to that is not to raise the barriers but to convince people that what they have is very valuable, regardless of how freely it came to them.  This is one reason we are having multiple elections at one time, to gain on the momentum.  I am writing this post as a way of reminding Fedorans of the value of their vote.
  4. One of the effects of a real democracy is that people have the right to organize in voting blocks.  That is not gaming the system, that is the way it works.

Presenting ‘Participate or Die’ at CommunityOne Monday 01 June

If you, your friends, colleagues, business associates, or just about anyone who needs …

  • Support for how and why to invest resources in open source
  • A cluebat about why your organization should participate in upstream projects

… then send them to Esplanade 302 for my 11:50 am session this Monday 01 June, the first day of CommunityOne.  I’ll be presenting ‘Participate or Die‘, which is my more aggressive talk that shows real numbers, reasons, and evident truths about why you must participate in open communities that matter to your person and business.  Or, well, die.

If you intend to still be in business in the next few years, now is the time to take the proper strategic view about your participation and contribution to open source projects.

This is Sun’s CommunityOne event that happens concurrently with JavaOne.  However, I’m aware that this is also Oracle’s house, and the last time I was at the Moscone Center when it was Oracle’s house our host did not treat us very nicely.  I expect better treatment this year, but just in case, I’ll be packing my Unfakeable Linux t-shirt.

To make things really clear, though, I’ll be appearing in one of my favorite t-shirts, the VA Linux Systems one that says, “Open source. It’s the difference between trust and antitrust.” (Close-up of shirt back and what it looks like on a smart thinker.)