levselector.com New York
home > Online Tutors and FAQs Email

Online Tutors and FAQs
On this page:
Why to learn ahead of others
What, how much, when, how to
What works for me
Online Books
Online tutorials and FAQs
More tutorials
New Technologies
Links to Tests
Why to learn ahead of others home - top of the page - email

Why some programmers are paid 10 times more than others?

Is it degree? Experience? Training? Ability to work hard? Vision? Well, there are many factors.  But here is one which I truly believe is the absolute "must have" skill.  It is

the skill to learn FAST and BY YOURSELF.

As a programmer you are spending a good share of your working time on grinding through APIs, man-pages, Internet FAQs, tutorials, books, magazine articles, etc.

I bet you were many times in a situation when you were starting a new project or a new job - and had to make something to work in just several days - something you never touched before.  Your manager was all over you demanding results. In situations like that

if you don't have a skill to learn new things fast - you may easily fall behind and even get fired.

On the positive side, if you have this skill - you can easily get ahead of the crowd. You will feel much better about yourself.

You will get internal piece and feeling of security.

Why security? Well, as you know the technology is changing with the speed of a chicken running from you.  Just several years ago everybody was looking for PowerBuilder or Delphi programmers.  Java didn't exist 5 years ago.  Today Java programmers are in great demand.  What will be in demand 2 years from now?  Wireless technologies, may be? I don't know.  But I do know that

what you will need tomorrow doesn't exist today.

And if you want to keep your job (or even get ahead) - you have to recognize and learn new technologies as they appear and start dominate the market.

What, how much, when, how to home - top of the page - email

Now, once you agree that you have to learn something whether you want it or not, you have to decide:

   - what to learn
   - how much time and money to invest in training yourself.
   - when to start learning
   - how to learn

1st question - what to learn.  Well, it is a moving target. And it depends on your specialization.  You have to do your own research.

2nd question - how much to invest? Most people are really greedy when it comes to spending their time or money.  But let me show you something.  If you invested $3K into learning a technology which is in great demand on the market - and this allowed you to get steady increase of your income by $15K/year - that is, let say, $45K over next 3 years.

Isn't this the best investment you could possibly find for your money?

And your investment will usually pay for itself in less than 6 months - after that it is pure profit!.

3rd question - when to start learning? The answer is obvious.  If you have to learn it sooner or later - why not do it earlier?  Still most of the people are sitting waiting until it is already so late that they HAVE TO learn.  As a result they are mostly placed to do some dull work of maintaining old systems.  And this work is usually not paid very well, because there are already many programmers with these old skills on the market.

Why wait.  Learn skills just several months earlier than others - and you may reap dramatic rewards.
What rewards?

   - Working with cool new technologies on interesting projects with interesting people.
   - Working in the best companies.
   - Being paid more as a qualified professional familiar with the latest and greatest technologies.
   - Feeling that you are better than others, feeling respect from others (and yourself).
   - Feeling job security, because you have skills which will be in demand in the future.

And much more...

Now, if there are any reasons to wait?

Start learning just several months earlier - it makes all the difference. But it is also harder to learn, because

There is nobody around to help you!

Well, this is actually not entirely true. Yes, people around you will be of little help, because you are ahead of them. And there may be no courses or books yet, because the technology is new.  These were bad news.  But the good news are that you can get a lot of help on the Internet.

Internet may very well be your main tool.

4th question - how to learn.  Skill of learning is just what it is - it is a skill.  It is not something you are born with - but something you develop by learning and learning how to learn better.

How to learn?

I can't tell you. Surprised?  You see, I am teaching programming, and I can tell you from experience that different people have absolutely different ways to learn.  Some people do it through reading, some prefer visual learning.  Some prefer audio. The differences are very dramatic.  You will have to try different methods and see what works best for you.

What works for me home - top of the page - email

Here is what I do:
Choosing Direction:
I talk to managers and recruiters, listen to audio briefings and digests, read reviews in magazines and on the internet - all this to understand where things are going and how the demand on the market may change in the future.
I am constantly expanding my network of programmers to whom I can send email or call.  I periodically ask them what they are
doing or planning to do. I can also ask them programming questions (although I am trying not to abuse this). 
Collecting tutorials and references, learning:
I search internet for FAQs and tutorials, read them (online - or print them out in small font / 2 col format).
I collect books (online and on paper), and training videos.
I subscribe to email and paper magazines.
Repeating material:
I repeat material by using the technologies in my professional activity
I repeat material by making conspectus of my learning on my web site and revising my site periodically.
I repeat material while teaching students.

The information I am getting comes from several sources:
 - Internet - using Internet correctly can save you lots of money on education.
 - Books (amazon.com)
 - video training:
www.trainonvideo.com - training on video, usually 6-8 tapes ($600-$800) per course.
Google search for video+training+programming - video training on Google
Google search for video+training+oracle - how to find video training for a specific topic (Oracle) on Google
Flash Video Training:
www.qarbon.com - MULTIMEDIA TRAINING - Viewlets (Flash Videos)
freesitetemplates.com/training.html - MULTIMEDIA TRAINING (Flash video) 

Online books: home - top of the page - email

hoganbooks.com/freebook/weball.html - over 1,160 books available online - very valuable directory.
directory.google.com/Top/Computers/Programming/Internet/ - excellent list of sites
(for example: directory.google.com/Top/Computers/Programming/Internet/ )
www.informit.com - excellent source of electronic books in HTML format - read online or ssnag to your computer
www.oreilly.com/openbook/ - free online books from O'Reilly
www.earthweb.com/ - good place
  (find more by searching for something like: books online in HTML format  (try google or altavista)

Some O'Reiily books can be downloaded: corvin.spb.ru/

Online tutorials and FAQs home - top of the page - email

The simple way to find web Tutorials on any topic is to search for a combination of the word tutor (or reference) and your topic.
For example, goto google.com and type some of those:
tutor HTML
totor Javascript
tutor HTTP
tutor CGI
tutor CSS
tutor DHTML
tutor Perl
tutor photoshop

If you go to a different search engine - you may need to use different syntax, for example for yahoo you should use "+" signs:
  +tutor +Javascript

Examples - some tutorials which were found using this method:

developer.netscape.com/docs/index.html - many manuals from Netscape
developer.netscape.com/docs/manuals/ - many manuals from Netscape


msdn.microsoft.com/workshop/default.asp - excellent references (HTML, JavaScript, etc.)
msdn.microsoft.com/workshop/c-frame.htm#/workshop/author/default.asp - same thing, but only can viewed using Internet Explorer

- www.findtutorials.com - excellent search for tutorials
- www.lgta.org - good site to find tutorials
- www.trainingtools.com - variety of introductory training courses
- www.learnthat.com/courses/ - variety of courses


www.zdnet.com -
www.builder.com -
www.developer.com -
www.webteacher.com -
www.zdu.com/zdu/catalog/catalog.htm -
www.smartplanet.com -
ittutor.com -
www.webcoder.com -
www.webreference.com -
www.webdevelopersjournal.com/ -
www.chesworth.com/pv/index.html - Dr. Dobbs Programmers Vault
www.stars.com/ - Web Developers Virtual Library
http://jimworld.com - JimWorld (includes VirtualPROMOTE ) - also subscribe to gazette ( http://gazetteworld.com/ )
http://onlamp.com -
http://homepages.paradise.net.nz/milhous/ - several nice tutorials (C++, CGI, Cobol, Java, Lisp, Visual Basic, Perl, Tcl/Tk, Data Structures, UNIX, Awk, etc.)

There are also a lot of tutorials and documentation on vendors' sites (sun.com, ibm.com, sybase.com etc.)

Here is more tutorials: home - top of the page - email

Introduction to Web Programming Tutorial:

Step 1 - Introduction to Web design:
wdvl.com/Authoring/HTML/Tutorial/toc.html -
 Step 2 - Server-side scripting:
stars.com/Authoring/Scripting/WebWare/Server/ -
 Step 3 - Client side scripting:
stars.com/Authoring/Scripting/WebWare/Client/ -
 Step 4 - Introduction to Web Programming Table of Contents:
wdvl.com/Authoring/Scripting/Tutorial/toc.html -

Web Technology Documentation:

Netscape: Technical Manuals and Notes
developer.netscape.com/docs/manuals/ -
JavaScript Guide:
developer.netscape.com/docs/manuals/communicator/jsguide4/index.htm -
Object Hierarchy and Inheritance in JavaScript:
w3.informatik.gu.se/~niklas/a/javascripting/jsobj/index.htm -
Java Training & Tutorials
java.sun.com/docs/books/tutorial/ - Java tutorial
developer.java.sun.com/developer/onlineTraining/index.html -
   see more Java tutorials in Java section

More tutorials:

www.htmlgoodies.com - HTML, Javascript, etc. - excellent!, has links to other excellent sites too
www.javagoodies.com - Javascript, etc.
www.authors.com - good, but slow
zvon.vscht.cz/HTMLonly/XSLTutorial/Books/Book1/bookInOne.html this is XSL (XML) tutorial
w3.one.net/~jhoffman/sqltut.htm - short SQL tutorial
www.jmarshall.com/easy/html/testbed.html - play with HTML - see the results (plus tutorial)

FAQs home - top of the page - email

Search for a combination of the word FAQ (or FAQs) and your topic.
Here are some examples of FAQs (and some other sites related to CGI):
WWW Security FAQ - www.w3.org/Security/Faq/
Web FAQ - www.boutell.com/faq/
CGI Security FAQ - www.go2net.com/people/paulp/cgi-security/safe-cgi.txt
HTTP Spec - www.w3.org/pub/WWW/Protocols/HTTP/
HTML Spec - www.w3.org/TR/REC-html40/www.w3.org/pub/WWW/MarkUp/
CGI Spec - www.w3.org/CGI/

New Technologies home - top of the page - email

I foresee a lot of help from handheld devices. As they get more memory and CPU power to run regular OSs (like Linux or Windows) and communicate effectively with Internet via GPRS, they will become invaluable tools for learning and repeating.

handspring.com - educational programs for PDAs like Palm
www.dcs.ecu.edu - East Carolina University started to use portable devices for training

These handheld devices are getting cheaper (under $300).
You can add headphones or even video glasses.

The benefit of having this device is that you can repeat your material several times during the day. And this is the best way to memorize.
You fit learning process in small pieces during the day. You can use this device while you commuting (in a bus or subway, in a car) or even while you are in the gym or jogging around the neighbohood. Thus you learn more without having to allocate special time.

Educational games:
The educational programs can be made as educational games.

Learning language:
This device can be a perfect tool for learning new language.
The minimum vacabularly is usually approx. 3,000 words.
If you learn and repeat 10 words/day - it will take you a year.
(The best way to repeat them is to use them in phrases).

Learning programming terms:
Learning programming also involves learning a lot of new words.
For example, whatis.com has probably ~3,000 computer-related terms (or may be much more).
(Of course, learning programming is much more than just memorizing words.)

Exam preparation:
This device may be a perfect tool to prepare for exams.

Taking tests home - top of the page - email

www.skillometer.com -
www.brainbench.com -
java.html#exam_preparation - many tests on java

Misc home - top of the page - email

www.ecoach.com/secret.html - About The All-But-Dissertation Survival Guide - free monthly e-mail newsletter
  for example:  www.ecoach.com/News/parkinson.htm - Overcoming Parkinson's Law