Announcing WriteType 1.0.98

The next version of WriteType (1.0.98) is now available for download!  WriteType is a word processor designed to make typing easier and more efficient for young students and students with disabilities.

What’s new in this release?

  • Grammar checking: WriteType now has an enhanced grammar checking system.  It will check for common grammatical mistakes, and offer to correct them.
  • Translation support: WriteType is now multi-lingual!  A special thanks to Emilio Lopez and Harm Bathoorn for providing Spanish and Dutch translations.
  • Word list sorted by use: The words you use most frequently within your document will float to the top of the list of word completions.
  • Tab word completion: Now it is possible to select words from the list of suggested completions by tabbing and back-tabbing through the list.  For convenience, the arrow keys may also be used.
  • Auto-save support: WriteType autosaves your document frequently so that you never have to worry about losing any work.
  • Changed file extension: Files created with WriteType are .wtd files instead of .html files.  There is no difference in formatting; the new format simply allows WriteType to be selected as the default file handler.
  • Diction checking: Advanced writers can use the diction check feature (courtesy of GNU Diction) to improve their writing style.
  • Readability and statistics: It is now possible to figure out at what level you write.
  • Fresh new look: WriteType has a new, more refreshing icon set.
  • Lots of bugs: If you were experiencing a problem with the last version of WriteType, chances are this version fixes it.
  • Some stuff I’m probably forgetting: Hey, I’m human!

How can you help?

If you would like to help out, there are all kinds of ways for you to do so.  Translators, packagers, testers, and programmers would be very much appreciated.  If you are a Debian developer and are interested in sponsoring WriteType, please let me know as well.  As always, however, the best way you can help WriteType is by getting it into the hands of students who could use it! I didn’t create WriteType for my own benefit, and letting it sit abandoned on a server isn’t helping anybody.

Getting WriteType

Download Ubuntu and Debian Sid .deb

Download Debian Lenny .deb

Download Python package (install using “python install”)

Bzr Branch

Other Links

Initial Release Announcement

Launchpad Page


Published in: on September 2, 2010 at 3:47 pm  Comments (15)  

Writing made easy for young students: Introducing WriteType

After several months of development, it is finally time to introduce the world to WriteType.  WriteType is an application designed to aid young students in writing and typing on the computer.  It offers text completion to make touch typing more efficient.  It also will read back the document with one of the four implemented text-to-speech engines, enable teachers to easily highlight areas for review, and more.

Why does WriteType exist?

My mom (an elementary school teacher) came home one day raving about the new coolest piece of technology acquired by her school.  These devices helped students to type more easily by offering them suggestions as they typed.  Becoming slightly suspicious, I asked for more information.

Apparently, the school had been purchasing these $400-500 devices because they offered word completion.  These devices, vaguely reminiscent of the infamous AlphaSmart series, were anything but ergonomic or easy to use.  Word completion was the killer feature that made paying $500 to type on a itsy-bitsy LED screen seem like an attractive offer.  It would seem that a feature included by default in most cell phones would have at least one desktop implementation, however a little bit of research showed that this awkward brand of “computer” was indeed the only way to make use of auto-completion while typing documents.

The shock effect alone was enough to motivate me to spend the weekend hacking up an initial version.  I sent out some early versions a local elementary school to be tested.  But as time went on, I began hearing from other people as well.  If a program that achieves such a feat was in such high demand, it is quite amazing that no proprietary software company has made any attempt to capitalize on the needs of schools.  Of course, readers of my blog understand how I feel about greedy educational companies who claim to want what is best for education but really just want to be filthy rich.  Because of these beliefs, I had no choice but to release WriteType as free software.

Where can WriteType be downloaded?

Downloads are available at the WriteType homepage.

How can YOU help WriteType?

  • Teach WriteType to a child or give it to a school
    • By helping out students, you are helping WriteType.  WriteType exists to benefit students, so the more that have access to it, the better.
  • Submit bug reports
    • I am able to test WriteType on a GNU/Linux computer, but my testing can only go so far.  It is vital that WriteType is stable if it is to be used to benefit students.  Bug reports can be submitted on Launchpad.
  • Submit feature requests
    • The best feature request come from those who use WriteType frequently.  Any problems, suggestions, etc. can be submitted as a Launchpad bug report with the tag “feature”.
  • Package WriteType for Windows
    • I have a limited ability to make packages for Windows, so more higher-quality Windows releases would be greatly appreciated, since that is what most schools will (unfortunately) be running.
  • Package WriteType for your GNU/Linux distribution
    • Currently, I have only a .deb package and a Python package.  Any other packages would be welcomed.  I also tried (unsuccessfully) to create a working PPA on Launchpad for *buntu distributions.  If anyone with experience on this would be willing to give me some advice, that would be very much appreciated.
  • Translate WriteType
    • If you are interested in translating, let me know and we’ll talk privately about it.
  • Submit a patch or join the development effort
    • If you are a Python developer, I would love your help!  The more, the merrier!

If you have any questions, you can ask in Launchpad Answers or leave a comment.  I hope you enjoy WriteType!

Published in: on May 15, 2010 at 8:03 pm  Comments (18)  

Five things Free Software has taught me

I’ve been in Free Software for a few years now and learned a ton from it.  Sure, I learned how to use new types of software, became efficient on them, and honed my programming skills, but stopping there would be missing the point.  Free software has so much more to offer than just computing and technical benefits.  In fact, the technical side is the least important thing I’ve learned from my experiences.  Free Software has brought me far beyond knowledge of its source code and taught me lessons I will value for a lifetime.

1. Centralized control isn’t worth it

When one single governing body gains absolute control over something, it is only a matter of time before that governing body increases its power tremendously.  Many times, it does this in order to avoid vice, but counterintuitively, only ends up creating more of it in the process.  Take any modern established proprietary software company that started out in the 60’s or 70’s for example.  These software companies were revolutionary in their decision not to share their software for the benefit of learning, but rather, keep it a secret in order to make money from it.  As time went on, the companies began imposing slightly harsher methods upon users in an attempt to foil the plans of those who refused to pay.  This was the beginning of techniques such as license keys.  As users developed ways around the methods, the methods kept getting progressively harsher, severely punishing casual proprietary software users who had been legally using and paying full price for the software since the beginning.

It would not be enough to stop here, though.  Proprietary software companies, caring only about eliminating competition, have no regret in choosing not to support competitors’ file formats (or even worse, supporting them incompletely), slowing down their software to sell the user a “speed upgrade”, and spying on the user without his/her consent to aid their marketing departments.  They even have no shame in not bothering to release security updates until there is already an epidemic.  Users don’t have the freedom to correct any of these because one company alone controls all aspects of the software in question.

Just the other day, I overheard a conversation between two of my peers.  It went something like this:

“I got a new iPhone the other day!”

“Sweet!  Are you going to try to hack it?” (Note: “Hack” here is used in the sense that it has come to mean in today’s society: breaking security.)

“I don’t know.  I know someone who broke into his iPhone and bricked it.  And, I mean, you can’t just go into the store and ask for a repair, because you’ve voided your warranty by hacking it.”

“I hacked my iPhone.  It worked perfectly.  And it is awesome!  Now I can run all sorts of apps on it that aren’t in the App Store!”

It is sad to see that people today actually have to use the term “breaking in” to describe changing the software on the cell phone they own.  People now willingly accept the fact that they just can’t run any application that the developing company didn’t authorize, because this restriction has become so common.  In the case of the iPhone, owners have to make a decision as to whether they want to try to modify the software on the device they own (described as “hacking”) and risk an update from Apple that destroys their phone, or use a device that performs only as Apple wishes it to perform.  Purchasing an iPhone is willingly handing over complete control of the device to Apple because this approach has been so tightly ingrained in society as necessary.

2. The strongest approach is a philosophical approach

As the main partitioner between the Free Software Movement and the Open Source Movement, it is apparent, in this regard alone, that it must have a significant amount of meaning.  When one really digs into the specifics, though, this idea becomes even more important.  Nobody would ever build a skyscraper without spending tiring hours on a sturdy foundation to keep the building up.  Likewise, constructing a movement on the grounds that a development style always produces less-buggy, more secure, or more featureful software is worthless.  On these foundationless grounds, what would be the problem with using Skype and locking not only yourself, but also all of your friends, into one company’s software and protocol?  When cost gets thrown into the mix, things get even uglier.  One who bases his/her opinions on these subjective measures would be enticed by high-quality software available at no cost.  Though I make no claim to it’s quality, even Microsoft Windows is “free of cost” to consumers.

The majority of the people in the world choose not to pickpocket.  But why?  It couldn’t possibly be too difficult.  If the thief runs, he/she probably won’t get caught, and it is a quick way to make some extra cash.  Most people believe it is wrong to steal, and therefore, won’t rob a wallet.  The philosophy that one should not steal overrides the benefits that may come from stealing someone’s wallet.  It is the same reason that Vegans don’t wear leather, Mormons abstain from caffeine/alcohol, and environmentalists drive hybrid cars.

When it comes to software, though, the majority of people take a lesser stance.  For those “casual users” who have somehow learned about the Free Software Movement, few will take the philosophies seriously since they create so much inconvenience and trouble.  Would one be likely to support dismantling one’s house upon learning that it was seated upon a sacred ancient burial ground?  Because it creates so much inconvenience and would be outrageously expensive, most people would likely ditch this new ethical dilemma, on the grounds that they had very little opinion about it before it began affecting their life.  Yes, the house is ruining the sacred area, but nobody informed the homeowner in question about this problem before the purchase, so the shame should be placed elsewhere.

When one keeps a 100% philosophy-based center when making every-day choices, it is impossible to make a regrettable decision on those aspects in which one has philosophies or values.  Putting morals before convenience and ease may be tough at times, but it will help ensure permanent solutions that carry much more meaning.

3. An open and creative mind does wonders

Before I became involved in Free Software, I had far different opinions, ideas, and beliefs than I do today.  Free Software helped me open up my mind to new and unfamiliar concepts.  This software universe had been going on behind my back for years.  If there was this much in software alone that a technology-savvy guy had never even heard of, I figured, there must be quite a bit out there.

One of the best parts about the Free Software community is that it is composed of a huge diversity of people with a huge diversity of ideas.  Richard Stallman’s is a perfect example.  Most of his ideas and beliefs, especially his political ideals, are somewhat unorthodox and not widely accepted.  Previous to reading his opinions, I had laughed Ralph Nader off as a joke, as I had heard nothing but humor about him previously in my life.  When I actually met someone who supported him, I took the time to understand his politics.  It just so happened that I shared some of Nader views.  I stopped my warrantless distaste for the 3rd party candidate, and gained a great deal of respect for the man.

Another good example can be drawn from my life.  I am a composer, and one of the biggest hurdles for me in switching to exclusively Free Software was my sheet music typesetting software.  I used a proprietary package under Wine for quite some time, because none of the other options available did what I wanted.  Or so I thought.  I had tried Free Software packages to fill this purpose, from Rosegarden, to MuseScore, to Lilypond, to Canorus.  I convinced myself that, since none of them behaved exactly like the proprietary package I was used to using, none of them were as good.  Some time later, I decided the final movement of of my last piece of proprietary software should end soon, and that I best move to exclusively Free Software.  I forced myself to use MuseScore for my next composition project.  By the time I was done, I had actually forgotten how to use my old piece of proprietary garbageware.  MuseScore did everything I wanted and more.  Yes, it behaved slightly differently, but I found I could be much more efficient – while using Free Software!  It was a double win for me.

For developers, opening one’s mind to unfamiliar creative ideas is essential to creating practical solutions.  The majority of those working on Free Software are autonomous and get to choose what they want to work on.  (Even of the large corporately-funded developer base, many have a great deal of liberty in this regard.)  They are not told to implement specific attributes by their management, or pressured by paying customers to add a certain feature.  They work because they want to help themselves, their user base, or their software project.  There is plenty of room for experimentation.  One of the main arguments used for Free Software is the advantage of not reinventing the wheel, yet in the case of nearly every hole in the software platform to fill, there are at least two equally effective options.  KDE and Gnome.  Grub and Lilo.  OpenOffice and Koffice.  Emacs and Vi.  The list goes on.  These pairs exist because the developers had different ideas as to how to design an application, which features to implement, and what the goals of the project were.  In all of the cases above, the synergy created between the pairs has only gone to further enhance both projects.  In other words, contrasting ideas have improved each other.

4. Knowledge was meant to be shared

Back in the middle 1850’s, when the Industrial Revolution was beginning in Britain, the country attempted a quarantine of ideas.  Britain was the first country to go through an industrial revolution, and wanted the ideas for the machine designs to stay contained within the country so that it might prosper economically.  It was a failure.  It was unbelievably naïve of them to think they could stop the spread of an idea.  As the cliché goes, “If we both have an apple, and we exchange apples, we each still have one apple.  But, if we each have an idea and exchange those, each of us has two ideas.”

Some companies try to restrict the flow of this knowledge.  In fact, many companies do this and expect to get away with it.  They believe that putting DRM on digital media will prevent it from being illegally pirated.  They believe that product activation procedures will prevent it from being illegally shared.  They believe that information can be contained.  Even in the days before the Internet, information and so-called “intellectual property” could still be, and were, exchanged.  As the information age went on, though, corporations became progressively more obsessed with controlling the spread of knowledge.

This trend of open information holds true even in tightly-protected situations.  The Watergate scandal leaked to the press through one of US President Nixon’s most trusted colleagues.  Microsoft was recently discovered to be using code stolen from a competitor on a social networking site, even though the code was never released.  Pictures from the Iran protest in early June of this year circulated the Internet, despite the efforts of the government to prevent their spread.  The examples continue, but all hit the same chord: there is no use in preventing the spread of information.

So instead of working to prevent this spread, why not encourage it?  Why not get the ideas, capabilities, and functionality of any given piece of software out to as many people as possible and kindle the flame?  There are many ways to make money, so why choose a method that requires investing just as much time and effort into making software that lots of people want to use as trying to prevent the usage of said software?  It sounds counterintuitive and/or just plain stupid on paper, but is generally seen as the traditional and conservative way to do it.  Physical products must be treated differently than knowledge.  Government can assist in the process of selling knowledge in the same way as a physical product, but due to the nature of the commodity, it will never be the same.

5. Anyone can make a difference

When I started off in the world of Free Software, I wanted to contribute, but didn’t think that an 8th grade student would be able to contribute anything worthwhile.  I proved myself wrong, and joined the Joomla! Documentation team, writing and editing documentation for the software package.  As I learned later, documentation was one of the most lacking areas in the Free Software community.  When I started learning to program in PHP, I wrote small extensions for the Content Management System I then knew so well.  They were small enough to be easily written by someone with little experience, yet useful enough to be widely-deployed.  I moved on to larger applications and contributions.  Frequent emails from users of my software showed me just how much of a difference I was making for them.

No matter what you do, remember that your actions do make a difference.  If you find a bug, report it!  The first bug report of your life may be a little shaky, but how else can one learn to report bugs?  Your reports make the software better for everyone.  Just maybe that crash you reported will save some people from a major data loss in the future.  If you have decent writing skills, consider writing or improving some documentation for your favorite Free Software application so others will have a less frustrating learning curve.  Translating documentation or an application itself opens up that software to a new demographic of people, most of whom could not possibly use the application prior to your translation.  Bringing up Free Software in a conversation and/or promoting it more seriously opens the philosophies and the software itself up to new people as well.

Even a simple “thank you” to a project member can go a long way.  Free Software isn’t written by machines; it is written by countless individuals that give up a significant amount of time each day to do what they do.  Showing appreciation helps developers know their work is worthwhile.

Now, just for a second, I challenge the reader to imagine what the world of Free Software would be like if nobody believed they could make a difference.  Very little Free Software would be written, and that which was written may not be released to the public.  A completely Free operating system would be out of the question, as only small research projects would exist.  Businesses, with no faith in their ability to succeed with Open Source, would resort to writing proprietary software that can be sold on a shelf.  The Free Software Movement would be inexistent without this wisp of a thought.  In fact, Richard Stallman wouldn’t have bothered writing the GNU system if he thought his project wouldn’t mean anything.

It is so easy to imagine how horrible the world of Free Software could be like this, so why do people all too often let it slide in the “real” world?  This world is so much bigger than the Free Software Sphere that people tend to feel that their actions mean less.  However, they seem to be forgetting that, while some action we make won’t directly influence everybody, every action we make affects somebody.  And just maybe, when one totals the sum of the somebodies and the somebodies of those somebodies, just maybe every one of us changes the world every day.

Because our actions mean so much, it is vital that one governing body, be it a corporation, government, or other mass, doesn’t take away our freedom to express ourselves as we please.  We would no longer be changing the world in our own way, but in the way desired by this group in power.  It is vital that we keep a philosophical approach so that our beliefs stand behind our actions.  Even if we make an unwise decision, we make it for a rational reason that shines through to others.  It is vital that we keep an open mind to ensure no good idea goes unnoticed, and a creative one to generate good ideas of our own.  One man’s seemingly worthless idea may be another man’s inspiration.  It is vital that there is an uninterrupted stream of knowledge, and that information is not held back for personal benefit at the cost of others.  Knowledge and information are the building blocks of change.  These concepts are vital not only to software, but also to every-day life.

And to think some people only see the technical benefits.

Published in: on December 20, 2009 at 4:42 pm  Comments (69)  
Tags: ,

When you see Flash, Duck and Cover

The best thing anyone can do to continue making the Internet more closed, restrictive, and prohibiting is to use Adobe Flash as it exists today. The Internet was created to allow for the open and unconfined infrastructure to share information; yet, it is being used today for the opposite purpose: to stop this information torrent. Many people do not see Flash as an issue, and don’t view Adobe as a malevolent authoritarian. In fact, though, Flash is the biggest bottleneck on the Internet’s effectiveness in the same way that the variety of world languages spoken worldwide is the biggest bottleneck on the global social network. A change in Adobe’s business strategy with regards to Flash is the only way to turn this unnecessary throttle on the potential of the Internet-connected community into a true innovation and synergistic technology.

Some may not notice the restrictions we experience in our everyday lives. One such restriction is that of software like Flash. In the video market alone, Flash is the number one method used to control access to “intellectual property”. Flash does much more than just restrict video content, though. Unlike HTML and Javascript, which are saved in human-readable formats, Flash files are in a format that only computers can read, so nobody is able to see exactly what these files are doing to their computers. Because of this, anybody can restrict access to the content of the file itself, or even include viruses or other malicious software through the use of Flash Player.

The biggest restricting factor, though, is the fact that consumers must use the software distributed by Adobe in order to view Flash files in their entirety. This is a major problem because, with a 99% market penetration, Adobe can do anything it would like. Adobe Flash is installed on more computers than even Microsoft Windows, which naturally gives them a huge amount of power. The dependency of people on Flash Player is so great that Adobe could chose any day to shut all installations of Flash Player down until the user payed a $40 ransom fee. If Adobe ever fell short of money, this would be a convenient and no-hassle way to gain money, considering most people would end up paying this fee for access to games, videos, and a multitude of other possibilities online we often take for granted. This is only the tip of the iceberg, though. Adobe could block out competitors’ software, spy on the users, or even include a “back door” to allow employees to remotely control anybody’s computer. With Flash’s massive install base, Adobe could technically do anything they want to your computer.

Devoted individuals have begun developing alternatives through reverse engineering, such as “Gnash” and “swfdec”, but those are still unable to be completed due to the lack of cooperation by Adobe. Adobe initiated the “Open Screen Project” to give the appearance that it promoted choice in platforms and ease any fears regarding Adobe’s obsessive control, yet it really just restates the knowledge that was already gained through the effort of previous reverse engineering techniques. The only benefit of the Open Screen Project was the promise Adobe made not to sue any Flash-alternative projects, yet this promise, in reality, just affirms the excessive control Adobe has over the platform. Recently, Adobe sent a Cease and Desist to SourceForge, a company that hosts community-developed software projects, regarding a hosted project called “rtmpdump”. This project opened up features of Flash to average people that were previously only available in Adobe’s Flash Player. Despite Adobe’s claim to transparency and neutrality, SourceForge was required to remove rtmpdump from its site, confirming yet again the massive amount of power Adobe has.

A further issue with the Flash format is its dependency on software patented by multiple companies. These patents make Adobe’s promise worthless, as other companies also have the right to sue when their own patents are violated. Patent law was created to encourage innovation, but when computers entered the scene, corporations found they could benefit from the law by exploiting loopholes that allowed software to be patented. Eventually, trying to patent as many elementary concepts as possible became a business strategy, and any company who didn’t follow this strategy risked a lawsuit. Software patents have ranged from online tests to pop-up windows to hyperlinks to progress bars.  In addition, almost all of the major audio, video, and image formats are or have been covered under numerous patents. As you can well imagine, nearly all computer software is covered by multiple patents from various companies. The biggest companies pool their patents together and agree not to sue each other in exchange for access to the patents from the other biggest corporations. In this way, Adobe cannot be sued for using certain components in Flash, but everyone else can for using those same components.

With the inability for consumers to use any alternative Flash players besides the one created by Adobe, one would expect the official player to be of high quality, right? Studies have found the opposite to be true. Not only does Flash have a huge number of security problems, but it also slows down computers significantly, especially computers that run operating systems other than Microsoft Windows. Flash consumes an average of 50-80% of system resources on Mac OSX. The leading cause of crashes in the Mozilla Firefox web browser, according to the bug reports submitted by users, is the Flash Plugin. Unfortunately, this is something Mozilla cannot improve, no matter how badly their users want it, because Adobe will not allow it. Efficiency can be measured in more than just performance, though. Flash users who want to minimize their carbon footprint will be unhappy to know how negatively Flash affects power usage. Flash, especially banner ads cause ones computer to use much more energy. Simply disabling Flash saves an equivalent amount of power to turning off a light bulb.

The most logical solution to this problem would be for Adobe to allow open access to view, modify, and distribute to the code programmers will understand used to develop Flash. This strategy would have a multitude of benefits for not only consumers and Adobe as a company, but for society as a whole. Collectively, consumers would like the best possible experience online, and Adobe would like to make as much money as possible. Both of these private interests would be stimulated.

Consumers would benefit greatly with Adobe’s decision to allow open and unrestricted modification and distribution to its platform. Consumers would no longer have to worry about what would happen if Adobe tried to exercise excessive control over users, because anyone would be able to modify Flash to exclude the offending features. If this were to happen, Adobe would no doubt lose its reputation; however, if it were to happen today, it is possible that nobody would ever find out. It has been shown by projects such as the Linux kernel that those who can, will make changes to software to scratch personal itches. Corporations will naturally make changes to improve community-developed software when it will help that corporation’s own products. A multitude of corporations currently depend on Flash, making them all candidates to assist in improving Flash Player for the benefit of all. Speed is important to everybody, especially wealthy corporations that want their employees to be as productive as possible. As demonstrated by the Linux kernel, security and stability problems in community-developed software get fixed incredibly quickly.

Adobe is the party that would yield the largest benefit from opening up Flash. Adobe’s business strategy with regards to Flash is to develop a massive number of technologies centering around Flash, and then sell a really expensive software to create Flash videos. The vast majority of these technologies have opened source code to stimulate usage and entice those who like modifiable and redistributable software. Unfortunately for Adobe, these have not penetrated the target market because the product they depend on, Flash, does not allow modification or redistribution. Adobe’s other income with regards to Flash come from licensing versions of Flash Player for use on embedded platforms, such as cell phones. While it is logical to expect monetary reimbursement from large corporations for the ability to use Flash Player, problems arise when these corporations choose not to pay for the license. A notable example of this is with the iPhone. The lack of cooperation by corporations results in Adobe losing control, because it limits access to the software from potential users. Through the exploitation of this target market (all Internet-connected users) Flash has the potential to become a true standard; in this case, Adobe would hold the key to producing content for the standard: “Adobe Creative Suite 4”, its flagship product. Allowing public access and modification to a company’s software is the only way to allow other corporations to help increase that company’s market share. For example, Flash could be improved by search engine companies to allow content to be indexed more easily, benefiting all companies involved and allowing for further standardization.

There are other possible solutions to this problem, though they are not as elegant or effective. For instance, it is possible for some devoted activists to start a new software project to replace Flash. It would have similar features, but would not be compatible with existing Flash scripts. Though many appreciate the value of this type of project, it would nevertheless advance very slowly in what we have come to expect out of modern Internet-based technologies. It would also make extra overhead for the consumer, creating the need to install yet another web browser plug-in. Finally, this solution would divert developer time away from Flash Player alternative projects, such as Gnash and swfdec, which are increasingly necessary, and make it impossible to use the existing jungle of Flash scripts.

Another solution, though much less plausible, is for consumers to stop using Flash altogether. The problems that come attached to this solution are obvious, though. First of all, it is nearly impossible to raise awareness for any cause, especially one that takes a long time for people to understand. In addition, Flash has become too embedded within the lifestyles of many Internet-connected users to “just quit”. With dependencies on video sharing sites, education material, games, and more, only the most devoted users would be able to resist the pressure. This option would be much more effective as a protest technique to convince Adobe to allow modification than it would be as a solution on its own.

As you can see, Flash started out as a slightly obnoxious insect, but it grew over time into the monster that it is today. Adobe has too much control over the software. The control it has makes it impossible for Internet content to be truly accessible to everyone, and requires every user to subject his/herself to Adobe. It also carries a large number of problems along with it that Adobe has no desire to solve, as solving them would not increase its market share. By allowing the modification and redistribution of Flash, both Adobe and its consumers would benefit from the synergy that would be achieved. Nobody can build a skyscraper alone. Until Adobe makes Flash more permissible, Flash users have no choice but to sit in the monster’s mouth and hope it doesn’t get hungry.

This is a copy of the social injustice essay I recently wrote for Language Arts class. If you want the version with in-text citations and a bibliography, feel free to ask.

Published in: on May 29, 2009 at 6:38 pm  Comments (35)  

I met Richard Stallman

Yes, I seriously did have the opportunity to meet him personally, and listen to his speech on the Free Software Movement.  Let me attempt to explain the experience, and how it came to be.

About three weeks ago, I was reading my email.  I got one from the tclug (Twin Cities Linux Users Group) mailing list claiming that Stallman was going to be in town for a speech at the University of Minnesota.  I was a little skeptical at first, but after checking the UMN website and confirming that he was really going to be in Minneapolis, I was overwhelmed with excitement.

Somebody from the tclug list emailed Stallman and asked if some people from the list could have dinner with him.  His response was, “I will have dinner with you if you change the name to the Twin Cities GNU/Linux Users Group.”  A flame was ensued.  I started getting an average of 30 emails a day on the subject, with the spike being (I believe) 60 messages in 8 hours.  The flaming continued, when some people decided to start sending in email ballots to vote.  This infuriated some people, and caused even more of a flame war!

The emails died down a few days before he started speaking. This was a bummer.  I would have liked both to eat with Stallman, and to change the name to “Twin Cities GNU/Linux Users Group”.  At least I would probably get to kind-of talk to him at his speech.

I got a phone call during Calculus class last Monday, the day before his speech, about an hour before school got out.  It was my mom.  Somehow, she worked her magic and got us both seats to a dinner with Richard Stallman.  Some other people from the tclug list would be there, she said.  I ran home and checked the emails she had forwarded to me.  It was true.  I had a personal invitation to dinner from Richard Stallman.

When my mom got home, we left right away to get to Minneapolis on time.  We arrived early.  I had a conversation with one of the other tclug members for a while, when rms walked into the restaurant.  There he was.  Standing in front of me.  He was a little shorter than I expected.  His hair was jet black and his beard was a shade of gray, in contradiction to the picture on Wikipedia.

He wanted to make sure this restaurant was “just right”.  I read that he was very particular about his food, and this was confirmed almost instantly after he walked in the door.  He ended up deciding that he did indeed want to eat there.  Even though it was louder than he wanted, their menu looked very good.  We all sat down and started discussing Free Software.

He was very opinionated.  For the most part, he had a strong opinion and could defend himself on everything that was brought up in the conversation.  Looking back on it, it shouldn’t have been that interesting considering the strong opinions he has on Free Software, but there was still something unnatural about it.  For example, after someone from our table ordered a Coke, he informed us (and the waitress) about a Coke boycott due to the murder of several Columbian employees, and directed us all to  Whenever someone asked him a question, he didn’t hesitate at all, or try to think of an answer.  It was almost as if he had premeditated the questions.  Even when he heard about my “seafood-phobia” for the first time, he talked to me for a surprisingly long time, giving me arguments as to why I should try my hardest to grow to love seafood.

Towards the end of the meal, he passed around his “Uncle Shelby’s ABZ Book” for us to look at, and pointed out some of his favorites.  After some pictures with him, he declared that he was tired, and wanted to go home.  After a friendly “Happy Hacking” to us all, he left with his driver to go back to his hotel room.  It was an eventful night, and I think all of us there were excited for his speech the next night.

My mother, brother, and I all arrived on the University of Minnesota campus the next afternoon to hear his speech.  I had invited some of my district’s tech people, but none of them were able to make it.  We made sure to get there extra-early to get a good seat.  As people started to pile in, it began to be a geek-haven.  40% of the people all had laptops.  Most of them I saw seemed to run proprietary software except one: an OLPC XO.  Almost all of those without laptops had some other device, like an iPhone, a Treo, or a Blackberry.  I didn’t see any Freerunners, but I’m sure there were some, probably even a couple Debian ones.  This would be a very educational opportunity for most of the crowd.

His speech began with an introduction of the 4 freedoms, and the explanation of why each one is important.  “Leaving so soon?” he asked someone as he walked out of the room.  “I hope it wasn’t something I said…”  “No, I’m selling FSF merchandise.”  “Oh, then go right ahead!” he responded.  He went on to talk about how proprietary software is unethical, and how it is our job to bring Free Software to the world.  Then, of course, he became St. IGNUtious, a saint in the Church of Emacs.  Both my mom and my brother were surprised at how informative his speech was, and had all kinds of questions for me about why Free Software wasn’t more widespread.  Both of them were surprised at the amount of humor he used as well.

After the speech, he auctioned off a large GNU, and then had a QA session.  Someone (who obviously wasn’t a big fan of his) tried to outsmart him about his opinions on copyright.  Earlier in the speech he talked about the moral dilemma with proprietary software.  He explained that if your friend asks you for a copy of a piece of proprietary software, you have a choice to make.  You can hurt your friend by saying, “No, I can’t do that, this is a secret that you can’t know about,” or you can give your friend a copy and hurt the proprietary software company by reducing their profit.  He claimed that hurting the proprietary software company was the lesser of the two evils.  This man wanted to know if, since he advocated for people to break the copyright of proprietary software licenses, he also advocated for people to break the GPL license.  The man asking the question had a smile on his face that said, “I got you!”  Stallman, obviously frustrated by this questions, told the man that it was not about breaking licenses, it was about doing what is morally right and just.  The man didn’t seem satisfied, but there wasn’t much time left and there were several more questions, so he continued on.  After the QA session, he started packing up.  People mobbed him asking “Can I take your picture?”  He responded, “You can do anything you want, just don’t take up a lot of my time doing it.”  I went down there to get my gnu signed, as well as take another picture before we all left.

Now that it has had some time to set in, both my mom and brother are “doing their part” to spread software freedom.  My brother explained the concept of Free Software to a bunch of his Mac-fanatic friends.  My mom explained it to one of her friends as well.  Overall, the speech had a very positive impact on my family.  I am sure each person that listened to the speech walked out with a different attitude on software.  Anyone from Chile, Paraguay, or Uruguay should make sure to attend Stallman’s upcoming speeches there.  For everyone else, watch/listen to a recorded speech of his, or watch Stephen Fry’s “Happy Birthday to GNU” video.

It’s a GNU day.  What will you do to spread the word?

Published in: on October 26, 2008 at 1:07 pm  Comments (11)  

Will someone please kill one of Google’s heads?

Ah, Google. They run all of their servers on GNU/Linux, so try to give back to the Free Software community. Notice how I said “try”. Google is sort of like a two-headed monster. One head looks like a cuddly penguin who just wants to spread freedom.  This head started GSoC and GHOP, supported Software Freedom Day, and promoted openness through projects such as Android.  The other head looks like a vicious freedom-eating butterfly, ready to make money with proprietary software.  This head made Google Earth proprietary, used Flash for Youtube and Google Video, and prevented the other head from using the AGPL. It is obvious which head said “do no evil”, and which head invalidated that motto.

Google’s heads settled on an agreement. They would make an “open source” web browser named Google Chrome. The source code would be publicly available under a Free Software license, but it would require a 400+ MB download and 10 GB of space to compile. It would be available for both free and non-free platforms, but the non-free platform (that built only under a non-free compiler) would be released before the free one even built properly.

I found a Windows computer to test this so-called “Google Chrome” on. The installation was kind of a pain, because the install file didn’t have all of the required components. It had to download additional stuff during the installation. I suppose, though, that’s what you get when your system doesn’t have dpkg or yum… The only benefit I found was the speed of the V8 javascript engine.  It was noticeably faster, and javascript speed tests confirmed my observations.  The javascript caching made this already fast javascript engine even faster.

Cutting a few milliseconds off a stress test isn’t going to make me switch browsers anytime soon, though, not even when that browser will eventually support my operating system. It is a fad.  Some sites have reported that 2% of users are using Google Chrome. The purpose of Google Chrome seems to be to provide a framework for transforming the “traditional” operating system to a web-based one. Dumb idea. Firefox already works great for web services. That’s all we need. Google is spending all of this time trying to figure out how to integrate their services into the desktop. They come to the conclusion that all they need to do is A) make it available when you aren’t connected to the internet, B) make it faster, and C) make it not look like a web browser. For the majority of people, this doesn’t cut it. There are just so many other glitches. People are constantly saying “everything will be web-based” and “tomorrow’s operating system will be a web browser”. I don’t buy it. The world isn’t web-based yet. Until all computer users have internet access, nobody will switch completely to the web.I hope that everything will never be web based.  The biggest problem with becoming completely web-based is competing companies. If you use Company A, you can collaborate with people who use Company B and Company C. Company D only lets you collaborate with Company B, and Company E has a partnership with Company F. Data will be locked off in a similar way to proprietary standards today, but there will be a new problem. Open File Format advocates today use the analogy of sending your most valuable data off to a company, and hoping they give it back. This would literally be true with a web-based world. Think about it: your data is on some remote server, in some SQL database, run by some web application that nobody can look at or change. How do we know Google’s code isn’t relying on “average users” not knowing that the password-unprotected administration section is located at:  (You would be surprised at how many well known sites do this!)  Do we trust Google, or any other company for that matter, with our data?I predict the future will be semi web based.  After a while, more projects like EyeOS will sprout up.  They will allow you to use online word processors, operating systems, or whatever, but they will let you host them from your own computer.  People will have complete control over their data, yet they will be able to access it from anywhere and easily share it with anyone.  Google won’t lead us down this path, though.  Google is like any company: it wants money.  It will continue to use Free Software as a platform for locking users into its products.

The evil butterfly head won.

Published in: on September 14, 2008 at 12:37 pm  Comments (2)  
Tags: , ,

About my Blog

I have always felt so-so about blogs.  I enjoyed reading them, but I never imagined myself having one.  I thought they were a waste of time, so I didn’t give the concept of having  one much thought.  That was a mistake.  One day, from out of the blue, my dad declared that he was going to start a blog.  My whole family thought he was nuts.  He thought it was an amazing idea, and that he would get famous and be on the news.  He made a bet with us that he would have over 100 subscribers by the end of summer.  That was some easy money.  (I don’t want to give you the URL, though, because I don’t want anyone to subscribe to it.)  I continued on with my daily life until I had an interesting news feed pop up in Akgregator: “New FSDaily feature: community blogs!”.  My initial reaction was, “Has the whole gotten blogging fever?”, but then, it occurred to me: people may like to read about my opinions. Why?  Because I am a high school student who is a FOSS advocate.  I have a hunch there aren’t too many of those around.  So I had a discussion with my father.  In the end, there was an additional bet: that my blog would have more subscribers than his.  I went to go start blogging with FSDaily, but I didn’t really like the platform.  Therefore, I went here instead.

Published in: on June 16, 2008 at 12:55 pm  Comments (1)