programming_presentation/presentation-others.adoc

102 lines
1.8 KiB
Plaintext
Raw Permalink Normal View History

2020-09-30 15:00:17 +02:00
== Tools
=== Tools >>>> Process
=== !
[%step]
* Repetitive work is boring...
* ...and prone to errors
* Why should I work, when I can make my computer do it for me?
=== !
image::nap.jpg[]
=== Version control systems
[%step]
* Version control is a system that records changes to a file or set of files over time so that you can recall specific versions later.
=== Why?
[%step]
* Revert files back to a previous state
* "Freeze" important versions of a document
* Compare changes over time
* Track progress of a project
* See who modified something, and when
=== Modern version control systems
[%step]
* Remote backup of files
* Powerful tool for collaboration
=== GIT
[%step]
* Currently the most used
* Free and open source
* Distributed
* Powerful and flexible
* Learning curve can be steep
=== Installation
https://git-scm.com/download
Package managers are heavily recommended!
anaconda, chocolatey, homebrew...
=== but, what is it?
image::architecture.png[]
=== How to use GIT
[%step]
* register at the remote git server
** https://git.webhosting.rug.nl/
* create repository
* add participants __ssh public keys__
* clone the repository in your machine
=== workflow
image::git_workflow.jpg[]
=== !
IMPORTANT: You **WILL** regret not using version control
// --------------------------------------------------------------------------------------------------------------------
=== Other tools
[%step]
* Integrated Development Environments
* Debuggers
* Libraries
* Reference sites: stack overflow, rosettacode, kaggle...
=== !
image::github-stack-overflow-y-code-my-code-44625886.png[]
=== Scripting languages
=== Do it once, do it right
[.fragment]
(and never do it again)
[.fragment]
image:geeks-and-repetitive-tasks.png[]
=== !
https://automatetheboringstuff.com/
image::Automate_coversmall_0.png[]