Search Results: "zed"

15 November 2009

Stefano Zacchiroli: RC bugs of the week - week 10

RCBW - week #10 Here is this week squashes, by yours truly (also truly amazed by the simple fact of having reached the 10th RCBW week, my DDPO NMU section probably hates me now): This week I've made (once more) a friday/saturdary rush to keep up, mostly because during the week I've been traveling (again) back to Italy and also because on mon/tue we invited Luk in Paris to discuss some Mancoosi-powered Britney (potential) improvements (and yes, have some fun also. BTW, Yves, Ralf was not visiting, he has been teaching in Paris for quite a while now :-) ). More on this as soon as the advantages will turn potentiality into reality. To conclude ... drum roll ... please join me in cherishing this week new RCBW participant, welcome on board Tim!

13 November 2009

C.J. Adams-Collier: Xen PV network driver

I haven t used Xen HVM until recently. When I was at Amazon and
hanging with the Xen provisioning folks, I recall complaints about the
performance of network drivers on HVM instances. I ve recently
discovered that this was due to the use of the ioemu virtual interface
(vif) system. In paravirtualized environments, Xen vif devices are
more efficient because the guest kernel can talk to the hypervisor to
schedule I/O. In hardware virtualized environments, the hypervisor
emulates the back end of a common network driver and the guest uses it
as if it is the real thing. The Xen team (or was it RedHat?) patched the 2.6.18 kernel such that
HVM guests got the best of both worlds. The guest ran in a HVM
environment, but also had a way of talking with the hypervisor by way
of the xen-vnif kernel driver
(kernel/drivers/xenpv_hvm/netfront/xen-vnif.ko). I may not be looking in the right places, but I can t seem to find
such a paravirtualized network driver for any kernels more recent than
2.6.18. This has recently become a bit of an issue, since karmic (and probably sid)
depends on udev 145, which depends on signalfd, and thus won t run on
kernels before (something like) 2.6.25. Unless I miss my guess (which is quite possible =]), this means one of
the following needs to happen: Has this already happened? Am I missing something?
<script>//<script language="javascript" src="http://reddit.com/button.js?t=1"></script>

12 November 2009

Holger Levsen: Customized Blends

Almost exactly a year ago, the term "Custom Debian Distribution" was changed to [1 "Debian Pure Blends"] to better reflect what it is about: a variation of Debian within Debian. So far, so good. Then there are also "Debian Blends", which are not pure, meaning they have some parts which are not yet in Debian.

But the intention is clear, a Debian Blend aims to be fully part of Debian.

This week it occured to me that there is something else, something which is widely done and which is something else, so it should have it's own term: "Customized Blends", where some parts of the "distribution" is taken from a Debian Blend, while there are others, which are customisations, which are not likely or even desired/possible to end up in Debian.

As I see it, LiMUX is such a distribution, or what is installed in the schools in Extremadura or Rheinland-Pfalz atm. Mostly the software they use is Debian (either from stable or backported version), while some parts are not, like bookmarks, wallpapers, custom (sometimes propietary) software or firmware for specific hardware.

My motivation in pointing this is out, is to create an awareness that those "Customized Blends" are an important and frequent part of the Debian Blends ecosystem _and_ that it's for their own benefit to contribute back. Minimising the diff to a "real" pure Blend is good :-)

11 November 2009

John Goerzen: In-Depth Review: Motorola Droid (with some iPhone comparisons)

The Motorola Droid A855 is the first Android 2.0 phone. I have been using one since Monday, having switched from a BlackBerry Pearl. I also wrote about Terah s iPod Touch recently, so I ll be making comparisons to it too. Here s my review. Hardware Physically, the device is very nice. It fits well in my hand. It comes in a fairly small box. It s surprisingly heavy for such a small device, but it isn t so heavy as to be a problem. It feels solid, sturdy, and durable throughout. Terah has the most recent iPod Touch 8GB, and compared to that, the Droid is thicker and heavier. The Droid s screen is awesome; a little longer but not as wide as the iPod Touch s. The iPod Touch screen seemed to offer less friction as I d slide my finger over it, which was nice but not a terribly big deal. I don t share some other people s annoyance with the keyboard. It is far better than the BlackBerry Pearl, or many other BlackBerries I ve seen. Along the bottom of the screen are some silkscreened buttons. My gripe with them is that they are easy to accidentally press. I ve done that more than once while using the phone in speakerphone mode, but you can lock the phone keyboard while you re on a call. I also don t share the complaint about battery life. It is excellent compared to the Pearl. Despite having a long-life battery, if I had it charged fully when leaving work at 5PM, by the next morning at 7AM it would often be completely discharged (though sometimes only half discharged). I believe that has to do with my home being in a poor reception area, and it spending a lot of energy looking for signals. In any case, the Droid has impressed me with its battery life and I have no complaints there. The screen, as I said, is brilliant and sharp. It is readable in various lighting conditions. By default, its brightness adjusts with the brightness of the ambient light. That s normally fine, but it can be annoying to stand in front of a light with the Droid in a shadow, watch its screen darken, and then shift a bit and it becomes bright again. There is a setting to disable automatic brightness. Button-wise, it has four physical buttons: the power/lock button at the top, volume up/down on the side, and a camera button on the side. The camera button only works when the phone isn t suspended (locked), and disappointingly can t be remapped to something actually useful. Just beneath the screen are four touch buttons: back, menu, home, and search. These are the ones I complained were easy to accidentally press. MicroSD and USB The Droid comes by default with a 16GB MicroSD card already installed. This is one huge advantage over the iPhone or iPod Touch: you can actually put things on the phone yourself, directly, without having to use iTunes and its limited features. I have, for instance, downloaded a PDF on the Droid and later copied it to my PC. I also copied a KeePassX encrypted password database from my Linux computer to the Android, for use with KeePassDroid. The iPhone/iPod Touch password programs don t support this kind of copying of files from your PC to the device, though one will let you put a database up on a webserver you control and download it from there. Plugging in a MicroUSB cable will start charging the Droid automatically. In order to make the SD card mountable, you must simply drag down the notification bar (which is how you get detail about what it s telling you normally) and touch the USB icon. When the SD is mounted on the computer, the Droid won t see it, of course. Touch the USB icon again to mount it on the Droid again, or just unplug USB. Wireless and Wifi The wifi support works like you might expect: pretty well. The cell phone reception works well, as does its Bluetooth support. It has an easily-activated airplane mode which disables all wireless features, which can then later be re-enabled. You can also individually disable wifi and Bluetooth. Oddly, you can t disable the cell phone network individually. The only way I could find to disable it is via Airplane Mode. User Interface The user interface, overall, is very slick and polished. However, I would have to say it is not as slick and polished as the iPhone/Touch interface. A few of the animated effects have a low framerate, which isn t really a big deal. More of a big deal is that settings and options can be scattered in many different locations, making them hard to track down at times. The device also offers fewer visual cues than the iPhone/Touch, though that is perhaps not significant. Like Apple s device, the Android 2.0 UI offers you three home panels, which you switch between by dragging your finger left and right. The iPhone shows some dots at the bottom of the screen, a standard UI indicator on that device that you can flick left/right, while there is no such indication on the Android. This is somewhat nitpicky though. I would put Android 2.0 and iPhone in the same general class of user interfaces, way above any other such device I ve tried. The Droid has an on-screen keyboard similar to the iPhone/Touch, though somehow it felt like the keys were smaller or easier to mistype. I m not sure why that is; maybe they really are smaller. The physical keyboard can be used at any point too, of course. Background Apps This is an area where Android really shines over iPhone. Android supports background apps everywhere. That means that your weather widget can be always correct, instead of being hardcoded at the factory to show 73 degrees as iPhone s weather icon does until you tap to open it. It means that more apps remember where you were and what you were doing when you switch to/from them. And it means that you can do things while that PDF downloads. Finally, it means that you can have native Jabber clients on the Android without having to do some mess with Apple push notifications plus third party servers, significantly reducing the complexity of such apps. Browser Now moving on to the applications preloaded on the phone, I ll start with the browser. It is, in a word, awesome. It is far faster and reliable than the browser in my N810. Compared to BlackBerries, of course, this is a real browser, not their limited one; and even so, it is still faster. It is also faster than the iPhone/Touch browser, sometimes significantly so. The pinch to zoom feature of the iPhone/Touch is lacking, and it must be said is both useful and pretty. Zooming softkeys appear on the screen when you tap, and do work well. It also automatically zooms if you tap on the page to fill out a form, for instance. The bookmarks save thumbnail images similar to the iPhone, and you can put bookmarks on your home screens as well. Rotating the Droid to landscape orientation causes the browser to also rotate, and on most websites it will also zoom in by default at that point, since it s got a wider orientation and doesn t have to shrink stuff to fit as much. The physical keyboard is very nice for filling in usernames and passwords. iPhone-optimized sites, such as Bloglines, work great on the Android. Though many of them fail to autodetect the Android as an iPhone-like device, and thus you have to manually ferret out their iPhone-optimized URLs. Email This is both a strong and a weak spot of the Droid. First off, it comes with two email client apps preinstalled: one for Gmail, and one for everything else. I haven t used the Gmail one, so this review doesn t consider it. You can connect the email program to your IMAP, POP, SMTP, or Exchange (ActiveSync) accounts in the predictable way. Each account can be configured with its own notification preferences, so you can easily see an icon, vibration, or beep when you get new mail on one account and not the other. All folders on an IMAP account are accessible, which is a very nice feature that is not shared by the BlackBerry. You can view your mail as a unified INBOX if you prefer. In such a few, a thin color bar to the left of each message summary tells you which account it came from by its color. This is a nice way to quickly deal with all new email, wherever it may be from, and ought to be emulated by some desktop clients. You can, of course, also view each account individually. The email program supports attachments, both viewing and sending. It does not appear to have the iPhone/Touch bug if failing to display emails forwarded as attachments. Now to the drawbacks. First of all, it inexplicably doesn t support the IMAP IDLE command. As a result, IMAP accounts are polling-only; there is no near-instant notification of new mail as there is with Exchange accounts, even though IMAP supports that trivially. Like the iPhone/Touch, Android 2.0 s mail program has a great deal of trouble with self-signed SSL certs, or SSL certs that are unusual in any way. Both devices refuse, by default, to talk to mail servers with self-signed SSL certs. Neither one offers to let you add an exception to recognize a particular cert in the manner that the built-in web browser on these devices would do. On the iPhone/Touch, at this point you need to obtain the cert by other means, stick it up on a web server, browse to it from the device, and add it that way. This trick doesn t work on Android 2.0, nor does adding it using the import from SD option. There appears to be absolutely no way to teach the mail program to use a self-signed cert on Android. The good(?) news is that you can choose to have Android accept any certificate. Many people in forums suggest that, and it does let it connect. Of course, it also removes much of the security benefit of using SSL/TLS in the first place, and is a terrible excuse for the lack of proper self-signed cert support. Both iPhone and Android devices have a horrible user experience in this area Quickoffice The Droid comes with some sort of Quickoffice software pre-installed. It can be used to view PDF, Word, and Excel files (at least; maybe more). But it is a rather strange beast. It has no icon on the applications screen. The only way to open Quickoffice is by opening a file that it supports in another app. So, for instance, tap on a PDF in the browser or open a Word attachment in email. I haven t played with it much, but I can say that it s read-only but seems to have high-quality rendering of all document types. Its PDF viewer is glacially slow on any page that has graphics. Flip the page to one with graphics and up pops a progress bar. And good thing too, because it might take 15-30 seconds to render a page. I will be looking for better PDF viewers in the Market; there are quite a few. Lack of file manager And that brings us to the next surprising limitation: there is no built-in file manager. I downloaded a PDF from the browser, and saved it to the SD card, but there was no way to look at it from the phone! Absolutely none. No way to delete it, rename it, etc. Several people recommended Astro, which solved all of those problems. Not having such a program built in is a weird glaring oversight. Of course, the iPhone/Touch doesn t have one built in, but in their case the glaring oversight is not having any files to manage Calender, Contacts, and PIM features This is an area of exceptional strength for the Android. I believe it s got the best PIM features of any mobile device out there, though it s not without its quirks. There are two calendar apps on the Droid, and they both have virtually identical interfaces and feature sets. I am rather at a loss as to why we are burdened with two separate apps. In any case, the app called Calendar works with a local calendar, or with Google Calendar syncing. It supports all the features you d expect, and plenty you wouldn t, including excellent support for meetings, viewing other people s calendars that you ve configured access to on google.com/calendar, viewing subscribed iCal calendars, etc. It has push syncing with Google Calendar, so new events appear in about 10 seconds. It is well-executed and completely flawless in every way I could see. Corporate Calendar is the same, but for hooking into Exchange or Exchange-compatible calendars via ActiveSync. We are evaluating groupware, and have so far tested it with Zimbra and Scalix. It worked well with Zimbra, and not so well with Scalix. That s not to say there were no problems. The meeting invitation emails Corporate Calendar generated appeared to have no body in the Zimbra mail client, or in Thunderbird (though if you look at the raw email, you see it does have a vcal entry in it). Meeting invitations sent to the Android can be displayed in the Email program, but the Email program doesn t offer accept/decline buttons, so you have to manually pull up the event on your calendar to accept or decline it. Other than that, it worked flawlessly with Zimbra. Scalix exhibited several data integrity issues that will probably make it unsuitable for syncing with an Android at this time. There is a built-in Calendar widget you can put on your home screen. It will show you the date and info about your next appointment. I miss the BlackBerry Pearl theme that showed me the next two appointments. There are some apps that claim to do this, but none of them work well. Contacts are also quite powerful. The contacts viewer aggregates your contacts from multiple sources into a single view, which is nice. It can sync in Gmail contacts, ActiveSync, and Facebook contacts. (How s that for a device with corporate and personal appeal?) The viewer works better than Apple s, and creating a new contact lets you choose which source you d like to add it to if you have more than one available. Continuing the trend of many recent devices, the Droid has no task/todo list support built in. Maps I ve heard people be all excited about Google Maps, saying it s the best maps ever in a phone (though I suspect they have forgotten that Garmin has added on a phone to their GPS products in the past). In general, they are probably right. And also they are probably irrelevant. The first thing that must be said is that the maps on the Android, like the iPhone/Touch and other such devices, are not actually installed on the Android. Consequently, for mapping or navigation to work, you must have a data signal, either wifi or CDMA. That immediately turns this into a GPS accessory, not a go-to device, because who wants to be stuck without a working GPS someplace without cell phone reception? (Such as several areas right near my house) I have a Garmin Nuvi 500 (see my review), and despite not being a terribly expensive GPS, it runs circles around the mapping in Android 2.0 (or iPhone for that matter). The 3D display on the Nuvi is very helpful for driving in dense city streets, and that s not available on Android or iPhone. The Nuvi has nice features such as one-touch detour calculation, excellent geocaching integration, accurate and sensitive receiver, etc. I will not be leaving it at home for trips just because the Android supports maps. That said, there is something to be said for having maps of Android s quality. It can be a nice crutch if you re somewhere unfamiliar but didn t expect to be, and thus left your GPS at home. It also can give you routing on transit sources, which Garmin can t, so if you re in an urban area with bus/subway options, the Android maps could be very helpful. I will probably try that out when we re in Chicago next and still pack the Garmin unit for driving around rural Indiana. The Phone The last built-in app to discuss is the phone feature. Yes, the Android is a phone. As expected, the phone integrates well with the system. There is not much of any great interest to discuss here. It s a phone. It integrates with contacts. It works. I use Google Voice, and have had their BlackBerry app for some time now. The Google Voice android app is far nicer. You have the option to make all calls via Google Voice, none via Google Voice, prompt each time, or only international calls via GV (which is presumably cheaper for such than your carrier). A couple of annoyances, though. One is that you have to touch a button to activate the keypad (to send touch-tone digits while you re on a call). It should be activated by default. Android Market vs. App Store I know some people love it, but to me the Apple App Store is like a cross between the sleazy guy selling watches from his car trunk and the tourist trap strip malls that sell 50-cent useless plastic memorabilia for $20. Yes, there are some quality apps in the App Store that aren t overpriced, don t violate your privacy, and do something useful. But you ll have to look hard. It still boggles the mind that most of the secure password storage tools for Android think they need access to the GPS, Internet, and at least one of your contacts, phone number, logs, etc. Yes, you heard me right. A password storage tool wants GPS and Internet access. And, being Apple, we all know how tight they ve locked down the App Store. Emulators are banned. Useful apps get arbitrarily banned at various points. Now, the Android App Market is better than the Apple App Store in the sense that it has a lower percentage of the crappy apps, and perhaps more useful apps, at least to my taste. That s not to say it s without crappy apps. It boggles my mind why most weather applets on the Market think they need to know my phone s status and identity, and why some apps that have nothing to do with the Internet or location services want to know all of the above. I don t install such apps. But there are gems out there. The small 400K weather applets that do what they advertise, and do it well. My absolute favorite is droid48, an emulator for my beloved HP 48GX calculator. Yes, an emulator. You can also find various NES, SNES, and C-64 emulators on the Market; Apple famously removed the latter from their App Store recently. And you re not tied to the Market either; you can install apps from wherever you like. KeePassDroid is another one. It reads the same database as KeePassX for Linux or KeePass (.kdb format only) for Windows. It s a secure password management system, and I can periodically copy the file from my desktop over to the Droid and have all my passwords at my fingertips but encrypted, of course. There is simply nothing that convenient for the iPhone/Touch because the device doesn t permit it. Music and Video I haven t played with these much, but the music player seems to just see MP3s placed anywhere on the SD and presents them as you d expect a music player to do. It looks fully-functional and easy to use. Conclusion Overall, I think the Droid is a very nice phone. It isn t perfect, but it bests the iPhone in a number of areas. I think it s probably the best phone for many right now, and the iPhone for some others. Update Nov 11: Two other annoyances I forgot to mention. One is that the power-button shortcut menu, as well as the lock screen, have a quick shortcut to put the phone into silent mode. Very well. Except, confusingly, these buttons not only enable silent mode but also disable vibrate mode while checking the silent mode checkbox in settings does nothing to vibrate mode. There is no built-in shortcut to enable vibrate mode; you d have to unlock the device, use the volume keys to go down the vibrate. The app Silent Mode Jammer helps with this. Second is that the documentation is as poor as any other cell phone around. For instance, there s a setting that says Voice Privacy. It s a checkbox. The description is Enable enhanced privacy mode. Thanks, but that tells me nothing. Nobody online seems to know either. A few overconfident forum posters claim it s encryption, linking to posts from 2003 about a Sony phone with a checkbox with the same name. Maybe it is encryption, but that is hardly definitive. The bottom line is it s not documented anywhere. Neither of these change my conclusion above though.

10 November 2009

Biella Coleman: Fsck Purity: The Politics and Pleasures of Free Software

The great thing about living and working in NYC is that there is a steady stream of conferences to attend, such as the fast approaching digital labor conference entitled Internet as Playground and Factory. The problem is that since I live 1/3 of the year in San Juan and often get stranded and stuck when my mother gets hospitalized, as is the case now, I am often not in NYC. Depending on my mom s prognosis tomorrow, I may or may not make it but I am working on my slides and revamping a few of my thoughts as I would like to attend. My new title is one I think some readers of the blog might enjoy: Fsck Purity: The politics and pleasures of free software (thanks karl) and the talk will be part of a panel The Emancipatory Politics of Play with Chris Kelty, Fred Turner, and Ben Peters. If you are interested in attending, register soon as it is free and open to the public but requires advanced registration. There are also already a collection of short interviews videos available, the one by me is a basic discussion of the politics of free software, conducted at the end of a very long teaching day, so I am not sure it makes any sense. I never watch my own interviews so I can t quite be the judge :-)

Biella Coleman: Fsck Purity: The Politics and Pleasures of Free Software

The great thing about living and working in NYC is that there is a steady stream of conferences to attend, such as the fast approaching digital labor conference entitled Internet as Playground and Factory. The problem is that since I live 1/3 of the year in San Juan and often get stranded and stuck when my mother gets hospitalized, as is the case now, I am often not in NYC. Depending on my mom s prognosis tomorrow, I may or may not make it but I am working on my slides and revamping a few of my thoughts as I would like to attend. My new title is one I think some readers of the blog might enjoy: Fsck Purity: The politics and pleasures of free software (thanks karl) and the talk will be part of a panel The Emancipatory Politics of Play with Chris Kelty, Fred Turner, and Ben Peters. If you are interested in attending, register soon as it is free and open to the public but requires advanced registration. There are also already a collection of short interviews videos available, the one by me is a basic discussion of the politics of free software, conducted at the end of a very long teaching day, so I am not sure it makes any sense. I never watch my own interviews so I can t quite be the judge :-)

Matt Zimmerman: Amplify Your Effectiveness (AYE) Conference: Day 1


Morning Session: Project Patterns I chose to attend a session entitled: Is this the Way We Really Want to do Things? Seeing Project Patterns and Changing What You Don t Like (Johanna Rothman). My goal was to explore the causes of the troublesome patterns I see in projects at work. In particular, I see:
  • Too many projects starting up at once
  • Projects being instantiated without enough consideration for the probability of success ( is this a good idea? rather than can we realistically achieve this? )
  • Key people finding out too late about projects which affect them
All of these patterns lead to increased project risk, communication bottlenecks, low motivation, and high stress. In the session, we conducted a simulation of a team, with engineers, a project manager, a senior manager and a customer. I took on the role of the senior manager. In the course of the simulation, we received requirements from the customer, implemented them, and delivered products. While the team was working on implementation, I talked with the customer about what was coming next: what would happen when we delivered, what the next project would be, and so on. Part of the simulation was that I had to be separated from the group while they were working. When we delivered the first batch of products, and the customer was happy with them, it was time to decide what to do next. We gave the customer a choice of two projects we had discussed, one of which was similar to the previous one (but larger scale and more involved), while the other was different. Despite repeated attempts, we could not persuade the customer to prioritize one over the other. So, I decided that we should change gears and start work on the different project. It seemed to be of greater economic value to the customer, and simpler to execute. One of the engineers disagreed with this decision, but didn t explain why. The project manager seemed to agree, and I left the team to work. They produced a prototype, which the customer liked, and with a few small changes it was accepted as a finished product. To my surprise, though, I found out later that the team was in fact working on both projects at once, delivering two different types of products. The decision hadn t actually been made. These unexpected products were delivered to the customer, but didn t meet the expanded requirements, and that work was wasted. The debrief which followed was unfortunately too short, and I didn t feel that we were able to fully explore what the simulation had revealed. The project manager indicated that he hadn t understood the decision to have been made, pointing to a communication failure. This reminded me that while we often think of a decision as an event which happens at a point in time, it is more commonly a process of change, which takes time and must be revisited in order to check progress and evaluate. A decision is really just an idea for a change, and there is more work to be done in order to implement that idea. This can be true even when there is a very explicit decision point : it still takes time for that message to be received, interpreted and accepted. One of the tangents we followed during the debrief had to do with how humans think about numbers. Jerry asked each member of the group to write down a random number, and then we wrote them all on a flipchart. They were: 8, 75, 47, 72, 45, 44, 32, 6, 13 and 47. This reminded me of the analyses of election results which indicate fraud. Afternoon Session: Saying No After lunch, I decided to attend Jerry Weinberg s session, Saying No That Really Means No. This was much larger than the morning session, with over 40 people sitting in a large circle. The subject of discussion was the variety of difficulties that people face in saying no to things which don t seem right for them. For example, saying yes to a project which is doomed to failure. This seemed like a good follow-on to the morning s exercise. Jerry began by asking the audience to name some of their difficulties, and tell stories of times when they had trouble saying no . One of these stories was role-played and analyzed as an example. Most of the time, though, was filled with storytelling and discussion. This is a deeply complex topic, because this problem is rooted in self-image, social norms, egocentrism, misperception, and other cognitive phenomena. There was no key insight for me, just a reinforcement of the necessity of self-awareness. The only way to avoid patterns like this is to notice when they are happening, and that can be challenging, especially in a stressful situation. Once you realize what s happening, there are all sorts of tools which can be applied to the problem: negotiation, requests for help, problem-solving, even simple inaction.

9 November 2009

Matt Zimmerman: Amplify Your Effectiveness (AYE) conference: Day 0


The AYE conference is an annual conference designed to increase your effectiveness in leadership, coaching, managing, influencing, and working in teams, whether you work in systems development, testing, product development, quality assurance, customer service, or consulting. It starts tomorrow, and I ve arrived today eager to meet the other attendees and see what the conference is like. My work involves all of those things, but the main reason I decided to attend was that I learned a lot at the Problem Solving Leadership workshop, which I attended in January and wrote about on this blog. When I heard about this event, organized in part by the same people, and realized I would be in the US that week anyway, I seized the opportunity to attend. The 2009 program is overflowing with sessions on topics I m interested in, some of which I have written about here previously. The speakers are all people whose insight I ve appreciated through their writing, speaking and teaching, so I expect I ll have a tough time deciding where to spend my time these next few days. The sessions are said to be experiential ones rather than lectures, so I don t think that I ll be able to hop between them, but I ll see tomorrow when the main program starts.

6 November 2009

Jaldhar Vyas: The Road to Wigan Dpen

3.0 format source packages can now be uploaded to the Debian archive. (Note: despite the title of this post, this is not the "Wig and Pen" format which is 2.0. See dpkg-source(1) for a detailed description of all the source package formats.) I tried converting my libcgi-application-basic-plugin-bundle-perl package with mostly good results. l-a-b-p-b-p is an aggregation of perl modules (in .tar.gz format) from CPAN. There is no upstream, this is a Debian only package. Currently the source looks something like this:
   
build-area/
    libcgi-application-basic-plugin-bundle-perl-0.5/
        debian/
            [all the standard stuff: control, rules, etc.]
        tarballs/
            CGI-Application-Dispatch-2.16.tar.gz
            CGI-Application-Plugin-AutoRunmode-0.16.tar.gz
            CGI-Application-Plugin-ConfigAuto-1.31.tar.gz
            ...
            [rest of modules]
The files in the tarballs directory are unpacked at build time to create the binary package. This works but has all the disadvantages of "tarballs in tarballs." By adding a file called debian/source format with the single line:
   
3.0 (quilt)
...dpkg-source is directed to use that format. Now I can rename each upstream tarball to
   
<package name>_<package version>.orig-<upstream tarball name with .'s replaced by -'s>.tar.gz
...and organize the source like this:
   
build-area/
    libcgi-application-basic-plugin-bundle-perl-0.5/
        debian/
            [all the standard stuff: control, rules, etc.]
    libcgi-application-basic-plugin-bundle-perl_0.5.orig-CGI-Application-Dispatch-2-16.tar.gz
    libcgi-application-basic-plugin-bundle-perl_0.5.orig-CGI-Application-Plugin-AutoRunmode-0-16.tar.gz
    libcgi-application-basic-plugin-bundle-perl_0.5.orig-CGI-Application-Plugin-ConfigAuto-1-31.tar.gz
    ...
    [rest of modules]
    libcgi-application-basic-plugin-bundle-perl.orig.tar.gz
Each module is now a seperate file in the debianized source with MD5sum etc. The only problem I am having is with the last file. libcgi-application-basic-plugin-bundle-perl.orig.tar.gz makes no sense for me because there is no upstream yet dpkg-source insists on it. I can make a dummy easily enough but this is an unnecessary annoyance so I filed bug #554488. Raphael Hertzog responded quickly. He is considering adding a --create-empty-orig option to dpkg-source which would solve the problem nicely.

5 November 2009

Eddy Petri&#537;or: Know your rights!

It is only a few days since my last post about the referendum which is due to happen on the same day as the Presidential elections, but I am forced to make another post because there are lots of incorrect views on the subject.

So let's try take the issues one by one and see what is the problem with every one of them, using reason and the information we have available from more mature democracies than Romania's.

What's the referendum about

The referendum, in this case, is about two issues:

Information on the subject

For an election such as the referendum (basically asking the population on a subject of national importance) every citizen has the right to be correctly informed about the options of the referendum, what each implies, what are the pros and cons for every option, what problems does the referendum tries to resolve.

There is no information on the subject, no videos, no spots, no fliers, nothing, just biased posters (I'll explain later).

Debate on the subject

In order to have a correct information, a clear public debate which should happen, without the pressure of a presidential campaign at the same time as the debate.


Well, we have no debate, so I guess there is no problem of overlapping (sad, but true), but on the other hand, there is no information on the subject.

Analysis of the options

Now let's analyse the two proposed measures in opposition to the current situation.

  1. reducing the number of representatives
    • pros
      • reducing costs
      • minorities have a bigger influence (they can defend their rights - see comments for explanations)
    • cons
      • easier to corrupt (obtaining a corrupt 5% in a 300 seats parliament is easier than in a 500 seats parliament)
      • minorities have a bigger influence (they are disproportionally powerful, in regard to the population they represent - see comments)
      • absence of a representative with a big vote power could allow passing an abusive law (to pass a regular law there is a need of a majority relative to the number of present representatives, not the total number), but, in a numerous parliament, the absence of a person isn't that risky (other colleagues would be present to stop the abusive initiative)
  2. one chamber instead of two
    • pros
      • faster processing of decisions
      • less bureaucratic
    • cons
      • in the current system there can be a passive vote (law passes silently if not discussed) which has just one occasion to be caught, while in the current system silent passing is allowed only in one of the chambers, but needs to be discussed in the other
      • there is a chance that one chamber might amend/catch abusive initiatives with "two chambers", but with "one chamber" there is one chance only
      • more prone to power abuse

So, there are pros and cons for all solutions, but now we can make an informed decision and know the risks for each option.

This shouldn't have been taken in haste without any public debate.


I don't want to influence anyone's vote, so I'll abstain from telling my options.

The president has the right to associate his image with one of the options.

OK, let's analyse that.

The law doesn't explicitly forbids this, but there are some recommendations from Venice on fair elections (sorry, I couldn't find the link) which say that in a vote such as the presidential elections there shouldn't be an unfair advantage for one of the candidates. Why is that relevant? Because the current president actually uses the referendum as his campaign and he's speculating people's innate hatred for political figures.

His election material is only comprised of virulent attacks at the representatives or calls to the population to vote in favour of both questions.


Why is that unfair? Because the current president is using his current position (president) as launch ramp for his campaign as a candidate.

OTOH, if the seal of the presidency was used instead his face, the problem wouldn't have been that bad.


Organisational issues

There were various rumours about how the voting will take place. Here is a list of things I heard:
  1. there will be a single list for both presidential elections and referendum and there will be a single column for signature to confirm your presence at vote
  2. there will be one paper, but two columns for signatures
  3. no matter what the list looks like, you'll be given both sets of ballots, but you can annul the one you don't want to vote on
All the variants above are incorrect from a democratic pov, but to different degrees:

  1. a single signature covering for either of the vaiants "presidential vote only", "refrendum only", "both" asks for trouble because unused ballots in "only" variants might be added later to the valid votes as if they were expressed by voters; since there is no distinct count for each of the ballots to confront that with signatures, before the counting period one could use unused ballots and vote for you on the issue you didn't want to express an opinion on
  2. informing on what to do in some cases such as "only" vote is essential to prevent fraud; e.g.: strike through the cell corresponding to the the election you don't want to express a vote on, instead of signing
  3. giving the ballot unconditionally to everybody, leaving you to decide to annul it or not is abusive, because vote is not compulsory in Romania; more than that, this artificial presence burst (even with void votes) could end up validating the referendum since a 50%+1 presence is needed to pass Constitution modification, as we have here
So, recap:
  1. favours fraud by allowing inside people to obtain untraceable/unaccounted ballots
  2. preventing fraud isn't of any concern, it seems (and could be achieved)
  3. forced voting might lead to validation of the referendum because the voting presence is sufficient, even if there are many annuled ballots
Vote validation and artificial voter presence

Since validation of a referendum on the changes on the constitution depends on sufficient voter presence (there is some mandatory threshold, but I can't find references now), it is in the interest of people wanting to promote the changes to mobilize people to vote.

By different measures the vote presence at the referendum is artificially increased raising the risk of validation, when people, in fact, wouldn't want to validate it and would, to express neutrality, will be be forced to annul the ballot.

Also, a high presence in the referendum might increase the number of voters for presidency, and the people mobilized this way may have a high chance to be biased in favour of the current president because he associates himself with the violent message against the representatives.

What does it take to implement, if referendum passes

If the referendum passes, the changes aren't immediate. The proposed changes are discussed in the Parliament and a final proposal for the constitution changes is made; after approval of the proposals by the Parliament, the ball goes back to population for final approval.

This means it will take a while to see a changed parliament.

Conclusions

Romania is not a true democracy yet and there are areas where individuals should know what their rights are and not let authorities fool them into buying any argument uncritically.

Romanians must learn their rights so they can't be manipulated whenever somebody wants to trick them into some scheme by knowingly omitting issues and creating insane situations.


Romanians, wake up, learn you have rights, form your own oppinion, as distinct individuals, then we might see a change.

2 November 2009

Axel Beckert: Still happy with the ASUS EeePC 701

Recently Eric asked on the LUG Vorarlberg mailing list about netbook experience. I wrote a lengthy reply summarizing my experiences with the ASUS EeePC 701. And I thought this is something I probably should share with more people than only one LUG: I ordered an ASUS EeePC 701 (4G) with US keyboard layout at digitec in Spring 2008, got it approximately one month later and posted a first resum after one month in my blog. I m still very happy with the EeePC 701, despite two commonly mentioned drawbacks (the small screen resolution and the small SSD which I both don t see as real problems) and some other minor issues. What mattersNice to haveWhat doesn t matterWhat s not so niceSimilar models Technically, most of this also counts for the EeePC 900SD (not 901) which only differs in screen, resolution and disk size as well as CPU, but not on the the case. So same size, same robustness, same battery, same mainboard, bigger screen, resolution, disk and faster CPU. (The 901 has a different CPU, a different battery, and a different, glossy and partially chromed case.) See Wikipedia for the technical specifications of all EeePC models. ASUS only big FAILure Stopping to sell most EeePCs with Linux and cowardly teaming up with Microsoft after having shown big courage to come out with a Linux only netbook. Well, you probably already know, but it s better without Windows So basically you no more get these really neat netbooks from ASUS anymore and you get nearly no netbooks with Linux from ASUS in the stores anymore. It s a shame. Would I buy it again? Sure. Well, maybe I would also buy the 900SD or 702 (8G) instead of the 701, but basically they re very similar. See Wikipedia for the differences between these EeePC models. And of course I still prefer the versions without Windows. But despite the low price, the EeePC 701 is surprisingly robust and still works as on the first day (ok, except battery, the mouse button bar and the n key ;-), so I recently bought a second power supply (only white ones were available *grrrr*) and ordered a bigger third party battery plus an adapter to load the battery directly from the (second) power supply without EeePC inbetween. What desktop do I use on the EeePC? None. I use ratpoison as window manager, uxterm, urxvt, and yeahconsole as terminal emulators (running zsh with grml based .zshrc even as root s login shell :-), wicd-curses as network manager and xmobar (previously dzen2) with i3status as text-only panel. Installed editors are GNU Emacs 23, GNU Zile and nvi. (No vim. :-) And of course a netbook wouldn t be a netbook if it wouldn t have a lot of network applications installed. For me the most important ones are: ssh, scp, autossh, sshfs, miredo, conkeror, git, hg, and rsync.

30 October 2009

Peter Makholm: New Module: Benchmark::Serialize

Tim Bunce mentioned my blogpost about Benchmarking serialization modules in a post on the perl5-porters mailing list. He wished that someone would make that benchmark into a distribution on CPAN. How can I refuse. So here it is, Benchmark::Serialize is just uploaded to CPAN. (Might be some time before it appears). Besides making the script into a module I also added a list of the size of the serialized data to the output. A replacement of the original script is available in the examples directory. (I planned on naming the module Benchmark::Serialization, but my fingers slipped. Should I rename it?)

Matt Brubeck: Compleat: Programmable Completion for Everyone

Compleat is an easy, declarative way to add smart tab-completion for any command-line program. For a quick description, see the README. For more explanation and a brief tutorial, keep reading... Background I'm one of those programmers who loves to carefully tailor my development environment. I do nearly all of my work at the shell or in a text editor, and I've spent a dozen years learning and customizing them to work more quickly and easily. Most experienced shell users know about programmable completion, which provides smart tab-completion for for supported programs like ssh and git. (If you are not familiar it, you really should install and enable bash-completion, or the equivalent package for your chosen shell.) You can also add your own completions for programs that aren't supported but in my experience, most users never bother. When I worked at Amazon, everyone used Zsh (which has a very powerful but especially baroque completion system) and shared the completion scripts they wrote for our myriad internal tools. Now that I'm in a startup with few other command line die-hards, I'm on my own when it comes to extending my shell. So I read the fine manual and started writing my own completions. Over on GitHub you can see the script I made for three commands from the Google Android SDK. It's 200 lines of shell code, fairly straightforward if you happen to be familiar with the Bash completion API. But as I cranked out more and more case statements, I felt there must be a better way... The Idea It's not hard to describe the usage of a typical command-line program. There's even a semi-standard format for it, used in man pages and generated by libraries like GNU AutoOpt. Here's one for android, one of the SDK commands supported by my script:
 android [--silent   --verbose]
   ( list [avd target]
     create avd ( --target <target>   --name <name>   --skin <name>
                   --path <file>   --sdcard <file>   --force ) ...
     move avd (--name <avd>   --rename <new>   --path <file>) ...
     (delete update) avd --name <avd>
     create project ( (--package --name --activity --path) <val>
                       --target <target> ) ...
     update project ((--name --path) <val>   --target <target>) ...
     update adb )
My idea: What if you could teach the shell to complete a program's arguments just by writing a usage description like this one? The Solution With Compleat, you can add completion for any command just by writing a usage description and saving it in a configuration folder. The ten-line description of the android command above generates the same results as my 76-line bash function, and it's so much easier to write and understand! The syntax should be familiar to long-time Unix users. Optional arguments are enclosed in square brackets; alternate choices are separated by vertical pipes. An ellipsis following an item means it may be repeated, and parentheses group several items into one. Words in angle brackets are parameters for the user to fill in. Let's look at some more features of the usage format. For programs with complicated arguments, it can be useful to break them down further. You can place alternate usages on their own lines separated by semicolons, like this:
android <opts> list [avd target];
android <opts> move avd (--name <avd> --rename <new> --path <file>)...;
android <opts> (delete update) avd --name <avd>;
...and so on. Rather than repeat the common options on every line, I used a parameter <opts>. I can define that parameter using the same usage syntax.
opts = [ --silent   --verbose ];
For parameters whose values are not fixed but can be computed by another program, we use a ! symbol followed by a shell command to generate completions, like this:
avd = ! android list avd   grep 'Name:'   cut -f2 -d: ;
target = ! android list target   grep '^id:'  cut -f2 -d' ' ;
And any parameter without a definition will just use the shell's built-in completion rules, which suggest matching filenames by default. The README file has more details of the usage syntax, and instructions for installing the software. Give it a try, and please send in any usage files that you want to share! (Questions, bug reports, or patches are also welcome.) Future Work For the next release of Compleat, I would like to make installation easier by providing better packaging and pre-compiled binaries; support zsh and other non-bash shells; and write better documentation. In the long term, I'm thinking about replacing the usage file interpreter with a compiler. The compiler would translate the usage file into shell code, or perhaps another language like C or Haskell. This would potentially improve performance (although speed isn't an issue right now on my development box), and would also make it easy for usage files to include logic written in the target language. Final Thoughts Recently I realized that parts of my work are so specialized that my parents and non-programmer friends will probably never really get them. For example, Compleat is a program to generate programs to help you... run programs? Sigh. Well, maybe someone out there will appreciate it. Compleat was my weekends/evenings/bus-rides project for the last few weeks (as you can see in the GitHub punch card), and my most fun side-project in quite a while. It's the first "real" program I've written in Haskell, though I've been experimenting with the language for a while. Now that I'm comfortable with it, I find that Haskell's particular combination of features works just right to enable quick exploratory programming, while giving a high level of confidence in the behavior of the resulting program. Compleat 1.0 is only 160 lines of Haskell, excluding comments and imports. Every module was completely rewritten at least once as I tried and compared different approaches. This is much less daunting when the code in question is only a couple dozen lines. I don't think this particular program would have been quite as easy to write at least for me in any of the other platforms I know (including Ruby, Python, Scheme, and C). I had the idea for Compleat more than a year ago, but at the time I did not know how to implement it easily. I quickly realized that what I wanted to write was a specialized parser generator, and a domain-specific language to go with it. Unfortunately I never took a compiler-design class in school, and had forgotten most of what I learned in my programming languages course. So I began studying parsing algorithms and language implementation, with Compleat as my ultimate goal. My good friend Josh and his Gazelle parser generator helped inspire me and point me toward other existing work. Compleat actually contains three parsers. The usage file parser and the input line tokenizer are built on the excellent Parsec library. The usage file is then translated into a parser that's built with my own simple set of parser combinators, which were inspired both by Parsec and by the original Monadic Parser Combinators paper by Graham Hutton and Erik Meijer. The simple evaluator for the usage DSL applies what I learned from Jonathan Tang's Write Yourself a Scheme in 48 Hours. And of course Real World Haskell was an essential resource for both the nuts and bolts and the design philosophy of Haskell. So besides producing a tool that will be useful to me and hopefully others, I also filled in a gap in my CS education, learned some great new languages and tools, and kindled an interest in several new (to me) research areas. It has also renewed my belief in the importance of "academic" knowledge to real engineering problems. (I've already come across at least one problem in my day job that I was able to solve faster by implementing a simple parser than I would have a year ago by fumbling with regexes.) And I'll be even happier if this inspires some friends or strangers to take a closer look at Haskell, Parsec, or any problem they've thought about and didn't know enough to solve. Yet.

28 October 2009

Joey Hess: couchdb

Couchdb came onto my radar since distributed stuff is interesting to me these days. But most of what was being written about it put me off, since it seemed to be very web-oriented, with javascript and html and stuff stored in the database, served right out of it to web browsers in an AJAXy mess. Also, it's a database. I decided a long, long time ago not to mess with traditional databases. (They're great, they're just not great for me. Said the guy leaving after 5 years in the coal mines.) Then I saw Damien Katz's talk about how he gave up everything to go off and create couchdb. Was very inspirational. Seemed it must be worth another look, with that story behind it. Now I'm reading the draft O'Rielly book, like some things, as expected don't like others[1], and am not sure what to think overall (plus still have half the book to get through yet), but it has spurred some early thoughts: ... vs DVCS Couchdb is very unlike a distributed VCS, and yet it's moved from traditional database country much closer to VCS land. It's document oriented, not normalized; the data stored in it has significant structure, but is also in a sense freeform. It doesn't necessarily preserve all history, but it does support multiple branches, merging, and conflict resolution. Oddly, the thing I dislike most about it is possibly its biggest strength compared to a VCS, and that is that code is stored in the database alongside the data. That means that changes to the data can trigger processing, so it is mapped, reduced, views are updated, etc, on demand. This is done using code that is included in the database, and so is always available, and runs in an environment couchdb provides -- so replicating the database automatically deploys it. Compare with a VCS, where anything that is triggered by changes to the data is tacked onto the side in hooks, has to be manually set up, and so is poorly integrated overall. Basically, what I've been doing with ikiwiki is adding some smarts about handling a particular kind of data, on top of the VCS. But this is done via a few narrow hooks; cloning the VCS repository does not get you a wiki set up and ready to go. There are good reasons why cloning a VCS repository does not clone the hooks associated with it. The idea of doing so seems insane; how could you trust those hooks? How could they work when cloned to another environment? And so that's Never Been Done[2]. But with couchdb's example, this is looking to me like a blind spot, that has probably stunted the range of things VCSs are used for. If you feel, like I do, that it's great we have these amazing distributed VCSs, with so many advanced capabilities, but a shame that they're only used by software developers, then that is an exciting thought.
[1] Javascript? Mixed all in a database with data it runs on? Imperative code that's supposed to be side-effect free? (I assume the Haskell guys have already been all over that.) Code stored without real version control? Still having a hard time with this. :) [2] I hope someone will give a counterexample of a VCS that does so in the comments?

27 October 2009

Leo 'costela' Antunes: Vodafone mobile USB modem configuration

I had to struggle a bit with the mobile stick I just got from Vodafone and thought it might be useful to write it down somewhere. The Huawei K3520 (recognized automatically by Linux 2.6.31 as a E620 USB Modem ) seems to work without many problems, the only hardware related issue being that sometimes, seemingly at random, the memory stick part will be loaded and sometimes just the USB modem part. The Vodafone Germany specific configuration, on the other hand, wasn t so easy to find online. The working config I currently have with NetworkManager 0.7.1 is:
Number: *99# (this is the default, but it warrants an explicit mention since I ve found other examples online with *99***1# , and that didn t work)
Username: vodafone
Password: vodafone
APN: web.vodafone.de (this seems to vary wildly from country to country) The rest is either default or empty.
And lastly, taken from this LP bug, I had to change
<deny send_destination="org.freedesktop.NetworkManager" send_interface="org.freedesktop.NetworkManager.PPP"/>
to
<allow send_destination="org.freedesktop.NetworkManager" send_interface="org.freedesktop.NetworkManager.PPP"/>
in /etc/dbus-1/system.d/NetworkManager.conf, to avoid the Looks like pppd didn t initialize our dbus module error. After all this the connection still needs a push to work (it rarely if ever works on the first try and I haven t dug deep enough to decide if this is a Vodafone, a driver or a NetworkManager problem), but after connecting everything is shinny.

26 October 2009

David Welton: The Economist on "Management Gurus"

One of the reasons why I created Squeezed Books was to "deflate" some of the hot air present in many business books, so I particularly enjoyed The Economist's cynical take on "management gurus": The three habits of highly irritating management gurus
The first is presenting stale ideas as breathtaking breakthroughs ... The second irritating habit is that of naming model firms. Mr Covey littered his speech in London with references to companies he thinks are outstandingly well managed, including, bizarrely, General Motors Saturn division, which is going out of business. ... The gurus routinely ignore such basic precautions as providing a control group. ... The third irritating habit is the flogging of management tools off the back of numbered lists or facile principles. ...
And their conclusion is spot on:
Which points to the most irritating thing of all about management gurus: that their failures only serve to stoke demand for their services. If management could indeed be reduced to a few simple principles, then we would have no need for management thinkers. But the very fact that it defies easy solutions, leaving managers in a perpetual state of angst, means that there will always be demand for books like Mr Covey s.

25 October 2009

Joachim Breitner: About the Freedoms of Web Services

For software, the question whether some software can be considered free is relatively easy to decide: Check the license of the code against the list of free licenses of your trust (the OSI list, the FSF list or the judgement applied by debian-legal) and that s (mostly) it. When it comes to web services in the broader sense, including hosters, communication providers, social networks etc., this are not so clear. In this blog entry, I ll try to list the various requirements that a service should fulfill and which I usually consider before deciding to use a service.The RequirementsA) Availability of source codeComing from the Free Software movement, this is the first requirement that comes to mind. If a web service claims to be free, then I want to be able to inspect how it is working, suggest and implement improvements and set up my own instance. For example, Canonical s software housing setup Launchpad was itself not Free Software until very recently. Having access to the source code is also the reason why I prefer gitorious over github for git hosting.B) Access to my dataDepending on the kind of service, it might hold data from me or about me that are important, such as my emails on a webmail service. If I won t have a way to easily retrieve my data to back it up or to move to a competitor, I ll think twice before trusting my data to this service.C) Free data formatsIf there is accessible data, it should be in a format that I can easily get and use with a choice of (Free) software. Not sure if such a service exists, but an online office suite only supporting its own proprietary file format (possibly with its own proprietary offline office suit) would be no option for me.D) An APIFor an extensively used service, I will want to have the possibility to optimize my user experience by automation. This requires that I can use the service not only in person, but also from tools I write. A very good example for this is Twitter: Besides registration, there is no need to use their web site at all and still use all the features, using the tools I find most fit for a task.E) Choice of providersCompetition is good. If a service is only provided by a single company, and I become dependent on the service, I become dependent on the company. A few years ago, SourceForge was mostly the only provider of gratis, comprehensive software project hosting. By now, there are a few alternatives, such as alioth, savannah or google code, which is appreciated. Note that when it comes to the proprietary instant messaging services (ICQ, yahoo messenger, MSN messenger), there is no choice of providers: To talk to my buddies on a certain network, I am bound to that provider. The same applies to social networks (Facebook, StudiVZ, XING), and is one of the reasons why I shun these yet. F) Federation between providersIf there is a choice of providers, and the service in question provides some kind of communication, it is very desirable if I can interact with users of the service on other providers. A very good example for this is e-mail: People @gmx.net can send mails to people @aol.com, and I can have @joachim-breitner.de and still communicate with everyone. This was not always the matter of course: Before Internet e-mail was common, people on AOL could not get in touch with people at CompuServe. These days, the problem persists with instant messaging (Jabber a.k.a. XMPP being the notable exception) and social networks. Also sites like gitorious or github could support federation if they would allow to create branches of repositories that are hosted elsewhere, allowing their users to use the familiar interface with all repositories they work with.Analysis of a few servicesSo far the theory. Let s see how various services fare.e-mailBeing from the old times of the Internet, when everything was better, it does not surprise that this passes all requirements: There is a large amount of Free e-mail servers and clients to choose from, my data is easily moved via well-known protocols such as POP or IMAP and save in standardized format. There is an abundance of service providers, and they all talk to each other. One could argue that the openness of email causes problems like spam, but I d say that this might be a design issue, but not inherent to the above criteria.Pretty much the same analysis applies to Jabber/XMPP.ICQI joined when I was young and unwise. Now I am stuck to AOL to keep in touch with a relevent part of my online correspondence. To use it on the operating system of my choice, other people had to reverse engineer the protocol and any time, AOL could change how its servers work and I ll be locked out. I can not get in touch with people on other networks, my buddy roster is not easily backed up and restored, and no, we can not see the source of the ICQ servers. I d wish I could switch over to Jabber completely, but there are always a few important people who do not use that yet.Github/GitoriousAlthough gitorious is slightly older, github managed to become more famous. These web sites allow developers to publish their source code and other contributors to easily branch, work on their changes, and propose them for merging in the main code. They are based on git, so I can get my data. There is a choice of providers. I am not sure how well I can access their functionality (merge requests etc.) programmatically. As said before, they do not interact well, and only gitorious has published its code.Facebook/StudiVZVery disappointing. I have heard that Facebook offers you a rich API, but otherwise, they fail every category. This is one of the reasons why I am not to be found on these networks yet.Twitter/identi.caTwitter, similar to Facebook, excels in the category API , but fails in the others. A better alternative is identi.ca: The software behind it is free, I can download contact data etc. It even supports federation via OpenMicroBlogging, although that did not break through yet it, it seems.OpenIDAnother very good example for what I want is OpenID, a service that allows websites to accept a user s credentials from another site. This saves the user from having to create accounts everywhere. There are free implementations, multiple providers, I can easily switch between them. A great feature of OpenID that goes a bit beyond federation is delegation: On the start page of my homepage http://www.joachim-breitner.de/, I saved who my OpenID provider is. Now I can use http://www.joachim-breitner.de/ as my OpenID, and even if I change my provider, this stays valid! This is a feature that not even XMPP easily provides.ConclusionWhether a web service is really free is a complicated question and has a graded answer. One has to balance the benefits of using a web service against the freedoms it is missing. I hope that in the long run, services fulfilling most or all of these requirements will prevail, so that I ll be networking socially and blogging microly with a good conscience.

23 October 2009

Patrick Schoenfeld: What an "Intel atom inside" sticker could make of you

So I've got this cool Intel Atom-Board Intel Essential Series D945GSEJT, which is the first Atom-ITX-board that doesn't feature a 25W chipset for a 2W CPU. Its pretty cool, but one thing made me laugh.
Today I saw that there came a "Intel atom inside" sticker with the board. I thought: Well, nice, now I could - if I wanted - put this on my Mini-ITX-system. But then I saw whats been written next to this: "Use of the enclosed Intel Atom logo label is unauthorized and constitutes infringement of Intel's exclusive trademark rights unless you have signed the Intel Atom logo trademark license".

Isn't it nice of Intel to supply me with a sticker which would make me a criminal if I'd use it?

22 October 2009

Gunnar Wolf: How can we advance without a tax increase?

There has been a lot of buzz recently in Mexico after a tax increase that has been announced for next year. The two main points I have seen criticized are:
Value Added Tax (IVA) increase from 15% to 16%
There was a great improvement regarding the original proposal by our de-facto ruler (why de-facto? Because it is still unclear whether he won the popular vote. He has about the same legitimacy as George Bush during his first term: Legal but illegitimate): In Mexico, there is a category of items regarded as fundamental, which are exempt of IVA (tasa cero). This category includes food and medicines Of course, this category makes up the bulk of the poorer people's consumptions, so they pay much less IVA than people with higher living standards. For a very long time, there has been a push to remove this exemption. This has been fortunately clearly understood and fought against. So, the presidential initiative, as I was saying, contemplated a global 2% tax which would not be IVA, and which would be applied universally. This tax would be earmarked to be applied to social programs, and was euphemistically called Impuesto de Combate a la Pobreza (poverty combat tax). Many people applied the concept of duck typing (if it looks like a duck, walks like a duck and quacks like a duck... It is a Value Added Tax). As many analysts, I believe this tax was meant to be the foot in the doorstop, leading to point out in a couple of years that anyway nothing is IVA-exempt anymore and the world has not come to an end, and we should apply universal IVA... So, the reduction in the increase (2% 1%) is not the most notable thing here The notable (and good!) thing is that they didn't succeed into killing the tasa cero.
3% tax on telecommunications
Many friends have started rallying (with the IMHO least effective way of protest you can find on Earth, just by stating their adherence in their Twitter and Facebook profiles. Wow, great deal!) that the original proposal included a 4% tax on telecommunications, and it appears that 3% will be applied. They say, quite fairly, that telephone and Internet access are no longer considerable a luxury, but a need to power the society into becoming better prepared, more competitive. My friends state as a contrast the Finnish ruling broadband access as a citizen right. What they seem not to realize is that the proportion of taxes in Mexico (collected from the responsible taxpayers, which is not by far the way for the bulk of the money in this country) is close to 30%, taking into account the big taxes (IVA, ISR/IETU) and the host of smaller ones. In Finland, the percentage of taxes payed by every person and remember that tax evasion is way lower than here!) is over 50%.
So What is my opinion on this? What would my ideal tax scheme be?
  • Nobody likes taxes. But the country needs far more infrastructure, far wider inverstments. We need higher taxes But we need those taxes to be collected from people with higher income. And yes, that would mean I would most probably pay more (as I do sit relatively high on the income scale Qualified work, even if you do not seek money for the sake of it, pays much better than non-qualified work; remember the minimal wage in Mexico is around MX$50 a day - Less than US$4 or 3).
  • The increases should be applied to the income tax (ISR). It is supposed to be around 30% for income levels over MX$5000 a month, with a very slight increase after that point. Income tax is highly deductible now, and most people with high income manage to ellude most of it. Many cases have been documented of companies as small as Walmart paying less than MX$1000 a year due to several (intentional? you bet!) holes in the legislation. That is where the bulk of the extra government income should come from!
  • For a couple of years, since I registered as a taxpayer (people receiving money exclusively as salaries under a given limit don't have to declare taxes) I have decided not to hire an accountant to make the numbers look prettier, and just do the numbers myself over the platform provided by SAT/Hacienda (the tax collecting authority). Yes, that means I am paying more than what I could But it also means I am paying what I should! And it is an expensive point of view, but I strongly invite others to do the same. If we criticize Walmart for making numbers look prettier, shouldn't each of us do the same? Shouldn't we all care to pay what we are supposed to, so that the government has enough funds to carry out its tasks?
Yes, I am painfully aware that an important portion of what gets into the government disappears due to corruption and ineptitude. Still, the only position from where I can criticize is from being clearly legal. The same point as I do with software: I cannot ask people to comply with my Free Software licensing if I use ilegally propietary software, can I? So no, I don't use any. Even legal propietary software, free-as-in-beer (i.e. Flash player). So, please think this over before you join the Lemmings into complaining about the tax increase. Yes, this is a bad moment to increase taxes. Yes, Mexico is the worst faring country in all of America in its response to the crisis; the GDP will probably fall between 8% and 10% this year and 2010 will not be much better. Yes, it would be better to increase competitivity. But, yes, we pay ridiculously low amounts of taxes And those of us who can afford a little reduction in our expenditure should do it. And those who make gross money should just stop it. Oh, and last point, regarding the #internetnecesario Twitter hashtag: Don't be Lemmings. Internet should be recognized a basic need for a free society. But right now in our country, it completely is a luxury, even if you cannot live without it. If you are Internet-addicted as myself, you most probably will not notice the 3% increase. FFS, We will pay MX$360 instead of MX$350 a month for my Infinitum connection. Will we really notice? In Mexico, middle and upper class are Internet-enabled. Lower classes are not. Things should change, no doubt. But it is not at all comparable to an universal IVA. Things should change and universal connectivity should be a given. But right now, calling Internet a basic good... is just out of touch with reality.

Eugene V. Lyubimkin: cupt 1.1

I just released cupt 1.1.0 to Debian unstable. I intended to push more changes into it, but James Vega recently discovered critical issue about 'libc6-i686' package that can break the whole system if its version differs from version of 'libc6' package, so in absence of answer from Debian eglibc maintainers I implemented a workaround for it and released new version.

Nevertheless, the following changes worth noting:

Next.

Previous.