1. 15

What are you doing this week? Feel free to share!

Keep in mind it’s OK to do nothing at all, too.


  2. 13


    It has been a while since I posted in one of these threads.

    Probably the biggest thing is that I’ve decided to take on helping to maintain the petgraph Rust crate. It hasn’t seen much maintenance in over a year, so I decided to step in and step up.

    I’ve also been working on improving the Z3 bindings that I maintain. This has resulted in me submitting a number of improvements upstream to the docs. It also resulted in a bug fix being done to Z3 to fix something that has been broken since the 4.7 releases. I want to get a new release of this out since a lot has changed since the last release.

    I started doing an update of the Rust harfbuzz bindings to the recent 2.6 release of Harfbuzz, but ran into a couple of things that I’ll need to sort out … and I hope to do that this week.

    I also hope to continue working on updating my LLDB bindings to incorporate the new functionality introduced in the last 2 releases.

    Outside of software, I’ll be ordering a 3D printer later this week probably and once that arrives, I’ll start building a syringe pump and other things to build an electrospinner.

    1. 11

      I’ve been working on an online editor for Django templates.


      1. 2

        This is very interesting. Thank you for sharing.

        1. 2

          Thank you, it’s one of the few projects I actually shipped for the public, hope it is useful

      2. 8

        I got an itch, so I started working on designing a Z80-based laptop. I have most of the mainboard figured out (I think), but still need to work out the keyboard (ideally some kind of mechanical keyboard) and graphics (thinking 7 or 8” 320x240 LCD). And I need to design the case. I’m toying with the idea of an ESP8266-based “modem” for it, too.

        I was debating between the 6502 and the Z80, but then I found this book and that decided that.

        I have a bunch of ideas that I really just don’t know if they’re even doable because I don’t really have much experience with designing this kind of hardware.

        I’ve also been learning a lot of math lately, and still tinkering around with some robots.

        1. 2

          Please post more about this project as it progresses. I found some appropriate context (and nostalgia) in this Z-80 advertisement from May 1976.

          1. 1

            I’m tagging relevant posts with z80 on my site; if that’s what you’re looking for. Otherwise, I’ll probably post weekly here as I progress, assuming I do.

          2. 2

            What are you doing for the screen interface? I’ve been working on a Z80 computer, and it seems hard to find a screen with reasonable resolution that the Z80 is fast enough to actually drive without some sort of coprocessor.

            1. 2

              I don’t know yet; I haven’t ruled out the idea of making a GPU of sorts out of an AVR. Some options include an SSD1306 (I2C) or KS018B based display; if I do 320x240 it’s going to have to be monochrome simply on account of the memory that’s required for something like that.

          3. 5

            I am doing the last bit of my interrail holiday, travelled to Pisa today and will finish up by going to Napoli wedensday and then finally returning home on Saturday.

            1. 4

              Not-work: I got a bunch done on my JVM-bytecode based string matching library, but I’m continually realizing that I’ve underestimated how much work there is to do (even for an 0.1 type release). I guess it’s a perpetual prototype. In the near future, I’m hoping to:

              • work on the parser to avoid recursion that could blow the stack, and do some bug-fixes.
              • try to give the library a reasonable API
              • work on improving its performance

              Previously: https://lobste.rs/s/rue2sb/what_are_you_working_on_this_week#c_tdqa8a

              1. 4

                I may be getting my own radio show, so I should be in the studio this week doing some testing before my first programme.

                Aside from that, constant fettling on my startups. One of them should be signing its first commercial deal this week, which means our first revenues. In the other one, it’s build, polish, investor demo, repeat.

                1. 1

                  Why multiple startups? I would be worried about setting myself up to fail by not focusing on one of the startups. I take it you’re not?

                  1. 2

                    Good question. In my case, there’s a lot of waiting for bureaucracy involved. All three of my businesses are B2B. If any of my businesses were selling to the consumer, I would definitely be spread too thin.

                2. 4

                  Personal: Just moved! Setting up a robust network for my personal office and media centre in the living room (the girlfriend is very happy about this).

                  Work: Writing out a pros-cons list of rewriting this entire backend service as a monolith instead of 45 microservices (AWS Lambda’s specifically) tied to API Gateway. This comes from the fact that Node.JS 6.10 is deprecated on AWS Lambda and we need to upgrade to implement new features. If anyone has done something like this and has some advice please feel free to share it with me! It’ll be greatly appreciated.

                  1. 1

                    Just curious, is the primary reason for moving away from Lambda the nodejs runtime version?

                    1. 1

                      The runtime is what made us realize we need to upgrade each Lambda. There are some other concerning factors like there is no way to deploy the entire stack on our local development machines to debug or develop new features. The runtime also plays a factor in fixing existing bugs as we aren’t clear on how to test and debug this one Lambda without updating its runtime. Along with all of this, of course, is the fact that my colleague and I are unfamiliar with the stack as it was two previous employees who left the company that built and designed it.

                      Its a single endpoint RESTful service that requires the maintenance of about 40 Lambdas behind API Gateway. It uses a ridiculous amount of duplicated code (I’ve heard of Layers, not sure how it actually works though), and these are big heavy functions (often many objects and methods implemented within each Lambda) that don’t seem to fit the use-case of the Lambda services.

                      So the question is, do we rebuild the platform on a new runtime with the same infrastructure and the same roadblocks, or do we rebuild the platform in a way that is comfortable to me and my colleague - as a monolithic application in an EC2 instance proxied into by the API Gateway.

                  2. 4

                    Still chugging through 100 Days of Code in Python

                    I’m on day 58. More than any particular piece of the course itself, embarking on this journey has been doing exactly what I wanted it to - My time to solve each problem posed is going steadily down, in part because I’m becoming more facile with the language and programming environment around it, but also because I’m actually building the problem solving muscle which was one of the goals of this whole endeavor.

                    Gonna have to find a way to keep the momentum up once I finish :)

                    1. 4

                      I finally got my NES emulator to play some games last week, so this week I’m cleaning that project up a bit (some illegal opcodes, better error reporting, docs, debugging flags, etc.) so that I can put it to the side to work on other things for a while until I’m ready to one day come back to write the APU.

                      1. 6

                        I was sick the last week, so I used my lazy time to read into the ActivityPub specification, and now I’m sketching a personal implementation of a micro-blog AP server. I want it to be different from the usual bunch, so my goals are:

                        • one user user per server
                        • easy to setup, with minimal dependencies (static binary, sqlite database, …)
                        • lightweight HTML interface generated, probably leveraging Go’s html/template, as to be usable even with non-standard browser engines
                        • CLI moderation tools
                        • Client-Server Activity Pub support, instead of Mastodon API
                        • Ability to generate static pages, and run in CGI/FCGI mode (not too sure about this one yet)
                        • Use the go-fed libraries

                        The goal is to easily let anyone with a server, easily set up a Fediverse account, no matter what OS or hardware they are using, as a means to push the whole network more from decentralised to distributed.

                        While this is low priority in the current stage, I was thinking about a name. One idea I liked was “Single User Federated Instance”, or just sufi, but then I remembered that that is a denomination in Islam, so I’m a bit hesitant about it…

                        1. 3

                          This sounds like an awesome project! So great to see the fediverse start to expand beyond Mastodon and Pieroma!

                          1. 4

                            Well I’m not the only one working on things like these. I’m also reading a lot of @tedu’s posts on Honk, and although I’m planning to differently, we share a lot of goals.

                          2. 1

                            The point of ActivityPub server-to-server traffic is not to have single user instances. This is meant to prevent fragmentation of the community, allow moderation and network effect and also it improves performance.

                            1. 1

                              I’ve never heard that before… While I get the performance part (thought I don’t think it’s that critical, especially if one of the main implementations is based on Ruby), I don’t think I quite get “fragmentation”, “moderation” and “network effect”.

                              What fragmentation is supposed to mean in a federated network is a bit confusing to me. If you mean user to server ratio, then it’s just a matter of definition. If you mean different implementation, that good since then the platform is forced to be more standards compliant, when you can’t just assume that most people use this or that particular implementation.

                              Moderation can be automated, different admins often communicated and share blocklists, and with more servers, the interest to make this more seamless would even rise, in the best case leading to better moderation. Then again, single user instances need less moderation, since you’re only trying to keep yourself safe, not all members of an instance.

                              The network effect also seems irrelevant when there’s an open and free protocol that is used to communicate, it becomes irrelevant how many people are on one particular instance, when they are part of the network, one way or another.

                              But maybe I’m just misunderstanding you – I want to clarify that I am interested in what you want to say, especially if it turns out that single user instances are a waste of time. It’s better to find out why one is wrong before it’s too late ^^

                          3. 3

                            We got our 200/200 Fibre installed today, so I would really like to get the ethernet run at least to my desk done.

                            Otherwise more work on Koalephant packages, and day to day client work.

                            1. 1

                              Hey, just curious what is Koaelephant?

                              1. 1

                                My company.

                            2. 3

                              I’m flying to California for that medical study I mentioned on Friday

                                1. 3

                                  After I solved a PostgreSQL SSL connection problem on Friday, there was one lingering problem that was on my mind all weekend - the connections would still fail if a CRL file was present. I knew I had this working with our previous certificate, so I opened up a new question for it on Server Fault and spent half the day digging into the problem until I hit bedrock: there is an open OpenSSL bug that is triggered when attempting to verify a certificate against a CRL in the case where a self-signed root certificate lacks a CRL Distribution Point. My old Comodo certificate did not trigger this bug, but the new Sectigo certificate does. Apparently the problem isn’t limited to the openssl command line, but can also be triggered via the library.

                                  As an aside, I’ve been finding that documenting my (sometimes days-long) work on these highly specific problems in appropriate Stack Exchange forums gives me exactly the framework I need to really do a detailed dive into the problem (and solution), and when I’m done, even if the question is low traffic, I’ve got the perfect reference for the next time I encounter it, and hopefully it helps a few others along the way. I don’t see a lot of questions like that on the site; most of them are short questions with short answers. Mine tend to be incredibly verbose, and I sometimes worry that I’m operating outside the normal boundaries of the site.

                                  My one plan for this evening: I’m going to bake some bread. Since April, I’ve been working on reproducing the exact recipe for Roman Meal 12 grain sandwich bread (Wonder Bread bought them in 2017 and discontinued the product). There are some recipes floating around on the internet, but none of them are even close to the original. I’ve got the 7 grain version nearly worked out after 5 iterations. Once I’ve got all versions of their bread worked out, I’m going public with the recipe (and probably about a 20 page rant). I don’t like it when the products I rely on suddenly disappear.

                                  Tomorrow, I’m going to finish up a data curation project for a life science paper that is slated to publish in October or November.

                                  For the rest of the week, I will be putting some development time into my new corpus management database.

                                  1. 3

                                    After a little more than four years it’s my last week working remotely at $CURRENT_JOB before a week off and starting a new remote job in September. I fear leaving will be bittersweet, as I’ve enjoyed the job and got on well with my colleagues: will probably spend most of the week in goodbye calls! :-)

                                    1. 1

                                      Hey, glad to hear that you enjoyed the work. I’m a bit curious about remote work and the atmosphere. I would like to look into remote opportunities as it would open up a few different industries/position that aren’t currently possible in my current lifestyle and location.

                                      What kind of experience did you have with working remotely? I’m mostly wondering about the social aspect.

                                      1. 3

                                        This was my first job working remotely full time, and it has been overwhelmingly positive. I’ve been here for over four years, and my next job is also fully remote. I don’t plan to ever work in an open plan office again :-)

                                        I have a few caveats. For the first 3.5 years (until early this year) I rented a private 10m2 office about a 20 minutes drive away from my home, so I actually had a commute. The office was cheap, but it was difficult to find parking and I ended up spending more money on petrol and lunch (I wasn’t diciplined enough to make packed lunches); so since January 2019 I’ve been working from a room in my house.

                                        In some ways working from home is not ideal. My wife home-educates our son, so I’m not normally alone in the house during work. This means I’m prone to distraction by family. My dream situation is a 5-10 minute walking commute to a private office: far enough that I’m not distracted by family and chores stuff, but close enough to walk home for lunch :-)

                                        The lack of a commute means that I’m not finding myself in town, and thus can’t so easily meet up with friends in town after work. However, time not spent commuting is time I can use to go for a run before work, or practice my guitar. Since most of my friends themselves have families and we rarely manage to meet up, this works out in my favour.

                                        Mind you, the above is only true for fully remote – where everyone (or close to it) is remote. I would personally not be interested in working at a job where only some people are remote, as you’re going to find yourself excluded from meetings and decision making. (“We couldn’t find a meeting room with remote facilities, soz.”, “We forgot to dial you in, sorry.”)

                                        In my experience 100% remote work is more inclusive for people with families. At my previous job a group of the techies would often go to the pub after work. (Multiple times a week.) While everyone were welcome, I usually went home to my family. I don’t begrudge people going out and enjoying the company of their colleagues, but it felt like some important plans or decisions formed at the pub, and I felt excluded from that.

                                        1. 1

                                          it felt like some important plans or decisions formed at the pub

                                          Absolutely. People who are in the same room end up chatting and making decisions, even if not on the clock. It’s a strength of local work that has yet to be replicated in a remote setting.

                                    2. 3

                                      Attempting to organize 10 years worth of references into a BibTeX database. It’s a project, that’s for sure.

                                      1. 3

                                        Finishing up an initial version of a nix/guix alternative that addresses my needs and preparing an announcement.

                                        I need to choose a name too and hope to find a way to get funding for it.

                                        1. 2

                                          Somewhat of a travelling week for me. Currently visiting a colleague, then visiting the office, then back home for the first time in a week.

                                          Having spent the weekend accidentally learning all about Websockets and getting ActionCable to do things from ruby and javascript, I suspect I’ll be polishing my prototype and learnings with it all a bit more. Pretty funky, and I’m glad you can now back ActionCable with pg not just Redis.

                                          1. 2

                                            At work I’m still developing the new terrain layer in our Android plugin. The APIs we’re trying to use aren’t very well documented, and we don’t have any example code, and our communication with the app developer isn’t great, so it’s slow going. I’m writing unit tests, and that’s helping make sure our side of the plugin works, but I’m still running into issues integrating into the app :-(

                                            Outside of work, I’d like to get some longer bike rides in. After finishing the CO trail two weeks ago I haven’t ridden much, except around town for errands and shopping and what not, so I’d like to get a few longer rides in after work this week. Next week I’m travelling for work, so I need to get them in while I can…

                                            I gave up (for now) on reading “The Meaning of Art” and moved on to “Parallel Logic Programming,” which, so far, is already quite a bit more interesting.