FIRST, it is OFF-TOPIC, try "comp.programming" instead.
SECOND, my answer is OFF-TOPIC as well, but i want to help.
Sorry this isn't directly concerning a programming language but I
wanted to reach real programmers. I am in college right now and am not
really interested in investing 3 more years of my life for a Bachelors
degree. I know that I can learn more about computer programming if I
spent the time over the next 3 years reading books and programming at
my own pace rather than an instructors pace, as well as not needing to
take so many electives, and courses unrelated to programming. I would
also save a ton of money and time. The benefits to not finishing
college and just learning myself a overwhelming, and there seems to be
only one problem.
YES, you are right, you can learn much-more about progamming by
learning it on your own + doing OpenSource projects. college is really
a waste of time. 95% of the colleges & nearly 99% of the
education-system ruin persons of their talent & expertise. i did B.Sc
(with comp app.) in sesion 2000-03 & left this field entirely as i
hated what my college taught me like BASIC, DOS, Java, RDBMS etc etc. i
landed into "Selling" & became a salesman for Standard Chatrered bank,
after that i sold water-purifiers for Eureka-Forbes. One day, in 2005
after 2 years, i was watching "Hackers" at HBO & was very-much
impressed by the *individual talents* shown in the movie + the *group*
of friends shown there. i never had any friends in the college.
everyone was just pure selfish, doing his own stuff only & i did my
graduation on a single bench, alone, lonely, nobody liked me. i always
thought programming assumes no-friends. i knew very well that Hollywood
movies are not like "Indian" movies, they are practical men, they
reflect the reality of life e.g. watch "from hell", "the insider", "in
good company", "spy game", "the pianist", "the secret window", "the
unorganised crime" etc. what really hit me hard was that life of a
graduate was really very *different* from what i lived & most shocking
truth was the programming subjects they have shown.
that day, with the very-vague idea of what programming is, i left
"selling" & started to Google the word "programming". for the 1st time
in my life i saw the words "Common Lisp", "Scheme", "Perl", "GNU",
"String.h" (yeah, i did 'C' in college & they never told me what is
"String.h" :-( now it is the end of 2006, using Debian since Dec 2005,
now i have good knowledge of programming langugaes, learnt Common Lisp,
know something about softwares, Hacking, comfortable with Datbases &
Assembly & presently learning modern C++. i am in love with the Hacker
culture
NOW, why the HECK.... i am telling you this? It is because i did not
get any Masters degree ( as i told you i left the field) Since i do not
have any Masters degree, i am feeling a lot of trouble in getting a
job. i can not apply for nearly 70% of the jobs in India, a Masters
degree is required for applying & if you do apply then employers will
simply reject you (except 1 or 2 who will take your experience
seriously). So i am left with 30% where they accpet a Bachelor's
degree, the one i have, + 2-3 years of project experience & i have
found only 1% employers do not require any degree, they want expertise
but remember that they are just 1% of the entire market, Hence you can
have an idead of where you will stand without a Bachelors degree. I
amnot aware of the situation in your country but most of the time i
have found this to be same across the globe. I know i will get a job
after doing some OpenSource projects but trust me that is really very
troublesome. i have seen here people getting 3000-5000 INR (INdian
Rupees) less than their colleagues just because they dont have a
Masters degree even though they are working together, even they have
same designation. NO, I am not scaring you away, if you have a
Bachelor's degree, then, it happens only in the beginning, after 5
years things go smooth. If you dont do any Bachelors then you will be
rejected by 99% of the employers. well, if you want to run your
business, then go ahead, you dont need a degree for that but you need
business acumen. i recommend doing a "Software Engineering" degree
rather than doing a simple Bachelors. it will increase the chances of
your employment.
Will I still be competitive in the job market without a degree?
If you go on your own you will know more than the person having a
degree but that is not what employers want at 1st place, they want a
degree at 1st place & they want your knowledge & expertise at 2nd place
:-(. i think industry has this fucking situation because of "pointy
haired bosses". (1)
Would I be less likely to succeed in the programming field without a degree,
even if I knew more than someone with a degree?
what do you mean by success here? i have 4 different meanings:
successful programmer meaning # 1: you are a successsful programmer at
a company because just after 2 years they raised your salary & after 4
you are project-Manager there. for this kind of success you deadly need
"Bachelors + Masters" degree. Pointy-haired bosses (a.k.a fucking
morons) take Masters as a measure of a specialised, more powerful &
focussed programmer. after 10 years you are the generl Manager drawing
6 figure salary. you are a successful programmer.
successful programmer meaning # 2: you do not have any degree but you
have run successful OpenSource projects & today, after 10 years,
because of your powerfull programming skills, you are known as one of
the precious Hackers & one of the most better Project Managers of Open
Source projects & you are still working as Sr. Software Developer at
XYZ as you never got sometime improve the skills nedded to surge ahead
on your job & XYZ is considering to put you on cost-reduction list. you
are a successful programmer.
successful programmer meaning # 3: You start a start-up with some of
your friends,do hell-lot of work, 70% of friends gave up in the middle
but still other & you work ridiculously hard for your software & after
4 years Google wants to purchase your software for only $40 million.
you are a successful programmer.
successful programmer meaning # 4: i will not explain it, i hope you
will get an idea. you do contract work with companies & also directly
with customers & fix their problems. after 4-5 years you are earning a
six figure income. you are a successful programmer.
Can I please have your thoughts on this, Thank you
i will sum up & add some things here, step by step:
1.) *DO* get a degree.
2.) If you can, get a Software Engineering degree rather than a simple
Bachelors
3.) make sure you do at leat 1 Open Source project, to get a feel of
real-coding.
4.) C & C++ are different langugaes, you dont need the one, if you want
to learn the other.
5.) never forget "Common Lisp", it is the red-pill (watched "The
Matrix"?)
6.) today, right now, go, sorry.. RUN & order or buy Debian, Fedora
Core or one of the BSDs, install it, run it, live with it, eat with it,
dream with it. you will get a decade ahead from 90% your classmates &
professional programmers.
7.) check these links:
http://www.eskimo.com/~scs/cclass/progintro/top.html
http://www.gnu.org/gnu/thegnuproject.html
http://catb.org/~esr/faqs/hacker-howto.html
http://www.paulgraham.com/hiring.html
http://www.catb.org/~esr/writings/cathedral-bazaar/hacker-history/
8.) Learn Martial-Arts and/or Guitar
9.) Watch these movies (at least): "The Matrix", "Hackers", "Swordfish"
10.) Read SF (Science-Fiction) novels, e.g. to begin, read: "the man
who sold the moon", "altered carbon", "snow crash" etc.
9.) hey check my blog too
-- arnuld
http://arnuld.blogspot.com
(1) for pointy-haired bosses see:
http://www.paulgraham.com/icad.html