How to Set Up the Development Environment

How to Prepare a Computer for Development

I’m on my second semester of grad school; I wanted to combine work and study to get more hands-on experience and test my knowledge in the workplace. I started a new position in February 2019 with the IT Service at the University of St. Thomas. I’m working on a variety of projects for cloud migration (AWS), Mobile app & web development, IoT pilot projects, and many more. So I’m really excited about that and It’s a great opportunity to get experience and learn more.

If you just started a new IT position which involves software development or anything close to writing code, there are few things that need to be done to get you ready for development; get your computer ready for development. In this article, I’m going to share a couple of tasks I did to get my computer ready and how to set up the development environment.

IDE -Integrated Development Environment

One of the first tasks you might want to do is installing IDEs best fit for the projects you are going to work on. Integrated development environments, or IDEs, are software platforms that provide programmers and developers a comprehensive set of tools for software development in a single product. IDEs are built to work with specific application platforms and remove barriers involved in the lifecycle of software development.

Atom IDE Screenshot

IDEs are used in development teams to build new software, apps, web pages, and services, and they help by providing one tool with all the features and removing the need for integrations.

IDEs are for programming code to a specific platform or platforms and have integrated features that know how the platform works and how to use the features of the platform through compiling code, debugging code or intelligently completing code automatically.

Some popular free IDEs: Visual Studio, Atom, PyCharm, Eclipse, IntelliJ IDEA, Xcode, AWS Cloud9, etc. For more information about IDEs, check out Best Integrated Development Environment (IDE) Software published on g2crowd.com

Package Management System

A package manager or package management system is a collection of software tools that automate the process of installing, upgrading, configuring, and removing computer programs for a computer’s operating system in a consistent manner. (source: Wikipedia)

They are definitely a variety of software you will need to install for the many projects you are going to work on. Software package management system simplifies the installation of software in your computer and makes the process less complex.

Some Popular Package managent System: npm, APT, yum, Homebrew, pip, Chocolatey, NuGet, Anaconda, ProGet, etc.

Homebrew

Homebrew is a free and open-source software package management system that simplifies the installation of software on Apple’s macOS operating system and Linux. I highly recommend using Homebrew for mac user.

Node Js & NPM

Node.js is a platform built on Chrome’s JavaScript runtime for easily building fast and scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices. (source: TutorialPoint).

Node.js and npm are fundamental to modern software and web development used for many frameworks platforms. The node package manager (npm) is widely used to install software, libraries dependencies, software updates, other related tasks. Get these right now if they’re not installed on your computer.

Debugging Tools

Debugging is the process of detecting and removing of existing and potential errors (also called as ‘bugs’) in a software code that can cause it to behave unexpectedly or crash. To prevent incorrect operation of a software or system, debugging is used to find and resolve bugs or defects.

Chrome Developer Tools

Chrome DevTools is a set of web developer tools built directly into the Google Chrome browser. DevTools can help you edit pages on-the-fly and diagnose problems quickly, which ultimately helps you build better websites, faster. With DevTools you can view and change any page. For more details check out Chrome DevTools Tutorial.

I would also recommend revising HTTP Status Codes. There few things that are crucial to your ability to well debug. When It comes to debugging, you need to:

  • Understand what the error code or message means (for example what is a CORS error)
  • Where it is coming from (server side, local computer, syntax error, etc)
  • knowing where to look for information about fixing those bugs (googling the write or leveraging other resources: StackOverflow, tutorial, etc.)

Bash_profile | Mac users

There is a hidden file in your Mac’s user directory named .bash_profile. You will more likely get to do some set up of that file to run some package or while installing software on your Mac. This file, .bash_profile is executed for login shells, while .bashrc is executed for interactive non-login shells.

.bash_profile is loaded before Terminal loads your shell environment and contains all the startup configuration and preferences for your command line interface. When you log in (type username and password) via console, either sitting at the machine or remotely via ssh: .bash_profile is executed to configure your shell before the initial command prompt.

This is an example of how I organized my .bash_profile on my Mac:

If you enjoyed this story, you might also like “Coding Interview: Problem Solving Techniques
Please give it a few claps for support!
Cheers!!!