Welcome to alepho.com
Welcome to my programming corner on the Internet. You can find here basic informations on my work, cv, interests and some code examples.
I'm focused on programming applications backend i.e. client-server, protocols, database and middleware level. Oriented to open source technologies, I'm playing with several languages (C, C++, Java, Perl, PHP and recently Python), databases (PostgreSQL, MySQL, SQLite), operating systems (Linux, FreeBSD) and APIs (languages standard libraries, POSIX, Qt, POCO, Apache, ...). Mathematical education leads me to explore some topics on data structures, graphs and applied algorithms. In every day work I'm dealing with big amounts of data, so my intention is (beside that the applications work correct) to write clean code, easy to maintain and change, with no side-effects.
In the CV section you can find information on my work experience, projects that I worked on, and used technologies. If you have some work to be done, you can check Services section and see if some of my skills are suitable to you. Then you can contact me via Contact form. In the Code section you can find some programming stuff that I've found useful when experimenting with various technologies.
Comparing Two High-Performance I/O Design Patterns
This article investigates and compares different design patterns of high performance TCP-based servers. In addition to existing approaches, it proposes a scalable single-codebase, multi-platform solution (with code examples) and describes its fine-tuning on different platforms.
Move semantics and rvalue references in C++11
C++ has always produced fast programs. Unfortunately, until C++11, there has been an obstinate wart that slows down many C++ programs: the creation of temporary objects. Sometimes these temporary objects can be optimized away by the compiler (the return value optimization, for example).
volatile: The Multithreaded Programmer's Best Friend
The volatile keyword was devised to prevent compiler optimizations that might render code incorrect in the presence of certain asynchronous events.