Archive for the 'Free Software' Category



People Speaking – Save

— “How did you say that I can save a Word document as a MediaWiki file?”

— “You need to download an add-on for Microsoft Word. Google for ‘save microsoft word document as mediawiki’.”

— “I did. It brought me to a page about OpenOffice.”

— “Hmm… Great success!”


In LibreOffice, the freer version of OpenOffice, saving as MediaWiki is already available without installing any additional add-ons. It may be so in the latest version of OpenOffice, too. I used this feature to upload to Wikipedia dozens of articles that were written by people who can write well, but don’t want to learn the complicated MediaWiki syntax.

For Microsoft Word there is the “Microsoft Office Word Add-in For MediaWiki“. I tried installing it, but it didn’t actually work. Your mileage may vary.

Roth

miriamruth11-hp

miriamruth11-hp; copyright: Google; based on the original illustration by Ora Ayal

Today the logo appearing at the top of Google.co.il honors Miriam Roth, the author of the famous Hebrew children’s book “A Tale of Five Balloons”. She was born on the 16th of February in 1910.

The Google employee who uploaded the image, made a mistake: the filename is “miriamruth”, but it should be “miriamroth”. That’s what happens when there’s no proper way to write the vowels: Her last name is written רות, which is how the Biblical name “Ruth”, still common in modern Israel, is written. But the German last name “Roth” is written the same way, because in Hebrew “u” and “o” are usually written using the same letter, Vav.

There is a way to differentiate the sounds: רוּת is “Ruth” and רוֹת is “Roth”. Notice the placement of the dot in relation to the letter in the middle. The sign for “u” is called shuruk, and the sign for “o” is called holam; i wrote the bulk of the articles about them in Wikipedia. Most people don’t type these signs; usually it’s fairly easy to guess the correct pronunciation, but people don’t use these signs even when it’s needed, as is the case with Ruth/Roth, because typing them on the standard Hebrew keyboard is very hard.

For years this made me very angry, so i asked the Standards Institute of Israel to develop a new standard keyboard in which it will be easy to type these signs. I was successful at convincing the SII to do it. The work is now underway, and i actively participate in the monthly meetings, together with representatives from Hamakor – the Israeli association for free and open source software, Israel Internet Association, IBM, Microsoft, Apple, Google and other companies. I hope that the standard will be published in 2011; the technical implementation of the keyboard layout will take about ten minutes on each operating system, and shortly after that, i hope, it will be distributed to computers using some kind of an auto-update mechanism.

And then, i hope, we’ll start to see at least slightly richer Hebrew typography everywhere. I want it to happen, not just because it’s a nice tradition, but because this will simply make Hebrew easier to read – and will prevent silly mistakes, like pronouncing and writing “Ruth” instead of “Roth”.


See also: Maqaf.

Git glossary lacunae, part 1

If you work with linguistics, philology, texts or editing, you probably know what a “lacuna” is. If you don’t, then any dictionary will tell you that a lacuna is something that is supposed to be somewhere, but is missing, and it is usually said of texts in which words or whole passages are missing for some reasons.

I already wrote here about how much i hate the source code management system called Git (Git sucks 1, Git sucks 2). Actually, Git itself is probably a good piece of software, but learning it is terribly hard. I’ve been trying to do it for years and i still don’t understand almost anything. Learning Git is hard because every piece of documentation that discusses it is full of cryptic jargon. The solution to this problem is supposed to be in the man page called gitglossary, but it is very incomplete; in philologists’ jargon, it has lacunae.

I compiled a list of Git terms which i found hard to understand and which i could not find in gitglossary. At some point i thought that i would try to understand what these weird words mean myself and send patches with definitions to the maintainers of that file. Unfortunately, i am too busy to do that. The least i can do is to post that list here. If you are a Git expert, consider writing definitions for them and sending them as a patch to Git’s maintainers.

  • add
  • author
  • bisect
  • clone
  • committer
  • diff
  • grep
  • log
  • packed ref
  • remote (as a noun)
  • repo (it means “repository”, of course, but the glossary should mention this abbreviation)
  • reset
  • staging, staging area (a synonym for “index”, if i understand correctly)
  • status
  • treeish
  • working copy (this one seems simple, but it’s not)

These words are defined in the glossary, but the definitions are unclear:

  • parent – I couldn’t understand a word of that definition.
  • reflog – The definition says that this thing “can tell you what the 3rd last revision in _this_ repository was”. It is unclear whether the number 3 hear is just an example or it always refers to the 3rd last revision.
  • checkout – This should be defined very clearly and carefully, because the usage of this term in Git is quite different from its usage in other version control system. The current definition is unclear and circular: a checkout is “the action of updating all or part of the working tree with a tree object”; to understand it one needs to know what a “working tree” is – and it is defined as “the tree of actual checked out files”.

So, i’m sincerely sorry for only bringing up the problem without providing a solution. I hope that it’s better than just doing nothing.

(By the way, i would gladly post it as a bug in Git’s online bug tracking database… except that for some strange reason last time i checked Git developers don’t have one.)

Advocacy for the Uncool: SVN vs. git and Cygwin vs. the World

There are two Free Software packages that many Free Software people love to hate: Cygwin and Subversion.


Cygwin is a Unix-like environment on Windows. It gives the user a shell, and it’s possible to install there Perl, Python, Ruby, GNU make, gcc, vim and many other familiar tools from the GNU world. It’s even possible to run X windows using it.

I mostly use it for running Perl on Windows. There are two other major versions of Perl for Windows: ActiveState and Strawberry. Every now and then i try using them and i get immediately frustrated: from my experience, Cygwin is much more stable and predictable. Failure to install a CPAN module on Cygwin is much more rare than on ActiveState and Strawberry. Maybe i install the wrong modules, but for modules that i need Cygwin did the job better.

Cygwin is not without problems. But all too often it does the job more readily than ActiveState, Strawberry and GNU/Linux. Nevertheless, Free Software people tend to call me names, when i tell them that i use Cygwin. “You should expect problems when you run an emulator instead of running real Linux!”, they say. Well, what do you know – sometimes, i have to run Windows, that’s a fact of life, and there are stupid problems with Linux, too.


Another stupid holy war in the Free Software community is Git vs. Subversion (SVN in short). Both are source code management (SCM) systems. The “cool” Free Software people say that git is better, because it git lets you create your own repositories, because git is faster, because git is easier.

I can see the principal advantage in having a local repository, which is the way git works. I can work offline and make as many commits as i like. In SVN i need to go online for every commit. But that, in practice, is the only disadvantage that SVN has. People say that SVN sucks at branching and merging. They like to quote Linus Torvalds: “Did you ever try to merge using SVN? Did you enjoy the experience?” Well, i have news for them: I tried branching and merging using Perforce, Mercurial, ClearCase, SVN and git – and i didn’t enjoy the experience in any of them. So git also sucks at branching and merging, but the difference is that with git i lost data, too. Every single time i tried to branch and merge using git, i cursed the hell out of it, copied the files i wanted to change to a backup directory, deleted the repository, recreated it, and did the merge manually. Every single time.

Besides, every time i try to use git, i feel like a fucking scientologist, forced to look up every single word in the help files: how the hell am i supposed to remember the difference between “pull” and “fetch” or between “branch”, “clone” and “checkout”? To understand what “fetch” is, i need to understand what the fuck “head”, “tag”, “object” and “ref” are. Go on and tell me that i should sit down and learn git properly, but i didn’t have to sit down and learn SVN. It just worked without forcing me to understand things.

Call me stupid and old-fashioned, but SVN didn’t give me a headache. Ever.


So, cool kids, go on, keep being cool, keep telling people that Cygwin and SVN suck. But every now and then do a reality check, please. You find it fun to use git? Great. Just don’t force it on other people.

To the developers of Cygwin and SVN i want to say: Thank you. You deserve far more appreciation than you get.

International Phonetic Alphabet WIN

You love the International Phonetic Alphabet, do you? I mean, everybody loves the International Phonetic Alphabet. You know, these funny weird letters that tell you that the pronunciation of Eyjafjallajökull is [ˈɛɪjaˌfjatl̥aˌjœkʏtl̥].

But seriously, if you didn’t study Linguistics or didn’t at least study in a school in Russia, where English pronunciation is taught using the IPA, then you probably hate the International Phonetic Alphabet. In fact, chances are that you hate the International Phonetic Alphabet even more if you did. It’s weird, it’s hard to read unless you practiced for many months, it’s impossible to type and common computer fonts don’t support it well.

But people in the world of Free Software don’t like to reinvent the wheel. That’s why, for example, the developers of Mozilla Firefox, for example, strive to support defined standards, unlike the developers of Microsoft Internet Explorer who (officially) try to play nicely with existing websites and “not to break the web”. And that’s why Wikipedia chose to write all pronunciations in the International Phonetic Alphabet – because it’s an accepted standard, which is in principle common to all languages. Prof. Asher Laufer of the Hebrew University, a member of the International Phonetic Association, praises Wikipedia for deciding to stick to the IPA in all articles in his textbook “Chapters in Phonetics and Phonetic Transcription”.

But there’s still the problem with the fonts. There are Free fonts that support the IPA well, most notably Charis SIL, but unfortunately it is not included with Windows, even though it is Free and beautiful. So if you use Windows to browse Wikipedia, you may see IPA pronunciations not as they should look. The fonts support in Windows XP is quite broken; it’s better in Vista and Windows 7, but still imperfect. So you should download and install Charis SIL. Until today, however, even if you would install it, correct display of IPA wouldn’t be guaranteed, because different browsers made weird and inconsistent decisions about the font selection.

So here’s the WIN: I opened a bug asking to make Wikipedia display IPA consistently in different browsers on Windows, and Derk-Jan Hartman, a.k.a TheDJ, very quickly fixed it! Thank you, Derk-Jan Hartman.

OpenOffice WIN

WIN: I sent a university paper as an OpenOffice odt file and the teacher accepted it! For great justice!

Never

I shall never ever buy a book with Digital Restriction Management.

I buy a lot of books and i prefer to be buried in paper, pay more for moving, pay more for bigger apartments with bigger bookcases, than to buy files that i can’t copy any way i want.

No DRM book. Never.

Obnoxious Firefox Licensing

Mozilla Firefox comes in many localized versions for many different languages, which is a good thing.

Mozilla Firefox has built-in spell-checking, which is also a good thing.

So, for example, if you download the installer for English (US) or for Lithuanian and install it and go write an email in GMail or edit a Wikipedia article in one of these languages, you’ll immediately see your spelling errors. This makes perfect sense.

But if you download an installer localized for English (UK), Catalan or Hebrew, you won’t see your spelling errors. The Firefox binary has spell-checking capabilities, but the installer doesn’t include the actual dictionary. Firefox-compatible dictionaries for these languages exist, and they are licensed as Free Software (GPL or LGPL), and you can add them manually after installing (right-click -> Languages -> Add Dictionaries), but here comes the ridiculous part: The guys behind getfirefox.com refuse to include those dictionaries in the installer. The reason, apparently, is that to be included in the installer, the dictionary must be 300% compatible with Firefox’s license, because Firefox is tri-licensed as GPL/LGPL/MPL, and a dictionary that is GPL-only is not good enough.

It is hard enough to convince people to install Firefox in the first place; convincing them to install additional dictionaries, plug-ins, add-ons etc. tends to frustrate them even more. Contrary to the belief which is popular among Firefox power users, most people are not add-on junkies and don’t right-click everywhere. So, even though Firefox users in London, Barcelona and Jerusalem can see Firefox menus in their respective languages, they have dead-weight spell-checking code on their hard drives, because they didn’t get a spelling dictionary in the installation, and many of them don’t even know that a Firefox-compatible spelling dictionary for their language exists.

Is this obnoxious licensing requirement really required? Isn’t Free Software licensing supposed to make distributing software easier?

When i told my wife Hadar about it, she said that it is as ridiculous as the stuff i tell her about DRM.

See also:

The apple you’ve got in your eye

The Free Software Foundation‘s Defective By Design campaign against Digital Restrictions Management proposes to ask “Apple Geniuses”—about the restrictions that the Apple iPhone imposes on its users and software developers who want to write programs that will run on it.

Nice idea, i thought, i may do it, but i need better directions, so i left this sincere comment:

This looks like a fun activity, and i may try doing it at my local Apple store, but there are a few problems that i’d like to clear out before i embark on the mission.

1. I am in Israel. This questionnaire is quite US-centric. While Apple products may be more familiar to people in the US, where they are common in some schools and workplaces, it is not so in Israel. Here, until recently Apple computers were used only by a few graphic designers, and only recently Apple started marketing them to the general public. iPods are quite common here, and so are iPhones, but none of them are marketed half as heavily as they are in the US. Also, the last question is completely US-centric. Can you please improve it by making it more generic and international?

2. All of this questionnaire assumes that i must trust FSF’s claims blindly. I do trust the FSF and i strongly believe that it acts for a good cause and i assume that it doesn’t try to lie to me. Nevertheless, a few links to sources that prove the claims about the restrictions imposed by iPhone would strongly improve my point and my confidence when talking to the “genius”. For example: a direct link to a Nokia website that proves that any developer can upload their programs to a Nokia phone, a direct link to a website with Steve Jobs’ speech against DRM, a direct link to an Apple website that outlines the restrictions on software that can be used on the iPhone, a direct link to a website that proves that it is indeed impossible to play Ogg Vorbis-encoded music on the iPhone etc. Also, i don’t even know what does it mean to “activate” an iPhone.

3. The FSF expects people to refuse non-free software, and all Apple products have it, so it would be a healthy assumption that Free Software activists would not be familiar with Apple products, style, lingo, etc. This questionnaire, however, assumes that i am familiar with these things. I have never used any Apple product at all, so i would feel quite awkward discussing them with an Apple-style person, who are also rumored to be rather arrogant about their stylishness. So could you please improve on that point and give a few tips on talking to Apple people?

Thanks in advance.

Talking like this to employees who represent the company is a very sobering experience. Asking them non-trivial questions often frustrates them badly. It’s not my fault. They must take responsibility for their workplace.

Lliure

One of the places in which the Catalan presence is very strong is Free Software. Nearly every project and website related to Free Software has at least a partial version in Catalan – GNU.org, Wikipedia, WordPress, Mozilla, 7-zip and countless others. There’s a also version of free-culture.cc in Catalan – culturalliure.cat, where two hours of (pretty good) Catalan music can be downloaded under Free licences; that site is even somehow indirectly sponsored by the Generalitat – the government of Catalonia.

So i was very disappointed to find out that the website of Ramon Llull Institute doesn’t work in Mozilla. I tried to register for Catalan certification examination there, and it didn’t work; i’m almost sure that the website was programmed for Microsoft Internet Explorer only. I sent them a notice:

Hola,

Voldria inscriure’m a l’examen de català. Vaig anar a https://www.certificats.llull.com/Llull2/iniForm.jsp , vaig escriure meu número de identificació, vaig fer clic al continueu, i llavors va aparèixer pàgina buida amb res tret de títol “certificats de llengua catalana”. Potser aquest web no treballar bé en Mozilla Firefox, peró a meu ordinador tinc només Linux amb Mozilla Firefox i no puc provar-ho amb altres navegadors. Podeu ajudar-me? Gràcies.

I don’t think that a translation is really necessary. (And i’m sorry if i made any mistakes.)



Follow

Get every new post delivered to your Inbox.

Join 1,391 other followers