thoughts and codes
My Node.js is a bit Rusty
Replacing an internal Node.js module with a native Rust module made a x25 perf boost. Let’s understand why.
Authenticating GitHub Actions HTTP Requests with OpenID Connect
Having frictionless trust between your service and GitHub Actions, without long-living tokens
Running Vercel Postgres Locally
The setup I use for local work with Vercel Postgres or Neon database
I’m on Mastodon!
I recently joined Mastodon. Writing about that here so you know!
Custom Emojis on GitHub 🎉
Emoji is communication. Let’s see how to use custom emoji on GitHub. 🙌
DHH yells at the cloud
My reaction to DHH’s “Why we’re leaving the cloud” post.
Multiple Schemas in Supabase
for future reference, here is what needed to create a schema in Supabase.
Podcast: Vercel Edge Functions at JS Jabber
I joined Dan, AJ and Steve to talk about Vercel Edge Functions and their impact on the modern web.
Source Map-Aware Code Generation
Preserving source maps with the ease of a string interpolation.
After almost 4 years, I am leaving Wix and moving to my next challenge.
Holiday Project: Working with MIDI clock over BLE and ESP32
I built a MIDI sequencer over Bluetooth low energy (BLE) using Arduino-like ESP32 microcontrollers. Here are my findings.
Podcast: Front-end Land (Hebrew)
I chatted with Nir and Elad about TypeScript
React Error Boundaries in SSR
Remastered internals: How to use error boundaries in server-side rendered React app?
Why fnm was rewritten in Rust
...or, why did I rewrite a Reason-native showcase project into Rust?
Mocking in TypeScript with `factoree`
A simple way to easy and safe mocking in TypeScript
HTML over the wire with Preact
Communicating using HTML like it isn't 2021
CLI Apps in TypeScript with `cmd-ts` (Part 1)
Using `cmd-ts` to easily build a type-safe TypeScript CLI app
Using Long Paths in Windows and Rust
There's a simple solution for using long paths in Windows binaries
Preserving Form State in Refreshes and Navigation with React
Using the History API to store meaningful state that preserves across refreshes and page navigations
Typing the Technical Interview in TypeScript
Solving a technical interview question with no runtime involved
Stringly and Strongly typed TypeScript
Teaching the compiler to understand strings in TypeScript
🚀 fnm: Fast and Simple Node.js Version Manager
A super fast alternative to NVM is now open source on GitHub
RS256 in ReasonML/OCaml
It took me a decent amount of time figuring out how to sign messages for a ReasonML GitHub app. Here are my findings.
The Programming Language I’m Looking For
I love programming languages. Every one of them has this catchy thing that I wished the others had. Lately, I’ve been distracted by the question of which language would I use if I would start a new side project.
Fun with Functors and ReasonML
A short introduction to ReasonML types and functor types from a beginner
“Sign up” and “Sign in” forms could (and should) be the same
IFTTT Ideas for Software Development
I use multiple types of software every day. I’d like to connect them to maximize productivity and organization.
Versatility is your enemy
The larger set of options I get, the less work I can actually do.
I failed to deliver.
Over the last 3 years, I’ve built some inter-organization communication tools that failed. They all failed for the same reasons.
Being in a band made me a better software developer. vice versa.
I’ve been playing guitar for almost 12 years now, and it affected my perspective about software development, commandership and team leading.
Leaving The Comfort Zone
I’m leaving my convenient development infrastructure team leading role in favor of being a commander in the technological officers course.
Running back and forth between development environments. Time traveling my development decisions.
Using SQL queries in conjunction with Functors to create reusable querying systems ⚡️