1. 17

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

Please be descriptive and don’t hesitate to champion your accomplishments or ask for help, advice or other guidance.

  1.  

  2. 11

    I want to use Vega-Lite from Rust, so I took the JSON schema and used QuickType to generate some Rust code. It ends up that this has a lot of issues, but it is a good start, so I’m now working on cleaning this up some. I also have generated code for Vega in a sibling repository. Any help on my vega-lite.rs repo or the vega.rs would be greatly appreciated.

    I’ve been playing with Zircon, the microkernel at the heart of Fuchsia some. I’ve been submitting a lot of typo fixes for comments and documentation as I browse through things. I’m thinking about picking up a Khadas VIM2 board to run it on actual hardware … perhaps after Christmas. (And by then, perhaps a Khadas Edge will be viable?)

    My daughter spent some time this last weekend with some Japanese families to play, and while I talked with some of the mothers, the idea of laser cut nori came up. This too will probably become a project for after Christmas though.

    1. 1

      I’d love to hear more about your adventures in Fuchsia! It’s something that fascinates me but I have zero confidence in my ability to make it build and run from git.

      1. 2

        A few things then:

        • I mainly build and run Zircon rather than full Fuchsia. I’m more interested in what can be built on a lightweight kernel at the moment.
        • I have looked at the Garnet layer some which adds more stuff but isn’t yet full Fuchsia.
        • Fuchsia requires Vulkan to do graphics, so that currently means no graphics under things like qemu and the like.
        • I’d have to buy a board like the Khadas VIM2 to get supported graphics hardware to play with that part of Fuchsia, which I haven’t done yet.

        But let it be said that Zircon (and previously Fuchsia when I built it) are the easiest OSes that I’ve run into to build from scratch on macOS. SeL4 is a pain (and has no real path towards hardware graphics support).

        I’m excited to keep playing … and figure that it’ll be something that I do over the next year.

    2. 11

      This week I’m preparing to launch Octobox on the GitHub Marketplace and start building a sustainable business around the project.

      1. 3

        Just wanted to say that - Octobox is fantastic!

        1. 3

          Very exciting! Good luck :)

          1. 1
          2. 8

            $work:

            • finishing a symbolic execution engine for a client’s custom programming language; need to add more primitives, and add my computation traces to an actual SMT.
            • assessment work
            • writing some templates for our findings, some sales engineering and client meetings
            • Talk on blockchain security

            !$work:

            • finally finishing pattern matching in carML
            • adding some more threat hunting items to wolf-lord
            1. 2

              How did your client end up with a custom programming language?

              1. 2

                believe it or not, it’s surprisingly common in the blockchain space, esp wrt validator languages for proof of authority, as well as for “novel” smart contract languages.

            2. 5

              Friday is my last day at my current job, so I’m tying up loose ends and getting all of my work transitioned to my coworkers. Fortunately I’ve been on the bug triage team for a couple months, and it’s pretty easy to hand off those cases.

              New job starts December 3rd, and I’m really excited about it. 100% remote, and I’ll be working in GIS, which is 100x more interesting than my current job.

              Outside of work I started working on a library for experimenting with variants of Conway’s Game of Life. I want to implement the toroidal variant I mentioned in Friday’s “what are you doing this weekend” thread.

              1. 5

                A curated reading list for programmers on the topics that lie at the intersection of tech, politics, ethics and society. I’m currently writing down what I consider mandatory readings to get up to speed with the current discourse but soon I will be done and I hope to crowd-source more content from the communities if the ball starts rolling.

                1. 5

                  Going to deploy the next iteration of my personal wiki (https://lobste.rs/s/ord0rg/does_anyone_else_keep_their_own_knowledge#c_cxecdn). I think everything is ready, but I have to generate migration scripts (I let Yesod do automatic migrations on my home machine, so I now have to reconstruct them somehow).

                  Once I get deployment done, I’ll work on one-step publication to my personal site, which is 100% static. That’ll help me do a lot more publishing soon: I have a backlog of things that are almost ready.

                  I’ve also been poking at my regex to bytecode compiler (https://lobste.rs/s/amaftk/what_are_you_working_on_this_week#c_tvpswu). There’s a lot of features a real library needs that I don’t have yet: {0,4} style repetition, shorthand character classes, the ability to handle non-ascii text…

                  1. 5

                    This week I’m hopefully wrapping up my series of blog posts on monitoring/alerting using Prometheus, Grafana, and Alertmanager on Kubernetes. I’ve got all the code deployed, I just need to write the final blog post in the series. I’ve learned a lot and had a lot of fun working on this series, but I’ll be glad when its done and I can move onto some other personal-k8s projects :)

                    Also, a question for the community that I’ll be researching a bit more this week :) Currently I’m running Ubuntu on my MacBook Air, but I’m thinking of investing in a laptop with hardware more built for running Linux (i.e. Thinkpad, System76, Dell XPS, etc.). Any recommendations for a laptop? Priorities are 1st class Linux support, lightweight, good battery life, and powerful enough to run a VM (although it doesn’t have to be super powerful… I have a desktop for when I need to do more heavyweight stuff). Thanks for any tips!!

                    1. 2

                      You likely already know this but choose a laptop with either Intel or AMD graphics chipsets. Much better choice of window environments and easier configuration under Linux.

                    2. 4

                      installing Kubuntu on 5 “throw away” laptops to be given out to some folks for whom a low end laptop will be amazing.

                      Also continuing to work through Lippman’s C++ Primer. I don’t know if I’m loving the order in which he’s presenting things. Feels like he’s still teaching “old world” C++ but I’m hoping he’ll cover RAII and other modern features later in the book.

                      If anyone has any recommendations on a good from scratch book on Modern C++ I’d love to hear them. Modern Effective C++ seems awesome but I needed more of a reminder of how the basics worked to start since it’s easily been 15+ years since I’ve used anything other than Python/Ruby or the like.

                      1. 2

                        I personally also tried to start with C++ Primer, but eventually went to “A Tour of C++” which was much better for starting out and covers modern C++.

                        1. 1

                          Thanks for the recommendation this seems MUCH more what I was looking for!

                      2. 4

                        I’ll probably continue to play with optimal compression of various formats.

                        After releasing the new version of BriefLZ (compression library) with an optimal compression level, I used that in an example of the same for LZ4 (see discussion over at Encode’s Forum if interested).

                        I made one for CRUSH and Snappy as well, but they are all dreadfully slow, so mostly of theoretical interest.

                        1. 4

                          I’m working on the promotion cases for two of my people, one of whom to take my current position, as I am to be promoted upwards, myself. We’re also rebuilding the airliner in flight, as it were, as a catastrophic miss in communication from the business side of the house to engineering has us working on our capacity testing for our busiest time of the year as the busiest time of the year has already commenced. Thankfully, my team is excellent, and we work well together, and we’re surviving, but hopefully my increased scope of responsibility will allow me to prevent these sorts of fuckups in the future.

                          Otherwise, I’ll be editing some practice recordings in Logic and trying to write some new parts. Old Man Band may be booking time in a recording studio next month and I’m not happy with the state of my contributions.

                          1. 3

                            This week we’re attempting to finish a web application for a local Real Estate company. After that we’re maneuvering into a modification of the Moodle application/rebuilding a wordpress theme.

                            Wordpress theming isn’t always fun, but it brings in the beans. And it definitely feels good to get all the plugins this client was using out.

                            1. 3

                              Working on data services for an app prototype using postgREST and react-admin via the excellent subzero postgrest starter kit. postgREST really is an amazing piece of software, and the starter kit not only cuts out a lot of setup boilerplate but also provides a lot of really useful structure, plugging in openresty so you can pre- and post-process API requests & responses. Having to do a bit of plumbing getting the postgREST adaptor working 100% with the latest react-admin version, but it’s well worth it - in about 3 days I’ve done what would have taken weeks not that long ago. Sure, within a decade or so I could have churned out a Rails or Django admin backend mostly automatically, but doing it this way means you have a super-flexible, rock-solid API to use in the actual app pretty much for free, and can then do most of the admin system declaratively using react-admin, which seems a lot more easily configurable than the straight-HTML admin tools. Pretty great.

                              1. 3

                                Continuing my work on my rust MT940 parser implementation using pest. For anyone wondering, I tested nom, combine and pest and so far, pest is by far the most usable out of all of those.

                                And yes, this is a spare time project. I parse bad banking formats in my spare time. What am I doing.

                                1. 3

                                  I’m trying to figure out how to get our developers (and anyone else who can write code) interested in Advent of Code. For the past couple of years I’ve attempted to get people enthusiastic about it but so far it’s only really been me and one other colleague who have participated, out of perhaps 200 possible. Competition isn’t really something anyone is interested in, which is fine, but it’s great fun and excellent for learning, IMHO. Any ideas appreciated!

                                  1. 1

                                    I’d be interested in this too. I haven’t been able to finish in time yet, but having a few more people doing it with me would be really motivating.

                                  2. 3

                                    I’m currently reading through The Rust Programming Language (2018 ed.). It’s a beautifully designed language. I’m excited to get to try it out once I finish the book. I’m a bit rusty with development as I haven’t used any languages in a few years. I want to get back into it.

                                    1. 3

                                      I got the itch to write some Haskell again, so I wrote a tiny webservice; the focus was all on the Haskell part but this week I might try to learn some front end stuff to make the UI a bit shinier.

                                      I’m also working through two Udacity courses that are getting me back to learning linear algebra and differential calculus, which I find fun and refreshing. It’s nice to have problems to apply maths to rather than learning them in isolation.

                                      1. 3

                                        Continuing to hack on the newly released JSON lib for Haskell: Waargonaut (https://github.com/qfpl/waargonaut). Have to clean up the error messages a bit, and add some extra sauce to the API. It’s coming together nicely, but I need more users to help me really streamline the API.

                                        Working through the Coursera course on Machine Learning. It is a spectacular course so far and I’m learning heaps. It’s all a bit of an uphill battle given my near total lack of mathematical ability. But hey, that’s what I’m there for. ^_^

                                        1. 3
                                          • Another contribution to an OSS project on behalf of work was accepted, but this time, a release is months away instead of days away. So, we’re scoping out the effort necessary to maintain an internal fork with a faster release cadence.
                                          • Abstractions conference planning is really ramping up - we got our first sponsor last week and should hear from a few more this week before commencing a big push to get on 2019 budgets.
                                          • I’m investigating build a CLI conference sponsorship contract generation tool because I’ve really come to dislike Google Docs for contract writing. I’d welcome any pointers to tools that exist that could facilitate this. I’ll probably bang out something with Ruby + ERB & LaTeX + Pandoc in an evening…
                                          1. 3

                                            $work:

                                            • reaping the joy of automating a bunch of infrastructure by bringing up a few new instances of our app in various geolocations for local use there. Super satisfying seeing the work we put in ahead of time pay off. (We knew a few months ago we’d absolutely have to do this, so it was just a case of when not if.)

                                            !$work:

                                            • Monthly pub quiz with family
                                            • Finally got the spare Microserver booting reliably from the SSD (… by making it boot from USB which then loads everything from the SSD. Three cheers for grub.) which means I need to invest some time into making everything run on the server now.
                                            • Flying to Madrid on Friday for a long weekend visit. First time visiting Spain 🇪🇸, really looking forward to it. (Not taking a laptop 🙃)
                                            1. 2

                                              I like this format, gonna steal it :)

                                              1. 2

                                                Hah, more than welcome to. Fairly sure I’m just regurgitating prior art from other people on these threads previously. 😁

                                            2. 3

                                              More zine work this week, this time both writing and recruiting. I also finished up my Hackers pager guide last week, but want to make an edit to include a PDF or two to make things easier for the reader to print out decals.

                                              A bit less technical, but I also want to get my remaining stereo equipment set up and vinyl added to my shelves. I probably have nearly 2000 records in the shelves already with 1000 to go. I only have the turntable, reciever, and cassette deck set up right now. Minimally I also want to connect up the minidisc and maybe a reel-to-reel if I can figure out which one of these giant bastards works.

                                              1. 2

                                                Damn, thats a wild vinyl collection! enjoy :)

                                                1. 1

                                                  Thanks! I’ve been collecting for about 12 years but haven’t bought very many in the last 4. It’s taken a long time to just get this many in the same room at one time.

                                                2. 1

                                                  Wow that’s impressive! Nothing beats the fat organic sound of clean vinyl on a good record player! Way too space intensive for my blood though, I’ve pretty much standardized on lossless CD rips :)

                                                  1. 1

                                                    Interestingly enough, I have quite a few albums that don’t seem to be on CD or anywhere else! Finally organizing everything really puts the quality into perspective. One bad scratch and it feels like the whole album is worthless. Luckily I still have some deduplication to do, but I’ve already found that none of the 3 copies of Rumors I have are playable.

                                                    1. 1

                                                      Oh I hear you! It’s striking how quickly music falls out of print and becomes otherwise unavailable. I’ve been ripping my entire media collection to lossless of late, and I had more than one acquaintance tell me to let go and just use Spotify et al.

                                                      Except that you don’t have to look very far at all to find whole genres of music that Spotify doesn’t provide. Heck there’s even a bunch of stuff from when I did college radio in the 90s that’s just about un-findable.

                                                3. 3
                                                  • Final edits to a podcast that should be released tomorrow (I think).
                                                  • Sprint #2 (of 4) for our big “migrate from magento 1 to magento 2” project
                                                  • Get over this head cold
                                                  • Edit my first draft for a pilot of a radio show I wrote and want to produce in the new year
                                                  1. 1

                                                    Which podcast? Always looking to add podcasts from fellow lobsters to my feed :)

                                                    1. 3

                                                      This one is called Mr. Rewatch. Its a recap show about Mr. Robot (and Mr. Robot related stuff).

                                                  2. 3

                                                    My computer completely died last week so I’m setting up my backup for the interim. It was already bad five years ago, so can’t do much besides answer emails, but it’ll tide me over until Black Friday.

                                                    Also need to update a talk on it. That will be challenging.

                                                    1. 3

                                                      Writing Web Portals to manage user identities for a very large organisation in the UK. Writing web stuff 100% not my ‘day job’ but needs to be done, and there’s no-one else to do it…

                                                      1. 2

                                                        I’ve recently been working on a fun little project, a stub server written in Elixir and Phoenix: https://github.com/yawaramin/stubbex

                                                        I think it’s pretty cool, but as I’ve been finding out talking to various people, stubbing is a very contentious topic and there’s a lot of disagreement whether it’s a good way to write reliable tests.

                                                        All that said, it’s been fun and educational for me … so I’ll keep hacking on it.

                                                        1. 2