create account

Introduction to Computer Programming - part 1 by humate

View this thread on: hive.blogpeakd.comecency.com
· @humate · (edited)
$1.77
Introduction to Computer Programming - part 1
![enter image description here](https://s19.postimg.org/mlec5pm9f/ilya-pavlov-87438.jpg)


----------


----------


# INTRODUCTION TO PROGRAMMING

I have just completed the first course on the topic of *Computer Programming*. It was a simple course, really just a brief introduction to the concepts involved, before diving into my lessons on my first programming language.

The purpose of this particular course wasn't to teach any programming languages. It's objective was to explain the basics and fundamentals of the topic, and instil an understanding of the concepts that are inherent in nearly every programming language, and that one can then that would enable one to go out and learn any programming language of their choice.


----------


### STARTING FROM THE BEGINNING

I chose to start at the very beginning. Even though I have looked at programming on and off over the years, I never committed to it, and as such only took in bits and pieces. Nothing coherent or usable, even though it has left bits of floating data in my brain. So by going back to the very beginning and moving forward (quickly at first because of the extreme basic nature of it, but slower as I progress into new territories) I hope to solidify the previous learnings into a useful new understanding. To tie up the loose ends that resulted from my lack of commitment. 

The course I started with was an online based video course of approximately 1.5 hours, and it's purpose was to be a basic, and brief, introduction to the fundamental concepts inherent in *Computer Programming*. Which is exactly what I was interested in. I will move onto a specific computer language after that.

![enter image description here](https://s19.postimg.org/ov8fgg203/glenn-carstens-peters-203007_l.jpg)


----------


----------


### INTRODUCTION TO COMPUTER PROGRAMMING – STUDY NOTES

**LESSON 1**


----------


**WHAT IS PROGRAMMING?**

Programming is the act of giving directions and instructions to the computer to tell it what to do. The job of the programmer is to write the code (computer program) that computers use to operate their various tasks. Programs are written with the use of programming languages.


----------


**LANGUAGE TYPES**

LINK: [List of programming languages by type](https://en.wikipedia.org/wiki/List_of_programming_languages_by_type)

Programming languages consist of high-level and low-level languages.

**High Level**

 - Abstractions from the complex.
 - Ordinary/Natural language that a compiler or interpreter then uses to turn that code into direct instructions to the computer.
 - These are the type of languages most widely used today, such as C++,
   Java, JS, PHP, Ruby, Python, etc.

**Low Level**

 - Little or no abstraction from a computer's ISA (Instruction Set Architecture).
 - Machine language.


----------


**COMPILED vs INTERPRETED**

LINK: [Compiled language](https://en.wikipedia.org/wiki/Compiled_language)
LINK: [Interpreted language](https://en.wikipedia.org/wiki/Interpreted_language)

Programming languages are converted into machine usable code in one of two ways – compiled, or interpreted.

**Compiled**

 - Code is translated from Source Code to Machine Code.
 - A compiler is used to do this translation.
 - Example = C++.

**Interpreted**

 - Source Code executed directly without prior compilation.
 - An interpreter is used for this procedure.
 - Example = JavaScript.

LINK: [Compiler](https://en.wikipedia.org/wiki/Compiler)
LINK: [Interpreter](https://en.wikipedia.org/wiki/Interpreter_%28computing%29)


----------


**DATA TYPES**

LINK: [Data type](https://en.wikipedia.org/wiki/Data_type)
LINK: [Primitive data type](https://en.wikipedia.org/wiki/Primitive_data_type)

Data types are identification for various types of data used in Computer Systems.

**Examples of Data Types**

 - Characters (character, char);
 - Integer (integer, int, short, long, byte) with a variety of precision;
 - Floating-point number (float, double, real, double precision);
 - Fixed-point number (fixed) with a variety of precisions and a programmer-selected scale;
 - Boolean, logical values true and false;
 - Reference (also called a pointer or handle), a small value referring to another object's address in memory, possibly a much larger one.

Strongly Typed Programming Language = Data types MUST be declared and cannot be changed later on.

Weakly Typed Programming Language = Data type is NOT declared and can be changed later on.

![enter image description here](https://s19.postimg.org/vygaw2ukz/william-bout-264826_l.jpg)


----------

**FURTHER DATA**

[cpp.sh](http://cpp.sh/) - C++ shell website
Scratchpad - Shift + F4 on Firefox - Javascript shell
[Dev C++](https://sourceforge.net/projects/orwelldevcpp/) - A free, portable, fast and simple C/C++ IDE
[Code::Blocks](http://www.codeblocks.org/) - A free C, C++ and Fortran IDE
[Ideone](https://ideone.com/) - an online compiler and debugging tool which allows youto compile source code and execute it online in more than 60 programming languages.

----------

[Introduction From a Newbie Programmer](https://steemit.com/introduceyourself/@humate/introduction-from-a-newbie-programmer).

Images from [unsplash.com](https://unsplash.com/).

I welcome new followers, and thank you for your upvotes and comments.

![enter image description here](https://s19.postimg.org/babohcfeb/rafael-pol-474017a.jpg)

----------
👍  , , , , , , , , , , , , , , , , , , , , , , , , , ,
properties (23)
authorhumate
permlinkintroduction-to-computer-programming
categoryeducation
json_metadata{"tags":["education","howto","steemiteducation","technology","teamaustralia"],"image":["https://s19.postimg.org/mlec5pm9f/ilya-pavlov-87438.jpg","https://s19.postimg.org/ov8fgg203/glenn-carstens-peters-203007_l.jpg","https://s19.postimg.org/vygaw2ukz/william-bout-264826_l.jpg","https://s19.postimg.org/babohcfeb/rafael-pol-474017a.jpg"],"links":["https://en.wikipedia.org/wiki/List_of_programming_languages_by_type","https://en.wikipedia.org/wiki/Compiled_language","https://en.wikipedia.org/wiki/Interpreted_language","https://en.wikipedia.org/wiki/Compiler","https://en.wikipedia.org/wiki/Interpreter_%28computing%29","https://en.wikipedia.org/wiki/Data_type","https://en.wikipedia.org/wiki/Primitive_data_type","http://cpp.sh/","https://sourceforge.net/projects/orwelldevcpp/","http://www.codeblocks.org/","https://ideone.com/","https://steemit.com/introduceyourself/@humate/introduction-from-a-newbie-programmer","https://unsplash.com/"],"app":"steemit/0.1","format":"markdown"}
created2018-01-01 01:58:21
last_update2018-01-02 06:44:42
depth0
children5
last_payout2018-01-08 01:58:21
cashout_time1969-12-31 23:59:59
total_payout_value1.550 HBD
curator_payout_value0.217 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length5,400
author_reputation107,931,380,458
root_title"Introduction to Computer Programming - part 1"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,299,887
net_rshares142,535,517,509
author_curate_reward""
vote details (27)
@kuinchi ·
Very informative post. This should be a great way of learning programming.
👍  
properties (23)
authorkuinchi
permlinkre-humate-introduction-to-computer-programming-20180101t022322154z
categoryeducation
json_metadata{"tags":["education"],"app":"steemit/0.1"}
created2018-01-01 02:23:24
last_update2018-01-01 02:23:24
depth1
children1
last_payout2018-01-08 02:23:24
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length74
author_reputation111,319,091,080
root_title"Introduction to Computer Programming - part 1"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,301,962
net_rshares409,120,477
author_curate_reward""
vote details (1)
@humate ·
Thank you. I hope to share my own learning so that others can benefit too.

That is my mission with this blog :)
properties (22)
authorhumate
permlinkre-kuinchi-re-humate-introduction-to-computer-programming-20180101t023223584z
categoryeducation
json_metadata{"tags":["education"],"app":"steemit/0.1"}
created2018-01-01 02:32:24
last_update2018-01-01 02:32:24
depth2
children0
last_payout2018-01-08 02:32:24
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length112
author_reputation107,931,380,458
root_title"Introduction to Computer Programming - part 1"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,302,693
net_rshares0
@minnowsupport ·
<p>Congratulations!  This post has been upvoted from the communal account, @minnowsupport, by humate from the Minnow Support Project.  It's a witness project run by aggroed, ausbitbank, teamsteem, theprophet0, someguy123, neoxian, followbtcnews/crimsonclad, and netuoso.  The goal is to help Steemit grow by supporting Minnows and creating a social network.  Please find us in the <a href="https://discord.gg/HYj4yvw">Peace, Abundance, and Liberty Network (PALnet) Discord Channel</a>.  It's a completely public and open space to all members of the Steemit community who voluntarily choose to be there.</p>

<p>If you would like to delegate to the Minnow Support Project you can do so by clicking on the following links: <a href="https://v2.steemconnect.com/sign/delegateVestingShares?delegator=&amp;delegatee=minnowsupport&amp;vesting_shares=102530.639667%20VESTS">50SP</a>, <a href="https://v2.steemconnect.com/sign/delegateVestingShares?delegator=&amp;delegatee=minnowsupport&amp;vesting_shares=205303.639667%20VESTS">100SP</a>, <a href="https://v2.steemconnect.com/sign/delegateVestingShares?delegator=&amp;delegatee=minnowsupport&amp;vesting_shares=514303.639667%20VESTS">250SP</a>, <a href="https://v2.steemconnect.com/sign/delegateVestingShares?delegator=&amp;delegatee=minnowsupport&amp;vesting_shares=1025303.639667%20VESTS">500SP</a>, <a href="https://v2.steemconnect.com/sign/delegateVestingShares?delegator=&amp;delegatee=minnowsupport&amp;vesting_shares=2053030.639667%20VESTS">1000SP</a>, <a href="https://v2.steemconnect.com/sign/delegateVestingShares?delegator=&amp;delegatee=minnowsupport&amp;vesting_shares=10253030.639667%20VESTS">5000SP</a>.  <strong>Be sure to leave at least 50SP undelegated on your account.</strong></p>
👍  
properties (23)
authorminnowsupport
permlinkre-humate-introduction-to-computer-programming-20180101t023555075z
categoryeducation
json_metadata{"tags":["education"],"app":"cosgrove/0.0.2"}
created2018-01-01 02:35:54
last_update2018-01-01 02:35:54
depth1
children0
last_payout2018-01-08 02:35:54
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,744
author_reputation148,902,805,319,183
root_title"Introduction to Computer Programming - part 1"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,302,967
net_rshares450,492,211
author_curate_reward""
vote details (1)
@rifkan ·
nice post, I appreciate your efforts.following you, i appreciate if your upvote and if you follow me.
👍  
properties (23)
authorrifkan
permlinkre-humate-introduction-to-computer-programming-20180101t020435722z
categoryeducation
json_metadata{"tags":["education"],"app":"steemit/0.1"}
created2018-01-01 02:04:36
last_update2018-01-01 02:04:36
depth1
children1
last_payout2018-01-08 02:04:36
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length101
author_reputation27,821,774,118,469
root_title"Introduction to Computer Programming - part 1"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,300,395
net_rshares425,209,485
author_curate_reward""
vote details (1)
@humate ·
Thank you for dropping by, and for the follow. I will certainly do likewise :)
👍  
properties (23)
authorhumate
permlinkre-rifkan-re-humate-introduction-to-computer-programming-20180101t020956529z
categoryeducation
json_metadata{"tags":["education"],"app":"steemit/0.1"}
created2018-01-01 02:09:57
last_update2018-01-01 02:09:57
depth2
children0
last_payout2018-01-08 02:09:57
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length78
author_reputation107,931,380,458
root_title"Introduction to Computer Programming - part 1"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id26,300,838
net_rshares430,346,628
author_curate_reward""
vote details (1)