What you're looking for with a Grafana dashboard affects its settings
Recently I wrote about how we chose our time intervals in dashboards , where the answer is that we mostlyuse $__interval because for our purposes this is the best option. But this raisesthe question of what is our purpose with our dashboards. Put anotherway, why do we not care about seeing brief spikes in our dashboards?
Broadly speaking, I think that dashboards can be there to look forsigns of obvious issues, to look for signs of subtle issues, or todiagnose problems in detail (when
Potential problem points for Chrome (or any browser) to support Linux
Suppose, not entirely hypothetically, that you're worried about thepossibility of browsers no longer supporting Linux (and Unix ingeneral). Since Chrome and Firefox are already cross-platform, asensible question is what might make supporting Linux (or Unix ingeneral) difficult in a cross-platform browser, especially one thatalready supports Android. From my somewhat ignorant perspective, Isee two general issues.
One big thing that a browser needs to do is interact with theplatform's 'graphics' system for
The Prometheus host agent can disturb Linux CPU frequency measurements
Recently I read CPU frequency scaling metrics from the nodeexporter ,which talks about how to look at the Prometheus metrics that the Prometheus host agent gathers and exposesto Prometheus. Naturally this got me to to look at the frequenciesthat my own little Prometheus setup on my home machine had gathered, which gave me a surprise.
Like a lot of desktops, my home machine is idle almost all of thetime, and I can see that reflected in a lot of the statistics thatthe Prometheus host agent gathers. But Prometheus
Important parts of Unix's history happened before readline support was common
Unix and things that run on Unix have been around for a long timenow. In particular, GNU Readline was first released in1989 (as was Bash ),which is long enough ago for it (or lookalikes) to become prettymuch pervasive, especially in Unix shells. Today it's easy to thinkof readline support as something that's always been there. But ofcourse this isn't the case. Unix in its modern form dates from V7 in 1979
Firefox and web browsers for Linux
The (web) news of the time interval is that Mozilla is laying offa significant number of people ,including people working on Firefox's web developer tools and MDN . Naturally thishas led to people worrying about the future of Firefox (well, morethan usual, since it's had declining web browser share for sometime). As a user of Firefox on Linux I have some extra worries,because Firefox is kind of special on Linux.
People on Windows, Mac OS, iOS, and Android
"It works on my laptop" is a blame game
There is an infamous dialog between developers and operations teams( eg )where the core of the exchange is the developer saying "it workson my laptop" and then the operations team saying "well, pack upyour laptop, it's going into production". Sometimes this is reframedas the developer saying "it works on my laptop, deploy it toproduction". One of many ways to understand this exchange is as agame of who is to blame for production issues.
When the developer says "well
Go will inline functions across packages (under the right circumstances)
Like many languages, or more exactly many compilers for manylanguages, Go will inline one function intoanother under the right circumstances. For more on this in general(and examples), see Dave Cheney's Inlining optimisations in Go .
In many languages, only functions within the same source code fileor compilation unit are candidates for inlining. Functions that arefurther away than that (and compiled separately), especially incompletely separate packages or libraries, are not available forinlining for various reasons. As I found out
Go 1.15's interface optimization for small integers is invisible to Go programs
When I wrote about how Go 1.15 improved converting small integervalues to interfaces , I said that Gopointing small integer interface values to its special static arrayof the first 256 integers was similar to what some dynamic languagesdo. For example, Python effectively interns a bunch of smallintegers. However, in one important respect what Go is doing isdifferent from what Python and other languages are doing. In Go,this optimization is invisible to normal, proper Go programs, whilethe equivalent in other
How Go 1.15 improved converting small integer values to interfaces
In Go, interface values are famously implemented as a pair of pointers (see Russ Cox's GoData Structures: Interfaces );a pointer to information about the type and a pointer to the valueitself. This generally means that the value must be dynamicallyallocated in the heap , which means that it will contribute to thework that Go's garbage collection does.
The Go 1.15 release notes mentionan intriguing improvement in the runtime section :
Converting a small integer value into an interface value no longer
People often have multiple social identities even in the physical realm
Somewhat recently, I read The Future of Online Identity isDecentralized ( via ),and it said one thing in passing that made me twitch. I'll quote ratherthan paraphrase:
Authenticity and anonymity aren't mutually exclusive and that isthe beauty of the internet. In the physical realm, you are (mostly)limited to a single social identity. In the digital space, there areno such restrictions. While you can't embody multiple persons in theoffline world, you can have several identities online