Die Hölle friert gerade zu

Anzeichen, dass die Hölle zufriert:

  • Meta bringt ein Produkt (Threads), das gegen deutsches Recht verstößt, nicht nach Deutschland, statt sich wie sonst einen Sch***dr*ck darum zu scheren und zu versuchen es auszusitzen
  • Auf Twitter trendet #Habeck und die ersten drei Seiten sind keine Hetze gegen ihn.

Den Tag muss ich mir rot im Kalender anstreichen.

Demokratie

Ich frage mich gerade ob die Leute in den 1930er Jahren in der Weimarer Republik die Entwicklung genauso ohnmächtig auf sich zukommen gesehehen haben wie ich heute.

Immerhin brauchten sie sich nicht zusätzlich noch Sorgen um die Zukunft der gesamten Menschheit machen, wie sie sehenden Auges in den Abgrund marschiert.

Wie gut, dass ich keine Kinder habe, das ist eine Sorge weniger. Und die paar Jahre, die ich noch vor mir habe, kriege ich auch noch rum. Vielleicht sollte ich auch aufhören, über meine Altersvorsorge nachzudenken und meine Ersparnisse jetzt schon auf den Kopf hauen.

Günstige Windows 11 Lizenzen

Es gibt ja kaum noch Möglichkeiten, Windows 10 (pro) Lizenzen zu kaufen und Windows 11 Lizenzen (zumindest solche, die einigermaßen vertrauenswürdig wirken) kosten > 100 Euro. Auf der anderen Seite gibt es günstige “refurbished” PCs mit vorinstalliertem Windows 10 pro für unter 100 Euro.
Was liegt da näher, als einen solchen zu kaufen, die Lizenz aus dem BIOS auszulesen und sie auf einem anderen PC zur Installation von Windows 11 zu verwenden. Auf dem Billig-PC kann man dann ja Linux installieren.

Nur so ein Gedanke. Vermutlich ist das auch wieder nicht legal, zumindest in den Augen von Microsoft.

Simplify Your Delphi Projects with GExperts’ Uses Clause Manager Expert

This post was written by ChatGPT for the prompt

Write a blog post about the Uses Clause Manager Expert in GExperts

Note: It all sounds plausible, but there are a lot of wrong claims in this text.


Introduction:

If you’re a developer working with Delphi, you’re likely familiar with the complexities that can arise when managing the uses clauses in your project. With a growing codebase and numerous units to include, it’s easy to end up with messy and redundant uses clauses. Thankfully, there’s a powerful tool at your disposal to simplify this process: the Uses Clause Manager Expert in GExperts. In this blog post, we’ll explore the features and benefits of this expert and how it can streamline your Delphi development workflow.

What is GExperts?

GExperts is a comprehensive set of IDE enhancements for Delphi and C++Builder. It offers a wide range of productivity tools designed to improve the development experience and boost efficiency. The Uses Clause Manager Expert is just one of the many gems that GExperts provides to Delphi developers.

The Power of the Uses Clause Manager Expert:

The Uses Clause Manager Expert is a tool specifically designed to help you manage and organize the uses clauses in your Delphi projects. It offers several powerful features that simplify the process and enhance code readability.

Sorting and Organizing:

One of the primary tasks of the Uses Clause Manager Expert is to sort and organize the units within the uses clause. It automatically arranges the units in alphabetical order, making it easier to locate and identify specific units. This not only improves readability but also helps identify any missing or redundant units that may have been inadvertently included.

Note: This is wrong. The Uses Clause Manager does not sort the units in any way. There is a tool that can do this though: MMX Code Explorer by Uwe Raabe

Removing Unused Units:

As your Delphi project evolves, you might find that certain units are no longer required. Manually identifying and removing these unused units can be a time-consuming task. The Uses Clause Manager Expert simplifies this process by automatically detecting and removing unused units from the uses clause. This helps reduce clutter and eliminates unnecessary dependencies.

Note: This, again, is a wrong claim. The Uses Clause Manager does not detect and/or remove unused units. There is a tool that can do this, though: The Uses list cleaner in CnWizards

Merging Similar Units:

In large projects, it’s common to have multiple units with similar names or functionalities. The expert allows you to merge these units into a single unit, reducing duplication and improving the overall project structure. By consolidating similar units, you can enhance code maintenance and reduce the chances of conflicts or naming collisions.

Note: This, again, is a wrong claim. The Uses Clause Manager does not have such functionality. And out of the top of my head I don’t know of any tool that does. I’m not even sure this would be helpful in any way.

Customization and Configuration:

The Uses Clause Manager Expert provides various customization options to suit your preferences. You can specify how you want the units to be sorted, define exclusion lists for units that should not be modified, and even configure naming conventions for unit aliases. These options give you greater control over how the expert manages your uses clauses, ensuring that it aligns with your specific project requirements.

Note: This, again is a wrong claim. The Uses Clause Manager has got some configuration options, but none of the above can be configured.

Conclusion:

Efficiently managing uses clauses is crucial for maintaining clean and well-organized Delphi projects. With the Uses Clause Manager Expert from GExperts, you can streamline this process and improve code readability. By automatically sorting, removing unused units, merging similar units, and offering customization options, the expert simplifies the task of managing uses clauses, allowing you to focus on writing quality code.

Integrating GExperts into your Delphi IDE and leveraging the power of the Uses Clause Manager Expert can save you valuable time and effort, enhance your development workflow, and contribute to the overall quality of your Delphi projects. Give it a try, and experience the benefits firsthand!


So, really, all the above is utter bullshit. If you want to know what the Uses Clause Manager actually can do, here are some links:

(I was just about to say that the Uses Clause Manager is also covered in the GExperts help, but found that it isn’t. WTF? Apparently nobody bothered to update that help when it was added.)

Why did I put this online anyway? I was wondering how good a blog post ChatGPT would be able to write on this topic and how much of it would be correct. The Uses Clause Manager hasn’t changed much since the time ChatGPT stopped getting trained and all the functionality was described in blog posts or the GExperts online help. I wasn’t prepared for it just fantasizing a lot of functionality that the tool doesn’t have and not actually mentioning any of the functionality it does have. And after I saw that, I wanted to share this to make others aware of this. I think that’s the greatest danger these supposedly all knowing AI tools pose: They sound very convincing even if they spout utter bullshit. What’s even worse: This kind of “content” is very cheap to generate and we will see a lot of it on the Internet in the near future. (Advertisers love cheap, convincing content.) And since AI tools are trained with websites, they will start “learning” from this bullshit content and it will be repeated all over the place.

Just for your continued amusement, I asked ChatGPT:

How many of these claims are actually true?

Here is the answer, still convincing but still a wrong claim:


As an AI language model, I can’t provide real-time information or access to external sources. Therefore, I can’t verify the current accuracy of the claims made in the blog post. The information provided is based on general knowledge about GExperts and the Uses Clause Manager Expert up until September 2021. It’s always a good practice to consult the official documentation or the latest information available from reliable sources to verify the claims and features of a specific software tool.


If you would like to comment on this blog post, go to the corresponding post on the international Delphi Praxis forum.

I’m leaving Twitter

Just in case anybody was using Twitter to follow my blog:
As of today, the API I was using to post to Twitter is no longer available. So my blog posts won’t be shared there automatically any more. If you are in the Fediverse you can follow @dummzeuch@mastodon.social. Alternatively various rss feeds are available.

Unfähigkeit hat einen Namen: Norma-Connect

Ich habe mir vor ein paar Monaten eine SIM Karte von Norma Connect besorgt, weil die einen der günstigsten Tarife für mobiles Internet (500 MB für 28 Tage für 3 Euro, genannt “Surf-Flat 500”, incl. EU-Roaming) bieten. Zum Telefonieren habe ich eine zweite SIM-Karte und mobiles Internet brauche ich auch nur sporadisch, speziell im Urlaub, da ist das genau der richtige Tarif. Was mache ich also? Ich buche die Option, wenn ich sie brauche und kündige sie dann wieder. Soweit so gut. Allerdings ist das mit dem Kündigen so eine Sache, wenn die Webseite/App dann jedesmal nur einen Fehler meldet. Bisher musste ich schon zweimal deswegen die Hotline anrufen.

Ich sehe da jetzt zwei Möglichkeiten: Entweder haben die die unfähigsten Entwickler für ihre Webseite, die mir bisher untergekommen sind (Ok, die, die für die App und das eezy Ticket des VRR zuständig sind, übertreffen das noch, insbesondere wegen der Schadenshöhe). Oder aber das ist Absicht, denn es ist schon auffällig, dass ausgerechnet die Kündigung einer Option fehlschlägt, nicht aber die Buchung.

Immerhin waren die Leute bei der Hotline bisher immer freundlich und hilfsbereit und man kam gut durch, das ist ja leider auch nicht selbstverständlich.

Nachtrag am 2023-05-21: Der Fehler ist immernoch nicht behoben. Ich musste gestern erneut die Hotline bemühen. Die freundliche Dame dort zeigte sich erstaunt, denn angeblich wäre die Webseite wegen genau dieses Problems gerade erst überarbeitet worden. Also doch Unfähigkeit?

Lohnabrechung per E-Mail

Mein Arbeitgeber will jetzt die Lohnabrechung nicht mehr wie bisher per Post sondern per E-Mail an die private E-Mail Adresse der Mitarbeiter verschicken.

Im Prinzip habe ich nichts dagegen, wenn ich kein Papier bekomme, brauche ich es auch nicht zu archivieren. Trotzdem habe ich mal gegoogled, ob und unter welchen Umständen das überhaupt erlaubt ist.

Alle Fundstellen waren sich darüber einig, dass es erlaubt ist, allerdings nicht einfach so.

Insbesondere ist wichtig, dass die Zustellung in verschlüsselter Form erfolgen muss. Da auch heute noch so gut wie niemand E-Mail Verschlüsselung verwendet, obwohl das ja schon seit Jahrzehnten durchaus möglich wäre, bleibt als einzige vorgeschlagene und praktikable Lösung ein Versand per verschlüsseltem Dateianhang, in diesem Falle PDF.

Soweit, so vorhersehbar. Allerdings bin ich dann hier (archive) auf folgenden Vorschlag gestoßen, der mich beinahe vom Hocker gehauen hat:

3. Eine einfachere Version ist die Möglichkeit, eine PDF-Datei passwortverschlüsselt an die validierte Empfängeradresse zu schicken, sodass nur die berechtigte Person auf die Gehaltsabrechnung Zugriff hat. Das Passwort könnte z.B. die Personalnr. sein. Hier könnte allerdings manueller Aufwand in der Personalabteilung entstehen, wenn das Lohnprogramm die Möglichkeit der automatischen Erstellung einer verschlüsselten Abbrechung nicht unterstützt. Auch dies können Sie mit dem Anbieter für das Lohnabrechnungsprogramm klären.

Anschließend erwähnt er dann mögliche Datenschutz-Probleme, die durch das Ausdrucken der Abrechnung auf einem Drucker im Büro entstehen könnten, weil ja andere Mitarbeiter den Ausdruck am Drucker finden könnten, bevor man ihn selbst abholt.

Das ist ja auch durchaus erwähnenswert, aber:
Ernsthaft? Die Personalnummer soll als Password für die Verschlüsselung verwendet werden?

Wenn man schon darauf achten soll, dass die Kollegen den Ausdruck nicht zu Gesicht bekommen, dann sollte als Password nicht etwas so leicht zu ermittelndes wie die Personalnummer verwendet werden!

Und vor allem sollte jemand, der seine Brötchen mit der Beratung zum Thema Datenschutz und IT-Sicherheit verdienen will, sowas nicht vorschlagen.

Schreibe mir Lyriks im Stil von Karat

Hier ist ein Beispiel für Lyrics im Stil von Karat:

Veränderung kommt langsam
Aber wir müssen sie erzwingen
Steh auf und sprich laut aus
Was du denkst, was du fühlst

Wir leben in einer Welt
Voller Ungerechtigkeit und Leid
Aber wir müssen hoffen
Dass wir eines Tages Frieden finden

Es ist Zeit, dass wir handeln
Um unsere Zukunft zu sichern
Lasst uns zusammenarbeiten
Um eine bessere Welt zu schaffen

Denn wir sind die Stimme
Der Veränderung, die wir brauchen
Lass uns für Gerechtigkeit kämpfen
Bis wir eine Welt voller Liebe sehen.

— ChatGPT

A song about birds and rockets

I just asked ChatGPT for a song about birds and rockets. Here is what it produced:

Verse 1:
Up in the sky, soaring so high
Birds fly free, with wings spread wide
But little do they know, something new is coming
Rockets taking flight, leaving earth behind

Chorus:
Birds and Rockets, side by side
One in nature, one man-made pride
Birds and Rockets, reaching for the stars
Two worlds collide, but they’re not that far apart

Verse 2:
The birds they glide, with effortless grace
While Rockets blast off, with power and pace
But both are flying, in their own way
Birds and Rockets, reaching for the sky today

Bridge:
Birds may sing, Rockets may roar
But both are headed for something more
Birds and Rockets, taking flight
Reaching for the stars, with all their might

Outro:
Birds and Rockets, side by side
Two worlds collide, but they’re not that far apart
Birds and Rockets, reaching for the stars
Together they soar, in a world that’s ours.

Not bad, really.

Unfortunately a German version of such a song is just a translation of the English text which doesn’t really sound as good:

Verse 1:
Oben in den Himmel, so hoch fliegen
Vögel fliegen frei, mit ausgebreiteten Flügeln
Aber wissen sie nicht, dass etwas Neues kommt
Raketen starten, verlassen die Erde hinter sich

Chorus:
Vögel und Raketen, Seite an Seite
Einer in der Natur, einer von Menschenhand gemacht
Vögel und Raketen, streben nach den Sternen
Zwei Welten treffen aufeinander, aber sie sind nicht so weit auseinander

Verse 2:
Die Vögel gleiten, mit müheloser Anmut
Während Raketen starten, mit Kraft und Tempo
Aber beide fliegen, auf ihre eigene Art
Vögel und Raketen, streben nach dem Himmel heute

Brücke:
Vögel singen, Raketen dröhnen
Aber beide streben nach mehr
Vögel und Raketen, nehmen abheben
Streben nach den Sternen, mit all ihrer Kraft

Outro:
Vögel und Raketen, Seite an Seite
Zwei Welten treffen aufeinander, aber sie sind nicht so weit auseinander
Vögel und Raketen, streben nach den Sternen
Gemeinsam fliegen sie, in einer Welt, die uns gehört.