Software I use, tools I love, and other things I recommend.
I get asked a lot about the things I use to build software, stay productive, or buy to fool myself into thinking I'm being productive when I'm really just procrastinating. Here's a big list of all of my favorite stuff.
Frontend Technologies / Skills
Javascript
As Jeff Atwood said in 2007, "Any application that can be written in JavaScript, will eventually be written in JavaScript." I couldn't agree more. I've been using Javascript for over 10 years now and I'm still learning new things every day.
React JS
It's not the newest kid on the block anymore, but it's one of the best out there, I've been using React for over 7 years now and I've built a lot of apps with it. The comfort and familiarity of React makes it a joy to work with.
Next
Next is taking the React ecosystem to the Next* level by storm. It's a great tool for building static and server-rendered applications using React. I have been using Next for over 4 years.
Angular JS
AngularJS was a revolutionary framework for frontend development. I have used AngularJS for over 2 years.
Backend Technologies / Skills
NodeJS
NodeJS is a great framework for building server-side applications. I've been using NodeJS for over 7 years with REST and GraphQL APIs.
GraphQL
After using REST APIs for a long time, I felt like there should be a better way to fetch only the data that I need. GraphQL is that better way. I've been using GraphQL for over 5 years now.
GoLang
NodeJS is great for building server-side applications, but I struggled with performance and scaling. Go came to my rescue to help me build performant and scalable applications. I've been using Go for around 2 years now.
Rust / Wasm
I've recently started learning Rust and WebAssembly. This combination is game changer, At times I feel like I'm writing C code in Javascript which puts front-end performance on steroid. I've been using Rust for around 1 year now.
Fullstack Framework? (Maybe)
Remix
Since initial discussions about React Server Components I was very excited to see how it would change the way we build web applications, but before it was released Remix made a grand entry into the scene. Remix looks like a fullstack framework for building server-rendered applications using React. I've been using Remix for my pet projects to learn more about it.
Database Technologies / Skills
PostgreSQL
PostgreSQL is a great RDBMS with extensibility and SQL compliance. I've been using PostgreSQL for over 7 years now.
MongoDB
MongoDB is a great NoSQL database. I've been using MongoDB for over 5 years now.
DynamoDB
While working on AWS, I've used DynamoDB when I needed a NoSQL database. Though I've used it for a short period of time, I've found it to be a useful one.
DevOps / Cloud Technologies
AWS
I've extensively used AWS for building and deploying applications with several AWS services.
Serverless Architecture
I've used serverless architecture to build and deploy variety of application including my pet projects and Alexa skills. These days I'm getting familiar with CDK to build serverless applications.
Netlify
Netlify is a great tool for building and deploying static websites. My primary usage includes deployment of static websites to netlify.
Vercel
My primary usage of Vercel is deployment of NextJS applications and my own portfolio website.
Headless CMS
Contentful
My first interaction with a headless CMS was with Contentful. I've fallen in to love with the ease of use and the flexibility it provides. I've used contentful for several marketing websites for my clients.
Strapi
Strapi is an open-source headless CMS. It's a great alternative to Contentful. I've used Strapi for my pet projects.
Swell
Swell is a headless e-commerce platform. I've used Swell for my pet projects.
Design
Figma
We started using Figma as just a design tool, but now it's become our virtual whiteboard for the entire company. Never would have expected the collaboration features to be the real hook.
Source Control
Tools
IntelliJ IDEA
IntelliJ IDE is one stop solution for most of my development needs.
iTerm2
I'm honestly not even sure what features I get with this that aren't just part of the macOS Terminal but it's what I use. Though I would like to give a try to Warp.
Notion
Notion is a lifesaver app for me with so many features. Shout out to the Notion team for building such a great app.