Skip to main content

Posts

Showing posts from August, 2006

Competitive Programming

I am a competitive guy. People who know me well, know that I always go to the bottom of things; have a passing interest in anything will never happen to me. It's either all or nothing. For years, I have been looking for ways to funnel my energies into some kind of online community. Requirements are that it should be engaging, competitive and educational. I have been taking quite a few stabs at different online gaming communities but they haven't turned out to be what I am looking for. I am happy to say that finally, I think I have found the niche I have been hunting. TopCoder.com . TopCoder is an online community for people who love programming. Or rather, it was; today it has grown to cater for architects, testers and graphics artists as well. The basic concept is that you participate in contests where you need to solve three algorithm problems in a language of you

FeedJournal Database Decisions

Chris Pirillo has something to say about the Made In Express Contest . Considering he is one of the judges in the contest, I am definitely listening. This is his verdict about my own entry, FeedJournal: Still has a long way to go, but I'd say that sample output is quite nifty. The only thing that keeps me from installing and recommending the app wholeheartedly is the need to install SQL Server 2005 Express Edition first - which I'm not going to do on my desktop. Suggestion: push forward with this one, but rely on something else for feed information storage (sorry, but installing SQL is overkill for users like myself). Considering his overall harsh judgment of the projects I consider this pretty favorable, and indeed he goes on to mention FeedJourn

FeedJournal v1.0 and Contest Voting

In Made In Express Contest it is now up to the public to vote for the project they like best. FeedJournal is one out of the 11 projects you can vote for. Please make a visit and choose your favorite! This also implies that you can finally download FeedJournal v1.0 from the the Made In Express link above. Despite the name it is a beta test version, while I am continuing to work on v2.0. Visit feedjournal.com for more information.

I'm Excited, and Writely So

When writing drafts for this blog, I have been struggling with how to type up the articles. Sometimes I am working on different computers and I need an easy way of moving the documents between locations. So far I have been using a USB drive where I store the documents. This has the drawback of needing the same application installed on all computers. Another option is setting up an automatic synchronization between shared computers but it doesn't work for me because some of them are blocked behind a firewall. Enter the new paradigm of online word processors! The idea is that your documents are edited using your web browser and the files are hosted on the service's website. You can choose to share or protect each document, and despite being a new phenomenon there are already a few interesting players on the market. All of these online services automatically integrate many a

Contest Deadline for FeedJournal

The time has come to let go of FeedJournal v1.0. I have been working on it for months and thinking about it for even longer. Without the definite contest deadline hanging over me, I think it would have been difficult for me to resist adding more features before publicizing it. But, in the end it's for the better. FeedJournal needs to get out there and get some real-world testing before it can mature into higher versions with a larger feature set. I definitely don't see this contest submission as the end of the line for FeedJournal, more like a baby's first steps. I choose to look at this version as a public beta test. Although v1.0 has been thoroughly tested I have decided to let it expire on October 1st, forcing users to upgrade to a higher version. Much like a beta or release candidate would work. The time has also come for me to sum up the experien

HOWTO: Auto-Increment the Version in Visual C# Express

One of the features that I miss the most when I am working in Visual C# 2005 Express Edition is the possibility to auto-increment the version number for each build. Below, I will explain how to get around the limitation and add this functionality to the stripped down Express Edition of Microsoft's Visual Studio development environment. The solution comes from CodeProject user PIEBALDconsult' s Versioner project. His C# class increases the revision number of the AssemblyVersion , given the path to the file where it resides (typically AssemblyInfo.cs ). Since PIEBALDconsult only provides the source code I took the liberty of compiling it into a .NET 2.0 executable, which can be downloaded from here (ZIP) . The steps necessary for enabling auto-increment are listed below: Download and extract Versioner.exe from the ZIP archive to the project directory where yo

SQL Server Everywhere Edition Requirements

The Community Technology Preview (CTP) of Microsoft SQL Server 2005 Everywhere Edition requires Windows XP SP2 or Windows Vista. If Windows 2000 is unsupported I will have to look at other solutions instead for the future. I tried to convert my database from Express's MDF format into Everywhere's SDF format, but ran into problems. With the short time remaining to the version 1.0 deadline (contest submission) the database optimization is something that will have to wait. Now is not the time to introduce more risk in the project. I also decided to go with the ClickOnce system of deploying the application, which is helping out. It comes especially in handy with the installation of the runtime environments for .NET 2.0 and SQL Server Express. ClickOnce automatically figures out if the user needs to get these installed without me having to write a single line of code/script, wh

Help Format Confusion

As I previously blogged about I was using Shalom Help Maker to generate my help file. After spending some time with this and finally completing the user documentation, I was ready to insert it into FeedJournal. The it suddenly hit me: this is not the right help format! The Danish Shalom Help Maker is generating help files in the old Windows .HLP format, which has been obsolete for some years now. What I need is CHM format, which I had up till now deluded myself into believing I was working with. Ouch! OK, there must be some way of converting my HLP file into CHM, right? Nope, at least nothing free, and all of the programs I tried generated an error during the conversion. Finally, after much hunting I found a link to a freeware application on the excellent forums at Joel on Software . The program was called HelpMaker , and sure enough its conversion feature also choked on

Finishing Touches

Two days left for FeedJournal 's contest submission and I am trying to prioritize which items have higher priority than others to complete. Right now I am working on the text of the CHM help file and I hope to finish it soon. After that (if there will be enough time) I want to see if I can easily switch to SQL Server Everywhere Edition , which should boost performance on low-end PCs quite a bit. Before submission I also want to make sure that the install scripts are completed. I haven't decided between ClickOnce and InnoSetup yet. I have previous positive experiences with InnoSetup, but Microsoft's ClickOnce also seems nice in that it can support transparent upgrades and it integrates the .NET 2.0 framework installation automatically. I will also need to write an build instructions document, which should be straightforward in my case.

The Demise of nDoc

Some of my fellow finalists have blogged about their intended usage of nDoc as a documentation tool for their source code. nDoc is hugely popular for automatic documentation of .NET code, using Visual Studio's support for XML comments in the source code. A week ago, nDoc went into a coma, when its single maintainer, Kevin Downs, announced his resignation from the open-source project. The problem, which in many cases are symptomatic of open-source projects, is that a majority of these projects are driven by one or a few enthusiast individuals, and their lifespan is directly related to how long it lasts until these individuals lose interest. It is rare to see a dying project being rescued by another developer, who keeps it running. Problems selling the software is the usual reason for the death of a commercial application. This sort of death is less painful for the software market, si

Promoting FeedJournal

Small software businesses, or ยต-ISVs, are cropping up everywhere nowadays. A big challenge for them is to get a foothold in the industry and claim a piece of the market. Then they need to keep that attention. In Bob Walsh's excellent " Micro-ISV: From Vision to Reality ", I learned that a blog can be an excellent vehicle for spreading the word about your product. It can also help to make sure you are keeping your customer's attention focused, by having them subscribe to your blog's RSS feed. The Blogosphere is a fast-moving media where the attention span sometimes lasts shorter than it takes to read a headline. The cross-pollinati on in the blogosphere is an interesting phenomenon which I hope to be able to leverage some more in the future. For now, I decided to add a new section to FeedJournal's web site . The new section is called " In