Search Results: "reg"

14 September 2007

Peter Makholm: Just another Pontifex?

Ok, just going to do something scary:
$_=pack"C*",33..86;$o='NRCRIMGZLLLCXZBCVUIOR';$o=~s/./chr((ord($&)-13-&f)%26+97)
/eg;$_=$o;s/r/r /;s/l/l /;sub v $v=ord(substr($_,pop))-32;$v>53?53:$v s/p/P/;sub
f s/U$/U$ /;s/U(.)/$1U/;s/V$/V$ /;s/V(.)/$1V/;s/(.*)V$/V$1/;s/V(.)/$1V/;s/(.*)([
UV].*[UV])(.*)/$3$2$1/x;$c=v 53;s/(. $c )(.*)(.)/$2$1$3/;(v v)>52?&f:v v s/t/t /
;print"\u$_,\n";[substr qr/(.*)([UV].*[UV])(.*)/i,qw(Just another Perl hacker,)]
and now back to the regular schedule….

13 September 2007

Bernd Zeimetz: gimp-plugin-registry 0.3.1-1

gimp-plugin-registry 0.3.1-1 Some hours ago the new 0.3.1-1 version of my gimp-plugin-registry package was uploaded to unstable. Thanks to Ari Pollak - not only for sponsoring the upload, but also for asking me to include the GIMP Liquid rescale plug-in, which is one of the most amazing plugins I've ever seen for The GIMP. If you have no clue what 'liquid rescaling' means, here's a YouTube video for you (if anybody finds a non-flash version of that video in the net - please let me know and I'll link it): (http://www.youtube.com/watch?v=6NcIJXTlugc) And again, if you'd like to see a plugin included, please let me know.

Gunnar Wolf: BLOBs in MySQL: Binary Laughable OBjects?!

Bah, MySQL keeps insisting on being a fun way to waste your time.
One of my clients hosts its systems at Dreamhost, a quite nice hosting company, which has... Well, a couple of strange details :-/
Anyway, people who work with databases know that a BLOB (or its equivalent) is the right datatype for storing images or, in general, files, right? After all, BLOB is just an acronym for Binary Large OBject. And if somebody has a BLOB field in the DB and searches on it, most RDBMS-bound programmers will at very least chuckle at a design flaw - BLOBs are just to be stored and retrieved, that's it.
Well, the system I wrote for this client uses a BLOB field - Ok, to be clear: I just declared it as a :binary in the corresponding migration. That should do the trick, and should allow me to keep my system RDBMS-independent, right? So I can still work on my development system using nice-and-trusty PostgreSQL
Anyway... My client said some documents were being corrupted. And that is Not NiceTM... Documents were being truncated at 63Kb. The bug was consistent across the three instances of my system in Dreamhost, but could not be reproduced at my machines - It didn't take too long to find out it must be the DB (and that's partly because I don't really trust MySQL :) ).
Turns out that, in MySQL speak, there are four types of blobs: TINYBLOB, BLOB, MEDIUMBLOB, and LONGBLOB. Forgoodnessake, WHY?! The stupidiest one is the tinyblob: A Binary Large OBject limited to 8 bits (255 characters). Regular blobs are 16 bit long (65535 characters - Aha! That's your 63.99Kb limit!). Mediumblobs are 24 bits (16 million), and longblobs are 32 bits (4000 million). And, of course, the blob datatype is not large at all.
Bah.
Anyway... At least this is an open and known issue already to the Rails people, and I do expect them to change the migration equivalencies to something saner.
Bah again.

12 September 2007

Brice Goglin: Debian X.org notes - Got specs?

So, this time it was for real! AMD really meant it when they announce the release of specifications of ATI boards last weeks. During XDS2007 at Cambridge, we received the actual specs, 2 PDFs files, 460 pages for the M56 (Mobility X1600, r5xx board) and 436 pages for rv630. The files are now online, but I am not going to give the link here since the web server already suffered too much today (and the URL is easy to find anyway). People should NOT understand this as if we were going to get an open-source driver for all ATI boards next weeks. First, these are only 2D specifications for r500 and r600. 3D specs are expected in a couple weeks once AMD fixes the remaining issues. r300 specs might arrive later. Also, these specifications are pretty hard to use, as expected. There are something like 9000 registers in r6xx boards, and these PDF files are just description of these registers. It's of course far away from being a "How-to write a driver?". So if you want to help, there will be lots of things to do. We also got a demo from some Suse guys of the driver there are working on. They got these specs about 2 months ago. And they already have some part of modesetting working. It means you might get your X server to start. There are about one hundreds different chipsets with their own quirks, so still lots of work to do. And then lots of performance things, 3D, ... to do. This driver is called "Radeon HD" so far. It will remain separated for now, but it might end up being merged with the upstream ATI driver later since the 3D engine are very similar (I personally hope it will happen). The reverse-engineered Avivo driver is dead now then. Fortunately, Jerome Glisse has been aware of the event for a couple months now, so he didn't waste to much time working on it. xserver-xorg-video-avivo will remain in Debian experimental until the new driver arrives. The good thing about Avivo is that it (and the ongoing Nouveau driver for Nvidia) led to the development of very nice reverse-engineering tools (revenge, renouveau, mmio trace, ...). They will be very useful for other graphic boards, or even some network hardware. Of course, many thanks to AMD for making this happen!
(Permanent link) 

Christian Perrier: RWC: Argentina still there, Italy wakes up

After one day off, we watched Argentina-Georgia yesterday evening. Interesting game because it directly affect France's chances to qualify after Argentina's win on Friday. Argentina had a big disadvantage by playing only 4 days after their historic battle against France. As a logical consequence, they appeared quite tired and very imprecise. On the other hand, Georgia fought very courageously with a strong pack of forwards, encouraged by most of the crowd in Lyon. Finally, Argentina won *and* scored the bonus point by scoring a try in the very last minute (which might become very important to qualify in this pool. Good game even if Argentina was not that impressive, but I still think this is mostly because of the 4-days delay. Today, 3 games were scheduled. We didn't watch USA-Tonga (15-25). USA was slightly favourite for that one but they also were quite tired by playing 4 days only after their battle against England on Saturday. This was the first match for Tonga and obviously the island players were less tired and played a good rugby to win that one. Japan-Fidji (31-35) seems to have been the most uncertain match as of now. I somewhat regret not watching it as these two are among the teams I like watching and 7 tries in the match probably made it very interesting. Tonight, we watched Italy-Romania (24-18). The italians compete with Scotland for the remaining qualifying spot in that pool, if one assumes that New Zealand will obviously win all its matches. So, Italy *had* to win that match. The quality of romanian rugby has decreased in the last 10 years, but they still have a good set of great players, most of them playing...in France (just like one third of the italian team, indeed). The match was quite indecise with italy keeping the ball all first half long, but only leading 8-0 on half time....and being surprised by two romanian tries at the beginning of second half (8-12). After a strong domination of Italy, Romania was logically sanctioned by one expulsion and a penalty try (for successive voluntary faults), but, until the end, Italy was still in danger. They finally made it, which was the most important for them, 4 days after they were sweeped out by the All Blacks. We're now eagerly waiting for *THE* game of this week, England-South Africa in the Stade de France on Friday. Elizabeth found out that a few tickets are still available, but for 253 euros each, we decided to watch it on TV. So, between 21:00 and 23:00UTC that day, don't even think about pinging me on IRC. I still haven't decided who I'll support the most as I'm not a huge fan of either team....but they're still among the best in the world, of course.

MJ Ray: Tour of Britain - stage 2: Taunton

ToB Taunton BannerAs mentioned yesterday, I went to watch the Tour of Britain for real in Taunton. It’s taken me a while to encode these (I’ll write about the technical details on another page soon), but here are the videos. They’re in the super-cool Ogg Theora format, in case that helps you update your media player with filters like these. (I probably should do some clever tricks to embed these videos in the page, but it’s taken me long enough to get this far, so please either download the files or drag-and-drop the links to your media player. If anyone can explain how to embed videos simply, please leave me a comment…) First of all, I went to Staplegrove Road, where I thought the peloton might slow slightly to get past a roundabout on their first pass through Taunton (Ogg, 514K) a bit after 11am, but they didn’t really. Then I got a brilliant position in the second row just by the finish line, which meant I didn’t see the big crash of the day until I saw the TV news in the evening, but I did see both the main sprints, for the stage win (Ogg 919K) and the yellow-jersey group (Ogg 382K). Finally, I went and watched the presentations - the yellow jersey (Ogg 1.3M) and the champagne spray (Ogg 643K) are shown here. The BBC has the broadcast rights to the tour of Britain and seem to be doing a terrible job: Live race news seems to be limited to a quick mention in the half-hourly sports bulletins on Radio Five (on satellite Astra 2D at 28 east to much of north-west Europe, or Medium Wave 909 and 693kHz). Each night, there’s a short (3 minutes?) summary report in the BBC1 TV news of that stage’s region, some time after 18:30 BST (so tonight in West Midlands, tomorrow Yorkshire and North Midlands, Friday North-west and Saturday Scotland, all Astra 2D). This is not shown on BBC News 24, as far as I’ve seen, not even in the Sportsday show. There will be one national highlights show on BBC 2 at 14:30 on Sunday (again, Astra 2D), the day after the race has finished. Official listings say this is highlights of the final stage but hopefully it will cover the other stages too. I feel they should take the rights away from the BBC and give ITV a chance. We had better coverage of this year’s Tour of Ireland (from itv4) than we have of the Tour of Britain - this is silly. For non-TV coverage details, including Twitter, see CyclingFans.com

Erich Schubert: Gnuplot grep

For my diploma thesis (on clustering of high dimensional data, especially correlation clustering, i.e. clustering data by properties such as data correlation) I needed an easy way to filter out data from CSV files as used by gnuplot (actually, they are whitespace-separated).I hacked together a small tool that would allow me to easily 'grep' out certain parts of the datasets. If you know of a similar tool, please send me an email to erich AT debian DOT org.Currently, the tool allows you to do commands such as:
gpgrep "1~5$" "1200"  out/3d-2lin-noise.variances
to select ('grep') all sets where the first column ends with a 5 (regular expression match) and where the first column is less than 199.The tool is still in early development. Syntax may change, and I guess I'll add some more filters. But you get the idea. Focus is on a very compact syntax.A future filter I'm considering would e.g. select 20 random rows (with a fixed seed value, so it's reproduceable!) for sampling and a modulo-match to select e.g. every 7th row.Maybe I'll also add some output processing later, such as averaging values, calculating variances and mean deviations, stripping away columns (but you can do that in Gnuplot already). I don't want to overdo it though - it's just meant as a mini filter you can add to script output visualization. It's not meant to replace a full statistics toolkit.So if you know of a simple tool that can do that already, please tell me.P.S. a few people have pointed out awk. Yes, it can do most of this. One thing I also need, and I'm not sure on how to do that the easiest way in awk is to preserve 'blocking'. That is empty lines. Because the data set
1 1
2 2
1 2 2 1 are two lines with two points each in gnuplot, not one with four points. I guess you could just do a "/^$/ print ", though... hmm... looks like I finally have to learn awk. So far I've always been refusing to learn awk, I was happy with sed, perl and python...

Benjamin Mako Hill: Software Freedom Day Boston

This Saturday, September 15, is Software Freedom Day 2007. With more than 300 teams registered, there's a good chance that there's something going on near you. I'll be helping at the Software Freedom Day event in downtown Boston where I'll be giving a talk on a still undetermined topic. I'll also be helping out with GNU/Linux and RockBox installs and letting folks play with my XO and OpenMoko. If you are into free software, open source, or GNU/Linux, please show up to your local SFD event. Go ahead and bring your friends who are not yet familiar with free software -- this event is primarily for them. In Boston, there will be refreshments, talks, demonstrations, and installs. Bring your laptop, desktop, iPod, or other DAP -- or just bring yourself and a friend.

Steve Kemp: Your love is like bad medicine

I think I'm about ready to start running my SMTP proxy/filter for people now. I've got two users setup and it seems to be holding up just fine. I've managed to remove the need to manually create things, so I'm capable of adding new domains on the fly. For my personal mail handling yesterday was the first day I've received over 10,000 messages. These are the stats from yesterday showing what happens at SMTP-time:
Total Mails    : 13302
Total SPAM     : 12620 (bounced back)
Total Accepted : 682
Spam Percentage: 94.87%
So I've dropped 95% of incoming mail at SMTP time, which is a big win. Of the mail which was actually delivered I'd guess that pyzor, razor, and spambayes marked a further 50% of it as spam. So my proxy needs to do better ... but it's pretty impressive. TODO: Find people to run as guinea pigs, register a domain, profit.

Uwe Hermann: I'm now getting Green Energy via Lichtblick

Since a few days I'm a happy customer of Lichtblick, the biggest electric utility (Stromanbieter) in Germany which provides 100% green energy (or kostrom as it's called in Germany). Why? I was getting tired of all those hypocrites and liars (a.k.a. politicians) who keep on talking about global warming and renewable energy, but fail to produce any real results since many, many years now. So I decided to do my (small) part to help reduce CO2 emissions, the greenhouse effect, and global warming. After measuring the energy consumption of all my power-sucking devices and replacing or turning off some of them, and after replacing all lightbulbs with highly efficient energy saving lightbulbs, changing the electric utility was the next logical step. First try (failed) As probably almost everyone in Munich, I was a customer of the Stadtwerke M nchen (SWM). According to the last electricity bill I got from them, their sources of energy are: 17% renewable energy, 83% fossil energy sources, 0% nuclear power. Well, at least they don't use nuclear power, that's a big plus IMO, but 83% polluting, fossil crap? Thanks, but no thanks. So I opted to use their kostrom M-Natur tariff, which (they claim) provides 100% renewable energy. They use the so-called Aufpreismodell (sorry, German only), i.e. you pay a few cents extra per kWh, and this extra money is invested in renewable energy sources (mostly small hydropower plants around Munich). As I found out a few hours later (d'oh!) this "Aufpreismodell" is not really ideal (you still pay a conventional electric utility instead of one with 100% renewable energy, for instance). In addition, I stubled over a petition for the city of Munich to stop investing in a new fossil fuel power plant (bituminous coal, to be more precise). Which I promptly signed (and which went to several local parties including the greens, the mayer of Munich, and others).
Now, this is what I call hypocritical behaviour — on the one side they claim/pretend to be environmentally friendly by promoting their "M-Natur" tariff, and at the same time they invest even more money in fossil fuels? WTF? Anyway, it seems the petition did have at least some impact, the aren't allowed to invest more money into that fossil fuel powerplant than they already did. For me that was more than enough reason to immediately revoke my M-Natur tariff, and what's more, I switched to a completely different company now, Lichtblick (see also the respective Wikipedia page). I'm not willing to support such energy policies/politics with my money anymore. Lichblick Lichtblick is an kostromanbieter in Germany, supposedly the biggest one.
Their "energy mix" is 100% renewable energy (which is correct, unlike with SWM, as they do not own any additional fossil fuel plants). 76% of that is hydropower, FWIW. Their prices may be a bit higher than those of conventional electric utilities, but not all that much; you might even pay less, depending on where you live and which tariff you have now. You can use their price calculator to find out. Btw, some other good choices in Germany are Greenpeace energy, Elektrizit tswerke Sch nau, and Naturstrom AG. How the switch went Easy. Grab the respective PDF, print it, fill in the required info, and send it to them. Alternatively, they also offer online registration. It'll take a few weeks until the switch is performed; they have to contact your current electric utility etc. In my case it took ca. 4 weeks. There are no additional costs for switching. There is no "downtime" whatsoever (not even a few seconds), German law requires that you always reliably get your electricity 24/7 (and it indeed worked just fine for me). So, that's that. From now on I'm happily using green energy all day (and night) long. I'm doing my part in Saving The Planet (tm) and I sleep a bit better at night... P.S. No, I'm not getting paid by Lichtblick (or anybody else) to write this.

Eddy Petrișor: is easy to let yourself manipulated

There is this guy whose blog I found about a week ago. He does some really nice and funny sketches mostly with issues regarding Bucharest and things he finds out/encounters.

The fact that he is smart to see some of the rudeness happening in Bucharest doesn't help him notice he is manipulated by the press (and himself) and writes:

"La 6 ani de la 11 septembrie 2001, Osama bin Laden a scos capu' din vagauna cu o noua inregistrare video in care da lumii intregi 2 alternative: convertirea la Islam sau moartea!"

Which translates approximately to:

"Six years after September 11, 2001, Osama bin Laden shows his face out from his hiding place and makes a new video in which gives the whole wolrd 2 alternatives: converting to Islam or death!"

(I won't take into discussion the correct translation of the message from Osama, if the message is authentic, if Osama is payed by somebody interested in keeping the conflict open, if Osama's forces are actually active in Iraq, if Bush is Osama himself, if we're actually living in 1984 and Osama is already dead but the American manipulative government is using all sorts of recordings from him to keep people inside a cage and fed them propaganda, < insert your theory/idea here >....)

He links to this article, whose title might make one to think what the guy said is true (according to the article)...

But, if read carefully is clear that there are a few twists (in order of apparition):

So, the conclusion is that it's really easy to fall into the trap of believing what the titles and headlines suggest, rather than what the articles actually say, especially if you keep your head open only to single stream of ideas (I guess you, my dear reader, are smart enough to see what I mean here).


Disclaimer, my analysis might be off, my English sucks, I might be Osama, I might be Bush, I didn't saw the recording, there's a cat on a freezer...

11 September 2007

Michael Prokop: git-server for the poor: git-update-server-info, rsync and remote repository

I was working on the integration of live-initramfs for grml in the last few days. As the Debian maintainers of live-initramfs switched from svn to git and I contributed several patches I had to deal with git as well. Thanks to my personal VCS hero gebi I learned some cute tricks for working with git. One very nice tip is the ‘git-server for the poor’, which is pretty simple to use and set up as soon as you know what to do. ;-) As there isn’t that much documentation regarding this issue on the net yet I’ll provide the necessary steps here: On the server side (where you are running a webserver) you just need a directory for serving via HTTP:
% mkdir -p /var/www/grml/git/live-initramfs.git
On the client side check out the original repository, create a branch, edit what you want to and finally put it on the server so upstream can grab it:
% git clone git://git.debian.org/git/users/daniel/live-initramfs.git
% cd live-initramfs
% git checkout -b cool_new_feature
Switched to a new branch "cool_new_feature"
% $EDITOR $FILE(S)_YOU_WANT_TO_CHANGE
% git commit -a
% git-update-server-info
% rsync -az .git/* server:/var/www/grml/git/live-initramfs.git/
Now upstream (or you) can work with the remote git repository in the local repository and can refer to it through a name:
% git remote add prokop http://grml.org/git/live-initramfs.git
% git remote update
Let’s checkout what we have on the remote repository available:
% git remote show prokop
* remote prokop
  URL: http://grml.org/git/live-initramfs.git
  Tracked remote branches
    cool_new_feature master
% git diff master..prokop/cool_new_feature
Finally do with it whatever you like, for example:
% git merge master prokop/cool_new_feature
... or ...
% git merge $COMMIT_ID
... or ...
% git co master
% git merge prokop/cool_new_feature
... or ...
% git checkout -b my_test_branch prokop/cool_new_feature
... or ...
% git-merge
... or ...
% git-cherry-pick
... or ...
This process might be very handy for working together with upstream (hi, panthera :-)) JFTR: I’m tracking useful ressources for working with git at my del.icio.us page.

Brice Goglin: Debian X.org notes - X.org 7.4 plans - What we expect for Lenny

The release plan for Xserver 1.5 and Xorg 7.4 was discussed during the X.org Developers' Summit in Cambridge (September 10-12th). This is what we expect to ship with Lenny, so here are some details about the upcoming. Timeline As usual, there will be a 6 months release cycle. So Xorg 7.4 is expected on March 1st, 2008. There won't probably be any new Xserver release before that since some changes (already merged) require all drivers to be updated anyway. So Xserver 1.5 is expected on the same date. Since there are already some known problems in Xserver, they also plan to release Xserver 1.4.1 on November 1st. PCI Rework The master branch of Xserver already contains the long-expected pci-rework which is supposed to fix all the PCI domains and other non-trivial PCI hierarchy support (important for ia64, but also for some powerpc and sparc users). RandR People having Intel, ATI or recent Nvidia boards learnt to love the RandR 1.2 extension which provides the ability to enable/disable, resize, rotate, move outputs within a single big virtual screen. More transformations should be possible with RandR 1.3. Hopefully, there will also be some standardization regarding output names in various drivers, or at least a way to retrieve the type of each output (LVDS, DVI, VGA, TV, ...). And the server should get an abstraction object to describe GPUs, which might make the support for multiple boards easier. Input On the input side, XKB 2 and XGE should be merged, which shouldn't be really visible to end-users but should make internals much better. Then MPX (Multi-Pointer X server) might be in Xserver 1.5 too (if all semantics issues get fixed first). It would mean support for multiple independent keyboard/mouse pairs or so. See the MPX page for details. Compositing Compositing still gets a lot of attention. Several distributions are actually thinking of enabling Compiz by default. EXA (the new acceleration architecture that has been designed for compositing) got improved a lot in Xserver 1.4. Several drivers including Intel and ATI r300 already work great with EXA (no need to use XAA + XAANoOffscreenPixmaps anymore) which means Compiz works very smoothly, even when resizing windows. XAA won't be removed soon though since lots of things needs to be fixed before that. There are also several videos available online, like this one. But one big piece is still missing for compositing: directed rendering to redirected windows. So far, if you start glxgears in Compiz, you will see that the gears completely ignore wobbli-ness of windows, other windows overriding them, cube rotation, ... they keep rendering of top of everything without any effect. Getting true support for compositing such windows requires lots of work in all parts of the DRI stack. Kristian H gsberg got it to work (and we even get a great demo). See Kristian's blog for details. Upstream devs are now working on integrating all modifications nicely in upstream Xserver, drivers, DRM module, Mesa, ... Once this works, you can get GLX_EXT_texture_from_pixmap for both direct and indirect rendering, and full support for GLX 1.4 in the server (only 1.2 is supported as of now). Also, redirected windows (let's say a wobbly window on a side of Compiz' cube) should get input events correctly thanks to input transformation in Xserver 1.5 (event coordinates will be converted into the redirected window coordinate space before being passed to the client application). Kernel-related reworks Compositing improvements actually require a large rework of the memory management in the server. Basically, we need a global management for both 2D and 3D object allocations, so that you can get both to work fine without having to change config options (things like XAANoOffscreenPixmaps or FbTexPercent). All this is related to the TTM (Translation Table Maps, see these slides for details) which has been under development for a while. It requires to change the interface with the kernel DRM modules, and it won't happen before 2.6.24. The Xserver part of the work is not big, so it might still be done before 1.5 is released. Fortunately, once all this is ready, people should stop complaining about memory allocation failures, Compiz being slow because one option is not enabled by default, ... Another hot topic in the X.org/kernel area is about moving modesetting in the kernel. When you get a kernel panic, you only actually see it if not running X (or if logging kernel messages through the network). So your machine freezes, you don't know why, you have no way to know, and you just reboot. Getting panic messages on X would be much better. To do so, the kernel needs to now which mode is currently in use on the monitor and then it will render the message on the framebuffer. This require lots of work, so it will unlikely be in Xserver 1.5 though. Miscellaneous Xserver 1.5 will also contain XACE (security framework), the cleanup of the ABI (explicit _X_EXPORT required), and possibly glucose (OpenGL acceleration for X, see Zack Rusin's blog). I asked whether there was actually some work on building the GLcore server module as a part of Mesa so that building Xserver does not require the whole Mesa source anymore. People seem to agree the current situation is a real pain for distributions and we should make this change happen. But the actual work has to be done in Mesa anyway, we'll see what happens.
(Permanent link) 

Dirk Eddelbuettel: Another option for MythTV schedules

Yesterday I mentioned how straightforward it was to setup an account with SchedulesDirect to obtain tv schedule data for the MythTV 'software pvr'. For completeness, a 'free as in beer' screen-scraping alternative is provided by the zap2xml Perl script together with a (free) registration at the tvlistings.zap2it.com site. Instructions are on the zap2xml page, and all is left to do is to combine the calls to zap2xml.pl and mythfilldatabase in a single shell script -- which is easy enough to do too.

10 September 2007

Neil Williams: Homebank vs gnucash - round 1

Homebank has had a few problems getting through NEW due to legacy problems from the original Amiga version (and it isn't ready yet) but I've been trying it out anyway and comparing to gnucash. Bearing in mind that I have done upstream work in gnucash (i.e. I like gnucash enough to tackle the massively scary gnucash source code) and have (almost) got used to the regular dependency hell that it imposes on my sid installation, I'm finding homebank quite friendly.
(See #441110, #441103, #441129 and #441363 for recent examples of gnucash causing dependency hell - again.)
(1:0 to Homebank).
Homebank is closer to the Quicken model with categories but internal transfers between accounts are supported to give some impression of double-entry. (1:1) My main interest is in data import/export because I've long been looking for a way to create invoices from PIM data e.g. in a Palm Pilot or similar. Homebank supports a CSV data import for data that can be handled as an invoice. OK, there's no fancy invoice printing but that doesn't bother me (I never used the gnucash invoice print support) (2:1 to Homebank) - my invoices are all electronic and I have to use the client system (MSDOS!). What I need is to create my own records of the invoices within my financial accounts and Homebank may be able to do that with far greater ease than gnucash. My data exists primarily in my Palm because I take and change my bookings on-the-move. I want to be able to HotSync my Palm through a query interface (pilot-qof) and XSL (datafreedom-qsfxsl) direct into a financial application that can correlate that data with the payments made into my bank by the client and thence with data from my bank statements to prepare data suitable for my tax report.
I'm thinking that if I can get half of the ease-of-use of Homebank into the rigorous double-entry support of gnucash in a small program (gpe-cash), I'll be doing very well.
One limitation of Homebank is the "wording" - the translations appear awkward and unfamiliar but that can be easily fixed. The link between "Archives" and "automated transactions" isn't clear - I think it means "templates" and "scheduled transactions". (2:2)
Homebank can't do all the things that gnucash can do but that is a weakness in gnucash, not homebank. (3:2 to Homebank) IMNSHO, GnuCash tries to do too much and that leads to an oversized and overly complex codebase as well as a dependency list that puts OOo to shame. The graph support in homebank is a lot better than gnucash and that is not the fault of libgoffice, it is entirely down to the choices made by gnucash upstream developers. Homebank graphs are fast, simple, intuitive and informative, displaying useful info at the first attempt instead of having to wade through the Options dialogue in gnucash. (4:2 to Homebank).
If I can work out some simple scripting that combines these external tools into 'HomeOffice' support in Homebank, everyone wins.
I've never liked CSV as a data format and the homebank main files are XML (like gnucash). Unlike gnucash, the XML appears sane and usable for XSLT - raising the prospect of creating reports directly from the homebank data files.
Homebank upstream have been very supportive of the various requests to assist getting Homebank through NEW so I'm hopeful that if an XML import/export method was proposed it could be included in future - especially if the donkey work is done by external tools.
This would tie in well with datafreedom-qsfxsl and datafreedom-perl. Initially, I'll look at XML->CSV - ugly, I know but at least Homebank can import data to be used as invoices; gnucash cannot. (5:2 to Homebank).

At the end of round one:
Homebank : 5 GnuCash: 2.

Russell Coker: Gear Acquisition Syndrome

I have just read an interesting post about Gear Acquisition Syndrome [1] as applied to the guitar industry. Apparently it’s common for people to spend a lot of time and money buying guitar equipment instead of actually playing a guitar. I think that this problem extends way beyond guitars and to most aspects of human endeavour, and that actively trying to avoid the problem is a key to getting things done. I believe that the author however makes a strategic error by then going on to advise people on how to buy gear that won’t become obsolete. Sure it’s good to have gear that will suit your future needs and not require replacement, but if you are repeatedly buying new gear then your problem usually is not that the gear doesn’t do the job but that you want to buy more. I used to suffer from this problem to a degree with my computer work, and still have problems controlling myself when I see tasty kit going cheap on auction. Here is a quick list of things to do to avoid GAS:
It’s interesting that a sports-shoe company has a slogan “Just Do It” while trying to convince people that having special shoes is required for sporting success. Most professional athletes started training with minimal equipment. Get some basic gear and Just Do It!. References:
  1. http://www.harmony-central.com/Guitar/Articles/Avoiding_GAS/

  2. http://www.lenovoblogs.com/insidethebox - feed: http://feeds.feedburner.com/lenovoblogs/insidethebox

  3. http://etbe.coker.com.au/2007/08/25/designing-computers-for-small-business/

Dirk Eddelbuettel: Chicago Half Marathon 2007

This morning was this year's Chicago Half Marathon, the race I often refer to as 'my favourite' after having participated in 2006, 2005, 2004 and 2003. But this year I somehow managed to convince myself I had already registered, when I had not. Doh. But due to a friend's unlucky injury, I could re-use his registration and still race. Weather was once again gorgeous, but maybe a little on the hot side. I tried not to push myself too hard given the two big races coming up in the next seven weeks and ran a decent 7:12 min/mile pace for a chip time of 1:34:20.

9 September 2007

Jeff Bailey: End of week 1 in Santa Clara

In Santa Clara and still adjusting. The corporate housing that I'm in is nearly 4 hours by transit to the office according to the magic computers at 511.org. If I walk a mile on this side, and take a Google shuttle from the Caltrain, I should be able to get that down to an hour.

ahahahah, yeah right. I get a ride from Angie in the morning. It takes 15 minutes.

But *people*, c'mon.. This is California, right? Where are the people caring about the environment and hoping into mass-transit? Get out of your shiny Prius' and take a bus somewhere. Oh wait. You can't. Because it takes 4 hours to go 8 miles.

I'm thinking about this as I'm looking at churches and trying to decide if I feel like going to one this morning. I remember when I first joined the Beacon Unitarian Church, it was (as much as anything else) because I could walk to it. From the church, I could visit a half-dozen people who also lived walking distance from the church. How shall I build my community from inside temporary corporate housing in the middle of Santa Clara?

But we're starting to settle in a bit. We've swapped the van we used to drive across the country for a car. We've got a bank account. We've got a GrandCentral phone number which should follow us everywhere, and next we'll get an POBox so that as we move around a bit before settling in we'll at least have a permanent place to receive mail. It turns out that the State of California wants us to retake our written and road tests to move our licenses to here. That should be fun. Do you suppose it's an auto-fail if I yell "Christing fuck, people! Learn to drive!" as I merge onto the freeway? It's become a bit of a regular chant.

Russell Coker: Comparing Debian and Fedora

A common question is how to compare Fedora [1] and Debian [2] in terms of recent updates and support. I think that Fedora Rawhide and Debian/Unstable are fairly equivalent in this regard, new upstream releases get packaged quickly, and support is minimal. They are both aimed at developers only, but it seems that a reasonable number of people are running servers on Debian/Unstable. Fedora releases (previously known as “Fedora Core” and now merely as “Fedora”) can be compared to Debian/Testing. The aim is that Fedora releases every 6 months and each release is supported until a release two versions greater is about to be released (which means that it’s about a year of support). The support however often involves replacing the upstream version of the program used to make a package (EG Fedora Core 5 went from kernel 2.6.15 to kernel 2.6.20). I believe that the delays involved in migrating a package from Debian/Unstable to Debian/Testing as well as the dependency requirements mean that you can get a similar experience running Debian/Testing as you might get from Fedora. Stable releases of Debian are rare and the updates are few in number and small in scope (generally back-porting fixes not packaging new upstream versions). This can be compared to Red Hat Enterprise Linux (RHEL) [3] or CentOS [4] (a free re-compile of RHEL with minor changes). Regarding stability and support (in terms of package updates) I think that Debian/Stable, RHEL, and CentOS are at about the same level. RHEL has some significant benefits in terms of phone support (which is of very high quality). But if you don’t want to pay for phone support then CentOS and Debian/Stable are both good choices. Recently I’ve been rolling out a bunch of CentOS 5 machines for clients who don’t want to pay for RHEL and don’t want to pay for extensive customisation of the installation (a quick kickstart install is what they want). The benefit of Fedora and Debian/Testing over RHEL, CentOS, and Debian/Stable is that they get newer packages sooner. This is significant when using programs such as OpenOffice which have a steady development upstream that provides features that users demand. If you want to try new features then Fedora and Debian/Testing are both options that will work. One reason I had been avoiding serious use of Debian/Testing is that it had no strategy for dealing with security fixes, but it seems that there are now security updates for Testing [5] (I had not realised this until today). References:
  1. http://fedoraproject.org/

  2. http://www.debian.org/

  3. http://www.redhat.com/rhel/

  4. http://www.centos.org/

  5. http://secure-testing-master.debian.net/

Frank Lichtenheld: Introducing sourcedeps.d.n

I get regulary annoyed by the fact that I find random -dev packages on my main system and can't figure out which package's build-depends I satisfied by installing them. Also they don't disappear if the package changes its build-depends. So I decided to solve this problem. Since I'm not really a C/C++ hacker and didn't want to learn hacking APT for this I choose to solve this problem with brute force and Perl ;-) The result is sourcedeps.debian.net, a APT archive which contains one binary package for each source package. The following mapping was done:
     source package name => binary package name, but with appended '-build-depends'
     Build-Depends       => Depends
     Build-Depends-Indep => Recommends
     Build-Conflicts     => Conflicts
     Binary              => Suggests
     Binary              => Provides (with appended '-build-depends')
If any of the Build-Depends fields contains arch limiters, arch-dependent packages will be created, otherwise one arch-independent package. This allows easy installation of build-depends by installing the corresponding meta package, tracking them, and removing them automatically in case you deinstall the meta package. It only works for known architectures though and it requires creating around 60,000 binary packages. It also doesn't allow tracking build-dependencies for more than one version of a package (e.g. unstable and experimental). You can use this by adding something like
deb http://sourcedeps.debian.net/ sid main contrib non-free
to your sources.list. The archive is signed with the following key, available from a keyserver near you and signed by me:
pub   1024D/ED505694 2007-09-08 [expires: 2008-09-07]
      Key fingerprint = 4ECF DF07 F419 0B5B 45C4  51D0 00E9 C47B ED50 5694
uid                  SourceDeps.Debian.Net Archive Key 
Comments welcome.

Next.

Previous.