Sign in

Fredrik Sjöstrand

@fronkan.bsky.social
69 followers 142 following 66 posts

Software engineering, ML and data in general, but python in particular! very occasional blogging at: fronkan.hashnode.dev. Storing code at: github.com/Fronkan.

PostsRepliesMedia
Fredrik Sjöstrand @fronkan.bsky.social · 01/05/2026
Obsidian for markdown and support for mermaid together with a coding agent has been absolutely wonderful for creating timeplans. The agent pulling data from multiple excel files and creating a unified plan. Also having it update the mermaid Gant charts as people fire off new things in meetings
000
Fredrik Sjöstrand @fronkan.bsky.social · 07/10/2025
While I built multiple applications and packages at home and work, this is the first time I pushed something to pypi!🥳 It was inspired by this episode of @pythonbytes.fm: pythonbytes.fm/episodes/sho... Where Michael said someone should build a package based on a blog post covered. Well here we go!
pythonbytes.fm
010
Fredrik Sjöstrand @fronkan.bsky.social · 07/10/2025
Testionary (test-dictionary) is a tiny package that provides a dictionary subclass that allow you to track which keys has been accessed and modified. Available on pypi.org/project/test... github.com/Fronkan/test...
github.com
GitHub - Fronkan/testionary: Inspectable dictionaries for testing in Python
Inspectable dictionaries for testing in Python. Contribute to Fronkan/testionary development by creating an account on GitHub.
000
Fredrik Sjöstrand @fronkan.bsky.social · 18/06/2025
I think this is a really good point from @jamellebouie.net. I find outsourcing the formation of my view on a topic to an LLM a scary proposition. This is also why I'm a bit wary around coding assistants. When am I outsourcing so much of my thinking that it impacts my understanding of the problem?
010
Fredrik Sjöstrand @fronkan.bsky.social · 03/06/2025
Here is an image of the editor I live coded in 7 minutes using #textual with it's own source code open.
A terminal window with a text editor. It has a directory tree to the left and a syntax highlighted python file to the right.
010
Fredrik Sjöstrand @fronkan.bsky.social · 03/06/2025
A post based on a lightning talk I had at work a while ago at this point. I live coded a text editor with syntax highlighting in 7 minutes, using Python and Textual. fronkan.hashnode.dev/writing-a-te...
fronkan.hashnode.dev
000
Fredrik Sjöstrand @fronkan.bsky.social · 03/06/2025
While I have published any blog posts in quite a while, I have been drafting a few posts. I hope to start pressing publish a bit more.
100
Fredrik Sjöstrand @fronkan.bsky.social · 31/05/2025
Passing this note along for others. I wrote down some thoughts on how to write better workarounds through comments and tesring a couple of years ago, fronkan.hashnode.dev/tips-tricks-....
fronkan.hashnode.dev
041
Fredrik Sjöstrand @fronkan.bsky.social · 28/05/2025
Thanks to @willmcgugan.bsky.social and the textualize team for this time. Textual seems to be a TUI library that is second to none, python or otherwise. I'm sad that the company didn't work out, but glad that you gave it a go as textual made me fall in love with the terminal applications
willmcgugan.github.io
What’s next?
Some years ago I had the opportunity to work fulltime on project of mine. This was at a time where I fully intended to take a year off, but being able to make a living off a project of your own creati...
2123
Fredrik Sjöstrand @fronkan.bsky.social · 07/05/2025
Well, maybe it's more the immutability 🤔
000
Fredrik Sjöstrand @fronkan.bsky.social · 07/05/2025
When writing elixir, it still feels strange to code without for loops
000
Fredrik Sjöstrand @fronkan.bsky.social · 01/05/2025
Seeing PEP-735, Dependency Groups, included in the latest version pip makes me really happy! With both uv and pip supporting them I'm pretty sure I can move away completely from requirements.txt 🥳
peps.python.org
PEP 735 – Dependency Groups in pyproject.toml | peps.python.org
This PEP specifies a mechanism for storing package requirements in pyproject.toml files such that they are not included in any built distribution of the project.
000
Fredrik Sjöstrand @fronkan.bsky.social · 25/04/2025
I would generally agree with this perspective on LLMs. To me the aggressive stance against there usefulness looks more like a counter reaction against the hype. Are they as useful as the hype-side tries to tell you, absolutely not. Are they useless, also no.
030
Fredrik Sjöstrand @fronkan.bsky.social · 02/04/2025
With everything going on and the virality of bad news it's easy to miss the progress happening. Like a person had a mechanical heart for 100 days as a temporary solution until getting a heart transplant. Even being discharged from hospital during that time 🤯 youtu.be/f7cuOS7nmDY?...
youtu.be
Man Survives 100 Days With Titanium Heart Transplant
YouTube video by ColdFusion
010
Fredrik Sjöstrand @fronkan.bsky.social · 01/04/2025
😂
000
Fredrik Sjöstrand @fronkan.bsky.social · 01/04/2025
After listening to the latest episode of Developer Voices (pod.link/developer-vo...), I installed Nixos in WSL. It looks quite interesting. Also, I love how I can run both ubuntu and Nixos in WSL at the same time.
pod.link
Developer Voices
Deep-dive discussions with the smartest developers we know, explaining what they're working on, how they're trying to move the industry forward, and what we can learn from them.You might find the solu...
010
Fredrik Sjöstrand @fronkan.bsky.social · 28/03/2025
Tried out asdf yesterday, mainly to manage erlang and elixir. Feels like it would have been nice if plugins could manage build dependencies for you. Copy-pasting the install commands from the readme obviously wasn't hard, but increased the friction slightly
000
Fredrik Sjöstrand @fronkan.bsky.social · 21/03/2025
Beside the changing table we have a box of baby socks. I found 3 socks, non of which where equal to the others. Looking around I found another one, which obviously didn't match the other 3. I gave up and started on a new pair, guess I will find 5 non-matching socks the next time ¯⁠\⁠_⁠(⁠ツ⁠)⁠_⁠/⁠¯
000
Fredrik Sjöstrand @fronkan.bsky.social · 20/03/2025
I am very annoyed by LLMs highjacking the term AI
000
Fredrik Sjöstrand @fronkan.bsky.social · 15/03/2025
Been vim-curios for a while. Seems like #neovim with Kickstart(github.com/nvim-lua/kic...) is what I needed to get going😁
github.com
GitHub - nvim-lua/kickstart.nvim: A launch point for your personal nvim configuration
A launch point for your personal nvim configuration - nvim-lua/kickstart.nvim
000
Reposted by Fredrik Sjöstrand
Mike Ginn @shutupmikeginn.bsky.social · 08/03/2025
its amazing how chatgpt knows everything about subjects I know nothing about, but is wrong like 40% of the time in things im an expert on. not going to think about this any further
126187674576
Reposted by Fredrik Sjöstrand
Savannah Ostrowski @savannah.dev · 09/03/2025
🐍 Calling all Python data engineers! I’m looking to chat with Python developers working in data engineering—whether you’re building pipelines, wrangling data, or just figuring things out as you go. Details 👇
54413
Reposted by Fredrik Sjöstrand
pytest.org @pytest.org · 23/02/2025
Hi everyone, Just to announce that the handle bsky.app/profile/nico... is not Bruno, but an impersonator. That account has already been reported. Bruno can be reached at bsky.app/profile/soli....
bsky.app
51412
Fredrik Sjöstrand @fronkan.bsky.social · 22/02/2025
This is absolutely mind-blowing! 🤯
010
Fredrik Sjöstrand @fronkan.bsky.social · 21/02/2025
Came across a poll on linked-in on how to create private fields and methods in Python. Almost 50% of the over 1100 respondents picked __my_var. The technically correct answer of "private, what do you mean private?" didn't exist 🧐 and _my_var, what I believe is industry practice was way lower 🤔
100
Fredrik Sjöstrand @fronkan.bsky.social · 21/02/2025
I didn't have time to finish advent of code last year, but I have now picked it up again. Its nice to have some coding challenges to think about while on parental leave 🧑🏼‍💻
000
Fredrik Sjöstrand @fronkan.bsky.social · 07/01/2025
Day 1 of parental leave and things are going very well. First time having her in the stroller while shoveling snow and it went flawlessly 😄 And with a path cleared, we could take a walk with the stroller for the afternoon nap 😴
010
Fredrik Sjöstrand @fronkan.bsky.social · 04/01/2025
This is probably a pretty good tip for me 😅 Although I don't have nearly as much time to write nowadays, that draft folder has been growing. And published content sort of hasn't
000
Fredrik Sjöstrand @fronkan.bsky.social · 19/12/2024
It feels quite strange to have only two days of work, this being the last at the office, left before my 7 month parental leave. I also realised I haven't been away from work or education longer than like 2 months since I was 6 🫢
000
Fredrik Sjöstrand @fronkan.bsky.social · 12/12/2024
I really enjoy hacking together small automation tools for non-programers that solves some annoying problem 👨🏼‍💻
000
Fredrik Sjöstrand @fronkan.bsky.social · 07/12/2024
I don't know if it's by coincidence or the all-knowingness of the algorithm. But this video popped up in my feed and I really resonated with it. "Complexity homeostasis" is an interesting idea and feels like a valuable concept youtu.be/czzAVuVz7u4?...
youtu.be
Why Can't We Make Simple Software? - Peter van Hardenberg
YouTube video by Handmade Cities
000
Reposted by Fredrik Sjöstrand
Seth Larson @sethmlarson.dev · 06/12/2024
Legitimate supply-chain attack affecting Python package "Ultralytics" abused multiple levels of GitHub Actions shell injection vulnerabilities in workflows to publish malware to PyPI.
4177
Fredrik Sjöstrand @fronkan.bsky.social · 05/12/2024
I felt like I was guided through todays #adventofcode. From the start I knew what bart 2 would be, but the problem felt difficult. So I focused on doing that part and when I came to the second part I could see the solution very clearly. Just build out from the checking code and problem solved 😊
010
Fredrik Sjöstrand @fronkan.bsky.social · 03/12/2024
Here we go! #adventofcode
020
Fredrik Sjöstrand @fronkan.bsky.social · 02/12/2024
I just want to add that this doesn't make me a die hard fan of DRY (Don't repeat yourself). While generally pretty good advice, it can also lead to you implementing the wrong abstractions. This often manifest in functions with different modalities. I personally like WET (Write everything twice)
110
Fredrik Sjöstrand @fronkan.bsky.social · 02/12/2024
Me in the middle of solving #adventofcode: "I will just copy-paste and change this code, that will be much quicker" Me when debugging my solution: "Damn it, I missed to fix this in both places"
010
Fredrik Sjöstrand @fronkan.bsky.social · 02/12/2024
Accidentally woke up early today, so 2/2 days on #adventofcode. This is going way better than expected 😁
020
Fredrik Sjöstrand @fronkan.bsky.social · 01/12/2024
My advent of code set up feels even better this year. uv is pretty great for managing python environments
000
Fredrik Sjöstrand @fronkan.bsky.social · 01/12/2024
I will see how many days I will get through this year, I don't imagine it will be that many. But, I did the first day of Advent of code at least 😊
000
Fredrik Sjöstrand @fronkan.bsky.social · 30/11/2024
For anyone coming across the "ghost engineer" stuff, this is a great take on it. One key thing, currently there is no published paper on the actual ghost engineer things, only a code quality metric predictor thing that they seemed to use for it. Very important difference. youtu.be/_a_Vz2ytVCQ?...
youtu.be
Do 10% of developers do *nothing*?
YouTube video by Alberta Tech
110
Fredrik Sjöstrand @fronkan.bsky.social · 28/11/2024
@podsnack.se has now allowed @lawik.bsky.social to BEAM 🤭 elixir into my ears so many times that I can't resist the temptation. Don't tell Python 🤫
221
Fredrik Sjöstrand @fronkan.bsky.social · 27/11/2024
I am experimenting a bit with using #textual for viewing my Bluesky feed. For replies in the feed it shows the top post, the reply, the parent of the reply and ... if the grand parent isn't the root. Textuals links worked great for opening images in a browser using the webbrowser module.
100
Fredrik Sjöstrand @fronkan.bsky.social · 26/11/2024
The amount of bad advice on how to write #Python code, written in actual Python groups on LinkedIn is astonishing 😤
030
Fredrik Sjöstrand @fronkan.bsky.social · 26/11/2024
I came across this article introducing the concept of EffVer. I'm not sure on my feelings about it, but as a concept it's at least interesting. In the end, as a consumer the effort of adoption is one of the most important pieces of information. jacobtomlinson.dev/effver/
jacobtomlinson.dev
EffVer: Version your code by the effort required to upgrade
Version numbers are hard to get right. Semantic Versioning (SemVer) communicates backward compatibility via version numbers which often lead to a false sense of security and broken promises.
100
Reposted by Fredrik Sjöstrand
Ned Batchelder @nedbat.com · 24/11/2024
Classes in #Python can define their own formatting mini-languages for f-strings by defining __format__. Full details: nedbatchelder.com/blog/202204/...
A latitude/longitude class that can be formatted in various ways.  Full text at https://gist.github.com/nedbat/4deeb3c4277bb29bf55bf5fb1d11b33e
010221
Reposted by Fredrik Sjöstrand
Julia Evans @b0rk.jvns.ca · 25/11/2024
I've been writing a lot about the terminal recently, and I've realized that there are two kinds of rules in the terminal: - "Laws of Terminal Physics"(that are ~always true) - Social Rules (that only work because people mostly agree on them) here are some of the social rules!
1441871
Reposted by Fredrik Sjöstrand
Matt Nava @mattnava.bsky.social · 23/11/2024
10th anniversary Journey thread, recreated: I was the art director of thatgamecompany's Journey. It set the course of my career and my art. I'm forever thankful to the community of players and their incredible love for the game. This is a thread comparing early dev images and how things shipped.
The intro title shot from the PS3 game Journey. This is from the finished game. The title "Journey" is displayed above a distant mountain, with the player character seeing it from atop a sand dune.The intro title shot from a work in progress version of Journey. The title's font is different, the composition is asymmetrical, and the distant mountain is not as tall as the final version.My initial sketch for the title shot for the game Journey. A simple, small line drawing featuring the player character in the foreground and the mountain in the distance.
11331761154
Fredrik Sjöstrand @fronkan.bsky.social · 24/11/2024
I have had this on my list of things to try out for quite a while, but haven't gotten around to it yet
000
Fredrik Sjöstrand @fronkan.bsky.social · 22/11/2024
I have tried to refollow a lot of people from twitter. So the input should be at least similar to before. But still, my feed here feels very different from X. It feels like my old twitter feed in ye olden days
000
Fredrik Sjöstrand @fronkan.bsky.social · 20/11/2024
I guess we stay with traditions. Hello world 👋
030