1. 21

New week! And only two left before it is Christmas and the world goes into holiday frenzy again.

Time to refresh your to-do list. What are working on this week?

Feel free to share or talk about the thing you’re going to work on this week and wrap it up fast.

  1. 15

    I’ve got my first paid contract! It’s a simple static website, but it has to be billingual, so after a bit of research I opted to use Hakyll as a way to cut out most of the repetive work. Here is the repo: https://github.com/Superpat/esn-website

    I also have a lot to do on the school front, since we’ve just received our final project assignement, a php app, an asp.net ap and an android app. Only two weeks left till my degree is over!

    1. 3

      Congratulations! If you (or other lobsters) have questions about contracting as a technical person feel free to message me. It’s what I’ve done for about half of my career and I’m happy to give my perspective.

      1. 1


        1. 2

          Thanks! I’ve been having a lot of fun with Hakyll thanks to it, who new web developement could be hassle free?

      2. 13

        Finished family functions, starting honeymoon. Wrapping up some longer-term life planning.

        1. [Comment removed by author]

          1. 9

            Because I am on vacation, and farting about online is part of how I relax.

            1. 3

              I don’t know if your wife is anything like mine, but if so, she’ll be much happier if you find ways to relax that are away from screens. Ideally, ways that involve her.

        2. 7

          Last week was very productive! We’ve got IPFS integrated into Peergos and replacing our DHT, data storage and NAT traversal. We also got public links to a folder working, which grant anyone with the link read access to the subtree of the folder). We also integrated our content addressed b-tree layer on top of IPFS. Exciting times!

          This week I’m mainly preparing for my belated honeymoon and Christmas trip home to Aus.

          1. 5

            Travelling to Gmund, Germany, for our bi-monthly company get-together. (It’s a small company, and the entire tech team work remotely.) Last week I installed this checklocalmail Nagios plugin and became surprisingly busy auditing mailboxes on our servers and filing issues / fixing scripts to be more quiet. Some servers had thousands of mails full of noise from scripts lacking in --quiet flags. Applying fixes for the issues found there will no doubt continue this week.

            On the home front I returned from [ClojureX][] to put on a party for my son who turned 4. The look on his face from blowing out the candles on the cake and hearing his friends sing happy birthday made everything right with the world for me. That everyone liked the cake (or, at least, the icing of the cake) I baked didn’t hurt either.

            1. 5

              I’m still working on devising a good user interface to version control software, with an eye towards answering the question “what the hell happened here?” I’d like a user to be able to focus on one or a few methods in a file, and step back and forward through time, seeing only changes relevant to those methods.

              Progress on Saturday was good, but then I found adventofcode.com, and played with that instead.

              1. 4

                Bugfixes on PostgREST, an open source server that turns any PostgreSQL database into a RESTful API.

                1. 4

                  Outside work, I’m working in a project called Pelikan (@pelikan_cache) that will soon (no idea when) be open sourced. The project is a cache server in C.

                  I’m adding unit tests, and in the process finding inconsistencies, duplicated code, bugs, and room for small improvements, and rising those to the authors or fixing them myself.

                  1. 4

                    Having just picked up, cleaned and successfully reassembled an espresso machine for home, I shall no doubt spend most of this week experimenting with different grinds & methods to see if I can notice a difference when changing variables. (So glad I bought a new socket set recently - ratchet spanners really are the dogs bollocks it turns out.)

                    Attempted to port my blog to Middleman to use it in anger, only to run into an issue trying to output the same source file as two templates. (You can view any of my blog posts as raw markdown by adding .text to the URL, e.g. http://caiustheory.com/soundcloud-rss-feeds.text). Haven’t yet solved that, but also noticed Nanoc (current toolchain) has a major upgrade out, so might try using that first as I know it does what I want.

                    1. 3

                      That scale buildup is absolutely disgusting!

                      A few tips of things I wish I knew when I started:

                      • Fresh beans are everything!
                      • Time your shots. Aim for at least 20s shots
                      • Weigh your shots. 1:2 ratio of bean to liquid is what I like, but you can experiment
                      • Tamp pressure is important
                      • Descaling is not optional
                      • Try filtered water, esp. if you have very hard water
                      1. 2

                        Yeah, totally wasn’t expecting it to be in that condition. According to the person I bought it from it was her ex partner that bought it and she put it in storage when he left a year or so ago. I’m betting it got taken off the worktop with water still in the boiler & placed in storage. On the plus side, I understand how it works & am pretty confident in deep cleaning it now :-D

                        Cheers for the tips, I’m hoping to get away without having to filter water as it’s not too hard round here. Kettle only needs descaling a couple of times a year, will do the machine more often as a preventative measure.

                    2. 4

                      I’m looking at updating the set of technologies we use for our web/mobile apps. I’ve been using CoffeeScript for years but now it’s becoming an extra hurdle when combined with some new stuff I’m interested in (React/JSX and Flow), so I’m considering ES6 instead. It’s nowhere near as nice though :(

                      Other than that, I’m in India for a few weeks - a tough place to get any work done!

                      1. 4

                        Work: Building a contract management program.

                        Home: Advent of code

                        1. 2

                          I’m doing the Advent of Code thing, too, as a way to learn OCaml. My deeply non-idiomatic solutions.

                          1. 1

                            If you think you’re solutions are bad, check out mine :P

                        2. 3


                          My contract with Samsung is coming to a close, so I am finishing up my current project and cleaning up the previous ones, so that the work I did won’t be lost when I leave.


                          I’m looking for a new gig for the new year. Have a couple of irons in the proverbial fire, but because of non-work related complications, I’m taking it a bit slow. Normally, we’d be off somewhere hot for the Christmas break, but our kiddo can’t travel to Hawai'i yet, so we’re going to have a Canadian Christmas. I’ll be wasting my time doing puzzles in OCaml and getting my Hackintosh back up and running – Windows 10 is pretty nice, but it’s not a daily driver for me.

                          1. 3

                            I’m working on trying to read, understand, and write and run the clojure code on Yoav Rubin’s An Archaeology-Inspired Database which is basically an in-memory datomic-like database from scratch. I’m finding it super educational and interesting to both see at a very high level how something like this is put together and it’s also the most complex clojure stuff I’ve ever tried to write.

                            Just got to the first few macros last night and that was a bit rough. I’m coming from a Java/Python background at my job and it’s tough to really wrap my mind around the fact that the forms passed to macros don’t have a “type”…they’re just lists of symbols that are manipulated into other lists of symbols that eventually become things to be evaluated.

                            (Also would like to say that I really love the articles from the “500 Lines or Less” series so far. I find a lot of tutorials for languages or technologies out there to be a bit boring and as a non-beginner I like how this series dives into interesting problems and solutions very quickly.)

                            1. 2

                              Planning a talk tentatively called “Production Outages Caused By Javascript”, which does exactly what it says on the tin. Obviously many factors contribute to an outage but I think there are some norms/patterns in the JS community which contributed to outages more than another language might have.

                              If you’re interested, would love to give a draft, let me know!

                              1. 2

                                I’m working on the testing chapter for ng-book2. Taking a little longer than I expected.

                                1. 2

                                  Trying to pull a social startup’s managerial and operational practices up otherwise it’s going to crash and burn. Messing with nginx to finally figure out how to run lots of little web services on same box happily together. Messing with semantic finger printing from http://www.cortical.io/ - thinking about writing a slack bot that people can interact with where they give the bot textual descriptions of ideas and it tells them how similar that is to ideas that people have told it before. Fighting some really shitty anxiety that just popped up over past few days.

                                  EDIT: Oh, and also playing with my own lobste.rs install over at http://aesi.news:3000 - aggregating news on alternative economy and social innovation.

                                  1. 2

                                    I will be adding ePaxos to my simple alerting tool so that I can do multi-location testing (and also fixing golint errors)


                                    1. 2


                                      This week I have my lunch and learn, I decided to back off of the “choose your own adventure” type thing I was planning because I intend to go in depth with my subject matter, and I figured that I probably should not stray too far from a straight line. Don’t wanna confuse my audience!


                                      I laid my hands on a special domain name (first letter of first name, full last name, dotcom). I will give you the full domain once I have a minimal bit of info on there, but it’s the first part of my nefarious plan to sell my technological expertise for a fee. Friend of mine gave me a first mandate, building some regexes to extract stuff out of other stuff for his project; the end-goal is better control of my schedule, working on stuff that interests me more, and I also think it can be quite a lucrative business, given my expertise. I plan to ramp up the clients and contracts, and ramp down the 9 to 5 as to keep my wallet relatively filled while my free time remains relatively stable.

                                      Anyone doing that out here? Would you mind giving me tips & tricks? for more context, I’m in Montreal, QC, Canada.


                                      Vacay in ten (10) business days. I then only start again upon the new year. Can’t wait. Friend of mine lent me the second edition of Advanced Unix Programming and I intend to devour it in my vacations.

                                      1. 2

                                        Finalizing slides for a conference talk, preparing for my first trans-oceanic trip (to present said conference talk).

                                        1. 2

                                          Been working on implementing a couple different kinds of multi-producer, multi-consumer queues for rust. https://github.com/rossdylan/rust-scottqueue

                                          1. 2
                                            • Working with the DevOps team to set up a Continuous Delivery pipeline
                                            • Starting to integrate our new internal CSS framework into products
                                            • Playing around with the new TypeScript release
                                            • Writing more of Prose for Programmers
                                            • Writing more of my steampunk novel
                                            1. 2

                                              I started working on a system monitoring tool like Conky but configurable in Scheme. I got tired of the crappy DSLs those programs use and I’m convinced a Scheme “DSL” is at the same time more succinct and more powerful.

                                              I’m planning to support all major X status bar programs (i3, dzen2, xmobar) but I’m starting with i3. The nice thing about Lisp is that I can just embed a REPL inside the process and edit the program on the fly from my editor, which is fun.

                                              1. 2

                                                Outside of work, I kept working on the spirograph animations I mentioned last week. It now reads an MP3 file, calculates a bunch of FFTs, and uses the data to drive the animation. I guess it’s not much different than the cheesy visualization animations that come with a lot of audio players, except this produces MPEG videos instead of running in real time.

                                                The results are neat to watch, but each song still requires a bit of tweaking to maximize the syncing effect between the music and animation.

                                                Here’s a sample animation, and here’s the source code.

                                                At work I’ve been fixing regressions caused by the big refactor I was working on.

                                                1. 1

                                                  I’ve been implementing an AI for a varient of Kalah with seven houses for a group project at university.It’s pretty fun because the game tree is pretty massive, far too big to compute and fit in memory. We’re going to be running our AI against ones from other teams in a competition in a few weeks :)

                                                  I’ve also been porting my Brill Tagger to run on the GPU, which is fun as well :)

                                                  Finally, I’m sorting out a repeat internship at Google this Summer which should be fun too! So much fun!

                                                  1. 1

                                                    At $dayjob I’m modeling monoid aggregation inside our home-rolled batch/realtime graph compute framework. Sounds fun, but it’s a lot of edgecasing and fighting Java types so far. I’m not sure if the light at the end of the tunnel is a reflection yet or not.

                                                    At home I’m trying to do Advent of Code in Haskell in between unpacking boxes and selling our old house. I’ve thus far been unsuccessful at finding time.

                                                    1. 1

                                                      Finished project presentations today. Got to submit a couple of final reports, take a final exam, and then I’m home free!

                                                      Working on proofing a paper that we’re about to submit to a journal. I got tossed on there as 3rd author, which is exciting ^.^

                                                      1. 1

                                                        I updated my C++ web todo list project muda to support read only views of a todo list. This week I will add UI to the settings list to allow your list to be shareable publicly.