1. 23

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!

  1. 10

    Interviewing for a new gig for when the paternity leave comes to an end. I got to monkey around with Clojure for a take home exercise, which is pretty cool for an old wannabe lisper, although the amount of code dedicated to testing basic propositions that eg ML’s typesystem would guarantee gave me pause.

    Otherwise, my wife is away for a few days so I’m Mr Momming it with both kiddos, an experience that never fails to hugely embiggen my respect for single parents who have to manage this chaos all the time.

    1. 7

      I’m working on a proposal for transforming the Ruby non-profit I’m leading into a general non-profit for all technical subjects.

      Mostly lawyering.

      1. 7

        I’m giving a talk on TLA+ in September, which means I plan to have my first draft done by the end of this week. That’ll give me enough time to do a trial run at a meetup or something, edit the talk, do another trial run, edit the talk again, and maybe do a final run for some friends before switching to polishing and rehearsal.

        …I like to plan ahead.

        1. 5

          I’m stepping back to the basics. Doing some 8080 assembly programming on an Altair 8800 clone. I had never really learned assembly. Going about as simple as possible. Switches for input, lights for output, no OS, no assembler. Just original documentation, coding on paper, converting to octal, and manually entering byte by byte.

          Starting with a PRNG using XORshift. Simple enough to not get bogged down in the algorithm, short enough to enter by hand, and by supporting a 16 bit seed and output it forces me to think a little about data management on the 8bit architecture.

          The clone has a real time clock so I think I’ll do a timer next allowing start time input via the switch positions and using the memory access lights as the output of the countdown.

          1. 5

            This weekend I finished the 11-week Coursera course on machine learning, taught by Andrew Ng. It was about 6 hours of work per week. Teaches the mathematical foundations of AI and is very rewarding.

            This week I’m going to be looking for another class to extend my knowledge in the space. The course was taught on Gnu Octave (just like Matlab but FOSS). I will likely apply using Python and a deep learning framework like Keras. Have been looking at fast.ai as a good next step.

            1. 5

              I got my first-ever(!!!) contribution to a Rust crate I started working on, enum-methods. So I’m going to be putting things together to work towards pushing a more stable version that people can actually start depending on and won’t break between minor revisions. Please help if you’re interested!

              Beyond that, I’m working on a toy stack-based programming language (also in Rust) with a friend or two because hey, programming languages are fun :)

              1. 4

                Using a raspberry pi to build a small wireless access point that routes all traffic through my Buffered VPN account and/or Tor. Overall it’s a fairly simple project but I’m using it as an excuse to get more familiar with iptables and openvpn. Upcoming projects at work will require a bit more networking knowledge so I figure this will be a good learning experience and perhaps a blog post.

                Learning more about Rust has been on the TODO list for awhile now. I should probably brush up a bit since there’s probably Rust Belt Rust coming up in October.

                1. 4

                  For monies, I’m learning about Solr, json-api, and API gateways. I probably will learn more about OAuth2 as well. This is part of what’s required of me as I move to my new team, with whom I’ll be working until the end of the summer, at which point I’ll be on pat leave for 2 months. After that, probably gonna be helping with higher-level stuff, but that’s really not this week or the next.

                  1. 4

                    Playing around with Nancy, which while a bit too magical for my tastes, (Like, a lot of dynamic in C# smells of someone wishing it was Ruby.) is probably the best experience I’ve had for C# webdev. ASP.NET Web Forms is a bit strange, but since that point it’s been seemingly non-stop churn especially in the MVC front. It doesn’t seem like a stable place to build an application, which is a shame.

                    1. 3

                      Unless you want to be hosting an ASP.NET application on non-Windows, ASP.NET MVC 6 is the way to go still, I would say. There’s too much churn on .NET Core to base anything critical on it.

                    2. 4

                      Making graphs with Python and Matplotlib. Specifically, I’m trying to visualize option prices using a 3D graph (x = strike price, y = potential future price, z = profit) which is animated to show how the profit surface changes over time as market expectations adjust.

                      1. 4

                        Work: finish getting ready for SIGGRAPH next week; refining the show-and-tells I’m involved in, planning a rough schedule of talks and events to attend, etc.

                        Fun: time permitting (not so likely this week), work a bit on my little 2d vector graphics engine. Next up is path stroking with line joins and caps.

                        1. 3

                          Breaking in a set of new running trainers, and migrating old VMs to a new hypervisor. (I keep putting off recreating them using puppet, have realised if I just lift & shift them, then I can recreate at my leisure without it costing me 2x hosting costs until I get around to that. Duh.)

                          1. 3

                            We’re improving swagger-elm for work. Adding generation of http tasks so that you don’t have to write any of the network code on the client any more!

                            1. 3

                              Building a small Rails app to demo + test TwoFactorAuth against Rails 4.2, 5.0, and 5.1. While a single file would be cute and convenient, it wouldn’t look obviously enough like a standard Rails app to be a good demo.

                              1. 3

                                For work I’m in the progress of breaking up a Java application into more manageable pieces - it’s written as C with Java syntax, so I’m slowly reworking it piece by piece to become easier to maintain, as it’s obviously ridden with a whole lot of globals and logic in button handlers.

                                For fun times, I’m working on a minimal FTP client in Java to help me teach a course in the autumn semester.

                                1. 2

                                  I offered to take over the abandoned project please.pet so I’ll be going through and closing down any bugs I can and such before the process of taking over maintenance. I ask that any one else help contribute code as it is a very sweet and cute project.

                                  I’m helping out Cuddli as they have launched their iOS app (after so much time!).

                                  On top of all of this, I’m moving many of my things to a different house and preparing for an interview.

                                  1. 2

                                    Properly researching, and writing new articles on often-misunderstood basic Docker concepts.

                                    Working on my real-world webdev tutorial series, about writing a Flask app, deploying it and doing other tasks besides webdev which are necessary to make a sideproject successful.

                                    Oh, and exchanging time for currency. Gotta keep that metabolism going.

                                    1. 2

                                      I started working on a web application a couple of months ago (having previously been in desktop UNIX and mobile apps for a career). I’ve got past the bit where I just wanted to rail (pun intended) against the crazytrain that is javascript development now, and am doing useful things. This week I’m integrating pact to provide contract tests between our microservices, in addition to writing the actual money-spinning logic of the application.

                                      On the side, I recently started a third article for my GNUstep developer website. I’m hoping I’ll get time to write a chunk of that, too.

                                      1. 1

                                        Oh cool! I’ve helped Beth out a bit with Pact - feel free to reach out if you’ve got any questions.

                                        1. 1

                                          Thanks! Will do, for now the main challenge was decomplecting the frontend enough to make the network request in a test; it was all mixed up in redux-saga.

                                      2. 2

                                        Split between the drudgery of setting up my new training company:

                                        • Searching the awful US trademark database and filing for trademarks (myself, for now)
                                        • Finding a lawyer/service to do my LLC creation (referrals welcome!)
                                        • Searching and buying domains (Hexonet has some really good pricing and their new UI is not bad, otherwise Namecheap is still my go-to domain registry)
                                        • Setting up dedicated email – ProtonMail seems really nice
                                        • Trying to figure out where I’ll host the web site, for now just using Nearlyfreespeech.net since I’ve already got an account and it’s trivial to set up new domains, not to mention it’s dirt-cheap.
                                        • Creating the basic home page (I really hate this part, getting things to look right still takes me forever).
                                        • Linking the above to Mailchimp, analytics, getting a Stripe account, etc.

                                        Whoa, ok, that was perhaps too much detail, but it’s really drudge-work, because I really want to get back to:

                                        • Creating an online video course that uses the principles of domain-driven design, “ports & adapters” (aka hexagonal) architecture, testing as a first-class activity (not necessarily TDD), modern Java (8+), and built on top of Spring. This is based on a class I teach to new college grads, and it’s cool to see how much of what seems to be “advanced” work they can understand and apply. I’ve got all the code and it’s been fun teaching and building it.
                                        • Working on a “teaser” course (of 3-4 hours) that I’ll probably put up on Udemy – I don’t really like their business model, but they’ve got a huge mindshare, so we’ll see.