+Welcome to Etherpad!
This pad text is synchronized as you type, so that everyone viewing this page sees the same text. This allows you to collaborate seamlessly on documents!
Get involved with Etherpad at http://etherpad.org
Attendance:
Phillip Doehle, OSU High Performance Computing Center
Mark Laufersweiler, OU Libraries, @laufers *
Evan Linde, OSU High Performance Computing Center
**Sabrina Bailey, OSU Library
James Deaton*, GPN, @jed
*Gerwald Koehler OSU_CHS
hervu,OSU Spears school of Business*
Greg Hendrickson, OSU Civil Engineering**
Ian Mooers - OU Price College of Business
Viviana Freire Zapata, OSU-EPP (*)
Christian Ayala-Ortiz(*), OSU-EPP
Juliana Artier, Microbiology, OSU*
*Sue Katz Ambun Rogers State Unversity Biology*
Anton Avramov* OSU Microbiology and Molecular Genetics
Neil Miller, OSU Microbiology and Molecular Genetics*
Alejandro La Manna Animal Science*
Jordan Fischer OSU Biosystems Engineering *
*Rabecca Wiseman OSU civil engineering*
Aubrey McCutchan, OSU CIVE**
Prakash Sah*, OSU$
Jianan Zhao, OSU School of Chemical Engineering *
*Asma Lama tamang, OSU CEAT
Li Ding, OSU School of Hospotality and Tourism Management
Sudhir doranga, microbiology department*
Xiaoyu Qiao, OSU biochemistry and molecular biology*
*Leah Huling, OSU civil engineering
Peter Hoyt (Helper) (Biochemistry and Molecular Biology)*
Rob Burnap, OSU Microbilogy & Molecular Genetics
Nurhan Dunford*
In one sentence, what do you hope to learn?
Basics of programming
Basics on how to use python
A basic introduction to the python
Primarily, how to use git
Some computing basics
how to use python coding
some basics idea about coding and programming. this would be my first time to use python.
know some coding basics
To be a seniour python developer
text scrawling
Basics for working with data in Python
basic knowledge about Python programming
How to utilize git version control and sql
Learn the basics of how to do some programming
How to deal with data in python and other tools
How to use python
How to use python for large data consumption
interested in python
Python exposure and a better understanding of how the carpentry workshops function
Interested in big data managemen tools
cmd
@swcarpentry carpentries
Day one - Command Shell
Data files for this lesson: http://swcarpentry.github.io/shell-novice/data/shell-novice-data.zip
- Download the file from the above link. We suggest that you download this file to your Desktop but it is not necessary.
Commands:
"ls" -- list files
"cd" -- change directory
"pwd" -- print working directory
"nano" -- a text editor
"cat" -- dump contents of file to the screen (short for "concatenate")
"less" -- a paginator that lets you scroll up and down (hit the q key to quit)
"touch" -- update the timestamp on a file (creates the file if it doesn't exist)
"rm" -- delete (i.e. remove) a file
"rmdir" -- delete a directory (directory has to be empty)
"mv" -- move or rename a file
"mkdir" -- create a new directory
"wc" -- word count (counts lines, words, and characters)
"sort" -- sort things (sorts alphabetically by default)
"head" -- show the first lines (usually defaults to 10 lines) of a file
"tail" -- show the last lines (usually defaults to 10 lines) of a file
"echo" -- print something on the screen
"cp" -- copy files
Command examples:
"cd" -- (no arguments) go to your home directory
"cd directoryname" -- go into "directoryname"
"cd .." -- go up one directory
"cd ../.." -- go up two levels
"ls -F" -- list files (and folders) with flags to show what type they are
"ls -a" -- list all files including hidden files (names starting with a ".")
"ls -l" -- list files in "long" format
"ls -t" -- list files sorted by time (most recently modified first)
"ls -tr" or "ls -t -r" -- reverse the time sorting (make the most recently modified files appear last)
"rm -r directoryname" -- remove the directory "directoryname" and all its contents
"wc -l somefile" -- show just the number of lines in "somefile"
"sort -n somefile" -- sort the lines from "somefile" numerically
"head -n 2 somefile" -- show only the first two lines of "somefiile"
"tail -n 2 somefile" -- show only the last two lines of "somefile"
"grep" -- find a pattern in a file
Concepts:
directory -- a folder
home directory -- the directory where your user profile is found. On Windows, this is usually "c:\users\your_username" (or "/c/users/your_username" in git-bash); on Mac this is usually "/Users/your_username"; on Linux this is usually "/home/your_username".
path -- a file or folder location
absolute path -- a path that begins with a "/"
relative path -- a path that does NOT begin with a "/"
glob -- a pattern to match files (e.g. "*.pdb" which matches anything that ends with ".pdb")
- Examples:
- "*.txt" -- anything that ends with ".txt"
- "NENE*" -- anything thst starts with "NENE"
- "*[AB].txt" -- anything that ends with "A.txt" or "B.txt"
pipe -- method for chaining commands together, making the output of one command be the input for the next command; the commands are separated by a vertical bar (pipe) character "|".
redirection -- send the screen output to a file instead of showing it on the screen
- Examples:
- "somecommand > output.txt" -- send the output from "somecommand" to the file "output.txt"; this will overwrite any existing content in "output.txt".
- "somecommand >> output.txt" -- add (append) the output from "somecommand" to the file "output.txt"
- Both of these examples will create the file "output.txt" if it doesn't already exist.
loop -- a way to repeat commands for some list/set
comments -- lines in a bash script beginning with "#"; bash will ignore everything after the "#" character
The "for" loop in bash:
General form:
for variable in list
do
commands
done
Example from the lesson:
for filename in basilisk.dat unicorn.dat
do
head -n 5 $filename
echo ''
done
This for loop can also be written as a single line by replacing the line breaks (except for the one after "do") with semicolons (";"):
for filename in basilisk.dat unicorn.dat; do head -n 5 $filename; echo ''; done
Another example from the lesson:
for filename in *.dat; do cp $filename original-$filename; done
Day One -- Python
Yay Day one Python! You were wonderful.
*Day Two -- Python
https://www.dropbox.com/sh/g79ws46e7ij4e6y/AADk2uow7LfojJHaW10eoxiNa?dl=0
Version Control using Git and GitHub
Setting up Git
- git config --global user.name "Your name"
- git config --global user.email "email@place.com"
- git config --global color.ui "auto"
Line feed and carriage return issues:
- On OS X and Linux:--
- $ git config --global core.autocrlf input
- And on Windows:
- $ git config --global core.autocrlf true
Setting editors
- Atom
- git config --global core.editor "atom --wait"
- nano
- git config --global core.editor "nano -w"
- BBEdit (Mac, with command line tools)
- git config --global core.editor "edit -w"
- Sublime Text (Mac)
- git config --global core.editor "subl -n -w"
- Sublime Text (Win, 32-bit install)
- git config --global core.editor "'c:/program files (x86)/sublime text 3/sublime_text.exe' -w"
- Sublime Text (Win, 64-bit install)
- git config --global core.editor "'c:/program files/sublime text 3/sublime_text.exe' -w"
- Notepad++ (Win, 32-bit install)
- git config --global core.editor "'c:/program files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
- Notepad++ (Win, 64-bit install)
- git config --global core.editor "'c:/program files/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
- Kate (Linux)
- git config --global core.editor "kate"
- Gedit (Linux)
- git config --global core.editor "gedit --wait --new-window"
- Scratch (Linux)
- git config --global core.editor "scratch-text-editor"
- emacs
- git config --global core.editor "emacs"
- vim
- git config --global core.editor "vim"
Collaboration Exercise:
Country list
- Russian Federation
- Israel
- China
- Germany
- Italy
- Ecuador
- Sierra Leone
- Venezuela
- Nepal
- Bhutan
- Colombia
- Madagascar
We will fork, clone, edit, add & commit, push a country information file and then perform a pull
request to share back to the upstream our changes and suggestions.
1 Fork (cloud)
2 clone (cloud to local your copy)
3 edits/changes (local)
4 git add and commit to version (local)
5 git push (local to cloud your copy)
6 pull request (cloud) (notify upstream (owner) available changes)
7 owner/upstream can accept, ask for more detail, decline
8 fetch from upstream to forked(own) (local)
9 merge upstream/master to local master (local)
10 push to origin (local to cloud) own
--allow-unrelated-histories
Mac Users: If you have an error message when trying to run git commands, run "xcode-select --install" to install developer command line tools.
Things to test:
git and Anaconda for Windows users (Windows 10) with a space in the username / profile directory
Additional Resources:
Software Carpentry: https://software-carpentry.org/
Data Carpentery: http://www.datacarpentry.org/
Contact Information:
Phillip Doehle: doehle@okstate.edu
Patrick Boyle: thomas.patrick.boyle@okstate.edu
Mark Laufersweiler : laufers@ou.edu
Okstate High Performance Computing Center: https://hpcc.okstate.edu/
Okstate Libraries: https://library.okstate.edu/
Okstate Carpentries: https://osu-carpentry.github.io/