An impossible question - there
is no best way - yet it's one that I'm asked from time to time. [[
"Hello. I'm doing a b.tech. My friends like ur site very much. Plz help us in Java programming - plz tell me about the best source to learn Java"]]
So do I answer such questions, and if so, how? Firstly - YES - I make a point of answering emails which are written individually; although there may not be an immediate business point in doing so, you never know when you'll come across this person again, or who he / she may recommend you to. "Treat others as you would like to be treated yourself" ... but this is a personal comment, and digressing from the theme of the subject line.
When you're looking to learn, you are putting the filling in a sandwich - between what you already know, and what you want of need to know, and in order to establish your training requirements, you should think about those two points.
Beginning Point ... have you any prior experience (from a "learning a programming language" view point, that means asking if you have programmed before, and if so whether you've just dabbled, or if you're an experienced code. And it also means asking whether or not you have experience in a similar language, or if any experience is in something very different. You might even have made some attempts to study the language that you're asking me about and have failed to grasp it, or some specific issues, or you might be looking for more advanced training only.
Ending Point Are you learning with a specific job role in mind? For a particular project that you want to undertake as a hobby, as part of an academic program (i.e. to pass an exam) after which you'll make little use of your skill? And if you're heading for a specific job role, which are the important aspects of the subject - are you learning for a code maintenance role, for a specification role, or for something in between?
Logistics and Economics How long do you have - are you looking for something short and sharp, or a learning program that will last over a considerable period? Are you able to arrange your schedule to be available at certain times, and are you able to travel to specific locations? Are they nearby? And you'll need time, determination and commitment to learn, but there's something of a tradeoff between these three and money (and time
is money if you're learning in a work situation. a little money will buy you a book, and rather more money will buy you a course.
Learning Methods. Some of us learn best with our peers, and others learn best alone. Some can read from a screen, and others from a book. Some need to "get away" to concentrate on learning, and others can learn with the office hubbub, the screaming child, or the railway announcer telling us that the next station is Pontypridd.
So with all of these variables, it was impossible for me to say to my correspondent "the best way to learn Java IS ..."; I could only suggest that he listened carefully to the advise of lecturers on his B Tech course (who, after all, should know many of the answers above!) and followed a few of our links to help with backup. I also pointed him towards:
Our own Java training notes which are available for download from:
http://www.training-notes.co.uk/java.html
Resources classified by subject - starting (for Java) at:
http://www.wellho.net/resources/J601.html
And there are many resources on our main web site at
http://www.wellho.net/
There is a very wide variety of books - and we list about 50 at:
http://www.wellho.net/booktopic/Java.html
Did I recommend our training courses, then?. No, I didn't. Even from the short enquiry, I read that my correspondent is undertaking an academic course already, where a second thread of learning would probably confuse rather than clarify. I also noted that English, in which we teach our courses, wasn't his mother tongue and that one of our courses would be frustrating for him, for the tutor, and for other delegates on the course. Finally, I noted from his email address that he lives half a world away, and it just wouldn't make sense for his to come all this way.
Courses are NOT for everyone, and where there's multiple reasons they don't fit, I won't sell them - that would be a dis-service to everyone!
But I suppose I should finish off, dear reader, with some links to our courses; if you're fluent in English, and time is of the essence in your learning of Java or Perl or PHP or Python ... then they may very well be the best source to learn.
Python Courses •
Perl Courses •
PHP Courses •
Java Courses
See
here or
here for sandwich making instructions
(written 2008-12-28, updated 2008-12-31)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
Q100 - Object Orientation and General technical topics - Learning to Progam [116] The next generation of programmer - (2004-11-13)
[1605] Learning and understanding scripting programming techniques - (2008-04-08)
[1985] Learning to program as a part of your job - (2009-01-10)
[2001] I have not programmed before, and need to learn - (2009-01-19)
[2048] Learning to program in PHP, Python, Java or Lua ... - (2009-02-19)
[2092] Tracking difficult bugs, the programmer / customer relationship - (2009-03-20)
[2286] New to programming? It is natural (but needless) for you to be nervous - (2009-07-14)
[2294] Can you learn to program in 4 days? - (2009-07-16)
[2326] Learn a new programming language this summer. - (2009-08-06)
[2504] Learning to program in ... - (2009-11-15)
[2505] I almost put the bins out this morning - (2009-11-16)
[2898] Programming Standards from the start! - (2010-08-02)
[2973] Learning to program - where to start if you have never programmed before - (2010-09-28)
[3120] Learning to write good programs in C and C++ - separating out repeated code - (2011-01-04)
[3551] Some terms used in programming (Biased towards Python) - (2011-12-12)
[3895] Flowchart to program - learning to program with Well House - (2012-10-14)
[4008] Reading and checking user inputs - first lessons - Ruby - (2013-02-17)
[4318] Learning to Program - how we start to teach you at Well House Consultants - (2014-11-16)
[4322] Learning to Program - the conditional statement (if) - (2014-11-21)
[4323] Learning to program - Loop statements such as while - (2014-11-22)
[4324] Learning to program - variables and constants - (2014-11-22)
[4325] Learning to program - what are algorithms and design patterns? - (2014-11-22)
[4326] Learning to program - comments, documentation and test code - (2014-11-22)
[4337] Learning to program sample program - past its prime, but still useful - (2014-12-02)
[4575] Learning not just what a program does, but how to design it in the first place. - (2015-11-06)
G907 - Well House Consultants - Recruitment and Career Development [198] A new skill may not be quick and easy - (2005-02-02)
[253] Finding the right holes - (2005-03-21)
[285] What career opportunities for web designers - (2005-04-20)
[389] Tough Love - (2005-07-25)
[408] Can an older person learn a programming language - (2005-08-10)
[503] 10 years C# knowledge please - (2005-11-23)
[585] Looking for Python staff - (2006-02-01)
[587] Job vacancy - double agent wanted - (2006-02-02)
[722] I'm answering a job applicant - (2006-05-16)
[729] Career development advice - (2006-05-23)
[751] Want to be a technical trainer in the UK? - (2006-06-08)
[759] Watch your Google profile - (2006-06-13)
[849] Staff Meeting - (2006-08-30)
[1967] LinkedIn - Thrice Asked, and joined. - (2008-12-30)
[2109] Why most training fails ... - (2009-03-30)
[2255] Past PHP delegates / others - coding help needed for next 3 months - (2009-06-23)
[3440] Research is exciting. But should routine be automated? - (2011-09-14)
[3490] How not to call when job seeking ... - (2011-10-20)
[3594] Back to Uni - (2012-01-26)
[3740] Looking and Learning - even on Holiday - (2012-05-22)
G500 - Well House Consultants - Running a training company [171] Skills and techniques of being a successful trainer - (2005-01-06)
[251] WIBNIF - (2005-03-19)
[385] Feast or famine - (2005-07-21)
[402] Netless - (2005-08-05)
[470] I wanna be a Python trainer - (2005-10-20)
[545] Is training seasonal? - (2005-12-28)
[627] JIT or JAU - (2006-02-27)
[652] Morning Post - (2006-03-20)
[813] Monday Morning at Well House Consultants Melksham - (2006-07-24)
[838] Talking about other training companies. - (2006-08-19)
[926] Training rooms to learn Open Source programming - (2006-11-15)
[978] Wellhouse Manor, Hotel, Melksham - (2006-12-10)
[1022] No courses. No hotel guests. Rushed off our feet! - (2007-01-05)
[1040] What the customer is looking for - effective training - (2007-01-17)
[1369] One business, four different angles! - (2007-09-28)
[1393] First Alternative / what has happened there? - (2007-10-16)
[1433] Linux, PHP, Tcl, Ruby, C, C++ - last minute training course availability - (2007-11-16)
[1884] Recession? Depression? - (2008-11-14)
[2003] Discount Training Courses - PHP, Perl, Python - (2009-01-21)
[2021] Short health and safety course - (2009-02-02)
[2049] Why Choose Well House Consultants for your course? - (2009-02-20)
[2074] Weekday or Weekend PHP, Python and Perl classes? - (2009-03-10)
[2084] Books and distance learning from Well House Consultants? - (2009-03-15)
[2144] Looking for a career change - Physician to Web Site Designer - (2009-04-28)
[2838] Respecting our customers anonimity - (2010-06-29)
[2924] Job applicants - wondering why they apply - (2010-08-16)
[2940] Training course locations - Melksham, UK; Buxton, UK; Lake Constance, Germany; Venice Italy, the USA and India - (2010-08-30)
[3361] Blowing our own trumpet - MySQL resources - (2011-07-18)
[3610] Training to do a job, or training to pass an exam? - (2012-02-13)
[3684] Once upon a Maundy Thursday - (2012-04-05)
[3824] Planned for a quiet period during the Olympics - but it is far from that! - (2012-08-02)
[4004] Annual Accounts - a big job for a small business - (2013-02-15)
[4135] Introducing your product to Well House Consultants - single, personally tuned email please - (2013-07-08)
Some other Articles
Background to the TransWilts Train FiascoHow much does a train service actually costWhy hasnt the fiasco been put rightBest source to learn Java (or Perl or PHP or Python)Index Card System for Game Characters in PHPMaking our things easier to findChristmas Survivors-PHP - Parse error: syntax error, unexpected $end ...