1. 16

Feel free to tell what you plan on doing this weekend and even ask for help or feedback.

Please keep in mind it’s more than OK to do nothing at all too!

  1.  

  2. 11

    Code:

    • Writing a talk on embedded search engines for static websites (sometimes called ‘full text search engines’)
    • Building a demo with Go and Wasm for the above
    • Setting up (or, trying out) Netlify CMS for a family website – so people that aren’t me can edit it

    Other:

    • Playing Portal 1/2 and maybe INSIDE with my wife
    • Running in the cold!
    1. 1

      Can you give more details about the full text search engine?

      Running in the cold!

      (╬ ಠ益ಠ)

      1. 3

        I’m looking into projects like tinysearch, Stork, lunr.js, elasticlunr.js, minisearch, flexsearch, etc. They have different capabilities ranging from:

        • Full word matching only
        • Partial word matching
        • Fuzzy search
        • Wildcard matching
        • Boolean opterators

        I’ll be implementing an inverted index and seeing what else I’m capable of adding to it over the course of a few days. It will be written in Go but since I’m aiming to target tinygo as a compiler (to shrink the Wasm binary size) there are some restrictions.

        1. 1

          Interesting, I’ve been using and contributing to Bluge which can do offline indexing too.

          But if you are implementing yourself then it should be even more fun!

          I’ve been toying with the idea of implementing a ngram index over roaringbitmaps for front-end search, looking forward to reading/watching what you do!

    2. 8

      Yesterday I finally got an old project of mine running again on my new NixOS server, it was more complicated than I thought because of some issues with fastcgi and nginx and that the programming language it uses dictates that some features have to be changed at compile time, but NixOS made that easier than it would’ve been otherwise. I really enjoy NixOS, it makes me want to do things with my linux servers again. I think over the weekend I’ll add some features that were long overdue and fix some bugs.

      Other than that I might make some progress on this cryptography puzzle game I’m playing called Cypher. It’s a neat game, I’m learning a lot about cryptography that I probably wouldn’t have looked into otherwise.

      1. 5

        Test suite for pijul

        1. 5

          Messing with ocaml

          1. 4

            Finishing my cryptography exercises for this semester. Two tasks are left:

            • Implement a ECC invalid code point attack
            • Implement El-Gamal signatures
            1. 4
              • Lean more about Zig reader/writer and try see how it can change h11 API.
              • Exercise: fat is useful in winter but not too much :P
              1. 4

                I managed to publish my ebook after about a month’s delay (or rather, my estimation was off by a month), so I’m taking a mini-break.

                Read Half a Soul yesterday and liked it a lot, especially the characters - romantic fantasy set around 19th century London. Currently reading The Misenchanted Sword and enjoying it a lot as well, especially the humor.

                My faithful desktop of ~7 years is on its last legs, so I’m planning to visit a few shops for a quote.

                1. 4

                  Real life:

                  Get on the ice and enjoy the snow with our 7yo, it’ll be above 0℃ after Sunday.

                  Tech:

                  • Continue splitting up buildRustPackage in nixpkgs into separate composable hooks, this makes it easier to reuse the same functionality for mixed Rust-Python (or pick another language) packages. (Work done so far: #112500, #112804)
                  • Improve support for CUDA 11 in nixpkgs.
                  1. 2

                    Get on the ice and enjoy the snow with our 7yo, it’ll be above 0℃ after Sunday.

                    So refreshing to see this. I live in Boston, and get kinda tired of listening to people whine as if the cold and snow were an insurmountable obstacle to be avoided like radioactive waste.

                    Learn to wear appropriate clothes and enjoy the outside in winter. Revolutionary idea, I know :)

                  2. 3

                    I will hopefully finish porting an old Rust project to C++ and then continue working on it.

                    1. 2

                      What made you decide to switch from Rust to C++?

                      1. 2

                        It’s a developer tool for myself and I’m avoiding a lot of “What’s the best way to do ____ in Rust?” and other unknowns since I write C++ professionally. I just want it done since I’m doing it on my personal time, and Rust’s been great. I can write Rust just fine, but there’s a big difference between being able to write in a language, and architect well in a language and thought it’d go a lot quicker in C++ for me.

                        The big issue is that I’m going to be able use this tool at work, I also can’t be bringing random code from the internet into it. I’ve also been frustrated with Rust’s module system, and it also helps me simplify interfacing with a bunch of C interfaces I’m using by avoiding binding generators, etc.. I expected the rewrite to be complete hell and failure, but it’s been going surprisingly well so far.

                    2. 3
                      • Continuing to learn Clojure
                      • Running a Valentine’s Day themed Honey Heist session for me and my single friends.
                      1. 3

                        Finishing the algorithms exercise I’m stuck on - it’s an island counting problem. You get a grid of 1s and 0s and you have to properly count the connected series of 1s.

                        3 tests are passing but the two trick data set tests - squares and circles, are failing.

                        One of the things I am loving about Pybites is that for every problem you get a test suite that not only ensures you got AN answer but that you’re also providing for irregular or tricky cases.

                        This is exactly the kind of algorithmic complexity I need to become WAY more comfortable with.

                        1. 3

                          I’m resurrecting the old rogue v3.6 code.

                          This code is undoubtedly the worst code I’ve seen anywhere. Indentation is mix of tabs and spaces (4 spaces for 1 level, 1 tab for 2 levels, 1 tab + 4 spaces for 3 levels), the game’s state is stored on ncurses WINDOWs, dozens of utility functions are scattered all over the place and used maybe once or twice, and its authors don’t seem to know much about .h files and function prototypes (just to name a few defects).

                          1. 1

                            Sounds like a fun project!

                            I’d also guess it’s K&R C so you’ll need to convert to ANSI as well?

                          2. 3

                            Re-arranging my studio in my (new) house and running a few metres of CAT6 into it.

                            1. 3

                              I’m going to have a super long weekend. Like taking off all of next week long weekend. My girlfriend and I realized that we haven’t taken time off since Christmas of 2019.

                              There’s a fair bit I want to get done, but thus far we are intentionally not planning anything until we had some time to rest. Buuuuuuut prospective things to do include

                              • Finishing work on a workbench
                              • Mapping out garden for warmer weather.
                              • Worrying I have turned into my parents.
                              • Working on an audiobook to podcast project I started a while back.
                              • I’ve been kicking around the idea of writing a blog post detailing simple step by step example of various cryptography algorithms. did this as a freshman in college for a discrete mathematics class and am thinking that level of understanding is kind the ideal target for it. Soatok’s Crackpot Cryptography and Security Theater, which I recommend, was an impromptus bringing this to front of mind. a few very simple step by step examples of how various cryptography algorithms work. I
                              • Reflashing the sonoff zigbee bridge and making zigbee devices addressable from mqtt server.
                              • Reading. Not sure what. Likely Rhythm of War
                              1. 2

                                Ice skating. Only opportunity this year, probably.

                                1. 2

                                  Tech:

                                  • I’ll be fighting with Grafana trying to solve this damn issue (to wit, kv pairs in dashboard variables are teh suck).
                                  • I will probably be poking at some outstanding issues in the 2022 Chicago Worldcon registration system.

                                  Non-Tech:

                                  • I hope I can find the mindspace to read a book
                                  • I might pick up either the new Spider-Man game or dive back into Control
                                  • I’ve got a couple of humidity sensors I want to install
                                  • Division head meeting for Chicon 8
                                  • Doomscrolling on Twitter
                                  1. 2

                                    Project Euler. Only one more until I’ve solved the first 50 problems. :)

                                    /edit: woohoo! Level 2 achieved! 🕺

                                    1. 2

                                      Continue to work on my email forwarding service https://hanami.run feature-wise and marketing

                                      • Enhance my SMTP server: I shipped the SMTP server lastweek and users love it but it has no rate limiting right now and vulnerable to timeing-attack. So going to add rate limit to defend against brute force and fix the timing issue to avoid side channel attack

                                      • Marketing: Probably continue to comment and answer questions on social media about email forwarding. Also setting up and start write a few blog post

                                      • Write a guest blog post

                                      1. 2

                                        ${HOME}: Dealing with subzero temperatures in Texas. That’ll be fun. I have no idea what I’m doing from a homeowner’s perspective (I’ve been in colder temperatures before, but it was always in an apartment…)

                                        ${WORK}: I’m…tired.

                                        ${PLAY}: Working on my custom regex engine. It’s so close!

                                        1. 2

                                          Subzero °C or °F?!

                                          1. 2

                                            F! It’s supposed to get down to 0 or possibly -1 this weekend. We’re going to be having nightly freezes until next Saturday, looks like. Crazy.

                                            1. 2

                                              Wow… that’s crazy. Be careful if you have to drive!

                                        2. 2

                                          Going to try and start the rewrite of bramble so that all of the execution steps are derivations. Bramble is a reimplementation of a lot of Nix’s build patterns and I originally had it designed so that there was a build step (very much like Nix) and then a run step (like any old bash script, but with a higher level language abstraction and dependency guarantees).

                                          The run step just feels like too strong of a departure from the clean reproducability of derivations and was dramatically complicated when I added multiple runtime environments. I think I can just make everything a derivation (like nix) and then just add a few more features to allow for the types of flexibility the run step was originally designed to support.

                                          1. 2

                                            Learning about Guix, working on LIPO32SUCTION, gaming.

                                            1. 2

                                              Lego and snow with the kids. I spent too much time on evenings this week making my nginx log analyzer.

                                              1. 2

                                                Making a proof of concept TUI with crossterm and tui-rs. I will also read some stuff (as always) and drink tea. Chill weekend.