How do I evaluate an IDE? [closed]

I don’t want to know which IDE is best, because that’s subjective. I’d like to know how to evaluate an IDE. I’m primarily a vim user, and realistically happy there, but occasionally look at languages that have powerful IDE’s and I consider using them.

The problem I run into is that they mostly seem the same to me. Certainly any of them will work, but when trying to decide which IDE to invest time in how do I decide?

What features should I be testing to see if I like the way A or B works better? Obviously some IDE’s are specifically tailored to a language, but given a choice between say Netbeans, Eclipse, and Intellij IDEA, how would I decide? as a novice they seem the same.

When evaluating I generally try the editor, a few configuration options, file browser. I think my colleagues all basically the same as me and don’t use IDE. I also doubt I’d end up using the IDE for work, because Perl shop, and I’m happy with vim for that, I’m simply trying to figure out how to use them in the context of languages that aren’t day job and have solid IDE support.

12

An IDE is supposed to increase your productivity. That should be your criteria.

Whatever IDE’s you wanted to try, download and install them first. Try coding in each of them, one by one. Or try one a day. By the end, I’m sure you will figure out by yourself which one could make you more productive.

Each IDE has its own settings, keyboard shortcuts, behaviors, etc and if you keep using them regularly, you will get comfortable around them and get used to them. Here are some other factors you might want to consider when evaluating IDE’s:

  1. If it is in active development
  2. If it has good community support(and wide adoption as well)
  3. If it has a good and growing number of plugins/extensions
  4. Might not be relevant – but if it is free or paid

I have been using eclipse for 3 years until my colleague asked me to try IntelliJ IDEA. I have been very comfortable with eclipse for 3 years. However, I liked IntelliJ better as it is as they have advertised – more intelligent. Plus, they have a community edition that is open sourced and free. So, I switched to IntelliJ as it improved my productivity, but whenever I am helping other colleagues who are using Eclipse, I won’t have trouble with that.

I personally find myself trying every IDE I get across, because, the IDE’s have a lot of scope for improvement and they will keep getting better and intelligent.

5

Try them out!

You mentioned that you’re a vim user. Assuming that you don’t want to give up your superpowers, you’ll probably want to see which IDEs have better vim modes.

Think about if you want an IDE that works with many languages, or multiple which are fantastic at the language they specialize in.

It’s all a matter of opinion.

0

Okay, this feels more like one of those questions where somebody needs to dig deep down and find the real question, which based on your comments, I suspect is:

“Is it okay that I hate IDEs?”

My answer would be “Bravo, yes. Over-reliance on IDEs to handle too much for you can make you weak and lose touch with the value of carefully designed architecture that ultimately makes a code base more maintainable with or without the crutch. Also, for devs who’ve really mastered less complex/lighter-weight tools like VIM they can do more to get in your way than actually help you.”

But don’t get too smug. Even if your code is clean and neat enough to be more easily dealt with in a non-IDE fashion, that doesn’t mean everybody’s is or that yours always will be if you find yourself having to continually add layers to something you had intended to refactor before you took it any further, but oops, now there’s money and employees involved and you just need to get ‘er done in time to see whether people get Christmas bonuses this year. (disclaimer: no, I’ve only worked for that guy)

It took exactly one legacy code-base from Hell to convince me that no, IDEs have their uses. These are:

  • Making the illegible less illegible – It is not possible to understand the code in a code base where every single class has a minimum of 1 interface and a super-class or a sub-class merely by looking at the code. It’s just not. It at least helps to have something you can quickly find where stuff actually begins and ends.

  • Debugging crap-procedural wolves in OOP sheep’s clothing – Sometimes you just have to give up and realize that all the OOP architecture is really just crap that further obfuscates what’s going on. When it takes 30 method calls to make a basic web service call for some static data in a DB you’re going to want some help figuring out where it went wrong.

  • Helping you with a language that you don’t know that well – The mere presence of auto-complete and param hinting can help out in a big way on this front. Typing at 70-80WPM when intoxicated in a snow storm doesn’t help you when you have to Google your way through Microsoft or J2EE documentation to do the simplest things.

  • Managing complexity – I have to admit. Once your actual code file count grows beyond 20 or so, it’s really nice to just be able to right-click something and see where the heck it was defined or rename it 6 different files at once. Especially when working with something you didn’t write the bulk of when dealing with a team.

So, if perhaps you’re fairly convinced as I always had been that IDEs are often a symptom of a disease, I don’t think you’re entirely wrong. But I’m a JavaScript dev and I have to admit, WebStorm is pretty neat. I still open Scite more often than not, but once there’s a lot of dependencies to manage and some stupid code in the mix, I’ll take the IDE option.

If I’m not wrong and you’re at least similar to me in historical outlook on IDEs, I would go with the four things I actually have found them useful for as things to rank the value of an IDE on.

3

There’s not much point in defining evaluation criteria. Even if you define some, you will have to play with the IDE to decide if it satisfies them, but then again by playing with the IDE you will encounter things you like or dislike about it anyway, regardless of whether you established criteria or not.

My algorithm is: I choose the defacto standard for the language/SDK I’m using and just wait and see. If I encounter too much problems I’ll consider switching to an IDE which is promised (by advertisement or word of mouth) to not have these specific issues.

As others have mentioned, since you’re a vim user, one easy thing you can do is look at available vim emulation plugins.

Trying them out is obvious.

I’d create a list of show stoppers: things that can’t be true about an IDE that I use. Some examples:

  • Does it fail to run on some machines my developers use?
  • Is the company making it (or community backing it) dead or dying?
  • Is it crash-prone? If crashed (or hung and killed), does it have trouble starting?
  • Does it make you wait at random moments?
  • Does it have known serious bugs or shortcoming in areas that matter to me?

This can be summed up:

  • Does it make you curse often?
  • Does it make you switch to other tools often?

If it does, probably it won’t fly.

But don’t forget to actually learn how to use each IDEs first. Faithfully follow introductory texts or videos, however obvious the material might seem; your stereotypes might be holding you back from using a great but unconventional way to do something.

0

As a developer, I consider whichever one helps me get the job done the quickest with the least frustration. Also, one that is popular because I know I can find support for just about anything via google if that is the case. As a fellow vim’er I tend to choose ones with vim plugins (e.g. eclipse and visual studio both have vim plugins). Then it’s the best of both worlds 🙂

2

Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa Dịch vụ tổ chức sự kiện 5 sao Thông tin về chúng tôi Dịch vụ sinh nhật bé trai Dịch vụ sinh nhật bé gái Sự kiện trọn gói Các tiết mục giải trí Dịch vụ bổ trợ Tiệc cưới sang trọng Dịch vụ khai trương Tư vấn tổ chức sự kiện Hình ảnh sự kiện Cập nhật tin tức Liên hệ ngay Thuê chú hề chuyên nghiệp Tiệc tất niên cho công ty Trang trí tiệc cuối năm Tiệc tất niên độc đáo Sinh nhật bé Hải Đăng Sinh nhật đáng yêu bé Khánh Vân Sinh nhật sang trọng Bích Ngân Tiệc sinh nhật bé Thanh Trang Dịch vụ ông già Noel Xiếc thú vui nhộn Biểu diễn xiếc quay đĩa Dịch vụ tổ chức tiệc uy tín Khám phá dịch vụ của chúng tôi Tiệc sinh nhật cho bé trai Trang trí tiệc cho bé gái Gói sự kiện chuyên nghiệp Chương trình giải trí hấp dẫn Dịch vụ hỗ trợ sự kiện Trang trí tiệc cưới đẹp Khởi đầu thành công với khai trương Chuyên gia tư vấn sự kiện Xem ảnh các sự kiện đẹp Tin mới về sự kiện Kết nối với đội ngũ chuyên gia Chú hề vui nhộn cho tiệc sinh nhật Ý tưởng tiệc cuối năm Tất niên độc đáo Trang trí tiệc hiện đại Tổ chức sinh nhật cho Hải Đăng Sinh nhật độc quyền Khánh Vân Phong cách tiệc Bích Ngân Trang trí tiệc bé Thanh Trang Thuê dịch vụ ông già Noel chuyên nghiệp Xem xiếc khỉ đặc sắc Xiếc quay đĩa thú vị
Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa
Thiết kế website Thiết kế website Thiết kế website Cách kháng tài khoản quảng cáo Mua bán Fanpage Facebook Dịch vụ SEO Tổ chức sinh nhật