Back in the days I was experimenting with lots of new technologies and applications, I was fascinated by the image optimization topic and optimization in general. I mostly had really outdated, slow computers and I hated to wait for every task. Internet was slow, disk space was very limited, optimization for space and speed made a big difference.
One of the programs I liked was Ulead PhotoImpact. It was an advanced commercial photo editor (now acquired, killed and abandoned by Corel). It was much cheaper than Adobe Photoshop and it had a very cool “Save for web” feature. At that time, I need such tool because I was creating websites for clients and with the 56k modem connections, image slicing and image optimization were really necessary.
Already having created a few applications in various languages, I started to work on an image optimizer. This was in 2003, when no such standalone tool really existed.
Creating a standalone tool would have never been a success. It would be very hard for people to find about it and use it. I didn’t had the resources to promote it.
So my first idea was to integrate it in the most popular image viewer worldwide – IrfanView, that is also free and accepts plugins.
I was a IrfanView user for many years. This was my favorite program. This program is as all programs should be – fast, efficient, as big as it should be given it’s features, flexible and extendable. And, again, I have to put this in the context: at that time on my 486 computer or the newer Pentium 1, IrfanView opened instantly and was very responsive, and other applications were much much slower. IrfanView was impressive.
I thought it would be great to add something that was missing for years into this great program – a save for web feature.
So I talked with Irfan, and we set the details. I suggested to create it in C#, but he didn’t want the big .net framework (obviously) as dependency even if on Vista and future windows systems it is installed by default, but I agree with the philosophy of not relying on dependencies.
I revisited my C++ sources from 2003 which were left it in alpha stat and found a good library called FreeImage. I made some contributions to FreeImage (of course all of them are available for free for the community).
And here is the final result – RIOT.
Irfan didn’t want to deploy 2 DLLs. Just one, he said, and make the filesize smaller. I managed to link FreeImage, pnglib, libjpeg and zlib with Borland C++Builder, even if they are not compatible with this compiler.
This resulted in a lite DLL with stripped functionality.
I decided to maintain all advanced features by creating another version of the plugin called Extended version (also free) – formerly named FULL.
For people that don’t have/use IrfanView I created also an EXE (with extended features), and that version became now the RIOT application.
Meanwhile the RIOT plugin was integrated in other programs who benefit of the save for web features like: XNView, GIMP or Paint.NET.
My name is Lucian SABO. I am a software architect from Romania, working for 18 years with the newest web technologies, mostly on the LAMP stack. I talk with enthusiasm about PHP, Design Patterns, Clean Code, XP, DevOps and Agile.
I am currently Lead Software Architect at the London-based #1 global startup community – F6S.
In the past I filled several positions including: Full Stack Developer, Project Manager, Agile Team Lead and Consultant.
Contact info: luciansabo at gmail dot com