Search Results: "will"

12 January 2007

Alexander Schmehl: Teaching me how to administrate computers...

That's why I went to the university today. Fascinating... After working as system administrator for several years I must visit a university course showing me, how a computer works. They started with the very basics (That's a CPU... that's a mother board...) I think we spend the first four weeks to "learn" that if you buy a mother board, you must take care that the CPU works with it. So far we covered hard discs and some peripheries, too. Sigh. If that course wouldn't have compulsory attendance... Well. But at least I can amuse myself about the lecturer. Often he muddles up technical term -- which is quite a achievement when reading the text on the slides. Maybe he's a bit dyslexic, would explain some of his... uhm... strangenesses. But back to topic: Today the topic of the course was Operating System Installation. And to my pleasure, he did not only install an operating system made by a company in Redmond, but he wanted to install a Linux System, too. Well... First he tried to install the new Vista he just got instead of the older Windows Version he should knew better. Bad choice... Often new introduces features seemed to confuse him. After he finished with that, he installed an opensuse system. And sometimes he tried to explain a bit about Unix philosophy. Another bad idea. Those of us, who are familiar with that stuff could see, that didn't know what he was talking about, and those of us who are not familiar with Unix/Linux philosophy didn't learned it from him. For example he choose not to use grub or any other Linux Boot loader but the one shipped with Windows, which means he needs to tell Linux not to install the mbr, to boot later from DVD, to extract the first bytes of the partition via dd, to copy it to a floppy, to reboot to windows and to add it with some commands in the dosbox thingy. When I asked him, why he didn't used the boot loader from Linux, he told me, that in former lilo times, in was quite easy to make the system unbootable. And when I then informed him, that that's the reason, grub has been invented, he said, we use the windows boot loader, because he wants to do so. Oh, and as part of a test, we must install those two system our self. Including the brain dead stuff he does. Sigh. Some times courses, which should be quite easy for you, can turn out to be really depressing... I'm really looking forward for part two of the system administration course, which will try to teach me windows administration and networking. The Unix Course has been cancelled. Don't know why.

Stefano Zacchiroli: functional ruby s threads

Ruby's thread more "functional" than OCaml's I'm relaxing some of mine initial bad impressions on Ruby. This is mainly due to the fact that the Ruby book I ordered on Amazon finally arrived (after a lost shipment, the first of my whole customer story with Amazon, happily they refunded me completely). In the book I managed to find a rigorous (though not formal as I would have liked) description of Ruby's semantics and even some snippets of the grammar of the language (Rant: how the heck is possible that a modern language like Ruby lacks a complete description of its grammar????). Anyhow, now I'm feeling more comfortable with the language and I'm starting to put in the right setting some of what I believed to be its rough edges. Today, playing with Ruby's threads, I discovered a function in Ruby's Thread API that I can't help noticing is "more functional" than corresponding features in the Thread API of my beloved OCaml. Using Thread#value indeed the value returned by the last statement executed in a given thread can be retrieved (note that in Ruby every statement returns a value: yet another functional pearl). It's like a Thread#join on steroids. In OCaml the only way (that comes into my mind) to do the same is establishing a (typed) channel among the thread creator and the created thread, sending a return value from the thread, and having the creator block on the matching receive. Or (please don't) ... you can use a global variable ... Neat Ruby threads. To balance this, according to my first read of Ruby's threading capability, it's my impression that not only at most one thread can execute Ruby code at a time (limitation shared by OCaml, due to the non-distributed nature of mark and sweep garbage collectors), but also a thread blocked on a syscall will block all other threads to run. Dumb Ruby threads (but I still hope I'm wrong ...)

Enrico Zini: python-scoping

Python scoping How do you create a list of similar functions in Python? As a simple example, let's say we want to create an array of 10 elements like this:
a[0] = lambda x: x
a[1] = lambda x: x+1
a[2] = lambda x: x+2
...
a[9] = lambda x: x+9
Simple:
>>> a = []
>>> for i in range(0,10): a.append(lambda x: x+i)
...
...but wrong:
>>> a[0](1)
10
What happened here? In Python, that lambda x: x+i uses the value that i will have when the function is invoked. This is the trick to get it right:
>>> a = []
>>> for i in range(0,10): a.append(lambda x, i=i: x + i)
...
>>> a[0](1)
1
What happens here is explained in the section "A Jedi Mind Trick" of the Instant Python article: i=i assigns as the default value of the parameter i the current value of i. Strangely enough the same article has "A Note About Python 2.1 and Nested Scopes" which seems to imply that from Python 2.2 the scoping has changed to "work as it should". I don't understand: the examples above are run on Python 2.4.4. Googling for keywords related to python closure scoping only yields various sorts of complicated PEPs and an even uglier list trick:
a lot of people might not know about the trick of using a list to box variables within a closure.
Now I know about the trick, but I wish I didn't need to know :-(

Martin F. Krafft: Publishing files to the masses, temporarily

Especially on IRC, I am often faced with the task to share a file with someone. There are pastebins, but they don't help with binary files, quick updates, or sharing directories. Over the past year, I thus developed the pub shell script, which you can obtain from my SVN repository (you can check out the parent directory with several other helpers, or all my non-admin shell scripts). I documented it in the header, so if I excited your interest, have a look there for details. pub requires an SSH-accessible machine with a directory to which you can write, and which is exported via HTTP or FTP (it would be nice to support WebDAV in the future). In my case, that's madduck@scratch.madduck.net:/srv/apache2/stuff.madduck.net/htdocs/scratch, which is available as http://scratch.madduck.net/. Thus, I created ~/.pubrc with the following contents:
TARGETHOST="madduck@scratch"
TARGETDIR="/srv/apache2/stuff.madduck.net/htdocs/scratch"
PUBBASE="http://scratch.madduck.net/"
Here's what I can do now (lines are truncated after 80 characters):
## publish a simple file
$ pub /etc/fstab
http://scratch.madduck.net/__etc__fstab 1446 885c2219df938a059a5f0a13e65e8f9
## ... with optional verification by downloading and comparing md5sums
$ pub --verify /etc/fstab
http://scratch.madduck.net/__etc__fstab 1446 885c2219df938a059a5f0a13e65e8f9
I: successfully uploaded: /etc/fstab
$ HEAD http://scratch.madduck.net/__etc__fstab   head -1
200 OK
## remove the published file
$ pub --delete --verify /etc/fstab
I: successfully deleted: /etc/fstab
$ HEAD http://scratch.madduck.net/__etc__fstab   head -1
403 Forbidden
## bzip2 the file while publishing
$ pub --bzip2 /etc/fstab
http://scratch.madduck.net/__etc__fstab.bz2 501 16e3b533f6588b670c75160dce1f
$ pub --bzip2 --delete /etc/fstab
## same with gzip
$ pub --gzip /etc/fstab
http://scratch.madduck.net/__etc__fstab.gz 423 ea28b1fc537690a0344b74ad2f2d7
$ pub --gzip --delete /etc/fstab
## sometimes I don't want the filename to be guessable:
$ pub --obscure /etc/fstab
http://scratch.madduck.net/__etc__fstab__7eb7d8881a02e47e2906131dec256115 14
$ pub --obscure --delete /etc/fstab
## and this even works with extensions, properly:
$ pub --obscure /etc/a2ps.cfg
http://scratch.madduck.net/__etc__a2ps.9b411100f9d144d090d540c9879dd26b.cfg
$ pub --obscure --delete /etc/a2ps.cfg
## and finally: directories:
$ pub --bzip2 /etc/init.d
http://scratch.madduck.net/__etc__init.d.tar.bz2 59758 1f94314ff9fd472f28172
$ pub --bzip2 --delete /etc/init.d
You'll see how the name is chosen: __etc__fstab. If you're publishing a file from underneath $HOME, the base is truncated:
$ pub ~/debian/misc/security/debsec.zuml
http://scratch.madduck.net/debian__misc__security__debsec.zuml 14366 537b7f7
Of course, all of the above take an arbitrary number of arguments:
$ pub /etc/fstab /does/not/exist /etc/init.d
W: skipping nonexistent file: /does/not/exist
http://scratch.madduck.net/__etc__init.d.tar 337920 c350629b859e1369ed29a98c
http://scratch.madduck.net/__etc__fstab 1446 885c2219df938a059a5f0a13e65e8f9
$ pub -d /etc/fstab /does/not/exist /etc/init.d
W: skipping nonexistent file: /does/not/exist
Over time, the scratch space will fill up. Thus, I am using tmpreaper to delete files which have not been accessed in 30 days. The script in use, as well as the files that givern the way the HTTP server presents the scratch space, are available in this SVN repository. I hope this tool will be useful to some, and I am looking forward to patches and suggestions! NP: No-Man / Returning Jesus

Daniel Stone: xdc, menlo park, 7th-9th february

Just a quick reminder: if you were planning on going to the X.Org Developers' Conference in the Bay Area, from the 7th-9th of February, then please make sure you've registered on the page. If you weren't planning to come and you work on X or related fields of endeavour (toolkits, desktops, maybe you're an IHV), then you should consider coming along as well. There'll be a mix of scheduled talks, random freestyle hacking, corridor schmoozing, dinners, after-dinner fun, and a whole world more.

If you'd like to come but your pockets don't go quite that deep, please consider applying for sponsorship. The Foundation is willing to pay for travel and accommodation to developers who couldn't otherwise attend.

Hope to see you in sunny(ish) California!

Bastian Blank: APT security and buildds

For etch, we will have apt security in place, so we can be sure that the stuff comes from the correct archive. But it is not possible to disable that checks only for one source, just for anything. Buildds uses at least one mirror: incoming.debian.org aka ftp-master.debian.org. There are two queues, the accepted autobuild queue and the main archive. The accepted autobuild queue is not signed at all, it does not provide a Release file. The archive needs some time to generate the Packages files each dinstall run and have broken sigs during this time. This means: buildds can't use APT security at all. And no, there is no other mechanism to ensure data integrity.

Eddy Petrișor: TDebs - why we need them

First to answer why we need TDebs:

localepurge: Disk space freed in /usr/share/locale: 256828K
localepurge: Disk space freed in /usr/share/man: 4496K

Total disk space freed by localepurge: 261324K

Second, I will write my tdebs implementation proposal after posting this (although Aigars made a really good sythesis of the discutions we had in Extremadura and there is almost no room for improvement :-). I have posponed long enough.

11 January 2007

Evan Prodromou: 20 Niv se CCXV

So, like everybody else in the world, I was intrigued by the announcement of the iPhone. But like most Open Source folks, I was unhappy with the OS and the general closed format of the dang thing. What options are there for people who believe in Freedom but still want a cool phone? I currently own a Treo 650, which is fine, and which runs the venerable Palm OS. However, the once-thriving Palm Open Source community has pretty much dried up, leaving me without much in the way of interesting apps for my phone device. Thanks to Mike Linksvayer's notes on the subject, I got a link to the OpenMoKo project -- an effort to make a standard, Linux-based phone OS that uses ipkg for application installation and update. The first phone supporting the platform will be the FIC Neo1973, which looks pretty awesome and fairly similar to the iPhone (see this review from Linux Devices for some photos). OpenMoKo isn't the only game in town. TrollTech has a Linux-based Greenphone running their funky Qtopia platform, although it apparently doesn't work with their Qtopia Open Source version. And Nokia has this weird Maemo platform, but it only seems to run on their Internet tablet thingies. Mike gave a good link to an article about Open phones on PC Magazine. But I'm going to be looking out for availability of the OpenMoKo-enabled phone. I guess I'll have to switch phone providers -- Telus, my provider, only has CDMA service, and the FIC phone uses GSM. So, I dunno. But it'd be cool to have a mobile device that was fun and interesting and that I could believe in and want to hack on. tags:

What Chris refuses to blog about So, talking to Chris last night at the yulblog First Wednesday, I found out he wants to quit blogging. "I don't really have anything I care about enough to blog," he said. "The only thing that's piqued my interest lately was the execution of Saddam Hussein. I just don't want to blog about the iPhone." I told him I thought it'd be a good idea to make a blog just listing the things he refuses to blog about. He wouldn't commit to the idea, so I guess now I've taken over that job. In other words: Chris won't blog about the iPhone. tags:

John Goerzen: Dial Tone

Yesterday I went to activate phone service out at the farm. It got me to thinking a bit about how things change, and how they stay the same, too.

Before I go on, I'll have to say that every one of my history books is in storage, so if I get some details wrong, it's because I'm not remembering correctly.

Anyhow, phone service came to our community via an unusual route about 100 years ago. It wasn't Bell/AT&T or some other company that brought it there, as it was most places. I'm sure they figured that a small, scattered rural community would cost too much to support. So the community organized, built, and supported the phone system themselves.

Even today, roads around here can be impassible after a good rain. I'm sure that, in the early 1900s, before heavy road-maintaining machinery, things were worse -- and, of course, transportation was a lot slower then anyway. There were real problems: getting the word out about funerals, being able to summon a doctor when necessary, or letting people know that church was cancelled because of too much snow.

People in the community saw a phone system as a real need. So did the churches, which have left a legacy that is still reflected in phone company territories today.

Once phone service arrived, it was used for all the things that people expected, of course. But it also proved to be an important part of the social fabric of the community. Since party lines were the norm, it was possible to announce things to every listening subscriber pretty quickly. Older people remember announcements of fresh fruit arriving at the grocery store, funerals, or other news of the day.

To place a call, you would pick up your phone and turn your crank. That caused a bell to ring at the telephone office, which everyone called "Central." The operator would connect to your line and ask whom you wanted to talk to. The operator would then send the distinctive ring for your party down their party line, and patch -- manually -- your call through to them. And, if he was busy, the operator wouldn't listen in on your conversation -- but others on the party line very well might.

Central's hours were published. If you were making a call in the middle of the night, you were going to wake up someone at Central to do it -- plus everyone on the entire party line. So calls after hours were rare.

Fortunately, while some of the old Central operators were still around, some people in the community wrote down some of their stories.

There were some people in the community that were notorious for eavesdropping on other people's conversations. Two brothers one time figured that they knew somebody was listening to their conversations, so they devised a code. One called the other, and said, "I'll be going to McPherson in the morning for band practice." That meant something along the lines of going to town to buy groceries.

A few days later, their prime suspect came up to him and said, "What on earth are you going to band practice for? I didn't know you knew how to play an instrument!" Apparently she realized she was had when he burst out laughing uncontrollably.

The Central operators learned to know the habits of telephone users. Sometimes they would connect calls without even bothering to ask who people wanted to talk to -- and seemed to always get it right.

The phone system supported itself for about 50 years. But as the rest of the world moved on provide direct dialing, this proved a controversial subject in the community. People liked having their operators. The people that worked at Central were everybody's friend. They were people that were there, 24 hours a day, to assist with any emergency. They would gather volunteer firefighters to help fight a fire, or be able to spread community news quickly. This wouldn't be available with the newer phone systems. How would the community be informed of events quickly now? Who would just happen to know whose house the doctor was at when he was urgently needed?

The change was resisted for some years, but eventually the finances of the telephone cooperative turned out to be in deep trouble. Operators grew to be much more expensive than automation, and in the late 1960s, the telephone cooperative was no more -- sold to a phone company from a small town more than twice our size, and a for-profit company at that! Central no longer existed. I remember reading about this event -- it seems people were sad about that for quite some time. They felt that they had really lost an important part of the community when Central went away. Some machine locked in a cabinet doesn't care for people the way Central did. Even today, the older people in the community sound a little sad when they remember telephone modernization, and get the wistful look of somebody that has just remembered something that they miss.

The phone company that bought the system wasn't an AT&T, though. It was a small, independent phone company. To this day, that phone company serves only the two communities. And it was this company that I called yesterday to establish service out at our house.

They had already upgraded our lines -- over a mile of new copper, benefiting only us, at no charge to us -- last fall. The box was already on the outside of the house. Just need to get it activated.

So I called the phone company. They said I needed to drop by their office and sign some papers. Uh-oh, I think -- this is a bad sign. Sounds like a bunch of phone company bureaucracy.

But not so much. I went to the office and signed up. They asked the usual questions: name, address. Plus a few that bigger companies wouldn't ask: who used to have service at that address? Of course, most people would know that answer in our community. I couldn't have told you in Wichita, Dallas, or Indianapolis.

Then they asked when I'd like service to be activated. "As soon as possible," I say, figuring that this would be a couple of weeks like it is with AT&T or Sprint. "Well, we probably can't get out there for a couple of hours. Would it be OK if it's on at about 3?" Yes, that would be fine!

Now, how about DSL? "Well, we're a little backed up on that right now." Uh-oh. Sprint took several weeks when they *weren't* more backed up than usual. "So it'll probably be Monday or Tuesday before we can get out there. Should I just have the installer call you and arrange a time when it gets closer?" Yes, that would be fine, too!

Now, how about finding a phone number.

Out comes a large paper book. Yep, paper. They paged through it, and told me that my grandpa's old number would be available if I wanted it. I said yes -- after all, we've got his old address, so might as well keep the same phone number. OK, no problem. She whips out some white-out, whites out grandpa's name, and writes ours in. Done.

Now, do we want any optional services? Caller ID, call waiting, voicemail? How much is caller ID, I ask. $5 a month. We'll try it for now. "OK". A box was checked on the form and that was that. No high-pressure sales pitch on taking "the works" for some poorly-disclosed price, providing a ton of services I'll never use and don't want. No confusing "discounts" for having The Works and DSL at the same time.

Then I ask about an unlisted number, or at least an unlisted address. We figure that anybody that we really want to be able to reach us will figure out how without using a phone book, and these things get in so many databases these days. Sprint charged almost $10/mo for a fully unlisted number, but only a few dollars a month to just keep our address off the directories.

Our new company charged 50 cents a month for a fully unlisted number. Done.

Now it's time to pay for the first month's fees and the setup. Oops, I've forgotten my checkbook in the car. No problem, the secretary says, I'll watch your baby while you go get it! Jacob was with me, but had fallen asleep, so I brought him inside in his car seat. I went to get the checkbook -- just out the door and close by. I was back in a few seconds later, and the secretary was already on the other side of her desk talking and playing with Jacob. "My baby's 12 now," she said, and for a second, looked like a person that was remembering Central.

Brett Parker: The Apple iPhone: Good thing or not?

So, the Apple iPhone has been launched, it was brought to my attention as actually being announced by the MD at work, who appears to have become a complete apple freak (poor bastard... or is that rich bastard to be able to afford apple's mediocre offerings and be happy about it?). Anyways - from reading the story from BBC News and the official website, here's my conclusions. First off, when marketing a phone, how about you actually mention it's phone capabilities as the number one priority? I'd like to know about the sound capabilities, the battery life, the overall user feel for it as a phone... maybe I'm odd, but a phone has a purpose, it should make and receive calls, and it should do that job *well*, with good quality voice, a decent (filtering) microphone (it's a mobile, you'll be walking whilst speaking on it, reducing the background noise is a selling point), but apple appear to have mostly avoided talking about this. Instead, the first thing that you're told about from the news story is the unique user interface - great, so we have a touchscreen "whoop, de, do!". Worse still, from the official site, the first thing that springs out is that it's a "Wide Screen iPod" - it's a phone, if I wanted an iPod I'd buy a damned iPod - as it stands, for my music needs I have an iAudio M3 which suits my portable music experience really rather well. I choose that on the basis that it provided ogg support out of the box, didn't require any magical software (I run linux on my machines, it presenting itself as nothing more than a USB hard disk was fantastic, and means that I can use it for other things when needs arise). For a phone I want something that actually behaves like a phone, looking at the iPhone it's primary purpose appears to actually be a media player - that's not good. With the iPhone only having a touch screen interface, and from everything that I've read there's no stylus and the "finger is the ultimate pointing device", I'm just expecting that within the first 2 weeks you're going to have a scratched or smudged screen from usage alone, add in the fact that it's a mobile phone, and therefore generally treated with contempt (neccessity rather than luxery), and that most people carry mobiles in their pockets without any form of protection (easy and fast access) and you've got a recipe for disaster! The touch screen is going to be hit (wether you like it or not) whilst the phone is in your pocket, it will wear - there's no question in my mind about it. Touchscreens aren't designed to be smacked around 24/7, they're touchscreens - they respond to touch! So, assuming that you're shiny new iPhone is sitting in your pocket a lot of the time that's a lot of usage of the touchscreen - they're not designed for constant pressure (think about what happens to pockets in trousers when you sit down...), so I don't think that, overall, the sensitivity of the screen is going to last very long. It's only got a fairly narrow screen too, so what about those of us with not entirely slender fingers? When composing SMS messages on it with the on screen qwerty keyboard, do you really think that you're going to get the right keys every time? Small, on screen, buttons and pubs do not mix - and I'd hasten a bet there's a fair number of SMS messages sent from, or on the way back from, the pub, with a predictive text system at least you can almost work out what the heck the person was trying to say - this is a whole new ball game. The iPhone also makes the phone functionality only available after you've hit the part of the screen that says "Phone", now, I don't know about other people, but if I'm being given a number, I tend to just start hitting the right buttons on the phone, I can store the number later (via the call register or whatever) and hit call, now there's an extra step to getting in touch with people. From the official site we have the words """ iPhone also introduces an entirely new user interface based on a large multi-touch display and pioneering new software, letting you control everything with just your fingers. """" - now, err, just when did a phone require you to use anything other than your fingers? Please tell me, I'm dying to know - I've never yet needed to use my feet to operate my phone, have you? This is marketing gone insane - and what worries me is that people actually believe this bullshit. Apple may have "revolutionised" the computer industry with "Mac OS X" (this is actually not something that I believe, and OS X actually makes me more frustrated than being sat infront of a windows desktop - and believe me, that's difficult), but this is a phone, how about they try making it about the phone first, and the next generation tart audio player second? I'm willing to be convinced that I'm wrong, but I definately won't be going out of my way to aquire an iPhone just because the marketing spiel looks good.

10 January 2007

Erich Schubert: Linux distributions to be illegal in Germany?

The biggest party in Bavaria and part of the current german government, CSU, has announced that they want to make the "production and distribution of killer-games" illegal in germany. They claim it's because of a recent highschool shooting (no fatalities except the shooter; there was one other highschool shooting in germany a few years ago with 16 fatalities. Yes, that is 17 fatalities in over 40 years, the 42 years old amok runner back then didn't play killer games, I guess, although he used a flame thrower...). This would make the production and distribution in Germany unlawful, since we include games such as overkill, tremulous and openarena. Other distributions such as SuSE probably include some games that classify as "killer games" as well. Also note that "distribution" is a rather wide term. Does it apply to web sites? ISPs? If there is an online killer game, is the ISP "distributing" it? Polticians (especially those from CSU/CDU/SPD) are such a bunch of idiots. Please do NOT ever again vote for CSU. Software patents, killer games, "Problemfrauen & Schadbären", surveillance cameras and other surveillance, military inside germany (note that in desaster cases such as the flooding some years ago we could already deploy soldats without extra laws), shooting down of civilian airplanes, transrapid, reducing math and natural sciences in highschools, "google earth threatens worldcup security", police installing trojans on home PCs (because criminals don't install virus scanners?), kicking "irritating" students out of school, study fees, ... Often they make George W. Bush look like a genius, don't they? They don't do any important stuff, but just say whatever a majority people might want to hear. They waste our money (Transrapid). They destroy our biggest resource (changes in school system and university system, which will reduce average knowledge in germany a lot). They do lots of stupid things, which heavily invade privacy or public safety (military, surveillance) with no benefits in safety and many of which even where only stopped because they violated our constitution. Do not vote for them! [Updates: Daniel, sorry for posting a non-english post to planet. I again put it into the wrong category; I intended to do a longer post (this one) in english later on. For clarification: CSU is the sister party of CDU, these parties have an arrangement not to compete by region and are closely affiliated. On the nation-wide level they have a joint list, which often is called CDUCSU. So they're not just an "affiliate", but a strong part of the ruling party. Holger Levsen pointed out we are likely going to violate some laws much earlier by distributing ("hacker-") tools such as nmap, ettercap or whireshark.]

Daniel Burrows: The US isn't the only country with crazy politicians

[UPDATE 2007-10-01 22:43: It appears that Erich wrote an expanded and better-translated post while I was at work]

Erich Schubert writes that
Nach aktuellen Pl nen der CSU w re der Vertrieb von Debian GNU/Linux illegal.

Auch zahlreiche andere Distributionen w hren wohl davon betroffen: Alle, die sogenannte "Killerspiele" vertreiben...

For non-German speakers, I provide the following approximate translation:
CSU wants to make Debian illegal

The current plans of the CSU [Christian Social Union] will make the distribution of Debian GNU/Linux illegal.

In addition, many other distributions will be affected: specifically, those that distribute so-called "killer games"...

For instance, Overkill (Debian also includes, e.g., Tremulous and OpenArena, which are based on the Quake3 engine and have 3d graphics...)

(hopefully I got the gist of Erich's post without mangling it too badly!)

What I don't know is how serious this is. The CDU (Christian Democratic Union) is IIRC the current ruling party in Germany; however, according to Wikipedia, the CSU is some sort of local affiliate in Bavaria. Does it have the clout to get this proposal made into law?

Russell Coker: some random Linux tips

Holger Levsen: killergames and hackertools

Erich, it's not only killergames which threatens the legal distribution of linux in germany, but also hackertools like ping, ethereal or nmap. Check out this article (german only), which explains the new law which will come into effect in germany on the 15th of march this year.

Obviously you need hackertools, to be able to check if you're system is secure or vulnerable, but unfortunatly common sense is a lost art nowadays.

More maybe later, I'm in a hurry, but I at least wanted to make this remark. More discussion and evaluation of this is definitly needed!

Sven Mueller: etbe: some random Linux tips

Russel Coker wrote in etbe: some random Linux tips: Prefixing a bash command with ‘ ‘ will prevent a ! operator from running it. For example if you had just entered the command ” ls -al /” then “!l” would not repeat it but would instead match the preceeding command that started with a ‘l’. On SLES-10 a preceeding space also makes the command not appear in the history while on Debian/etch it does (both run Bash 3.1). It’s pretty easy to get the Bash shell to ignore lines starting with a space in its history: Just add
export HISTCONTROL=ignorespace
to your ~/.bashrc. Alternatively, ignoredups ignores duplicates and ignoreboth ignores both. It’s also possible to tell Bash to ignore lines which match a specific pattern. For example,
export HISTIGNORE=" *:~/*"
will ignore any command starting with a space (emulation the ignorespace option to HISTCONTROL) or starting with ~/ (any program/script in or below your directory). Personally, I just use “HISTCONTROL=ignoreboth“.

Michael Janssen: Steve Jobs sets insane goals..

..or he's not telling us something. If the multi-year exclusive agreement is true, then the goals are probably unachievable. In the keynote yesterday, Jobs put out there that almost a billion phones are sold each year to consumers. Granted, most of these are regular phones without the whiz-bang and special features of the iPhone -- and are usually free to the consumer, subsidized by the contract agreements. Still, he set what most would consider a modest goal, of getting 1% of the cell phone sales - 10 million phones, by the end of 2008.

However, lets do some napkin math. A very small percentage of phones out there today are smart phones. C Net says that 37.4 million smart phones out there. This is probably a pretty conservative estimate by now -- the Gartner study was released in October. Let's give the smart phone people the benefit of the doubt and say that usage triples by the end of 2008. That makes about 100 million smart phones out there. 10 million is ten percent of that market.

Let's look at the math another way. Cingular has 58 million subscribers. Assuming that they gain 20% per year, they will have 68 million at the end of 2008. If Apple is aiming at 10 million phones, that is one out of every seven Cingular customers. Next time you walk down the street, notice count 7 people that you can notice have a phone. If Apple makes its goal, one of those 7 people will own a iPhone, and will have shelled out at least half a grand on it.

These are amazingly high goals for a company that is new in the market. Granted, the iPhone is pretty revolutionary, but I don't think Steve is that crazy. I'm betting that he has something up his sleeve that will help him meet or beat this 10 million goal.

Wouter Verhelst: libgjs

About a year and a half ago (has it been that long already?), I blogged about wanting to write some gobjects. People did give me pointers to some documentation then, but for various reasons I never looked into it in detail afterwards. Since yesterday, though, that's changed. For the last two days, I've been writing on something which I'll eventually release to the world as libgjs:
wouter@country:~/code/c/libgjs/src$ ./gjstest 
There are 1 joysticks on this system
Joystick 0 is a Logitech Inc. WingMan Gamepad Extreme,
	with 10 buttons and 4 axes.
wouter@country:~/code/c/libgjs/src$ 
Wonderful, isn't it? Obviously the above doesn't require the 306 LOC that I've written now (which isn't much, but that's mostly because I had to read a lot of documentation in between); but when finished, the API of that library will be approximately something like this:
if(gjs_joystick_get_max>=0)  
	GjsJoystick *joystick = gjs_joystick_new(0);
	if(joystick->buttons >= 1)  
		g_signal_connect(joystick, "button-pressed",
			start_firing, NULL);
		g_signal_connect(joystick, "button-released",
			stop_firing, NULL);
		g_signal_connect(joystick, "axis-moved",
			move_crosshair, NULL);
	 
	gjs_joystick_set_interval(1);
 
where start_firing, stop_firing and move_crosshair are, obviously, callback functions (they get the button or axis number as a parameter). The set_interval function sets the time between two polls of the kernel device file; this will use the glib mainloop, but it'll also be possible to use a different event loop with gjs_joystick_poll and/or gjs_joystick_poll_all. As of now, it's almost finished; only the signals seem to be something I'm having issues with still. But that's only a matter of not having used gdb enough—I'm sure I'll get there. What gave me the sudden idea to write this library? Something silly, really: for a project I'm currently negotiating, it might be nice if I knew how GObject works; and what better way to find that out than by writing something fun for it? Exactly. Update: Bugs squashed, and the library (along with a small test/demo application) is available. Please try it out and let me know what you think.

Aigars Mahinovs: FHS extension for user home folders

Justification. Currently there is a huge mess of files and folders that start with a “.” in any users home folder. There is no structure or policy on how applications should choose file and folder names for data that needs to be stored in users home directory. Additionally there is no established consistency between Gnome, KDE and most other applications. Gnome application have part of their configuration information in gconf folder and other part in a gnome subfolder. KDE applications have a complex structure under .kde/. And most other applications either have one file directly in users home folder or have their own dot-folder there. Problems. There are two major problems with current ad-hoc approach:
  1. Namespace pollution of users home space. In any desktop system “ls -al” in the home folder would be a very lengthy affair. Moreeven this namespace is folded - KDE and Gnome apps live in their own subfolders.
  2. Lack of structure in folders makes it much harder to properly understand their purpose. For example, if a user has misconfigured an application and would like to reset it to default settings, it currently could be hard to figure out how to do that. Especially without losing his data in that application.
Proposal. I propose to implement a policy on where an application can store data and configuration information in users home folder. Such specification would be proposed as an extension for FHS, first implemented in Debian and then promoted for inclusion upstream and in other distributions. Structure. I propose a following structure for a users home folder: Benefits The main benefit for such system for me is twofold: So, any suggestions on the idea and on where this should be best discussed?

Wouter Verhelst: AAAAAAAAAAAAAARGH!

Lilypond is a great piece of software, but its documentation is sucky as hell. I've been trying to tweak the output of a particular piece of music which turned out to have just one system on the final page using the default settings, so that this final staff would end up on the first page, too. The documentation on how to do this, however, is less than helpful. If there is a mistake that could've been made by the people who wrote the manual, be sure they made it: Really, I would be very happy if the lilypond authors were to just find someone who actually knows how to write decent documentation.

Erich Schubert: CSU will Debian illegal machen

Nach aktuellen Plänen der CSU wäre der Vertrieb von Debian GNU/Linux illegal. Auch zahlreiche andere Distributionen währen wohl davon betroffen: Alle, die sogenannte "Killerspiele" vertreiben... z.B. Overkill (wobei Debian auch noch z.B. Tremulous und OpenArena enthält, die auf der Quake3 engine basieren und 3D Grafik haben...)

Next.

Previous.