1. 13

This is the weekly thread to discuss what you have done recently and are working on this week.

Be descriptive, and don’t hesitate to ask for help!

See also last week’s new What did you finish this week thread!

Submitted under Culture as well as Ask because only submitting tagged Ask was failing validation this time round.


  2. 5

    Hello again!

    Hope that you’ve all had a good week since last week.

    I’m working on a couple of different things in typical programming land …

    As some of you know, I have an interest in photographing insects, lizards and other creatures, which I post a lot on Instagram. This weekend, I got a great capture of a jewel bug and had a small photo shoot with it. Also got a praying mantis last week that was wearing a hat made of sticky seeds. I also observed and photographed a wild bee nest and learned about blue-banded bees (which perform buzz pollination).

    Well, along that line of thought, I’ve taken an OCR of a book from 1939 about lepidoptera (butterflies, moths) that is in the public domain and am cleaning up the output and converting it into ReStructuredText (for now). I’m hoping to make a lot of progress on that this week. This will probably lead to a blog post or two about some interesting issues that arise in digitizing this sort of material and presenting it to readers.

    Have a great week!

    1. 4

      I’m working on a refresh of my csv library, which I initially wrote quite some time ago, and is therefore using the old rustc-serialize serialization infrastructure. The key motivation for the refresh is to use serde.

      As an initial first step, I decided to make a new more fundamental library called csv-core, which doesn’t use Rust’s standard library (and also doesn’t do any allocation). Which means you can parse CSV entirely on the stack, which is kind of cool.

      The more interesting bit is that I translated the finite state machine in the existing csv library from an NFA to a DFA, which is compiled in exactly 364 bytes on the stack. This gets a nice performance boost for the typical reasons, and also because it reduces any overhead associated with disabled CSV parser options. (The size of the DFA could be further reduced, but I’m not quite sure how to do it without negatively impacting parse performance.)

      My initial bit of code is here: https://github.com/BurntSushi/rust-csv/blob/rewrite/src/reader.rs

      1. 3

        Spring has apparently sprung in the middle of the UK, so attempting to make the most of it before the April showers arrive:- fettling the convertible; getting out on the bike; and starting training for the town 10km run in May.

        Picked up a new camera at the weekend (Olympus OM-D E-M10 II), so no doubt getting outside to play with that and learn the menus is on the cards. Need to tidy up my home server a little too, considering running Privoxy for the kids devices to use, so I can filter ads & sites they can access. Feels a little easier to manage than applying a white or blacklist on every device they have.

        1. 1

          Need to tidy up my home server a little too, considering running Privoxy for the kids devices to use, so I can filter ads & sites they can access.

          Depending on what you’d like to filter, DansGuardian or the fork E2guardian may give you more control than Privoxy on its own.

          1. 1

            Have you considered DNS filtering like with OpenDNS ?

            1. 1

              I’d forgotten they offered that. I prefer not to be dependent on one set of upstream DNS servers, and run an instance of dnsmasq on the LAN as a proxy using it’s first-to-respond-wins mode with multiple upstream providers. Means pinning to one provider for their features locks us to those which feels like a step backwards.

          2. 2

            A technology “bake-off” selecting which front-end stack we’ll be using going forward.

            1. 2

              I’m probably going to help with a Go note-taking open-source project written by one of the Lobste.rs members, implementing a few features on top. I hope I can use it as a hassle-free engineering log.

              I’m also going to finish up my communication book, I’ll skim through it again to take important notes and then lend it to someone else.

              For monies, I’m going to be learning about our stack in more details, get my bearings, contribute more stuff to the code.

              Also, in order to spend monies, I’m gonna try and hunt for a Nintendo Switch + the new Zelda game.

              1. 2

                Fixing a few bugs with a rewrite of a section of my new job’s in house app, and finishing up the last part of that rewrite (generating csv in php). Also setting up the groundwork to be able to slowly transform said php app from a very procedural architecture to a mvc based style.

                My goal is to write any new sections in MVC and any major rewrites in MVC as well, since the current procedural code works, but is a mess to refactor.

                I’m also gearing for my level 3 ski instructor exam (out of 4 levels) next week. I still have to do one more two day course and I’ll have the prereqs for the exams. Though this is dependent on if my shoulder heals in time, I unfortunately pulled my tendons falling in a cliff/run last weekend.

                1. 1

                  I’m trying to work on more interesting stuff during my free time. But also something beneficial, that I myself would use.

                  Since I’m a fan of statistics and various metrics AND trying new stuff (Go this time), I’ve started working on this server status service - https://github.com/andriussev/server-seer. The basic functionality is.. 1) Define commands you want the information from (numbers); 2) Run the application to gather the data. Everything is saved onto an SQLite database.

                  Trying to make it as simple and as readable as I can. I’m currently working on making a simple local viewer of that data so the data could be actually used somewhere.

                  At some point, when I’m done with making the server-seer stable, I plan on making a small SaaS to show everything on there (with alerts and whatnot).

                  So I have things to do, which is good for the mind!

                  1. 1

                    Implementing a QBE back end for Myrddin.

                    1. 1

                      Going to prototype some GUI libraries to use for Firestr including electron and QtQuick. My goal is to build a phone UI. I haven’t touched firestr in a while (it just works 24/7 for me) and would like to get back into it and make it more exciting.