Max Romantschuk's weblog
This is the personal weblog of Max Romantschuk. I write about what I like, when I like... you get the general idea. Rated R / K15 for occational mature content. Children: Off you go!
Damn you, Korg!
As far as hardware goes, the Apple iPad is really something. But being an open source and also free software (GPL etc.) fan, the closed platform is a huge issue for me. Which is really annoying, because the iElectribe app by Korg made me have serious cravings for an iPad. Video below...
Importing several CVS modules into a single Git repository
A lot of projects are migrating to the Git version control system these days, and I found myself in a similar situation at work a while back. In my case I needed to go from CVS to Git. There is a command for this, git-cvsimport, but it only imports a single CVS module into a single Git repository.
I needed to import multiple CVS modules to a single Git repository, with the former modules being subdirectories in the new Git repo. There were a lot of instructions on how to do this available, but no real complete script for the job, so I made one: git-cvsmod2subdir.sh
The script works by taking a list of CVS modules to be imported as a space-separated list. It then imports each module as a temporary repository, rewrites history in that repository to make it seem like the modules contents was always in that subdirectory. Finally it merges the temporary repository with the target repository you're importing into. The script is designed to be ran in the root of a Git repo, and assumes you want your modules as top level subdirectories.
Branches aren't really properly handled, (we didn't have any as they are, um, painful in CVS...) but if you only need your CVS head with history this should do. The script is designed to be ran once, incremental updates aren't handled. (We had no need, and doing it while rewriting history would have been tricky to say the least.)
Thanks to everyone else contributing with useful Git documentation on the web. I my case the work on merging repositories by Zrajm and more of the same by Mathias Biilmann was a great help in understanding how to glue necessary pieces together.
Don't text and drive
While the advice is obvious, I've seen far too many people playing with their phones while driving. Hell, I've even done so myself when using it as a navigator, probably risking my family's safety in the process. (Just pull over when the audio-directions are unclear...) But still, send this video to anyone who seems to be playing with their phone too much behind the wheel. Disturbingly graphic, but in this case I think it's appropriate. Here is the original video on Youtube.
A life refactored
Forgive the programming pun, but a few months ago I really had no idea where I'd be right now... During the last few months we ended up selling our flat, buying a new one, and on top of it all I ended up swapping jobs. One has to act when opportunities present themselves after all. Things are finally getting back to normal now, and I look forward to spending time doing nothing without feeling guilty about it any day now.
Needless to say my electronics project mentioned earlier has temporarily ground to a halt, but being the patient man that I am I'm not planning to let that concern me. It will get done when it gets done.
Today I finally got around to doing a behind the scenes upgrade to this site I've been planning for quite some time. When I originally set up this version of this site the Python-based Django framework was under heavy development, and version 1 wasn't released yet. That changed some time ago, and now, finally, my site is running Django 1.0 as well.
The upgrade went very smoothly, and thanks to the great Django documentation I had a handy list of what to do when upgrading to Django 1.0.
I'm hoping this will eventually lead to some other upgrades to this site, feature wise. I tend to have a lot of ideas for a bunch of stuff I could do, but I seldom have the time and determination to get these things done. I prefer do do less well than a lot poorly.
A few more words on Django and Python. I've worked professionally with a lot of different frameworks and languages, and I have yet to find anything that equals Python+Django in terms of having time to concentrate on what you want to do instead of trying to figure out how to get the language and/or framework to do it. Generally speaking, while biased, I can't really help but recommend trying out Django. The Django tutorial is a great place to start.
The electronics project I started around Christmas is still underway. It's progressing even more slowly than I anticipated, but I'm quite confident I'll reach my goal eventually. If all else fails the kids will ultimately grow big enough for me to do soldering when they are awake...
Jack of all Trades and Master of Some?
I'm hopelessly into a whole bunch of different things. I also tend to start and/or dream about lots of projects I never finish. Today I've started a project which I hope to finish eventually: A control surface and programmer for one of my synthesizers based on the MIDIbox platform. In the process of this project I'm hoping to learn more about electronics, C programming, and hardware design in general. Also I'm hoping to have a lot of fun doing something which I can see and feel with my hands for a change.
I'm keeping a progress blog on my project in the MIDIbox forums. More information on what this is all about can be found in the MIDIbox wiki, and on uCApps.de, which is the site of the creator of the MIDIbox platform, Thorsten Klose.
Never enough time...
The ratio of bloggers to ex-bloggers is something that is often joked about on the web. I've been part annoyed, and part indifferent about not having posted on this blog for a while. While I do have stuff to say, it seems I almost never have so much free time so that I could be bothered to write down a proper post.
I'm not the kind of blogger who writes about what I had for lunch, what movie I just saw, or other trivial details like that. I did finally give in to the peer pressure and register on Facebook a while back, so I guess the bases are covered in that respect. When I do post on this blog, it's usually when I'm excited or passionate about something. Also, I try to post when I actually have something to say about it. Just posting links makes little sense, and I already have StumbleUpon and delicious for that.
I guess the bottom line is I'm not ready to take down this blog, but I'm also not planning to post for the sake of posting. Having four little kids to take care of at home, and working full time, well, it takes it's toll. But then again it's worth it.
But a thin strand of glass...
When you loaded this page, you probably did not pay much attention to the fact that a bunch of photons just traveled down countless miles of tiny optical fibers made of really, really thin glass. Quite probably the signal also passed along the bottom of an ocean or two. This may seem mundane, but I say it's actually quite magical.
While the original design of the Internet stems from military technology, today's implementation is actually quite easily disrupted. The recent submarine cable disruptions were discussed on Slashdot a while ago, where I stumbled upon another, much older article about submarine cables...
Back in 1996 I had been using the net for some two-three years. Little did I know that Neal Stephenson was traveling the world discovering the secrets of laying submarine cables. Now, some 11 years later, I've made up for it. Mother Earth Mother Board is a gargantuan article written by Neal Stephenson for the December 1996 issue of Wired. It's more of a short story or a documentary-in-text really. While 56 pages long (you might want to print the print version) it is totally, totally worth reading. At least if you, like me, are fascinated by the sheer limitless of human ingenuity.
Puppy vs. Robot
Need I say more? No one gets hurt, don't worry. Watch the video below or view the original video on YouTube.
Wii: The console for people with lives.
It's been a while since my last post, but that seems to be the rule rather than the exception these days. Anyway, I'd like to talk a bit more about the Wii. I must say that I've been positively surprised. The kids like to play minigames, no surprise there. But on top of that my wife, family, and friends all have enjoyed playing it much more than I anticipated.
Interestingly, perhaps the coolest feature has actually been the Virtual Console. Even though Super Mario Galaxy is definitely among the top 5 games I've ever played the Virtual Console is really something. I've been able to finally play all those games I envied my peers playing when I was a kid, and my wife has been reliving a part of her childhood by playing familiar NES titles. The fact that you can get 5-10 old titles for the price of a single current title doesn't exactly hurt either.
The bottom line is that the Wii truly is a console for the whole family. Gamers have grown up, gotten kids, and matured in general. Nintendo has realized that. The PlayStation 3 and the Xbox 360 may be more powerful and certainly appeals to the hard core gamer crowd. But for the rest of us, not living in basements and having acquired "a life" complete with spouses, kids, and a lack of abundant free time there really is no better alternative to the Wii for now.
Why Vladimir Putin is Time's Person of the Year 2007
When I first heard that Time had chosen Vladimir Putin as their Person of the Year 2007 I was rather surprised. OK, let's face it, I thought the editors at Time were smoking crack. It seems Time anticipated such a reaction, and put up a rather compelling argument explaining: Why We Chose Putin. And despite the fact that Russian democracy is beginning to look very different from what we would label as democracy in the west, I'm surprised to find myself siding with Time. Maybe choosing order over freedom really makes sense some times?
I submitted the post above as a Slashdot story, but it seems it's not getting posted. Might as well copy-and-paste it here then...
General musings and thoughts on the Wii
There is one thing I wish I had more of in my life, something I always seem to run out of... The answer is obvious: Time. There never is enough time, is there? It's become painfully clear with this blog: These days I hardly ever have the time to post. In part this is due to my current job. I used to post during my lunch break, (ate at my desk,) but these days I go for lunch with colleagues and friends pretty much every day. That being the case there isn't much time left for blogging. As I've mentioned before I have double twins, four kids, so at home my hands are tied, so to speak.
This year I've gotten a Nintendo Wii for the kids for Christmas. Or gotten myself and the kids a Wii, really. I've been waiting for getting to actually play it for almost a month now. Thankfully there's only a week left to wait. Getting a Wii was an educational decision as well: I want my kids to think of gaming as a social event from the very beginning. The physical aspects of the Wii controller also greatly interest me. I truly believe the Wii's approach to gaming is the way to go for a lot of games. Why on earth should a video game have to be a physically passive experience? It's been that way for a long time due to restrictions of the hardware, but those are finally becoming a thing of the past. Another reason why I opted for the Wii was the all-ages approach Nintendo has taken with a large portion of the games on the Wii. Truly good toys, like Legos for instance, are fun for all ages.
Wulffmorgenthaler - Not for Everybody...
I've long been a fan of insane Danes Wulff & Morgenthaler, the masterminds behind the Wulffmorgenthaler.com web comic. They've released a video ad for their 2008 flip calendar on Youtube, and I'm really tempted to get one. The only problem is, well, just check out the video below and you'll know... But if you dare to tempt fate here's the Wulffmorgenthaler 2008 calendar product page.
Musings on Ubuntu
Warning: Geek talk ahead. (Normal people: Read some disturbing comics courtesy of Danes Wulff and Morgenthaler.) Anyway, to the point...
I finally got around to setting up a file server at home, not the least because of the fact that having around twenty thousand photographs (mostly of the kids and parties etc.) on my Windows desktop made me feel a bit queasy. While I was at it I decided to set up the server with the Ubuntu distribution of (GNU/) Linux. I've used Debian a lot in the past, and I wanted a no-frills installation, so Ubuntu felt like a natural choice.
I must say I'm impressed so far. I set up the server to share files over Samba, which did require a few manual configuration settings to get permission set up. Ubuntu also decided that since I installed without an Internet connection present I wasn't going to use one at all, and no package sources except for the CD-ROM were selected. But other than those two things it's been point and click, and everything has just worked.
Even setting up a VNC connection to the desktop (I like graphical user interfaces for a lot of stuff, OK?) was trivial: All you had to do was enable "Remote Desktop" in the Ubuntu settings, and after that The Gnome Vino VNC server runs automatically when the user logs in. I set the machine for auto-login, otherwise it's not accessible through VNC unless I do more manual configuration. In this case it's a non-issue, as there's no keyboard and mouse connected to that computer anyway. And don't get any big ideas, I VPN in though an SSH tunnel in my gateway.
On Mac OS X Leopard
Sidenote: I finally updated my CV... Shame on me for taking so long.
But anyway, to the point: I don't normally get very excited about operating system reviews, but John Siracusa's review of Mac OS X 10.5 Leopard was a very readworthy piece. I've been considering getting a Mac more and more seriously lately, let's just say that having Windows Vista force fed to me at work hasn't been much of a joyride. John Siracusa has clearly used Macs for a long time, but his review of Leopard does not have the usual reality distortion -affected smell of a fanboy. A good read, even if just for the technical internals of the new Time Machine backup feature.