About Me

I am Vinnie Falco <vinnie.falco@gmail.com>

My primary skill is writing clear, concise C++ code. I also participate in the evolution of the C++ language by interacting with WG21. You can find me in the C++ Language Slack where I answer questions, support Boost.Beast, and help other people.

Github: github.com/vinniefalco
LinkedIn: www.linkedin.com/in/vinnie-falco
Twitter: @FalcoVinnie
My Résumé (PDF)

Presentations

Bishop Fox 2018
Beast Security Review
CppCon 2017
Beast
CppCast 2017
Vinnie Falco
CppCon 2016
Beast

My Open Source

Boost.Beast: HTTP and WebSocket built on Boost.Asio in C++11

Beast is a C++ header-only library serving as a foundation for writing interoperable networking libraries by providing low-level HTTP/1, WebSocket, and networking protocol vocabulary types and algorithms using the consistent asynchronous model of Boost.Asio.

NuDB: A Key/Value Store For SSDs

NuDB is an append only, key/value store specifically optimized for random read performance on modern SSDs or equivalent high-IOPS devices. The most common application for NuDB is content addressible storage where a cryptographic digest of the data is used as the key. The read performance and memory usage are independent of the size of the database.

A Collection of Useful C++ Classes for Digital Signal Processing

Building on the work of cherished luminaries such as Sophocles Orfanidis, Andreas Antoniou, Martin Holters, and Udo Zolzer, this library harnesses the power of C++ templates to solve a useful problem in Digital Signal Processing: the realization of multichannel IIR filters of arbitrary order and prescribed specifications with various properties such as Butterworth, Chebyshev, Elliptic, and Optimum-L (Legendre) responses. The library is provided under the MIT license and is therefore fully compatible with proprietary usage.

WG21: C++ Committee Participation

P1349R0 Better Integration of Sender Executors
P1145R0 Buffer Sequence Adaptors
P1133R0 Networking TS Associations For Call Wrappers
P1100R0 Efficient composition with DynamicBuffer
LEWG #3114 [networking.ts] Permit efficient composition when using DynamicBuffer
LEWG #3027 [networking.ts] DynamicBuffer prepare exception specification
LEWG #3021 [networking.ts] Relax pointer equivalence requirement for ConstBufferSequence
LWG #3020 [networking.ts] Remove spurious nested value_type buffer sequence requirement
LEWG #2779 [networking.ts] Relax requirements on buffer sequence iterators

Drafts

[networking.ts] Buffer sequence iterator equivalency [DRAFT]
[TBD] A Clang/LVVM Implementor's Perspective on Coroutines [DRAFT]
[TBD] Introducing std::net::http [DRAFT]
D1134R0 An Elegant Coroutine Abstraction [DRAFT]