Carl VitulloBuilding a better Discord timestamp toolI wrote a Discord timestamp generator to solve a problem for myself. I need a way to clearly communicate what time events and such happen…Sep 22, 2023Sep 22, 2023
Carl VitulloOptimizing a dockerfileThere are 3 major points to consider when optimizing a Docker file:Aug 5, 2020Aug 5, 2020
Carl VitulloSecuring a large Gatsby site with a CSPContent security policies are a great way to lock down your website, and it can be relatively painless to get some benefit.Jan 21, 2020Jan 21, 2020
Carl VitulloHow a walkout happens in techAt 1:30pm on Wednesday, June 26th, hundreds of Wayfair employees walked out of the office after failing to reach an agreement with…Jul 5, 2019Jul 5, 2019
Carl VitulloThe future of Bitcoin and EthereumI’ve loosely followed cryptocurrency for almost a decade. In 2011, I briefly mined Bitcoin (and Litecoin, when it became clear that GPU…Feb 9, 20194Feb 9, 20194
Carl VitulloSymptoms of a dysfunctional teamI’ve had a lot of jobs (8 since 2012), which means I’ve worked with a lot of teams. One of the main reasons I changed jobs so frequently…Jan 21, 2019Jan 21, 2019
Carl VitulloEverything you need to know about React HooksReact just announced a new feature: Hooks. It’s a brand new set of APIs that enables powerful new ways to share stateful logic between…Oct 25, 20186Oct 25, 20186
Carl VitulloStaying on top of new Javascript featuresWith modern JS tooling, we have an opportunity to use Javascript features before they are implemented in browsers or node. However, not all…Aug 27, 2018Aug 27, 2018
Carl VitulloHandling errors with async/await and promisesI love promises. They’re a fantastic model for asynchronous behavior, and await makes it very easy to avoid callback hell (though I'd argue…Jul 23, 20183Jul 23, 20183