Dmitry Dvoinikov
Software developer from Berlin, Germany
The only way to get something done is to start and then don't stop.
E-mail:   dmitry@targeted.org
The usual:   Resume  ·  LinkedIn  ·  GitHub
Blogs:   At minds.com (more political)  ·  Things That Require Further Thinking (less political)
Articles:   The effects of data fragmentation in a mixed load database
Password keeping devices. Comparison of YubiKey vs. OnlyKey
VPNs, how to use them properly and stay anonymous
Open-source projects:   Pay Gap Puzzle (JavaScript game)
Pythomnic3k (Python3 application framework)
HTTPort (TCP over HTTP tunnel)
Green (e-mail spam filter)
Nest (IP VPN daemon)
Bootable FreeBSD CD (minimal and secure)
Python recipes:   Function guards for Python 3
Assertion that a code fragment throws a particular exception
Method signature checking decorator for Python 3000
Method signature checking decorators for Python 2.x
Yet another Design By Contract module for Python
Decorator to make a decorated call in a separate thread with timeout
Formats current exception with stack trace so that it fits in single line and has known encoding
Shared lock (aka reader-writer lock) with timeouts and FIFO ordering
Book reviews:    Oracle Application Integration Architecture (AIA) Foundation Pack 11gR1: Essentials
 Freakonomics: A Rogue Economist Explores the Hidden Side of Everything (Steven D. Levitt)
 Transactional Memory (Tim Harris et al)
 Seven Languages in Seven Weeks (Bruce Tate)
 Talent is overrated (Geoffrey Colvin)
 Smart Card Applications (W. Rankl)
 Smart Card Handbook (W. Rankl)
 Presentation Zen (Garr Reynolds)
 Clean Code (Robert Martin)
 Godel, Escher, Bach: An Eternal Golden Braid (Douglas Hofstadter)
 Smalltalk, Objects, and Design (Chamond Liu)
 The Art Of Agile Development (James Shore, Shane Warden)
 Software Fundamentals (David L. Parnas)
 Large-Scale C++ Software Design (John Lakos)
 Release It!: Design and Deploy Production-Ready Software (Michael Nygard)
 Software Craftsmanship: The New Imperative (Pete McBreen)
 The Psychology of Computer Programming (Gerald Weinberg)
 Peopleware: Productive Projects and Teams (Tom DeMarco)
 Code Craft: The Practice of Writing Excellent Code (Pete Goodliffe)
 Programming Erlang: Software for a Concurrent World (Joe Armstrong)
 Beautiful Code (Andy Oram, Greg Wilson)
 Dreaming In Code (Scott Rosenberg)
 Principles of Transaction Processing (Philip Bernstein)
 The Data Warehouse ETL Toolkit: Practical Techniques for Extracting, Cleaning (Ralph Kimball)
 The Data Warehouse Toolkit: The Complete Guide to Dimensional Modeling (Ralph Kimball)
 Oracle Performance Tuning and Optimization (Edward Whalen)
 Expert Oracle Database Architecture:Programming Techniques and Solutions (Thomas Kyte)
 Fault Tolerance in Distributed Systems (Pankaj Jalote)
 Database Tuning: Principles, Experiments, and Troubleshooting Techniques (Dennis Shasha)
 Inside Microsoft SQL Server 2000 (Kalen Delaney)
 The Guru's Guide to SQL Server Architecture and Internals (Ken Henderson)
 The Mating Mind: How Sexual Choice Shaped the Evolution of Human Nature (Geoffrey Miller)
 Universal Principles of Design: 100 Ways to Enhance Usability... (William Lidwell)
 Accident And Design: Contemporary Debates On Risk Management (C. Hood)
 SQL Performance Tuning (Peter Gulutzan)
 Relational Database Index Design and the Optimizers (Tapio Lahdenmaki)
 Software Fault Tolerance Techniques and Implementation (Laura L. Pullum)
 Building Reliable Component-Based Software Systems (Ivica Crnkovic)
 AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis (William J. Brown)
 Emotional Design: Why We Love (Or Hate) Everyday Things (Donald A. Norman)
 Hackers and Painters: Big Ideas from the Computer Age (Paul Graham)
 Writing Secure Code, Second Edition (Michael Howard)
 Practical Cryptography (Niels Ferguson)
 Blueprints for High Availability: Designing Resilient Distributed Systems (Evan Marcus)
 Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions (Herb Sutter)
 Programming With Threads (Steve Kleiman)
 Understanding Microsoft Windows 2000 Distributed Services (David Chappell)
 Advanced Programming in the UNIX(R) Environment (W. Richard Stevens)
 The Design and Implementation of the 4.4 BSD Operating System (Marshall Kirk McKusick)
 Porting UNIX Software (Greg Lehey)