4 ms·
Speaking as someone who built his master's these using Notepad and javac, I can say had I used IntelliJ, I would have had a much more enjoyable time. Students
by Delmania 10y ago
Speaking as someone who built his master's these using Notepad and javac, I can say had I used IntelliJ, I would have had a much more enjoyable time.
Students don't need these tools, but they do go along way to help make them more productive and enjoy the experience. I also wouldn't call IntelliJ (or Visual Studio) as "enterprise" tools. They are definitely the product of people who spend a LOT of time building software in the supported languages.
- egeozcan 10y agoWhat are "enterprise" tools anyway? Sincerely asking. Is it a support thing?
- SiVal 10y agoYou can define "enterprise tools" any way you like, but there are software tools that cost millions of dollars that only an "enterprise" would ever buy, and tools like the JetBrains tools that are priced at a level where many individuals buy them for themselves. Many tools like this are still very popular within enterprises, as are many free, open-source tools, so you might mean "commonly used within enterprises" when you say "enterprise tools" but it's more common (I believe) for people to mean expensive tools that ONLY an enterprise would ever buy when they say "enterprise tools".
- egeozcan 10y agoThanks, that confirms my intuition. So maybe the marketers use it to scare-away the people who wouldn't be able to afford the product and would waste their time by contacting them for a price and even request demos.
- jasode 10y agoAs an example of "enterprise", scroll all the way down to the bottom of the IntelliJ page[1] for the section "Choose your edition". In the "Ultimate" column, you'll see extra features such as support for IBM Rational Clearcase, MS TFS, and Java EE. Hobbyists, students, and most startups in the web/mobile space don't use those corporate/enterprise products.[2] Since this new announcement makes the Ultimate version free for students, I suppose some observers wonder why college students couldn't just use the Community edition which was already free. [1]http://www.jetbrains.com/idea/features/#out-of-tools http://www.jetbrains.com/idea/features/#out-of-tools [2]the IBM Clearcase of $2000 is example of "enterprise" pricing: http://estore.gemini-systems.com/ibm/software-license/rational-testing-software/software-change-and-configuration-management/rational-clearcase-multisite/ http://estore.gemini-systems.com/ibm/software-license/ration... (Most college students would probably just use Git/Github instead of IBM Clearcase.)
- egeozcan 10y agoWell that confused me at first. I questioned why those features would qualify for "enterprise software". Then I remembered that the EE in Java EE is for "Enterprise Edition" and my serach made me end up on Wikipedia[1], which explains enterprise software as "computer software used to satisfy the needs of an organization rather than individual users" - it's simple and makes total sense. [1]: https://en.wikipedia.org/wiki/Enterprise_software https://en.wikipedia.org/wiki/Enterprise_software
- Delmania 10y agoI have just a few nitpicks: Hobbyists and startups might choose TFS since Visual Studio Online is free for orgs of a certain. > "computer software used to satisfy the needs of an organization rather than individual users" This applies to software like HP's ClearCase and Rational rose, whereas the EE in Java is bit of a misnomer. Originally, Java SE was designed primarily for single threaded desktop applications and applets, whereas Java EE was designed for a more networked application with application servers. What happened is that Java EE was a beast to work with, but some features of it like servlets, injection, and data mappings were useful, so developers built versions of those that could work with Java SE (think Tomcat and Spring). The Java team took the lessons and redid Java EE to make it easier to work with. It's still a bit of a beast to work with, but good enough to build an application with.
- paulmd 10y ago> What happened is that Java EE was a beast to work with, but some features of it like servlets, injection, and data mappings were useful, so developers built versions of those that could work with Java SE (think Tomcat and Spring). The Java team took the lessons and redid Java EE to make it easier to work with. It's still a bit of a beast to work with, but good enough to build an application with. This is a really important point for all of Java, in fact. It's a fairly old language (21 years) that has had a lot of trial-and-error and a lot of very niche applications (embedded/mobile development). There is a lot of stuff that is abandoned, obscure, deprecated, or not really used for its original purposes anymore. For example of something that's widely acknowledged as an outright mistake, see the Cloneable interface. http://www.artima.com/intv/issues3.html http://www.artima.com/intv/issues3.html Do also see the DEFCON talk "The Secret Life Of SIM Cards" that was posted here last night, for an example of a niche embedded usage of Java. There is a LOT of Java running around - not just on smartphones, but on all kinds of embeddable/mobile devices. https://www.youtube.com/watch?v=_-nxemBCcmU https://www.youtube.com/watch?v=_-nxemBCcmU In many ways DotNet is a clean-slate reimplementation of what Java could have been. It avoids many of the pitfalls that Java ran into, but I think it also misses the boat on some others. I would love a Maven equivalent for C#. And checked exceptions actually are useful in some contexts and C# misses out, but on the other hand Java took it way too far by adding tons and tons of checked exceptions for generic "something happened!" failure cases, many of which are implementation errors and should be unchecked. C# has a lot less boilerplate but also more opportunity for mistakes if you aren't careful.