Christian Linhart

Contact info

Email: chris at

Some facts about myself

I was born in 1971 and live in Salzburg / Austria / Europe.

Started computer programming when I was 11 years old.

Studied computer science at the local university. I was also employed at the university as a sysadmin for various types of Unix machines.

In 1997, i.e., during my last year at the university I started an X11-recorder project as part of freelancing work for a company. I managed to keep the copyrights of the software... The X11-recorder is now called DemoRecorder and it is primarily used for mission-critical recording such as for air traffic control workstations.

I have been learning a lot about the inner working of the X11 system while working on my X11 recorder.

After university and civil service I took an employee job at Takefive ( which then became part of WindRiver ). There I wrote parsers for an IDE, especially a parser which parses ISO C++ including resolution of templates etc.

Later I worked for for several years. There I worked on server processes for their software for command and control centers. I also worked as a project leader and mentored younger colleagues.

I have continued my X11-recorder project in my spare time. Since end of last year I am full time in my own business.


I have more than 17 years experience with X11, especially working with the X-Server and the protocol. (n 1997 I started developing my screenrecorder product that's now offered as "DemoRecorder".)

The technically interesting product variant is the one which uses an X11-proxy for recording mission critical applications such as air traffic control or metro railway control. The X11-proxy is based on XServer code and heavily modified thereafter.

So I know the X11-protocol and X11-technology very well. ( including the Xserver code )

See also the entry on my work on XCB below.


XCB: work on XInput extension and parser/generator

Reviewing, fixing and finishing the xcb protocol definition for the XInput extension. Enhancements in the parser/generator as needed.

Part of this work is still in the review process.

See the mailing-list archives of August and September 2014 for an idea of that:


Reactivate the XmHtml widget and modify it to use Xft alternatively to X11 core fonts.


Reactivate the Microline widget set and modify it to use Xft alternatively to X11 core fonts.


I have maintained some Debian packages while I was studying at the university.

Experience in Mentoring

In my last employee job, I did a lot of mentoring both in informal and formal settings.

The formal setting was me being a project leader for almost year which I really enjoyed.

The informal setting was to encourage a younger colleague to do innovative things ( designing and writing a framework ) which helped to increase team productivity and avoided repeated implementation of very similar stuff. During that project I was available for discussions of technical design while letting him lead the project. In these discussion I have provided him with feedback and knowledge and encouragement.

Focus on Quality and Efficiency

I like to do things that are technically sound and good design, and I like to do my work efficiently.

I do neither like to cut corners, nor making half-baked solutions. (actually I refuse to do that when I am in the power to decide.)

I like simplicity but I am not afraid of complexity when it's really required.

I put a lot of emphasis on software quality. That's why I can deliver software for mission critical systems.

So a student has the chance to learn how to deliver good quality while working efficiently.

Communication Style

My main communication tool is email because it is asynchronous and therefore does not interrupt highly concentrated work such as software development.

Also, for many topics it is needed to think or search and read something before being able to say or write something meaningful. For these things, I also prefer email.

I do not like to use the phone.

Interactive communication is OK when time and date is scheduled before and when there are topics which are well suited for interactive communication.


I like to work together with intelligent people with a constructive attitude and with high ethical standards, and I provide the same.

The main basis for working together is trust.

I am neither a talker nor a listener for the pure sake of talking or listening. I rather like to get things done and communicate what's useful for that.

I do not like to do boring repeated tasks. And I am not good at such tasks either. Rather, I automate them if possible.

I do not like bureaucracy at all, but I can handle it when necessary.