Slashdot Mirror


What are Your Programming Goals?

Crutcher asks: "I've been walking the murky path to one day becoming a Systems Programmer, and I was wondering what other not-yet-gurus like myself saw as their ultimate goals, and why they choose those fields? Do we all want to hack kernels, or do more want to be UI Gurus, or Deamonic Masters? It would help if we (the proto-gurus) had clearer understandings of where we could go, and what it takes to get there." This is an interesting question. I've discovered however, that the more I learn about coding (including new paradigms and languages), the more my goals have changed. What are your thoughts on this?

5 of 350 comments (clear)

  1. Conan! What is best in programming? by Jamie+Zawinski · · Score: 4

    • Kraaash your enemies...
      see dem driffen before you...
      und hear de lamentations uf dere wimmin...
  2. Obfuscate the Hardware Paradigm by WillAffleck · · Score: 4

    Actually, my main goal in going into Systems Analysis/Programming was to only have to relearn half of what I knew every two years, instead of all of what I knew (when I did hardware).

    I try not to get to hung up on OS, or Programming Languages - they're just tools we use to provide frameworks for solutions. Each has it's quirks.

    To contribute to society - that's one of my goals. I used to want to code the best game simulations - somehow, that went out the window. Once you've got a bunch of money, that ceases to be such a big deal - so skip that as a motive.

    To design a system that, while not the most efficient or fastest, allows one to get one's job done in an elegant and robust fashion - that's what I like doing. I may not make the best wheel, but my wheels allow you to change the tires while driving and use bigger wheels with different treads. I've found my code being used by other people more than ten years later - because it just keeps working. Elegence, simplicity, robustness.

    The rest is all carp. A thousand years from now, all the things you think are important will be, at best, a joke.

    --
    Will in Seattle
  3. goals? what a silly idea... by TheDullBlade · · Score: 5

    I don't have goals in programming, except for specific projects. Goals are limiting, and only suited to the short term in such a dynamic field.

    I have values: it is good to become a better programmer, it is good to learn more mathematics (the better to create accurate computer models of problems), it is good to learn more about how people interact with machines and what they want from them, it is good to learn more about my own mind and how I learn and how I work... I could go on for pages describing what I value.

    The important thing is that general "goals as a programmer" are not worth having. Whole fields may become irrelevant by the time you master them, so you must always be learning. The programmer must be a generalist in principle, even though he spends a year or twelve with his main focus on one particular area, because any specialized field will eventually be made trivial by an advance in the state of the art (and the obvious reasons to delve into a particular area are that there's work to be done, you find the work interesting or profitable, and you think you can do it). Today's divisions into "interface design", "systems programming", "language design", "web scripting", "graphics engine programming", "hardware design", etc. (let alone narrow subdivisions like "Windows programmer" or "Playstation developer") are all arbitrary categories describing certain temporary conditions that must be dealt with. Twenty years from now, there will be a whole new set of programming tasks (though some of the names might be the same, the problems will be entirely different ones), and you'll probably still be programming. Prepare for it, by preparing for anything.

    'Intelligence is life's response of "I can do anything!" to a universe that threatens with everything.'

    -Frank Herbert in "Destination: Void" (quoted from memory; not exact)

    --
    /.
  4. Promote high-level languages by David+A.+Madore · · Score: 5

    My goal would be to make high-level languages (functional if possible) really usable - and really used.

    Why is it that in the year 2000 we're still writing our operating systems and most of our programs in C (or C++, which, although messy, is not truly high-level)? Why is it that garbage-collection has never truly come out of the closet? Why is it that Java is compiled in byte-code rather than native code - and why is it so slow? Why is it that no programming language that I know of is able to handle program invariants and proofs that are any bit more complicated than ("i is an integer") (nothing like "i is a power of 2" for example). Why is it that anyone who wishes to program anything still has to spend half of his time writing things like if ( retval == -1 ) { perror ("frobnicating"); exit (EXIT_FAILURE); }? Why is it that buffer overruns still exist?

  5. Aesthetics, elegance, and ongoing learning by TomatoMan · · Score: 5

    My goal as a programmer is to continually increase my fluency in

    1. Dividing complex tasks into manageable pieces
    2. Expressing those pieces elegantly in clean, aesthetically-pleasing, efficient code that expresses both the problem and its solution
    3. Using the new gained knowledge to increase my understanding of the world's problem sets so I get better at step 1

    I hope to get there by three main methods:

    1. Write a lot of code; write, use, trash, re-write better
    2. Study the masters; read Usenet; ignore the flames and trolls and learn from the gurus
    3. Keep a humble and respectful attitude

    I've been at it for 20 years, and am still learning every day. I get just as many thrills from it all today as I did when I started.


    TomatoMan
    --
    -- http://frobnosticate.com