- I was born in Łódź, Poland.
- I have graduated in Computer Science from the University of Wrocław (thesis), and the Saarland University (thesis).
- I speak Polish, English, and German.
- I play football, and guitar.
- I enjoy traveling. I have already been to 22 countries in Europe, 3 in the Middle East and 4 American States (+ DC).
- I used to be a member of Rotaract Wrocław.
- Goldman Sachs
(Warsaw, Poland) [since 04.2013]
(Warsaw, Poland) [11.2007 - 03.2013]
(Cracow, Poland; Dresden, Germany) [11.2005 - 09.2007]
Organization of the team for the software adjustment to the German market. As a result of cooperation of my team with the scientists from the University of Technology in Dresden we have prepared the presentation:
- Tannhauser Gate
(Wrocław, Poland) [12.2001 - 01.2002]
Networking for massive multiplayer game Mimesis Online, administering game servers, porting C code from Windows to Linux.
- Directional Type Checker
I have implemented a type checker for prolog. Actually, I have implemented more than one as we were curious how far can one go with today's computers. Not far.
- International Max Planck
Research School for Computer Science
As a member of Software Evolution group I was trying to predict the risk of future changes in large, mature software projects. We have prepared the following 2 publications:
- When Do
Changes Induce Fixes?
In Proc. International Workshop on Mining Software Repositories (MSR 2005).
HATARI: Raising Risk Awareness
In Proc. ACM SIGSOFT Symposium on the Foundations of Software Engineering (ESEC/FSE 2005).
- When Do Changes Induce Fixes?
Nemerle is a hybrid programming language, which combines functional, objective, and imperative methodologies. The project has received funding from Microsoft Research.
My contributions include patches to standard library, emacs syntax mode, design of the build system, and debian packages.
Open Source Community
Open-Tran.eu offered an easy access to the translations of open source projects. It acted as a kind of a central Memory Translation database where you could look up a translation suggestion or compare the translations across some of the largest, highest-quality open-source projects: OpenOffice.org, Mozilla (of Firefox fame), KDE and GNOME among others.
I created the service and was maintaining it between February 2007 and January 2014.
I have successfully completed all the steps in New Maintainer process for Debian project, but have been rejected because of lack of the time I could devote to the project.
Elmo is a feature-rich console mail client for UN*X power users. It integrates functionality commonly realized by separate pieces of software in other mailers.
I was the project leader and wrote most of the code.
- Argante R
Procedural language compiler (with C-like syntax) for Argante operating system.
I designed the language and implemented the compiler.
Libtrash is a shared library which implements a trash can under GNU/Linux. When preloaded, it intercepts calls to a series of GNU libc functions and, instead of permanently destroying files, moves them to a "trash can".
I added regular expression support and improved performance.
Open Source thesaurus for the Polish language.
I wrote a set of macros for Emacs that automate finding synonyms.
Below I list several things I had to understand, use or implement. These are only the issues that I find complex or difficult. That you don't find binary trees or quicksort here, doesn't mean I don't understand them; it's just I don't find them particularly challenging. And before you ask... no, I don't expect to use this knowledge.
- Data Structures: Suffix-Trees, OBDD, Mergable Heaps (Binomial, Fibonacci), Automata on Infinite Inputs (Büchi, Müller, Rabin, Streett), Tree-Automata on Finite and Infinite Inputs.
- Static Analysis: Automatic Verification (PLTL - spin, CTL), Semi-Automatic Verification (Invariance, etc. - pvs), Parity Games, μ-calculus, CTL*, Directional Types for Logic Programs.
- Algorithms: Rational Approximation with Continued Fractions, LLL, Heuristics for A* (FF, k-Subsets, PatternDB), Linear In-Place Array Merging.
- Computational Complexity: undecidability, complete problems in various time/space classes (NP, coNP, PSpace, etc.), and their meaning.
This is the list of programing languages in which I have written at
least one simple program (emphasized those with substantial experience):
AWK, Bash, C, C++, C#, CLIPS, Delphi, Java, Lisp, Nemerle, Pascal, Perl, PHP, Prolog, Python, SML, Smalltalk, SQL, x86 Assembler.
- Linux na California Access G533
- Nie mam Windowsów
- The GNU Privacy Handbook translation also at Linuxpub
- Articles for www.DebianUsers.pl
- Argante OS
- Designing network protocols for multiplayer games [pdf] [ps.gz]
- Statystyczny filtr antyspamowy [pdf] [ps.gz]
- Few tales at Night City Limits
You can download my public key or use the following command to import it automatically:
wget -O - http://sliwerski.net/gpg.pub | gpg --import