Skip to content

Getting started with Python ... / Meine ersten Gehversuche mit Python ...

License

Notifications You must be signed in to change notification settings

Tset-Noitamotua/_learnpython

Repository files navigation

Getting started with Python ...

python_logo

But why Python?

Python community has its own unique character. Python has a culture which finds an ideal balance between fast-moving innovation and diligent caution. It emphasizes readability, minimizes "magic," treats documentation as a first-class concern, and has a tradition of well-tested, backward-compatible releases in both the core language and its ecosystem of libraries. It blends approachability for beginners with maintainability for large projects, which has enabled its presence in fields as diverse as scientific computing, video games, systems automation, and the web. (Source: Heroku)

A Roadmap to Learn Python - 3 Learning Paths

PART I (Beginner Path)

Learning Python for total beginners that have no previous programming experience.

PRO TIP: As soon as you come to learning conditional statements if, elif, else and while use Python Tutor to 'visualize' code execution - it really helps a lot in understanding what's happening under the hood.

Use http://pythontutor.com to 'visualize' your code

PART II (Intermediate Path)

For people that have at least some previous programming experience even if it's from other languages.

PART III (Specialization Path)

Where do you want to go after Part I and II? There are a lot of special areas and it is hard to master them all thus you should decide where you want to put your focus.

  • Backend/API development
  • Frontend/GUI development
  • Web Application/Apps development (front- & backend)
  • Quality assurance & Test automation
  • Game development
  • Data mining & analytics
  • System/Server administration (DevOps)
  • AI & machine Learning
  • Hacking
  • ...

Editor (IDE) recommendation

MY! GIT configuration

What do I need to do to configure git properly for Github?

  1. git config --global user.name "tset-noitamotua"

  2. git config --global user.email "[email protected]"

  3. git config --global credential.helper wincred (Windows only?)

    NOTE: first time you use e.g. git push you will be prompt for credentials though

GIT tricks

HOW TO create a new repository on the command line

... and connect it to your repo on Github

echo "# Name of Project" >> README.md
git init
git add README.md
git commit -m "initial commit"
git remote add origin https://github.com/Tset-Noitamotua/repository_name.git
git push -u origin master

HOW TO push an existing repository from the command line

git remote add origin https://github.com/Tset-Noitamotua/repository_name.git
git push -u origin master

HOW TO setup your fork repo so that it is connected with original repo on Github.

That allows you to easily merge changes from original repo into your fork and thus keeps you synced:

1. git clone https://github.com/Tset-Noitamotua/robotframework    # my fork url
2. git remote add upstream https://github.com/robotframework/robotframework.git    # upstream repo url
3. git checkout master    # if not already on master branch
4. git pull upstream master    # or any other branch
5. git push origin master    # to update your remote branch

For more details read original Github documentation:

Sync a fork of a repository to keep it up-to-date with the upstream repository (syncing a fork)

HOW TO reset url of cloned repo so that it points to your (later created) fork

You might need this in case you cloned a repo directly (without forking it in the first place) but later decide to fork it.

git remote set-url origin https://github.com/Tset-Noitamotua/awesome-test-automation   # my fork url

HOW TO undo an initial commit

NOTE: can't use resethere because there is only one commit in that case

git update-ref -d HEAD

It will delete the named reference HEAD, so it will reset (softly, you will not lose your work) all your commits of your current branch (more details on stackoverflow.com). To get an working git repo after that you will have to init it again:

git init
git add .
git commit -am "initial commit"
git push -f

A short background story

As my first kid - my son John - was born in 2013 I said "if he can learn a language in 2 or 3 years then I should be able to learn Python with ease in the same time - even with no prior programming skills."

John is 6 years now as I once again edit this document, which I started to write somewhere in the end of 2014. While John learned to walk, to run, to ride bicycle and to speak almost two languages (German and Russian) I am still on a beginner like level in Python. In the past few years I have started several times more or less from scratch and unfortunately never finished. Meanwhile my second kid - my daughter Mia - was born (2016) and she's already speaking almost like a pro while I am still/again learning. This is just another attempt to continue my Python journey. I swear to myself I will master that beast! (09/08/2018)

About

Getting started with Python ... / Meine ersten Gehversuche mit Python ...

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published