COVID-19 and Data Caps

One of the most annoying things that ISPs perpetrate on their customers is broadband data caps. It’s one of the main reasons Comcast is the company that everyone loves to hate but AT&T and others also have them. These companies justify the caps by saying that they’re necessary to prevent their networks from being saturated but that hasn’t been true for many years. The truth is that, like exorbitant SMS messaging fees, the data cap fees are merely a way of squeezing more money out of their customers.

The SMS scam came to an abrupt end when the Apple and Android platforms provided their own messaging apps that didn’t use the cell network command channel. Today, SMS is mainly used so Apple and Android users can text each other and is free for almost everyone. Now, another event may be the harbinger of the demise of data caps.

In the wake of the COVID-19 crisis and those who can being encouraged to work from home, ISPs are under tremendous pressure to suspend data caps. As Devin Coldewey over at TechCrunch puts it, any ISP who tries to charge data overage fees during the crisis will instantly become radioactive. In Coronavirus could force ISPs to abandon data caps forever, Coldewey argues that ISPs will be forced to suspend the fees or become pariahs. Once their networks operate successfully without data caps and with the increased traffic that working from home will bring for a few months, it will become clear to everyone that there’s no reason for the caps other than to gouge customers.

It’s a persuasive argument but in the comments Neil Jones, who works for a smaller ISP, says that small ISPs must buy their bandwidth from the Tier 1 providers and that they definitely need data caps. Take a look at his comment to see if you agree.

In any event, it will be interesting to see if the ISPs are indeed forced to abandon data caps. We can only hope.

Posted in General | Tagged , | Leave a comment

Blogging With (Only) Emacs

If you’re an Emacser and a blogger, you will, of course, want to write and publish your posts from within Emacs. If you’re using WordPress, org2blog provides an excellent solution. You write your posts in Emacs and Org-mode as usual and push a couple of keys to publish them to WordPress. Of course, not everyone likes WordPress and may prefer to maintain a website with static posts. In many ways that’s a lot simpler and if you don’t have complex requirements may be the best solution.

Over at Opensource.com, Sachin Patil has a nice post that explores publishing a blog completely from within Emacs. There are plenty of solutions that are sort of like this that use Django, Hugo, or Jekyll but Patil wanted a solution that required only Emacs. Not surprisingly, Emacs has a solution for that. The solution is to write your posts in Org-mode, leveraging all its formatting capabilities, and then use Org-publish to convert the posts to HTML and push then to the server.

There are ways to include and publish a site CSS file to make your site your own. Patil covers all this in his post. If you’re looking to start a blog and would like to handle everything in Emacs, take a look at Patil’s post. It’s amazing how much one can accomplish with just Org-publish. The nice thing about this approach is that you have total control over how you publish to your site and what the end result looks like.

Posted in General | Tagged , | Leave a comment

Smart Notes

I’m currently reading Sönke Ahrens’ How to Take Smart Notes, a book that describes Niklas Luhmann’s method of taking, storing, and retrieving notes about ideas he thought could be useful later. Luhmann kept his notes on what amounted to index cards and stored them in a wooden box. The idea, Zettelkasten in German, is usually translated as “slip-box” in English. I first came across the idea in this review and summary of Ahrens’ book by Tiago Forte.

Implementing Luhmann’s idea with physical index cards is still possible, of course, but most of us would prefer to use digital methods. There’s a whole site, Zettelkasten, supporting the idea as well as commercial applications such as Roam to help you implement the system.

As soon as I heard about the idea, I thought it would be an ideal application for Emacs and Org-mode. That’s hardly an original insight, of course, and a quick search yielded two excellent posts that discuss it. The first, by Jethro Kuan, describes his note taking work flow using the org-roam package that he wrote as a way to replicate Roam with Org-mode. Most of the post is a sort of précis of the ideas presented in Ahrens’ book.

The other post, How to Make Yourself Into a Learning Machine, describes the system used by Simon Eskildsen, Director of Production Engineering at Shopify. Eskildsen doesn’t use Org—he’s a Vimer—but he’s built his own Zettelkasten. I liked his post because he gives examples of actual notes and how he links them together.

Kuan points to a nice video by Nat Eliason that shows how he uses his (Roam-based) Zettelkasten to pull together an outline for an article he’s writing. It’s very enlightening and shows the power of the Zettelkasten method. It’s 15 minutes, 12 seconds long and definitely worth watching if you’re interested in the Zettelkasten idea.

I’m waiting to finish Ahrens’ book before I try my hand at using the method. It seems pretty straightforward to implement in Org but Kuan found he needed more so I’ll take a closer look at org-roam before I commit any serious effort to the project.

Posted in General | Tagged , | Leave a comment

Org and Anki

If you took my advice and checked out Ali Abdaal’s videos on evidence-based study techniques, you know that one of the two guiding principles of effective learning is spaced repetition. An easy way to do that is to start with flashcards and use some sort of record keeping to track which questions you need to revisit. There are, of course, some tools available to automate this. One such tool is Anki. You can enter flashcards with a question on the front and an answer on the back and Anki will track your progress and help you review the questions you get wrong more often then the ones you get right.

On the other hand, who wants to deal with inputting questions and answers into some suboptimal, bespoke editor? Fortunately, you can get all the benefits of Anki and still do your editing in Emacs. Cheong Yiufung has an informative post that explains how to write your flashcards in Emacs and Org-mode and export them to Anki. The post has several videos—sadly without useful audio—that demonstrate the app in action.

The nice thing about Anki is that it’s functionally like a physical set of flashcards in that you can sync your deck across all your devices and take it with you on your phone or tablet. That’s perfect for, say, your bus or train ride: you can review your material in those short otherwise lost time spans.

The takeaways from this post are (1) you should be using spaced repetition to help you learn new material and (2) if you want to do spaced repetition with flashcards, Anki and Emacs is a good solution.

Posted in General | Tagged , | Leave a comment

Happy 47th Birthday, Dark Side of the Moon

As I do every year on this day, I want to pause for a brief moment to consider the glory of one of the best albums ever recorded: Pink Floyd’s Dark Side of the Moon. Wikipedia says that it was actually released on March 1, 1973 but I’ve been using March 10 for years—I no longer remember why—and will continue the tradition.

Last year, I embedded a video of the Brain Damage/Eclipse set that ends the album. I and most other folks consider it the jewel of the album but two other cuts, Money and Time were the single hits. Here, from Live 8 in 2005, is the entire band, reunited for the first time in 24 years, doing Money. It was the last time they ever appeared together. Enjoy one of the best rock bands in history.

Posted in General | Tagged , | Leave a comment

COVID-19

Even if you are living under a rock, you’ve no doubt heard a lot about COVID-19 and its potential to be a serious pandemic. There is, it turns out, not much you can do about the threat other than taking common sense precautions. The most important of these is to wash your hands regularly and thoroughly. Via Karl Voit, here is a very useful two-part thread that explains why washing with soap is so effective and hand sanitizers are helpful but not as good as soap:

The introduction sounds as if it might be too technical but it isn’t. It’s accessible, informative, and definitely worth reading.

If you’d like an informal summary of the situation, Ali Abdaal has a 20 and a half minute video that explains what’s going on in a more even handed way than the click bait headlines you’ve been seeing.

Posted in General | Tagged , | Leave a comment

Notion and Org Mode

Ali Abdaal, whom I’ve mentioned a couple of times before, is a physician and YouTuber from Britain. He’s a geek who at least once a week uploads a video usually about medicine, tech, or studying and learning. If you’re a student, you should definitely take a look at his videos on Evidence-Based Study Tips in which he discusses the scientifically-determined best ways of learning new material.

In a recent video he discusses the best note-taking app for students. That app is Notion, which Abdaal has increasingly been using to organize his life. As you can see from the video, Notion is, indeed, a very nice app that has many ways to organize and display your data and make it available across multiple devices. The problem with it is that it violates the important principle that you must maintain control of your data. With Notion, your data is held on the company’s servers and not stored locally. For that reason alone I don’t consider Notion a viable solution and I couldn’t recommend it to others for the same reason.

Still, Notion is an obviously useful and flexible app as you can see from Abdaal’s video. Fortunately, Emacs users can have essentially the same features that Notion offers while maintaining control of their data. Any Org Mode user watching the Abdaal’s video will immediately recognize the almost one-to-one correspondence between the ways Org and Notion operate. To be sure, Notion has a pretty GUI and may have capabilities that Abdaal hasn’t mentioned but as I’ve mentioned before, you can do the same things the video demonstrates with Org mode.

If you’re an Org mode user, take a look at the video and see if you don’t agree. The video is 24 minutes, 12 seconds so plan accordingly.

Posted in General | Tagged , | Leave a comment

Innumeracy and the Press

It’s no secret that Irreal doesn’t hold the press in very high regard. There are, of course, exceptions but too many journalists are ignorant and lazy. That seems overwrought but consider this example: Mekita Rivas, a journalist who writes for The Washington Post, among other venues, tweeted:

“Bloomberg spent \$500 million on ads. The U.S. population is 327 million. He could have given each American \$1 million and still have money left over. I feel like a \$1 million check would be life-changing for most people. Yet he wasted it all on ads and STILL LOST.”1

There was, of course, immediate blowback along with a fair bit of snark about Rivas’ math abilities. Not to be deterred, she doubled down with:

“blah blah math blah blah people are telling me my numbers are wrong but the point still stands: he could easily afford to give everyone \$1 million and literally never notice”

So far, this is just an embarrassing slip and although it does show a lack of attention to detail and an unwillingness to revisit disputed facts, it was only a tweet. Then the press proper got involved.

These aren’t some freelancers from the Tapioca Weekly News. They’re two prominent and well established national journalists. Gay, in addition to her anchor duties, is a member of the New York Times editorial board. And don’t forget the layers of fact checkers and the producer that signed off on this piece. There’s a graphic so the story was planned and not just an off-the-cuff remark. Notice the lede above the video: Williams and Gay “do the math and conclude that Journalist Mekita Rivas is right” so they’re not just repeating her figures. They did the math. Just not very well. And notice that the “math” here is a single division.

Whatever your thoughts about income inequality, it is a current subject of public discourse in the U.S. and elsewhere so it deserves a fair airing. That means, among other things, getting the facts right. It’s not that hard and we all have calculators on our smart phones in case the division is too strenuous. You just have to take the effort.

Adam Ozimek, an economist with Upwork has an apt final word:

Footnotes:

1

Rivas has locked her twitter account so I can’t show the actual tweets but this and the next are verbatim quotes.

Posted in General | Tagged , | Leave a comment

Some Simple Tramp Tricks

One of the great and mostly underappreciated features of Emacs is the Tramp system that lets you seamlessly edit files on a remote computer. There are, of course, situations where Tramp is not the right answer—working with large files on remote servers connected over a slow or buggy connection, for example—but most of the time it’s exactly what you need to deal with remote files.

If you’re a Vim user, the typical answer is to just install Vim on the remote machine and SSH into it when you need to edit a file. That works pretty well especially if you don’t have much in your Vim configuration file. With Emacs and Tramp, you don’t have to install anything on the remote and your full Emacs system with all your configurations and tweaks are available because you’re working on your local machine. When you’re finished and save the file, it’s synced back to the remote machine just as if you’d been working on it instead of your local machine.

Will Schenk has a short post of some of the typical Tramp use cases. That includes editing a file on the remote machine even if you need to edit it as root. If you connect to a directory instead of a file, you get a Dired listing and can interact with it in the usual way even though all the files it lists are remote. You can even start a shell on the remote host right from Emacs using Meta+x shell in the normal way.

One of the most useful Tramp tricks is working on a remote machine that’s behind a gateway. Tramp has a mechanism that let’s you connect to the gateway machine and then to the target machine. That’s really handy especially if you’re trying to make a quick fix to one of your work machines from home. It’s a whole lot easier than having to go into work.

Finally, Schenk discusses connecting to a Docker image and shows a bit of Elisp to make it easy. You may or may not need that capability but it’s nice to know it’s available.

If you edit files on remote machines and you’re not using Tramp, you’re working too hard. It’s easy to get started: just try it on remote files for a while and after you get comfortable, you can try some of the more complicated tricks. Schenk’s post provides a nice go-by for some of the easier tasks but be sure to check out the documentation for the full story.

Posted in General | Tagged | Leave a comment

File Hierarchies

A nice post from Karl Voit has been languishing in my blog queue since January and I realized that it was time to write about it. In the post, Voit argues that complex file hierarchies are the wrong answer. If you’ve ever used one, you know that that’s true. The problem is that you always encounter edge cases where it’s not clear where to store or search for a given file. Voit recommends a fairly flat hierarchy. That makes storage easier but what about retrieval?

One solution is searching. Almost no one does this but it’s a very useful strategy. Searching can involve looking for a particular file name, perhaps fuzzily, or a content search using a grep-like facility. That’s a powerful method but it brings its own set of problems as Voit describes.

If you follow Voit, you won’t be surprised at his preferred solution: he likes to use a tag-based system. You can read his post and follow the links in it to see exactly how his scheme works but any Emacs user can use a lightweight version of the idea with Org-mode. That’s what I use and it works well. Most of my data is spread across five Org files all of which are tagged. When I want to locate a particular piece of data, I do an Agenda TAGS search to narrow the candidates to a very few possibilities, which I can easy scan to choose the proper one. I could, and sometimes do, use a grep for this but then I have to remember key words from the item I want. With tags, I just need to remember a general concept.

As Voit says, assigning tags is not easy and takes some practice but once you get reasonably good at it, it’s an excellent way for classifying your data. Voit’s system is much richer but may be too heavy weight for some users. If you’re looking for an easier way, Org tags is a good solution or it’s a way of easing into a more complex system such as the one Voit uses.

Posted in General | Tagged , , | Leave a comment