Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Python > Advice to a Junior in High School?

Reply
Thread Tools

Advice to a Junior in High School?

 
 
Jacek Generowicz
Guest
Posts: n/a
 
      08-26-2003
"Sean Ross" <(E-Mail Removed)> 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/Comp...nctional/?tc=1
> Aleph (1)
> BETA (
> Caml (2)
> Clean (6)
> Dylan (19) <
> Erlang (313)
> Haskell (4 <
> Leda (5)
> Lisp (37 <
> Logo (46)
> Lua (1
> 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.
 
Reply With Quote
 
 
 
 
Terry Reedy
Guest
Posts: n/a
 
      08-26-2003

"Howard Nease" <(E-Mail Removed)> wrote in message
news:Ivw2b.1305$(E-Mail Removed)...
> 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


 
Reply With Quote
 
 
 
 
A. Lloyd Flanagan
Guest
Posts: n/a
 
      08-26-2003
"Howard Nease" <(E-Mail Removed)> wrote in message news:<Ivw2b.1305$(E-Mail Removed)>...
> 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.
 
Reply With Quote
 
Josh
Guest
Posts: n/a
 
      08-26-2003
Howard Nease <(E-Mail Removed)> 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.
 
Reply With Quote
 
d.w. harks
Guest
Posts: n/a
 
      08-26-2003
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 <(E-Mail Removed)> http://dwblog.psys.org


 
Reply With Quote
 
John J. Lee
Guest
Posts: n/a
 
      08-26-2003
"Terry Reedy" <(E-Mail Removed)> writes:

> "Howard Nease" <(E-Mail Removed)> wrote in message
> news:Ivw2b.1305$(E-Mail Removed)...
> > 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
 
Reply With Quote
 
Stan Graves
Guest
Posts: n/a
 
      08-26-2003
"Howard Nease" <(E-Mail Removed)> wrote in message news:<Ivw2b.1305$(E-Mail Removed)>...
> 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
 
Reply With Quote
 
Terry Reedy
Guest
Posts: n/a
 
      08-27-2003

"John J. Lee" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> "Terry Reedy" <(E-Mail Removed)> 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


 
Reply With Quote
 
Paul D. Fernhout
Guest
Posts: n/a
 
      08-27-2003
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?...0for%20insects

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...46217?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/a...ml?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/voy...itlepage.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...03318?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! =-----
 
Reply With Quote
 
Tom Plunket
Guest
Posts: n/a
 
      08-28-2003
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-****), 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.
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Re: Celebrity advice (was: Advice to a Junior in High School?) Peter Hansen Python 23 09-05-2003 03:11 PM
Re: Celebrity advice (was: Advice to a Junior in High School?) Michele Simionato Python 2 09-01-2003 09:24 AM
OT: Celebrity advice (was: Advice to a Junior in High School?) Gerrit Holl Python 16 08-29-2003 06:10 AM
Re: Celebrity advice (was: Advice to a Junior in High School?) Asun Friere Python 0 08-28-2003 12:50 AM
Re: Celebrity advice (was: Advice to a Junior in High School?) Asun Friere Python 1 08-27-2003 12:01 PM



Advertisments