ProgrammingJavascriptCareerProductivityGadgetsASP.NETWeb Design

Setting Up Your Development Environment

Written by
Published on
Modified on
Filed under
Setting Up Your Development Environment

There is alot that goes into being a software developer nowadays. When I was in college we used a text editor and we typed some commands. But real life is a bit more complicated than sorting algorithms. You need plenty of tools and a decent computer in order to work on larger and more complex projects. It's not required, but it makes the process much much easier. All of this depends on your programming language and framework choice, so I'll be covering a few of the most popular one's today.

A Good IDE

Choose your poison. IDE's are where you'll do all of your work for the most part. They are the development environments for the particular language that you are working with. There are tons of good IDE's out there, and if you're a serious developer, then you're going to need one. Personally, I use Visual Studio, because it's designed for .NET developers. There are other 3rd party .NET IDE's, but obviously, as Visual Studio is a Microsoft product, then it just makes sense to use that over the others. If you're a PHP developer you have many different options though. Some of the more popular editors for PHP are Eclipse, NetBeans, Zend Studio, and WebMatrix. And you always have the option of just using a plain text editor. And they all offer their pros and cons. Some are free and others have licensing fees associated with them. Personally, I'd recommend Eclipse as its been around for a while and thus is more stable and offers more tools.

If you're an IOS developer then your options are more limited as most of your code will be written using Xcode, which is the all in one IDE brought to you by Apple that you can use to develop applications for desktop, mobile and the Apple Watch.

A Text Editor

Sometimes, you don't need to load a full IDE to get something done. Many times when I'm prototyping something or testing out an idea, I just open up a regular text editor to do it. And again there are some options. You're always free to use the default text tools that come with any OS, but nowadays you also have fancier text editors that come with different plugins to aid in your writing needs. Notepadd++ is a personal favorite as it is free, quick and offers tons of extendibility using various different plugins.

A Database Server

At some point, you're going to get tired of saving things in text files, and so you're going to need a database server. And that's totally going to depend on the programming language that you choose to work with, although there is some room to play around. If you're developing a website using .NET you're free to use almost any database server that supports the ODBC standard. Sql Server is the most popular for Windows Development and it offers a free express edition that you can use for any project.

If you're going to be working with PHP, you'll most likely end up using MySql for all of your database needs. MySql is open sourced and it runs in a variety of platforms. You can use it in a .NET project as well.

Source Control

Not necessary, but it is definitely very useful. Source control usually makes sense when working with larger teams, or in an office environment, however even working alone it has its advantages. If you're making large changes to your projects, you don't have stop all development until it's done before you can deploy your changes. You can branch off different projects, and roll back to previous versions of your code and view and document any and all changes that you may have done.

The most popular source control software out now is Git, which does offer a free version for public projects, and different tiers of priced plans depending on the number of repositories that you need. However, there are totally free alternatives that you can use that offer many of the same features. Personally, I use SVN, which is an open sourced version control system by Apache. There are various plugins created that allow it to integrate seamlessly with Visual Studio and other IDE's. You can also use Team Foundation Server, which integrates with Visual Studio and Visual Studio Online and offers many of the same branching and locking mechanisms that other source control software support.

Task Management Software

This one is totally optional. Lately though I've found it more and more useful in my own personal projects for keeping track of bugs and tasks that need to get done. There are tons of options on this one as they aren't tied to any particular language. Some of the more popular ones include Assembla.com, Asana and if you're using Visual Studio you can integrate your projects with the many project management features built into Team Foundation Server.

An Image Editor

Not optional really. You're going to need an image editor at some point. And while Photoshop is still one of the best tools for making logos,banners, wireframes and web designs in general, it's not the cheapest alternative. Lucky for us there are always alternatives. Gimp is a multiplatform image manipulation program that is free to use and offers many of the same features that Photoshop has.

These are just some of the tools that I use on a daily business to get my work done and there are plenty more that I didn't get a chance to cover.

Walter Guevara is a software engineer, startup founder and currently teaches programming for a coding bootcamp. He is currently building things that don't yet exist.

Comments

No messages posted yet

Developer Poll

Q:

Stay up to date

Sign up for my FREE newsletter. Get informed of the latest happenings in the programming world.

Add a comment

Keep me up to date on the latest programming news
Add Comment

Stay up to date

Get informed of the latest happenings in the programming world.

No thanks