week 37, 2020

Using the brightness() CSS Filter to generically highlight Content

So it seems I have to pay better attention to CSS standards as I just realized that you can quite easily use CSS Filters to apply useful effects for generic control behaviors. Sure, I remember filter merely from the old, evil IE6 days to handle things like shadows and opacity, but it looks like the filter properties have migrated into the CSS mainstream with two now widely used and accepted filter operations that have quite a few useful filters available.

Source: Using the brightness() CSS Filter to generically highlight Contentw, an article by Rick Strahl.

Hoisting in JavaScript

In this post, we are going to discuss hoisting. We’ll be discussing what it is and why it’s important for you to know as a Javascript developer or programmer.

Source: Hoisting in JavaScript, an article by Ashutosh K Singh.

Transformers are Graph Neural Networks

While Graph Neural Networks are used in recommendation systems at Pinterest, Alibaba and Twitter, a more subtle success story is the Transformer architecture, which has taken the NLP world by storm. Through this post, I want to establish a link between Graph Neural Networks (GNNs) and Transformers. I'll talk about the intuitions behind model architectures in the NLP and GNN communities, make connections using equations and figures, and discuss how we can work together to drive future progress. Let's start by talking about the purpose of model architectures—representation learning.

Source: Transformers are Graph Neural Networks, an article by Chaitanya K. Joshi.

What could go wrong with apps on Big Sur and Apple Silicon?

With the arrival of macOS 11.0 Big Sur and Apple’s first Silicon Macs drawing ever closer, next week I’m going to ask whether you should consider upgrading to them, and how you should prepare for that. As a prelude, this article highlights some potential issues which you could experience with third-party products running under Big Sur, and on Apple Silicon Macs.

Source: What could go wrong with apps on Big Sur and Apple Silicon?, an article by Howard Oakley.

Regarding Semantic Versioning

So as not to bury the lede, I'll get to my point: Semantic Versioning is a meta-API, and maintainers who are cavalier about violating it can't be trusted to created stable contracts. I've lost patience for breaking changes making their way to my code bases without the maintainers incrementing the major version of their projects, especially in language ecosystems where Semantic Versioning is expected, and in such cases I'm going to begin exploring alternative options so I can ban such libraries from my projects---personal and professional---altogether.

Source: Regarding Semantic Versioning, an article by Daniel Moch.

The Within Go Repo Layout

Go repository layout is a very different thing compared to other languages. There's a lot of conflicting opinions and little firm guidance to help steer people along a path to more maintainable code. This is a collection of guidelines that help to facilitate understandable and idiomatic Go.

Source: The Within Go Repo Layout, an article by Christine Dodrill.

Go Modules have a v2+ Problem

Go has a problem. Go modules place a strange naming requirement on modules version 2 or greater. Module names on modules v2+ must end in the major version ala …/v2, and communication of this rule has been weak. It's non-obvious, and the community at large does not understand it.

I have seen many very large projects including Google owned projects get it wrong.

I brought the issue up at my local Go meetup, and no one had ever heard about the rule. They were very skeptical the rule existed at all.

Source: Go Modules have a v2+ Problem, an article by Jesse Donat.

Letsencrypt, the Good, The bad and the Ugly

Letsencrypt is a pretty neat concept: free secure certificates for web servers, in order to increase the adoption of HTTPS across the web. The basic idea is that certificates should be free, that the barrier to install them should be as low as possible and that updating certificates should be automated. It protects this site and many 100’s of millions besides. The advantages are that in-flight data can no longer be easily snooped and that injection of data into pages is made either much harder or even impossible. From a security point of view it is a huge step forward.

Source: Letsencrypt, the Good, The bad and the Ugly, an article by Jacques Mattheij.

Introduction to modern CMake for beginners

CMake is a collection of open-source and cross-platform tools used to build and distribute software. In recent years it has become a de-facto standard for C and C++ applications, so the time has come for a lightweight introductory article on the subject. In the following paragraphs we will understand what CMake is exactly, its underlying philosophy and how to use it to build a demo application from scratch. Mind you, this won't be the definitive CMake bible. Rather, just a practical, ongoing introduction to the tool for humble enthusiasts like me.

Source: Introduction to modern CMake for beginners.

Introduction to runc

runc is a lightweight portable container runtime parts of which were internally used by Docker and were packaged as a single binary and released as an open source project under the the Open Containers Initiative (OCI) as a way of giving back to the community. Explained simply, runc is a lightweight tool written in Go which helps manage a container’s lifecycle i.e creating, running, killing and deleting a container. You’ll go through each of these steps in this post and see how runc differs from Docker when it comes to running containers.

Source: Introduction to runc, an article by Danish Prakash.

12 HTML Tags You Don't Know

HTML (Hyper Text Markup Language) is used to design web pages using a combination of Hypertext and Markup language.

In this post, we're going to take a look at some cool stuff that can be done using HTML. Let's look at some of the html tags, you might not be knowing even existed. ould be making use of today.

Let's get started 💪

Source: 12 HTML Tags You Don't Know, an article by Jatin Rao.

Quare FreeBSD?

I really wanted to make this article short … but I failed miserably. At least I tried to organize it well so one may get back to it after ‘some’ reading because its not a short lecture. I wanted to title it Why FreeBSD? but when you type that into your favorite search engine there are so many similar articles. I wanted it to have distinguished and unique name so I used Latin word for ‘why‘ which is ‘quare‘.

Source: Quare FreeBSD?.