For quite some time it’s bothered me why changes I make to my mailbox while using IMAP as the access protocol to the server won’t be persisted immediately, but only upon closing the mail client. This is particularly annoying if you’ve organized a bunch of e-mails at home and then check your iPhone (or other client) just to see the old stuff still lying around.

Finally I found the setting which seems to cure this problem, at least if you’re using Thunderbird as your IMAP client. In your preferences dialog under the “General” tab click the button “Config Editor…“. Enter “expunge” In the search field and change the “mail.imap.expunge_after_delete” from “false” to “true“. To be specific this only seems to concern the deletion of e-mails, but it has worked for me when moving e-mails around from folders as well, so I’m happy!

Hope this works for you too, should you need it.

Share

Comments No Comments »

So, I’ve got my mail accounts hosted by an Exchange 2003 server and I’ve connected the borrowed iPhone I’m using to it – works perfectly. Now I’m looking to get the information from there into my Mac somehow. Apart from having my private mail accounts in an Exchange server I’ve also got my professional mail account in an Exchange server and I’m currently using Google Calendar as a merging platform for my calendars (mostly because I don’t want to have to look at two devices in order to determine if I’m available or not).

While trying to solve this I found this article yesterday which has helped me adding my Google Calendar to Thunderbird using two plugins. Since Thunderbird has come to version 3 nowadays I had to download the latest nightly builds of the plugins, they are available here. So now I’ve got my mail working in Thunderbird (although via IMAP) and I’ve also got my calendar with read&write access connected to Google Calendar. Now I just need to figure out how I’ll get the information exchange with my private Exchange account and Google Calendar up and running. For my professional Exchange account I’m using a software called SyncMyCal running within my virtual Windows 7 machine dedicated for work.

Another potential solution might be to have a look at CalDAV for Exchange, but I haven’t gotten that far yet. =)

Share

Comments No Comments »

While preparing my MacBook Pro which I bought for myself on my 30th birtday this Wednesday one of the things to get done was to get the 3G-modem to work. Having used the modem on my various Windows-machines before I knew that a OS X installer was lying around on the internal memory, so I just fired it up. Sadly it turned out that the Launch2Net installer failed, so I proceeded to uninstall it.

After awhile I found a newer version of Launch2Net which allegedly is Snow Leopard compatible (I need to learn that 10.x releases actually differ quite a lot internally from time to time), so I downloaded that one and installed it. Only problem now was that even though the manual claimed that the software would fire up automatically when the modem was inserted nothing happened! No matter how many times I uninstalled the software, rebooted or removed it with AppCleaner and then re-installed it. No go.

By now I started wondering if the rollback of the first installer hadn’t ended cleanly. Long story short, after learning that drivers aren’t what drivers are in Windows but are rather installed as kernel extensions I began looking for where these extensions are stored, the answer is: /System/Library/Extensions. Well, lo and behold – even after having uninstalled all visible traces of the software there were extensions left (named NMSonyEricsson[...]). After having manually deleted these extensions (which actually are folders containing binaries and other stuff) I rebooted and then installed the latest version of Launch2Net SonyEricsson Edition (the link is specifically for the modem I have (SonyEricsson MD400) which in my case happens to be 1.9.1.0 and then rebooted again.

Now it all works! The software fires up when I plug in the modem and it configures itself according to the network the SIM card belongs to and I’m able to connect. I’ve been listening to Spotify for the past 40 minutes now without a hitch – so I’m happy!

What I’m taking away from this is that I continue to not be surprised by the crappy quality a lot of cell network providers have to live with when distributing hardware for which someone else provides the software. Especially when we’re talking about a niche operating system like Mac OS X.

Share

Comments 3 Comments »

Yesterday was my 30th birthday and it passed without any deadly incidents – phew! What I do want to mention though is that I got a present from my girlfriend which really rocks, I must say!

The best way to explain what I got is to show you this youtube-video:

If all goes well I’ll be a squeeling little boy in that car and I have a feeling that it’s gonna rock my socks off! =)

Share

Comments No Comments »

Now that I’m in between assignments I thought I’d take the opportunity to install Windows 7 on my work laptop (a HP 8510w) in order to get better performance in my virtual machines. Several colleagues have already installed Windows 7 on their laptops of the same model, so I figured I’d take the plunge.

A colleague recommended that I should use a USB drive to install from as this would save me a lot of time and since I had read about the tool that Microsoft har released for this I figured that I would give it a go. Turns out that I had to download the tool from a CNET server because the tool has been pulled by Microsoft due to a license problem. Went ahead and prepared my 4 GB USB stick with the ISO and rebooted.

After having clicked the “Install Now” button all I get is a dialog telling me that I’m missing a CD/DVD device driver and tells me that I should browse for a location containing the drivers needed. That is misses a working driver is, in my view, utter bullshit. Why? Because when I browse for the drivers (which I don’t have by the way, because who needs drivers for a CD/DVD drive nowadays?) I can browse my hard drive (so it’s not a problem with not having a working hard drive to install to), a CD inserted into the CD drive, and the contents of the USB stick containing the Windows 7 installation.

Googleing the problem shows a bunch of people having this problem due to faulty burns of their DVDs, but this doesn’t apply to me since I’m using a USB stick to install (but I did re-prepare the USB stick three times just to be sure). The few people I’ve found that have had this problem haven’t had it with earlier versions of Windows 7 (betas and release candidates) and some of them seem to have cured the problem by changing the SATA configuration in their BIOSes (i.e. changing from SATA mode to IDE mode). One Microsoft site even suggests that the controller in the computer is not compatible with the AHCI driver provided by Microsoft. How the heck could it not be compatible when it’s been working without a problem in Windows Vista? Actually I thought about changing SATA settings in the BIOS, but I didn’t find any settings which solved this problem.

Tomorrow I’ll try to install from a DVD which is known to have worked for a bunch of my colleagues and see what happens then. But somehow I don’t really beleive in success. After having re-prepared the USB stick three times the corruption problem is most likely not what’s causing this, so it’s more likely that i’ve got a weird hardware revision of the laptop which screws this up.

Things like this want me to get a MacBook Pro and just forget about problems like these! Atleast there’s a greater chance to get Windows working virtually…

Share

Comments No Comments »

A couple of years ago we bought a Popcorn Hour A100 in order to be able to play our digitized movies and without having to have a dedicated computer for this task. Now that we’ve moved we found ourselves in a position where we couldn’t avoid having a network cable lying across the floor in our living room.

Having had that cable there for almost three months finally pushed us over the ledge and we decided that something had to be done. Either the cable would have to be nailed to the wall all the way around the room or we would have to find a wireless solution. Looking at the room and the length of cable it would require I decided to have a look at what’s possible to do with WLan. =)

By the way, some of you might claim that the problem could be solved with adapters transmitting the network through the electrical circuits, but that’s already been tested in our household and it didn’t work for full HD 1080p media (actually it didn’t even work with a DVD rip).

Having checked around for the theoretical maximum bandwidth required for HD media I realized that a G network (54 Mbps maximum, theoretical, throughput) wouldn’t cut it. Instead I figured that the new N standard might be enough. Looking around the internet I came across this Linksys ethernet bridge and decided that it looked interesting. But considering the increase in Apple computers we had already considered purchasing an Apple Airport Express in order to ensure that the wireless access point and the Apple computers would have the best possible circumstances to achieve the maximum throughput available. So, would it be a wise decision to use a Linksys wireless device in conjunction with a Apple Airport Express and still expect maximum throughput? No, probably not. True, the wireless-N draft has now become a standard but that doesn’t mean that all different N-devices from different vendors immediately will receive a firmware update and begin to cooperate flawlessly from day one. So, given that Apple states that the Airport Express unit can also work as a network extender it became apparent that going the Airport-route would be the most efficient one. Apart from that – the difference in cost between the Linksys ethernet bridge and the Apple Airport Express is a mere $27.

Said and done – two Apple Airport Express devices were purchased and installed the same day as they arrived. The installation using my Windows Vista laptop was pretty straight forward apart from one thing. Although the Airport utility successfully found the first Airport, double-clicking it just gave me an error message stating that an error had occurred while reading it’s configuration. The solution here is to select ‘Configure other’ from the ‘File’-menu. Enter the IP-address of the device (which can be seen in the applications main screen) and also provide the default password (which is ‘public’) and there you go. I’m quite impressed by the amount work Apple has put into making the setup process end up with a proper configuration. As an example I was warned about the fact that the Airport Express had detected that it was probably performing double NAT (since it had been connected to our existing NATed network). One click on an OK-button and problem solved. Brilliant!

The other Airport Express had to be configured in the same way, just that this one would be set to extend the wireless network instead of creating one. This results in the ability to connect wired devices to the ethernet port of that Airport Express and thus making them wireless.

In my test I managed to transmit 70 Mbps from our NAS (Netgear ReadyNas NV+) to my Vista Laptop using CIFS over the wireless link. Quite impressive if you ask me. In the creation of the wireless network I chose to use the 5 GHz band only and in combination with WPA2. I might choose to activate 2,4 GHz later on, but that might reduce performance, so we’ll see.

While testing the performance of the Popcorn Hour using a full high definition movie (1080p) I noticed stuttering only once during a scene with a lot of fire and explosions. Switching the Popcorn Hour from CIFS (SMB) to NFS in its communication with the NAS seems to have solved this problem as well. It is a well known fact that the CIFS implementation on the Popcorn Hour might not be up to scratch, so uing NFS will more than likely give better performance. Which it did. =)

So all in all – I can recommend building a wireless bridge using Apple Airport Express devices for your HD media streaming needs. Of course, depending on how your house / apartment is built you might not have the same success as we’ve had. As an example I wasn’t able to create the network from within our wardrobe and retain the performance I needed – the wall is simply too thick for the 5 GHz network to go through fully.

Share

Comments 2 Comments »

For the last couple of weeks I’ve been pondering my next cellphone/XDA purchase. This is in part fueled by the very unexpected change in platform affinity of one of my friends. He borrowed an iPhone 2G and was so impressed by it that he ordered himself a new iPhone 3G S and is now happily living with it.

When considering the fact that I need to buy a new phone (mostly because I’ve borrowed my girlfriends phone) I too started thinking about switching platforms. For the past few years I’ve been deeply entrenched in the Windows Mobile platform, but looking over the hedge at the iPhone I’ve come to realize that the hardware offered for Windows Mobile devices just isn’t as attractive. Wondering if there might be anything better out there I made a list, looking at different platforms there are three big contenders: Windows Mobile, Google Android, Apple iPhone. Let’s have a look at them from my point of view:

Windows Mobile

WinMob has been around for a lot of years in a slew of different devices/shapes/versions. About 10 years ago I started out with a HP Jornada running WindowsCE and from there I moved on to a HP PDA (which I can’t remember the name of). By then it was time to embrace the integration of the phone in the PDA and thus I got a Qtek 9100. After having had an accident where the screen got cracked I ended up borrowing my girlfriends Samsung SGH i320. So I’ve basically been running with WinMob without asking any questions for well over 10 years – and also because no one has really been putting up any competition in this segment.

Being a heavy user of a digitized calender and contacts database I really can’t live without a PDA, so getting a device that doesn’t have a phone integrated is out of the question, also I’ve been quite adamant that the device has to have a physical keyboard. Oh, did I mention that I want it to look nice and easily fit into my pocket? Imposing these criteria on myself puts me in a position where a lot of the devices on the market just aren’t of interest. HTC is just about the only manufacturer that can consistently produce interesting devices – but, and this is a big but, using WinMob they have more or less decided that only Windows Mobile for Smartphones should be run on phones with keyboards (with a few exceptions). This eliminates the whole touch experience given that only Windows Mobile Professional (or what ever the versions are called) is touch-enabled.

The whole deal with being touch-enabled is about having a GUI that enables you to touch stuff. Preferably without having to pull out a stylus with which you’re going to pinpoint tiny, tiny little objects on your screen. To remedy this problem HTC have developed a little UI wrapper called TouchFLO 3D.

Google Android

I have never owned a device powered by Android but I love the idea of being able to use a phone based on an open platform where everyone can contribute with software – this really appeals to the technology-freak in me. However, I quickly realized that they weren’t going to produce any hardware of their own and that they too are depending heavily on HTC. Okay, Samsung have begun building Android devices and Motorola seem to be joining the ranks, but what turns me off with Android are the incredibly un-sexy videos I’ve seen of it. The UI looks like a plague from the 80’s! The only time when Android looks sexy and I actually want it is when HTC have wrapped it in their Sense UI (does this sound familiar?), but that puts me back in a position where I don’t want to be. What I’m talking about specifically is the problem of upgrading. When Android is released in a new version I’ll be depending on the good will of HTC to produce a port of Android that’ll run on their devices with their UI wrapper. This is just the way it was with Windows Mobile, you never knew if you’d get to enjoy the new software efforts pushed out the by the programmers in Redmond or if you’d be coerced into buying a new device – all controlled by the good will of HTC! In two words: this sucks! And speaking of software and wrappers: why on earth do I need to download additional software in order to get a Swedish soft keyboard layout? I mean, the world is a finite place, we know what different setups people want. The USA made this same mistake back in the stone age when they invented 7 bit character encoding, don’t make this mistake all over again!

While looking at videos of Android I realized that things didn’t run as smooth as I’ve seen them run on the iPhone, scrolling  a web page in the browser stuttered as well as pinch-zooming web pages. What got me thinking here was that if a phone with a processor running at 800 MHz can’t do what a phone with a processor running at 412 MHz (albeit with a GPU) can do then something has to be fundamentally wrong with the platform. I have heard from friends running Android on HTC Hero and various Samsung devices that this has been cured with updates – but this problem still manifests my main gripe with Android, It’s not ready for a prime time show – yet.

Apple iPhone

Never owned one before, but have a bunch of friends who have them. The first real close encounter I had with an iPhone was when a good friend (mentioned in the beginning of this post) decided that he would give it a shot. About 5 minutes after he layed his hands on it we decided that we would try to set up push mail and contact + calendar synchronization with the Exchange server hosting our mail. What has to be said about this Exchange server is that it’s running with a self-signed certificate and because of that it’s been an absolute pain to set up push mail with both Outlook and Windows Mobile devices. On the iPhone the only problem we had was that we had to click an “OK”-button when the device asked us if we wanted to trust this certificate. That’s it. Works. Since then I’ve had the privilege of using that iPhone because my friend got himself a brand spanking new one.

The main drawback with the iPhone (the way I saw it) is that it doesn’t have a physical keyboard, but having used the touch keyboard in the iPhone (which has a Swedish layout available out of the box) I must say that I’m slowly getting used to it and in combination with the dictionary (which is available in Swedish as well) it’s actually quite good!

Apples strength in this market segment is based upon the same concept as in the PC business – they build the hardware and they build the software. Therefore they can make things work as expected without building generic software which doesn’t always deliver a great experience based on which hardware it’s currently running on. Their devices are also a bit more expensive (as in the PC market) compared to others, but at least I get the software updates without being forced to buy new hardware for every increment! Up until today I don’t know of any incarnation of the iPhone that’s been left out of the update race. In two words: that rocks! And from what I’ve heard the upgrade process of the iPhone doesn’t involve wiping the device totally clean of every trace of your stuff (like it does with Windows Mobile and HTCs Android updates). In two words: yeah yeah, you get the point.

Do I have any gripes with the iPhone at all? Yes, I do. It will force me into using iTunes for managing my media and applications, but that was going to happen sooner or later anyways (considering the proliferation of Macs in our home).

Arguments heard from friends

You should join the open movement and support it by getting a device powered by Android.

Sure, I’d love to – but when I join it I’d like it to be a sleek, sexy and “it just works” experience. Not one riddled with stuttered scrolling (which might have been fixed by these latest updates) and unclear upgrade paths.

The iPhone locks you in and doesn’t allow you to run the software you want.

That may be so – but up until now I haven’t come across any software that I need which isn’t available on iTunes AppStore. And sure, I can agree that running tasks in the background would be nice but it’s not that much of a deal to me right now, and maybe they’ll release that feature soon too – who knows?

Conclusion

  • Let’s face it – I’m not gonna be around for ever, so when I get a mobile device I’d like it to be one that’s ready for the show now, not tomorrow or the next year.
  • Google being Google. I’m not entirely sure that I’m super comfortable letting Google know who I’m calling or doing whatever with – and yes, I realize that this is a totally paranoid argument – but why else would a company like Google release software like this?
  • I’m not ready for Windows Mobile – again. Not after having seen what’s around and how well it works in Microsoft environments.
  • When I get my new iPhone I won’t be jailbreaking it. Partly because of the problems with sharing private keys with like, a million other users on the internet which results in push notification enabled applications working in unexpected ways, but also because of this: http://blog.jeltel.com.au/2009/11/truth-about-ikee-iphone-virus.html (yes, I see that it’s not solely the fault of the jailbreak, but what else is there?).
  • Let’s face it #2 – eventually I’m gonna get a new phone/XDA after this one as well. And that one might very well be running Android. It’s just that Android in my eyes isn’t quite ready for my money yet.
Share

Comments 2 Comments »

So, as a part of my current consulting assignment I’ve been asked to work out a way of documenting the integrations that are deployed in the BizTalk 2006 platform I’m working with. I’ve stumbled across a tool called BTM2HTML/BizTalk Map Documenter (a codeplex project), but the main problem with this tool is that it only documents BizTalk maps. Orchestrations or pipelines and so forth are left out of the equation. Also the presentation of the mapping wasn’t really useful to us, it was somewhere in between technical and end user friendly. A developer wouldn’t be happy with it because it’s too much of a user presentation and the user wouldn’t be happy with it because he/she wouldn’t understand it fully.

What I set out to find was some tool that would help me extract the generated XSLT from a BizTalk map (either from the .btm-file or the assembly) and preferably not require me to manually load over 1500 projects in one instance of Visual Studio (and then right-click every single map to select “Validate map”). After asking around I got this tip: BizTalk Server 2006 Documenter (also a codeplex project). This looked exactly like what I wanted! Everything in my BizTalk platform would be documented in detail and neatly packaged into one comprehensive file. Only problem: it threw an exception when I tried to document my local BizTalk server!

It turns out that the application (or well, rather the base library that the application uses (BizTalk OM, yup – another codeplex project)) has issues with multiple versions of the same binary being installed on the same BizTalk server (i.e. in the servers assembly cache (GAC)). For some weird reason a design decision was made to store the map names, orchestration names, pipeline names, schema names and assembly names without version information as keys in a hashtable. It comes to no surprise that when confronted with a second version of for example a pipeline the application will encounter an exception due to the fact that the name already exists as a key in the hashtable storing pipelines for the current BizTalk application.

So for the last couple of days I’ve tried to spend as much time as possible extending the base library so that it will be compatible with BizTalk installations that have multiple versions of the same map names, pipeline names, orchestration names and assembly names. To be brutally honest my solution isn’t the most elegant, but it works. All it does is append the version of the artefact in question to its name when the instance of the type is created. What should be done is rather some re-engineering of the way the class library is built and how the inner collections are stored. Also, I don’t know if I’ve missed some artefact type which should be extended in the same manner just because it isn’t used in our server.

I’ll see if I can get in touch with the persons responsible for the various bits and pieces I’ve changed in order to add my efforts to the project or atleast receive some feedback. If you should feel that my changes would make your life better before I’ve managed to add them to the official project you can always contact me through this blog and I’ll be happy to send you the code (or even the packaged installation) – the license permits this from what I can see.

(Of course there’s a slight chance that I’ve completely missed something about all this multi-version yahoo which solves my initial problem with the exception, but if so – I haven’t found it yet).

Share

Comments 1 Comment »

Today has been a fairly good day I must say. Through my current consulting assignment I’ve had the opportunity to write some code in a open source project (this might very well result in another blog post quite soon which I’ve written about here). I’ve also today received a bottle of champagne for the work I did with the photography at my employers summer party – I like! I also had a pretty interesting discussion about career options, not as in look for a new job but rather to think about how to profile myself and think about what’s up next. Oh, and I went to the hairdresser today – it was seven weeks in the working. =)

All these things combined have given me an unexpected jolt of positive energy, something I haven’t had in a long time. I suspect that a contributing factor is that I haven’t had a proper vacation this summer. But in seven days that’s going to change! Now I just hope that I can keep this level of energy and motivation and look alive while doing it. =)

Share

Comments No Comments »

Went climbing yesterday at a place called Karbin with a friend of mine. I’ve always thought that my skills at climbing have been atleast average or slightly over. This is based on the previous climbing and rappelling experiences I’ve had in the army and so forth. What I realized yesterday was that never before have I been faced with the choice of complexity levels of the paths you choose to climb. From what I gather there’s a French scale from 1 to 8 (well, actually it’s open ended) and every step has three sub steps (a-c), so 1a is the simplest and 8c is more or less a flat wall without protrusions. What I also realized that even though I have fairly strong arms that does not compensate for the lack of technical skill, oh no it doesn’t. Even though I can climb a 5b route with not that many problems I more or less died slowly while trying a 5c route (never made it actually). Watching some of the other more proficient climbers (of which a slight majority seem to be women) it dawned on me that being smart about where you place your center of gravity (i.e. keep your hips close to the wall) and the technique of resting (keeping one arm straight while the other is working) while climbing are still things I need to learn.

To sum it up – today my arms hurt and it feels like I can’t grip anything with a reasonable amount of force. But it was fun! =)

Oh, and another tip – don’t go bouldering in the middle of your climbing sessions, it’ll just ruin your performance later on. Go bouldering afterwards instead. =)

Share

Comments No Comments »