What can an amateur programmer do with some Python?
Programming is an inspiring activity.
I love Dan Nguyen's introduction to programming for everyone: http://ruby.bastardsbook.com/about/#why
However, this well written article did not answer my own questions, how I could REALLY use programming for my work. As I am a Linux enthusiast, I decided to learn Python - or at least read some books about it.
The following list collects some ideas, how learning Python can be not only inspiring, but also of some practical use for my needs.
1. Make backups
Write a script that copies some folders to a USB-stick or SD-card
2. Web scraping: watch dog script
A script checks the price of an item in a web shop and opens an alert, if it drops below a certain number.
3. Draw diagrams
It takes only 5 lines of code to draw a pie chart:
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35, 25, 25, 15])
4. Analyze texts
Most frequent words, average length of sentences, unique words in a text etc.
The following code lists the 100 most frequent words in a file and counts unique words:
5. Pelican: static website generator
While I am still in the process of finding my writing voice for my blog https://fritzsalzmann.com, I am already happy with the static website generator Pelican that runs in the background.
6. Combine random words and create ideas
The Japanese word game Shiritori is great for crating new ideas. A Python script can create chains of random words.
7. Play some games and adapt them
For example, I have a Python script that can play Blackjack (from one of Al Sweigarts books). I also found a script that can play Conway's Game of Life.
8. Understand text mining
To be honest: I don't understand it yet, how libraries for machine learning recognize patterns in clusters of words. To be even more honest: I don't think I will ever use them myself. However, I bought some cheap Kindle books to understand the basic concepts of using them.
9. My text Editor "El Primitivo"
About four years ago, I looked for code snippets online and frankensteined them together to a text editor. I named it "El Primitivo", because it is really very simple and I don't fully understand how parts of it are working. But I am actually using it for work. It is fast and simple. Maybe one day I will write a cleaner version of it.
10. Repetitive clicks and text entry with Pyautogui
When you upload a series of t-shirts to a site like Spreadshirt or Merch by Amazon, there are a lot of repetitive clicks and entries to text fields involved. The library Pyautogui can do that for me. It can click to a certain spot on the screen, wait for some seconds, enter some text etc.