January 2012
1 post
Deinterleave XPS files
XPS files have a nice feature called interleaving. When a printer receives an XPS file it needs to receive any resources such as fonts or images before those resources are used on a page. The way this is handled is items are split into parts, so the first part of the page is spooled then it may be followed by a font then more of the page followed by an image and so on. This is effective for...
Jan 28th
March 2011
1 post
Car servicing costs
Debra’s car failed it’s MOT last week, this wasn’t unexpected, the garage told us to expect some problems the last time it was serviced. The main points of failure were the exhaust and catalytic converter, headlights and brake pads. There were a couple of warnings as well. The main Skoda dealer we have been using since we bought the car ten years ago quoted us £2,500 for all...
Mar 17th
December 2010
1 post
Xcode: Linking to different libraries depending on...
I’ve just started a cross platform project in Xcode and one of the problems I came across is it doesn’t seem possible to link to different libraries depending on whether you are building the Debug or Release configuration. I did find an old message on the Apple developer forums that indicates you can do this with dependent projects, the trouble with this is when you clean your target...
Dec 24th
October 2010
1 post
Implementing the Light Box effect
I’m sure you have seen the effect by now, clicking on an image thumbnail dims the page you are looking at and opens the full size version of the image in the middle of the browser window. The original implementation of this was Lightbox, now we seem to be overrun with clones doing very similar things. The trouble with including one of these clones in your site is you don’t really...
Oct 26th
2 notes
September 2010
2 posts
Two weeks in Italy
We usually spend our summer holidays camping, either in the UK or northern Europe. This is a great way to keep the costs down and the kids have always enjoyed the open space you get at a good camp site. Unfortunately our folding camper had been showing its age so we sold earlier in the year to a couple who planned to take it to Glastonbury. I’ve always loved Italy, the food, the cars and...
Sep 27th
New front door
I’ve just about finished fitting new composite doors to the front and rear of my house. The old doors have never really fitted well, in the winter the wind blew straight through the house. We bought the doors online and I fitted them myself, this is the most difficult diy job I would tackle. I made a few mistakes on the first door but the second went in easily. We originally...
Sep 27th
August 2010
1 post
Which camera to take
We just got back from our summer holidays in northern Italy, as we were travelling around quite a bit I wanted to travel as light as possible so didn’t take my SLR. This time we made do with a Canon G9 and the camera in my iPhone 3GS. I have been pleasantly surprised by the camera in the phone, obviously it isn’t near the G9 but it can take remarkably good photographs. It took my a...
Aug 17th
June 2010
1 post
Allotment strawberries
Our allotment strawberries have been really productive this year, we have been pick ten or twelve pounds every two or three days:
Jun 26th
February 2009
3 posts
Creating a null printer in Windows
I get quite a lot of requests for support on how to set-up Print Distributor to create a null printer that discards any documents. It seems there are applications which produce regular unwanted reports that can’t be turned off. Actually you don’t need Print Distributor to do this, everything is already available in Windows. Start by opening the Printers folder and launch the add...
Feb 24th
4 notes
The trouble with C++
I have been using C++ for quite a few years now, both Mail Print and Print Distributor are written in it and I consider myself reasonable competent with it. However I loathe it deeply. It really is a complete mess, there are so many gotcha’s and even the simplest of tasks can run to dozens of lines of code. Take a look at stackoverflow.com/questions/536148/c-string-parsing-python-style for...
Feb 12th
Product Road Maps
Why I don’t publish product road maps I have rough maps of where my development effort is going to go on both Mail Print and Print Distributor so why don’t I make them public? I certainly get enough requests for new features, many of the requests are followed by demands for when they will be implemented. The problem is development is pretty unpredictable, especially if you are...
Feb 11th
January 2009
2 posts
Undocumented Printing
I just came across Undocumented Printing by Christoph Lindemann, it looks like a really good resource if you are doing any development around the print spooler in Windows.
Jan 6th
Capturing printer data
Print Distributor is pretty flexible at capturing print streams, as well as handling Windows applications it’s easy to setup printing from AS400, UNIX and mainframes. I do occasionally get requests to capture data from a serial or parallel port, usually from some closed or embedded application. Often these closed systems have no mechanism to export data so people want to capture reports as...
Jan 2nd
March 2008
1 post
VMWare Fusion - Virtual Processors
When you configure a virtual machine in VMWare Fusion by default it runs the machine with one virtual processor. I was curious to see if running with two processors would make a difference so I ran a quick test using my software build time as a benchmark. Runing with a single processor the build time was 140 seconds, running with two it dropped to 118 seconds, a decrease of about 15%.
Mar 19th
February 2008
2 posts
Twitter Account
Just set up a Twitter account, I’m not sure what I’ll put on it at this stage.
Feb 21st
Software Trial Protection
Over the last six months I have been writing Mail Print version 2, this is a big upgrade with many changes and is now nearly complete. The last signifcant piece of work is to implement the trial protection mechanism. This is a feature in the software which lets the customer use it on a trial basis for a short period (usually 30 days) in order for them to check it satisfies their requirements...
Feb 8th
May 2007
2 posts
Shareware Radio Interview
Mike Dulin interviewed me at the European Shareware Conference, you can listen to the interview here
May 24th
64-Bit Software
64-Bit versions of Windows have been available for some time now but it’s only in the last week that I have started getting requests for a 64-bit version of Print Distributor. Microsoft announced this week the next version of Windows on the desktop will be 64-bit only. It looks like a fairly small change to the code and a recompile of the port monitor is all I need although I’m going...
May 18th
March 2006
1 post
HelpSpot Help Desk Software
For the last couple of years I have been using FogBugz to manage all my support emails and bug tracking. FogBugz is primarily a bug tracking application but it has a nice interface for managing support email which fits in quite well with my work patterns. There is however one large problem for me in using FogBugz and that is it isn’t easy to install on most web hosts. The solution to this...
Mar 15th
February 2006
1 post
Dell Inspiron 630m
I just got a new laptop, a Dell Inspiron 630m. It’s a lovely machine, nice crisp display and really long battery life. But why do Dell have to install so much stuff on it, so far I have removed Adobe Acrobat Update, Adobe Reader, AOL Coach, AOL Connectivity Services, AOL Spyware Protection, AOL UK, AOL Screensaver, ARTEuro, Corel Paint Shop Pro, Corel Photo Album, Learn2 Player, various...
Feb 24th
January 2006
2 posts
Components
For some time now component technology has been touted as the saviour of the software development industry. The theory being as a developer I can purchase a set of components off the shelf and glue them together with my own code to create a completed application in double quick time. As is often the case the reality is often quite different from the theory, over the last week I have been working...
Jan 30th
Tracking orders from download sites
Like most software developers most of the traffic I get from download sites comes from CNet and Tucows. The other three hundred or so sites generate a fraction of the downloads that these two create. There is a cost to listing on these sites, a small fee to get listed quickly or at all but more importantly the time managing updates or fixes for stolen key codes. My problem is I don’t know...
Jan 10th
August 2005
1 post
Test Driven Development
I have been using test driven development for my C++ projects for some time now, a development process which has improved the quality of my code considerably. The process is relatively straight forward, the only hurdle to get over is understanding that the tests should drive the structure of your code, not the other way round. A simple example of the steps you go through follow, here I will...
Aug 4th
July 2005
2 posts
Which driver type
One of the first decisions I had to make on this project is which driver type to write, a question which isn’t quite as simple as it might seem. There is a long history behind the Microsoft DDK and driver styles which dates back to early versions of Windows. Each new version of Windows brings new questions about whether the driver is 16, 32 or even 64 bit, is the driver in the kernel or out...
Jul 22nd
Writing a Windows printer driver
I have just started a new programming project which involves writing a Windows printer driver for creating PDF files. This is a new type of project for me so my first thought was to search Google for information and resources on using the Windows DDK. Usually you can find lots of resources about just about any programming subject through Google but I found very little about the DDK and even less...
Jul 1st
December 2004
1 post
First post
Welcome to my blog, I post here about programming and printer software. I’m a software developer working for myself writing printing tools. I code mostly in C++ and Python. I work from a small rented office at Grove Technology Park in Wantage.
Dec 31st
1 note