course


Programming Course Series [01 – Introductory course to python]

Computer programming is important today because so much of our world is automated. Humans need to be able to control the interaction between people and machines. Since computers and machines are able to do things so efficiently and accurately, we use computer programming to harness that computing power.

This is the first of hopefully many programming courses that can introduce technically inclined people to Python programming.


  Date and Time

Location

Information on our VPN service (instructions for iOS devices) will be provided to the registrants that cannot join us along with instructions on our BigBlueButton platform.

Hosts

Registration


  Speakers

George Michael

Topic:

Everybody can write a computer program (An introduction using Python)


Agenda

Introduction to programming and reasons to write programs?

These are the course-wide materials as well as Introductions’ first section where we discuss what writing programs mean. In the third part of the class, we will finish the Introduction and have the quiz and first task.

Installing and Using Python

We’re going to set up stuff so that you can write Python programs.

Introduction to programming and reasons to write programs? (continued)

We try to cover the “big picture” of programming so that you get a “table of contents” from what to expect to learn. Don’t worry if, the first time you hear it, not everything makes perfect sense. This part is very broad.

Variables and Expressions

We will explain how a program uses the memory of the machine to store, retrieve and process information in this section.

Conditional Code

We will move from sequential code in this section that simply runs one line of code after another to conditional code where some steps are skipped. It is a very basic idea – but it is how “choices” are made by computer software.

Functions

We are going to learn about what functions are and how we can use them. Functions will be an essential way for us to make sense of our code, as we move into more and more complicated programs.

Loops and Iteration

Our four fundamental programming patterns are completed by loops and iteration. Loops are the way we say Python over and over to do something. Loops are the manner in which we create programs that remain with a problem until the problem is solved.


Programming Course Series [beta]

Computer programming is important today because so much of our world is automated. Humans need to be able to control the interaction between people and machines. Since computers and machines are able to do things so efficiently and accurately, we use computer programming to harness that computing power.

This is the first of hopefully many programming courses that can introduce technically inclined people to Python programming.

Date and Time

Location

Information on our VPN service (instructions for iOS devices) will be provided to the registrants that cannot join us along with instructions on our BigBlueButton platform.

Hosts

Registration

 Speakers

George Michael

Topic:

Everybody can program (An introduction using Python)


Agenda

Introduction to programming and reasons to write programs?

These are the course-wide materials as well as Introductions’s first section where we discuss what writing programs mean. In the third part of the class, we will finish the Introduction and have the quiz and first task.

Installing and Using Python

We’re going to set up stuff so that you can write Python programs.

Introduction to programming and reasons to write programs? (continued)

We try to cover the “big picture” of programming so that you get a “table of contents” from what to expect to learn. Don’t worry if, the first time you hear it, not everything makes perfect sense. This part is very broad.

Variables and Expressions

We will explain how a program uses the memory of the machine to store, retrieve and process information in this section.

Conditional Code

We will move from sequential code in this section that simply runs one line of code after another to conditional code where some steps are skipped. It is a very basic idea – but it is how “choices” are made by computer software.

Functions

We are going to learn about what functions are and how we can use them. Functions will be an essential way for us to make sense of our code, as we move into more and more complicated programs.

Loops and Iteration

Our four fundamental programming patterns are completed by loops and iteration. Loops are the way we say Python over and over to do something. Loops are the manner in which we create programs that remain with a problem until the problem is solved.


Fedora 27: Setup stackskills-dl

A couple of days ago we were asked to setup stackskills-dl on a Fedora 27 (x64).
Apparently stackskills-dl is a Ruby script that allows a registered user to download the StackSkills tutorials for which the user has access to.

Following the instructions at https://github.com/yoonwaiyan/stackskills-dl are not enough to get the application running as the json gem and the Ruby development files appear to be missing from the filesystem.

Solution: Below are the steps we followed to setup stackskills-dl and make it operational:


sudo dnf install gem ruby-devel youtube-dl wget;
gem install json;
gem install bundler;
git clone https://github.com/yoonwaiyan/stackskills-dl.git;
cd stackskills-dl/;
bundle install;

After the above steps were completed, we were able to use stackskills-dl from the clone/installation folder normally:


[george@banana stackskills-dl]$ ruby stackskills_dl.rb -u "[email protected]" -p "e#rf54HTw3se!fe678f." -s https://stackskills.com/courses/enrolled/007;
Loaded login credentials from environment variables.
Login Successfully.
Finding https://stackskills.com/courses/enrolled/007 from your list of courses
Number of courses found: 1
...

[george@banana stackskills-dl]$ ruby stackskills_dl.rb --help
Usage: ruby stackskills_dl.rb [options]
-u, --email NAME Email
-p, --password PASSWORD Password
-c, --course COURSE_URL Course URL in ID.
-s, --course-slug COURSE_SLUG Course URL in slug.

With out the Ruby json gem you would get the following error:


[george@banana stackskills-dl]$ ruby stackskills_dl.rb --help;
/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- json (LoadError)
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/george/.gem/ruby/2.4.0/gems/mime-types-2.99.1/lib/mime/types/loader.rb:226:in `load_from_json'
from /home/george/.gem/ruby/2.4.0/gems/mime-types-2.99.1/lib/mime/types/loader.rb:63:in `block in load_json'
from /home/george/.gem/ruby/2.4.0/gems/mime-types-2.99.1/lib/mime/types/loader.rb:62:in `each'
from /home/george/.gem/ruby/2.4.0/gems/mime-types-2.99.1/lib/mime/types/loader.rb:62:in `load_json'
from /home/george/.gem/ruby/2.4.0/gems/mime-types-2.99.1/lib/mime/types/loader.rb:88:in `load'
from /home/george/.gem/ruby/2.4.0/gems/mime-types-2.99.1/lib/mime/types/loader.rb:113:in `load'
from /home/george/.gem/ruby/2.4.0/gems/mime-types-2.99.1/lib/mime/types.rb:296:in `load_default_mime_types'
from /home/george/.gem/ruby/2.4.0/gems/mime-types-2.99.1/lib/mime/types.rb:323:in `<class:Types>'
from /home/george/.gem/ruby/2.4.0/gems/mime-types-2.99.1/lib/mime/types.rb:63:in `<top (required)>'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/george/.gem/ruby/2.4.0/gems/mechanize-2.7.4/lib/mechanize/pluggable_parsers.rb:5:in `<top (required)>'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/george/.gem/ruby/2.4.0/gems/mechanize-2.7.4/lib/mechanize.rb:1361:in `<top (required)>'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:133:in `require'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:133:in `rescue in require'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:40:in `require'
from /home/george/Videos/stackskills-dl/lib/course_finder.rb:1:in `<top (required)>'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require'
from stackskills_dl.rb:4:in `<main>'