Menu Navigation Menu

Recent posts

Figma55- Noise

Time is valuable. I'm not going to waste your time. I won't even take a minute of it! With Figma 55 you can learn all about Figma's hidden gems and plugins, in 55 seconds flat.

Five Multiprocessing Python Tips from PyCon 2019

Cloud City’s Senior Developer Pamela McA’Nulty delivered a talk at PyCon 2019 on Saturday, May 4th based on her previous blog post on multiprocessing in Python.

Tag Trash for Policy Change #trashtag

Feeling inspired from seeing all the #trashtag content on social media over the past month, but don’t know where to start? We have just the solution! But first, some backstory…

Things I Wish They Told Me About Multiprocessing in Python

Framing the problem

“Some people, when confronted with a problem, think ‘I know, I’ll use multithreading’. Nothhw tpe yawrve o oblems.” (Eiríkr Åsheim, 2012)

If multithreading is so problematic, though, how do we take advantage of systems with 8, 16, 32, and even thousands, of separate CPUs? When presented with large Data Science and HPC data sets, how to you use all of that lovely CPU power without getting in your own way? How do you tightly coordinate the use of resources and processing power needed by servers, monitors, and Internet of Things applications - where there can be a lot of waiting for I/O, many distinct but interrelated operations, and non-sharable resources - and you still have to crank through the preprocessing of data before you send it somewhere?

Secure Passwords Without Punishing Rules

Building secure web applications is really, really hard. One of the biggest attack vectors in modern webapps is passwords. Even if we set aside the dangers of phishing or other more sophisticated attacks, passwords themselves are a source of danger, between simple passwords, guessable passwords, shared passwords among family members or teammates, and reused passwords across accounts.