Tools of the trade

Tools of the trade

Growing up I was always fascinated by tools, especially how easy they made certain tasks easy to perform. Apart from knowing data structures and algorithms, every good software engineer has a toolkit of apps and services which they use to make their jobs easier.

For now, I just wanted to list some of the tools/services I use very frequently in my work and at school.

IDE

  • Visual Studio 2017 Community Edition: I use this for coding projects in C# and JavaScript. It is free and open-source and comes with numerous extensions.
  • VSCode: It is very lightweight, has many great extensions, free and open-source making this my primary tool for coding projects (mainly HTML, Java, and Python).
  • Notepad++: My primary tool for quickly viewing and editing projects.
  • JSFiddle: I use this when I want to show or edit some code in real-time and for asking questions or answering questions related to StackOverflow There are fiddles for all major languages available online and this can be used for trying out some sample code. 


Environment

  • VirtualBox: I generally use it to create environments for coding. I usually keep environments for Node.js projects, ML projects, and different classes in my school.
  • Docker Community Edition: Very useful for sharing code between peers.


Cloud

  • AWS: This is the main cloud environment where I deploy projects. It is very easy to spin off an VM and deploy to it.
  • Azure: I use this for deployment of bot projects as it integrates nicely with C# projects.


Source Control

  • GitKraken: Very useful for visualizing changes to branches.


Database

  • MySQL Workbench: Quick and dirty testing on local disk.
  • MS SQL Server Management Studio: I use this generally for .NET projects.


Messenger

  • Slack: Very helpful to communicate with teammates about code and documentation.


Code Quality

  • ReSharper: An extension which integrates with VS 2017. This is available for free for students. Its correct usage instantly helps improve code quality and provides best guidelines. I absolutely adore ReSharper but its cost deterred me from buying it for myself. I was lucky enough that I have never had to go without it and as a student, I get to use it for free!
  • Code Climate: Integrates with Github and provides guidelines on projects after commits. I was introduced to this after I was seeking to review all my code which I had on Github. It is an excellent tool, albeit still a work in progress.


API Testing

  • Postman: I use it to quickly test API's for request and response structures.
  • Fiddler: I use it mainly to load web apps, view and replay entire browsing sessions.


Task Manager

  • Waffle: Integrates with Git directly.
  • Trello: This helps me keep track of long-term projects.


Notes taking

  • Instapaper: My favorite notes app for screens and videos.
  • OneNote: Usually used for written notes.
  • Evernote: Also used occasionally for clippings.
  • Google Docs: I use it for collaboration documentation sharing with team mates.


Presentation

  • Microsoft Powerpoint: An essential tool for quick presentations.
  • Prezi: I love the UI effects on this one.

These are just some of the generic tools in my toolkit. I would love to hear from others if I have missed anything or some of the tools which they use in their daily work. So please comment and let me know!


To view or add a comment, sign in

More articles by ☘️Ashutosh Singh

  • Service workers

    Service workers are an important part of building PWAs. A service worker is a script that runs in the background…

  • Web Services and Microservices

    What are Web Services? Web services provide a way of exposing functionality of the application via API over HTTP. It…

  • Introduction to testing web apps using Lighthouse

    Introduction: I already have an article up on how I have improved page load times of projects shortening it by 100% -…

  • Getting meta about Meta tags

    Meta tags provide metadata about the HTML document. It is generally used to instruct browsers and other services like…

  • Lessons learnt in the trench as a software engineer

    One of the most obvious ways to become a better programmer is to read code. The other ways are to actually code and…

  • Fixing bugs in your .NET web project by ELMAH

    Error logging is a crucial part of applications. I have significant experience looking at error logs and debugging…

  • What is Do Not Track (DNT)?

    The DNT header is a HTTP header field which requests that websites do not enable cross-site tracking for an individual…

  • Cookies - To be or not to be

    What are cookies? Cookies are text files stored on the user's machine and are typically transferred between client and…

  • Speeding your Pages Up

    I personally believe in the adage make it correct, make it concise, make it readable and then make it quick in that…

Others also viewed

Explore content categories