Skip to content
View marklauter's full-sized avatar

Block or report marklauter

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
marklauter/README.md

Cloud Solutions Architect at Insight. I design and build cloud-based distributed systems for clients. After hours, I write database internals.

I like graphs

A graph is only as good as the storage engine beneath it, and those are hard — so I'm building the pieces in the open, one at a time: a SQL parser for the Code Crafters SQLite challenge, data pages, a B-tree, a buffer pool, and a write-ahead log.

I'm still working out how transactions coordinate the buffer pool and the write-ahead log. If you can explain it cleanly, open an issue.

Graphs run through access control, too. kingo is my clone-in-progress of Google's Zanzibar — a graph problem and a little-language problem at once: the relation tuples form the graph you traverse, and the userset rewrite rules are a small expression language.

I like expression trees

I wrote my first domain-specific language in 1996, for an electric utility billing system. A second followed in 1998, for server-side dynamic HTML rendering. A third in 2008: a query language for a custom GIS database with temporal-spatial sharding. Lately I've been rebuilding the craft from the ground up — a lexer and a recursive-descent interpreter.

I've programmed professionally in FORTRAN, C, C++, Delphi, C#, BASIC, VB.Net, Java, JavaScript, TypeScript, Python, Perl, LISP, and a few obscurities like Object PAL. Pressed for a favorite, I'd name C# and C. I'm slowly catching up on functional programming, because monads make me happy.

I like pools and pipelines

pool is an object pool for dotnet; plumber is a request-response middleware pipeline built for AWS Lambda, with a Serilog extension to match. I also keep DynamoDbLite, a DynamoDB emulator on SQLite, in active development. All three run in real-world projects.

I like things that fly and things that go beep

Hillsborough County's gifted program introduced me to computer programming and lambda calculus when I was nine. That was 1978. After high school I served in the US Army as a crew chief on AH-1 Cobra attack helicopters. These days I fly small planes, hold an airframe mechanic's certificate, and write a flight controller for the Tello drone for fun.

When the desert lost its charm, I came home to Florida, shook the rust off my brain, and joined the engineering co-op at Tampa Electric in 1993. Its sister company TeCom hired me as a software engineer in 1995. Since then — early internet startups, IoT and GIS shops, machine-vision startups, and several fintechs — I've built a few systems at real scale: a GPS tracking platform running 1.3 trillion geofence evaluations a day, an asset tracker watching 650,000 devices, and a verifications pipeline that grew 100x. For 18 years I ran my own software consulting firm.

Reach me

Open an issue on this repo, or find me on LinkedIn. Ask me about anything.


Fun fact: my first computer was a room I never saw. I reached it through a Teletype Model 37 that printed every screen refresh in full — bang, shake, rumble, pop, beep — while we played Star Trek. It shook the whole room. Most amazing thing I'd ever seen. Decades later I rebuilt that game in C#.

Pinned Loading

  1. pool pool Public

    An object pool for dotnet.

    C# 1

  2. plumber plumber Public

    A request-response middleware pipeline for dotnet

    C# 2

  3. plumber.serilog.extensions plumber.serilog.extensions Public archive

    Serilog Extensions for Plumber: Dotnet Pipelines for AWS Lambda

    C#

  4. tello.io tello.io Public

    DJI/Ryze Tello Drone SDK (3.0) for dotnet.

    C# 1

  5. sql-parser sql-parser Public

    SQL parser for Code Crafters SQLite challenge.

    C# 1

  6. kingo kingo Public

    relationship based access control

    C# 1