-
Very recently, I came across a cool widget on another developer's blog (don't quite remember who's blog, since I was more excited about the widget and dove in there instead) that added support for comments on static sites by leveraging GitHub Discussions. Behold: giscus. It's a brilliant concept, especially for blogs hosted on GitHub Pages (especially in public repos): both the content and the comments can be stored in a single place.
-
Recently my work computer switched from a Windows box to a MacBook Pro, which reminded me of this feature in iTerm (I had been using this feature on Console2 on Windows): The Quake Terminal controlled by Alt + \`. In iTerm preferences: Under Keys, select Hotkey Press to \*Create a Dedicated Hotkey Window\...\` Set the Hotkey to Opt + \` Configure it to only "Animate showing and hiding" After that iTerm creates a Hotkey Window profile that is assigned to the iTerm pane that drops from top of the screen each time. To make this work well with multiple screens, select the Hotkey Window profile, and under the Window tab, pick "Screen with Cursor" for the Screen picker.
-
The seeming slow crawl collapse of Twitter is an unpleasant and unsightly process, but if there's any benefit to this shift in social media, it's the exodus to Mastodon and the much needed interested boost to ActivityPub and federated networks- and riding the currents off of this, the resurrection of the "Indie Web". Although I've gotten used to centralized social media and services, going to Mastodon and other federated services feels a lot like coming home. As someone who grew up in the brief splint of time before the widespread availability of broadband and wifi networks, limited access to the common internet was a reality that shaped much of my origins in the early 2000s. Despite that, I was drawn to the web, and was running my own set of local web servers (WAMP, specifically, Windows 2000 with Apache, MySQL, and PHP) on a wired router and between computers with patch cables (all offline). As a thirteen year old kid, without any discretionary income, I dived into the scant few books I could get at the local library, as well as taking advantage of open source where I could (throwback, SourceForge was big back then). Apache VirtualHosts combined with edits to the Windows hosts file go a long way to making no internet access feel like some interact access (even though it was all me). In short, I've always leaned towards the side of building the web rather than consuming it (which is one of the reasons why I've never really enjoyed using Wordpress or many of the other headless SaaS CMS services. If you're new to the distributed internet, welcome! If you're finally coming back, welcome home.
-
Disclaimer: I am not well educated in food and diet, I am a programmer, not a nutritionist. I recommend doing your own research before opting to use meal replacements. Over the last month, I've been supplementing my meals during my professional life with Huel, a meal replacement that includes a meal's worth of calories and nutrition packed in a easily consumable drink. My typical choice of meal replacement is a competing product, Soylent, but I came into contact with Huel from instagram advertisements, as well as my cousin having previously been a user of the product. Unlike Soylent, Huel has a gritty texture to it, but the flavor is a world's difference. Compared to Soylent Powder in its original flavor, the original flavor of Huel is quite appetizing, and without an "artificial" feel or aftertaste. When I had been consuming powdered Soylent on the regular, it was out of a desire to expedite my meals, rather than for flavor or nutrition, so Huel was a pleasant surprise. While Soylent will always hold a special place in my gut as my first exposure to meal replacements, I think Huel will be my powdered choice going forward. It'll probably be the product I recommend to others as well- while I still enjoy Soylent ready-to-drink bottles, they are admittedly, an acquired taste.
-
While I consider myself a frontend developer, and find the most joy and energy from working in JavaScript and the browser, my roles have traditionally been full stack, and I've always been in a position where I know just enough about the backend stack of the projects I work on to be dangerous and unblock myself. Last month, I rejoined the team at one my previous employers, but I've into a new (and admittedly, desirable) situation: The backend that I work with is in Python instead of C#.NET. I've dabbled in Python in the past for simple scripting and automation, but I haven't really taken a deep dive into building a non-trivial tool in Python yet, so it's a good time to take a dive into Python and get set up. I do nearly all my personal development on macOS, so the following will be written with that in mind. There are many ways to get Python installed and get a suitable environment established for development, but what I've chosen is pyenv and poetry. macOS ships with Python, but it's not a recent version, and it's managed by the system. To ease management of dependencies and updates, I'll be installing pyenv through Homebrew. Homebrew provides a package manage for macOS, similar to linux package managers like dpkg or RPM, commonly via as apt or DNF/yum respectively. Beyond running brew install pyenv, there's some set up to be followed in the pyenv repo. At this time, the latest release of pyenv is 2.2.5, which has 3.10.3 at the latest release of Python available, so install that and set it as the global python. Python dependency isolation is usually handled through virtualenvs or venvs, which will allow package installation to occur within that environment and not affect the base python install. Coming from the JavaScript ecosystem, where npm and yarn make dependency management and dependency isolation incredibly painless, I opt for using poetry, which provides a similar experience to frontend package management. Poetry will even create a virtualenv automatically and manage dependencies for the project in there, so it's often ready to use on a new project with minimal effort. The recommended method to install poetry is through its installer script. poetry installs to \~/.local/bin, which should already exist in $PATH on macOS. Once it's installed, create a new project directory, and initialize poetry in it. Follow the prompts to set up poetry for that folder. After that, dependencies can be added with poetry add, not disimilar to yarn. If a virtualenv doesn't exist at this point, it will be created when adding the package. After that, poetry run can be used to run scripts and executables in its environment. There we have it, Python running in a npm-like configuration on macOS.