Text Editors and IDEs
So let's get programming. First you'll need to install some programs. Actually you'll probably need to install some for everything you do. Regardless, let's get the first ones out of the way.
What is a text editor?
A program that can edit text. Good job! To be more specific these are not Microsoft word programs, although I guess you could do it with that if you hated yourself... These programs allow you to open source code. If you open a file they don't know how to handle, you will find hex or binary source. The good ones come with tools that allow you to program more effectively. It's important to choose a healthy one with a good community for obvious reasons.
What is an IDE?
IDE stands for Integrated Development Environment. They are text editors that are usually tailored to specific languages or frameworks. They are large programs with lots of overhead and features. They have tools that help debug, build, and provide real time help while you program. If you can learn how to use their features then you'll be programming faster than anyone. The downside is that they tend to be specific, and heavy. Changing languages also might be an issue.
IDE vs Text Editor
Ultimately it depends. I think of it with the following metaphor. This is also my own opinion.
A text editor is a sports car. It's fast, it handles well, and has some really nice features that a minivan doesn't. It might not be able to go off road but if its a well traveled path its faster than anything.
An IDE is a glass cutter's truck. It can hold large panes of glass on the side of it securely. It has a toolbox with everything needed to cut glass. It has room to expand so you can cut even more glass in the future.
If you are going to cut glass and only cut glass, go with the IDE that cuts glass. You'll cut a ton of glass and have everything you need to do so. If you work with one language, use the IDE. Mind you that there are many IDE's that work with more than one type of code.
If you want to get from A to B. Then a text editor is great. If you get a nice one you should be able to work on a variety of languages. Just know it might not have all the features and tools that an IDE might have. It might not work on some languages but you'll have fun driving.
So what are we doing again?
For the purpose of these threads I'll recommend you get a text editor. Learn to use it. If you want to start focusing on something specific, get the IDE.
- Atom New, sexy, kind of slow, gaining a lot of traction and improving everyday
- Notepad++ Popular, bare bones, can do anything.
- Sublime text Very popular, great packages, my personal daily driver
There are a ton mind you, these are just the ones I know are popular. I'll personally be using sublime text however any of these will work. Watch some youtube videos to learn how they work. Customize them, learn the keybinds, find the package manager.
- Jetbrains Company that develops IDEs for specific languages. I'd recommend them if they have your language (Java and PHP for sure)
- Microsoft Studio This can pretty much do anything, if you can get a license (got a student email?)
These are the more flexible IDEs I know of. You can always search for things specific to your language. They take a lot more time to setup and run than a text editor but if you can learn to use them, its worth it.
If enough people want me to go more in depth with installing and configuring sublime text I can (lets say 3?).