I’ve really come to like using GitHub’s GraphQL API, but I have come across some aggravating things relating to their documentation. The documentation for rate limits talks about the node limit and their system of a “rate limit score”, but that isn’t all there is. In one of the applications I have been working on we are getting messages about their abuse rate limits. That wasn’t something we expected because it was never referenced in the GraphQL documentation, it is part of the v3 REST API documentation.
In a recent project I needed to collect the output from a process that was occurring on the server and output it to the user on the frontend. Ideally that would occur in nearly real time. The process I needed to collect output from is a third-party library that outputs everything to STDOUT or STDERR. The easiest way for me to accomplish that without shenanigans was to create a module to run the library and then fork the module as a child process and then pipe the output to a stream handler.
Simple and Easy Mentorship with a Mentoring Agreement At work, we have a concept called “Managing Consultant”. Everyone has one and they are basically your manager for everything other than money and discipline, they are there to help you with your career and help advise you. Basically a formal mentor. It’s something I’m interested in working towards and I think this type of agreement could be a helpful tool for establishing the right relationship and to keep things runnings smoothly.
Cloud Diagrams & Notes This site has a cool collection of graphics and cheat sheets for different aspects of Amazon AWS. A lot of them look good enough to get them printed and hung up in an office. Letting Go Throughout a career, if you shift into positions with any leadership aspects, there is a shift that happens. It’s not just your work that matters. It’s the work of everyone around you that also starts to matter more.
Simple Git Rebases I’m tooting my own horn here, but this is an article I wrote that I felt was especially helpful. Git rebases get a very bad wrap, but that is understandable with how destructive they can be if you don’t follow the rules. The important thing to remember is you can rebase your commits to your heart’s content if they have never been sent to your repository. In this article, I talk a bit about my use case, how I kept things straight, and all the steps I went through.
Introducing reCAPTCHA v3: the new way to stop bots Google has announced their latest version of reCAPTCHA. This time it is an API that computes a score and lets you decide what to do based on that. From the looks of things, this new API takes advantage of the data that Google accumulates from across the web and from all the pages you add the reCAPTCHA v3 code to. It can provide a much better user experience, but it is also likely tracking your visitors.
The Illustrated TLS Connection: Every Byte Explained Have you ever wanted to really understand TLS? I mean really understand it? TLS is used to secure connections on the web, so at least some understand can be very useful. This page has a detailed but easy to understand walkthrough of TLS 1.2. GitHub Actions GitHub announced Actions at GitHub Universe the other week. They seek to be an easy way to automate workflows on GitHub.
Learning to make appropriate use of git rebase can help you ensure your git commit log makes sense and is easy to follow. It is also important if you want to use commands like git bisect. I recently had to make 47 commits in order to debug an issue. I could only test my changes inside a Heroku private space due to IP whitelisting. So commit after commit was pushed to Heroku, but I never pushed any of those commits to GitHub.