Exploring the Modern Software Development Environment

One of the never ending flame wars involves the use of programmer editors vs. integrated development environments (IDEs). Most developers have a proclivity for one over the other. A small percentage use both. Let’s examine the terrain first.

On the text editors side, we have the long time competitors VI (or VIM) and Emacs, which are used pretty much exclusively in *nix environment (although there are Windows ports, of course). Then, there are recent and modern cross-platform editors such as Sublime Text and Atom.

On the IDE side the offerings used to be language specific, but recently most of the big players support multiple languages ??? often via plugins. Visual Studio is often considered the Holy Grail, but the various offerings from JetBrains are right up there. There is also Eclipse and NetBeans ???and many more.

One group I’ll ignore here is simple text editors like Notepad or Nano. No doubt some people use them for serious programming and can be very successful, but those are few and far between. Editing files is just a small part of the whole development lifecycle.

Modern software development of enterprise scale systems involves managing multiple projects (often tens or hundreds) using multiple programming languages and tech stacks, with source control, testing and deployment, interaction with other teams, integration with third-party services, lots of open source and communicating with multiple people and other teams.

Activities such as browsing, searching the source code and refactoring require structured support. Integrated debugging, including remote debugging is a big concern.

In the end, your development environment must support your development process. The difference between the customizable programmer editors crowd and the IDE crowd boils down to the integration question. Do you want to glue together various command-line tools, install and upgrade independent plugins and script your way to total control? Or do you prefer to let someone else do most of the work in the form of an IDE that still allows you to customize and script it if needed.

I am firmly on the IDE side. I’ve used Visual Studio for a long time and sometimes I’ve used Eclipse and NetBeans but these days, PyCharm is where I spend most of my time. I almost never install any plugins (a notable exception was ReSharper) and I use VIM often when I need to edit files on remote systems. I get many productivity benefits from the IDE (in particular interactive debugging), but it does limit my ability to adopt new languages for serious development projects until they get adequate IDE support.

Share the Post:
Share on facebook
Share on twitter
Share on linkedin


The Latest

microsoft careers

Top Careers at Microsoft

Microsoft has gained its position as one of the top companies in the world, and Microsoft careers are flourishing. This multinational company is efficiently developing popular software and computers with other consumer electronics. It is a dream come true for so many people to acquire a high paid, high-prestige job

your company's audio

4 Areas of Your Company Where Your Audio Really Matters

Your company probably relies on audio more than you realize. Whether you’re creating a spoken text message to a colleague or giving a speech, you want your audio to shine. Otherwise, you could cause avoidable friction points and potentially hurt your brand reputation. For example, let’s say you create a

chrome os developer mode

How to Turn on Chrome OS Developer Mode

Google’s Chrome OS is a popular operating system that is widely used on Chromebooks and other devices. While it is designed to be simple and user-friendly, there are times when users may want to access additional features and functionality. One way to do this is by turning on Chrome OS