Setting Up Dev Environment
Hey Everyone,
As a software developer, I need my computer to be always ready for one thing and one thing alone - Coding!
So setting up a dev environment to fit to my need is one of my basic requirement. In this post i will share with you what tools i used to set up mine.
First - My requirements
1. Efficient: I need tools for coding
2. Focused: I need tools for Planning, Note Taking
3. Durable: I need tools for backup
4. Should Look Good: I need good ui
My Tools:
1. Tools for Coding:
I’ve experimented with various coding tools, and here’s a review for each:
-
Notepad++: My initial coding environment, favoured for writing HTML and C code. It offers basic syntax highlighting and is lightweight, but not suitable for major projects.
-
Visual Studio: My first comprehensive IDE for coding, used primarily for C++ projects. It delivers an excellent debugging experience but demands significant installation space and supports a limited set of languages.
-
Vim: Ideal for those who aim for fast coding. Vim’s key bindings and shortcuts are valuable for quick coding tasks and were my go-to for competitive programming.
-
Visual Studio Code: Currently, my preferred IDE, combining the features of Visual Studio with the lightness of Notepad. It supports a wide range of languages, and if there’s a specific feature you desire, chances are there’s an extension for it.
-
NeoVim: Often referred to as “Vim on steroids,” but I found using Visual Studio Code with Vim keybindings extension offers a similar experience without the setup complexities of NeoVim.
My preference is using Visual Studio Code
2. Tools for Note Taking:
Planning can be a hurdle for many developers, and I’ve had my struggles as well.
-
Notepad++: Suitable for simple note-taking but lacks advanced features.
-
Google Keep: Used for years, with cloud-saving capabilities, but essentially a text app.
-
Obsidian: An open-source note-taking gem. While Jira and Confluence excel in collaboration, Obsidian shines for individual use.
Currently, I stick with Obsidian for its versatility and features.
3. Tools for Backup:
Every developer should have an automatic backup system on their PC to avoid the pain of losing data.
-
Git: My primary tool for software projects, coupled with GitHub. Always remember to push your changes regularly.
-
GDrive: Google’s 15GB free space is handy for file clutter. Set up GDrive for auto-sync to keep your files safe.
-
Mega and OneDrive: Secondary options for files I prefer not to store in GDrive, managed through some automation.
GDrive sync and GitHub are indispensable lifesavers to me
4. Tools for UI:
Dependent on your software choice, here are some recommendations:
- For VSCode users, enable Material Icon and Material Theme for an enhanced visual experience.
- For shell, consider trying Oh My Zsh, offering cool prebuilt themes.
- A personal favourite for shell customisation is Powerlevel10k.
Final Note:
Your environment is a reflection of your unique style and preferences. Feel free to explore and customise to make it truly yours!
Enjoy Reading This Article?
Here are some more articles you might like to read next: