<?xml version="1.0" encoding="UTF-8"?><rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
><channel><title>python Archives | Ciprian Mandache</title>
<atom:link href="https://ciprian.51k.eu/tag/python/feed/" rel="self" type="application/rss+xml" /><link></link>
<description>Software Engineer and more</description>
<lastBuildDate>Sat, 18 Apr 2026 03:01:43 +0000</lastBuildDate>
<language>en-US</language>
<sy:updatePeriod>
hourly	</sy:updatePeriod>
<sy:updateFrequency>
1	</sy:updateFrequency><image>
<url>https://ciprian.51k.eu/wp-content/uploads/2019/02/cropped-terminal-icon-32x32.png</url><title>python Archives | Ciprian Mandache</title><link></link>
<width>32</width>
<height>32</height>
</image>
<item><title>hybrids3: S3-Compatible Object Storage That Doesn&#8217;t Require a PhD</title><link>https://ciprian.51k.eu/docker-hybrids3-s3-compatible-object-storage-that-doesnt-require-a-phd/</link>
<dc:creator><![CDATA[psyb0t]]></dc:creator>
<pubDate>Sat, 18 Apr 2026 01:48:54 +0000</pubDate>
<category><![CDATA[AI]]></category>
<category><![CDATA[Containers]]></category>
<category><![CDATA[Python]]></category>
<category><![CDATA[boto3]]></category>
<category><![CDATA[docker]]></category>
<category><![CDATA[mcp]]></category>
<category><![CDATA[object-storage]]></category>
<category><![CDATA[python]]></category>
<category><![CDATA[s3]]></category>
<category><![CDATA[self-hosted]]></category>
<category><![CDATA[sqlite]]></category>
<category><![CDATA[storage]]></category>
<guid
isPermaLink="false">https://ciprian.51k.eu/?p=1151</guid><description><![CDATA[<img
width="300" height="169" src="https://ciprian.51k.eu/wp-content/uploads/2026/04/gQRUXYrT9oz7nKxPhYFhwX-650-80.jpg-300x169.webp" class="webfeedsFeaturedVisual wp-post-image" alt="" style="display: block; margin-bottom: 5px; clear:both;max-width: 100%;" link_thumbnail="" decoding="async" fetchpriority="high" srcset="https://ciprian.51k.eu/wp-content/uploads/2026/04/gQRUXYrT9oz7nKxPhYFhwX-650-80.jpg-300x169.webp 300w, https://ciprian.51k.eu/wp-content/uploads/2026/04/gQRUXYrT9oz7nKxPhYFhwX-650-80.jpg.webp 650w" sizes="(max-width: 300px) 100vw, 300px" />Put nginx in front of MinIO at a path prefix and try to use presigned URLs. Go ahead, I&#8217;ll wait. The problem is AWS Signature V4. The signature covers the ...]]></description>
</item>
<item><title>docker-planesnitch: Snitching on Every Aircraft That Dares Fly Near You</title><link>https://ciprian.51k.eu/docker-planesnitch-snitching-on-every-aircraft-that-dares-fly-near-you/</link>
<dc:creator><![CDATA[psyb0t]]></dc:creator>
<pubDate>Sun, 08 Mar 2026 04:00:57 +0000</pubDate>
<category><![CDATA[Containers]]></category>
<category><![CDATA[Python]]></category>
<category><![CDATA[Radio]]></category>
<category><![CDATA[ads-b]]></category>
<category><![CDATA[adsb-fi]]></category>
<category><![CDATA[aircraft tracking]]></category>
<category><![CDATA[airplanes.live]]></category>
<category><![CDATA[aviation]]></category>
<category><![CDATA[container]]></category>
<category><![CDATA[devops]]></category>
<category><![CDATA[docker]]></category>
<category><![CDATA[flight tracking]]></category>
<category><![CDATA[geolocation]]></category>
<category><![CDATA[military]]></category>
<category><![CDATA[monitoring]]></category>
<category><![CDATA[notifications]]></category>
<category><![CDATA[open data]]></category>
<category><![CDATA[plane spotting]]></category>
<category><![CDATA[python]]></category>
<category><![CDATA[real-time]]></category>
<category><![CDATA[squawk]]></category>
<category><![CDATA[surveillance]]></category>
<category><![CDATA[telegram]]></category>
<category><![CDATA[webhook]]></category>
<guid
isPermaLink="false">https://ciprian.51k.eu/docker-planesnitch-snitching-on-every-aircraft-that-dares-fly-near-you/</guid><description><![CDATA[<img
width="300" height="276" src="https://ciprian.51k.eu/wp-content/uploads/2026/03/Screenshot_2026-03-11_01-15-08-300x276.png" class="webfeedsFeaturedVisual wp-post-image" alt="" style="display: block; margin-bottom: 5px; clear:both;max-width: 100%;" link_thumbnail="" decoding="async" srcset="https://ciprian.51k.eu/wp-content/uploads/2026/03/Screenshot_2026-03-11_01-15-08-300x276.png 300w, https://ciprian.51k.eu/wp-content/uploads/2026/03/Screenshot_2026-03-11_01-15-08-768x708.png 768w, https://ciprian.51k.eu/wp-content/uploads/2026/03/Screenshot_2026-03-11_01-15-08.png 829w" sizes="(max-width: 300px) 100vw, 300px" />I live under a flight path. Military cargo planes, government jets, police helicopters, the occasional emergency squawk — all of it flying over my head and I had no idea ...]]></description>
</item>
<item><title>mt5-httpapi: MetaTrader 5 Running in Docker With a REST API Because MQL5 Can Go Fuck Itself</title><link>https://ciprian.51k.eu/mt5-httpapi-metatrader-5-running-in-docker-with-a-rest-api-because-mql5-can-go-fuck-itself/</link>
<dc:creator><![CDATA[psyb0t]]></dc:creator>
<pubDate>Sun, 15 Feb 2026 10:02:05 +0000</pubDate>
<category><![CDATA[Containers]]></category>
<category><![CDATA[Python]]></category>
<category><![CDATA[Trading]]></category>
<category><![CDATA[ai skill]]></category>
<category><![CDATA[algorithmic trading]]></category>
<category><![CDATA[Automation]]></category>
<category><![CDATA[container]]></category>
<category><![CDATA[crypto]]></category>
<category><![CDATA[devops]]></category>
<category><![CDATA[docker]]></category>
<category><![CDATA[flask]]></category>
<category><![CDATA[forex]]></category>
<category><![CDATA[kvm]]></category>
<category><![CDATA[market data]]></category>
<category><![CDATA[metatrader]]></category>
<category><![CDATA[metatrader5]]></category>
<category><![CDATA[mt5]]></category>
<category><![CDATA[openclaw]]></category>
<category><![CDATA[python]]></category>
<category><![CDATA[qemu]]></category>
<category><![CDATA[rest api]]></category>
<category><![CDATA[smart money concepts]]></category>
<category><![CDATA[technical analysis]]></category>
<category><![CDATA[trading]]></category>
<category><![CDATA[trading bot]]></category>
<category><![CDATA[windows]]></category>
<guid
isPermaLink="false">https://ciprian.51k.eu/mt5-httpapi-metatrader-5-running-in-docker-with-a-rest-api-because-mql5-can-go-fuck-itself/</guid><description><![CDATA[<img
width="300" height="215" src="https://ciprian.51k.eu/wp-content/uploads/2026/02/fxall-metatrader-xx-for-desktop-300x215.png" class="webfeedsFeaturedVisual wp-post-image" alt="" style="display: block; margin-bottom: 5px; clear:both;max-width: 100%;" link_thumbnail="" decoding="async" srcset="https://ciprian.51k.eu/wp-content/uploads/2026/02/fxall-metatrader-xx-for-desktop-300x215.png 300w, https://ciprian.51k.eu/wp-content/uploads/2026/02/fxall-metatrader-xx-for-desktop-768x550.png 768w, https://ciprian.51k.eu/wp-content/uploads/2026/02/fxall-metatrader-xx-for-desktop.png 860w" sizes="(max-width: 300px) 100vw, 300px" />MetaTrader 5 only runs on Windows. The official Python library only works on Windows. The MQL5 scripting language is a C++ knockoff from 2005 that makes you want to gouge ...]]></description>
</item>
<item><title>docker-qwenspeak: Text-to-Speech Over SSH Because APIs Are Overrated</title><link>https://ciprian.51k.eu/docker-qwenspeak-text-to-speech-over-ssh-because-apis-are-overrated/</link>
<dc:creator><![CDATA[psyb0t]]></dc:creator>
<pubDate>Thu, 12 Feb 2026 22:18:05 +0000</pubDate>
<category><![CDATA[AI]]></category>
<category><![CDATA[Containers]]></category>
<category><![CDATA[ai]]></category>
<category><![CDATA[audio processing]]></category>
<category><![CDATA[container]]></category>
<category><![CDATA[cuda]]></category>
<category><![CDATA[docker]]></category>
<category><![CDATA[Emotion]]></category>
<category><![CDATA[flash attention]]></category>
<category><![CDATA[gpu]]></category>
<category><![CDATA[lockbox]]></category>
<category><![CDATA[Multilingual]]></category>
<category><![CDATA[nvidia]]></category>
<category><![CDATA[python]]></category>
<category><![CDATA[qwen]]></category>
<category><![CDATA[qwen3 tts]]></category>
<category><![CDATA[speech synthesis]]></category>
<category><![CDATA[ssh]]></category>
<category><![CDATA[text to speech]]></category>
<category><![CDATA[tts]]></category>
<category><![CDATA[voice cloning]]></category>
<category><![CDATA[voice design]]></category>
<category><![CDATA[voice generation]]></category>
<category><![CDATA[yaml]]></category>
<guid
isPermaLink="false">https://ciprian.51k.eu/docker-qwenspeak-text-to-speech-over-ssh-because-apis-are-overrated/</guid><description><![CDATA[<img
width="300" height="225" src="https://ciprian.51k.eu/wp-content/uploads/2026/02/qwen3-tts-has-been-officially-released-as-open-source-v0-mr7qo9bvmgfg1-300x225.webp" class="webfeedsFeaturedVisual wp-post-image" alt="" style="display: block; margin-bottom: 5px; clear:both;max-width: 100%;" link_thumbnail="" decoding="async" srcset="https://ciprian.51k.eu/wp-content/uploads/2026/02/qwen3-tts-has-been-officially-released-as-open-source-v0-mr7qo9bvmgfg1-300x225.webp 300w, https://ciprian.51k.eu/wp-content/uploads/2026/02/qwen3-tts-has-been-officially-released-as-open-source-v0-mr7qo9bvmgfg1.webp 640w" sizes="(max-width: 300px) 100vw, 300px" />Every cloud TTS service is the same story. Send text, get audio, pay per character, pray the API doesn&#8217;t change. Your audio goes to someone else&#8217;s servers. Your costs scale ...]]></description>
</item>
<item><title>docker-lockbox: SSH Into a Container, Get Shit Done, Touch Nothing Else</title><link>https://ciprian.51k.eu/docker-lockbox-ssh-into-a-container-get-shit-done-touch-nothing-else/</link>
<dc:creator><![CDATA[psyb0t]]></dc:creator>
<pubDate>Thu, 12 Feb 2026 17:33:41 +0000</pubDate>
<category><![CDATA[Containers]]></category>
<category><![CDATA[base image]]></category>
<category><![CDATA[cli tools]]></category>
<category><![CDATA[cloudflare tunnel]]></category>
<category><![CDATA[command whitelist]]></category>
<category><![CDATA[container]]></category>
<category><![CDATA[cuda]]></category>
<category><![CDATA[devops]]></category>
<category><![CDATA[docker]]></category>
<category><![CDATA[file operations]]></category>
<category><![CDATA[gpu]]></category>
<category><![CDATA[injection]]></category>
<category><![CDATA[installer generator]]></category>
<category><![CDATA[lockbox]]></category>
<category><![CDATA[locked ssh]]></category>
<category><![CDATA[mesh network]]></category>
<category><![CDATA[no shell]]></category>
<category><![CDATA[path sandbox]]></category>
<category><![CDATA[python]]></category>
<category><![CDATA[remote execution]]></category>
<category><![CDATA[rocm]]></category>
<category><![CDATA[sandbox]]></category>
<category><![CDATA[security]]></category>
<category><![CDATA[shell]]></category>
<category><![CDATA[ssh]]></category>
<category><![CDATA[tailscale]]></category>
<category><![CDATA[vpn]]></category>
<category><![CDATA[zero trust]]></category>
<guid
isPermaLink="false">https://ciprian.51k.eu/docker-lockbox-ssh-into-a-container-get-shit-done-touch-nothing-else/</guid><description><![CDATA[<img
width="300" height="199" src="https://ciprian.51k.eu/wp-content/uploads/2026/02/steel-security-safe-300x199.webp" class="webfeedsFeaturedVisual wp-post-image" alt="" style="display: block; margin-bottom: 5px; clear:both;max-width: 100%;" link_thumbnail="" decoding="async" srcset="https://ciprian.51k.eu/wp-content/uploads/2026/02/steel-security-safe-300x199.webp 300w, https://ciprian.51k.eu/wp-content/uploads/2026/02/steel-security-safe.webp 612w" sizes="(max-width: 300px) 100vw, 300px" />Every time I build a tool that runs inside a Docker container, I hit the same problem: how do I let people interact with it remotely? The obvious answer is ...]]></description>
</item>
<item><title>cli-llm-chat: The Command-Line Rebel&#8217;s Answer to AI Madness</title><link>https://ciprian.51k.eu/cli-llm-chat-the-command-line-rebels-answer-to-ai-madness/</link>
<dc:creator><![CDATA[psyb0t]]></dc:creator>
<pubDate>Sat, 20 Jul 2024 16:31:00 +0000</pubDate>
<category><![CDATA[AI]]></category>
<category><![CDATA[Python]]></category>
<category><![CDATA[ai]]></category>
<category><![CDATA[artificial intelligence]]></category>
<category><![CDATA[chat]]></category>
<category><![CDATA[chatbot]]></category>
<category><![CDATA[cli]]></category>
<category><![CDATA[generative ai]]></category>
<category><![CDATA[GPT]]></category>
<category><![CDATA[huggingface]]></category>
<category><![CDATA[large language models]]></category>
<category><![CDATA[llm]]></category>
<category><![CDATA[python]]></category>
<category><![CDATA[telebram bot]]></category>
<category><![CDATA[telegram]]></category>
<category><![CDATA[transformers]]></category>
<guid
isPermaLink="false">https://ciprian.51k.eu/?p=903</guid><description><![CDATA[<img
width="300" height="300" src="https://ciprian.51k.eu/wp-content/uploads/2024/10/cli-llm-chat-300x300.webp" class="webfeedsFeaturedVisual wp-post-image" alt="" style="display: block; margin-bottom: 5px; clear:both;max-width: 100%;" link_thumbnail="" decoding="async" srcset="https://ciprian.51k.eu/wp-content/uploads/2024/10/cli-llm-chat-300x300.webp 300w, https://ciprian.51k.eu/wp-content/uploads/2024/10/cli-llm-chat-150x150.webp 150w, https://ciprian.51k.eu/wp-content/uploads/2024/10/cli-llm-chat-768x768.webp 768w, https://ciprian.51k.eu/wp-content/uploads/2024/10/cli-llm-chat.webp 1024w" sizes="(max-width: 300px) 100vw, 300px" />Forget the flashy buttons and over-engineered UIs — real hackers live and die by the command line. Welcome to cli-llm-chat, where the chaos of AI meets the simplicity (and brutality) ...]]></description>
</item>
<item><title>py-telegram-logger-client: Logging for the Cyberpunk Era</title><link>https://ciprian.51k.eu/py-telegram-logger-client-logging-for-the-cyberpunk-era/</link>
<dc:creator><![CDATA[psyb0t]]></dc:creator>
<pubDate>Sat, 06 Jul 2024 13:57:59 +0000</pubDate>
<category><![CDATA[Python]]></category>
<category><![CDATA[cli]]></category>
<category><![CDATA[client]]></category>
<category><![CDATA[instant message]]></category>
<category><![CDATA[logger]]></category>
<category><![CDATA[logging]]></category>
<category><![CDATA[module]]></category>
<category><![CDATA[python]]></category>
<category><![CDATA[telegram]]></category>
<category><![CDATA[telegram-logger]]></category>
<guid
isPermaLink="false">https://ciprian.51k.eu/?p=896</guid><description><![CDATA[<img
width="300" height="205" src="https://ciprian.51k.eu/wp-content/uploads/2024/10/py-telegram-logger-client-300x205.jpg" class="webfeedsFeaturedVisual wp-post-image" alt="" style="display: block; margin-bottom: 5px; clear:both;max-width: 100%;" link_thumbnail="" decoding="async" srcset="https://ciprian.51k.eu/wp-content/uploads/2024/10/py-telegram-logger-client-300x205.jpg 300w, https://ciprian.51k.eu/wp-content/uploads/2024/10/py-telegram-logger-client-1024x699.jpg 1024w, https://ciprian.51k.eu/wp-content/uploads/2024/10/py-telegram-logger-client-768x524.jpg 768w, https://ciprian.51k.eu/wp-content/uploads/2024/10/py-telegram-logger-client.jpg 1026w" sizes="(max-width: 300px) 100vw, 300px" />Alright, imagine you’ve built a killer system for monitoring security vulnerabilities, and now you need real-time alerts piped directly to your Telegram. No more logging into servers, no more dealing ...]]></description>
</item>
<item><title>supervisor-shell-ui &#8211; a console alternative to the built-in web interface</title><link>https://ciprian.51k.eu/supervisor-shell-ui-a-console-alternative-to-the-built-in-web-interface/</link>
<dc:creator><![CDATA[psyb0t]]></dc:creator>
<pubDate>Mon, 24 Jul 2023 08:16:00 +0000</pubDate>
<category><![CDATA[Python]]></category>
<category><![CDATA[alternative interface]]></category>
<category><![CDATA[console]]></category>
<category><![CDATA[console interface]]></category>
<category><![CDATA[console ui]]></category>
<category><![CDATA[linux]]></category>
<category><![CDATA[process manager]]></category>
<category><![CDATA[python]]></category>
<category><![CDATA[service manager]]></category>
<category><![CDATA[shell]]></category>
<category><![CDATA[shell gui]]></category>
<category><![CDATA[shell ui]]></category>
<category><![CDATA[supervisor]]></category>
<category><![CDATA[supervisor ui]]></category>
<category><![CDATA[terminal]]></category>
<category><![CDATA[unofficial]]></category>
<guid
isPermaLink="false">https://ciprian.51k.eu/?p=551</guid><description><![CDATA[<img
width="300" height="196" src="https://ciprian.51k.eu/wp-content/uploads/2023/12/supervisor-shell-ui-300x196.png" class="webfeedsFeaturedVisual wp-post-image" alt="" style="display: block; margin-bottom: 5px; clear:both;max-width: 100%;" link_thumbnail="" decoding="async" srcset="https://ciprian.51k.eu/wp-content/uploads/2023/12/supervisor-shell-ui-300x196.png 300w, https://ciprian.51k.eu/wp-content/uploads/2023/12/supervisor-shell-ui-1024x670.png 1024w, https://ciprian.51k.eu/wp-content/uploads/2023/12/supervisor-shell-ui-768x502.png 768w, https://ciprian.51k.eu/wp-content/uploads/2023/12/supervisor-shell-ui.png 1183w" sizes="(max-width: 300px) 100vw, 300px" />Hey there! So, you know how sometimes you stumble upon a tool that just makes your life easier? That&#8217;s exactly what happened with me and supervisor-shell-ui. This nifty little command-line ...]]></description>
</item>
</channel>
</rss>
<!--
*** This site runs WP Super Minify plugin v2.0.1 - http://wordpress.org/plugins/wp-super-minify ***
*** Total size saved: 3.473% | Size before compression: 18717 bytes | Size after compression: 18067 bytes. ***
-->