New Data Privacy Tip Twitter Account from John D Cook

I’ve long been a fan of John Cook’s TeX Tips and often learn something new from them. Cook has a number of such Twitter accounts covering various aspects of Mathematics and other technical areas. I was, therefore, happy to see that he’s added a new account for data privacy tips:

It’s already seeded with several tips and worth taking a look at.

Since digital privacy is one of my hobby horses—as most of you know to your dismay—I was delighted to see this addition. Anything that helps raise awareness of the issues has my welcome. Drop by and take a look and perhaps follow the account if you’re on Twitter or bookmark the site if you aren’t.

UPDATE [2019-02-15 Fri 14:51]: and → as.

Posted in General | Tagged | Leave a comment

Securing Your iPhone

This is an Apple-centric post but I know a lot of Irreal readers have iPhones or iPads so it’s worth passing on. Over at Computerworld, Jonny Evans has an excellent article on How to stay as private as possible on Apple’s iPad and iPhone.

Regular readers know I’m very paranoid conscious about security matters so much of Evans’ advice was already familiar but I still learned a few new things so the article is definitely worth reading if you have an iPhone or iPad. It turns out that Apple provides a lot of help in locking things down. It was mostly this information that I didn’t know.

If nothing else, going through your settings as you read the article will ensure that you haven’t missed something. It’s astounding how many apps want to be able to access your location, microphone, or camera without any real reason to do so and it’s worth reviewing the apps that have that access and turning it off if the app has no reason to have it.

I’m sure Android has many of the same features but, sadly, this article won’t help Android users; it specific to Apple devices. On the other hand, if you are an Apple user you should, as I said, definitely give it a read.

Posted in General | Tagged , | Leave a comment

Sharing Data Among Org-mode Blocks

John Kitchin has another excellent post on leveraging Emacs and Org-mode. This time, he considers sharing data between Org-mode code blocks. Most Org-mode users know about naming code blocks and using the results of the computation in another code block but it turns out that the facilities for data sharing are much richer than that.

You can, for example, arrange that the results of a code block are not recalculated no matter how many times it’s called. Or if the block generates a huge amount of data or binary data, you can save it to a file and access the file from another block.

Kitchin covers these and other techniques. As he says, which technique you should use depends on the situation and what your data looks like. He lays out ways of sharing the data among blocks and leaves it to the users to pick the one most appropriate for their use case.

As is often the case with posts involving Org files, I found it easier to follow Kitchin’s post by reading actual Org source file. Happily, Kitchin always provides a link to those files so if you also like to see the original file, he makes it easy.

This is a great post and I recommend everyone using Org code blocks read it.

Posted in General | Tagged , | Leave a comment

Unix and Linux History from Maddog

Older readers may know of Jon “Maddog” Hall. Although we hear less from him these days, he’s been a force in the open source movement for many years. I just came across a video in which he talks about Unix and Linux history. As Hall says, 2019 is a year with a lot of anniversaries for our community including 50 years of Unix and 25 years of Linux.

Much of the talk represents his personal memories of events and he tells some stories I hadn’t heard before. For example, it was Hall’s personal intervention and efforts that provided Linus with an Alpha machine for the Linux Alpha port. In those days, Alphas cost about $30,000 so this was a significant achievement.

There are other interesting stories too. The video is just short of 56 minutes so you’ll need to plan ahead. The history he recounts is part of our shared heritage and hearing those stories is worth your time.

Posted in General | Tagged , | Leave a comment

NeoTree and Perspectives

A lot of people like to organize their workflow around projects, mostly via Bozhidar Batsov’s excellent projectile package. Some of those people go further and use a package like perspective to provide each project with its own workspace. I don’t organize my workflow that way but it’s an attractive option that I occasionally consider adopting.

Another group of people swear by packages like neotree that provide a file tree off to the side of their Emacs windows. I definitely don’t want to sacrifice screen real estate for that but there’s a large population of users who disagree.

Calum MacRae is in both camps and has neotree set up to track his current perspective. That works well most of the time but when he switches between two existing perspectives, neotree does not update to the new perspective. Of course, it’s Emacs so MacRae wrote a bit of Elisp to fix the problem. If you like the perspective idea and want a file tree rooted at the top directory of each project, you should definitely take a look at MacRae’s post and grab his code.

Posted in General | Tagged | Leave a comment

Org Capture and Refiling

Like me, Matus Goljer (fuco1) is a heavy user of Org-capture. I’ve got 11 templates that cover all sorts of events that I want to capture. Goljer has a similar number of templates but his taxonomy is much richer than mine. I’m generally content to file the note at the end of one of my agenda files and the templates take care of that automatically. Goljer has more target files and headings within those files that are possible targets for the notes. As a hypothetical example, consider a TODO note. It may be associated with one of his projects and within that project it may be concerned with some task and within that task, some subtask and so on. That makes putting the note in the proper place difficult and, as Goljer says, it’s not always obvious at capture time what the proper place is.

To solve that problem, Goljer’s templates dump many of his captures into a holding file that he can come back to later to refile the notes. The problem is that having so many possible targets—Goljer says the number can grow into the tens of thousands—makes refiling very slow.

As I’ve written before, Goljer is an expert at identifying and eliminating friction in his workflow. He eliminates this particular friction by temporarily restricting the number of targets. He’s got a clever scheme for doing that and ties everything together with a hydra that makes refiling entries in the holding file easy. Take a look at his post for the details. If you have a complicated taxonomy like Goljer’s, you may want to adopt or adapt his system.

Posted in General | Tagged , | Leave a comment

Using Keyboard Macros to Ease Drudgework

I usually use keyboard macros to repeat some editing operation that’s too complicated for iedit, multiple cursors, or search and replace. It’s astounding how useful it can be and every Emacser should learn to use them.

Recently, Arne Babenhauserheide tweeted a link to an old post of his on how to use macros to ease drudgework. The boring chore he wants to streamline is (basically) to update a LaTeX table with a column having an identifier for each entry by searching for the all instances of the identifier in a config file and using the information found to update the table. The basic strategy is to move down the table row-by-row, use that row’s identifier as the target for an occur in the config file, and copy the necessary information from the occur results into the table.

Babenhauserheide automates a lot of the process with a keyboard macro. What’s significant about the macro is that it’s being used to help with a search rather than to edit some text and that the macro “visits” multiple windows. That last aspect is reminiscent of abo-abo’s use of a similar strategy in one of his refactoring processes.

Babenhauserheide’s post serves as a reminder that keyboard macros have more power than we usually take advantage of.

Posted in General | Tagged | Leave a comment

Fighting the Surveillance Economy

It’s no secret that we here at Irreal are adamantly opposed to surveillance. That includes the casual monitoring of our communications by the government but especially the hoovering up of our every actions by the malevolent adtech industry. It’s a direct corollary to the Iron Law of Data Collection that the government followed by divorce and tort lawyers will start demanding—if they haven’t already—this information from the private concerns that hold it.

Sadly, there not very much effective action that individuals can take to put a stop to this collection. It’s a sad commentary when our greatest hope for a solution to a market problem lies with the government. Viktor Vecsei over on Medium has a detailed post on some of the things companies and individuals can do to combat the adtech and surveillance industries.

Most of the advice is at once obvious and hard to implement. Unless you’re a social outlier like the minions at Irreal, it can be difficult to give up your Facebook account and stop using Gmail. Even Vecsei admits he’s not yet been able to divest himself of these services. Most people won’t bother trying.

The situation is worse for companies. Unless you’ve got the resources of Apple and are using the guarantees of privacy as a way of distinguishing and promoting your brand, it will be difficult to convince your Board of Directors and investors that foregoing adtech is a good choice.

This is why I’m not sanguine that anything other than government action will have any real effect. Sure, there are groups, like most Irreal readers, who understand the issues and are willing to make the necessary sacrifices to insulate themselves from much of the commercial surveillance but I suspect that if everyone of them got off the Internet entirely, no one would notice and the surveillance economy would keep chugging along. Vecsei feels differently and perhaps you’ll agree. His article is, in any event, a useful guide to what you can do right now.

Posted in General | Tagged | Leave a comment

Calc Tutorial

Longtime Irreal readers with good memories will recall that sometime ago I resolved to get better with Emacs Calc. Although I haven’t written much about it, I have been making progress. It’s now my go-to calculator and I’ve learned all the command keys for the things I do regularly. Of course, Calc is enormously flexible and complicated: it can even calculate indefinite integrals in closed form so there’s too much (for me) to remember. Fortunately there’s a nice cheat sheet, which I have bookmarked. That and the x command that I wrote about previously usually suffices to let me navigate the wonders of Calc.

Still, it’s nice to have a good tutorial to get you acquainted with what’s possible. Andrew Hyatt wrote a series of tutorials for the Google G+ Emacs Community but G+ is going away soon so Hyatt moved them to GitHub. There are 13 tutorials, all in the form of Org files. It’s easy and convenient to read them directly from the repository but if you want a local copy, just clone the repository and read them with Org-mode.

The tutorials are well written and I already learned something new: you can use Calc to generate high quality1 random numbers. Hyatt says he uses it every time he needs a random number. The tutorials are fairly short and it’s easy to read one when you have a couple of minutes. It’s a good way of getting more familiar with Calc

Footnotes:

1

See §8.5.1 of the Calc Manual for a description of what “high quality” means.

Posted in General | Tagged | Leave a comment

Run Your Life With Emacs

Over at the Keyhole Development Blog, Garrett Hopper explains why he runs his life with Emacs. Like many of us, he hates having to switch context when he changes the application he’s using. Each application has its own key bindings and ways of doing things. Hopper solves this by staying in Emacs as much as possible so that he can use the same bindings and configure everything to his liking.

That’s a familiar theme here at Irreal, of course, but Hopper’s post looks at the benefits with another pair of eyes. Two of the big reasons for him to stay in Emacs as much as he can are the consistent key bindings and not having to touch the mouse. He also lists some of the features and packages that he thinks make Emacs a real win for efficiency.

The post doesn’t discuss his configuration or any tricks he uses so it’s more of a “Here’s why I like and use Emacs” post. If you enjoy reading other Emacs users’ thoughts on their editor, you may enjoy Hopper’s post.

Posted in General | Tagged | Leave a comment