Python
Programming in Python and creating your own app or software can be fun and difficult. A high level programming language, which can be used to develop websites, GUI (Graphical User Interfaces), games, working alongside other programming languages and much more.
Some of the resouces I have used to learn Python are:
- Sololearn - website/app avaliable on IOS/Android, I found sololearn to be helpful when learning to code in Python
- Lynda.com / Linkedln learning - website/app, provide videos and some files you can run along side the video to see how the code works
- Python crash course - book, great book to go over different python syntax of how to write the code, vareity of mini tasks for you to try and of course mini projects at the end for you to try out.
- Learning python - book, contains alot of information on python as well as different sytax from eariler python versions to python 3
- Automate the boring stuff - book, contains alot of information on python and some modules or ways to complete a task. Only breifly looked at the book to see how to use a python module.
- Python in easy steps - book, very simple python scripts within the book for you to write for yourself and see how they work
- Kivy a python module which is similar to tkinter but you can use it to create applications and GUI's, quite a fun module to use.
In terms of software used for creating and running python I used the Python IDE from the offical python website as well as sololearn to create python scripts that I can use on the terminal and run as a GUI (Graphical User Interface) e.g. a game of pong or noughts and crosses. Atom and MS VS can also be used to code in python and create scripts
If you are stuck and don't know how to fix a python script asking your tutor is best otherwise, stackoverflow, sololearn and reddit are great too but make sure your issue is not on their forums already😅
2021 update:
- Pygame can be used for making games in python
- BeautifulSoup used for web scrapping
Frameworks:
- Flask- lightweight framework that can be used for developing web applications and used when making smaller applications compared to django
- Django - used for more advanced web applications
