Hardcoded Software Home

About Hardcoded Software

Hi there. My name is Virgil Dupras, I live in Qu├ębec, Canada. I'm a software developer and have been for quite a while. The vocation of this website changed a lot over the years and I think that the best "about" section would be a short history of it.

In 2001, I started this website to host my software, Mp3 Filter (initially written in Delphi and now called dupeGuru ME) which I soon started to sell as shareware. Things gradually went for the better and, in 2004, I could leave my day job to work exclusively on my own software.

It's also in 2004 that I discover Python which became (and still is) my favorite programming language. I then rewrite my applications in it. Initially, the GUI layer was kept in Delphi and worked only in Windows, but in 2006, wanting to support Mac OS X, I started doing something I called "cross-toolkit development" which allowed me to support multiple platforms without ending up with an ugly, non-native looking app that wxWidgets or Qt gave me on OS X.

Supporting Mac OS X was the beginning of real money coming in. That initially startled me because, after all, Mac has a much lower market share than Windows. I understood that Mac users had more money and, more importantly, had a different culture than Window users: they were used to pay for their software. I started really liking Mac.

All this time and until 2009, I'm doing proprietary software. I began my career thinking that free (as in speech) software developers were silly because they were giving their "property" away, all for nothing. However, over time, my understanding of intellectual property evolved and in 2009, I make a leap to try to reconcile the income source of shareware with the freedom of open source.

At the time, I feared a collapse of my revenue, which never happened, but I wasn't satisfied with my solution because it wasn't really open source and didn't make total sense, in retrospective. A year later, I leap again and start fairware, which this time is really open source.

Once again, the feared collapse of revenu never happens and, quite happily, I sail through development having finally reconciled software freedom and revenue... until 2012.

In 10 years, I had developed a few applications, but only one ever worked commercially, dupeGuru. dupeGuru has been very fun to work on, but after this much time, one grows tired of developing the same application. In fact, I grew tired of "shareware type" software development altogether. So, I took a job at a local free software consultant firm and I've been working there since then. It's a lot of fun so far.

I still maintain HS applications, but I greatly reduced their development pace. Because fairware is all about selling development time instead of granting usage permission to intellectual property, it doesn't make sense collecting money for that software, which is why I have been phasing it out.

Because my interest for developing HS apps as actively as in the past is waning, and because it saddens me to think that these projects could eventually become unmaintained, I'm currently in the process of trying to attract new developers to those projects. Am I doing it right? I don't know, but I'm very interested in hearing what you have to say about that.

Latest News

Latest 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2003 2002 2001

2014-12-28 -- Big 2014 update (link)

I've been neglecting news update on this website, which is I guess an indication of its lessened relevance in my life. But still, HS apps are still a significant part of me, so here we go for a big 2014 update :)

I'm still in the free software consultancy business and it's a lot of fun. This whole dilemma between free software and income doesn't exist in the custom development world and it's all very straightforward. Plus, challenges I face are new and exciting. It's a smooth sailing.

I'm also entering deeper in the free software ideology and, huh, praxis. From "producer" of software, I become a "user" in its fullest sense, that is, a master of its tools. Lately, I've been choosing my computer tools not solely with convenience in mind, but also my ability to tinker with them. With these criteria in mind, I now tend to choose simpler tools (except for Firefox, I now mostly use console-based applications). I'm back with Gentoo, but I now better understand how cool it is to use a meta distribution.

It takes time to get used to and I'm not there yet, but it's an interesting road. HS apps are still too time consuming for me to have significant time devoted to improving the tools I use, but I'll get there.

In 2014, I was hoping to do some community building around HS apps, notably by improving developer documentation. The quantity of contributors was a bit disappointing, but we amply made up for it in quality! Nelson Brown has been increasingly contributing to moneyGuru and he does some high quality (and scope!) stuff. I couldn't hope for a smoother ride, effort on my part has been minimal and the quality his code is mostly stellar. Recently, he tackled a huge ticket and I hope we'll be able to bring this to completion.

If moneyGuru's future looked a bit gloomy last year, it's looking much better now.

For dupeGuru, I don't know. There are many users and I'm sure some of them are developers, but there's only so much you can add to a dupe finder. I'm not planning on improving it further. My hope is that after a while, the void I leave will push some potential contributors to take initiatives. Sometimes, when you see that someone is actively in charge, it discourages you from taking initiative. Maybe I'm dupeGuru's enemy to its community building...

In other news, I'm planning on re-licensing dupeGuru and moneyGuru to GPL. My aversion to GPL is from another age, one when I didn't understand free software fully. Also, being GPL lifts restrictions on the libraries the projects can use. I do this re-licensing now, when there aren't many contributors in the git log because the more contributors there are, the harder it becomes. Libraries I authored, however, are left untouched (with libraries, license implications are broader).

2014-12-14 -- moneyGuru 2.8.1 released (link)

  • Fix amount deletion bug on drag & drop transaction re-ordering. [Linux, Windows] (#402)
  • Fix bug where clicking account-jumping arrows would lead to the wrong place. [Linux, Windows] (#404)

2014-11-09 -- moneyGuru 2.8.0 released (link)

  • Make amount fields prettier. Thanks Nelson Brown! [Windows, Linux] (#14 #15)
  • In sheets, make totals' currency explicit when in multi-currency context. (#392)
  • Add "Assign imbalance" button to the Transaction panel. (#398)
  • Fix glitch in sheets expanded nodes restoration. [Mac] (#388)
  • Fix a QIF transaction matching bug.
  • Fix account selection glitch causing the account to lose focus. [Windows, Linux]
  • Fix IndexError on file switching. [Windows, Linux] (#393)
  • Remove Cashculator integration. It was broken anyway. [Mac]
  • Greatly improve developer documentation.
  • Minimum OS X version is now Lion (10.7).
  • Minimum Windows version is now Windows 7. 64-bit required.
  • Minimum Ubuntu version is now 14.04.

This site is best viewed with Firefox while listening to The White Stripes