Slashdot Mirror


Staying On-Top of Programming Trends?

GhettoPeanut asks: "Trends are constantly changing, upgrading, or become popular due to high end user demand or just basic usefulness. I do my best to keep up with the trends, believing that for the most part they will be better then the current methods in place, or just comfort in knowing that if enough people use it, that there will be allot of help out there. Ultimately though, its keeping up with these trends and trying to figure out what's a fad versus what's actually useful that's the difficult part. What do some of you do to keep up with the trends? Websites? Magazines such as Dr. Dobbs? Forums? I know there's not one solve all, but for the sake of argument, suppose you wanted to stay on the forefront of Java based web development, what would you do?"

12 of 191 comments (clear)

  1. Four things: by Avillia · · Score: 5, Informative

    1. Other programmers I know in various fields. I happen to know quite a few.
    2. The plethora of content Sun, Java, MySQL, Microsoft, Oracle, and many other high-profile "framework sponsors" push out on various developer networks, such as MSDN, DevZone, OTN...
    3. Whatever the hell O'Reilly is making books about.
    4. Seminars and conventions, often made/endorsed/branded by computer publishers such as O'Reilly and aforementioned "framework sponsors".

  2. Mono? by headkase · · Score: 4, Informative

    I would suggest Mono as an important project. As Microsoft designed it, .net's common language runtime can be targeted from practically any language. .net is equivalent to a standard virtual machine that provides a standard environment (duh). By allowing code to leverage other code and perform this work independent of any particular programming languages they've created a large developer base that can easily be ported to Linux via Mono.
    8^p

    --
    Shh.
  3. Pick a language by wildman6801 · · Score: 2, Informative

    Pick a language and learn it to your best: I would suggest a language like Java or C, C++. The more you learn about your langauge that you choose the better you will get at it and the more you will be in the trend. I started learning C++ back in college and I use it. I learned it very well and I keep up to date with it changes.

    --
    A site cowboyneal will like http://www.freewebs.com/atpa/
  4. Trends? Um, no... by StarWynd · · Score: 3, Informative

    Your focus shouldn't be on tracking and staying on top of all the trends. It should be about finding ways to be more efficient and more productive with what you're already doing. Occasionally, I will accidentally run across a cool new tool or framework that's useful, but most of the time I have to go looking for it myself. If you find yourself saying "Surely there's a better way," someone else has probably said the same thing. And while you could scan books or search online for the answer, talking to someone else who has experienced the same thing is probably your best bet. Get involved with a local user's group for whatever language you're developing in. Ask questions, show up at the meetings and contribute back to the group. It's still good to track new trends, but this should be secondary. Just subscribe to a tech magazine or two or maybe watch some of the RSS feeds from sites that pertain to your work, but your best resource is the rest of the community.

  5. Slashdot by Alric · · Score: 3, Informative

    Honestly, being a regular on slashdot will keep you pretty current on the latest fads in the industry. For a specific technology, I recommend finding a few experts or "thought leaders" in that field who have blogs and reading whatever they're reading.

    Also, as others will say ad infinitum, focusing on the basics is much more important than trying new fads or styles.

  6. Re:Ignore them... by mrchaotica · · Score: 3, Informative
    Most CS instructors will cram down students' throats that if they concentrate on principles they can pick up any language/platform as if it's nothing at all. It's a lie, but that's what they say.

    Actually, it's not a lie. I'm a CS undergrad at GA Tech, and from classes I have experience in Scheme, Java, C (with UNIX), and Smalltalk. Anyway, I got a job this summer programming in a C++ .NET and ObjectARX environment using Visual Studio, even though I had absolutely zero prior experience with any of it.

    Long story short, it took me about a week to figure it all out. It was cake.

    They're planning to migrate their whole program to C# soon; I figure learning that language will take me about a day and a half.

    --

    "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

  7. Look at C++/CLI by Tarydon · · Score: 2, Informative

    The C++/CLI language looks interesting. You can download the spec from http://www.ecma-international.org/publications/sta ndards/Ecma-372.htm. Yes, it is Microsoft grown, but they seem to have some good people on the design team (Lippman, Sutter) and it's nothing at all like the mess that Managed C++ was. It's worth looking at if you want to keep abreast of 'current trends'.

  8. Java Posse by akuzi · · Score: 3, Informative

    > Suppose you wanted to stay on the forefront of Java based web development, what would you do?

    To keep up with what's happening in the Java world, I'd recommend listening to the excellent Java Posse podcast and as well as reading The Server Side.

  9. Re:Monked by Anonymous Coward · · Score: 1, Informative

    Again with the malicious code?

  10. books by devonbowen · · Score: 2, Informative

    My algorithm is to read Slashdot regularly to look for things that I haven't heard of (usually in the comments, not necessarily articles). When I see a new language or methodology that seems to have a few positive comments written about it, I find a definitive web site and download some pdfs, do some tutorials, or go to O'Reilly and read a book about it (a Safari subscription is nice for this). It works well. It takes some time and effort but I end up with in-depth knowledge (not just buzzwords) about pretty much everything that is relevant. Magazines and such are a total waste of time.

    Devon

  11. No tricks, just consistent hard work. by porsche911 · · Score: 5, Informative

    1. Plan on studying something new every 12-18 months.
    2. Don't just concentrate on technologies. Study Project Management, Emotional
        Maturity, Presentation skills and public speaking. Think of yourself as an
        investment, you want to hedge your down-side by making sure you have skills
        completely outside the particular situation you are in at any given time.
    3. Review yourself every 6 months or so. Are you stuck in a learning rut, continuing to
        read the same types of junky "Visual Basic in 21 nanoseconds" or are you actually
        challenging yourself?
    4. Review the basics every so often. Go back and read a deep book on analysis of
        algorithms or databases or language design.
    5. Try to push yourself out of your comfort zone every few years.
    6. Don't get too hung-up on the buzz-word du jure. 90% of them will last a millisecond
        in your career.
    7. Treat everyone you come into contact with as a teacher.

  12. Programming trends by ArmpitMan · · Score: 5, Informative

    You want to know the latest trends for Java-based web development? Fewer and fewer people are going to be doing Java-based web development in the future.

    Fuck trends. They're wrong. Every day the industry continues to stay with its current ridiculous technologies when vastly superior ones were invented decades ago infuriates me further. If it doesn't infuriate you, you're not paying close enough attention.

    My advice: read Lambda the Ultimate and Steve Yegge's blog. Endeavor to learn what the lambda calculus and referential transparency are. If you are sincerely interested in bettering yourself as a programmer and don't go find out who Alonzo Church was then so help me God I will kick you in the balls. Learn about SML and type inference. Learn about Haskell and monads. Learn about process calculi and Erlang. Learn about Lisp and code generation and domain-specific languages. Learn about Scheme and lexical closures and continuations. Learn about Smalltalk and what OO was really supposed to be. Learn about type theory and formalism and the Curry-Howard correspondence. Learn about Forth and Joy and how you can have a powerful, expressive language without even so much as a grammar. Learn about Intercal and Befunge and just how badly your choice of programming language can torture you. Learn about UML and Ruby on Rails and Seaside and agile programming and Java generics and Python generators. Learn about aspect-oriented programming, context-oriented programming and concept programming. Learn about multi-paradigm languages like OCaml or Oz. Learn about weird Lisp dialects with syntax like Rebol or Dylan.

    Realize that library design is language design. Realize that asynchronous programming with callbacks and explicit state in a world where lightweight coroutines were around in the days of fucking Simula in the 60s for Christ's sake is cruel and unusual torture. (Sorry, pet programming construct.) Realize that the programming language research community, while considering systems programming a solved problem and generally not interested in talking about human factors, is doing some genuinely promising work. Did you know that there are conc