Avoiding circular dependenciesA circular dependency is when two pieces of code (files, classes, functions, etc) need each other to work (they're typically bad practice since they make code too intertwined). We rarely intentionally add circular dependencies, but they often arise a...Sep 26, 2023 · 6 min readblog.lucas-simon.com
The 9 Services You Need for a Scalable StartupManually cloning your repo and running your app on a random digital ocean VPS is not sustainable or scalable. I built a startup as a solo dev that scaled to over 1,000,000 users (with up to 10,000+ concurrent connections) and these are the services t...Jan 9, 2023 · 5 min readblog.lucas-simon.com
Amazon CodeWhisperer vs Github Copilot (Updated April 2023)Context Github Copilot is an ML-powered autocompletion tool for developers (it uses OpenAI's Codex). It is currently has a 1-month free trial and is priced at $10/mo. Amazon CodeWhisperer is a similar service. It's currently in private preview, so it...Jul 14, 2022 · 10 min readblog.lucas-simon.com
How I made database joins type-safe in TypeScript.Context: What is an ORM? An ORM (Object-relational Mapper) is a tool that adds a layer of abstraction on to databases. For example, if we had a "team" table in a SQL database and wanted to fetch a team with TypeScript, we could do the following: cons...3Jul 8, 2022 · 8 min readblog.lucas-simon.com
Dynamic Link Previews in React (Without SSR)Intro While working on my website, I got sick of the default link previews. Google is pretty good about running JavaScript to figure out what's on the page, but many platforms such as Facebook, Twitter, and Discord won't. And, it's not very helpful t...Dec 9, 2021 · 4 min readblog.lucas-simon.com