BIGINTs in rails as primary keys

(This is an update to my older post on bigints in rails migrations.)

BIGINT columns in rails have always been a little annoying to work with, which is why I published a blog post on how to do it, five years ago, to serve as a reminder to myself and as a resource to others. BIGINT primary keys were even more hit-and-miss.

Enter Ryuta “kamipo” Kamizono, who took to improving rails’ support for this, created a pull request “Allow limit option for MySQL bigint primary key support,” and landed that in rails:master last month, which allows you to write things like this:


create_table :foos, id: :primary_key, limit: 8 do |t|
end

# or

create_table :foos, id: false do |t|
  t.primary_key :id, limit: 8
end

The patch should be included in the next release of rails. Happy hacking!

Integer vs to_i in Ruby

Since this has recently come up in a work context, I would like to take this opportunity to remind everyone to always specify the expected base when trying to convert strings to integers using Integer(value), because as opposed to String#to_i, the Integer(…) constructor does honor prefixes like 0 for octal, 0x for hexadecimal, etc.

Example:


Integer("0462011540000077")  #=> 21029460115519
Integer("0461990540002606")  #=> ArgumentError
"0462011540000077".to_i #=> 462011540000077
"0461990540002606".to_i #=> 461990540002606
# now, specify the base explicitly:
Integer("0461990540002606", 10)  #=> 461990540002606

The same thing happened with JavaScript’s parseInt and bit lots of people, so: cover your bases.

Ruby documentation for Integer()

Update zur Alte Leipziger

Gestern, am 18. März, schickte ich um 14:03 Uhr eine Anfrage an die Abteilung für Presse- und Öffentlichkeitsarbeit der Alte Leipziger. Kurz darauf löschte die Alte Leipziger sämtliche »Erklärvideos« von ihrem YouTube-Kanal »AlteLeipzigerVideo«. Daraufhin erbat ich um 17:31 Uhr eine weitere Stellungnahme zur Löschung der Videos.

Die Alte Leipziger hat bisher nicht geantwortet.

Alte Leipziger, altes Menschenbild, alte Ausreden

Die Alte Leipziger dachte sich, mal so richtig tief in die Klischeekiste greifen zu müssen, und »augenzwinkernde« Spots zu veröffentlichen, die vor Gestrigkeit nur so strotzen. Die Nuklearfamilie der Fünfziger ist gesetzt, wo der Vater der Geldverdiener ist, der Sohn der Vater in Ausbildung, und die Frauen* Dekoration oder bestenfalls Aufhänger für Belehrungen der Männer. Bei thea wurde die Problematik schön beleuchtet.

Mela hat das zum Anlass genommen, mal bei der Alten Leipziger nachzuhaken, und hat ihnen per Kontaktformular drei Fragen gestellt. Und die Alte Leipziger hat tatsächlich geantwortet, und zwar auf unglaublich perfide, reaktionäre und unfreundliche Weise. Aber lest selbst.

Und dann tut der Versicherung mit dem über fünfzig Jahre alten Familien-, Frauen*- und Männer*bild doch gerne auch eure Meinung kund. Vielleicht bekommt ihr ja auch persönliche Anrufe, wo ihr euch von der Alten Leipziger beleidigen lassen könnt.

Oder kontaktiert doch die Abteilung Presse- und Öffentlichkeitsarbeit. Vielleicht fühlen sich die Ansprechpartner(innen) ja zuständig.

Discworld nachlesen

Aus gegebenem, traurigem Anlass wollte ich alle Discworld-Romane nachlesen, habe aber keine Lust, mein Regal mit Wikipedia abzugleichen, alle Ergebnisse bei Amazon durchzuklicken, oder aus dem Haus zu gehen. Ein bisschen Wikipedia & Bash später: Discworld-Romane in Reihenfolge der Veröffentlichung, englische Ausgabe, auf Amazon.de.

Wenn ihr mögt, klickt erst diesen Affiliate-Link an.

Zur Entscheidungshilfe bei der Lesereihenfolge sei der Discworld Reading Order Guide empfohlen.

Hesus Gristus ich.Tariot

Ein Polizist mit Elfenohr’n
Mit diesen Elfenohr’n
Fahr’n wir hinaus
My Bulle is over the ocean
My Bulle is over the sea
Hol die gold’nen Garben, hol die gold’nen Garben
Bring what’s mine to me
To the Hauptschuleh

Oder anders gesagt, wieso darf man bei HGich.T eigentlich den Text können?

Liebster Award

Geschieht mir ja irgendwie recht, von dem Stöckchen, das ich selbst weiter geworfen habe, wieder getroffen zu werden. Nun ja. Liron hat mich für den Liebster Award nominiert, so here we go:

Die Regeln

  • Beantworte die 11 Fragen, die dir gestellt wurden.
  • Nominiere 5 bis 11 weitere Blogger_innen/Podcaster_innen.
  • Stelle eine neue Liste mit 11 Fragen zusammen.
  • Informiere deine nominierten Blogger_innen/Podcaster_innen.

Die Fragen

  1. If you were born in Europe of the middle ages, what kind of profession would you adopt? / Wenn du im mittelalterlichen Europa geboren worden wärest, welchen Beruf würdest du ausüben?

    Wenn ich freie Wahl hätte, würde ich natürlich »Renaissance Man« sein wollen und mich als Wissenschaftler-Philosoph betätigen. Aber realistischer wäre wohl was bodenständiges, solides, zum Beispiel Schmied.

  2. If you would be offered a new life on a deserted island with 20 people of your choosing and no way to contact the rest of civilisation, would you accept? / Wenn du ein neues Leben auf einer einsamen Insel mit 20 Menschen deiner Wahl und ohne Kontakt zum Rest der Welt anfangen könntest, würdest du es tun?

    Wenn mir Konsens egal wäre, ja, vermutlich ohne großes Zögern. Aber wer fragt die 20 Leute, ob die das auch wollen? Besser, 20 meiner Freunde und ich werden reich genug, um uns einfach eine Insel kaufen zu können oder so.

  3. What does your daily rhythm look like when you perform and feel your best? / Wie sieht dein Tagesrhythmus aus, wann bist du am leistungsfähigsten und wann fühlst du dich am besten?

    Ganz unterschiedlich. Früher war ich eher abend- und nachtaktiv, was aber auch daran lag, dass da alle spannenden Sachen im Internet passierten. Seit ein paar Jahren stehe ich gerne früh auf und mache lange Tage. Meistens reichen mir sieben Stunden Schlaf, und alles was darüber hinaus geht, macht mich nur matschiger. Am leistungsfähigsten bin ich aber trotzdem meistens am späten Nachmittag bis Abend, weil da weniger Ablenkungen passieren.

  4. What is your favorite dish or type of dish to cook, and why? / Welches Gericht oder welche Art Gericht kochst du am liebsten, und weshalb?

    Am allerliebsten ohne Zweifel Steak – weshalb, sollte klar sein, wenn man mich ein bisschen kennt. Leider habe ich momentan nicht die beste Ausrüstung dafür, insbesondere wird mein Herd nicht heiß genug, um Fleisch ordentlich scharf anzubraten. Daher koche ich dann mein vermutlich zweitliebstes Gericht, Shakshouka: Es ist recht schnell und einfach zuzubereiten, aber unglaublich lecker, und man kann es in großen Mengen machen und dann noch tagelang davon essen. Außerdem ist es sehr variabel – schon die Grundlage kann man in verschiedener Weise zubereiten, und dann hat man beinah vollständig freie Hand, ob und womit man es verfeinert. All-around winner here.

  5. Which historical figure would you have liked to have met, and why? / Welche geschichtliche Figur hättest du gerne getroffen, und weshalb?

    Darüber hab ich noch nie nachgedacht. Ich schätze, Martin Luther King oder Siddharta Gautama oder so. Oder vielleicht einen der Rennaissance Men. Wahrscheinlich die langweiligste Antwort ever, hm?

  6. Do you collect anything? If so, what? / Sammelst du etwas? Falls ja, was?

    Physische Dinge sammeln sich zwar bei mir an und ich muss regelmäßig mit der großen Harke durchgehen und Dinge zum Wegwerfen aussortieren, aber absichtlich sammeln tue ich nichts, außer interessanten Fakten…

  7. What do you think is the single biggest obstacle to the cultural, social an technological development of humankind in the current age? / Was hältst du für das größte Hindernis für die kulturelle, soziale und technologische Entwicklung der Menschheit in diesem Zeitalter?

    Kategoriendenken und Wettbewerb. Jegliche Form von »Wir-gegen-die« sowie die Voraussetzung, damit überhaupt solche Konzepte wie »wir« und »die« (anderen) entstehen.

  8. How do you think people will be consuming media (news, entertainment) in 20 years? / Wie, glaubst du, werden Menschen in 20 Jahren Medien (Nachrichten, Unterhaltung) konsumieren?

    Ich hoffe dass »Nachrichten« wie sie in den letzten paar Jahrzehnten produziert und konsumiert wurden, bald den Weg alles Irdischen gehen, und die meisten Unterhaltungsformate finde ich ebenso unnötig und uninteressant. Von daher, naja. Ich hoffe da ein bisschen auf die Zukunft, die Machinae Supremacy besingen, wo alle ihre eigene Öffentlichkeit sind, aber dann hat man wieder das Kurationsproblem. Außerdem konvergieren die Inhalte auf den Plattformen wie YouTube & Co. ja häufig in die Richtung »Wir beobachten anderer Leute Leben«, und während ich das nicht per se schlecht finde, sehe ich dennoch einen gewissen Bedarf an gesellschaftlicher/politischer/sozialer Bildung in den Medien.
    Aber um die Frage zu beantworten: Von freundlicher AI nur für uns kuratierte Individualfeeds, die direkt in unsere Smartwatches oder unser Hirn-Interface gepusht werden. Sponsored by $corporate. Brave new world.

  9. What is more important to you in social situations – to be liked, or to be respected? / Was ist dir in sozialen Situationen wichtiger – gemocht zu werden oder respektiert zu werden?

    Respekt ist mir wichtiger. Um gemocht zu werden, muss man sich zu oft verstellen, und ich bin mir – meistens – selbstsicher genug, dass mir das den Trade-off nicht wert ist.

  10. What is the biggest fear you have conquered as an adult? / Was ist die größte Angst, die du als Erwachsener überwunden hast?

    Die Angst vor Nadeln. Ich weiß nicht mal genau, wo die herkam, vermute aber zwei eher als Metzger praktizierende Ärzte ohne jegliche Empathie oder Interesse am Patienten, die mich in meiner Kindheit bzw. frühen Jugend abgeschreckt haben. Sie zu haben war jedenfalls extrem unpraktisch, weil man erstens sowieso schon ab und an Spritzen bekommt oder sich Blut abnehmen lassen muss, und weil sich das im Kontext von Poly und Kink gerne potenziert: Regelmäßige STI-Vorsorge, Nadelspiele, what have you. Instrumental (haha) bei der Überwindung waren Ärzt*innen und Arzthelfer*innen, denen ihre Patienten nicht egal waren, kombiniert mit dem Willen, nicht wegzuschauen. Jetzt komme ich ganz gut mit Nadeln klar, und auch mein Kreislauf bricht danach nicht mehr weg.

  11. Chocolate, vanilla or cookie dough? / Schokolade, Vanille, oder Cookie Dough?

    Vielleicht die schwierigste Frage, aber ich denke, Schokolade gewinnt. Knapp.

Die Nominierungen

  1. Susanne / putpixel
  2. Katharin / secondthought
  3. Jenna / i say shotgun
  4. Gerlinde / feenzeit
  5. Lilly / Kuchenkram

Meine Fragen

  1. Wie konsumierst du Nachrichten, Unterhaltung, Information, etc.?
  2. Singst du manchmal vor dich her, auch wenn jemand dich hören könnte?
  3. Mit welcher realen, historischen, oder fiktiven Person würdest du gerne zu Abend essen?
  4. Relatiert: Wie sieht deine perfekte Mahlzeit aus?
  5. Wann hast du zuletzt geweint und warum?
  6. Wie sähe dein Leben aus, wenn du dir um deine Grundsicherung (Wohnung, Nahrung, …) keine Sorgen machen müsstest (z.B. dank BGE)?
  7. Wenn du eine Sache an unserem politischen System ändern könntest, was wäre das?
  8. Bist du eher ein Tag- oder Nachtmensch?
  9. Wie gehst du mit Stress um?
  10. Welches war dein bestes Konzert jemals?
  11. HG.ichT – Kunst oder was?

Und jetzt ab dafür.

Schoko-Karamell-Tarte

Grundlage war dieses Rezept, das ich aus dem Italienischen übertragen habe. Protipp für die Zukunft: Bei Pinterest immer auch gleich durchklicken, dann steht man nicht verdattert im Laden und versucht sich an sein Italienisch zu erinnern. Nun denn.

Zutaten

Für den Teig
  • 350g Mehl
  • 
50g Kakaopulver
  • 
1 Ei
  • 
200g Streuzucker
  • 
200g Butter (ungesalzen)
Für das Karamell
  • 100g Zucker
  • 
250ml Sahne
  • 
40g Butter (je nach Vorliebe gesalzen oder ungesalzen)
Für die Glasur
  • 150-200g dunkle Schokolade
 oder Kouvertüre
  • ggf. etwas Butter (um die Schokolade flüssiger zu machen)
  • Fleur de Sel (optional)

Zubereitung

Gesamte Zubereitungszeit: 2–3 Stunden; davon aktiv: ~15 Minuten.

Wichtig: den Teig nicht zu lange kneten, sonst bricht er beim Backen auf!

Die Butter entweder zimmerwarm werden lassen oder kurz in der Mikrowelle erwärmen. Butter mit Zucker cremig schlagen. Das Ei in einer anderen Schüssel sanft aufschlagen, dann unter die Butter und den Zucker unterheben und glatt rühren. Mehl und Kakao langsam hinzufügen und rühren, bis der Teig glänzend und noch leicht körnig ist. Teig zu einer Kugel formen, kurz kneten, mit Frischhaltefolie abdecken und für eine Stunde im Kühlschrank ruhen lassen.

Teig nach dem Ruhen auf leicht bemehlter Fläche ausrollen. Tarte-Form (ø18-20cm) damit auslegen, Boden leicht einstechen. Für eine weitere halbe Stunde in den Kühlschrank stellen.

Ofen auf 180 °C vorheizen. Tarte-Boden mit Backpapier abdecken, das Backpapier mit Keramikperlen oder trockenen Bohnen belegen. Für 8–10 Minuten backen. Aus dem Ofen nehmen und abkühlen lassen. Perlen bzw. Bohnen und Backpapier entfernen und für 5–6 Minuten im Ofen fertig backen. Aus dem Ofen nehmen und vollständig abkühlen lassen.

In der Zwischenzeit das Salzkaramell vorbereiten. Die Butter bei Zimmertemperatur weich werden lassen. In einem ausreichend großen Topf den Zucker gleichmäßig verteilen und ohne Rühren bei mittlerer Hitze erwärmen, bis der Zucker karamellisiert. Achtung, nicht zu dunkel werden lassen! Keinesfalls rühren, damit keine Klümpchen entstehen. Währenddessen die Sahne in einem anderen Topf erwärmen. Sobald der Zucker klümpchenfrei karamellisiert ist, die heiße Sahne langsam zugeben und dabei schnell einrühren. Bei niedriger Hitze unter stetigem Rühren 2–3 Minuten erwärmen. Von der Herdplatte nehmen und die weiche Butter vollständig unterrühren.

Karamell auf dem Tarte-Boden verteilen, so dass sich eine homogene Schicht bildet, dabei mindestens 1,5cm Platz für die Schokolade lassen. Für mindestens eine Stunde im Kühlschrank stehen lassen, bevor die Schokolade hinzugefügt wird.
Schokolade im Wasserbad schmelzen und vorsichtig auf die Tarte gießen. Schokolade am besten durch vorsichtiges Kippen verteilen, anstatt Löffel oder Spachtel zu verwenden, dann ist die Schicht schöner. Nach Geschmack mit Fleur de Sel verzieren. Vollständig abkühlen lassen.

Fotos gibt’s bei Instagram: Nach dem Glasieren, Innenansicht. Beim nächsten Mal werde ich versuchen, die Schokolade mit etwas Butter zu schmelzen, damit sie besser fließt. Alternativ sollte Kouvertüre funktionieren.

Thymian sucht ein neues Zuhause

Auf Englisch bei Liron.

Thymian ist ein wunderschöner Europäisch-Kurzhaar-Kater, den wir im Juli aus dem Tierheim geholt haben. Er ist freundlich und verschmust, verträgt sich aber leider nicht mit Salbei, unserem anderen Kater. Alle Methoden und Wundermittel, ob Zylkène, Feliway, Trennung und Wiederzusammenführung, haben nichts genutzt. So sind beide Kater unglücklich und gestresst. Als einzige Katze wäre Thymian wahrscheinlich glücklicher.

Thymian ist zwischen 8 und 12 Jahre alt, kastriert, entwurmt, und gechippt. Seine Nieren funktionieren nicht mehr zu Hundert Prozent, weshalb er ein spezielles Futter benötigt, das es bei jedem Tierarzt oder sogar bei Amazon gibt. Damit wird er aber noch viele Jahre gesund und munter bleiben.

Wir suchen also einen geduldigen, großherzigen Katzenfreundin, dieder Thymian die nötige Pflege und dieder Aufmerksamkeit zukommen lassen kann, die er verdient. Wenn wir ihn nicht vermitteln können, müssen wir ihn zum Tierheim zurückbringen, und befürchten, dass sein Nierenproblem dort nicht optimal versorgt werden kann.

Daher suchen wir schnellstmöglich ein neues Zuhause für ihn. Neben den Papieren vom Tierheim Süderstraße können wir eine Katzentoilette sowie einen kleinen Vorrat an Nierenfutter mitgeben. Gerne könnt ihr Thymian in Hamburg in der Schanze treffen und kennenlernen – bitte kontaktiert dazu Liron unter liron@liron.de oder @lirontocker oder @moeffju auf Twitter.