 When you develop Java programs, you will want an IDE, an integrated development environment that has tools that let you edit, compile, and run your Java programs. There are a lot of IDEs out there, and I'm going to focus in on two of them. The first is Genie, a lightweight IDE. It doesn't have a lot of features, but it's easy to start with. The second one is Eclipse. It's a full-featured IDE with lots of tools and utilities to support Java. Both of these are available for Windows, Macintosh, and Linux. Let's look at Genie first. The first time you start Genie, you're going to have to make one change in the preferences. Go to the Edit menu, choose Preferences, and the Terminal submenu. And make sure that this option, Execute Programs in the VTE, is checked, and then click OK. You only have to do this once. Now, let's open an existing program. I'm doing this on a Linux system, so the File Open dialog box doesn't look the same as the one on Windows or Macintosh. Once you have your program written, select Compile under the Build menu, and in this case it finished successfully. And then select Execute from the Build menu. And there's your output. It works. You can clear the output in the terminal by right-clicking and selecting Restart Terminal. Let's try making an error on purpose to see what happens when Java encounters an error. We're going to remove the semicolon at the end of line 8. Now, if I compile the program, you'll see that it expected a semicolon on line 8. It points out where it found the error, and also gives the little red underlines on the line in question. In the interest of cleanliness, I'm going to put back the semicolon, and I'll recompile. You don't have to save the program before you compile, your genie will do that for you automatically. There. That's much better. I compiled successfully this time. By the way, you can get a version of genie for Windows that installs to a USB drive so that you can take it with you anywhere you go. Now let's look at Eclipse. When you launch Eclipse, it will ask you where you want to save your work in a workspace. Take the default. You'll see a welcome screen, which you can close. Let's create a Java project, and call it example. We'll use the project folder as the root for the source and class files. Go to the next page, and accept all the defaults. We now need to add a class to this project. So from the file menu, we will say we want a new class. The name of it will be example with a capital E, and we will want to have a public static void main. Make sure that's checked. And there's the template where we can add our code. The first thing let's do is add a comment that tells what the program does and the author and date. Then let's add our Java code. By saying system.out.printLine, it works, exclamation point, and a semicolon at the end of the line. Now I can run the program. When you run the program, it will ask you if you want to save. I'm going to say I always want to save before launching the program. Click OK, and there's my output. It works. Again, what happens if I make a mistake? If I make a mistake, let's say I get rid of the semicolon here, you'll notice that a red X shows up. If I hover over it, it will tell me what my syntax error is. If I try to run the project, even though there's an error, it'll ask me, do you want to really proceed? I can say yes. Let's proceed. And then I will see in more detail what the error is. It'll tell me that line 10 has a syntax error, insert a semicolon to complete the statement, and you'll notice the little red underline there. Let's put back the semicolon, the red underline, and the red X disappear. And I can run my program again. Eclipse keeps track of all the projects you have opened in the panel at the left. If you want to delete an entry from the list, right-click the project name and select Delete. Make absolutely sure that the delete project contents on disk is not checked. The project name will be deleted from the list, but it won't be deleted from your disk. There's a lot more to Eclipse, but this should be sufficient to get you started.