Warum Mieten immer noch teuer sind

Der Wohnungsbau könnte also durch die derzeit niedrigen Zinsen deutlich günstiger erfolgen als noch vor zehn Jahren, doch leider sind im gleichen Zeitraum die Grundstückspreise deutlich angestiegen.
[…]
Grundstückspreise zeichnen sich nun dadurch aus, dass sie gerade keine objektiven Werte darstellen, sondern einzig und allein die erwarteten Erträge durch die dort realisierte Nutzung anzeigen. Je höher also die erwarteten Mieteinkünfte, desto höher die Grundstückspreise.
[…]
Die Mieten steigen nicht wegen der hohen Baukosten, sondern wegen der hohen Ertragserwartungen. Modellrechnungen zeigen, dass allein mit anderen Finanzierungsmodellen und mit einem Verzicht auf die Eigenkapitalverzinsung trotz der derzeit anfallenden Baukosten Mieten von unter 5 Euro pro Quadratmeter erreicht werden können.

Andrej Holm – »Wohnungen zu bauen ist teuer, hohe Mieten sind also ok« (neues-deutschland.de)

In Allgemein veröffentlicht | Getaggt | Kommentieren

wasfehlt: Gruendungsberatung fuer Civic-Tech-Projekte

Dieser Tage ging mein Blogpost wieder rum, in dem ich Hackathons als langsam etwas abgedroschenes Standardformat fuer Open Data und Civic Tech betrachtet und gefragt habe, wie sich die Community nachhaltiger foerdern liesse.

Tatsaechlich gibt es mittlerweile schon einige Ansaetze, wie auch die vielen ehrenamtlichen Gruppen gefoerdert werden koennen, und nicht nur die Fraunhofers und sonstigen etwas verstaubten grossen Player. Der Prototype Fund der OKF DE ist ein Beispiel, und dass die Stadt Ulm der Civic-Tech-Community ein ganzes Haus samt Ausstattung zur Verfuegung stellt, findet hoffentlich bald Nachahmung in anderen Staedten.

Eine Sache fehlt aber nach wie vor ganz gewaltig, und das ist Beratung. Auch als Bruecke, um die vielen Ideen, die in den OK Labs und anderen Initiativen entstehen, ueberhaupt erst in einen Zustand zu versetzen, um sich beispielsweise fuer den Prototype Fund bewerben zu koennen.

Startup- vs. Gemeinwohlberatung

Es ist ja eigentlich eine Crux: Wer heutzutage ein Startup gruenden und VC-Gelder verbrennen moechte, findet an jeder Ecke institutionalisierte Beratung. Gruenderzentren, IHK und Co. pruegeln sich geradezu, wer denn nun kompetenter beraten kann, Literatur gibts zuhauf, und wenn die politischen Signale guenstig stehen, fliessen auch die Foerdertoepfe grosszuegig.

Fuer Civic-Tech-Projekte – insbesondere diejenigen, aus denen sich kein Geschaeftsmodell entwickeln laesst, sondern deren Gemeinnuetzigkeit dem entgegensteht – sieht die Lage mau aus. Das klang neulich schon an, als ich nach Alternativen zu den von unbedachten Hackathon-Veranstaltern oft ausgelobten grossen Barpreisen fragte:

Was auffaellt: Viele der Vorschlaege drehen sich um Mentorierung und Folgefinanzierung – der Rest um die schon im Dezember angesprochenen Huerdensenker wie Reisekosten etc.

Weil

Das da oben habe ich mittlerwiele zigmal gehoert.

Jedes Mal in einer Runde mit faehigen Leuten[1], die die Idee garantiert umsetzen koennten. Und fuer die der Schritt aber gefuehlt zu gewagt ist, ihre (in der Regel) Festanstellung zu reduzieren und nebenher finanziert aus $Foerdertopf dieses Projekt voranzubringen. Oder es laeuft noch viel banaler, und die oertliche Civic-Tech-Gruppe bekommt von Lokalpolitikern eingefluestert, dass man sie schon laengst in einem Foerderprogramm untergebracht haette, wenn sie nur endlich mal einen gemeinnuetzigen Verein gegruendet haetten.

Diese Kluft haette ich gerne ueberbrueckt. Damit nicht nur Vereinsprofis und die jetzt schon freiberuflich arbeitenden Softwareentwickler*innen eine Chance auf Foerderung haben, sondern auch moeglichst viele andere.

Auf dass es bald in jedem OK Lab heissen kann:

Wiederkehrender Dialog:
„Ja ey, [XYZ] bräuchte es!“
„Ja, und das wuerde sogar zu [Foerdertopf] passen“
„Hm“
„Ich frag mal die Civic-Tech-Sprechstunde“
„Jo“

[1] Meine Definition in diesem Kontext: Leute, die etwa tausendfach besser Software entwickeln koennen als ich. Das fuehrt unweigerlich dazu, dass ich von enorm vielen faehigen Leuten umgeben bin.

In Allgemein veröffentlicht | Getaggt , , , | Kommentieren

Charlottesville

Vice hat eine Reportage ueber das vergangene Wochenende in Charlottesville, VA veroeffentlicht.

Inhaltswarnung: Harter Tobak.

Und wieder einmal: Zeigt das euren Eltern. Mit besonderer Beachtung dieser Stellen:

Ab 7:33: Interview mit einem Neonazi des Daily Stormer, der ganz explizit sagt:

They were showing to this parasitic class of anti-white vermin, that this is our country […] I believe, as you can see, that we’re stepping off the Internet in a big way. For instance, last night at the torch walk, there were hundreds and hundreds of us. People realize, they are not atomized individuals, they are part of a larger whole […]

Vielleicht reicht das endlich als Argument, warum man Nazis nicht einfach protestieren und „sich zum Affen machen“ lassen sollte, und vielleicht bekommt ihr somit auch mal die Argumente untergebracht, warum man sich Nazidemos unbedingt entgegenstellen sollte: Weil sie sonst den Unentschlossenen, den „ich hab doch nix gegen, aber“-Sagern und den „Das muss man mal sagen duerfen“-Aerschen ein Bild von Staerke und Viele-sein vorspielen koennen.

Weiter ab 10:35, wo die neurechten Bewegungen in Europa als explizites Beispiel fuer Community Organizing genannt werden. Vielleicht reicht das dann auch als Argument, warum man Identitaeren-Hipstern und anderen Krawattennazis weiterhin keinen Fussbreit gewaehren darf – und warum ein IB-Plakat beim Schwoermontag vielleicht doch polizeilicher Aufmerksamkeit bedarf, obwohl die Polizei angeblich besseres zu tun hat. Zum Beispiel „kein Mensch ist illegal“-Plakate zu monieren.

In Allgemein veröffentlicht | Kommentieren

Mit LoRaWAN Lichter blinken lassen

Mir fiel die Tage auf, dass es wenige verstaendliche Anleitungen fuer LoRaWAN-Spielereien auf Deutsch gibt – was schade ist, weil a) die Technik zu Spielereien geradezu einlaedt und b) wir in Ulm ein recht enges Netz an Gateways haben.

Deswegen hier die kurze Dokumentation, wie wir ueber LoRaWAN Lichter an- und ausgeschaltet haben. Der verwendete Code ist vollstaendig auf github und ist zu ueberwiegenden Teilen von @Nitek geschrieben worden.

Teil 1: Der Empfaenger

Das wirkt jetzt etwas unintuitiv, aber weil das der einfachere und guenstigere Part ist, fangen wir mal mit dem Empfaenger an 😉

Verwendete Teile waren:

  • NodeMCU (oder WeMos D1 oder sonst irgendetwas ESP8266-basiertes)
  • WS2801-basierte RBG-LED-Lichterkette
  • Jumperkabel zum Verbinden der letzteren beiden Teile

Der Code basiert zu groessten Teilen auf dem Basic MQTT ESP8266 Example, und arg viel mehr ist es auch nicht. Der WiFiManager erspart uns, die WLAN-Credentials hart einzuprogrammieren, und am Ende geht es nur mehr darum, den passenden TTN-MQTT-Server einzutragen:

  • MQTT_USERNAME: Der Name der Application in der TTN-Console
  • MQTT_SERVER: Der URI des Handlers – laesst sich ueber die Application Settings in der TTN-Console ueber Settings → General → Handler herausfinden (z.B. eu.thethings.network)
  • MQTT_PASSWORT: Ein Access Key, am besten einer, der nur die Messages lesen und ansonsten nichts einstellen/konfigurieren kann. Den Key kannst du ueber „Settings/Access Keys“ in der TTN-Console anlegen, anschliessend taucht er im Console-Overviews auf und kann durch Klick auf das Augen-Symbol angezeigt werden (siehe Abbildungen unten, z.B. „ttn-account-v2.2[…]“)

Im Sketch selber (ja, da gehoert’s eigentlich nicht hin) sind noch PLACEID und MQTT_DEVICE zu definieren. PLACEID legt fest, auf welche Integer in der MQTT-Payload die Node reagiert. Steht hier z.b. ‚1‘ und in der Payload wird die 1 mitgeschickt, schaltet die Node ihr Licht ein. MQTT_DEVICE muss fuer jede Node eindeutig anders sein – d.h. selbst wenn mehrere Nodes auf dieselbe Payload reagieren sollen, brauchen sie unterschiedliche Device-Namen. Sonst kegeln sie sich bei der Registrierung im Endlosloop gegenseitig aus dem MQTT-Server.

Alles andere im Code ist lediglich Standard-Registrierung am Server und eine etwas laengliche Definition der LED-Lichterkette, die sich einschalten und beim Abschalten kurz rot leuchten soll. Das war’s auch schon.

Teil 2: Der Sender

Der Sender ist etwas komplizierter – erstens, weil ja ein „User Interface“ (sorry :D) dazugehoert, und weil das LoRa-Shield angesteuert werden muss. Notwendige Teile sind:

  • Stinknormaler Arduino Uno (oder Klon)
  • Dragino LoRa Shield (868 MHz) mit Rubberduck-Antenne
  • TM1638 LED and Key Module (unter dem Namen leicht in den einschlaegigen Shops zu finden)
  • DuPont-Verbindungskabel fuer Key/LED-Modul und Arduino

Der Arduino-Sketch ist auch relativ schnell gegessen: NWKSKEY[16] und APPSKEY[16] sind jeweils der Network Session Key und der App Session Key aus der TTN Console (ueber die Application → Devices → Dein registriertes Device). Wenn in der TTN Console DEADBEEF… steht, wird das im Sketch als { 0xDE, 0xAD, 0xBE, 0xEF, …} gespeichert. DEVADDR ist analog die Device Address aus der TTN Console.

Abhaengig vom abgefangenen Knopf auf der UI-Platine wird der Payload nun ein Integer uebergeben – und das wird in doSend() abgeschickt. Mehr gehoert nicht dazu 🙂

Und wozu das Ganze?

Das eigentliche Ziel war, an einem Aussichtspunkt ueber der Stadt ein Knopfbrettl mit spannenden Landmarken in der Stadt anzubringen, das mit LoRaWAN in die Stadt funkt. Und wer dort beispielsweise auf „Schwoerhaus“ drueckt, laesst eine auf den Punkt gerichtete Lampe blinken 😀

So weit sind wir noch nicht, aber Ende Mai war die Wirtschaftsministerin in Ulm an der TFU, und wir haben die Technik (mit den Lichterketten und den nodeMCUs) quasi gehighjackt, um die Ministerin reihum ihre Gespraechspartner*innen zu „erleuchten“. Hat geklappt 😉

via GIPHY

In Allgemein veröffentlicht | Getaggt , , , , | Kommentieren

Was mir an der re:publica am meisten fehlt

Haltung.

In Allgemein veröffentlicht | 1 Antwort

info-beamer-nodes auf dem Raspberry Pi laufen lassen

Schon eine ganze Weile lang steht im Verschwoerhaus mein alter Fernseher, der per HDMI und info-beamer-pi mit Inhalten beschickt wird – bisher fast nur Platzhalter, ein paar Bilder, die Uhrzeit.

Das wollte ich schon lange mal huebscher machen. So wie die Infoscreens beim Congress zum Beispiel. Mit kommenden Veranstaltungen. Und was da alles dazugehoert. Wann immer ich da aber eingestiegen bin, kam ich mir wie beim wildesten Yak Shaving vor: Die neueren Beispiele fuer info-beamer-Displays sind allesamt Packages fuer info-beamer-hosted, und so einfach laufen die nicht auf einem Pi, wenn man die Architektur von -hosted nicht kennt.

Nachdem ich aber heute ein paar der Fallstricke herausgefunden habe, hier mal fuer die Nachwelt erhalten:

In der Regel gibt es zwei bis drei Dinge zu beachten. Erstens: Beim Start von python2 service bricht der Prozess mit folgender Fehlermeldung ab:

[hosted.py] updated config
initialized hosted.py
Traceback (most recent call last):
  File "service", line 11, in <module>
    from hosted import CONFIG, NODE
  File "/home/pi/package-gpn15/hosted.py", line 184, in <module>
    NODE = Node(os.environ['NODE'])
  File "/usr/lib/python2.7/UserDict.py", line 23, in __getitem__
    raise KeyError(key)
KeyError: 'NODE'

Hier fehlt die Umgebungsvariable, wie der node heisst, an den die Uhrzeit geschickt werden soll. Das ist der root-node, der sich ueber die Konsole recht leicht ermitteln laesst:

In diesem Fall hilft ein vorheriges export NODE=package-gpn15 und alles funktioniert.

Zweitens: Die Config-Dateien. Die muessen aus den meist vorhandenen config.example.json angepasst werden. Was fuer den Fahrplan hilft ist ein Link auf ein frab-XML(!) in schedule_url in der config.json. Entweder ein kommendes Event aussuchen, das seinen Fahrplan ueber frab ausspielt, oder selber eins bauen. Das service-Script laedt das dann herunter und baut es in das etwas eigene json-Format um. Im package-conference-room-Readme ist das tatsaechlich beschrieben, das muss man aber erstmal finden 😉

Die 33c3-Infoscreens habe ich so leider trotzdem nicht zum Laufen bekommen, da ist die Konfiguration wohl noch ein wenig anstrengender. Aber immerhin verstehe ich jetzt ein wenig besser, wie info-beamer funktioniert. Jetzt muss ich nur noch herausfinden, warum der Bildschirminhalt trotz aller Overscan-Einstellungen ueber den Bildschirmrand hinauslaeuft (also keine schwarzen Rahmen, die gibts allenfalls in der Konsole, sondern abgeschnittene Raender rundum)

In Allgemein veröffentlicht | Getaggt , , | Kommentieren

Offene Daten für den Einzelhandel

Man kann eine ganze Reihe von Gruenden finden, warum man etwas im lokalen Einzelhandel und nicht online kauft. Weil man nicht dazu beitragen will, dass Menschen Robotergleich durch Versandzentren gescheucht werden, beispielsweise. Oder weil es um die Arbeitsbedingungen bei den Paketdiensten oft nicht besser ist. Oder weil man generell einen Wert darin sieht, vor Ort noch Ladengeschaefte zu haben – und die eben auch Umsatz brauchen, um zu ueberleben. Politischer Konsum, ganz klassisch.

In Ulm scheint man der Ansicht zu sein, den Einzelhandel vor allem durch Fahrspuren fuer Autos foerdern zu koennen. Weil, so die Logik, Leute ja staufrei mit dem KFZ in die Innenstadt fahren wollen, um dann zu konsumieren. Die angedachte Reduktion der Friedrich-Ebert-Strasse von vier auf zwei Fahrspuren wurde denn gleich als Untergang des Einzelhandels gebrandmarkt – egal was die verkehrsplanerische Vernunft sagt, denn das Braess-Paradoxon ist eben mal kontraintuitiv.

Aus Sicht einer, aeh, vielleicht mehr netz- als autoorientierten Generation laege die Loesung aber ganz woanders. Die Schmerzen bestehen fuer mich viel mehr darin, dass ich mich gar nicht damit beschaeftigen will, wo ich denn nun mein gewuenschtes Produkt im stationaeren Einzelhandel bekomme und wie ich da hinkomme. Je niedriger diese Schwelle ist, desto einfacher wird der Amazon-Verzicht. Eine Bierlaunenidee war da schnell gefunden:

Offene Daten ueber offene Schnittstellen aus dem Einzelhandel, dazu Soll-Fahrplandaten im GTFS-Format – damit waere das Feld bestellt, auf dem beliebige Browserplugins geschrieben werden koennten, um dem Ziel naeherzukommen.

Wie sich wenige Tage spaeter herausstellte, gibt es so etwas tatsaechlich schon:

Zugegeben, fuer den Buecher-Anwendungsfall ist die Angelegenheit etwas einfacher – jedes Buch laesst sich ja eindeutig ueber seine ISBN identifizieren, und quasi alle Bibliotheken haben irgendeine Form von OPAC, in den sich die ISBN fuettern laesst. Bei anderen Produkten ist das schwieriger aufzuloesen – und vor allem hat der Einzelhandel auch bislang seltenst ueberhaupt Schnittstellen fuer sein Inventar. Geschweige denn in standardisierter Form.

Langfristig waere aber genau das der richtige Ansatz: Offene, standardisierte Schnittstellen. Auf deren Basis dann jemand beispielsweise als Radkutschenkurier sein eigenes Geschaeft aufbauen kann, um entweder binnen einer Stunde die gewuenschte Ware aus dem Laden in der Stadt nach Hause liefert.

Das wird nicht gleich morgen entstehen, und es beraubt einen des befriedigenden Gefuehls der Geschaeftigkeit, das man beispielsweise beim Einrichten von Portalen hat (niemand braucht und/oder nutzt Portale). Geschaeftigkeit ist aber nicht Produktivitaet – und was ich fuer die nachhaltigere Loesung halte, duerfte klar sein, oder? 😉

In Allgemein veröffentlicht | Getaggt , , , | Kommentieren

Dauerrauschen bei Mikrofonaufnahmen unter Linux

Es war schon bei meinem alten Netbook so, und auch beim Thinkpad hat mich das verfolgt: Aufnahmen ueber den externen Mikrofoneingang rauschen und sind kaum verstaendlich. Beim Netbook konnte ich dualbooten und unter Windows exzellente Aufnahmen mit ordentlicher Vorverstaerkung machen – unter Linux gab es nur Dauerrauschen und kaum verstaendliche Aufnahmen.

Das ist beim X220 umso seltsamer gewesen, da das internet Mikrofon ganz passabel aufzeichnet (wenn auch nicht so sonderlich laut), und ein USB-Audiointerface auch ganz problemlos funktioniert.

In der Arch-Linux-Dokumentation zu PulseAudio habe ich dann die Loesung gefunden: Es scheint wohl an einer falschen default-Samplerate bei PulseAudio zu liegen.

Mit $ arecord --list-devices werden die Audiointerfaces aufgelistet, in meinem Fall ist es wie im Beispiel beschrieben hw:0,0.

Danach wird mit arecord -f dat -r 6000 -D hw:0,0 -d 5 /tmp/test.wav eine Aufnahme unternommen. Die Ausgabe meckert dann, dass die Aufnahmerate nicht ganz passt, in diesem Beispiel wuerden 44.100 Hz unterstuetzt. Durch Weiterprobieren findet man dann heraus, dass auf dem X220 auch 96kHz funktionieren wuerden.

(Genau genommen gingen bei mir Werte zwischen 42000 Hz und 48000 Hz und zwischen 91429 Hz und 101052 Hz.)

Eine ordentliche Sampling-Rate wird dann in /etc/pulse/daemon.conf als default-sampling-rate eingetragen – und schon ist das Rauschen weg.

In Allgemein veröffentlicht | Getaggt , | Kommentieren

Input/Output

Input/Output from Terri Timely on Vimeo.

In Allgemein veröffentlicht | Getaggt , | Kommentieren

Lieber Clever als Smart: Civic Tech fuer Menschen

Drei (plus x) Lese- und Ansehempfehlungen, die mir gestern nach und nach in den Twitterfeed gepurzelt sind und ebenfalls zur Frage passen, wie Civic Tech weitergesponnen werden kann.

Erstens das Boston Smart City Playbook, das schon gleich mit einem Kracher anfaengt:

The age of the “Smart City” is upon us!

It’s just that, we don’t really know what that means. Or, at least, not yet.

So far, every “Smart City” pilot project that we’ve undertaken here in Boston has ended with a glossy presentation, and a collective shrug. Nobody’s really known what to do next, or how the technology and data might lead to new or improved services.

Es folgt ein Rant ueber Vertriebsdrohnen von „Smart City“-Verkaufsbueros, eine Rueckbesinnung auf die Menschen, um die’s gehen soll, dass es nicht noch eine Plattform braucht (!!! zefix!!!), und dass im Zweifel eine „Clevere“ Stadt besser ist als eine „Smarte“: Mit einem Prototypen, einer intelligenten Strassenlaterne. Kleinen Spielplaetzen, die spaeter vielleicht hochskaliert werden, wenn sie sich bewaehren. Anstelle von Alles-oder-nichts-Megaprojekten.

Zweitens The Engine Room’s Advent Calendar mit einem Lesetipp fuer jeden Tag. Beispielsweise, dass „Startup-Kultur“ eine denkbar depperte Denkweise und Rahmenbedingung fuer gesellschaftsveraendernde Projekte ist. Dass „Innovation“ vollkommen ueberbewertet ist und „Wartung und Unterhalt“ eigentlich die wichtigeren Buzzwords sein sollten. Oder dass im Westen nach wie vor nicht-wohlhabende nicht-weisse Nicht-Akademikerinnen (hier: spezifisches Femininum) vergleichsweise wenig von Civic Tech haben.

Um Ausschluesse geht es – drittens – auch in Programming is Forgetting: Towards a New Hacker Ethic. Der etwas mehr als 20minuetige Vortrag (siehe oben) ist hier komplett transkribiert und lohnt sich zu lesen, gerne auch haeppchenweise. Am Beispiel einer Anekdote um die juengst mit der Presidential Medal of Freedom ausgezeichneten Margaret Hamilton zerlegt Allison Parrish Stueck fuer Stueck die „Hackerethik“, wie sie Steven Levy 1984 in seinem Buch “Hackers” dargestellt hatte. Nach einem Exkurs ueber soziale Kontexte stellt sie den urspruenglichen Lemmas jeweils eine Frage gegenueber. Und ich finde sie grossartig:

allison-parrish-programming-forgetting-26

(danke @lorz und @mjays fuer die Links. Ich weiss leider nicht mehr, von wem ich den Vortrag retweeted bekam.)

In Allgemein veröffentlicht | Getaggt , , , , , , , | Kommentieren