Atom Feed

This page contains random thoughts and impressions by me.

  1. 2019-07-02
  2. 2019-06-24
  3. 2019-06-14
  4. 2019-05-27
  5. 2019-05-24
    Christian Kruse,

    Today I learned: you can specify a binding position in an Ecto query via parameter:

    def apply_some_filter(query, binding_position, field_name) do
      from([{rel, binding_position}] in query, where: field(rel, ^field_name) == "foo")

    This works thanks to pattern matching 😍

  6. 2019-05-19
  7. 2019-05-17
  8. 2019-04-27
    Christian Kruse,

    It's fascinating to see how Rammstein still manages to create controversy and attention, even though they are in the business that long. First there „Deutschland“ video, where a lot of mainstream media weren't able to see the criticism on German history and called fascism. And now „Radio,“ a homage to the German band „Kraftwerk,“ a nostalgic view back on DDR history and, again, criticism on German history. And again all media is reporting.

    Well done, Rammstein! 👍

  9. 2018-09-19
  10. 2018-09-12
    Christian Kruse,

    Public service announcement: Math.max(...[]) returns -Infinity - took me about an hour of debugging to locate this problem.

  11. 2018-09-11
    Christian Kruse,

    Currently I am working on a TypeScript project. During this project I wanted to give the TypeScript compiler the hint that I expect a class object as a parameter. I couldn't find something in the documentation. But since you can use expressions as type declaration I tried to use typeof:

    class Bar {}
    function foo(val: typeof Bar) {}

    Surprisingly this works. Now after I knew what I had to look for I could find a hint in the documentation as well:

    Next, we then use the class directly. Here we create a new variable called greeterMaker. This variable will hold the class itself, or said another way its constructor function. Here we use typeof Greeter, that is “give me the type of the Greeter class itself” rather than the instance type.

    Maybe this saves you a few headaches.

  12. 2018-09-10
    Christian Kruse,

    Over the weekend my good friend Jeena was visiting me. We had a lot of fun and tons of interesting talks. It was a pleasure, Jeena!

  13. 2018-08-23
  14. 2018-08-15
  15. 2018-08-12
    Christian Kruse,

    EmacsCast: A journey into Emacs is a podcast of a programmer diving into Emacs. While I didn't listen to it, yet, I thought I should share it because there is not very much Emacs content out there. In the first episode he introduces hilself and explains why he, as a SublimeText user, dives into Emacs.


  16. Christian Kruse,

    After a pause of 14 days it is surprisingly easy to get back into running. 17,8km in 01:21:33, 04:35 per km 🏃

  17. 2018-08-11
  18. 2018-08-10
  19. 2018-05-14
    Christian Kruse,

    It's one of those days where I want to throw away ten years old code and just rewrite it…

  20. 2018-05-02
  21. 2018-04-15
    Christian Kruse,

    Quick tip: use gsettings set org.gnome.desktop.interface show-battery-percentage true to show the battery percentage.

  22. 2018-04-14
  23. 2018-04-12
  24. 2018-03-18
  25. 2018-02-24
    Christian Kruse,

    I hate running in the winter. The first 15 minutes it‘s fucking cold. Then up until about 10km its warm enough. Then for the rest of the run it is cold again. ❄️

  26. 2018-02-15
    Christian Kruse,

    I have started to work with React during the last few months. I have to say, I am really impressed how well everything works and how easy it is to create good, working UIs with it.

  27. 2018-02-10
    Christian Kruse,

    I understand now why so many users hate Windows 10... doing some support for relatives, fuck, this is unbearable. Windows seems to get worse every release.