Learning Coding skills the fast way

learning programming language’s the best way

ARMcpu Assembly programming using an SSH remote connection

ARMcpu Assembly programming using an SSH remote connection

Learning to program a computer these days is about as simple and yet complicated as it has ever been, when I firsts started coding commercial applications it was on IBM Mid-range and Main-frame computers and to access all the required technical information was a complicated task. IBM printed a complete set of programming language manuals all in A3 format, They were your only source for technical details on each available language command along with some basic details on the structure of the installed Operating systems.

These manuals needed to be supported with off-site training courses and as these could be expensive, they were usually paid for by your employer. I remember that some employers included a clause in your contract so that if you left your employment with them within a year of any attended course you had to pay them back the full cost.

By the time IBM released later mid-range models (2004 -2008 ) of these systems ( i-series . e-servers ) all commercial systems, the methods of accessing study based information and technical details had completely changed. Also these later systems had made the shift to less proprietary development languages, now languages such as (Assembly, C++, Cobol, Pascal, Rexx and Python) were all available. The advantage here was that code for applications and related skills became cross platform.

Today In 2015 there is so much more material available in both printed form and/or on the internet, than in anytime over the last thirty years or so, with shared coding sites such as GIT-HUB, etc…..

This along with Training Apps that share sample code, for Android devices, hundreds of online pdf’s and personal Blogs, it has all been made very easy to self-study and then experiment with your coding.

Another Helpful factor is that almost all of the commercial languages can be installed freely on your own devices, there is little difference between using these programming languages when learning, on even your Android phone or when they are being used on super-computers running with many hundreds of processor cores. Code is code and when your learning it is unlikely that you will see much device related difference.

pi_board_big

The Raspberry Pi is a great example of this as you will be missing out very little by developing on this great little machine, in fact it can do many things (Such As GPIO device control) that an Intel I7 pc cannot do. This is the very reason that the Pi has sold over three million units world wide.

Despite all this some of the old problems however still remain ( In an evolved form !) as there is almost too much information available at times, so much so that it is almost impossible to focus and advance quickly in order to learn how to produce finished applications. In an odd paradox, you can find yourself very quickly becoming frustrated with information overload and finding the weeks rushing by while you soak in so much details, while stalling on getting somewhere that truly counts.

So what I hope to do on this site ( A personal Note-pad! ) , while noting some coding skills is to cut to the case a little, yet still note down enough information as to get myself to a point that counts.

For example In the next post/notes relating to coding skills I want to detail the areas in any programming language that exist in most of them, a generic skeleton of the areas that most programming language’s contains from ( Data types to structures, tests conditions and controlling application flow with branching). The reason for this is that selecting a language to learn can in itself be confusing, it can also appear that giving the time to learn a selected language may rob you of the skills needed to learn other ones, who’s attributes are just as required and valuable.

However this concern can be overcome when you understand just how basically alike most programming languages truly are and just what areas they have in common with each other.

Advertisements
This entry was posted in Development Languages, Programming skills, Python, Raspberry pi and tagged , , , , , , , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s