A Dev Environment for the Returning Geek?
InsurgentGeek asks: "I'm about 25 years into my career in technology. Over that time, I've done the standard progression from developer to architect to team leader to program leader to business unit leader. While I've stayed up to date on general technology trends (perhaps more than about 95% of my peer group) - I have started to really miss hands on coding - something I haven't done for almost 20 years. It's not for my job, and I don't plan to make any money at it - but I'd like to get back to coding on at least a recreational basis. Here's the rub: what are the right tools?"
"'Back in the day...' you had about 2-3 choices of languages and perhaps the same number of OS's. There were not frameworks, API's, development environments, etc. I'd like to pick a toolkit and learn it. My goals are pretty simple: I want to write applications that have a great look & feel that will primarily be pulling information from the web (think weather & news), play with that information and present it in interesting ways. I'd like those applications to be usable on the Linux and perhaps Mac OS X platforms. I'm not a complete non-techie. I use Linux at home, have set up all the toys like Squid and BIND - but this is just administration. I need to get back into the guts of the machine. If you were me where would you start? What language(s) would you want to become conversant in? What do I have to worry about beyond the choice of the language itself? What frameworks? What other tools?"
And am currently enjoying Ruby.
Good judgement comes from experience, and experience comes from bad judgement.
- W. Wriston, former Citibank CEO
Get a Macintosh, they come with all the Developer Tools you need. XCode is an outstanding and powerful shell around the Gnu tools. The Mac OS X environment is feature rich with forward looking tools. The Macintosh world is not crowded like the PC world, so if you find a great idea, it might get noticed. At least take a look at it.
The only comments worth reading in this thread are from the low-ID 30 & 40-somethings in the slashdot crowd. "Install Debian"? The guy wants to program, not install a whole OS to do it.
I'd recommend playing with python and/or ruby. Works on almost everything and are a lot of fun.
Other than Java, most of the really cross-platform *nix/Doze/Mac stuff I've really seen has been GTK-based: X-Chat, Gaim, and such. This would be mostly C/C++ work, but I'm not particularly up-to-date on compiling this sort of stuff for Windows. The other thing to consider is whether you can stuff everything into a web-based application. You can do a lot these days, especially with the JavaScript DOM- look at Gmail, Google Maps, and such. This is nearly the ultimate cross-platform solution, but might be tricky to pick up if you're not familiar with HTML and CSS and JavaScript at least a little already. It also suffers from the usual limitations associated with web apps. You might look into Flash for applications as well if you're going for pure shininess- though it generally has similar limitations and all the drawbacks associated with Flash itself, especially with the usual Flash environment costing an arm and a leg...
The World Wide Web is dying. Soon, we shall have only the Internet.
Funny, I was thinking ObjC is nice and C++ "is an antiquated and bastardized attempt at object orientated programming".
Modesty is one of life's greatest attributes
Take a look at learning python. It's easy to learn, fast to develop in, and remarkably flexible and powerful. It comes with it's own IDE (idle), but there are lots of IDE's that support it out there (I use VIM with color coding since most IDE's give me the creeps).
Give yourself half an hour and walk through the tutorial at www.python.org.
I still do most of my work in C/C++, but Python is my language of choice for new projects that don't already have lots of legacy code.
*sigh* back to work...
The vi editor is an essential tool, imho. This is a "cheap command line text editor" as you call it. Personally, I simply can't imagine working without it.
However, you're right in the idea that IDEs *do* offer something that the commandline doesn't. This is why, if I am to use an IDE, I use Eclipse with the ViPlugin.
Sorry, but since when is expressing an honest opinion a troll? I know a lot of people who would agree that relying on CLI voodoo really is needlessly inefficient for many programming tasks. Use the right tool for the job, or write the right tool first if it doesn't exist yet and then use it.
Sure, you can design dialog boxes by writing scripts in an editor, but why bother when you can use an interactive GUI to do it in 1/10th the time? Sure, you can write, debug and test your Perl CGI script using nothing but the command line tool and a live web server that's firewalled off the outside world, but why bother if you've got a test environment that's designed to simulate CGI requests from a web page and has testing tools to make that easy?
Personally, I don't think anything has yet beaten a sufficient powerful text editor for doing web work (HTML, CSS, that sort of thing). All the web design applications I've encountered are just too limiting and under-powered. For programming anything from a moderately long script to a full-scale application, though, I concur with the grandparent post: there are plenty of tools to make common programming tasks easier. Someone like the submitter will probably have plenty to learn at first, without trying to do it with one hand behind his back and spoiling the enjoyment by learning to write pages of boilerplate rather than using the right tool for the job.
If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
If you still have your balls and haven't turned sissy, then the only choice is vi in an xterm...
:-)
I'm sure the ultimate authority on cojones is to be found posting as a AC on Slashdot.
There's just so many out there who seem to be using balls for what brains are meant to do...
-=Maggie Leber=-
Metrowerks (sorry, Freescale) already announced that there will be no more OS X version of Codewarrior (nor Windows...they're going for the embedded market now).
Dunno about their Linux IDE, but I wouldn't be surprised if that gets shut down too.