Last year, FLOSS Weekly interviewed Jan Lehnard of the CouchDB project. I put up a blog post on this, noting that it was interesting with a scalable parallel program written in Erlang, a true concurrent language. The interview was interesting, but not very deeply technical. Now, almost a year later, the StackOverflow podcast, number 59, interviewed the founder of the project, Damien Katz. This interview goes a bit more into the technical details and what CouchDB is good for and what not, as well as some details on the use and performance of Erlang.
I have an old Apple LaserWriter 12/640 PS network printer at home that I bought back in 1997. In those days, I had a PowerBook G3 at 266 MHz, Windows NT was new, and my work computer was one of Sweden’s first 300 MHz Pentium II machines… since then, my home machines have moved from MacOS 8 to Windows NT 4 to Windows 2000 to Windows XP and now Windows Vista 32- and 64-bit. But the trusty LaserWriter remains, keeps printing, and is still on its first toner cartridge!
However, moving to Vista has made the printing bit harder.
In FLOSS Weekly issue 57, about 20 minutes into the show, Randall Schwartz and Leo Laporte express genuine surprise that the XMBC media player application is all in C++. That is pretty telling, some parts of the computing world are indeed moving on to more modern pastures like Python, Perl, Ruby, and even Objective C (for the Mac people). And quite a contrast to the EDA world where C++ is still considered the new shiny thing, as I have lamented before… thanks for that small but golden genuine surprise, Randall and Leo!
Since I am slow to follow Internet fads, I am probably the last blogger on the planet to write about this… but it is too good not to mention. Microsoft research has created a brilliant or nutty piece of work called Microsoft (Research) Songsmith. The idea is pretty cool in theory, just sing into a microphone and the program creates background music matching… except that it does some pretty hilarious things when put to the test.
Edited on 2009-Feb-01, to include the link to the illustrated guide that really helps you get there faster. Thanks Simon! Also, promoted to front page, original post was put up on 2008-Nov-09.
Thanks to Simon Kågströms post (and the even better second-generation with screenshots) about using Eclipse for the Linux kernel, I have a much nicer work environment now for my ongoing work in learning Linux device drivers on PowerPC, which has helped me work my way through several hard-to-figure-out system calls. Continue reading “Eclipse Linux Kernel Indexing Works”
This is a short note about an “aha” moment: ArsTechnica just explained why Excel 2007 windows that look like being documents are not quite that, and how I sometimes manage to start multiple Excel processes by mistake. It seems that Excel is not truly a multi-window app like Word is… but still an MDI app that fakes windows in a way that makes the Windows task bar and Vista task switcher fairly confused. Thanks for the explanation.
I have heard some rumors that Windows Vista had a good screen capture tool built into the operating system itself. So when I needed to do some capturing on my home machine, I started looking for it. Turned out that it is an optional install on certain versions of Vista only, but Home Premium is one of those versions. The tool is called “Snipping Tool” in English versions, or “Skärmklippsverktyget” in Swedish versions.
I just got myself a new home PC, to replace my no longer very trusty five-year old Athlon-based PC. In the process, I realized I had to move my iTunes library from the old machine to the new. Reading on the web and the Apple support area made me somewhat skeptical as to the feasibility of this operation… would all my cover art, podcast subscriptions, playlists and ratings survive the move? There are many stories of failed moves and lost data out there… and moving from Windows XP to Vista 64-bit did not make the dread less.
In the end, it turned out it was really dead easy!
This is really quite funny: it is now twice that slightly panicked family members have called me to ask how to rotate the screen in Windows XP back to normal after toddlers of about six to eight months of age have managed to rotate it to 90 degrees or upside down by just banging on the keyboards of their computers, as small children tend to do.
It is a symptom of bad UI design when things just happen, and you have no why, and no visible indication to help you figure it out. Last night, I noted that the text in Outlook when composing email suddenly was way larger than normal. I put that way as a fluke, but today, the effect was still there, all the time. Strange. So I went in and checked my font settings, which were all fine. This being Office 2007, I suspected some kind of zoom effect, but there was no zoom indicator in any Outlook window. I tried ctrl-+ and ctrl– to see if Outlook respected the web-style view size shortcuts. But no effect.
I should have known to expect trouble when I tried out DataViz ActiveSync on my new G900… the first thing it said was that “in order to avoid problems, we will deactivate the synchronization towards PC Suite”. Ah well. I assumed you could get it back…
But that was not so easy. I quickly realized that ActiveSync was pointless for me, since the setup I have for my data is not “everything on the corporate server, period”, which is the usecase ActiveSync is built for. But when I told ActiveSync to stop synchronizing certain categories of data, that lock it had put up still applied it turned out. With no way I could find to turn it off. So suddenly my phone just did not want to synchronize with my PC.
Everybody seems to think the launch of the Google Chrome browser is very important and cool. Probably because Google itself is considered important and cool. I am a bit more skeptical about the whole Google thing, they seem to building themselves into a pretty dangerous monopoly company… but there are some interesting architectural and parallel computing aspects to Chrome — and Internet Explorer 8, it turns out.
This might appear as a stretched analogy, but it struck as me as obvious when I tried playing the Lego Racers boardgame with my 3-year old this weekend. The game is ranked pretty low on Boardgamegeek, and deservedly so. The promise and premise is great: use Lego cars to race around a track and pick up new pieces to modify the powers of your car… sounds like great fun. Right? But it is not, and that’s where my analogy with the age of software comes in.
I just listened to another Floss Weekly show, Number 36 where they interviewed Jan Lehnard of the CouchDB project. CouchDB is very interesting, in that it is a database designed for replication, redundancy, and thus massive parallelism. It was initially written by Damien Katz on his own, but now it is an Apache Foundation project sponsored by IBM. The most interesting thing is that Damien decided in 2006 to rewrite the C++ prototype he had in Erlang, and did so in just a few months if I understood my Erlang friends right. So here we have a really good parallel program written in a true parallel language.
I work quite a lot with Wikipedia systems (mostly mediawiki-based) to structure data and make it accessible to other people at my job. Since I happen to love tables as a way to provide overviews and summaries of complex information, I keep creating wiki tables. Editing tables in a wiki is pretty painful, especially when it is time to do things like add columns. Excel is a much superior tool for this purpose, and I have been looking for a tool to let me create tables in Excel and then get a wiki rendering of them for insertion into a wiki. Finally, I have found it! Here, you can find a pretty good Excel VBA macro that lets you select a range of cells and then get a wiki table code corresponding to it on your clipboard, ready to paste into the wiki site. Thanks a million times to the creators of that tool, it is really useful. Note that in Office 2007, you must save documents in .xlsm, macro-enabled, format to be able to save the macro with your file.
I finally switched to Microsoft Office 2007 in June this year. I was very hesitant, but I have been very pleasantly surprised by how well the new GUI works and how easy it is to get things done – once I stop trying to do things in the old way of Word.
But every once in a while, you get totally stumped trying to do something that was dead easy in “old” Word versions. Once such instance was a colleague of mine totally failing to figure out how to number the headings in the document. Which is pretty standard in technical writing. It took me a while, but I did figure it out. As I could not find any good link on the web explaining how to do this, here is my take that I hope some other desperate soul can search for and find.
At long last, the sync software for my SonyEricsson P990i mobile phone has started to work as it should. I have had an issue with synching of contacts since back in the days of my P900, where for some reason it would delete most of the contacts from my phone when synchronizing. I never managed to quite work out why, but I suspect it had something to do with a combination of contacts being in an unusual place in Outlook, and there being some 1600 of them when I was also synchronizing Outlook with a Salesforce install we used to have.
There were workarounds like forced sync in place that kept the phone very useful. But now, with version 1.5.8 of the PCSuite for Smartphones, it has started to work as it should have all along. Nice. Too bad this is coming pretty late in the life of this phone, got it almost two years ago and after the summer it is time to see what they have got to replace it. The P1i is too similar to the P990i to be worthwhile, waiting for the next-gen UIQ phone after that.
And yes, I do like the UIQ phones. They have their quirks, sure, but they also have lots of nice features. And for me, they tend to just work as you expect. Since I have learnt to use them, I guess. But in any case, next phone is likely also a SonyEricsson P-something.
Sometimes you find this rare gem of a piece of software that just works and that just solves a problem you have been having an itch with for a long time. SnagIT, from TechSmith, is just such a program. It makes doing screen captures and editing them incredibly easy and convenient. It also has some nice extras, like capturing a webpage in its entirety by scrolling the window in Internet Explorer or Firefox. Simple, but a great time saver for me. I feel like I literally saved hours of work time in just a few weeks of using this program. 30 bucks for a piece of software that does screen capture? In my job, a no-brainer. Highly recommended!
I just found out that my favorite Windows XP PowerToy is built into Windows Vista. To get to a command-prompt located in any folder directly from the Explorer, follow the instructions found at a Microsoft MSDN blog: Tim Sneath : Windows Vista Secret #1: Open Command Prompt Here. Very useful. But why not make it more obvious than “press shift while right-clicking?”.
One common use-case for multicore processing on the desktop and elsewhere is “doing many things at the same time”. You could be running many user-interface programs at once, like the “typical today’s teenager template” of tens of IM clients, web sessions, email conversations, music and video players, downloading movies, etc. Or it is a more business-like background indexing of harddrives, backups being taken, downloading large business files, compiling software, updating source code repositories, etc.
I have been doing both of these modes to some extent, and the main problem with them at least on a PC is that while the processors might be good at multitasking and sharing the CPU load, my IO system is annoyingly non-parallel.
A question that pops up quite often when computer architects and representatives from firms like Intel encounter a crowd today is but just what do you need more computing power for????. Most regular users are fairly happy with the speed at which they process words, surf the web, read email, do IP phone calls, crunch numbers in Excel, and other common tasks. It is hard to perceive the need for more speed in everyday tasks, unlike a decade or two ago when you could definitely ask for improvement. I remember scrolling a page in PageMaker on a Mac SE (8Mhz 68000). You counted the clicks and waited for the screen to jump, redraw, jump, redraw, stabilize… quite a different experience from working with modern computers and far more complex software that still responds instantaneously to almost any work.
A short update to the previous posting on how to compress video for the nano.
It turns out that the “iPod video” profile of Nero Recode is half aimed at showing video from your iPod on external devices. That’s the only good reason for the “high” resolution. I typically got a video size of 15MB per minute with these settings, which quickly fills up even gigabytes of space.
Using the “iPod Video-AVC” profile instead is optimized for viewing on the Nano itself and not on some external device. The resolution is down to 320×200-240 depending on source aspect ratio. And the resulting files are only about 5MB per minute, much more manageable for carrying a large video library on an iPod. I cannot see any difference in the quality of the output…
Update (2007-September-23): The default iPod-AVC setting has some issue with rapid cross-fades between scenes. To get around this, I set the quality settings to “2-pass” and “highest quality” in the detailed settings you can make in the second screen before moving on to actually encode things. This created very nice looking video that had no problems handling even the previously broken fades.
The cost was even more compute time. I think the current settings takes some 5 to 10 hours per material hour to encode (on my Athlon XP 2700+, not exactly a screamer by current standards).
This is not in my self-assigned range of topics, but I like when other people put up their helpful notes of how to accomplish some task that I am researching. Thus, I feel obliged to do the same when I have tested something reasonably new.
The task at hand here is “how to get video into an iPod Nano”.
The register report “IBM embraces – wtf – Sun’s Solaris across x86 server line” is a very appropriate headline for something quite surprising. The day before this happened, we discussed the announced announcement and said “nah, it can’t be about operating systems”. The idea of IBM in-sourcing Solaris for x86 just felt like the kind of thing that was in the same realm as flying pigs, freezing hells, and similar unlikely events.