Thursday, May 5, 2011

On community management

There's an article "Community management for coders" at the SD Times that's very relevant to FreeDOS, and free/open source software development in general. It has some great advice for anyone who's interested in working in a F/OSS community.

In the article, James Bottomley, distinguished engineer at Novell and maintainer of the Linux SCSI subsystems, has three pieces of advice for smoothing over the inevitable social friction that can occur within an open-source project:

  • Keep it technical.
  • Don't just say "no"; say "no" with a reason.
  • Organize a face-to-face gathering at least once a year, if possible.

Joe Brockmeier (also from Novell) has an insightful quote about the "coordinator" role: "Community management really isn't about 'running' a community, it's about working with and facilitating a community."

And Greg Kroah-Hartman (Linux driver project) has this advice: "The best thing I've learned over the years is humility. There is always someone out there that is better than you and can point out problems in your code. And that's good, because in the end what matters most is the code getting better, and by virtue of that, Linux getting better."

Monday, May 2, 2011

The Future of FreeDOS

I've been thinking a lot over the last few years about leveraging our niche, and the future of FreeDOS as a modern DOS. Now that I'm back at project coordinator, I'd like to help drive this forward.

I start by thinking back to the early 1990s. Microsoft released MSDOS 5 in 1991, and MSDOS 6 in 1993. But they had clearly set their future direction towards Windows (3.0 in 1990, 3.1 in 1992 - and of course Windows 95 in 1995.)

FreeDOS aimed to create a free, compatible alternative to MSDOS. And I believe we met that goal in version 1.0 several years ago. We've even extended the feature set (read: utilities) from MSDOS 6. But FreeDOS is still - essentially - a clone of the old MSDOS.

But in an alternate reality, what would DOS had looked like if Microsoft hadn't moved to Windows? I think we get to define what that looks like.

And we shouldn't be afraid to change the classic definition of "DOS" to get there. Minimally, applications written for MSDOS 6 should still run under whatever "FreeDOS 2.0" becomes. Aside from that, we are free to make whatever changes to turn FreeDOS into a relevant, modern operating system.

I envision FreeDOS "2.0" as being a more modern version based on FreeDOS 1.0 (or 1.1, if I can convince someone to package up our current software set into a new release.) But FreeDOS "3.0" or some later version should switch to a multi-tasking FreeDOS model, with expanded driver support. Especially network driver support.

I think FreeDOS will remain a single-user command-line environment. I'd like to draw on other modern environments to define that. The GNUish utilities are an obvious area to draw on. I don't believe we need to create a "mini-Linux" environment, but having those GNUish utilities will bring a familiar feel to FreeDOS. By extension, that crossover with Linux may be enough - by itself - to attract new developers.

FreeDOS 1.0 (and the alpha/beta releases) divided our software into package sets, or "disk sets", with BASE being the area that replicated MSDOS functionality. As we transition into a more modern "DOS", I think we'll have to reconsider what's in those categories, including re-defining the population of BASE.

Saturday, April 23, 2011

I'm back!

Pat and I have been discussing this via email for a week or so, but it's official now. Pat needs to step away from the FreeDOS Project for personal reasons, and I've agreed to return as FreeDOS project coordinator.

So let me take this moment to say "I'm back!"

A quick summary for those curious about my whereabouts since doing the handoff to Pat in 2009:

I had planned to enter grad school, for a Master's degree in Management of Technology ("MS-MOT"). But a few months after passing the coordinator role to Pat, and right before entering the MOT program, I had an opportunity to apply for an outstanding job. I had to decide: pay the non-refundable tuition, and ignore the fabulous opportunity—or miss the tuition deadline to apply for the new position.

I went for the job. While I didn't get that job, those events led me to an even better position as campus IT Director/CIO at the University of Minnesota Morris, where I am now.

I never totally disappeared from FreeDOS, anyway. If you're on the 'freedos-svn' email list, you may have noticed I did some work on an updated FreeDOS Installer. And of course, I've been updating the web site.

Wednesday, October 27, 2010

New FreeDOS install program

Years ago, I wrote the first FreeDOS installer. It was a pretty basic installer, not much more than an install script in DOS exe form. It prompted the user in plain text mode, and scrolled from the bottom of the screen. This installer supported the FreeDOS Beta 1 ("Orlando") release, in 1998. So it's pretty old. In later releases of the FreeDOS "Beta" distributions, rather than re-write the installer into something that was easy to use, I bolted on the sketched outlines of a text-mode user interface. It "worked", but I always intended it as a "placeholder", something I'd eventually re-write as we got closer to the "FreeDOS 1.0" release.

However, as things sometimes go, I never really got around to re-writing the installer. Others picked up my work just prior to "FreeDOS 1.0", and added some prettier elements to the text-mode user interface, but it was still the basic installer that was written so long ago.

This has always been something I've wanted to fix, to completely re-write the installer and make it easy to use, make it "sane". I'm finally doing that.

I'll add some code and screenshots to my personal page soon, but I wanted to talk about it here also.

The new installer asks the user only a few questions: do you want to install everything, and do you want to install source code? From there, the installer takes over and does everything for you. After you answer those two questions, you can walk away and let the installer do its thing. A very obvious progress bar will show you how far along you are in the install process.

No, the installer doesn't even ask you where you are installing from (the "source") or where you are installing to (the "destination".) The install process should hard-code that, since the install CD is the obvious "source", and we can assume a standard default C:\FDOS "destination" now.

My hope is that the new installer will be a step towards a simplified FreeDOS install process. I'm writing the installer, but am looking for someone else to finish the install CDROM. Ideally, a streamlined install process would do the following:

  1. Select language
  2. Check if your hard drive is already partitioned and formatted with a DOS filesystem for C: (and if not, run FDISK and FORMAT for you)
  3. Run the new installer
  4. Execute any post-install setup BAT files
  5. Done!

The whole process, start to finish, should involve a minimum of prompts and menus. We have a lot of menus and options right now. For example, does the CDROM menu really need to have 4 boot options? It should be:

  • Install FreeDOS
  • Exit

And "Exit" should be the same as skipping the CDROM boot, to try the next bootable device - which we already do in "FreeDOS 1.". This is really useful, for example, when the user forgets the CDROM in the tray after installing FreeDOS.

DOS should be simple. Whatever we can do to simplify and streamline the FreeDOS installation process, we should do that.

Monday, October 11, 2010

Women in Open Source

The SD Times ran an article back in August, "Breaking down barriers for women in open source," by David Worthington. It's an interesting read, and you should check it out.

Free and Open Source Software ("FOSS") is built upon a community of users and developers. That community thrives when everyone is able to contribute, each according to his or her ability and interest. But that community will falter if it cannot achieve a "critical mass" of contributors. It is critical, therefore, for a FOSS project to include everyone in its community. That should be by default, but perhaps should also be by design.

From the article: "Barriers include the perception that the FOSS movement is a "boys' club," a shortage of female role models in the community, the feeling that women are being judged at a higher standard than men, feelings of isolation, sexist behavior, and non-coding roles that are often occupied by women being undervalued." These are serious issues that directly affect FOSS development everywhere.

After you read the article, I encourage you to think about the FOSS projects that you contribute to. Consider if the "culture" of the project community is welcoming of new members, especially women. Is your project a "boys' club" too? Remember, if a project is not open to everyone, it's not really "open", is it?

Monday, June 28, 2010

FreeDOS turns 16

The FreeDOS Project turns 16 years old today. Happy birthday!

You probably know the story already: in the 1980s and early 1990s, many people used DOS. I used DOS all the time - especially at university, mostly to write small programs to help me with my physics data analysis. MS-DOS was the operating system of the day, and I was a huge fan. Sure, Microsoft had already tried to introduce (with limited success) the new "Windows" operating system, but this was really just a shell that ran on top of MS-DOS. And Windows wasn't pretty; everything seemed more difficult under Windows.

So you can guess the reaction when Microsoft announced sometime in early 1994 (through tech magazine interviews) that DOS would soon go away, replaced entirely with a new version of Windows.

I'd also installed Linux by this time, and realized that if a small group of developers could replicate something as complicated as a Unix system, certainly we should be able to do the same with DOS? So I decided to create my own version of DOS, which I would make available to the public for free. We called it "PD-DOS" because much of our early work was released in the public domain.

PD-DOS was announced to the world on June 28, 1994. To cement my ideas, I created a PD-DOS Manifesto. By July 24, 1994, the name of the project had officially changed to "Free-DOS", though the name actually switched around July 16, 1994 (the revision date on the manifesto).

FreeDOS has accomplished a lot since then. We've had many releases of our official distribution, including "1.0" a few years ago, and others have made their own versions of DOS based on the FreeDOS kernel. PC manufacturers now include FreeDOS as an option on some of the systems they sell - including such big names as HP and Dell.

Here's looking to another year of FreeDOS!

Friday, June 11, 2010

I'm moving soon

I thought you'd be interested to know: I've accepted a new position at work. I am the new Director of Information Technology/CIO for the University of Minnesota, Morris. I start in mid-July.

Morris is about 3 hours away, so my wife and I are moving to a new home. Expect that I'll be out of communication starting around June 12 until about July 18.