diff --git a/.gitignore b/.gitignore index e43b0f9..08117a5 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,4 @@ .DS_Store + +# Zwischenschritt beim PDF-Bau, entsteht neu aus bauen.py +redaktionsplan/*.html diff --git a/redaktionsplan/Instagram-Redaktionsplan.pdf b/redaktionsplan/Instagram-Redaktionsplan.pdf new file mode 100644 index 0000000..018d7f6 Binary files /dev/null and b/redaktionsplan/Instagram-Redaktionsplan.pdf differ diff --git a/redaktionsplan/bauen.py b/redaktionsplan/bauen.py new file mode 100644 index 0000000..8a93c9d --- /dev/null +++ b/redaktionsplan/bauen.py @@ -0,0 +1,488 @@ +#!/usr/bin/env python3 +"""Baut den Redaktionsplan als A4-PDF. + +Aufbau wie beim Webinar-Vergleich: eine HTML-Datei mit eingebettetem Manrope +und eingebettetem Logo, die von Chrome nach PDF gedruckt wird. Eingebettet +heißt hier wörtlich, die Datei läuft ohne Netz und ohne Nachbarordner. + + python3 redaktionsplan/bauen.py +""" + +import base64 +import subprocess +from datetime import date, timedelta +from pathlib import Path + +HIER = Path(__file__).resolve().parent +REPO = HIER.parent +CHROME = "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" + +# Schrift und Logo kommen aus dem Repo selbst, nicht aus einem Nachbarordner: +# das PDF soll sich auf jedem Rechner bauen lassen, der nur dieses Repo hat. +# Manrope liegt als variables Latin-Subset vor, 200 bis 800. +FONT = base64.b64encode( + (REPO / "assets/fonts/xn7gYHE41ni1AdIRggexSvfedN4.woff2").read_bytes()).decode() +LOGO = base64.b64encode( + (REPO / "assets/brand/logo.svg").read_bytes()).decode() + +TAGE = {0: "Mo", 2: "Mi", 4: "Fr"} + + +def slots(start: date, anzahl: int): + """Die Mo/Mi/Fr-Termine ab dem Starttag.""" + raus, d = [], start + while len(raus) < anzahl: + if d.weekday() in TAGE: + raus.append((TAGE[d.weekday()], d.strftime("%d.%m."))) + d += timedelta(days=1) + return raus + + +# Thema, Format, Ziel. Reihenfolge ist nicht beliebig: erst warum es uns gibt, +# dann die Haltung, dann die Funktionen von der täglichen Last nach hinten zu +# dem, was Vorwissen braucht. +PLAN = [ + ("Die Geschichte", "Carousel, 6", "Herkunft. Warum es HiveGrid gibt."), + ("Verbinden statt ersetzen", "Einzelbild", "Haltung. Die Kernaussage in einem Satz."), + ("Projektmanagement", "Carousel", "Der Überblick, den jeder Betrieb vermisst."), + ("Workflow-Engine", "Carousel", "Wenn-dann statt Handarbeit."), + ("Team-Chat", "Carousel", "Ein Kanal pro Projekt, Foto rein, Aufgabe raus."), + ("Form Builder", "Carousel", "Vom Kontaktformular bis zum Aufmaß."), + ("Zettelwirtschaft", "Carousel", "Wissen ohne Produkt. Wo im Betrieb Zeit verloren geht."), + ("E-Mail-Marketing", "Carousel", "Aus Anfragen werden Kontakte, aus Kontakten Aufträge."), + ("Mitarbeiter-Management", "Carousel", "Wer kann was, wer ist wo, wer braucht was."), + ("Der Betrieb dahinter", "Carousel", "Vierte Generation SHK. Keine Studio-Bilder."), + ("KI-Anbindung, MCP", "Carousel", "Externe KI darf mitlesen, ohne Datenabfluss."), + ("Dein ERP bleibt", "Einzelbild", "Der Einwand Nummer eins, direkt beantwortet."), + ("Tempo und Übersicht", "Reel", "Die Oberfläche selbst. Wenige Klicks, kein Suchen."), + ("Warteliste", "Carousel", "Aufruf. Was die ersten Betriebe bekommen."), + ("Häufige Fragen", "Carousel", "Die fünf Einwände, die immer kommen."), +] + +ZEILEN = "".join( + '
+ In dieser Phase erwarten wir über den Kanal keine nennenswerte Reichweite. Er dient + zuerst der Darstellung der Software für Leute, + die ohnehin auf uns stoßen: mögliche Kunden, Partner, Investoren. Dieses Dokument legt + fest, was wann erscheint, wie es aussieht und was wir nach vier Wochen ansehen. +
+ +Jeder Beitrag zeigt etwas Konkretes aus der Software oder aus dem + Betrieb: einen Screen, einen Ablauf, eine Aufnahme von der Baustelle. Keine + Behauptungen ohne Bild dazu.
+Im Raster ist von einem Carousel nur die erste Slide zu sehen. + Die trägt deshalb einen vollständigen Gedanken, nicht den Anfang von einem. Der Rest + steht innen und in der Bildunterschrift.
+Unter drei Beiträgen pro Woche wirkt ein Profil inaktiv. Über + fünf leidet die Qualität.
+Für handwerklich geprägte Betriebe sind drei Fenster belegt: 6 bis 8, + 12 bis 13 und 19 bis 21 Uhr. Die Mittagspause passt am besten.
+Die Studienlage nennt Dienstag bis Donnerstag. Wir starten trotzdem + mit Mo, Mi, Fr und schauen es uns in vier Wochen an.
++ Fünfzehn Termine, alle um 12:00 Uhr. Die Reihenfolge ist nicht beliebig: erst warum + es uns gibt, dann die Haltung, dann die Funktionen. Innerhalb der Funktionen von der + täglichen Last nach hinten zu dem, was Vorwissen braucht. Die beiden markierten + Termine sind gesetzt und liegen fertig im Generator, alles danach darf sich verschieben. +
+ +| Termin | +Thema | +Format | +Wofür der Beitrag da ist | +
|---|
| Sorte | +Anteil | +Beispiel aus dem Plan | +
|---|---|---|
| Funktion erklärt | 8 | +Workflow-Engine, Form Builder, Team-Chat |
| Menschen und Betrieb | 2 | +Die Geschichte, Der Betrieb dahinter |
| Haltung | 1 | +Verbinden statt ersetzen |
| Einwand beantwortet | 2 | +Dein ERP bleibt, Häufige Fragen |
| Wissen ohne Produkt | 1 | +Zettelwirtschaft |
| Aufruf | 1 | +Warteliste |
Mehr sieht niemand, bevor er auf "mehr" tippt. Der Haken gehört + dorthin, nicht in den letzten Absatz.
+Der Bereich, in dem erklärende Beiträge am besten laufen. Darunter + wirkt es dünn, darüber liest es niemand zu Ende.
+Ganz unten, durch Leerzeilen abgesetzt. Schlägt sowohl drei als auch + dreißig. Die Suchwörter gehören zusätzlich in den Fließtext.
++ Das Profil zeigt neun Kacheln auf einmal. Was gleich bleibt und was wechselt, ist + deshalb festgelegt und nicht von Beitrag zu Beitrag neu entschieden. +
+ +Im Profil-Raster wird auf 3:4 beschnitten, + nicht auf 4:5. Was mittig sitzt, überlebt.
+| Statt | +Zeigen wir | +
|---|---|
| "Alles auf einen Blick" | +Das Board mit echten Aufträgen, Summen und Terminen. |
| "Spart Zeit" | +Den Ablauf: Anfrage rein, Aufgabe raus, Bestätigung an den Kunden. |
| "Einfach zu bedienen" | +Das Formular, das per Drag-and-drop entsteht. |
| "Aus dem Handwerk" | +Den Betrieb, die Baustelle, die Menschen dahinter. |
| "Verbindet deine Tools" | +Die Visualisierung: ERP in der Mitte, das Neue drumherum. |
Für Konten unter 50.000 Followern bringen + Reels mehr Reichweite als Carousels. Das ist die Datenlage. Für uns ist sie zweitrangig, + weil Reichweite in dieser Phase nicht das Ziel ist.
+Carousels passen besser zu dem, was der Kanal leisten soll: Sie + erklären, sie lassen sich im Generator sauber und wiederholbar bauen, und sie werden + gespeichert. Das erste Reel steht am 09.09. und ist eine Bildschirmaufnahme, dafür + braucht es keine Kamera. Danach kommt Material aus dem Betrieb dazu. Aus drei Beiträgen + werden dann zwei Carousels und ein Reel, nicht vier Beiträge.
++ Instagram sortiert ein Konto auch danach ein, womit es sich selbst beschäftigt. + Rund zehn Minuten am Tag, aufgeteilt auf die drei Posting-Tage. +
+ +Zehn gute Kommentare bei den richtigen Konten + wirken mehr als fünfzig verstreute. In den Zahlen sichtbar wird das nach vier bis + acht Wochen.
+Am meisten bringt ein Kommentar in den ersten + Minuten nach einem Beitrag. Deshalb folgen wir gezielt Konten, die regelmäßig posten, + und schauen einmal täglich zur Mittagszeit rein.
+Ein Kommentar ist gut, wenn er ohne unseren Namen funktioniert. Also + eine Erfahrung, eine Nachfrage, ein Widerspruch. Nicht "Toller Beitrag", und nichts, + was auf uns verweist.
+| Kennzahl | +Wo sie steht | +Was sie uns sagt | +
|---|---|---|
| Profilaufrufe je Beitrag | Insights, Interaktionen | +Ob ein Beitrag jemanden dazu bringt, sich das Profil anzusehen. Das ist unser Zweck. |
| Sendungen | Beitragsinsights | +Welches Thema jemand weiterschickt. Wiegt beim Ausspielen mehr als ein Like. |
| Speicherungen | Beitragsinsights | +Ob ein Carousel als Nachschlagewerk taugt. |
| Konten erreicht, davon keine Follower | Insights, Reichweite | +Ob wir aus der eigenen Blase herauskommen. |
| Aktivste Zeiten | Insights, Zielgruppe | +Ob 12:00 stimmt. Erst ab etwa 100 Followern belastbar. |
| Anmeldungen Warteliste | Backend | +Ob aus dem Eindruck ein Kontakt wird. |
Bleibt der Montag oder wird es Dienstag? Bleibt 12:00? Und wie viele + Reels ersetzen ab dann Carousels? Bis dahin lassen wir den Rhythmus laufen, sonst + lässt sich nichts vergleichen.
+Quellen zu den Ausspielungssignalen und + Posting-Zeiten: Sprout Social, Buffer, Later und Hootsuite (Instagram-Algorithmus 2026), + adconsulting.de und socialmediaakademie.de (Posting-Zeiten B2B und Handwerk, Deutschland). + Zahlen zu Sendungen und Reichweite stammen aus Auswertungen Dritter, nicht von Meta selbst, + und sind Größenordnungen, keine Garantien.
+