Advice to a Junior in High School?

Discussion in 'Python' started by Howard Nease, Aug 25, 2003.

  1. Howard Nease

    Howard Nease Guest

    Hello, everyone. I would appreciate any advice that someone could give me on
    my future career path. Here is my situation:

    I am a bright Junior in a very well-respected private high school, taking
    almost all AP and accelerated classes. I am HIGHLY interested in technology,
    more specifically the field of Computer Science and software engineering. I
    have heard a whole lot about the fact that the market for software engineers
    nowadays is *HORRIBLE*, and that I should double major or perhaps go into a
    field of study in which I'm not very interested.

    I would be devastated were I to find the need to leave computer science. I
    love the subject, and I've wanted to be a computer scientist ever since I
    was 12 years old.

    Does anyone have any advice for me and my future? What should I study in
    college? Will the market for jobs get better? Do I have any hope at all of
    finding a decent-paying job in compsci? What languages do you suggest that I
    study (I'm already studying Python)?

    thank you very much for your help!

    --shn
    Howard Nease, Aug 25, 2003
    #1
    1. Advertising

  2. Howard Nease

    Kenny Tilton Guest

    Howard Nease wrote:
    > Hello, everyone. I would appreciate any advice that someone could give me on
    > my future career path. Here is my situation:
    >
    > I am a bright Junior in a very well-respected private high school, taking
    > almost all AP and accelerated classes. I am HIGHLY interested in technology,
    > more specifically the field of Computer Science and software engineering. I
    > have heard a whole lot about the fact that the market for software engineers
    > nowadays is *HORRIBLE*, and that I should double major or perhaps go into a
    > field of study in which I'm not very interested.


    By the time you graduate it will be a different world. There will be a
    shortage because everyone is being told the same thing you are. A glut
    arose because folks were being told the opposite. These same folks give
    up looking for a job in compsci after a month, you'll get a job as a
    waiter and look for a year. and you can settle for less because you love
    the work. the latter will also make you better at it than money chasers,
    and will help you interview better.

    btw, i would say this even if you were from a highly-disrespected inner
    city public school. :)


    --

    kenny tilton
    clinisys, inc
    http://www.tilton-technology.com/
    ---------------------------------------------------------------
    "Career highlights? I had two. I got an intentional walk from
    Sandy Koufax and I got out of a rundown against the Mets."
    -- Bob Uecker
    Kenny Tilton, Aug 26, 2003
    #2
    1. Advertising

  3. Howard Nease

    Kenny Tilton Guest

    Howard Nease wrote:
    > H What languages do you suggest that I
    > study (I'm already studying Python)?


    PS. Common Lisp

    --

    kenny tilton
    clinisys, inc
    http://www.tilton-technology.com/
    ---------------------------------------------------------------
    "Career highlights? I had two. I got an intentional walk from
    Sandy Koufax and I got out of a rundown against the Mets."
    -- Bob Uecker
    Kenny Tilton, Aug 26, 2003
    #3
  4. Howard Nease

    Sean Ross Guest

    "Howard Nease" <> wrote in message
    news:Ivw2b.1305$...
    > What should I study in college?


    Hi. Are you asking which areas in the field of computer science you should
    try to specialize in (take courses in)? Are you asking which comp. sci. (or
    non-comp.sci. courses) would be beneficial (for getting work, for rounding
    your knowledge, for making you happy, for all of the above and more)?

    What you should study in college may well depend on your chosen college's
    degree requirements. My university, for instance, requires us to take
    atleast 8 classes outside of our discipline (I chose to do a minor in
    philosophy, in order to meet that requirement).

    It's hard to say what you should study. What are your goals? What would you
    like to learn? What would you like to do? Do you want to be a computer
    scientist? a programmer? a software engineer? a network administrator? a
    security professional? a web-application developer, or something else?
    Depending upon what you want to do, what you should learn may differ.

    For the time being, you're still in high school, so let's start there. Take
    all of the math and science courses you can. Finite (discrete) mathematics,
    if it is offered, is particularly useful. If your school offers any kind of
    logic course, take that. If you're looking to be in management, business
    courses might be useful. Take literature courses (you'll have to write
    papers as you move further towards being a computer scientist, best get some
    practice writing now). But, most importantly, take what interests you!

    In university (or college), you can follow advice similar to that above.
    Especially, "take what interests you". Take any required maths, and, if you
    like, take any other discrete math courses. As for computer science courses:
    You'll likely have a core curriculum to follow for the first 2-3 years, so
    you may not have a lot of choice in which courses to take. In 3rd and 4th
    year you'll likely get to specialize more. If your school offers a compiler
    course, take it. Most of what you learn there is applicable in other
    domains. If your school offers an interface design course, take that. If
    your school offers software design courses, take those.

    Other than this, it's difficult to suggest courses. It depends on your
    interests and the courses that are offered. Are you interested in AI,
    A-Life, evolutionary computing? Are you interested in cryptography,
    security, networking? Are you interested in distributed or parellel
    computing? Again, "take what interests you".


    > What languages do you suggest that I study (I'm already studying Python)?

    Learn C (atleast, and maybe C++). Learn an assembly language. Learn Scheme
    (Lisp, Dylan, Haskell, ocaml, or some other functional programming
    language). Learn Prolog (or some other logic programming language). Learn
    Java. Learn Perl. Learn what interests you.

    I hope that was somewhat helpful,
    Sean
    Sean Ross, Aug 26, 2003
    #4
  5. Howard Nease

    Afanasiy Guest

    On Mon, 25 Aug 2003 22:57:44 GMT, "Howard Nease" <>
    wrote:

    >Hello, everyone. I would appreciate any advice that someone could give me on
    >my future career path. Here is my situation:
    >
    >I am a bright Junior in a very well-respected private high school, taking
    >almost all AP and accelerated classes. I am HIGHLY interested in technology,
    >more specifically the field of Computer Science and software engineering. I
    >have heard a whole lot about the fact that the market for software engineers
    >nowadays is *HORRIBLE*, and that I should double major or perhaps go into a
    >field of study in which I'm not very interested.
    >
    >I would be devastated were I to find the need to leave computer science. I
    >love the subject, and I've wanted to be a computer scientist ever since I
    >was 12 years old.
    >
    >Does anyone have any advice for me and my future? What should I study in
    >college? Will the market for jobs get better? Do I have any hope at all of
    >finding a decent-paying job in compsci? What languages do you suggest that I
    >study (I'm already studying Python)?


    I would make sure to consider a field, in a non-computer science, which
    allows/requires you to use your interest/skills in computer programming.

    I believe I chose the right words, so read them carefully. I don't think
    that leaves any questions of me. Your decision should be your decision.

    Languages...

    Whatever appeals to you, but that probably depends on what you want to do.
    Afanasiy, Aug 26, 2003
    #5
  6. Really hate to say this but....

    I agree with another post in that you should look into a real field
    where you might be able to use the computer 'hobby' aspects of it in
    your field. For instance, be a doctor such as an oconologist,
    radiologist, or ear-noste-throat. These are great, high paying
    positions that are becoming extremely computer intensive. I look at
    it from the standpoint of practicality.... you'll never want for a
    job since there has been a demand in most sections of the country for
    the last 30+ years, you'll get paid a ridiculous salary, and have a
    normal work week of 25 - 50 hours.


    Enjoy the Porchse, the yacht, and the time to focus your skills in
    programming.
    Jose Rodriguez, Aug 26, 2003
    #6
  7. Afanasiy <> wrote in message news:<>...
    > I think you
    > should do a lot of your own exploring. Consider as much as you can, no
    > matter what someone online says for or against it.


    Hear, hear: this is good advice!

    On a more personal note, when I was more or less your age I decided
    to do Physics, even if I knew very well that the job situation was a
    disaster. Now, it turns out that the situation is still a disaster and I
    have just decided to quit the field.
    I have found some people telling me that I made the bad choice and that
    I should have chosen a more marketable field. I don't think so.
    I did what I wanted to do: whereas most of the people do for
    all their life a job they dislike, I at least avoided that for
    part of my life. I had the opportunity of doing something and I took
    it.

    If you have the chance of having something you like to do, don't throw
    it away to follow the advice of the others. Your life is your responsability.

    Michele Simionato, Ph. D.

    http://www.phyast.pitt.edu/~micheles
    --- Currently looking for a job ---
    Michele Simionato, Aug 26, 2003
    #7
  8. Celebrity advice (was: Advice to a Junior in High School?)

    In article <>,
    Afanasiy <> wrote:
    .
    .
    .
    >I would also recommend not giving much weight to anything from ESR.

    .
    .
    .
    What's going on *there*? Eric makes plenty of mistakes,
    and he's apparently stubborn and biased in many cases; on
    the other hand, while I disagree with him profoundly on
    some technical choices, and I've been told of all sorts
    of personal failings he exhibits, in my experience he's
    always been willing to correct errors when presented with
    evidence. So: are you saying that he simply says too much
    and too early, and consequently is unreliable because he's
    outside his domain of expertise, or do you perceive a deeper
    problem with his advice?

    I ask in part because, as near as I can tell, you were the
    first to mention him in this thread. It appears that you
    regard his output as particularly hazardous.
    --

    Cameron Laird <>
    Business: http://www.Phaseit.net
    Personal: http://phaseit.net/claird/home.html
    Cameron Laird, Aug 26, 2003
    #8
  9. Howard Nease

    Robert Kern Guest

    In article <Ivw2b.1305$>,
    "Howard Nease" <> writes:

    [snip]

    > Does anyone have any advice for me and my future? What should I study in
    > college?


    Well, in addition to what everyone else has said, I would recommend
    taking some classes that hone your ability to analyze numerical data.
    There ought to be classes from a variety of departments at your college
    that can teach you this skill. It's likely *one* of them will catch your
    interest. In my experience, that core skill is easily transfered between
    fields. Once you learn how to handle the numbers, it doesn't matter if
    they are temperature readings or stock prices.

    That skill will open a large number of career paths where your CS skills
    and interests are respected and used. Many of them pay well, too.

    Of course, that doesn't help you in the slightest if you're just not
    interested in those fields. Use your college experience to explore (lots
    of things really, but let's focus on the career aspects here ;-)). When
    you visit colleges, try to ask the older kids if they had the
    opportunity to "shop around" and discover what they really wanted to do.
    To get you started, I'll tell you right now that Caltech is not such a
    place.

    > Will the market for jobs get better?


    Probably. Six years is a *long* time for the computer world.

    For that matter, six years is a long time for a person your age, too.
    I'm quite sure you will be a very different person when you graduate
    from college. Trust me: I'm six years ahead of you. ;-)

    And for now, forget us old fogies, go out, and have some fun, goddammit!

    --
    Robert Kern


    "In the fields of hell where the grass grows high
    Are the graves of dreams allowed to die."
    -- Richard Harter
    Robert Kern, Aug 26, 2003
    #9
  10. Howard Nease

    Sean Ross Guest


    > "Sean Ross" <> writes:
    >
    > > (Lisp, Dylan, Haskell, ocaml, or some other functional programming
    > > language).

    >
    > As an added bonus, studying many langugas reduces the chances of you
    > misclassifying them, as has been done above :)


    Okay. "..., or some other language that supports functional programming
    style)" (which would include those mentioned, and many more besides). For
    instance,

    http://directory.google.com/Top/Computers/Programming/Languages/Functional/?tc=1
    Aleph (1)
    BETA (8)
    Caml (2)
    Clean (6)
    Dylan (19) <
    Erlang (313)
    Haskell (48) <
    Leda (5)
    Lisp (378) <
    Logo (46)
    Lua (18)
    Mercury (4)
    Miranda (10)
    ML (35)
    Mozart (2)
    Objective Caml (5) <
    Pliant (16)
    POP-11 (6)
    REBOL (95)
    Scheme (127)
    Sisal (12)


    Whatever.
    Sean
    Sean Ross, Aug 26, 2003
    #10
  11. "Sean Ross" <> writes:

    > Okay. "..., or some other language that supports functional programming
    > style)" (which would include those mentioned, and many more besides). For
    > instance,
    >
    > http://directory.google.com/Top/Computers/Programming/Languages/Functional/?tc=1
    > Aleph (1)
    > BETA (8)
    > Caml (2)
    > Clean (6)
    > Dylan (19) <
    > Erlang (313)
    > Haskell (48) <
    > Leda (5)
    > Lisp (378) <
    > Logo (46)
    > Lua (18)
    > Mercury (4)
    > Miranda (10)
    > ML (35)
    > Mozart (2)
    > Objective Caml (5) <
    > Pliant (16)
    > POP-11 (6)
    > REBOL (95)
    > Scheme (127)
    > Sisal (12)


    They seem to have forgotten Python.
    Jacek Generowicz, Aug 26, 2003
    #11
  12. Howard Nease

    Terry Reedy Guest

    "Howard Nease" <> wrote in message
    news:Ivw2b.1305$...
    > have heard a whole lot about the fact that the market for software

    engineers
    > nowadays is *HORRIBLE*, and that I should double major or perhaps go

    into a
    > field of study in which I'm not very interested.


    The demand for software engineers has fluctuated up and down, in
    various industries and regions, for decades. An article in the
    current Business 2.0 on the 'coming labor shortage' points out that
    you are part of the first generation in America to be numerically
    smaller than your parents generation. In ten years, when boomers have
    or are retiring, there will probably be a relatively shortage of tech
    workers.

    TJR
    Terry Reedy, Aug 26, 2003
    #12
  13. "Howard Nease" <> wrote in message news:<Ivw2b.1305$>...
    > Hello, everyone. I would appreciate any advice that someone could give me on
    > my future career path. Here is my situation:
    >

    ....
    > Does anyone have any advice for me and my future? What should I study in
    > college? Will the market for jobs get better? Do I have any hope at all of
    > finding a decent-paying job in compsci? What languages do you suggest that I
    > study (I'm already studying Python)?
    >


    I would say that more important than learning any particular language
    is learning the theoretical aspects of the job, including the math.
    Languages change, the theory will benefit you all your life.

    That said, I agree that you should learn and study a variety of
    languages. Each carries with it a particular way of thinking about a
    problem, and once you understand that way of thinking you can apply it
    elsewhere.

    As for a job in CompSci, I'd say if you were in it for a steady job,
    doing the same sort of thing for years, getting good pay without too
    much work, you're really in the wrong field. Amazingly, a lot of
    people working today have that attitude. Many more are trying to
    figure out where their jobs went.

    You sound like someone with a real love for the field and a desire to
    keep learning and improving yourself. If that's the case, you'll do
    fine.
    A. Lloyd Flanagan, Aug 26, 2003
    #13
  14. Howard Nease

    Josh Guest

    Howard Nease <> wrote:
    ....
    > Does anyone have any advice for me and my future? What should I study in
    > college? Will the market for jobs get better? Do I have any hope at all of
    > finding a decent-paying job in compsci? What languages do you suggest that I
    > study (I'm already studying Python)?


    I'd suggest C++, because it's complex and hideous, and you'll probably
    be dealing with complex hideous things in the software industry--so
    it's best to start early.
    Josh, Aug 26, 2003
    #14
  15. Howard Nease

    d.w. harks Guest

    On Monday 25 August 2003 05:57 pm, Howard Nease wrote:
    > Hello, everyone. I would appreciate any advice that someone could give me
    > on my future career path. Here is my situation:
    >
    > I am a bright Junior in a very well-respected private high school, taking
    > almost all AP and accelerated classes. I am HIGHLY interested in
    > technology, more specifically the field of Computer Science and software
    > engineering. I have heard a whole lot about the fact that the market for
    > software engineers nowadays is *HORRIBLE*, and that I should double major
    > or perhaps go into a field of study in which I'm not very interested.
    >
    > I would be devastated were I to find the need to leave computer science. I
    > love the subject, and I've wanted to be a computer scientist ever since I
    > was 12 years old.
    >
    > Does anyone have any advice for me and my future? What should I study in
    > college? Will the market for jobs get better? Do I have any hope at all of
    > finding a decent-paying job in compsci? What languages do you suggest that
    > I study (I'm already studying Python)?
    >
    > thank you very much for your help!
    >
    > --shn


    As a junior in high school, rather than worrying so much about *what* to study
    in college, I'd suggest carefully looking at *where* to study. A Bachelor of
    Science in Computer Science from one school won't be the same as another --
    try to think of what topics you're most interested in and find schools that
    have professors who specialize in those fields. They'll end up helping you
    decide what to study as you go, because they'll be able to see what your
    interests (and talents) are. (Something that your words on a mailing-list
    don't identify all that well!)

    For now, keep all your grades up and start visiting colleges. Don't sweat the
    other stuff just yet...the school you choose will have a program laid out,
    and you'll choose electives within it, but it'll be pretty straightforward
    and will give you an opportunity to explore and figure out if/what you want
    to study in grad school.

    Don't forget to enjoy the stuff you're learning, and don't sweat the job
    market thing. If you have the ability and the love of CS, supporting yourself
    will come along in ways you can never plan for. Just do what you love, and
    you'll be amazed at what happens.

    dave

    --
    d.w. harks <> http://dwblog.psys.org
    d.w. harks, Aug 26, 2003
    #15
  16. Howard Nease

    John J. Lee Guest

    "Terry Reedy" <> writes:

    > "Howard Nease" <> wrote in message
    > news:Ivw2b.1305$...
    > > have heard a whole lot about the fact that the market for software

    > engineers
    > > nowadays is *HORRIBLE*, and that I should double major or perhaps go

    > into a
    > > field of study in which I'm not very interested.

    >
    > The demand for software engineers has fluctuated up and down, in
    > various industries and regions, for decades. An article in the
    > current Business 2.0 on the 'coming labor shortage' points out that
    > you are part of the first generation in America to be numerically
    > smaller than your parents generation. In ten years, when boomers have
    > or are retiring, there will probably be a relatively shortage of tech
    > workers.


    Who knows? There are plenty of clever, hard-working people in India
    who speak good English. It would be a good thing if more computing
    jobs moved there, IMHO, and that certainly seems to be happening to an
    extent already.

    A lot depends on the location and degree of horror of world events, I
    fear. Just to cheer you up ;-/


    John
    John J. Lee, Aug 26, 2003
    #16
  17. Howard Nease

    Stan Graves Guest

    "Howard Nease" <> wrote in message news:<Ivw2b.1305$>...
    > I would be devastated were I to find the need to leave computer science.


    I suppose we should just chalk that up to the angst of a 17 year old.
    There is nothing magical, mystical, or more enlightening about
    computer science compared with any other profession, vocation or
    avocation. If you really would be "devastated" to not be a computer
    scientist, I would recommend some counseling to address your
    perceptions of your worth and value as a person.

    > I
    > love the subject, and I've wanted to be a computer scientist ever since I
    > was 12 years old.


    I've changed professional aspirations at least a dozen times since I
    was 12 years old. I've actually changed professions 6 times since I
    was 12 years old.

    > Does anyone have any advice for me and my future?


    Yes. Volunteer in your community, read to children, talk to your
    grandparents and find out where you came from, visit art galleries,
    learn to cook, be a good listener, support your local animal shelters,
    always stop and buy lemonade from kids in the neighborhood, read one
    really good book a year - start with Shakespeare or Mark Twain, learn
    to dance, attend at least one ballet or symphony a year, take a nap at
    least once a month, stretch before exercising, tip generously, travel,
    spend less than you earn, and finally - understand that what you do
    for a living does not define who you are as a person.

    > What should I study in
    > college?


    You should learn to think and to learn in college.

    Focus on problem decomposition - there are no interesting problems
    that can be solved in one bite...everything has to be broken down into
    smaller pieces.

    Study literature - I have yet to see a single computer scientist who
    can manipulate symbols as well as Shakespeare.

    Take a music appreciation class. The development of musical theory
    and composition provides a good parallel for the understanding of
    complex systems interactions. I have yet to meet a single computer
    scientist who can manage complex systems architecture as well as
    Beethoven.

    > Will the market for jobs get better? Do I have any hope at all of
    > finding a decent-paying job in compsci?


    The market is going to be different than it is today. Better is a
    judgment that I do not care to make. The advice I received was to get
    a good education and increase your odds of remaining gainfully
    employed. It was, and still is, good advice.

    > What languages do you suggest that I
    > study (I'm already studying Python)?


    I'd suggest English. The ability to communicate effectively is
    probably more important than any technical skill.

    If you get tired of studying English, then you might try German. I
    love the structure of the Germanic languages. If you live in the
    southwest, perhaps Spanish would be a good language to study.

    If you still insist that specific topics in computer science have any
    more value than something else, I'd recommend the following:

    - Pick a text editor. Learn it inside and out. Use it for
    everything.
    - Pick a unix shell. Learn it inside and out. Use it for everything.
    - Use a source code control system for everything - no matter how
    large or small the project.
    - Use make for every project, no matter how small.
    - Favor "standards" over proprietary tools.
    - Learn to write web pages...using the standards!
    - Learn C.
    - Learn C++. Learn it both as an OO language, and as a proceedural
    language.
    - Learn one new language a year.


    --Stan Graves
    Stan Graves, Aug 26, 2003
    #17
  18. Howard Nease

    Terry Reedy Guest

    "John J. Lee" <> wrote in message
    news:...
    > "Terry Reedy" <> writes:
    > > The demand for software engineers has fluctuated up and down, in
    > > various industries and regions, for decades. An article in the
    > > current Business 2.0 on the 'coming labor shortage' points out

    that
    > > you are part of the first generation in America to be numerically
    > > smaller than your parents generation. In ten years, when boomers

    have
    > > or are retiring, there will probably be a relatively shortage of

    tech
    > > workers.

    >
    > Who knows? There are plenty of clever, hard-working people in India
    > who speak good English. It would be a good thing if more computing
    > jobs moved there, IMHO, and that certainly seems to be happening to

    an
    > extent already.


    The same article pointed out that 1) much of the outsourcing is lower
    level call-center jobs; 2) programmer salaries are already rising in
    India because most of the good talent is already employed; 3) the
    shortage anticipated is greater that the anticipated extra supply in
    India, China, etc. Who know...

    TJR
    Terry Reedy, Aug 27, 2003
    #18
  19. Stan Graves wrote:
    > [Lots of good advice snipped]


    Wow, this is really good advice on becoming a decent human being! I
    could not have put it as well or succinctly. This is much better advice
    for someone finishing high school soon than on any specific technical
    direction. It reminds me a bit of Robert Heinlein's quotation: "A human
    being should be able to change a diaper, plan an invasion, butcher a
    hog, design a building, conn a ship, write a sonnet, balance accounts,
    build a wall, set a bone, comfort the dying, take orders, give orders,
    cooperate, act alone, solve an equation, analyze a new problem, pitch
    manure, program a computer, cook a tasty meal, fight efficiently, die
    gallantly. Specialization is for insects".
    http://www.everything2.com/index.pl?node=specialization is for insects

    We live in a beautiful and mysterious world -- seemingly infinite in
    time and space and meaning, perhaps with multiple nested levels beyond
    our current understanding (individual or collective). Stan's advice
    touches on how to come to grips with these deeper issues indirectly by
    engaging deeply in the human experience through the ways he outlines
    (volunteering, compassion, art, dance, music, frugality, etc.) to grow
    some deep roots to rely on when branching out into a specialization like
    computer science or Python internals.

    One good resource in the area towards career understanding is Richard
    Bolles "What Color is Your Parachute".
    http://www.amazon.com/exec/obidos/tg/detail/-/1580082424/103-2338008-0446217?v=glance
    and his related books on Life/Work planning.

    Still, I might add, from a technical side, become aware of Moore's Law
    if you want to try to predict where the computer field is going to go
    over the course of your career. Computers have increased in computing
    capacity for a constant cost on the order of close to one million times
    over the last thirty or so years. In the next twenty years or so they
    will probably again increase by a factor of about another million from
    where they are now.
    http://www.transhumanist.com/volume1/moravec.htm
    Ever more sophisticated virtual reality simulations and robotics (e.g.
    cars that drive themselves just for one application) will be just a few
    of the sorts of possibilities this kind of computing power will enable,
    as well as all sorts of things we can barely imagine now. Cars can even
    drive themselves now using laptops, but they will be presumably even
    safer and more capable then...
    http://www.ri.cmu.edu/labs/lab_28.html
    On Moore's Law and exponential growth see for example:
    http://www.kurzweilai.net/articles/art0134.html?printable=1
    Moore's Law type growth is one reason sophisticated languages like
    Python are now succesful (over using all C/C++ all the time) and may be
    ever more succesful as time goes by. As a corollary, today's level of
    desktop computing may well cost one-millionth of what it does in twenty
    years, and so may be effectively free (well, a penny) and so may be
    embedded everywhere (so studying embedded sytems might be useful, and
    for example, learning the computer language Forth might be relevant).

    Also, to elaborate on Stan's suggestion to study literature, read lots
    of things (including, but not limited to, science fiction). For one
    optimistic view of the future, see James P. Hogan's writings, especially
    "Voyage from Yesteryear".
    http://www.jamesphogan.com/books/voyage/baen99/titlepage.shtml
    I always return to that novel and his other writings as a way to regain
    some hope for the future. And for a cyberpunkish vision, try "The
    Diamond Age" by Neal Stephenson.
    http://www.amazon.com/exec/obidos/tg/detail/-/0553380966/102-9187646-8303318?v=glance
    But don't skimp on other classics, from "The Machine Stops" to "The
    Skills of Xanadu".

    It's quite possible in twenty years that much of your work in computing
    may be almost inseperable from nanotechnology matter replicator
    programming (i.e. your programs might compile to the hardware).
    Self-replicating space habitats made easy by related technological
    advances in computing and materials fabrication may then well produce
    trillions of Earth's worths of living space around our solar system.
    http://www.luf.org/
    Those sort of possibilities realizeable through dedication and
    commitment of young people like yourself (as well as oldsters :) make
    all this current fighting over oil and water and land and weapons all
    seem so childish and outmoded as a civilization... Hogan's vision of a
    universe of plenty if we can just cooperate and show compassion and try
    to avoid living in fear is a good one to embrace. Choices by millions of
    people such as yourself will shape whether and how much and for whom the
    future heads in this direction.

    On the science front, read anything by Freeman Dyson (like "Disturbing
    the Universe") because he is a very decent human being as well as
    citizen-scientist. And of course, read more broadly than that --
    biographies, "Harry Potter", history, and so on. Two useful historians
    to read include:
    "A People's History of the United States"
    http://www.howardzinn.org/
    and "Lies My Teacher Told Me: Everything Your American History Textbook
    Got Wrong"
    http://www.uvm.edu/~jloewen/
    The concepts in these books may well shape the US political spectrum in
    the next couple of decades, and our technosphere may well then be
    reconstructed to reflect these changing social values. See also,
    "Autonomous Technology: Technics-out-of-Control as a Theme in Political
    Thought" as it grapples directly with this issue of technological
    development reflecting social values (it's kind of dry, but some of his
    other writings may be more accessible).
    http://www.rpi.edu/~winner/
    A computer language like Python (as opposed to C++) in a way reflects a
    different mindset about accessability and changeability (see Guido's
    "Computer Programming for Everybody")
    http://www.python.org/doc/essays/ppt/acm-cp4e/
    in the same way that local solar panels or home biomass fuel cells or
    better home insulation alter the political power landscape as opposed to
    large centralized nuclear or coal power plants or oil tankers. Always be
    aware that the technological systems you build reflect your values. It's
    kind of not a surprise to me that Python came from the Netherlands
    (progressive social system) or Smalltalk from sort-of-hippies in
    California :) or GNU/Linux from Finland (well, OK, and RMS/GNU in
    Boston post-MIT, which sort of wrecks that analogy :).

    And beware the PhD pyramid scheme. See a comment by the Vice Provost of
    Caltech on the state of science jobs today as testimony to Congress:
    http://www.house.gov/science/goodstein_04-01.htm
    In short, Prof. Goodstein says because of this focus on the PhD in US
    science, much US education and educators down to the high school level
    are somewhat inadequate to the task of imparting useful skills for other
    than those heading to do the most elite abstract research, unlike say
    the technical education available in some of Europe.

    An excerpt from that page: "The problem, to reiterate, is that science
    education in America is designed to select a small group of elite
    scientists. An unintended but inevitable side effect is that everyone
    else is left out. As a consequence of that, 20,000 American high schools
    lack a single qualified physics teacher, half the math classes in
    American schools are taught by people who lack the qualifications to
    teach them, and companies will increasingly find themselves without the
    technical competence they need at all levels from the shop floor to the
    executive suite. To solve this problem will take nothing less than a
    reform of both education and society. We must have as our goal a nation
    in which solid scientific education will form the basis of realistic
    career opportunities at all levels, in industry, government and in
    education itself, from kindergarten to graduate school. As long as we
    train a tiny scientific elite that cares not at all about anyone else,
    and everyone else wears ignorance of science and mathematics as a badge
    of honor, we are putting our future as a nation and as a culture in deep
    peril."

    I'm not saying don't get a CS PhD someday down the road to realize a
    dream of becoming a computer scientist if that is what you want
    (although please understand the difference between a software developer
    and a mathematician who studies algorithms and how that relates to the
    courses you take and universities you choose to attend) -- just
    understand what you are getting yourself into and how that PhD system
    has distorted science and technical education in the US at present (and
    that link above explains why in some detail).

    Also, on the issue of volunteerism Stan raise, contributing early and
    often to various open source / free software projects that are of
    interest to you (such as contributing to Python) is a way to both gain
    visibility in the computer world as well as to leave a meaningful legacy
    behind no matter where your career and life takes you. Obviously, get
    your parent(s)'s or guardian's permission first if legally or morally
    needed.

    All the best.

    --Paul Fernhout
    http://www.pointrel.org




    -----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
    http://www.newsfeeds.com - The #1 Newsgroup Service in the World!
    -----== Over 100,000 Newsgroups - 19 Different Servers! =-----
    Paul D. Fernhout, Aug 27, 2003
    #19
  20. Howard Nease

    Tom Plunket Guest

    Howard Nease wrote:

    > I have heard a whole lot about the fact that the market for
    > software engineers nowadays is *HORRIBLE*...


    You could go to work in the video game industry. Like most
    entertainment industries it fares pretty well especially when
    there's a downturn in society.

    I've been a video game programmer for seven years. It's a lot of
    work and not a lot of money, but it feels cool to me to work on
    the programs that people use *after* work. ;) We make the
    software that people choose to use individually.

    > I would be devastated were I to find the need to leave computer
    > science.


    There will always be a call for programmers. The key to securing
    yourself in whatever position you want to be in is simply to be
    better than everyone else around you at that role. Study hard,
    go after internships while in college (or even before, I recently
    had a 16-year old intern in programming who was hot-shit), and
    absorb everything you can.

    Learn Python, learn C++, learn Lisp. Understand what you like
    and don't like about each of these languages.

    Good luck,
    -tom!

    --
    There's really no reason to send a copy of your
    followup to my email address, so please don't.
    Tom Plunket, Aug 28, 2003
    #20
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Asun Friere
    Replies:
    1
    Views:
    496
    Paul Boddie
    Aug 27, 2003
  2. Peter Hansen
    Replies:
    23
    Views:
    868
    Anton Vredegoor
    Sep 5, 2003
  3. Gerrit Holl
    Replies:
    16
    Views:
    615
    Tom Plunket
    Aug 29, 2003
  4. Asun Friere
    Replies:
    0
    Views:
    479
    Asun Friere
    Aug 28, 2003
  5. Michele Simionato
    Replies:
    2
    Views:
    384
    Jacek Generowicz
    Sep 1, 2003
Loading...

Share This Page