Anyone is a programmer in today’s world. Whether you like it or not, knowingly or unknowingly, you’ve come across bits and pieces of programming. Even if you haven’t made your hands dirty with languages like C/Java or Perl, you must’ve done some Microsoft Excel (VBA) programming or writing Ms word macros. Whatever be the case and your programming experience, it always helps to have a place, a temple, where you get help from. While this exact place may vary among us, fixing one always comes in handy. Here I’m compiling a few such places, the ones I loved, which I’m sure you’d like it too for the programming languages that I’ve used.For Qbasic, and this is the first programming language I learnt, the best place I’ve found is its in-built help. As a high school student and unaware of the power and limitations of programming languages, I used to read this a lot. The examples provided there will always guide a student.
Next is C-Unix/Linux. The in-built manual pages is a very handy reference. Though it serves just as a reference and not learning or exploring new functions, this is a time-saver as you won’t have to open the browser and visit the web for such a trivial thing as syntax. Manual pages (the man command) is very extensive too. From finding help for the system commands to the shell programming (bash/ksh/sh/csh) do the man and find it out.
Perl. Once you learn this language, you start knowing the limitations of C. C is fast, Perl is easy. The Perl’s help system, the way modules are installed (perl -MCPAN -eshell), all these are unique and make it all the more powerful. For standard Perl functions and the run-time options, for the special variables and regular expressions there’s perldoc. Then for new modules (which you’ll almost certainly require), we have CPAN (http://search.cpan.org). Mostly written by the module owners, the Perl’s contributors are many; yet I’ve found it to be largely exemplified and serving the purpose.
vim/gvim. The editor that is lightweight and yet supports every complex operation to do your job fast. When you learn this, you know its “optimized for speed” for the same things might require a long,long time in any other “flashy” editor available (except of course, emacs). The vim’s starting tutorial is very good for beginners. The in-built help is very extensive but I’ve found it unnecessary to dig-in unless you want to become an expert in vim customization. You can open files across ftp and make changes as if its local, you can check-in and check-out files, you can run cscope commands, you can even compile applications all with this lovely editor.
Microsoft technologies (C#, VB, VC++). I’ve done little work in this arena but digging into MSDN always helped me a lot. The examples provided and descriptions given have never disappointed me. IMO developers can work even without an internet connection and having the MSDN provided.
Google has spoiled developers. Yes, it has got answers to all questions but its always easy to directly hit the bird rather than proxying through google. And if you’ve the habit of finding help in a common place, you already know the interfaces and chances are likely that you’ll look into the right places and find the solution faster. But for troubleshooting and quick-fix solutions, nothing beats google.