Philipp Trommler's Blog - publishinghttps://blog.philipp-trommler.me/en/2022-01-17T21:29:48+01:00Uberspace is Being Sued2022-01-17T21:29:48+01:002022-01-17T21:29:48+01:00Philipp Trommlertag:blog.philipp-trommler.me,2022-01-17:/en/posts/2022/01/17/misc-uberspace-is-being-sued/<p><a href="https://uberspace.de">Uberspace</a> is <a href="https://netzpolitik.org/2022/urheberrecht-musikindustrie-verklagt-hoster-von-youtube-dl/">currently being
sued</a>
for hosting <a href="https://yt-dl.org">youtube-dl</a>'s main page. This is the
industry's second attempt in unpublishing information about the tool
after their unsuccessful try in taking down youtube-dl's GitHub
repository.</p><p>I am no lawyer, but the fact that GitHub <a href="https://github.blog/2020-11-16-standing-up-for-developers-youtube-dl-is-back/">has
restored</a>
youtube-dl's <a href="https://github.com/ytdl-org/youtube-dl/">repository</a> after
internal investigations (and, admittedly, quite some community backlash) back in
2020 leads me to the conclusion that youtube-dl might not be as illegal as the
music industry tries to make you believe. I don't want to get any deeper into
the legal arguments here, as they differ from country to country, anyways, but
I'm pretty sure everyone has their own idea whether it's ethical that you
shouldn't be allowed to make a private copy to consume media in the way <em>you</em>
would like it<sup id=sf-misc-uberspace-is-being-sued-1-back><a href=#sf-misc-uberspace-is-being-sued-1 class=simple-footnote title="Maybe you even have to make a copy in order to consume it at all because their stupid web shit doesn't work on your devices because you don't swap them like your underpants because you're trying to avoid e-waste... 🙄">1</a></sup>.</p>
<p>Still, the music industry is going for another round, this time here in Germany.
Their new target is Uberspace, a liberal hosting provider, which stands in for
free speech and privacy. And happens to host youtube-dl's home page. I don't
share every view with Uberspace but they have their stances and I respect them
for that. I'm hosting this very blog there, too, and their service is excellent.
Additionally, they provide a variety of programming languages/run times to
chose from.</p>
<p>So, if you'd like to support Uberspace with standing in for user's freedom,
<a href="https://dashboard.uberspace.de/register">consider becoming a paying
customer</a> there, too. Just make sure to
chose a sustainable plan<sup id=sf-misc-uberspace-is-being-sued-2-back><a href=#sf-misc-uberspace-is-being-sued-2 class=simple-footnote title="They're going for the pay-what-you-want, or rather pay-what-you-can, model.">2</a></sup>, IIRC they start at 10€/month. The extra paranoid
can even pay cash!</p><ol class=simple-footnotes><li id=sf-misc-uberspace-is-being-sued-1>Maybe you even <em>have</em> to make a copy in order to consume it
<em>at all</em> because their stupid web shit doesn't work on your devices because you
don't swap them like your underpants because you're trying to avoid
e-waste... 🙄 <a href=#sf-misc-uberspace-is-being-sued-1-back class=simple-footnote-back>↩</a></li><li id=sf-misc-uberspace-is-being-sued-2>They're going for the pay-what-you-want, or rather
pay-what-you-can, model. <a href=#sf-misc-uberspace-is-being-sued-2-back class=simple-footnote-back>↩</a></li></ol>Write The Blog You Want to Read2022-01-01T23:16:56+01:002022-01-01T23:16:56+01:00Philipp Trommlertag:blog.philipp-trommler.me,2022-01-01:/en/posts/2022/01/01/opinion-write-the-blog-you-want-to-read/<p>It's been quiet around here, and that's for a reason. Blogging is just
one thing on my to-do list, and it's pretty low on that list. But
there's more to it. It's not just about making time to write something
but also about staying motivated.</p><p>When I started blogging (again 🙄) I thought of my blog as a purely technical
publication. Writing tutorials or reports about what I've done with programming
or hardware and stuff like that. The problem is: time is scarce and there's
simply not much I do with computers on the side; definitely not enough <em>new</em> or
<em>bleeding edge</em> things to fill an interesting blog.</p>
<p>I know others do. You can visit Hacker News on any given date and find links to
blogs written by people who seem to have either too much free time or an
unhealthy lifestyle. Of course, many of the articles shared on HN take a whole
lot of time to write, edit and publish, and it's only the aggregation found on
these news sites that makes it feel like people are spitting high quality blog
entries out like it's nothing<sup id=sf-opinion-write-the-blog-you-want-to-read-1-back><a href=#sf-opinion-write-the-blog-you-want-to-read-1 class=simple-footnote title="Of course, there are people with an unhealthy lifestyle and/or too much free time spitting those blog entries out like it's nothing, but I don't know how sustainable that is.">1</a></sup>. But still,
skimming through the never ending list of high-quality blog posts published
every day feeds the imposter syndrome <em>a lot</em> and additionally, it makes
publishing your own posts feel really pointless. Chances are that there's
someone else with a finished and published blog post about the same topic
already. Why bother?</p>
<p>But that's not all. Because I've been limiting myself to technical topics only,
I've experienced situations where I've been overly motivated to writing
something but denied myself a post about that given topic because <em>it didn't fit
in</em><sup id=sf-opinion-write-the-blog-you-want-to-read-2-back><a href=#sf-opinion-write-the-blog-you-want-to-read-2 class=simple-footnote title="Funny how you can talk yourself into what fits into your blog with about ten posts and what doesn't…">2</a></sup>. And all the short posts I didn't write
because I felt like I should publish a longer, <em>more elaborate</em> post first…</p>
<p>Looking around the web, I have the feeling that I'm not alone with my situation:
Many blogs are seldom updated, at best, and even more are abandoned completely
after just a few posts.</p>
<hr>
<p>The web is corporate. It's not been like that forever, but for a while now.
Admittedly, I have no first-hand experience with the fully non-corporate web but
I vividly remember better times of <em>personal</em> websites instead of <em>corporate</em>
silos.</p>
<p>The advent of the so-called <em>social</em> media has killed a lot of personal,
self-controlled content on the web. Websites and blogs often enough moved
completely over to a Facebook page<sup id=sf-opinion-write-the-blog-you-want-to-read-3-back><a href=#sf-opinion-write-the-blog-you-want-to-read-3 class=simple-footnote title="Which is now long forgotten, as well, and replaced by an Instagram, TikTok or whatever page…">3</a></sup>. When the original
sites were not abandoned completely, the only content that was left or newly
published on the personal homepages were typically long-form, highly technical
posts that wouldn't fit very well into the small text areas provided by most
social media sites to express yourself<sup id=sf-opinion-write-the-blog-you-want-to-read-4-back><a href=#sf-opinion-write-the-blog-you-want-to-read-4 class=simple-footnote title="I know the story is more complex with multiple intermediate steps like Tumblr, and I'm also aware that social media sites offered the first ever possibility to publicly express themselves for many people, but the point still stands IMHO: personal and/or opinion-heavy content moved from personal sites to social media sites in many cases.">4</a></sup>.
And that's mostly the situation we're still in today. But does it need to be
this way?</p>
<p>Who hosts the content is not the only thing that has changed though, the content
itself has become more corporate, too. There are, of course, technical blogs run
by corporations, which you'd expect to be corporate. But even the smallest
personal sites have often become very clean, formal, professional. And, in fact,
impersonal and boring<sup id=sf-opinion-write-the-blog-you-want-to-read-5-back><a href=#sf-opinion-write-the-blog-you-want-to-read-5 class=simple-footnote title="For some notable exceptions, check the openring section below.">5</a></sup>. They regularly feature one of the always-the-same
Bootstrap inspired themes and blog posts which create the impression that the
author is more interested in the expected SEO boost the topic provides than in
the topic itself. It feels like these authors are running their blogs solely for
their CVs.</p>
<p>But even the less affected personal sites are way cleaner today than some
corporate sites were back 20-ish years ago. Where are the opinionated topics,
the swearing, the <code>$EVILCORP</code> references? Where are the honest love letters to
controversial persons such as RMS and the pure hatred against the newest init
system written in a way that would violate any code of conduct in existence?
Where are the quirky non-tech posts about the author's other hobbies and the
comments on the latest local politics?</p>
<p>Maybe tech as a whole has become corporate?</p>
<hr>
<p>You could argue that it doesn't matter that much where the internet's content is
hosted. And whilst that's true to <em>some</em> degree a truly self-controlled personal
website differs a lot from a social media site in the details.</p>
<p>Firstly, on your personal site, you control how your content is published.
That's true on a technical level but even more on an editorial one: You decide
what your readers see, and in which order. There's no algorithm <em>optimizing</em>
your online appearance by leaving out certain publications of yours<sup id=sf-opinion-write-the-blog-you-want-to-read-6-back><a href=#sf-opinion-write-the-blog-you-want-to-read-6 class=simple-footnote title="Your posts might technically still be available on your profile page, but if they're not shown prominently in your readers' feeds, they're practically lost.">6</a></sup> or
emphasizing others. There's no code of conduct, no latent political affection of
your publisher to one or the other party, which will influence the judgment over
your posts. What you write is what others will read, love it or hate it. Your
personal site represents you way more than the filtered social media profile
Facebook has created for you.</p>
<p>Secondly, you own your personal site's content. Instead of losing or
re-publishing everything every time the hype-train picks up speed to the next
social media platform, you can just stay right where you are. And should the web
host you've chosen go out of business, you can just pick the next one and go on
like nothing has happened<sup id=sf-opinion-write-the-blog-you-want-to-read-7-back><a href=#sf-opinion-write-the-blog-you-want-to-read-7 class=simple-footnote title="By choosing a low-tech, static stack you can probably host your site on a free plan with reasonable performance or on any $1/€1 VPS with big margins.">7</a></sup>.</p>
<p>Thirdly, by hosting your content yourself, you neither endorse a social media
platform by publishing through them nor any other authors you'd rather not be
associated with by being published alongside them.</p>
<p>Lastly and most importantly though, posts on your personal site have a lot more
weight than the things you publish on a social media site, forum or comment
section. In the endless and often anonymous feed created by these silos, you can
post nearly everything without being seriously held accountable because the next
news have already flushed your smut away before justice has been given. I think
that this is one of the main reasons why we see so much radicalizing and
provocative content nowadays and especially on social media sites: It creates
publicity without really risking anything. On your own website, though, you pour
your whole credibility into every publication as it'll stand there, right
between those other posts, for every visitor to see and forever linked to your
arduously built online identity. More of this <em>stickiness of wrong-doing</em> would
help our societies a lot, in my opinion.</p>
<hr>
<p>I'd like to consume a web where people think before they write and stand to
their statements. I'd like to read unfiltered opinions, just as their writers
intended them to be. I'd like to follow a writer's development on their
long-running personal publication, and I'd like to do this without selling my
soul to yet another social media outlet. That doesn't mean that I don't want to
read technical blog posts anymore. I'd just like to learn a bit about the author
behind that post, too. I'd like to have a <em>personal</em> web outside of <em>corporate</em>
silos again.</p>
<p><em>"Be the change"</em>, they say, so here I go: I have no actual social media outlets
that can be closed, but from now on I want to treat this blog more like my
social media profile than like a purely technical publication. There will still
be technical posts but more opinionated ones, too. Shorter, more frequent
emissions riddled with longer-form posts from time to time. I don't want to
hinder myself again from writing from what I want to write <em>now</em> to published
something larger later down the road.</p>
<p>Now is not the time to remain silent just to try to reach Hacker News front page
one day.</p><ol class=simple-footnotes><li id=sf-opinion-write-the-blog-you-want-to-read-1>Of course, there <em>are</em> people with an
unhealthy lifestyle and/or too much free time spitting those blog entries out
like it's nothing, but I don't know how sustainable that is. <a href=#sf-opinion-write-the-blog-you-want-to-read-1-back class=simple-footnote-back>↩</a></li><li id=sf-opinion-write-the-blog-you-want-to-read-2>Funny how you can talk yourself into what fits into your blog with about
ten posts and what doesn't… <a href=#sf-opinion-write-the-blog-you-want-to-read-2-back class=simple-footnote-back>↩</a></li><li id=sf-opinion-write-the-blog-you-want-to-read-3>Which is now long forgotten, as well, and
replaced by an Instagram, TikTok or whatever page… <a href=#sf-opinion-write-the-blog-you-want-to-read-3-back class=simple-footnote-back>↩</a></li><li id=sf-opinion-write-the-blog-you-want-to-read-4>I know the story is more complex with
multiple intermediate steps like Tumblr, and I'm also aware that social media
sites offered the <em>first ever</em> possibility to publicly express themselves for
many people, but the point still stands IMHO: personal and/or opinion-heavy
content moved from personal sites to social media sites in many cases. <a href=#sf-opinion-write-the-blog-you-want-to-read-4-back class=simple-footnote-back>↩</a></li><li id=sf-opinion-write-the-blog-you-want-to-read-5>For some notable exceptions, check the openring
section below. <a href=#sf-opinion-write-the-blog-you-want-to-read-5-back class=simple-footnote-back>↩</a></li><li id=sf-opinion-write-the-blog-you-want-to-read-6>Your
posts might technically still be available on your profile page, but if they're
not shown prominently in your readers' feeds, they're practically lost. <a href=#sf-opinion-write-the-blog-you-want-to-read-6-back class=simple-footnote-back>↩</a></li><li id=sf-opinion-write-the-blog-you-want-to-read-7>By choosing a low-tech, static stack you can
probably host your site on a free plan with reasonable performance or on any
$1/€1 VPS with big margins. <a href=#sf-opinion-write-the-blog-you-want-to-read-7-back class=simple-footnote-back>↩</a></li></ol>My New Blog2019-08-09T20:28:08+02:002019-08-09T20:28:08+02:00Philipp Trommlertag:blog.philipp-trommler.me,2019-08-09:/en/posts/2019/08/09/my-new-blog/<p>Finally, I've got my new blog up and running. It's been a while since I
wrote my last article and I took the chance to come up with some new ideas,
both technical and from a content point of view.</p><div class="toc">
<ul>
<li><a href="#reasons-to-start-all-over">Reasons to start all over</a></li>
<li><a href="#a-new-technical-foundation">A new technical foundation</a><ul>
<li><a href="#pelican-vs-jekyll">Pelican vs. Jekyll</a></li>
<li><a href="#sourcehut-vs-github">Sourcehut vs. Github</a></li>
<li><a href="#conclusion">Conclusion</a></li>
</ul>
</li>
<li><a href="#man-that-blog-title-is-lame">Man, that blog title is lame!</a></li>
<li><a href="#what-to-expect">What to expect</a></li>
</ul>
</div>
<p>I've written my last post in 2016, a test of my - at that time - new smartphone.
I still use that device, though my thoughts about it have changed a lot. But
this is nothing I want to write about in this article, I'd rather focus on what
I want to write about, how I want to write and why.</p>
<h3 id="reasons-to-start-all-over">Reasons to start all over<a class="headerlink" href="#reasons-to-start-all-over" title="Permanent link">¶</a></h3>
<p>My last blog had a clear goal: Provide beginner-friendly blog posts about Vala
and Gtk development in German. 'Why in German?' you may ask. Because in my
opinion language can be a huge barrier while learning things, especially for
beginners. Having to concentrate on both the topic and the foreign language at
the same time can be difficult even for reasonably fluent speakers. And since
there were more than enough blogs in English I thought I'd do native Germans
like me a favour and provide the information in our mother's tongue.</p>
<p>I've always been attracted to embedded and low-level development, but I've never
felt proficient enough to write about it. But since I do exactly this for a
living for almost three years now, my feelings have changed. Of course I am by
no means an "old hand" by now but nevertheless I think I've reached a level of
knowledge that is worth sharing. So no more Vala and Gtk development tips here,
sorry (at least not primarily).</p>
<p>With the change of the main topic comes a change of the main language. First,
because the topic is even more niche than before and a German-only blog would
have a really small readership. Second, because the count of international
(English) blogs about this topic is way lower, so there's still room for one
more. Still, I want to provide German translations for all of my articles since
the reasons for blogging in German initially still hold true.</p>
<p>All these changes don't mean that I'm embarrassed by what I've written more than
three years ago. You can currently still access my old blog at <a href="http://www.philipp-trommler.me">its original
address</a>. But since I plan to re-use the
subdomain, I've asked the Wayback Machine to make a copy of it and thankfully
<a href="https://web.archive.org/web/20190128095717/http://www.philipp-trommler.me/">it helped me
out</a>.
So you can still access my writings about Gtk and Vala in German even when I
pull the plug.</p>
<h3 id="a-new-technical-foundation">A new technical foundation<a class="headerlink" href="#a-new-technical-foundation" title="Permanent link">¶</a></h3>
<p>A new direction in terms of topics after a long pause offers the possibility to
change the technical foundation of a blog at the same time. I took this chance
and used the last two weeks for building my custom
<a href="https://blog.getpelican.com/">Pelican</a> site.</p>
<h4 id="pelican-vs-jekyll">Pelican vs. Jekyll<a class="headerlink" href="#pelican-vs-jekyll" title="Permanent link">¶</a></h4>
<p>My old blog has been powered by Jekyll just as many others. It has met all my
needs then and would have probably met all my needs now, as well. But I never
felt comfortable using it. Instead I felt somewhat limited, especially because I
hosted the site at Github (for example back then no custom themes could be used
with the automatic site generating). I'm almost sure that everything that made
me dislike Jekyll was not the generator's fault but rather the fault of the
circumstances (I ended up generating my site locally and pushing the result to
Github 🤢...), still I wanted something new.</p>
<p>On the search for that new thing I stumbled across Pelican. Markdown? Check!
Written in a non-obscure language (looking at you, Hugo!)? Check! List of
plugins? Exhaustive! And most importantly (for the reasons see above): An i18n
plugin! So I sat down and started creating a minimal yet technically modern
template.</p>
<p>The result is what you see right in front of you and I have to say that I'm
slightly disappointed. The Pelican ecosystem couldn't stand to its promises.
The Pelican core is thoughtfully designed, easy to use and sufficiently
fast. <code>pelican-quickstart</code> is really great and the basic "generator"
functionality just works. But when it comes to the Pelican plugins and more
complex setups (I wouldn't call my setup complex, though) things get worse
<em>rapidly</em>.</p>
<p>Here's a (non-exhaustive) list of things that didn't/don't work (as
expected/yet[?]):</p>
<ul>
<li>The blog contains no <code>schema.org</code> microdata yet. Whilst there is a
<a href="https://pypi.org/project/pelican-microdata/">pelican-microdata</a> plugin for
Pelican, it has been abandoned in early 2017, only supports RST files and of
course has no support for JSON-LD. Well, Philipp, back to writing some Jinja2
templates!</li>
<li>Feed generation and linking is not at the point where I want it to be. That's
why there are no <em>visible</em> links to the feeds yet (they're in the code,
though, your reader should find them).</li>
<li>I currently cannot use the <code>better_code_samples</code> plugin because it destroys my
HTML structure (it inserts superfluous <code></body></html><body></code> tags). Sorry
mobile readers, code samples overflow the page for now...</li>
<li>The <code>image_process</code> plugin resets my generated HTML (wrong/no indentation, tag
attributes re-written in a different order).</li>
<li>I have to write inline HTML in my markdown files if I want more than <code><p><img
...></p></code> for my images (e.g. <code><figure></code> and <code><figcaption></code>; hello,
semantics!)</li>
<li><code>filetime_from_git</code> generates (at least locally) timestamps that are not W3C
conform (they have more than two sub-second digits).</li>
<li>The <code>sitemap</code> plugin doesn't pick up the i18n subsites.</li>
<li>The author/category/tag pages are <em>rudimentary</em> but I don't understand the
documentation of the <code>autopages</code> plugin 🤷♂️...</li>
<li>While the i18n plugin works well all in all it generates a language subsite
for the default language. I don't get that. Let's see what the search engines
think about it.</li>
<li>I want to provide some kind of "translator" pages analog to the "author" pages
but I don't know how or if it's even possible without patching Pelican.</li>
<li>I have no favicon yet. Is this still a thing nowadays? Which icon sizes do I
need for those Firefox new tab icons?</li>
</ul>
<p>Honestly, I've been a bit stunned by the condition of the Pelican ecosystem but
admittedly that resembles my experiences with Jekyll and what I've read about
other SSGs: basic functionality is split out into plugins that are for their
part sparsely maintained (at best). My problems may partly be caused by the
ancient version of Pelican that I'm using (3.7.1, don't blame me, I'm bound to
Ubuntu LTS on WSL because of hardware reasons at the moment 😩), but that
cannot really explain the plugin-related issues I'm facing.</p>
<h4 id="sourcehut-vs-github">Sourcehut vs. Github<a class="headerlink" href="#sourcehut-vs-github" title="Permanent link">¶</a></h4>
<p>To really start all over again I not only changed the topic and generator but
also my Git hosting service. I've been unhappy with Github for quite a while
now. You know, because of big, Microsoft-owned evil-corp and stuff. Luckily
<a href="https://drewdevault.com/">Drew DeVault</a> did his magic again some time ago and
created <a href="https://sr.ht/">Sourcehut</a>, a no-nonsense, no JavaScript, email-first
Github alternative. And it's great! I use it both for hosting my Pelican files
and generating the HTML files via the built-in build service.</p>
<p>The actual hosting is done via Namecheap, no special reason for this, except
that I host my domains there, as well. The combination of Sourcehut and
Namecheap gives me a split setup that should be a bit more resilient than having
everything under <em>one</em> hood.</p>
<h4 id="conclusion">Conclusion<a class="headerlink" href="#conclusion" title="Permanent link">¶</a></h4>
<p>Despite my strong feelings about the Pelican ecosystem I have to admit that I'm
kind of pleased with my new set-up. This is mostly due to the automatic
publishing that I've achieved but I also like the user-facing outcome of my
rework and I think that even Pelican will do its job once it's configured
completely. I hope that especially the automation will sustain my blogging
ambitions.</p>
<h3 id="man-that-blog-title-is-lame">Man, that blog title is lame!<a class="headerlink" href="#man-that-blog-title-is-lame" title="Permanent link">¶</a></h3>
<p>Well, yes, it's not exactly inventive. But because this blog is about me, things
that I find interesting and the things that I've done and since I don't want to
sell anything here, the title is quite accurate 🙄.</p>
<h3 id="what-to-expect">What to expect<a class="headerlink" href="#what-to-expect" title="Permanent link">¶</a></h3>
<p>I already have some things planned for the next articles. I want to to give a
multi-part introduction about a little known meta build tool named "Bob", I have
some thoughts about the now complete C++20 standard and I have ideas for two or
three recurring categories. I hope that I stick to blogging long enough this
time that I finish these goals at least. I invite you to find it out together
with me!</p>