Eclipse Sucks.

Hello everyone!
Team 4643’s season is officially over. You know what that means, time to start working toward next season. Now, the question. Is it possible to use any editor besides eclipse? I don’t enjoy using it. It is one of my least favorite editors. If not I can deal. But if there is any other editor that works you should let me know! Thanks!

what part of it don’t you like? My students hated it until they learned the bits where a good editor can really save you time (like jumping to definitions, and such)

You could just use a text editor (maybe?) like Sublime but I wouldn’t recommend it.

If you’re working in Java, you can use IntelliJ IDEA like I do. There’s a Gradle Plugin that supports FRC development.

What ide do you use on a regular basis? I can stand eclipse. The only thing I miss from NetBeans is the auto formating and Sout tab psvm tab commands.

Sent from my LG-H810 using Tapatalk

This is what our team does - not Sublime specifically - we have mostly a mix of vim and gedit.

For most of my development I use Qt Creator, as it is a fairly simple, but complete C++ IDE. I only use Eclipse when I need to deploy the code to the robot.

Just note that Qt Creator is a C++ IDE, for the moment it lacks support for Java.

Are you serious? I’ll keep your poor students in my prayers.

But I haven’t even told you about our build system yet: A python script automatically generating makefiles. :slight_smile:

Is your team sponsored by Rube Goldberg? :smiley:

I just got tired of having students who could tell me about vision tracking but couldn’t use the command line well enough to get “Hello World” working without an IDE. :stuck_out_tongue:

The irony is our lead programmer handled the git cli interface far better than the eclipse one.

1 Like

OK but seriously, I’ve used vim exactly once for a period of a month, and that was entirely because of necessity. (offboard processor, didn’t want to connect it to a monitor.) I really don’t know why anyone would use it in FRC because the only people I know who use it proficiently are people who already spent an entire decade with it and know its ins and outs.

There is absolutely no reason to put a high school student through learning vim.

I don’t think it’s ironic - I think it’s brilliant. In Windows, the Git Bash shell is a MAJOR step up from Eclipse, but that’s not Eclipse’s fault. Git effectively put bash, grep, sed, and many other Linux goodies into Windows without all of the heavyweight overhead that Cygwin imposed. (Sorry for the presumption of developing in Windows…)

I’ve used Eclipse professionally for a decade and the only problem I’ve ever had with it was the lack of Git-CLI integration directly into a project. Otherwise it’s fine, and it’s particularly powerful on the remote debugging side of things.

Personally, I wouldn’t force my vision kids to care about CLI-compiling their 2nd-order differential equations :rolleyes:. But I’m sure there was a point to be made somewhere in there.

This is precisely why you should teach a high school student to use basic VIM – hitting ‘i’ and ‘:wq’ isn’t that hard.

I once used vim for a month. But that’s because I couldn’t exit. :smiley:

I thought it was <esc>:wq
or is that plain old VI? Plain old VI is an important skill, because sometimes one does not have a GUIish (well, better than VT-100) connection to that machine you’re talking to.

I’m an Emacs guy at work, somewhat because of its genealogy back to TECO,

I’m liking the comments about getting the kids on the command line. I’m tired of newbe MSEE’s showing up to their first real job with absolutely no clue what can happen through the Unix/Linux (pick your shell, no religious arguments please) command line, which is the core of how we design semiconductors.

Tim

I have been teaching computer science to high school kids for quite a while now. It was a different century when I started. Kids who are programming a robot should be able to handle a wide variety of methods to create and compile code. From a simple text editor and the command line to using a variety of IDEs. That said, when I teach students new to programming we use an IDE. In fact we use Eclipse because I have found it has the best balance of fairly easy learning curve, good tools and ease of installation for them at home. The reason we use an IDE is that when they are first learning to program, I want them focused on developing and implementing algorithms. Not distracted by the intricacies of getting code compiled.

When I first started teaching, a lot of the “old timers” argued that we should always teach Assembly first, and command line compiling, so students understand “how it really works.” They somehow always used a race car analogy: “You wouldn’t want a race car drive who didn’t understand how the engine works.” There are two main problems with this, in my opinion. The first is that they are arguing that Java (or when I first started Pascal, Fortran or C) is an abstraction so students should learn Assembly first. The same basic argument was used for using command line compiling over an IDE. The problem is that Assembly is still an abstraction. It is closer to the machine than Java or C, but still an abstraction. So teaching it as “what is really going on” is not in fact correct. And leads to misconceptions.

The second is that it leads to bad initial habits. In my experience it is much easier to learn a higher level language like Java or C first and then learn Assembly. In particular it is good to use an environment like Eclipse or NetBeans that makes automatic formatting easy. I had a boss once who had a poster for Dante’s “Inferno.” He had modified so that the seventh circle was reserved for those who do not consistently format code and the eighth for people who confuse a short line of code as an elegant or efficient line.

3536 uses eclipse and loves it. We have one of the best adaptive systems because of it. Student have worked hard up front on the subroutines and dashboards so that we can make correction and adjustments in seconds. We have earned 2 control awards over the last two years and have had little trouble with it (I would say none but dont want to call up a jinx).

Discipline is critical with any program. Understanding and research is a long process and necessary in any code. If you dont have the time to put in the effort its understandable that your team doesnt like it.

Change what you use. But dont follow the old saying “A poor craftsman blames the tool not their own flaws”

I think that people have given a good overview of the advantages and disadvantages of eclipse. If you do decide to use something else, be sure to check out our build system. We use bazel (http://bazel.io/), and most of our students use vim. We’ve published our base robot code from last year at https://github.com/frc1678/base-robot-2016, but we’ll probably update it this summer. A lot of this is based off of 971’s system, but ours is probably easier to copy paste :slight_smile:

If you have any questions about it, feel free to PM me.