Broken settings in jsiPodFetch

October 30, 2007 · Posted in My things · 1 Comment 

The settings file for my installed jsiPodFetch was corrupted today. I probably turned of my computer while it was still saving the file. Since I know the inner workings of the application there wasn’t much of a hassle for me, but since application didn’t start at all I thing other users will just stop using it if this happens.

At the moment I store my settings in a serialized class. One of the properties of the settings class is a typed DataSet. This makes the XML file bot big and vulnerable. I think a should move the per media data to something else than a DataSet and store that in another file. I should also try to use previously downloaded files to recreate state data if the file get corrupted again.

The solution I am thinking about right now will use a standard OPML-file for the feeds and a per feed file for media item state. I might just skip the OPML-file and search for the per feed files in the library structure.

Sharepoint Services

October 27, 2007 · Posted in Books · Comment 

I think that I’m not sold to anyone next week, so I will probably spend the week reading Developer’s guide to Windows Sharepoint Services 3.0
My intent is to get through it all, including some coding to get to know the product.

I think WSS is a good base to start with when the client wants a web based internal solution. I’ve read somewhere that it works better for extranets now, so it might be a good starting point for those solutions also.

I did a solution at one client that I based on the Portal Starter Kit from ASP.NET a couple of years ago. I integrated it with Reporting Services and Active Directory. It has been running without a glitch for more than a year now. The .NET 1.1 runtime doesn’t get along with ASP.NET 2.0 on their 64-bit server though, so they want to migrate it to .NET 2.0, but I think it will be better for them to remake my portal modules into web parts and run WSS instead of a hacked and migrated starter sit portal. I will also gain more from learning WSS than pushing the client forward with an, essentially, unsupported application. It should be a lot easier to find someone that can do things in WSS.

Passing on knowledge

October 27, 2007 · Posted in Creating Software · Comment 

This week I had the opportunity to introduce a recently employed colleague. He came out of school when there were almost no programming work available. Being a smart guy he has nurtured his programing skills while doing other things to pay the bills.

I really like spreading the little knowledge I still have. It feels like I have forgotten a lot more than I remember. This week I worked on a couple of Visual Basic 6 applications. At the beginning of the week I didn’t remember anything. I had some small fragments of ghosts of memories in the back of my head. Thanks to Google I could find a lot of information about the topics involved. Information that filtered through my remaining knowledge lead to an understanding of the problems at hand.

This got me thinking about what I should try to pass on to the new guy. Experience is not easy to teach and we are working in an industry that is still very immature. Technical details can be found withing seconds on the net so that’s unnecessary to teach. I ended up recommending him to read Code Complete, Second Edition and The Pragmatic Programmer: From Journeyman to Master. That should take care of most of the, kind off, tangible things. I then spent most of the time to give him the guts to dare to have fun while working, to communicate his view when in disagreement with the customer and to ask for help before it is to late.

I really hope he enjoyed it as much as I did. It’ll take more than three days to pass on more than fifteen years of work life knowledge.

Refactoring in VB6

October 22, 2007 · Posted in Creating Software · Comment 

I just got handed a click event with 19 pages of code. Yep, you read it right: nineteen pages!

What can I say? My need for a refactoring tool that works in Visual Basic 6 became immediate.
Luckily I found CodeShine through a little googling.

It doesn’t do a lot, compared to Refactor! and Resharper, but the things it does are invaluable. Its functions are: Extract method, Introduce Explaining Var, Extract function, Localize module variables and Rename.

At about SEK500:- I’d probably pay for it with my own money if I would need it more than the 21 days I can try it for free. This is a tool everyone maintaining crappy legacy VB6 code should have.

Other search terms:

  • vb6 refactoring
  • vb6 refactoring in source project

I don’t miss COM+ development

October 19, 2007 · Posted in Creating Software · Comment 

This week I had to get Excel to run as a server object to serve an ASP.NET solution that I migrated from .NET 1.1 to .NET 2.0 and moved to a new server.
Please spare me the comments on running Excel on the web server. That decision is/was not mine to make.
Anyway; I got really reminded of how much I forget when I am not working with it. I think I once new all the COM-errors I encountered this week by heart.

Some things are best forgotten.

Suffering through a Visual Studio installation in VMware

October 16, 2007 · Posted in Creating Software · Comment 

It is painfully slow to do disk intensive things in a virtual environment on my laptop. The disk, and hence the laptop, is getting very hot. I forgot to bring my Zalman laptop cooler to work today. A mistake I get punished for now. It is not just hot as h..l it had the sound characteristics of a hairdryer. With the cooler attached I have to stress the laptop a lot before it gets really hot.

I’ve got an Acer 8204 and the disk is just a 5400 rpm. I think Acer opted for space instead of speed when they specced it. At home I have my virtual disks on an external drive and there I really like working in the virtual environments. Currently I have to force my laptop into the backpack so I have to leave the drive and cooler at home when I go to new workplaces. I think I will have to beg for a new laptop backpack so I can carry all my stuff. It is the closest thin I come to an office so I think it is worth the cost.

Doh! Nasty bug in jsiPodFetch

October 15, 2007 · Posted in My things · Comment 

The last release wasn’t thoroughly tested and this morning I found a nasty bug that prevents the application to start on its first run.

That is a god way to get rid of users, isn’t it?

I added code in the last release to check for the device name of the player. That way the application can find the player even if the drive letter is changed. If that happens I replace the last drive letter with the current drive letter in the player path setting. The problem is that there is no player path on the first run so I get an ‘index out of range’ exception early in the application.

It is fixed now so I will do a new release tonight or tomorrow. It will probably not be tested enough either, but at least it should not piss of new users.

Open source translation service

October 8, 2007 · Posted in Creating Software · Comment 

Writing the previous post got me thinking:

I would like to have an open sourced free hosted translation service available.
It should offer procedures and tools for localizing .NET applications. A developer should be able to upload a bunch of strings and some context describing text so that volunteering individuals could translate them online.
It could be set up so that you got one string translated in return for translating another string. So if you know one language you could log in to the site and translate other developers stuff and get your things translated in return. This way you could pay someone to translate string to one language on your behalf and you would get more languages in return.

I’m not quite sure how the Ubuntu translations work but I guess we could learn a lot from them.

Is this already done or will it be done before I have had the time to think this through?

It is sometimes tough to turn down help

October 8, 2007 · Posted in My things · 1 Comment 

About a week ago I was offered help to translate logview4net to Russian. The offer came from a gentleman owning an open sourced project for translating .NET applications.

Of course I was thrilled by the offer. I had really thought about localizing it, but since English and Swedish is all I know I haven’t put it on top of my to do list. Most, if not all, Swedish users of logview4net are probably happy using it in English.

Anyway; after looking at the technical solution I decided I didn’t want to use it in my application. I feel a bit bad for letting him do all the work before I looked at his solution. I assumed to much. A bad habit I really need to get rid of. I have localized one large application as an after thought and one as part of the design so my decision is at least based on some experience.

I hope my turn down letter will be regarded as constructive criticism and not a flipped finger.

To any one else wanting to write tools for localizing applications; there a lots of stuff that works in the .NET framework. Try to create tools for all the things that are missing instead of starting from scratch.