The Concurrency with Python Series: Concurrency with Python: Why? Concurrency with Python: Threads and Locks Concurrency with Python: Functional Programming Concurrency with Python: Separating Identity From State Concurrency with Python: Actor Models Concurrency with Python: CSP … | Continue reading
NOTE: This blog post complements a PyDistrict presentation on the same topic posted on this date.Thanks to Rami Chowdhury for inviting me to speak, and the PyDistrict organizers for hosting me.Code samples from this talk are available at this GitHub repository.The full YouTube ta … | Continue reading
Overview During my ongoing work on TinyDevCRM, I realized I need this ability to trace / audit / lock down dependencies while also not adversely impacting my development velocity during the MVP phase (where dependencies come and go in a game of musical chairs). I also want to rep … | Continue reading
This is a summary of TinyDevCRM development for the week of February 15th, 2020 to February 22th, 2020.Goals for last week [❓] Work through React.js tutorial [❓] Work through TypeScript tutorial [❓] Understand how pieces of create-react-app come together [❓] Build out working, f … | Continue reading
This is a summary of TinyDevCRM development for the week of February 8th, 2020 to February 15th, 2020.Goals for last week [❓] Published two technical reviews on this blog [❓] Re-do the landing page to reflect updated value proposition [❓] Purchase Balsamiq Cloud license and wire … | Continue reading
Subscribe to TinyDevCRM development here.Discussion on Hacker News I'm taking the covers off an effort I've been making over the past two weeks. I call it TinyDevCRM. Friends and acquaintances also call it “tinydev”. It's a new software project I'm building to address some of the … | Continue reading
(I'd like to give a big shoutout to John Chandler Burnham, who published a very clear and comprehensive set of notes that helped me immensely.) Background I've used Python in production for about three years now. Even as it's a wonderful Swiss Army knife, Python also feels limiti … | Continue reading
I understand this post may sound like a paid advertisement. Let me be very clear, I'm not paid or otherwise incentivized by Bose to say any of this. Bose didn't tell me to do shit. Would you find swear words on professional marketing copy? I don't think so. Consider this my prope … | Continue reading
(Correction on 01/13/2020): Original version of this post mentioned that “GNU grep ships as a standalone executable”. lobste.rs user aufziehvogel pointed out that GNU grep is actually a set of dynamically linked libraries, which both he and I verified through ldd:$ lsb_release -a … | Continue reading
The Concurrency with Python Series: Concurrency with Python: Why? Concurrency with Python: Threads and Locks Concurrency with Python: Functional Programming Concurrency with Python: Separating Identity From State Concurrency with Python: Actor Models Concurrency with Python: CSP … | Continue reading
Much of this information comes from Computerphile and their video on monads. I found their videos extraordinarily beginner-friendly and understandable. Highly recommend you to check them out 😄I would also like to give a big shoutout to Jason DeLaat for building the pymona … | Continue reading
Overview The field of data-intensive computing introduces systems design around datasets much larger than a single machine’s disk or memory, and hence must be persisted and processed across multiple machines. Ensuring data-intensive tasks are correct, performant, and efficient, a … | Continue reading
Overview Actors are containers of state communicating with each other via message passing. Based on a received message, actors can choose to: Send messages to other actors Create new actors Alter how it treats new messages it receives And that’s it! State exists, yet remains enc … | Continue reading
Overview In contrast to the threading/locking concurrency model I described previously, the functional concurrency model abstracts most if not all hardware primitives out of the application picture. No mutable state, and no side effects, can exist in (pure) functional programming … | Continue reading
Overview Threads and locks are a software-defined formalization of the hardware underneath, and as such comprise the simplest possible concurrency model. It forms the basis of other concurrency abstractions built on top of it, so it’s important to understand in this regards. Howe … | Continue reading