Curriculum vitae
From APIDesign
(→Historical Summary) |
(→Personal Profile) |
||
Line 42: | Line 42: | ||
* [[JDeveloper]] - rebasing years of development on top of [[NetBeans Platform]] to gain [[startup]] speed and share functionality | * [[JDeveloper]] - rebasing years of development on top of [[NetBeans Platform]] to gain [[startup]] speed and share functionality | ||
- | Based on success of previous projects I decided to bring [[Java]] back to browser via my [[Bck2Brwsr]] | + | Based on success of previous projects I decided to bring [[Java]] back to browser via my [[Bck2Brwsr]] (e.g. [[Java]] virtual machine in [[JavaScript]]) projecinside t. Things seem to work quite well, but the project has not entered production stage yet. |
=== Theoretical Work === | === Theoretical Work === |
Revision as of 16:15, 22 January 2015
Town: Praha, Czech Republic
Phone: +420 602 684 426
email: jtulach (at) netbeans (domain) org
Contents |
Historical Summary
Time | Mission |
---|---|
2010-2014 | NetBeans Platform architect at Oracle. Alignment with JDeveloper. Synergy between Java and JavaScript - use HTML for user interface of NetBeans. |
1999-2010 | NetBeans Platform architect at Sun Microsystems. Primary focus APIs, APIReviews, later Performance. |
1997-1999 | Founder and initial architect of NetBeans |
1995-1997 | Initial member of student team which started Xelfi which later turned into NetBeans |
1992-1998 | Master degree in computer science at MFF UK. Specialization: compilers and data structures. |
Personal Profile
NetBeans founder and initial architect who remained (after being acquired by Sun) with the project for next fifteen years. Passionate about leading teams into projects nobody thinks can succeed, overcoming all obstacles and bringing them into production:
- NetBeans IDE - first IDE for Java written in Java
- NetBeans Platform - first Swing based modular application framework
- NetBeans performance - speeding NetBeans 6.1 startup by 60%, eliminating memory leaks, improving scalability
- Netbinox - changing NetBeans architecture to support OSGi by creating the fastest OSGi framework on the planet
- JDeveloper - rebasing years of development on top of NetBeans Platform to gain startup speed and share functionality
Based on success of previous projects I decided to bring Java back to browser via my Bck2Brwsr (e.g. Java virtual machine in JavaScript) projecinside t. Things seem to work quite well, but the project has not entered production stage yet.
Theoretical Work
Media:Typing_in_terms_of_graphs.pdf - master thesis at MatFyz describing type system similar to what later became Generics in Java.
Proofs of NP-Completeness of various topics related to modularity with practical implications for any module system.
Publications & Conferences
Rich Client Programming: Plugging into the NetBean Platform - contributed few philosophical chapters to book about NetBeans Platform.
Practical API Design, Apress 2008 - the first book about API Design describing all details related to API design published way sooner than the term API was kidnapped by REST and JSON guys.
20 API Paradoxes, Walrus 2012 - shorter, more strictly organized continuation/summary of Practical API Design book.
Regular speaker at JavaOne and other conferences (GeeCON, GeekOut, JDD) and universities.
Technical Skills
- Able to use debugger to analyze anything
- Typing without looking at keyboard
- Knowledge of classical languages (especially Java, but also C & etc.), functional languages (like Haskell) and logical languages (e.g. Prolog).
- Driving license - personal cars
Organizational Skills
- Designing process for API Reviews which allowed NetBeans to design APIs in a committee and still keep consistency.
- Designing, advocating and implementing parallel integration which greatly improved productivity of NetBeans developers
- Enabling, promoting and advocating test driven development to increase quality of NetBeans code base
Languages
- Czech - native
- English - fluent
- Russian - can read
- German - survival level
Spare Time Activities
Skiing and showboarding and other sports. Bck2Brwsr VM. Various open source projects (mostly hosted on GitHub, but also for example contributed to Linux kernel).