home.social
  1. From README for Tetris on CHIP-8 (1991). We should bring back sending feature request in an envelope with $5 attached.

  2. Today I got some time to find out why my takes a noticeably long time to start. The offender was . As I removed it, the time got down from 450ms to 60ms.

    To time startup of zsh vs bash:

    $ for i in $(seq 1 10); do /usr/bin/time bash -i -c exit; done

    $ for i in $(seq 1 10); do /usr/bin/time zsh -i -c exit; done

    To find how long each plugin takes at startup, add `zmodload zsh/zprof` at the top of `~/.zshrc` and `zprof` at the bottom.

  3. @ShinNoNoir There are also (Lisp-Flavored Erlang) :lfe: and , both are nice languages running on BEAM.

  4. @raiderrobert

    Wrestling with to make an adapter serializer that uses for validation.

    DRF embodies all the worst things about Java-style OOP. There are base classes, mixins, attributes that must not be used before you call a specific methods, nothing is documented, and, of course, not annotated. Even drf-stubs project that supposed to annotate DRF is full of Any. And then we also stuck with pydantic v1 where you can't have custom serializers.

    What a day.

  5. What are your favorite (or another similar IT ) episodes? I have a 10h flight ahead, and all I'm going to have there is an ipod.

  6. @aohorodnyk @ede I came here to say that. syntax is very similar to the examples in bkn, so it might be a good inspiration.

    And there is nothing wrong about reinventing things. It's fun, you can a lot along the way, and maybe you can even make something better and be an inspiration for someone else. Keep going!

  7. @warrickball @pyodide I use pyodide to run a whole bunch of things. For example:

    IDE for drawing images with :
    svg.orsinium.dev/

    with plugins:
    wps.orsinium.dev/

  8. @mgorny You can use to produce sdist distributions with autogenerated setup.py:

    flit.pypa.io/en/stable/cmdline

  9. The previous post with the hashtag is me praising it's sqlalchemy integration. Oh irony.

  10. Last week I decided to pick instead of for a new microservice and I already regret this decision. I can't make DB rollbacks work in tests because the test client runs the server in a separate thread with its own event loop. And it feels like I'm the first one doing it and there is no community to help.

    I learned a valuable lesson: don't underestimate the importance of community. Sometimes, it's better to go with mainstream. Especially for commercial projects.

  11. @python_discussions That's not true. You need to specify `__all__` in `__init__.py` (and other facades) so that , , and know that these packages are imported to be exported. Then flake8 and ruff won't report unused import and mypy will allow reexports from the module.

  12. @glowrocks Django is still very much alive and I, unfortunately, work with it daily at my job. It didn't age well, though. The support for asyncio is still quite rough, support for typing is third-party (see django-stubs) and painful, and it hides too many things (the ORM makes it too easy to make bad requests). The modern most hyped web framework is and I personally found (ex ) quite nice (better integration).