When we talk about the "UNIX Programming environment" we mean a collection of compilers, tools and a good editor, which are available in a Unix environment. The development process is to edit the source code files using the editor. Then compile and link the program. Execute, debug and profile it using the appropriate tools and use awk, sed, grep, nm, strings, strip and friends for various other tasks. Lex and yacc make development of parsers very easy and efficient. The GNUproject has created such an environment in excellent quality. It is free software and can be used by everyone under the terms of the GNU Public License.
Using a Unix like environment obviously requires some Unix skills. This is what makes many people asking for Integrated Development Environments like Eclipse, kdevelop or MS Visual Studio. The IDE approach has the great advantage of a quick start for everybody, a quick development process in an object oriented context. The disadvantage always becomes evident, if "something goes wrong" and the programmer does not have an OS skills.
What I do, is using the Linux Version of Eclipse for largers projects, Emacs or vim - a good implmentation of vi with a few enhancements - for small ones. I believe, that using an IDE is no excuse for knowing nothing about the "Unix Programming Environment" and vice versa, because only both methodologies in combination are really efficient.
There is a bit of rivalty between the real hard men, who remember every tool, every compiler switch and write their documentation in plain TeX and the modern softies who call everybody a nerd, who is not interested in the "Ghost in the machine".
GNU Utils run on almost any system. I have used them on Linux, Solaris, HP-UX, Tru64, DEC Ultrix(DEC's BSD implementation is not anymore on the market, was a good system, though.), FreeBSD, NextStep (not on the market anymore as well), Cygwin on Windows