Category Archives: opensource

More Emacs evangelization: flashcard

Aris and I are both struggling with far too much kanji. I used a combination of kdrill to gain familiarity with kanji and ../emacs/flashcard.el to drill the meaning into my brain, as flashcard.el requires me to get a question right 5 times in a row before considering it solved. Aris searched the Internet for flashcard programs on Windows and played around with things like Kanji Gold and King Kanji, but couldn't figure out how to import our wordlist into them. Kanji Gold looked promising as it also used EDICT, but I couldn't figure out the magic number at the end of the dictionary entry. With over 200 words in our word list, there was no way we were going to enter those things one by one!

I told him to download Emacs and grab Jorgen Schaefer's flashcard.el from my ../emacs directory. I then grabbed the dictionary file that Kanji Gold couldn't recognized, replaced [ with : to get flashcard to recognize it without problems, then set up a deck for him. I tweaked the default faces a bit—they're horrible on light-colored displays. I copied the suggested feedback config and explained the pigeonhole method to him. I tweaked the checking function so that it checked for substrings and treated empty input as a definitely incorrect answer. He wanted the answers displayed all the time, so I coded that in as well.

The initial word list was too big, so I copied 9 words and put them into a file, then imported them into a deck. Later, when he finishes this deck, I'll show him how to create another colon file and import it. I'll also ask him if he wants to tweak the number of compartments.

He's asked me if I can get YM working in the text editor as well. I'm currently tunneled through Richi's host, but I think I can open a local tunnel for him as well, if he feels like using ERC. 'course, normal YM just might work, and chances are there's a YM-specific client somewhere in Emacs.

I've made no efforts to hide Emacs' complexity. I lean over and drop into Lisp code in front of him because I want him to have a working environment up and running as soon as possible. Who knows? Maybe he'll use Emacs even after the internship. =)

He looks like he's having fun, and certainly appreciates the fact that I can hack the editor to fit how he wants to do things. He wants to match the readings, too, which means I'll need to figure out how leim works under Windows. I'll do that on Monday.

On Technorati: , ,

debian-installer Tagalog translation complete!

([[OpenSourceInThePhilippines#note4][OpenSourceInThePhilippines:4]]"[[oss]]"[[l10n]]"[[Localization]])

Eric Pareja and other volunteer translators have finished the translating level 1 of the debian-installer into Tagalog. Please check out the completed file at http http://news.upm.edu.ph/~xenos/tl.po . Comments and improvements would be very much appreciated. Three more levels to go!

A glossary of terms can also be found at http://news.upm.edu.ph/~xenos/debian-tl/kartouche .

Eric Pareja also invites interested people to participate on the Debian Tagalog mailing list at http://banwa.upm.edu.ph/cgi-bin/mailman/listinfo/debian-tl

E-Mail from eric pareja

On Technorati: ,

A question of scale

([[OpenSource#note2][OpenSource:2]]"[[oss]]"[[OpenSourceIssues#note2][OpenSourceIssues:2]]"[[ToBlog#note2][ToBlog:2]])

Open source allows people to work on an individual basis. Developers can jumpstart their projects by using existing code, creating software that answers their own needs and perhaps the needs of a small group of users that often also contribute improvements. Because the source code is open, people can easily choose the features they want to include or make minor modifications to get existing code to behave the way they want. Open source development promotes personal communication with users, and user requests can go straight to developers without passing through marketing. How is this different from other kinds of user-developer relationships, and is this an advantage open source developers can use?

On Technorati: ,

Ethical issues in open source

([[OpenSource#note1][OpenSource:1]]"[[oss]]"[[OpenSourceIssues#note1][OpenSourceIssues:1]]"[[ToBlog#note1][ToBlog:1]])

One of my students e-mailed me asking for help finding interesting ethical issues in open source. Here's the partial list I sent him:

  • What is the fundamental ethical issue behind open source software? There are zealots in both the open source and closed source camps, but the world isn't as black and white as people paint it. What do _you_ personally feel about the issue of open source? Think about this a great deal. I think it'll give you an aha moment. =) This is something really worth writing about.
  • Think about the difference between open source software and closed source software, and the difference between free software and commercial software. Note that free != open source, and commercial != closed source. Think about what the different combinations mean from the point of view of users, developers, and companies.
  • Businesses would like to be able to hire fresh graduates and put them to work right away without having to train them in the specific software used in the business. Learning how to properly use a toolset takes a lot of time, and these companies argue that this kind of training should be part of students' formal education. In addition, many HR personnel filter resumes based on keyword. Students also sometimes become restless when they're asked to use languages or toolsets not seen in the job ads. As a result, there's strong incentive to teach the quirks of vendor-specific products like Microsoft Visual Studio .NET instead of focusing on general ideas. This is one of the biggest barriers to open source adoption in schools. Should schools cater to their market, or should they also explore alternatives?
  • Large companies complain about the unlicensed distribution and use of commercial software (popularly known as piracy). However, it actually strengthens dominant companies. For example, would we really be so dependent on Microsoft Office if people only used legitimate copies? If enough people chose not to buy Microsoft Office, then alternative office suites could flourish. Unfortunately, the unlicensed distribution and use of software means that other people can assume people run Microsoft Office, leading to a vicious cycle. What do you think about that?
  • Non-trivial software programs have errors. Sometimes these errors are severe, exposing your system to attacks. Some major software vendors practice 'security through obscurity'; security holes are not publicized, and the companies sometimes aggressively go after whistle-blowers who try to point out weaknesses in the software. Because the companies are the only ones with access to the source, they are the only ones who can fix the broken programs, and their resources are limited. On the other hand, open source exposes all source code for potential audit. This means that other organizations and developers can examine the code for security errors, which often results in faster fixes when an exploit is actually discovered. On the other hand, it also means that crackers who want to exploit systems can find holes more easily. What do you think about disclosure versus non-disclosure?
  • Many people in the Philippines are not completely comfortable with English. We are too small a market for multinational companies to develop Tagalog versions, but some volunteers have been working on translating open source software. This has met with mixed reactions. Some people say that localizing software for the Philippines is a waste of time and students should get used to English versions right away; others say that localization is the key to helping more Filipinos get into information technology. What do you think?
  • Closed source software tends to optimize for number of features and ease of use, because that's what draws customers. It makes common things easier. Open source software often comes with a high learning curve but focuses on power and security, making it easier for people to use it to fit their individual needs. Think about the different markets for open source and closed source software, particularly in terms of security. What are the implications of these choices?
  • Open source means there's a lot of code out there that you can base your programming projects on. As a student, where should you draw the line on acceptable use of other people's code?
  • Closed source software often carries a "click-through license" severely limiting your rights and giving no warranty anyway (although this last part is buried in the fine print). Open source software tells you right away that there is no warranty. It's kinda funny the way closed source companies keep criticizing the fact that open source software isn't backed by a company. Look into the usefulness of support contracts for large and small clients. (Hah. Leading question. Sorry. ;) )
  • What do you think about NDAs?

On Technorati: ,