TechWhirl (TECHWR-L) is a resource for technical writing and technical communications professionals of all experience levels and in all industries to share their experiences and acquire information.
For two decades, technical communicators have turned to TechWhirl to ask and answer questions about the always-changing world of technical communications, such as tools, skills, career paths, methodologies, and emerging industries. The TechWhirl Archives and magazine, created for, by and about technical writers, offer a wealth of knowledge to everyone with an interest in any aspect of technical communications.
Computer science in general, and programming in particular, are difficult subjects to learn because of high (and totally unrealistic) expectations. The typical college course in Visual Basic has students "programming" trivia in the first week, to "build their confidence" and "enable them to produce gratifying results." First-semester programming skills are easy; it is making the jump from trivial programming to useful programming that is difficult.
Why this should be so is less clear, and a source of endless (and often bitter) debate among academics charged with developing appropriate college and university programs. In essence, "learning to program" needs to be put on the back burner until you "learn to solve problems." With all due respect to those who believe replicating trivial code blocks will somehow impart knowledge, the opposite is true; students who "work their way through exercises and samples" are the LEAST able to program effectively. That is, they mindlessly duplicate the code they see, with little or no understanding of why the code does what it does.
That is a failure of the approach, and of the teaching methods, rather than the complexity of programming. That failure is perpetuated and reinforced by students (and other learners) who desire the immediate gratification associated with the erroneous assumption that they are "learning to program" by placing a button, a label, a text box, and a bit of code behind on a Visual Basic form.
The reason the approach fails is that the student initially believes he or she can write code. However, when it gets to the "doing" stage, it becomes clear that the student is incapable of doing anything more than mindless repetition of explicit, trivial exercises. That is the primary reason for the high number of "one semester" and "two semester" programmers in US colleges and universities. (And for the extremely high dropout rate of US computer science and computer information systems majors.)
Recommendation; if you want to learn to program, learn to program first, before you learn how to code. It is the underlying understanding of why you do what you do that is more important than language specifics. The desire for a "quick and easy" introduction to programming should be suppressed; cranking out pages of half-broken code in Visual Basic or Python because it is "easy to get started" will do more to ruin your ability to learn to program than all the programming theory in the world.
It should not be difficult to learn programming. The difficulty is introduced by the failure of the teaching methods and approach, rather than the topic. If you are not willing to invest the time and cognitive effort necessary to learn object-oriented programming concepts BEFORE you start writing trivial code blocks, you should probably avoid programming. If you are willing to make the effort, you will have a conceptual framework on which to hang your later studies of language-specific coding techniques.
Note: Several people sent private emails questioning why the hourly rates for programming on our website are so low. The answer is easy; our primary work is software design and software engineering. We outsource low-level programming tasks, just like most other developers. However, unlike most other developers, we do not "offshore" that work, but rather "outsource" it, primarily to US college and university students working as independent contractors. http://www.tekwrytrs.com/ - Specializing in cost-effective technical documentation, online content, and web development for growing businesses.
Windows Live™: E-mail. Chat. Share. Get more ways to connect. http://windowslive.com/howitworks?ocid=TXT_TAGLM_WL_t2_allup_howitworks_012009
ComponentOne Doc-To-Help 2009 is your all-in-one authoring and publishing
solution. Author in Doc-To-Help's XML-based editor, Microsoft Word or
HTML and publish to the Web, Help systems or printed manuals. http://www.doctohelp.com
Help & Manual 5: The complete help authoring tool for individual
authors and teams. Professional power, intuitive interface. Write
once, publish to 8 formats. Multi-user authoring and version control! http://www.helpandmanual.com/
You are currently subscribed to TECHWR-L as archive -at- web -dot- techwr-l -dot- com -dot-