Happy Chinese New Year, everyone!
It is time to kickstart our Python User Group meetups for the year 2018.
We already have a great location: Zendesk is once again inviting us to their awesome office.
This month we have three fantastic topics that are very suitable for beginners. If you have just learned Python and you would like to get some inspiration for small personal projects that leverage your new skill, these talks should be great for you!
7pm: Meet & Greet
7:30pm: How being a sore loser at board games helped an amateur coder write his first 1,000 line project by Yi Sheng Siow
Asymmetric board games, where players play different roles and game actions, are getting more popular, but it's not easy to balance such games. Amateur programmer and sore loser Yi Sheng will share how he scripted the rules and game flow of board game Not Alone (https://boardgamegeek.com/boardgame/194879/not-alone) in Python and made python objects play against each other thousands of times to validate his suspicions that the game is unfair for one side. He then expanded his program to attempt to find and test winning strategies in the game.
Siow Yi Sheng had a life of wealth management and financial audit before focusing his efforts on his love of programming. He is currently doing projects in web development, software engineering, data science, web scraping to build his portfolio and enter the industry.
8:00pm: Comparing building command line tools with argparse, docopt and click by Saurabh Hirani
Saurabh will go through sample use cases of building a common command line tool with argparse, docopt and click (in that order of complexity) and call out situations in which each library works best. 8:30pm: Switching between terminal logs and json logs by Saurabh Hirani
We will look at how to leverage the python logging library - jsonlogger and structlog to switch between terminal and json logs - optimizing for user readability and output parseability.
Saurabh is currently working at Autodesk Singapore as a Senior DevOps engineer and loves to automate infrastructure and build tools.