Kai-Uwe Behrmann


INFO SKILLS : 6 PROJECTS : 13 WORK : 2 EDUCATION : 2 LANGUAGES : 2 AFFILIATION : 5 WRITING : 2 SPEAKING : 14 INTERESTS : 1

info

Senior Developer and domain specific Consultant with 13+ years experience, who is passionate about tooling great working software.

Skills

  • Software Developer
    C C++ QML Qt KDE OS X Linux Windows Android
  • Still and Movie Image Processing
    ICC Color-Management OpenGL GPU PDF TIFF FFMpeg Cairo
  • C++
    GCC clang VC++ OOP Templates Encapsulation Inheritance Scope-Management Overloading Polymorphism Exceptions Containers STL Introspection
  • Project
    Consultant Concept Mentor Developer Implementation Training Agile-Development Git Mercury CVS Open-Build-Server SuseStudio
  • Software Development Methods
    Code-Generation Audit-Lcov Travis Continuous-Integration Static-Code-Analysis-Coverity Valgrind XCode Open-Source Proprietary
  • Web-Developer
    JS CSS HTML5 Mongo DB REST

projects

Consultant | Mentor, Selection of Print Color Correction with PDF

2009-03 — 2011-12 | vendor-neutral OpenPrinting cross-platform PDF OpenICC ICC color-management Open-Source collaborative-code-sprint

Make color managed printing customisable across systems for clients

Consultant, Linux Architecture for Print Color Correction with PDF

2009-03 — 2011-12 | Linux OpenICC ICC color-management CUPS Ghostscript PDF littleCMS

Accept user submitted print profiles in a platform independent way

Consultant | Representation | Mentor | Organisation | Programming, ICC Distribution

2007-01 — 2013-01 | OpenICC ICC color-management meta-data EDID specification online CSS Mongo DB CSS Open-Source collaborative-code-sprint

Automatic device profile assignment local and online

  • Discussion of concept with ICC, resulting in spec modifications
  • Specification for monitor meta data online and in use
  • Implementation for embedding of monitor meta data in monitor profiles
  • Online DB based on meta data is up and serves online by ICC Taxi DB
  • Local device profile search implementation in KolorManager|Oyranos
  • Search online profiles for local devices with KolorManager

Training, Color Management Presentation

2013-12 — 2013-12 | ICC color-management calibration training

Transfer in depth Knowledge about Color Management

  • Physological and Sience Basics
  • Color Devices
  • Profiling and Maintenance
  • Programing Color Management

Consultant | Concept | Maintainer | Developer | Mentor | collaborative Code Sprint Organisator | Programmer | Quality Engineer, Oyranos - Color Management System

2004-11 — Present | OpenICC ICC color-management C OOP introspection DAG graph-visualisation plugin-system code-generation agile-development git valgrind travis continuous-integration audit-lcov Cairo X11 EDID Linux Desktop daemon OS X Windows Qt FLTK C++ Cairo XCM SANE cameraRAW JPEG PNG Open-Source

Make it easy for applications to show colors the same in documents and on devices

  • Type: Open Source project with payed targets
  • Languages: C, C++, shell, Django, XML, JSON, ICC, cmake
  • Tools: gcc|clang|VC++, Grantlee, FLTK-Toolkit, Cairo drawing library
  • Code Techniques: agile development, git current version system, valgrind memory debugging, object oriented C, object introspection, processing graph visualisation, code-generation from Django templates, extensible plug-in system
  • Oyranos Live CD with SuseStudio
  • Hosted: https://github.com/oyranos-cms/oyranos/#oyranos-readme

Consultant | Concept | Maintainer | Mentor | collaborative Code Sprint Organisator | Programmer, KolorManager

2008-03 — Present | KDE Qt KWin OpenGL GPU C++ OpenICC ICC color-management Oyranos D-Bus agile-development review valgrind git collaborative-code-sprint Open-Source

Integrate Oyranos color management system into KDE desktop

  • collaborative project with KDE and OpenICC communities
  • Oyranos GUI in systemsettings
  • Instant ICC based color correction of KDE desktop
  • Hosted: initially @ Google Summer of Code 2008-2010, later @ www.kde.org

Consultant | Concept | Mentor | Coordinator | Maintainer | Programmer, CompICC

2009-03 — Present | OpenICC ICC color-management Oyranos XCM Compiz C OpenGL GLSL agile-development git valgrind Open-Source

Instant ICC based color correction of desktop monitors, communicate with clients over XCM

  • Code Techniques: agile development, git current version system, valgrind memory debugging, observe color server events (XCM)
  • collaborative project with Compiz and OpenICC communities
  • Hosted: initially @ Google Summer of Code 2009, later @ sf.net, now @ github

Developer, iQ-Camera-Check

2009-06 — 2013-02 | agile-development C++ C VC++ Windows FLTK Bazaar HDMI BlackMagic SDK FFmpeg OpenGL valgrind proprietary

Measure camera quality

  • Code Techniques: light formal-and agile-development within a team of engineers, developers, a designer and a mechanist
  • HDMI video processing

Main Author | Developer, ICC Examin

2004-01 — Present | agile-development C++ C VC++ Linux OS X Windows FLTK git OpenGL BSP valgrind XCM Open-Source

Visualise ICC data format contents

  • XCM client for CPU and GPU color corrections
  • Correct hidden transparency in OpenGL with BSP tree
  • Shows the internals of ICC profiles, like text, curves, 3D tables, color coordinates
  • Covers most of the ICC standard v2 and v4 tags
  • Visualise color space hull 3D
  • Produces a profile quality report; as table or 3D view
  • Accepts measurement data (CGATS); visible as plain text or in 3D
  • Creates and accepts argylls gamut visualisations; vrml
  • Understands video card gamma tables (Xorg|XFree86|osX)
  • Accepts ICC named color swatches (ncl2); shows as table or 3D

Main Author | Developer, OpenICC Taxi DB QML

2015-10 — 2016-06 | agile-development QML Qt C++ Linux OS X Android git Open-Source

Browser of ICC device profile data base

  • Client to JSON based API of online DB
  • Dynamic UI in QML
  • Modular QML components
  • C++ with QML integration
  • 2D graphics

Developer | Interator | Coordinator | Bug Owner | Tester | Release Manager, CinePaint

2004-01 — 2008-01 | OpenICC ICC color-management XCM Oyranos C Scheme C++ Linux OS X GTK CVS git valgrind XCode plugin-system TIFF PNG JPEG OpenEXR HDR DPX Effects Open-Source

Add features for photo and 360° panorama editing, exploring color management capabilities for Linux

  • ICC based color management for most file input, display and print output
  • ICC profile handling for JPEG, PNG, TIFF, OpenEXR, CameraRAW, PPM/PNM
  • Porting from Gtk1 to Gtk2 and to OS X
  • Add i18n support
  • Extend Tiff capabilities for HDR, layered images and printing
  • Add experimental Cmyk support
  • Add ICC Examin plugin
  • 16-bit CameraRAW to Print workflow
  • Add OpenRAW support for fast CamerRAW decoding
  • Add Gutenprint plugin
  • Tutorial for color managed Photo workflow
  • Early color binding XCM client, integrates with CompICC and KolorServer
  • Graphics tablet support
  • 30-bit display support
  • Hosted: @ gitlab

Developer, Hugin

2002-01 — 2004-01 | Panotools C C++ Linux Open-Source

Panorama GUI

Developer, Bugfixing across the Linux graphics stack

2002-01 — Present | FireFox Cairo lilbtiff libpng Little CMS SampleICC C C++ Linux Open-Source

Spot, locate and integrate a Fix

  • Adhere to desired and defined behaviour
  • Locate difficult to find threading bugs
  • Improve build systems
  • Communicate and discuss with the community
  • Provide programs to reproduce and test cases

work

Web-Developer | Panorama Photographer | Developer, Freelance

2002-04 — 2004-04

Consultant | Training | Concept | Maintainance | Developer | Mentoring | Programing | Quality Engineer | Support, Freelance

2003-11 — Present


education

Diplom, TU Dresden

1991-08 — 1997-05 | Architecture | Sculpture Engineering Design Graphics

Self Educated

2002-01 — Present | Information Technology | C++ Project-Maintenance Community-Interaction

Languages

German

(Native speaker)

English

(Moderate)

affiliation

Co-founder, OpenICC

2003-12 — Present

Developer Community

  • freedesktop.org collaboration place
  • Specification drafting and publishing
  • Brainstorming
  • Project incubator
  • Google Summer of Code organiser + mentor 2007-2012
  • Hackfest collaborative code sprint 2012 in Brno/CZ http://www.oyranos.org/tag/hackfest/
  • Desktop Color Management Integration for X11|Wayland|Compiz|KWin, Cairo, Qt|FLTK, PDF|CUPS, SANE, CameraRAW
  • freedesktop.org specifications
  • Meetings @ LGM 2008, 2011, 2012
  • DevRoom Track @ FOSDEM 2012 http://www.openicc.info/index.php?title=Events/Fosdem/2012

Developer, Create

2004-01 — Present

Developer and Creative Community

  • Talks
  • Presentations
  • OpenICC Meetings @ LGM 2008, 2011, 2012
  • Desktop Color Management Integration

Developer, Xorg

2005-01 — Present

Windowing System

  • Desktop Color Management Integration
  • X Color Management specification (XCM)
  • Liaison with OpenICC community

Developer, KDE

2007-01 — Present

Open Source Desktop Environment

  • Desktop Color Management Integration
  • KolorManager
  • KolorServer

Individual Member, ICC

2008-01 — Present

International Color Consortium

  • Work on specifications
  • Liaison with OpenICC community
  • Open Source | Linux integration

writing

CinePaint – 16-bit Bildbearbeitung. Von der Kamera zum Druck, self

2006

Application Color Management tutorial

Oyranos Blog, self

2003

Color Management news and articles @ http://www.oyranos.org


speaking

PrePress/Farbmanagement/HDR, Chemnitzer Linux Tage

2004

Farbmanagement in CinePaint, LinuxTag

2005

CinePaint - 16-bit Bildbearbeitung. Von der Kamera zum Druck, Chemnitzer Linux Tage

2007

Introduction to the Oyranos colour management system, LGM

2008

Colour management bricks on Linux, ICC DevCon

2008

Device Colour Management, LGM

2010

Connecting Device Calibration to ICC Profiles, LGM

2011

Color Management in Compositors, FOSDEM

2012

Cross Platform Colour Management with Oyranos, FOSDEM

2012

Neue Farbtrends, Chemnitzer Linux Tage

2012

Colour Management a la Greek, LGM

2012

Evolving Concepts for Colour Management, LGM

2012

Bring Color To The Game, LinuxTag

2012

Future of Colour Management on the Linux Desktop, Developer Conference

2013

interests

Photography

Current