Slashdot Mirror


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?"

13 of 156 comments (clear)

  1. I am in a similar situation by marcus · · Score: 3, Insightful

    And am currently enjoying Ruby.

    --
    Good judgement comes from experience, and experience comes from bad judgement.
    - W. Wriston, former Citibank CEO
  2. Get a Mac by DrTime · · Score: 5, Insightful

    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.

    1. Re:Get a Mac by Bastian · · Score: 3, Insightful

      So true. Also, clueful Mac users who might appreciate some crazy idea you got aren't afraid to download stuff they've never heard of before just to try it out, because there just isn't much spyware on a Mac. Same goes for Linux, of course.

      Even if Windows shareware/freeware developers succeed in rising above the unholy din of the Windows software scene, they are going to have a lot harder time getting me to try their stuff because I get fsckin' paranoid when I'm sitting in front of a Windows computer.

  3. Re:Indeed by Anonymous Coward · · Score: 1, Insightful


    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.

  4. I'd say... Java by FooAtWFU · · Score: 2, Insightful
    Look into Java. Really. It'll run on *nix, Mac and Doze, and a good toolkit framework like SWT is plenty shiny. Yes, you'll suffer from slightly lengthy load times and memory usage and all that stuff. But there are plenty of Java IDEs, especially Eclipse and various Eclipse-based toys.

    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.
    1. Re:I'd say... Java by phill7 · · Score: 3, Insightful

      I agree. I'm a C++ programmer and learned very fast to code in the Java language. Compared to the aging and incomplete C++ standard libraries, I found the Java standard libraries very complete and well integrated, which allowed me to devellop any kind of GUI and communication applications rather fast and without having to constantly seek for some extra libraries.

      I also loved to use the great developper free tools available for that language, mainly NetBeans and Eclipse. Their code auto-complete and integrated help system features helped me to learn way faster the language and its available tools, and the Swing interface builder of NetBeans is really improving the speed of development of GUI interfaces (I didn't experiment Eclipse interface builder yet), once mastered of course, wich might require some extra time at the beginning. And all this for free!!!

      Eclipse seems to become the standard, but NetBeans is really nice and does worth some attention too.

  5. Re:Plain and simple by voxel · · Score: 2, Insightful

    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
  6. Python is a good place to start by Dan+Ost · · Score: 3, Insightful

    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...
  7. Re:Plain and simple by GiMP · · Score: 2, Insightful

    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.

  8. Why? by Anonymous+Brave+Guy · · Score: 2, Insightful

    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.
    1. Re:Why? by dorkygeek · · Score: 1, Insightful
      No, he just stated that command line tools and gcc are crap, witjout even mentioning the slightest reason!

      So, if I may ask, since when exactly is Emacs considered crap? Since when is gcc not up to the task?

      Better have some answers before calling ME a troll!

      --
      Windows is like decaf - it tastes like the real thing, but it won't get you through the day.
  9. Re:Simple by MaggieL · · Score: 3, Insightful

    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=-
  10. Codewarrior is dead by wandazulu · · Score: 2, Insightful

    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.