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-10-26 -- dupeGuru Music Edition 6.8.1 released (link)

  • Fixed AttributeError: 'ComboboxModel' object has no attribute 'reset'. [Linux, Windows] (#254)
  • Fixed PermissionError on saving results. (#266)
  • Fixed a build problem introduced by Sphinx 1.2.3.
  • Updated German localisation, by Frank Weber.

2014-10-17 -- dupeGuru 3.9.1 released (link)

  • Fixed AttributeError: 'ComboboxModel' object has no attribute 'reset'. [Linux, Windows] (#254)
  • Fixed PermissionError on saving results. (#266)
  • Fixed a build problem introduced by Sphinx 1.2.3.
  • Updated German localisation, by Frank Weber.

2014-10-12 -- dupeGuru Picture Edition 2.10.1 released (link)

  • Catch MemoryError better in block matching algo. (#264)
  • Fix crash when reading some EXIF tags. [Mac] (#263, #265)
  • Fixed AttributeError: 'ComboboxModel' object has no attribute 'reset'. [Linux, Windows] (#254)
  • Fixed a build problem introduced by Sphinx 1.2.3.
  • Updated German localisation, by Frank Weber.

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