Experts Use Emacs and Vim

Over at the Triplebyte Blog there’s an interesting post on editors, who uses them, what languages their users code in, and how their users did in their interviews. By now you’ve undoubtedly heard about that last aspect: Emacs and Vim users significantly outperform the users of other editors in their interviews. Emacs users performed over twice as well as its nearest competitor.

After we enjoy a moment of triumphalism, it’s worth asking what those results mean. Triplebyte speculates that it’s because Emacs and Vim have been around a long time and are therefore more apt to be used by experienced engineers. The problem is that users of the new hotness in editors, Visual Studio Code, also performed well in the interviews.

So what is the reason then? No one believes—or, at least, should believe—that using Emacs or Vim somehow makes you a better engineer. As Aaron Hall tweeted:

That’s true, of course, but what I’m pretty sure is going on here is that the same attributes that make for great engineers predispose them to be Emacs or Vim users. I’ve explored this before in my Using Emacs post where I discuss those attributes. Those who are concerned enough about efficiency and creating workflows that are as frictionless as possible tend to choose the best tools possible—not the prettiest ones—and be willing to put in the time to master their them. That’s true of younger engineers as well as more experienced ones. If you think that argument’s facile, consider that just today I saw a tweet saying that the writer was giving up on learning Org-mode because he wasn’t smart enough. Not everyone can or is willing to put in the time to master Emacs.

The Triplebyte post is really interesting and looks at the data in several ways but it’s probably a mistake to read too much into the results. So enjoy a moment or two of feeling superior and then get back to work.

Posted in General | Tagged | Leave a comment

Literate Programming with Org-mode

Niklas Carlsson has posted a rerecording of a talk he gave at work about the power of Org-mode for literate programming and exploratory programming in general. Although he is running Emacs with the Doom package, you should have no trouble following the talk regardless of how you like to run Emacs.

Carlsson began with a brief introduction to Emacs and Org-mode but quickly moved to introducing code blocks and showing how you can intersperse text and code and then execute the code having the results be automatically included in the Org file. One of the things I liked was that he showed several ways of including the results of one block in another using sessions or tangling.

Another nice feature he demonstrated was embedding Elisp on the #+BEGIN_SRC line to calculate some of the parameters. He made use of that facility when he discussed building and running an application in a Docker image.

Next, he talked about Org tables and using Emacs Calc functions with them. Again, he showed how to chain data from one table to another making it easy to build up more complex tables from intermediate versions or to include one set of results into a new table for further analysis.

He showed how to export the results to a PDF but did this by manually calling the export routines rather than using the Org export menu. This was the only weakness in his talk. He ended up writing an Elisp function that exported to PDF and opened the resulting PDF file. That’s unnecessary because Org will do that for you from the export menu.

Finally, he demonstrated how he can export part of an Org file to his blog.

This is a great video and worth watching. It’s and hour and 23 minutes so you’ll definitely need to schedule some time. Carlsson has put all the source material for the talk on GitHub so if you want to study his code more closely than is possible during the talk, you should go there.

NOTE: Karl Voit also has a nice post on the video.

Posted in General | Tagged , | Leave a comment

Query

This is a question for Emacs users on macOS 10.14 (Mojave). Since upgrading to Mojave and recompiling Emacs with the display patches, I’m seeing a delay of about 5 or 6 seconds when I invoke Safari from Emacs. This happens, for example, when I follow a link from Org-mode with Ctrl+c Ctrl+o or from Elfeed when I call the original Web page with a b.

The delay is significantly less if I start Emacs with -q so this probably means that there’s some interaction with one of my Elpa packages. Before I invest a bunch of time trying to figure out which package (if any) is causing the problem, I thought I’d query Irreal readers to see if anyone else is experiencing this and if so have they found a solution.

The problem started when I recompiled Emacs from the 26.1 branch and has continued now that I’m on the 26.1.90 pretest. If you have any wisdom to share, please leave a comment. Comments of the sort, “I’m using Emacs on Mojave and not seeing the problem” are also useful.

Posted in General | Tagged | Leave a comment

The Ignorant, The Stupid, and The Insane

Every Irreal reader knows, I’m sure, about the proposed encryption—anti-encryption is more accurate—law that the Australian Government is trying to push through Parliament. When it was first proposed, I thought that it was another case of politicians being ignorant of the realities of encryption and security engineering and that adult leadership would soon exert itself. As the debate raged on and the government refused to listen to what the experts were telling them, I came to believe that they were more than ignorant, that they were stupid.

What other conclusion can you draw after every expert in the world told them their plan would be a disaster and harm, not help, their national security? It turns out that there is another conclusion: they’re insane. That’s a pretty strong statement but take a look at this article in 10 Daily entitled If Encryption Laws Go Through, Australia May Lose Apple. The point isn’t Apple could withdraw from the market—although I’m sure it would anger many Australian citizens—it’s that Australia would become isolated from the technical world. No one would buy their products, their engineers would emigrate to lands with saner laws that didn’t allow them to be jailed for merely doing their jobs and their tech industry could be destroyed.

That sounds hyperbolic, I know, but read the article. It’s hard to reach any other conclusion. It’s also hard to conclude that the folks pushing this bill are anything but insane. It appears that the effort to ram this bill through on the last day of Parliament’s current session failed so the legislation is dead until next year. That doesn’t make those pushing the bill any less insane.

Hat tip to Kontra who asks if Australia will commit to a digital lobotomy.

UPDATE [2018-12-06 Thu 13:11]: Apparently I was wrong about the bill failing. According to this ABC report, Labor withdrew its ammendments and the bill passed. Now the Australian Government can enjoy the reaping of what they’ve sown.

Posted in General | Tagged | Leave a comment

You Are a Target

Last week, I wrote in Nothing to Hide that although the “I Have Nothing to Hide” folks believe they are too unimportant to be targeted by governments and hackers, that is almost certainly wrong. Serendipitously, the current issue the SANS security awareness newsletter, Ouch!, addresses this very point.

In Yes, You Are a Target they discuss why everyone’s information has value to hackers and—to a surprisingly large degree—governments, your own or others. If you’re living under the rosy assumption that no one would bother hacking you, you really need to read this post.

The article also mentions a few ways that you can protect yourself. Mostly, their advice boils down to not being stupid and doing things like clicking on links you get in an email. Regardless, the article is very worthwhile and you should definitely read it. It’s short so it won’t take more than a couple of minutes.

Posted in General | Tagged | Leave a comment

The Psychology Replication Crisis

I’ve written several times about the dismal reproducibility rate of experiments in Psychology. Mostly that’s been in support of my contention that “Tech Addiction” is a nonexistent problem made up by journalists looking for something to write about and supported—when it’s supported at all—by what amounts to junk science on the part of Psychology profession.

There is ample reason to be skeptical of any “study” in Psychology as even the profession itself is coming to realize. The Atlantic is running an article entitled Psychology’s Replication Crisis Is Running Out of Excuses that takes a look at the problem and concludes that it’s very real. The best quote from the article is, “Ironically enough, it seems that one of the most reliable findings in psychology is that only half of psychological studies can be successfully repeated.”

The article recounts the findings of the Many Labs 2 project which set out to carefully reproduce some of the most important research findings in the field. It was designed to answer the criticisms of those who say the crisis is not real and has mundane explanations. If you have any interest in this at all, you should definitely read the Atlantic piece but the TL;DR is that efforts to reproduce 28 of Psychology’s most important results—those that are in text books or the subject of TED talks—succeeded in only 14 cases. The meaning of that is that we could save a lot of grant dollars by simply flipping a coin; we wouldn’t be any less accurate. Or even better, maybe we’d stop hearing about cell phone addiction. But probably not.

Posted in General | Tagged | Leave a comment

Capturing Receipts

Moritz Schäfer has posted the workflow he uses to capture photos of receipts into an Org file. His method is to capture receipts by taking a photo of them with his smart phone using an app—it sounds like JotNot Pro—that crops and color corrects the image so that the result looks like a scan. The processed photo gets synced to his computer automatically and he would like to capture information about the receipt into an Org file and attach the photo.

Sadly, Org mode doesn’t support this out of the box but it’s pretty easy to implement with a little Elisp and the org-download package. When the Schäfer’s receipt capture template is invoked, the most recently synced photo is attached to the Org entry that the template creates.

It’s a nice hack and might be useful in your own workflow. As Schäfer points out, it does suffer from the defect that only the most recently synced photo can be captured. That makes it a little unwieldy if you’d like to capture several receipts at once. It would, however, be pretty easy to allow the user to choose the photo they want to capture using something like completing-read to narrow the choices. That’s basically what I do to get a link to receipts I’ve scanned with my ScanSnap 500.

I like this kind of workflow because it mostly automates away the otherwise tedious task of organizing and recording receipts for tax or reimbursement purposes. Take a look at Schäfer’s post if you’re interested in doing something similar.

Posted in General | Tagged , | Leave a comment

Making a Poster with Org-mode

It is common in many academic fields to have “poster sessions” at their professional conferences where a quick synopsis of research results are presented in a poster. This is the case in Computer Science and, apparently, in medicine.

Philipp Homan is an MD, Psychiatrist, and Assistant Professor at Feinstein Institute for Medical Research. For the annual meeting of the American College of Neuropsychopharmacology, Homan has prepared a poster on his research into weight gain as a result of antipsychotic drugs. It’s a beautiful poster with professional production values: take a look at it and see if you don’t agree.

Most Irreal readers won’t have the background to understand the material in the poster except in a general way but another aspect of the poster that’s not obvious from looking at it is that it was produced with Beamer and Org-mode.

The poster shows the really impressive results that are possible with the Beamer/Org combination. You can tweak the results until you’re happy with them and then, presumably, take them to a print shop to convert the PDF to a full size poster.

If you’re wondering how Homan did it, here’s the Org source file. I found it very instructive to read through. If you are thinking of presenting a poster at some professional conference, you would do well to take a look at Homan’s source code.

Posted in General | Tagged , | Leave a comment

Microsoft Data Collection

I don’t get it. I. Just. Don’t. Get. It. A recent study commissioned by the Dutch Government found that Microsoft was collecting individual user data from the enterprise version of Office 365 including Word, Excel, PowerPoint, and Outlook without any public disclosure of the practice and without any way of turning the telemetry off.

When word leaked out that Microsoft was doing this in the personal versions of Windows 10, I shook my head sadly wondering why anyone would pay to be spied on. I couldn’t imagine that corporations, let alone governments would tolerate that sort of malfeasance, proving, once again, my infinite capacity for naiveté.

You would think that the Dutch Government upon discovering this would have told Microsoft to “get the hell out of our country and take your malware with you.” But no. Instead they are doubling down and considering using the Web version of Office 365 and letting Microsoft store their data for them. No, really: go read the article if you don’t believe me.

Microsoft is promising to behave and install a “zero-exhaust” switch to turn the collection off. They’re also promising to be more transparent and provide tools so users can see what sort of data is being collected (it’s currently encrypted so no one but Microsoft knows). A cynic might suspect that what these promises really mean is, “we’ll try harder not to get caught again.”

If you had any illusions that Microsoft had become “kinder, gentler” after the Gates and Ballmer regimes, this should put your delusions to rest.

Posted in General | Tagged | Leave a comment

Cashless in Sweden

I’ve written several times about China moving to a cashless society [1, 2, 3] and speculated about how long it would take for the West to move in similar directions. I didn’t realize that Sweden has advanced quite far down that path. Advanced so far that total value of outstanding cash now accounts for less than 1% of the Swedish GDP and it’s increasingly common for retail businesses to refuse to deal with cash.

The World Economic Forum has an interesting article on these developments and what it means for Sweden and its people. The primary concern is that control of the money supply will pass from the government to private corporations. Cynics will suggest that the real worry is that government is concerned that they will no longer be able to finance social programs by printing money but regardless of your views on that you’ll probably agree that further regulation of the markets will be required.

I found the article interesting because it points out that moving to a cashless society does present problems and the answers to them aren’t always obvious. In Sweden’s case, the government is discussing issuing e-kronas, which are pretty much like a normal Krona except that they’re digital and can be easily used and moved electronically.

If you have any interest in this area, the article is worth taking a look at.

Posted in General | Tagged | Leave a comment