Why Am I So Obsessed With Development Setup

Vaibhav Singh
nerdy dev
Published in
10 min readNov 30, 2018

All the new developer always research about developer setup, they stumble on some blog, where some of them developer discussed their expensive setup than they search about the inexpensive ways to get the same dev setup. Sometimes, they ask me about the setup used by me for development. In my opinion, it is like a taste, two people can not have the same taste. The development setup differs from person to person. Some people like a light theme in their preferred editor and some like dark theme.
After exploring various editors, OS, Laptops, etc. I think that I am the best person to discuss and can be helpful for someone who likes to explore and wants to set up the best development environment. In this blog, I will discuss which laptop/gears you can purchase to increase your productivity. If you already have the laptop, then I will share how you can convert your machine into best dev machine.

About me

I am a backend developer and I mostly spent my time with python and Golang. Though these days, I am learning about frontend development.

This blog discusses the applications and gears I use pretty much on a daily basis. There will be lots of very opinionated parts of this post about different settings and applications. This is my personal setup and I had discovered and process that I have used countless times with great efficiency. You are welcome to deviate and adapt according to your taste. These small things matter a lot in devs life, as you will find that they are part of your life. Having perfect setup not only motivates you but also increase your productivity.

My Personal Setup

Laptop: MacBook Pro 15 inch

Previously, I owned two laptops, one was a Lenovo B4050 and another was an Asus Zenbook UX405UA. One was given by my university, which doesn’t have good hardware and was a DOS laptop. University gave me that laptop with Windows installed, I don’t like windows personally so I tried to install Linux with help of my friend. He helped me in dual booting the laptop, and I successfully installed Linux Mint as my first Linux OS. I tried to customize that with help of the various awesome blogs written by the community 😄. That laptop became slow and it crashes lots of time, and there were lots of issues, so I want to buy a new laptop and there I got to know about Asus Zenbook, which was cheaper than MacBook pro and give the same experience of MacBook. It came pre-installed with Windows 10, I quickly dual booted with Arch Linux, and customized according to my need and taste. Still, as it’s customized by me, lot’s of time I spend in fixing as it’s a custom Linux and Skylake series processor has some bugs, so lots of time with each new kernel release, Arch Linux breaks, and have to spent countless hours to fix it. I am not saying it’s a bad thing, as in this process I learned more about kernels but sometimes it feels that instead of making things, I am spending time in fixing things and learning is very less. As time is money so I decided to buy MacBook Pro but was not sure about my decision. I joined Amazon as an intern and I was given MacBook as my dev machine and I was in love with that machine, and now after the internship, I bought my own MacBook Pro, and after that, I lived happily ever after. I now spent most of the time in learning instead of fixing things. I went all out on my laptop, getting the higher end MacBook Pro 15 inch. The larger screen certainly helps while coding, and the display is gorgeous compared to my previous Asus Zenbook.

Mouse: Logitech Mx Master 2s

I know Apple MacBook Pro has world’s best trackpad and doesn’t need any extra mouse but sometimes, when you need precision and some applications like Unity, Illustrator where mouse buttons, makes your life easier than using the trackpad, then it’s definitely a thing to invest. You will now ask why I spent thousands of money to the mouse where any mouse under 1k will solve my issue. I choose Mx Master because of its ergonomic design, have 8 reprogrammable buttons and high precision. I can use this mouse for long hours without having stress in my hands because of it’s perfectly sculpted, hand-crafted shape supports your hand and wrist in a comfortable, natural position. Also, it has the best sensor which can precisely tracks on virtually any surface, even glass. It already increased my productivity while using design applications. This mouse also helps you if you are a web developer. You can re-program all buttons to increase your workflow. For example, you can program one button to paste automatically when you click that button. These small things will definitely increase your productivity, and save lots of time.

Headphones: Sony WH-1000XM3

I never wanted to invest in headphones, I felt that people invest in headphones as they are music-obsessed but I was wrong here. The developer just doesn’t invest as they love music, they invest because of ANC (Anti Noise Cancellation). There are many headphones in the market, which provide ANC. One of the popular choice among developers are Bose QC 35 II, but recent Sony headphones outperform than Bose, that’s why I choose Sony headphones. Some of you now will say why to invest in such expensive gear, I would say you are investing because it will enhance your productivity as it will keep away from the distractions and now you can more focus while you are writing code. Also, while listening to talks, you are now more focus and now you don’t struggle as somebody listening to songs next to your home and you are trying to study.

USB C hub

picture by moarmouz

It’s because MacBook pro don’t have any other port 🙈, so have to buy accessory so that I can use USB ports, LAN, etc.

Mousepad: Redgear MP35 Control-Type Gaming Mousepad

Though, I had bought the mouse which can be used on any surface so why I need a mousepad? It’s simple as in India, we have lot’s of dust so if we use the mouse on any surface than mouse surface will be clogged with dust and will have difficulty in using it. Also, dust will decrease the life of the mouse. Also, mousepad helps you in better tracking, and you have better control over the mouse. It happens because mousepad is made of special fabric, and they have a different type of fabric for different purpose like if you need speed then there is a different type of mouse available.

Mobile Phone: OnePlus 6T

You are now thinking that how a mobile phone comes under development setup 🤣. It doesn’t come under development setup but it comes under additional gear. It comes handy when you want to reply on Slack/Gitter/IRC and you are away from the laptop, quickly fix small things as you are away from the laptop and someone asked to push the fixed code. Imagine if your mobile is slow then you will waste your time.

Other gear: Fidget Spinner, Stress ball

This helps me when I am deploying something 😂, lot’s of failures and I am praying that it should deploy this time. Another, use case when I want to concentrate, or I am thinking something.

Let’s talk about Software now

VS CodeIt’s a great open source text editor. It has everything extensions marketplace (Where you can install anything at a click), git integration, excellent command pallet, and lot more. Guys at Microsoft are constantly doing a marvelous job at making their editor the best out there, and their monthly update shows how dedicated they are to keep at improving it.

Stay tuned as I am unveiling productivity secrets with VS Code in my upcoming blog series where i will reveal tips and tricks so that you can code faster. Follow nerdy dev if you want to read it first.

NotionNotion is a project management tool for teams or individuals looking to create their own workspace to get things done. Notion is all you need — in one tool.

photo from slashgear

iTerm2iTerm2 is a replacement for native Terminal which comes with MacOS. It’s user-customizable, and it’s best to customize where you spend most of the time. I use zsh as my default shell and oh-my-zsh ( an open source, community-driven framework for managing your ZSH configuration. It comes bundled with a ton of helpful functions, helpers, plugins, themes and a few things that make you shout…“Oh My ZSH!” ). Here how my terminal looks like

SpotifyIt’s my daily music streaming application. I listen to music while I code and Spotify collection is on par and no one can beat Spotify music recommendation. Spotify knows my taste😇.

Express VPNIt’s an application to have security, privacy, and freedom. I use it when I am connected with my mobile internet or on public wifi.

Feedly Feedly is an RSS aggregator tool which allows you to see all of your favourite web content in an easy to read content in one place. I follow lot’s of Engineering blog and it’s difficult to go to each and every blog check for new articles, and read content. There Feedly comes to rescue.

PostmanPostman is an Application Programming Interface (API) development Graphical User Interface (GUI). Yeah… mouthful.

WakatimeWakaTime is a great tool for quantifying your coding. You can add their extensions in browser, text editors, IDE and it will help you to quantify where you spend most of the time. If you are spending time in Text Editors, then which language you code mostly. It gives you a breakdown of languages you coded after the installation.

image by Wakatime

LastpassLastpass is a password manager. Passwords are often the only thing standing between a hacker and your online accounts but you can use LastPass to create strong, unique passwords. I don’t think I need to convince anyone that passwords are annoying. It’s hard to remember them, so everyone uses the same password for all of their accounts. You know this, I know this. But hackers also know this.

If you use the same password everywhere, a hacker only needs to get your password once in order to break into many of your online accounts. And it seems like every week, we hear about a massive new password breach.To minimize the damage from a breach, you should use unique passwords on each account. But it can be a challenge to remember each password. Here, Password manager helps you, you have to only remember master password and all your password is managed by your password manager. There are many password manager available in the market, but I use LastPass because it’s free and it sync with all my devices as password are stored in cloud, rather than on your local devices.

Chrome (Sub topic Extensions)

  • Octotree — It’s an extension to show a code tree on GitHub. It comes very handy you want to explore code in GitHub.
photo by octotree
  • BlockSite —It’s a great extension if you are addicted to social media and media streaming sites. I was once obsessed with Facebook, and this extension helped me with my obsession.
  • JSON Formatter — It’s a great extension if you want to view JSON beautifully. It comes with the changeable theme and font color.
  • AdBlock Plus — It’s a great extension to block ads though it doesn’t prevent some google ads, it blocks all the ads and you can view all websites ad-free. It also blocks YouTube ad, so no more ads while watching videos.
  • Isometric Contributions — This extension visualize your GitHub in isometric art. Here are mine isometric contributions 😄
  • wappalyzer — This extension helps you uncovers the technologies used on websites.
  • Toby — This extension will help you in organizing bookmarks. Whenever you open a new tab, it will available to you. and you can access all your saved links at one click. I used this extension when I am working on the project, and I want to keep track of important links.
  • The Great Suspender — This extension automatically suspend tabs that have not been used for a while thereby reducing the memory. Developer like me who tends to open 100+ tabs, it’s a great extension to save memory, as chrome is always known as memory eater.
tabs opened by me 😜

I think my dev setup helped you and my only recommendation is to invest in hardware and software if you think that it will increase your productivity as time is money. Also, these small things help you speed up and work efficiently.

Thanks for reading! If you find this helpful don’t forget to leave some claps 👏🏻. Hit that clap button and follow me to get more articles and tutorials on your feed and don’t forget to share this with your friends and followers!

Enjoy following me on social networks:

Follow me on Twitter | Facebook | LinkedIn | Instagram

--

--