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.
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
[2]the IBM Clearcase of $2000 is example of "enterprise" pricing: http://estore.gemini-systems.com/ibm/software-license/ration...
(Most college students would probably just use Git/Github instead of IBM Clearcase.)
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.
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
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
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.
Lack of Spring support in the Community Edition is another biggie. It's the de-facto standard dependency-injection framework for Java. For regular usage, the whole "swap out components on the fly!" thing is oversold and overrated but the DI pattern does lead to easily testable code.
Finally, the lack of Javascript support is just bizarre.
Taken as a whole, the whole thing implies that all webdev work is somehow "enterprise". Like nobody ever did a CRUD app for a final project or a capstone or something?
I see no use in burdening students with feeding little text files to compilers, pushing the semicolon button, gardening header files, or cranking package manager handles.
Of course CS students who come to university already programming and with a strong intrinsic desire will overcome difficulties regardless, but a good chunk of fellow students in business informatics/information systems were turned off by complicated setups and steep learning curves of IDEs and chose to steer clear of technical specializations.
For Node, Python and Ruby you can do without an IDE.
You don't even necessarily need to be building a Java target for Maven to be useful. It's also a common way to build continuous-integration build scripts for things like Docker packages, database artifacts, etc.
Yes, there was a software project that we as students built with Java EE (we used Eclipse at that time) - we had to build on legacy code that another student wrote for his diploma thesis in Java EE. This is surely not typical, but sometimes it happens.
I also like Visual Studio 2015 Enterprise, which one can get by the Dreamspark Premium program (I use it mostly for C++ and C# development), though there are many features that were once Visual Studio Premium and Ultimate only that are now also included in the Professional/Community Edition, too (for example Static Code Analysis in C++). So the difference is much smaller than in earlier times, but some testing tools, which I use, (in particular Code Coverage) are still Enterprise only:
You don't need to be doing enterprise programming to find the dependency injection pattern useful, it's very nice for building testable code. And Java EE is the beating heart of a Java webdev backend. Almost everything is built on Servlets and Filters and the web.xml configuration mappings, even if these are abstracted away (and the most common abstraction is - wait for it - Spring+Spring MVC). I guess you can always write Javascript without an IDE but it's definitely nice to use an IDE instead of just winging it with a browser console.
You need to practice to become your most productive self. If you aren't productive you aren't going to find someone who will hire you.