Archive for the ‘free software’ Category
Online IDEs and Freedom
Wednesday, June 6th, 2007Google released Google Mashup Editor today, which is an online IDE in the spirit of Forkolator. Google Docs is pretty similar to a design I had been playing with too. I guess Google and I have similar goals. The difference is, they implement their ideas, and I often just blog about mine.
But I’m getting a little scared. Google building a great, functional platform that’s going to entice a lot of people to spend the bulk of their time in Google software. But when we use Google products, we have no control over the software we’re using. We can’t change it. We can’t even prevent it from changing. Google has the keys to the car.
As a free software advocate, that’s scary.
As a user, it should be scary too. Yes, Google seems altruistic enough, but the fact is, they have interests. Often their interests align with the interests of many users, but what if you’re in the 5% whose interests are not being served? Your only option is to choose another product. Maybe find something from Yahoo or Microsoft.
But that’s not good enough for me.
And that’s why Forkolator is still important, even in the face of Yahoo Pipes, Microsoft Popfly and Google Mashup Editor. Forkolator is about giving people total control over the software they use, and encouraging uninhibited exploration of possibilities. Microsoft actively constrains our freedom to change our software. At best, Google is granting us a few limited freedoms because they’ve deemed those freedoms useful to some large segment of their user base. And because in this case, GME drives more traffic to their services.
Despite this minor detour towards proprietary software, I really believe the future of software is total Freedom. But for that to be true, we need to build infrastructure to compete with Google and we need to do it fast.
Dogfood, bootstraps, and working code
Tuesday, April 24th, 2007This is version 0.2 of ForkCode, the web-based IDE that I’m working on. IDE is an acronym that means “software for making software”.
There are a bunch of fun geeky turns of phrase that apply to what I’m doing right now. First, ForkCode can “bootstrap” itself which means I’m using ForkCode to create ForkCode. You know, like “pull yourself up by your own bootstraps!”
The second thing I’m doing is “dogfooding”. That means I’m using the software I’m writing. The term refers to eating your own dogfood, which is, ostensibly, what the head chef at a dogfood factory must do to ensure a quality product.
Lately I’ve been feeling like I should be moving forward, faster on things that’ll lead to my 2nd year project. But I’m not raring to go on those things, for better or for worse. So I decided: Erik, just do the project that you’re dying to do. And right now, it’s this. And maybe I’ll fall behind, but it’s better to do something than nothing.
And honestly, truly… I love this project right now.
The future of GNOME
Sunday, March 18th, 2007Here are a few thoughts on where I think the free software desktop needs to go. Apologies to the non-geeks reading this. I’d love to write this up for a broader audience, but I don’t have time right now and I just wanted to get the ideas on paper.
GNOME, and most of the Free Software world is still very focused on offline computing. Everything’s an application that gets downloaded and run on our computers. But web-based software is taking over the world, for a handful of very good reasons:
1) It’s trivial to install
2) Someone else maintains it for the users (Google is responsible for keeping Google.com working, not me)
3) Your data is on a server somewhere, which means it’s safer and easier to access from multiple locations
4) It’s a lot easier to make software collaborative when it’s on a server somewhere
So instead of assuming that Free Software is on the desktop and that the web is just something we want to support, let’s start thinking of this a little differently. Let’s start thinking that all software is going to the web, and Free Software needs to adapt so that people will still have the Freedom that Free Software is all about when they ditch their old desktop software for their much more attractive web-based software.
This new way of thinking leads to two big ideas:
1) We need Free as in Freedom web infrastructure. That means organizations providing hosting and online software management in a way that users are guaranteed the freedom to run, change, and redistribute the software, and have complete control over their data and privacy.
2) The Free Desktop needs to move away from being an all-purpose desktop, and towards becoming a modern web bootstrapping environment. Instead of providing an interface between a user and their data, it needs to become a cradle for web use and a channel between the data locked in a user’s hardware and their web apps.
That means GNOME should be competing with Firefox. GNOME and Epiphany should become one, and the world of GNOME apps should be thinned and stripped down into browser components:
- EOG should become an interface for getting photos off your camera and onto flickr
- We need a simple video importer to feed into something like JumpCut.
- We need to pull web apps out into the GNOME interface. Gmail needs to be a 1st class citizen on the gnome destkop.
- We should provide hooks for web sites to integrate tightly with the desktop experience. So, instead of Tomboy, we’d have an applet that pulled a tomboy menu off the web, and opened chrome-less browser windows with Tomboy web pages.
This approach ignores a lot of stuff you can’t do well on the web yet: listening to music, watching movies, graphic design, heck… any computer-intensive profession. But the web is catching up. There’s no doubt in my mind that within a few years there will be music-listening web sites that give iTunes a run for it’s money. But for the time being we’ll still need downloadable applications to do that stuff.
There are a few other developments I think GNOME needs to get on. Search needs to be FRONT AND CENTER. Beagle/whatever needs to be the centerpiece of the interface. Undo/redo/revision control are basically the same as they were in 1970. We need a modern undo/redo architecture. But the web is the 900 lb gorilla in the room, and the desktop that adapts to it first will be the one leading the way into the future.
