Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Java

Why oh why Craig Dennis must you torture us?

Thanks again for responding to my earlier question/accusation on the Java Custom Serialization video, but I have another one for you. Why oh why is this course not taught using an IDE. When I was learning to write Python on my own I quickly fell in love with Pycharm as it made the learning process much smoother. I understand that because an IDE does so much for you it could actually prevent you from learning certain things but I am beginning to think its worth the risk. After getting frustrated with the Java Track earlier I decided to jump over and take a look at the Android Development Track. WOW...I am learning Java at a MUCH faster pace there and I think it is in large part to the IDE. Using an IDE acts sort of like a teacher in a real classroom. When I make an error it calls me on it before I finish writing an entire code block full of errors and then compile and have to go back through everything I just wrote sorting out the errors. Not only does it call you on the errors but can offer solutions. I know I am preaching to the choir and you are well aware of how IDE's work but what I am finding most useful is that they suggest possible solutions. It sorta throws you a bone which makes it much easier to work through figuring out the code "on your own" albeit with a bit of a crutch which in my opinion is much better than my current default of getting frustrated, looking up the answer online and then trying to understand why its the answer and basically learning in reverse. I personally will be going back over much of the Java Track and rather than follow along in the workspace provided by treehouse I am going to try and write in Eclipse and see if that does not return the same results that writing in Android Studio is producing. Once again I recognize that I do not represent all users. Maybe the majority of people can memorize everything said in the videos and apply it but for me the IDE is invaluable!

2 Answers

Jon Kussmann
PLUS
Jon Kussmann
Courses Plus Student 7,254 Points

Hi Michael,

An IDE is an extremely useful tool and chances are when you get a job doing development (if that is what you are aiming for), you will use one.

However, I think it is much better to not rely on one early on. The Workspaces here at Treehouse are pretty useful in that your work can be easily saved/tied to your account, but it also provides an easy way for you to share your code here on the forums when you have questions.

To me that is a small reason to not use IDEs. I started my learning with IDEs (with Android Studio/Eclipse) and there was a bit of a wake up call when I tried interviewing for a job. I was supposed to solve some problems on a whiteboard, but was unable to. I was way too used to the "autocomplete" features of an IDE that I had trouble even remembering the most simple of operations/methods. Even something simple as writing:

public class MainClass {
  public static void main(String[] args) {
  }
}

Gave me some trouble since I was used to it just "being there".

If you are learning just to do personal projects and don't plan on getting a job with development, feel free to use an IDE while learning Java. You don't have to use the same tools as in the videos (the main lessons will be the same). I feel as though I learned better when I went back to the start of the Java track and forced myself to not use and IDE. It made me watch out for errors more and how to read compile time errors instead of having an IDE just point them out for me.

Given the choice, I would always use an IDE. We don't always get that choice though.

Wow...I am really glad that I asked the question! I almost deleted it after typing because I didnt want Craig to think I was on a witch hunt with back to back critiques of his Java Track, but after reading your response I am glad that I posted it. Thanks for another EXCELLENT answer and for painting a truly horrifying picture of why an IDE could cause a person major problems. I would love to make a career change from a decade spent as an Major Accounts Manager to a Developer and I certainly would not want to be caught at loss on an interview because I hadn't committed even the more repetitive code blocks to memory! Thanks again for the excellent response!!

Craig Dennis
STAFF
Craig Dennis
Treehouse Teacher

Also...it's the next course dude ;). I believe you will enjoy it, as well as the last video will hopefully make you realize I felt the same way.

Stick with it!

You're a good man Craig, teaching has got to be one of the toughest jobs on earth, especially when you have guys like me as your students. I hope you fare better than my high school teachers did way back when...two of them had nervous breakdowns and had to take a leave of absence :O