This page is a list of articles I’ve written over the years which I am allowed to share publicly, and which do not always have an associated post in this blog. In many cases they are the presentations I used for courses or talks.
- Testing & mocking
Link a la presentación (PDF) - Testing & mocking: C++
Link a la presentación (PDF) - Console Ninja: Cómo dejar de ser un usuario desconsolado
Link a la presentación (PDF) - SQL FTW
Link - Valgrind
valgrind - Notas sobre metodologís ágiles
Introducción a las metodologías ágiles (spanish only) - Introducion a GNU/Linux
Link a la presentación (PDF) - GNU/Linux: Guía de Supervivencia (FLISOL 09)
Link a la presentación (PDF) - LyX: A text editor that stays out of the way
URL: http://debaday.debian.net/2008/01/20/lyx-a-text-editor-that-stays-out-of-the-way/
Long-format articles and presentations I've written over the years.
C++ exceptions under the hood (read as single page)
- C++ exceptions under the hood
- C++ exceptions under the hood 2: a tiny ABI
- C++ exceptions under the hood 3: an ABI to appease the linker
- C++ exceptions under the hood 4: catching what you throw
- C++ exceptions under the hood 5: magic around __cxa_begin_catch and __cxa_end_catch
- C++ exceptions under the hood 6: gcc_except_table and the personality function
- C++ exceptions under the hood 7: a nice personality
- C++ exceptions under the hood 8: two-phase handling
- C++ exceptions under the hood 9: catching our first exception
- C++ exceptions under the hood 10: _Unwind_ and call frame info
- C++ exceptions under the hood 11: reading a CFI table
- C++ exceptions under the hood 12: and suddenly, reflexion in C++
- C++ exceptions under the hood 13: setting the context for a landing pad
- C++ exceptions under the hood 14: multiple landing pads & the teachings of the guru
- C++ exceptions under the hood 15: finding the right landing pad
- C++ exceptions under the hood 16: finding the right catch in a landing pad
- C++ exceptions under the hood 17: reflecting on an exception type and reading .gcc_except_table
- C++ exceptions under the hood 18: getting the right stack frame
- C++ exceptions under the hood 19: getting the right catch in a landing pad
- C++ exceptions under the hood 20: running destructors while unwinding
- C++ exceptions under the hood 21: a summary and some final thoughts
- C++ exceptions under the hood appendix I: the true cost of an exception
- C++ exceptions under the hood appendix II: metaclasses and RTTI on C++
- C++ exceptions under the hood appendix III: RTTI and exceptions orthogonality
Vectorization in gcc [A DRAFT]
Writing Vim plugins
- Vim utilities: Findgrep & Fastgrep
- Vim utilities: Impl switche
- Vim utilities: Better Tab Ne
- Simple vim plugin I: integrating new command
- Simple vim plugin II: a psychic project grepe
- Simple vim plugin III: a polymorphic project grepe
- Simple vim plugin IV: project grepin
Setting up a Linux gateway/router, a guide for non network admins
- Setting up a Linux gateway/router, a guide for non network admins
- Setting up a Linux GW II: NATting and forwarding
- Setting up a Linux GW III: Setting up DNS with bind9
- Setting up a Linux GW IV: Setting up apparmor
- Setting up a Linux GW V: DCHP
- Setting up a Linux GW VI: Configuring a console friendly router and setting up static DHCP IPs
- Setting up a Linux GW VII: Fun with iptables, setting up port forwardings
- Setting up a Linux GW VIII: Proxy and content filtering
C preprocessor
- C preprocessor: Just a simple replacer?
- C preprocessor II: stringify operator
- C preprocessor III: Token pasting
- C preprocessor IV: VA Args
- C preprocessor V: Conditionals
- C preprocessor VI: Recursive macro expansion rules
- C preprocessor VII: Recursive expansion on function macros
Cool C++0X features
- Cool C++0X features 1: Intro
- Cool C++0X features 2, Variadic templates: What's wrong with varargs
- Cool C++0X features 3: Variadic templates, a fix for varargs
- Cool C++0X features 4: Variadic templates again
- Cool C++0X features 5: Templates and angle brackets, a short interlude
- Cool C++0X features 6: A variadic wrapper
- Cool C++0X features 7: A variadic wrapper solution
- Cool C++0X features 8: Variadic wrapper and type inference with decltype
- Cool C++0X features 9: delayed type declaration
- Cool C++0X features 10: type inference with decltype
- Cool C++0X features 11: decltype and disappearing constness
- Cool C++0X features 12: type inference with auto
- Cool C++0X features 13: auto and ranged for, cleaner loops FTW
- Cool C++0X features 14: Initializer lists
- Cool C++0X features 15: Initializer lists for custom (non-std) objects
- Cool C++0X features 16: Lambdas
- Cool C++0X features 17: Lambdas syntax
C++ Template metaprogramming (read as a single page)
- Template metaprogramming: A slow descent towards utter maddness
- Template metaprogramming 2: Openning the box
- Template metaprogramming 3: Entering Pandemonium
- Template metaprogramming 4: Nightmares to come
- Template metaprogramming 5: Face to face
- Template metaprogramming 6: The Spider Webb
- Template metaprogramming 7: The Enemy Within
- Template metaprogramming 8: A Rough Whimper of Insanity
- Template metaprogramming 9: Absolute Zero
- Template metaprogramming 10: Zero Minus Ten
- Template metaprogramming 11: Hidden Agenda
- Template Metaprogramming 12: You Really Got a Hold on Me
- Template Metaprogramming 13: Heart of Darkness
- Template Metaprogramming 14: Marathon
- Template Metaprogramming 15: Gemini
No comments:
Post a Comment