The story of Ghostscript.NET, an open-source tool that got acquired after 10 years of solo development
Ghostcript.NET Github repository has recently been acquired by Artifex Software Inc., the creators of Ghostscript, extending Ghostscript support to the .NET and C# developer communities. Ghostscript.NET is a popular and loved C# wrapper for Ghostscript with over 1.6 million downloads.
We spoke to its creator, a UK-based developer Josip Habjan, who will join Artifex as a freelance collaborator to ensure continuity in the project’s maintenance and development.
Inspired by Ghostscript
Josip created Ghostscript.NET in 2013. He had some free time, was inspired by the Ghostscript library and its immense capabilities, and wanted to build an IDE to make working and utilizing it easier for developers. The rest is, he says, a tale of developer’s determination, creativity, and love for technology.
I wanted to build an IDE that would provide a user-friendly interface for working with Ghostscript.
As I delved deeper into the project, I realized that two distinct components needed attention: the visual part, which would become the IDE, and the integration with the native Ghostscript library. So I decided to separate the project into two parts.
Habjan poured all his knowledge and creativity into designing and building the IDE and was closer to creating what he had envisioned with every line of code he wrote. The second part, though, proved to be a little more complex.
To bridge the gap between the C# programming language and the native Ghostscript library, I began crafting a wrapper. This wrapper, which I named Ghostscript.NET, would serve as the intermediary, allowing seamless communication between the two worlds. It was an ambitious undertaking, but I was determined to see it through.
It took more time and work than he expected – he started in early January and released the first public version in September of that year. Josip admits he had many challenges along the way, but every hurdle just made his enthusiasm grow stronger.
Ghostscript.NET became a robust and reliable bridge, empowering developers to harness the full potential of the Ghostscript library within their C# projects.
It was a testament to my passion for programming and my desire to contribute something valuable to the open-source community.
Developers experience + community = win
It soon gained a significant user base thanks to its excellent developer experience – user-friendly design, clear documentation, simplicity, and Habjan’s active engagement in developer communities.
But being the creator of a popular open-source project is equally a curse and a blessing. The curse being – maintaining the project in free time and for free.
Time was the main challenge, and I had to do a lot of planning and prioritization to make time to dedicate to this project. It required a lot of juggling.
The other significant challenge was keeping up with the releases and updates of the native Ghostscript library.
And, of course, user-reported bugs required thorough analysis and debugging to provide effective resolutions and maintain the stability of Ghostscript. NET.
Still, assisting users in resolving concerns, ensuring a smooth user experience, and improving the library’s performance was rewarding for me.
More resources for future development
The Artifex acquisition will help address all those challenges, as Habjan will no longer be alone and maintaining the repository in his free time. He will provide technical support during the handover and remain an active member and contributor to the Ghostscript.NET community.
That active and numerous community of users and maintainers was one of the main reasons behind Artifex’s acquisition. Artifex had created their C# wrapper, but it didn’t get as much traction as Habjan’s.
By working with Artifex, we can further enhance the library’s functionality, address existing issues, and explore new possibilities. I firmly believe in the importance of supporting and nurturing the growth of this valuable resource. I am thrilled to contribute my insights and assist in driving the project’s future direction.
When he started ten years ago, he couldn’t dream about this happening, says Habjan:
I just wanted to contribute to the open-source community and leave some trace/legacy.