Weeknotes 2022-08-29
,Back to normal work, which is fun, too.
Started a mouse delivery side business. The catching part works great and now I'm looking for new customers. Do you need some mice? I already talked to a bird of prey at a nearby park. Maybe there's an arbitrage opportunity.
Created a new repository holding a template for new Django projects / apps.
Articles
- Digitizing 55,000 pages of civic meetings | Hmm, I should really try out s3-ocr
- Use partial() With Django’s transaction.on_commit() to Avoid Late-Binding Bugs | Always used lambda for that, but partial sounds great, too
- Weeklog for Week 33: August 15 to August 21 | Johannes Weeklog
- Experimental Demonstration of the tomatotopic organization in the soprano (Cantatrix sopranica L.) | More research needed..
- iOS Privacy: Instagram and Facebook can track anything you do on any website in their in-app browser | Didn't know it was possible to inject Javascript into an in app webview. This was what shop.co did for their universal shopping basket, but they needed a browser extension for that which are not allowed on iOS. Cool, should be technically possible now to do things like that on mobile devices 😁.
- Understanding async Python for the web | Good article, saw it last week already but forgot to add it to weeknotes
- The Jupyter+git problem is now solved | For nbdev2 - I would really like something to see like this as a precommit hook
- Exploring ScotRail Audio Clips using Ibis-Datasette | Need a random excuse?
- Opening the Pandora’s Box of AI Art | A lot of interesting sources in the article, but I don't care this whole copyright stuff etc.. seems like it's time to have a way to deploy some models for fun and profit 😎
- Science and Technology links (August 7 2022)
- Top Programming Languages 2022 Python’s still No. 1, but employers love to see SQL skills | Still perplexed that Python comes out on top
Twitter
- oh you have underlying issues? that’s cool mine are all overlaying issues. incredibly obvious issues. just out there for the world to see
- There are two ways to make a #Python object convertible to a dictionary: 1) Define .keys() and .__getitem__() 2) Make it iterable producing key/value pairs
- Exciting news: #Parti and #Imagen teamed up to create a hybrid system with Parti creating 256x256 images which then recieve Imagen super resolution to produce 1024x1024 pixels! See the diagram below for how it works.
- Boiling JFrogs ("Why is Artifactory slow") | Thread on MySQL performance optimization
- It was never safe to turn off your computer.
- There is no "product team" in an Agile shop. There is just a dev team that makes product decisions as they work. A product silo is a waterfall phase. You can't sluff that work off onto somebody else.
Design
- Poster, chuck berry / steve miller band | This whole website is great: all the links, annotations, the emoji timeline (omg)
Podcasts
- Kathryn Koehler // Director of Developer Productivity Engineering @ Netflix (Alphalist CTO Podcast)
- Flet: Flutter apps in Python (Talk Python To Me)
- WR1393 Die Pataphysik der Delfine (WRINT Wissenschaft)
- Bits und so #806 (Buffer Underrun) (Bits und so)
- Caleb Porzio on Alpine.js, Laravel Livewire & more (Remote Ruby)
Out of Context Images
Weeknotes 2022-08-22
,On the road holding a Python training course. Didn't do much else.
Bugs
- There's an annoying bug making tracebacks unreadable in JupyterLab for me when using `%load_ext rich`. Maybe it's this one?
Software
- AWX Project | Upstream of things like Ansible Tower, etc..
- Liquid Safe, customer-facing template language for flexible web apps
- Behave is behaviour-driven development, Python style
- Welcome to Pytest-BDD’s documentation!
Podcasts
- Alternativlos, Folge 50
- Ich nunge dich! - Von der Macht der Anerkennung und Anerkenntnissen (Was denkst du denn?)
- WR1394 Metropolis (Geschichtsunterricht)
Out of Context Images
Weeknotes 2022-08-15
,Recorded and produced a new Podcast Episode about Ansible. Had to learn that streaming 48Khz 24bit FLAC audio to AirPods is too much for the Bluetooth bandwidth. At first, I thought the recording was broken, but then realized it was just a Bluetooth glitch, phew.
Did some preparation for a Python training course next week (setting up a JupyterHub instance, preparing a HedgeDoc installation). Also, normal work as usual until we got evacuated because of a bomb disposal (a 500kg bomb from the second world war was found a few hundred meters down the street).
Progress on having a landing page where people can create podcasts/blogs:
- Did some infrastructure work to be able to use a Python installation via pyenv on production
- ...
Articles
- Falling for Kubernetes | I tend to disagree, but maybe sometime someone will prove me wrong, so I have to keep listening
- How SQLite Helps You Do ACID
- “Autistic people can't acknowledge when they are wrong” | Very familiar vibe 😬
- Putting SOLID into Perspective | SOLID, CUPID, etc. - I don't know. It's not possible to give clear advice on how things should be done. But it could be helpful to know how things tend to go wrong, just to be able to recognize them when it happens 🤓.
Courses
- One of my all-time favourites. Stare at the red dot on the woman's nose for 30 seconds, then look at an empty wall while blinking quickly.
- wife: "we should babyproof the—" me: "there are already other orgs handling baby safety, here we mainly focus on baby capabilities research.
- #AgileMaxim 1: It is in the doing of the work that we discover the work that we must do. Doing exposes reality. | Good thread.
Software
- HedgeDoc | write and share markdown
- Excalidraw | Virtual whiteboard for sketching hand-drawn like diagrams. Collaborative and end-to-end encrypted.
- Donut on Hugging Face / Donut on GitHub | I've done things like this with tesseract getting much better results. But I'm really happy to see people starting to use transformers for problems like this. Very promising.
Podcasts
- WR1392 Strukturwandel ist teuer (WRINT Wirtschaftskunde) | Instead of raising the base rate (making investments to lower gas comsumption more difficult) or artificially lowering the gas price (providing an incentive to consume more gas) the rational economic way to handle a gas shortage would be to tax gas consumption. Of course this is not possible politically, but..
- #309 – John Carmack: Doom, Quake, VR, AGI, Programming, Video Games, and Rockets (Lex Fridman Podcast) | Good episode
- Pydantic v2 - The Plan (Talk Python To Me) | pydantic-core is completely written in rust, leading to smaller binaries compared to cython
- WR1390 China (Wer redet ist nicht tot) | Interesting, media coverage about Chinas social scoring is mainly creating a myth, etc..
- Jochen Distelmeyer (Reflektor) | Trying to listen to more music instead of podcasts - maybe I can start by just listening to podcasts about music, no?
Out of Context Images
Weeknotes 2022-08-08
,Back to work. Picked up my jogging habit after having to stop during covid / vacation and it worked out fine. Made plans to get more into music again (atm just got more hardware).
Progress on having a landing page where people can create podcasts/blogs:
- #32 fixed by only having one place to turn on the test client
- #33 moved registry app urls into urls.py of registry app
- #34 tests for account and social account adapters only open for registration with appropriate setting present
- #35 test coverage is now at 100%
- #36 fixed some mypy issues
- #37 replace poetry with pip-tools
- #38 fixed showing multiple running deployments at the same time for tests
- #39 tried to speed up ansbile (mostly without success)
- #40 handling of exceptions raised during starting a deployment
Articles
- Heuristics for Effective Software Development Organizations: A continuously evolving list.*
- Why i love still php and javascript after 20+ years | I know I have to work on my attitude, but for me programming is a lot of fun and I couldn't care less whether the result is useful for anybody. Sometimes I have to rewatch DjangoCon 2021 | Programming for pleasure | Daniele Procida to remind me I have to work on this.
Videos
- Basic dot Py | Demonstration of some features of textual
- Agile & Scrum Don't Work | Allen Holub In The Engineering Room Ep. 9 | Learned a new acronym: SAFE stands for shitty agile for enterprises 😁
- Interesting twitter thread on the usage of the enum module
- Python 3.10's match/case can use custom __eq__ for matching. Here's how to use regex cases: Many more good tips at @raymondh 's
- Took myself on a Saturday Night date and blew my mind with Mersenne Primes. A good evening all round 💃
- W.I.P. collage tool for stable diffusion
Software
- Django 4.1 released
- pytest-mock | Finally getting rid of those ugly stacked decorators or nested with-statements 🥳
Podcasts
- Rachel Potvin // VP Engineering at GitHub - Episode #55 (alphalist)
- Gebrochene Fußnoten ...von Umbrüchen, Wandlungen und plötzlichen Lebensereignissen (Was denkst du denn?)
- Catherine Opie (Design Matters)
- The Benefits Of Python And Django For Going From Zero To MVP At Speed - Episode 373 (Podcast.__init__)
- Django 4.1 Preview - Jeff Triplett (Ep 115 Replay) | Good overview over the Django 4.1 features - release was last week.
Out of Context Images
Weeknotes 2022-08-01
,For the last two weeks, I was on vacation, so no work. Seems my job is to listen to podcasts because there were significantly fewer episodes I listened to. Need to check with my boss 😄.
Had to learn the hard way that shared albums in apple photos are completely broken and will cripple your images (max width or height set to 2048px + conversion from heic to low quality jpeg). And even if you stop following a shared album, those broken images still sit in your library and you have to remove them manually one by one. Great fun if you just imported a few hundred photos from a shared album. I don't understand tech companies' obsession with destroying their user's photos. Signal is bad, Whatsapp is worse, and now even you Apple? A working method for Apple devices is to generate an iCloud share link (which takes lots of time) from which others then can import the original photos.
Progress on having a landing page where people can create podcasts/blogs:
- Finished Add Email Backend for Registration Mails. This feature uses mailgun which is a pretty crappy service, if you've found a better one, please let me know.
- Add WordPress Ansible Service #28 moved the ansible folder over from podlove_test
- Cleaned up the register link and removed some unused code #30
- Use always _base.html in favor of base.html #31
- Added styled allauth templates #27
Articles
- Weeknotes: Joining the board of the Python Software Foundation | I Hope Johannes picks up his weeklog again so I'll be able to link his instead 😏.
Videos
- What Is a Reasonable Percentage for Code Coverage and Why Is It 100%? [Jürgen Gmach - PyOhio 2022]
- What's next for Vue? Evan You explains... | I've given up on following vue for quite some time now and even stepped back as an organiser of Vue.js Cologne. I've done one big vue project and lots of small htmx / Django projects in the last year and I feel much more productive using the latter. Learning Vue was always a hedge against being forced to use Javascript for web development, but the risk lowered substantially over the last year. But occasionally I still like to look at Vue content 😀.
Software
Podcasts
- Oral History - Die Geschichte des Heavy Metal (Hörsaal)
- Sebastian Raschka: AI Education and Research (The Gradient Podcast) | Good episode, it has been quite some time I heard someone talk about ordinal regression (used it for learning to rank more than a decade ago).
- Python Language Summit 2022 (Talk Python To Me)