Software Engineer
I have been a software engineer and hacker for as long as I have owned a computer, dating back to the start of the millennium. I began by exploring Windows and Linux in parallel, getting system software, web services, and games to run on both platforms. Then, I started writing HTML, SGML, XHTML, PHP, JavaScript, bash, batch, perl and using other web- and system-related technologies.
As I entered higher education, I explored the core languages of the curriculum: Java, C/C++, Prolog, MATLAB, Python, and more, mainly within the context of information technology, control, and robotics.
During my Master’s studies, I fully transitioned to C++, solidifying what has now been a 20+ year relationship with the language. I have been deeply engaged with it, reading language papers and keeping up with various C++ standards (e.g.: 98, 11, 20, 23, etc.). I use C++ daily and I am interested in the aspects of its evolving standards.
As a software engineer, although I am most proficient in C++, I always choose the language best suited to the job and situational context. I have worked extensively in cross-platform environments, creating robust software tools, libraries, and frameworks for both research and educational purposes. My experience spans Linux, Windows, embedded systems, and other platforms, making me adaptable to different operating systems and development environments. I have also developed low-level software libraries and frameworks tailored to specific hardware, ensuring functionality across diverse setups. For instance, higher education and research, with their diverse topics and needs, have given me the opportunity to work with languages such as R, TeX/LaTeX, and many more.
The GMlib Project
GMlib is an in-house geometric modeling library developed at UiT Narvik (formerly Narvik University College). It was started in 1994 as an educational tool for teaching coding in geometric modeling. Over the years, it has grown into a library used for both R&D, education, and rapid prototyping in geometric modeling of various geometric constructions, primarily Expo-Rational B-splines (or Blending Splines).
My involvement in the project began in 2008 with a summer job, during which I, along with two other students, organized the collection of classes and functions, at that time named GM_lib, into what would become the official GMlib library. I transitioned into the developer role during the latter part of my MSc studies, and after being hired at Narvik University College in January 2010, I took on the permanent role of project maintainer, and later lead developer. In 2018, efforts commenced on a successor library, GMlib 2, which features a modern, type-safe codebase that leverages strong types and type deduction to derive mathematical concepts at compile time, enabling us to solve specific problems.
Other projects
Projects I have worked on, both professionally and personally, have varied widely. Over on the project page, you can take a look at some of them. You can also visit the museum for a virtual tour of geometry.