YASnippet in Eshell

Álvaro Ramírez has a great, quick tip for Eshell users. Actually, it’s a good tip for any shell you’re using in Emacs. Ramírez starts by revisiting level 4 from Vivek Haldar’s classic post on the levels of Emacs proficiency. I wrote about my own experience with his post here.

Level 4 is about discovering the shell within Emacs. In Ramírez’s case that shell is Eshell but he had trouble remembering the syntax for some of the commands that he used infrequently such as for. Then he remembered that Eshell is just another Emacs buffer so he could use YASnippets to complete the commands for him. Thus for the for he simply typed for and Tab to get a for template that he could fill in by tabbing through the fields.

Ramírez has a link to a YASnippet tutorial if you aren’t already familiar with writing the templates. As I said, the same idea would work with other shells because they, too, are just Emacs buffers. It’s a small thing but it can eliminate one piece of annoying friction in your workflow.

Posted in General | Tagged | Leave a comment

Universities Continue Their Slow Motion Suicide

Universities seem intent on forsaking their traditional values with the expected results. Enrollments are down significantly and an increasing number of parents are performing cost/benefit analyses that don’t bode well for an improvement of those enrollment figures. One would think, therefore, that universities would avoid associating themselves with sketchy enterprises that are universally reviled among right thinking people of every political persuasion.

But no. A consortium of topnotch universities has come up with the perfect plan to deal with declining revenues: they’ve decided to become patent trolls. They’re going to pool their (mostly) low quality patents and seek licensing fees from businesses that they believe might be infringing.

The majority of these universities (there’s a list at the link) are public institutions and all of them are receiving grants that fund their research from pubic monies. One would think, therefore, that the results of their research would belong to the public and be available to all to use. But not according to the universities that want us to pay for the research and then pay again to use it.

When the history of the university system’s failure is written, this sorry chapter will certainly be featured. Rather than focusing on their traditional roles of education and expanding knowledge, they decided to exploit those who are trying to earn a living and providing employment to others. This won’t stop them of course. They’ll continue on their self destructive path until an annoyed pubic has laws passed putting their research results in the public domain. When that happens, their wails of anguish and outrage will be ignored by the public they were so happy to exploit.

Posted in General | Tagged | Leave a comment

Red Meat Friday: Emacs or VS Code

For those of you wondering if you should adopt Emacs or VS Code, here’s your answer. You’re welcome.

Posted in General | Tagged , | Leave a comment

Adtech and FLoC

It won’t come as a surprise to anyone with the slightest bit of skepticism or, indeed, two brain cells to rub together that Google’s replacement for cookies, FLoC, is a privacy nightmare. Google, of course, is touting the system as a privacy respecting alternative to third party cookies but privacy experts are warning that they have the potential to be a worse privacy problem than cookies.

It didn’t take long for proof of these assertions to emerge. According this Digiday article, adtech firms are already testing ways of linking of FLoC indentifiers to personal data they already hold. If you’re surprised, you shouldn’t be. This is what adtech does: they’ll exploit any opening in their insatiable quest for data about us. There’s no piece of information they consider too small to exploit. Their goal is to build a complete profile of every person using the Internet.

It won’t—believe me—end with using that information to target ads at you. The iron law of data acquisition guarantees that it will be abused. That will probably start with law enforcement demanding access but sooner or later people like divorce lawyers will also want to get at it. Everything about you will be available for anyone who can convince a court that they have a need for it.

If you’re interested in how FLoC can be exploited, here’s a useful privacy analysis of FLoC that describes how it can be exploited to link the FLoC code back to individuals. Be sure to give it a read before you accept Google’s assurances about FLoC respecting your privacy. In the meantime, Amazon is reportedly blocking FLoC on most of their sites. That’s for competitive advantage, of course, but is nevertheless good to see.

Posted in General | Tagged | Leave a comment

Configuring Emacs as a Go IDE

Bhavin Gandhi has a post that may be useful to those who want to use Emacs for Go programming. It’s easy to get things like syntax highlighting but for the full IDE experience you need the Go LSP server. Gandhi’s post, How to setup Emacs LSP Mode for Go, explains how to set Emacs up as an IDE for Go.

It is not, of course, all that difficult but as usual with such things it can be fiddly. Gandhi’s post is a nice go by to get up and running is short order. Once you have things working, you can address optimizing your configuration to suit your preferred workflow.

Posted in General | Tagged | Leave a comment

Working From Home and Bosses

Ed Zitron has a long Substack essay on why bosses hate remote work. The article, The Work-From-Home Future Is Destroying Bosses’ Brains, posits that it’s all about control but probably not for the reasons you’d expect. The proximate fear is that without being watched, employees may work less than the 8 hours they’re being paid for or even work on side gigs.

Of course, ROWE is an obviously solution to that so perhaps there’s something else going on. Zitron’s essay is an extended rant on what that something else is. The crux of his argument is that middle management is essentially a useless position conceived as a way of compensating longtime employees without actually paying them more. Rather, the compensation is being able to boss people around and exercise pseudo-ownership of their souls. Meanwhile, their actual productive work is negligible consisting mostly of holding time wasting meetings. The problem with remote work is that it makes all this obvious.

Most of you will probably reject his arguments as too outré but recognize that they hold a kernel of truth: managerial dislike of remote work is founded on a fear of loss of control and perhaps even a fear for their jobs.

On the other side of the argument, a recent study from the University of Chicago that compares worker productivity before and after WFH found that productivity remained about the same but that workers spent more time working. On the one hand that can be taken as evidence that the fear of workers goofing off is ill founded but there’s still the worry about loss of control. It will be interesting to see how things shake out.

Posted in General | Tagged | Leave a comment

More on the Why of Emacs

Jeremy Friesen has a bit more to say on why he uses Emacs. Last time we stopped by his blog, he explained how he molds Emacs to enhance his blogging workflow. This time he’s answering a question on the Emacs/reddit as to whether there’s any reason to prefer Emacs to a “modern looking” IDE such as VS Code. I generally stop reading when I see terms like “modern looking” but Friesen is more patient than I and posted a thoughtful response that explained why he thought there was.

Friesen’s reasons boil down to synergy. He says he uses Emacs for 3 main purposes:

  • Coding
  • Blogging
  • Note Taking

and observes that when he implements something—a new function or key binding, say—to improve one area, he automatically gets gains in the other areas as well.

He expands on his reply a bit in his blog post. Using Emacs means fewer context switches and the opportunity to master Emacs. He’s found that the lessons he’s learned extend beyond Emacs. He sums it up by saying that Emacs helps him get better at dealing with digital information.

I don’t know for sure but I’d guess that most people who have taken the time to really learn Emacs have experienced that. I know that Emacs has made me really good at wrangling text and therefore with dealing with digital data in general.

Posted in General | Tagged | Leave a comment

The Iron Law and The National Health Service

We haven’t talked about the Iron Law for a while so here’s an example of its action on steroids. This story is about Britain’s National Health Service and their contemplated betrayal of their patients’ privacy. I’m an American so I see this through American eyes but I can’t imagine that my British cousins see it much differently.

Here in the U.S., the doctor/patient relationship is sacrosanct and can’t be pierced—except under extraordinary, very narrow conditions—even by the courts. It is, in fact, a crime to divulge medical information (see the HIPPA act). The NHS, on the other hand, has a sordid history of trying to grab patient data and sell it to third parties including, incredibly, Google.

In their latest attempted grab, the NHS has directed the Kingdom’s GPs to provide all their patients’ data to the service so that it can be made available to third parties for research purposes. Although the service has downplayed the significance of the actions, many GPs are alarmed and have vowed to refuse to comply. Patients can opt out (until June 23) but the program has received little attention and most are unaware of it. The Labour Party has called for a delay until patients can be informed.

It’s classic iron law: if the data is collected, it will be abused. In this case it’s worse. The data had to be collected to provide good health care to the people providing it. It makes it even worse that others would like to grab and sell it.

The U.S. and Britain have very different healthcare systems and neither side can understand the other’s insistence on their system’s superiority but I’m pretty sure we can all agree that selling patient data—whatever the reason—is wrong. It’s not that the NHS is malevolent; they’re pursuing a noble goal but they’re pursuing it with other people’s property. If they want the data, the least they can do is ask.

Posted in General | Tagged | Leave a comment

Tramp Mode with Zsh

Lennart Karssen has a tip for those of you who use tramp and zsh. He observed that if zsh was running on the remote machine and he tried to open a file with Ctrl+x Ctrl+f long timeouts would occur making tramp essentially unusable.

It turns out that the problem involved the shell prompt on the remote machine and that a simple one-liner to .zshrc completely resolved the timeouts. If you’re having this problem, take a look at Karssen’s blog to see how to fix it.

Posted in General | Tagged | Leave a comment

Red Meat Friday: Another One Sees The Light

Oh no! Those pesky Minions are at it again and have snuck another Light-mode/Dark-mode post into the queue. This time, MICROIDEATION recounts his journey from avid dark mode fan to the realization that, as Irreal keeps telling you, light mode is better.

MICROIDEATION was a true believer in dark mode. He configured it wherever it was available and eagerly awaited its implementation where it wasn’t. He admits that it was mostly about making himself feel cool. After a while, he realized that all the supposed benefits of dark mode were either illusory or flat out wrong. In particular, he discovered that

  • Dark mode is not easier on the eyes
  • Dark mode does not appreciably save on battery power
  • It has usability problems like hard to read fonts and, really, it doesn’t look as good as light mode.

Of course, these things are a matter of taste and everyone should feel free to use whatever theme they like. Still, once the dark mode fad has run its course, the Minions are going to be insufferable. You might want to get on the right side of history.

Posted in General | Tagged | Leave a comment