|
|
(15 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
|
| |
|
| == Bits and Bytes == | | == Statistics I604 == |
| | |
| bit byte
| |
| bit 1 0.125
| |
| byte 8 1
| |
| | |
| Notes:The value of K (Kilo) during calculations can take two values 1024 or 1000, depends on which type of calculation you want to perform.
| |
| Consider using K = 1024 when you are considering storage capacity whether in hard disk, DVDs, flash drives or other devices and storage media.
| |
| K = 1000 should be used when you are thinking of throughput, ie the speed at which information is transferred.
| |
| | |
| Example: If your computer has 1 KB of disk space is says that he has 1024 B of space, now the throughput of your network card is 1 KB/s then
| |
| it is said that it transmits data to 1000 B/s.
| |
| | |
| Bit (b)
| |
| Byte (B)
| |
| Kilobit (Kb)
| |
| Kilobyte (KB)
| |
| Megabit (Mb)
| |
| Megabyte (MB)
| |
| Gigabit (Gb)
| |
| Gigabyte (GB)
| |
| | |
| '''Binary Equivalents'''
| |
| 1 Nybble (or nibble) = 4 bits
| |
| 1 Byte = 2 nybbles = 8 bits
| |
| 1 Kilobyte (KB) = 1024 bytes
| |
| 1 Megabyte (MB) = 1024 kilobytes = 1,048,576 bytes
| |
| 1 Gigabyte (GB) = 1024 megabytes = 1,073,741,824 bytes
| |
| | |
| '''Show addition of X and Y in binary'''
| |
| | | |
| 0 + 0 = 0
| | Primary Study Materials: |
| 0 + 1 = 1
| | '''Course Homepage:''' http://www.cs.ioc.ee/ITKStat |
| 1 + 0 = 1
| | '''e-Book:''' http://onlinestatbook.com/Online_Statistics_Education.pdf |
| 1 + 1 = 0, and carry 1 to the next more significant bit
| |
| | |
| '''Show subtraction of X and Y in binary''' | |
| 0 - 0 = 0
| |
| 0 - 1 = 1, and borrow 1 from the next more significant bit
| |
| 1 - 0 = 1
| |
| 1 - 1 = 0
| |
| | |
| '''Show multiplication of X and Y in binary''' | |
|
| |
| 0 x 0 = 0
| |
| 0 x 1 = 0
| |
| 1 x 0 = 0
| |
| 1 x 1 = 1, and no carry or borrow bits
| |
| | |
| == Git ==
| |
| | |
| The object database contains four types of objects:
| |
| | |
| A blob (binary large object) is the content of a file. Blobs have no file name, time stamps, or other metadata.
| |
| A tree object is the equivalent of a directory. It contains a list of file names, each with some type bits and the name of a blob
| |
| or tree object that is that file, symbolic link, or directory's contents. This object describes a snapshot of the source tree.
| |
| A commit object links tree objects together into a history. It contains the name of a tree object (of the top-level source directory),
| |
| a time stamp, a log message, and the names of zero or more parent commit objects.
| |
| A tag object is a container that contains reference to another object and can hold additional meta-data related to another object.
| |
| Most commonly, it is used to store a digital signature of a commit object corresponding to a particular release of the data being tracked by Git.
| |
| | |
| '''heads'''
| |
| refers to an object locally.
| |
| '''remotes'''
| |
| refers to an object which exists in a remote repository.
| |
| '''stash'''
| |
| refers to an object not yet committed.
| |
| '''meta'''
| |
| e.g. a configuration in a bare repository, user rights. The refs/meta/config namespace was introduced resp gets
| |
| used by Gerrit (software)[clarification needed][45]
| |
| '''tags'''
| |
| see above.
| |
| | |
| '''Common Usage'''
| |
| | |
| '''create a new repository'''
| |
| create a new directory, open it and perform a
| |
| git init
| |
| to create a new git repository.
| |
| | |
| '''checkout a repository'''
| |
| create a working copy of a local repository by running the command
| |
| git clone /path/to/repository | |
| when using a remote server, your command will be
| |
| git clone username@host:/path/to/repository
| |
| | |
| '''workflow'''
| |
| your local repository consists of three "trees" maintained by git. the first one is your Working Directory
| |
| which holds the actual files. the second one is the Index which acts as a staging area and finally the HEAD
| |
| which points to the last commit you've made.
| |
| | |
| '''add & commit''' | |
| You can propose changes (add it to the Index) using
| |
| git add <filename>
| |
| git add *
| |
| This is the first step in the basic git workflow. To actually commit these changes use
| |
| ''git commit -m "Commit message"''
| |
| Now the file is committed to the HEAD, but not in your remote repository yet.
| |
| | |
| '''pushing changes'''
| |
| Your changes are now in the HEAD of your local working copy. To send those changes to your
| |
| remote repository, execute
| |
| ''git push origin master''
| |
| Change master to whatever branch you want to push your changes to.
| |
| If you have not cloned an existing repository and want to connect your repository to a remote
| |
| server, you need to add it with
| |
| ''git remote add origin <server>''
| |
| Now you are able to push your changes to the selected remote server
| |
| | |
| '''update & merge'''
| |
| to update your local repository to the newest commit, execute
| |
| ''git pull''
| |
| in your working directory to fetch and merge remote changes.
| |
| to merge another branch into your active branch (e.g. master), use
| |
| ''git merge <branch>''
| |
| in both cases git tries to auto-merge changes. Unfortunately, this is not always possible and results in conflicts.
| |
| You are responsible to merge those conflicts manually by editing the files shown by git. After changing, you need to mark them as merged with
| |
| ''git add <filename>''
| |
| before merging changes, you can also preview them by using
| |
| ''git diff <source_branch> <target_branch>''
| |
| | |
| '''replace local changes'''
| |
| In case you did something wrong, which for sure never happens ;), you can replace local changes using the command
| |
| git checkout -- <filename>
| |
| this replaces the changes in your working tree with the last content in HEAD. Changes already added to the index,
| |
| as well as new files, will be kept.
| |
| If you instead want to drop all your local changes and commits, fetch the latest history from the server and point
| |
| your local master branch at it like this
| |
| git fetch origin
| |
| git reset --hard origin/master
| |
|
| |
|
| '''log''' | | Primary Software: |
| in its simplest form, you can study repository history using.. git log
| |
| You can add a lot of parameters to make the log look like what you want. To see only the commits of a certain author:
| |
| git log --author=bob
| |
| To see a very compressed log where each commit is one line:
| |
| git log --pretty=oneline
| |
| Or maybe you want to see an ASCII art tree of all the branches, decorated with the names of tags and branches:
| |
| git log --graph --oneline --decorate --all
| |
| See only which files have changed:
| |
| git log --name-status
| |
| These are just a few of the possible parameters you can use. For more, see git log --help
| |
| | |
| '''tagging'''
| |
| it's recommended to create tags for software releases. this is a known concept, which also exists in SVN.
| |
| You can create a new tag named 1.0.0 by executing
| |
| git tag 1.0.0 1b2e1d63ff
| |
| the 1b2e1d63ff stands for the first 10 characters of the commit id you want to reference with your tag.
| |
| You can get the commit id by looking at the...
| |
| | |
| == Decimal <--> Hexadecimal ==
| |
| | |
| Hexadecimal Decimal
| |
| 0 0
| |
| 1 1
| |
| 2 2
| |
| 3 3
| |
| 4 4
| |
| 5 5
| |
| 6 6
| |
| 7 7
| |
| 8 8
| |
| 9 9
| |
| A 10
| |
| B 11
| |
| C 12
| |
| D 13
| |
| E 14
| |
| F 15
| |
| | |
| | |
| Radio station is streaming MP3 audio at 192kbps. How many 500GB harddisks are required in order to archive 8 years of shows?
| |
| | |
| | |
| 192 kbps = 192 000 bps
| |
| 1 536 000 Bps
| |
| | |
| 1500 Kb/s
| |
| 1.46484375 MB/s
| |
| | |
| | |
| 8 years = 2920 days = 70080 hours = 4204800 minutes = 252288000 seconds
| |
| | |
| | |
| 172 228608 MB
| |
| 16 8192 GB
| |
| 336.384 500GB harddrives
| |
| | |
| == Audio and Images ==
| |
| | |
| '''Audio'''
| |
| In digital audio, 44,100 Hz (alternately represented as 44.1 kHz) is a common sampling frequency.
| |
| Analog audio is recorded by sampling it 44,100 times per second, and then these samples are used
| |
| to reconstruct the audio signal when playing it back.
| |
| | |
| '''Images'''
| |
| '''PNG''' supports palette-based images (with palettes of 24-bit RGB or 32-bit RGBA colors), grayscale images (with or without alpha channel),
| |
| and full-color non-palette-based RGB[A] images (with or without alpha channel). PNG was designed for transferring images on the Internet,
| |
| not for professional-quality print graphics, and therefore does not support non-RGB color spaces such as CMYK.
| |
| | |
| '''JPEG'''/JFIF supports a maximum image size of 65,535×65,535 pixels, hence up to 4 gigapixels (for an aspect ratio of 1:1).
| |
| JPEG is a commonly used method of lossy compression for digital images, particularly for those images
| |
| produced by digital photography. The degree of compression can be adjusted, allowing a selectable tradeoff between storage size
| |
| and image quality. JPEG typically achieves 10:1 compression with little perceptible loss in image quality.
| |
| | |
| ----
| |
| | |
| '''Compact Disc'''
| |
| Capacity Typically up to 700 MiB (up to 80 minutes audio)
| |
| Read mechanism 780 nm wavelength (infrared and red edge) semiconductor laser, 1200 Kibit/s (1×)
| |
| Write mechanism 1200 Kibit/s (1×)
| |
| | |
| Sampling 4 bit audio (2^4) gives us only 16 values, a far cry from 16-bit audio's 65,536! sample rate.
| |
| '''Sample rate''' refers to the number of samples or measurements taken each second from a recording.
| |
| The typical CD sample rate is 44.1kHz, or 44,100 samples per second.
| |
| | |
| The '''bit rate''' is quantified using the bits per second unit bit/s, often in conjunction with an SI prefix such as "kilo"
| |
| (1 kbit/s = 1000 bit/s), "mega" (1 Mbit/s = 1000 kbit/s), "giga" (1 Gbit/s = 1000 Mbit/s) or "tera" (1 Tbit/s = 1000 Gbit/s).
| |
| The non-standard abbreviation "bps" is often used to replace the standard symbol "bit/s", so that, for example, "1 Mbps" is
| |
| used to mean one million bits per second.
| |
| One byte per second (1 B/s) corresponds to 8 bit/s.
| |
| | |
| The '''RGB565 color format''' is the same as the RGB555 color format, except that 6 bits are used for
| |
| the green value instead of 5. Therefore, all 16 bits are in use. The organization of the pixels
| |
| in the image buffer is from left to right and bottom up.
| |
| '''RGB888''' --> 24-bit RGB (888)
| |
| | |
| == Statistics Lecture One, 02.01.16 ==
| |
| '''Primary Material:'''
| |
| '''Course Homepage:''' http://www.cs.ioc.ee/ITKStat
| |
| '''e-Book:''' http://onlinestatbook.com/Online_Statistics_Education.pdf
| |
| '''
| |
| '''Primary Software'''
| |
| '''R:''' https://www.r-project.org/ | | '''R:''' https://www.r-project.org/ |
|
| |
|
| '''Introduction to Statistics'''
| | == Python I703 == |
| '''Descriptive''' statistics are used for presenting, organizing and summarizing data.
| |
| '''Inferential''' statistics are about drawing conclusions about a population based on data observed in a sample.
| |
|
| |
|
| '''Data Analysis Process'''
| |
| '''Data collection and preparation:''' Collect Data, prepare codebook, set up structure of data, enter data, screen data for errors
| |
| '''Exploration of data:''' Descriptive statistics, graphs
| |
| '''Analysis:''' Explore relationship between variables, compare groups
| |
|
| |
|
| == Python Lecture and Practicum Notes ==
| | Get an idea what to do by next week. Ideas: |
| | | '''1. Pyglet,pygame or kivy for a game or simulation:''' |
| '''Lecture 1'''
| |
| ---------------
| |
| | |
| Get an idea what to do by next week. Ideas: | |
| // '''1. Pyglet,pygame or kivy for a game or simulation:'''
| |
| 1.1. MP beat em' up | | 1.1. MP beat em' up |
| 1.2. Survival space sim, use webcam for dynamic view | | 1.2. Survival space sim, use webcam for dynamic view |
Line 258: |
Line 21: |
| http://learnpythonthehardway.org/ | | http://learnpythonthehardway.org/ |
|
| |
|
| // '''2. WebApp'''
| | '''2. WebApp''' |
| 2.1. Budget Management with a GUI | | 2.1. Budget Management with a GUI |
|
| |
|
| // '''Notes:'''
| | '''Notes:''' |
| * Set up RPi web-server | | * Set up RPi web-server |
| * Use '''XMind''' to map the idea first | | * Use '''XMind''' to map the idea first |
Line 269: |
Line 32: |
| * Check out Notepad++ | | * Check out Notepad++ |
|
| |
|
| == Web App Programming Lecture and Practicum Notes == | | == Web Application Programming I702 == |
| database: MySQL -- hosts data, indexed | | |
| php: Generates html, server side language | | '''node.js''' |
| Apache: reads php files and over excecution to PHP interpreter | | '''ngix''' |
| html: Structure and contents of the web page, (dom-tree) | | '''nchan''' |
| css: styling information
| | |
| javascript: client side programming, interacts with html
| | '''Useful links:''' |
| ubuntu: hosts the programs ( packetization, tcp segmentation ) | | http://enos.itcollege.ee/phpmyadmin/ |
| | http://enos.itcollege.ee/~ksaareme |
| | |
| | '''W3C validation:''' https://validator.w3.org/ |
| | |
| | == Node.js == |
| | |
| | Stuff about node.js. |
| | |
| | == Operating Systems == |
|
| |
|
| HTTP requests
| | Command line: |
| '''node.js -- php'''
| |
| '''ngix -- apache'''
| |
| '''nchan'''
| |
|
| |
|
| http sockets, streaming push module
| | '''Options modify the behavior of commands:''' |
| WAMP for Windows
| | ls -a lists all contents of a directory, including hidden files and directories |
| | ls -l lists all contents in long format |
| | ls -t orders files and directories by the time they were last modified |
| | Multiple options can be used together, like ls -alt |
| | '''From the command line, you can also copy, move, and remove files and directories:''' |
| | cp copies files |
| | mv moves and renames files |
| | rm removes files |
| | rm -r removes directories |
| | '''Wildcards are useful for selecting groups of files and directories''' |
|
| |
|
| http://enos.itcollege.ee/phpmyadmin/
| |
| PHP and APACHE is there
| |
|
| |
|
| http://enos.itcollege.ee/~ksaareme to see changes
| |
|
| |
|
| '''W3C validation''' https://validator.w3.org/
| | '''Redirection reroutes standard input, standard output, and standard error.''' |
|
| |
|
| == Node.js ==
| | '''The common redirection commands are:''' |
| | > redirects standard output of a command to a file, overwriting previous content. |
| | >> redirects standard output of a command to a file, appending new content to old content. |
| | < redirects standard input to a command. |
| | | redirects standard output of a command to another command. |
|
| |
|
| Stuff about node.js.
| | '''A number of other commands are powerful when combined with redirection commands:''' |
| | sort: sorts lines of text alphabetically. |
| | uniq: filters duplicate, adjacent lines of text. |
| | grep: searches for a text pattern and outputs it. |
| | sed : searches for a text pattern, modifies it, and outputs it. |
Statistics I604
Primary Study Materials:
Course Homepage: http://www.cs.ioc.ee/ITKStat
e-Book: http://onlinestatbook.com/Online_Statistics_Education.pdf
Primary Software:
R: https://www.r-project.org/
Python I703
Get an idea what to do by next week. Ideas:
1. Pyglet,pygame or kivy for a game or simulation:
1.1. MP beat em' up
1.2. Survival space sim, use webcam for dynamic view
1.3. Planet rotation simulation
Check out
http://nehe.gamedev.net/
http://learnpythonthehardway.org/
2. WebApp
2.1. Budget Management with a GUI
Notes:
* Set up RPi web-server
* Use XMind to map the idea first
* Run basic website and deploy webapp to it.
* Check out RPi components and sensors.
* Buy a breadboard.
* Check out Notepad++
Web Application Programming I702
node.js
ngix
nchan
Useful links:
http://enos.itcollege.ee/phpmyadmin/
http://enos.itcollege.ee/~ksaareme
W3C validation: https://validator.w3.org/
Node.js
Stuff about node.js.
Operating Systems
Command line:
Options modify the behavior of commands:
ls -a lists all contents of a directory, including hidden files and directories
ls -l lists all contents in long format
ls -t orders files and directories by the time they were last modified
Multiple options can be used together, like ls -alt
From the command line, you can also copy, move, and remove files and directories:
cp copies files
mv moves and renames files
rm removes files
rm -r removes directories
Wildcards are useful for selecting groups of files and directories
Redirection reroutes standard input, standard output, and standard error.
The common redirection commands are:
> redirects standard output of a command to a file, overwriting previous content.
>> redirects standard output of a command to a file, appending new content to old content.
< redirects standard input to a command.
| redirects standard output of a command to another command.
A number of other commands are powerful when combined with redirection commands:
sort: sorts lines of text alphabetically.
uniq: filters duplicate, adjacent lines of text.
grep: searches for a text pattern and outputs it.
sed : searches for a text pattern, modifies it, and outputs it.