You Can’t Make This Stuff Up

Posted in General | Tagged | Leave a comment

The Scope of the Interactive Declaration

One of the very useful things I learned from Xah Lee’s Emacs tutorials is that almost any code can be attached to the Emacs Interactive declaration. The only rule is that the code must return a list of values for the parameters of the function that includes the Interactive declaration.

Marcin Borkowski, mbork, demonstrates this idea with a solution to this problem:

How can we implement an Interactive declaration for a function of two
parameters where the prompt for the second parameter includes the
value of the first parameter?

Take a look at Borkowski’s post to get an idea of the power of this idea. Most of us just use the standard interpretive format-like string input to Interactive but there’s a lot more power available to those who know how to use it.

Posted in General | Tagged | 1 Comment

How to be a Real Language

Posted in General | Tagged , | 3 Comments

Adtech: Then and Now

With the introduction of iOS 9 and its support for (easy) mobile ad blocking, the commentariat has been working overtime pumping out pixels on the issue of whether or not it is ethical to use ad blocking technology. Some folks just don’t want to see ads and have always used whatever technology is available to get rid of them. These people are, I think, in the minority. Most of us are willing to tolerate the ads as the price of admission for all that free content.

The real issue is whether ad blocking is justified in light of the rampant abuse—in the form of adtech—that advertisers have perpetrated on their hapless users. When a 1,500 byte article results in downloading multiple megabytes of tracking scripts and cookies using up bandwidth and draining batteries, users might be forgiven for losing their patience.

I’ve already written about my position on the matter but via John Gruber we have this concise and spot on summary from Kontra:

A few years ago, the browser manufacturers tried to ameliorate the tracking script problem with the do not track option. The advertising industry told us to pound sand and ignored it. Now they’re whining that users are taking back their machines.

Kontra has a few more words on the matter:

It’s hard to argue with that.

Posted in General | Tagged | Leave a comment

How Bad Apples Can Poison a Team

Over at Coding Horror there’s an interesting but disturbing report on research by Will Felps on how a bad apple can affect team dynamics. Most of us have worked on a team where a single individual disrupts the smooth functioning of its members with passive aggressive behavior, refusal to pull his or her weight, or just constant complaining about every damn thing.

None of that is new but Felps’ experiments show that these bad apples do far more damage than just being annoying. Conventional wisdom dictates that successful teams will collectively overcome these disruptions, but this turns out to be untrue. In one surprising finding, Felps found that other teams members will take on the bad behavior of the bad apple.

Other findings were that teams with a bad apple performed more poorly than those without. One hopeful finding was that a strong leader can overcome the problems caused by a bad apple and still lead a well performing team.

This is really interesting research. Be sure to spend three or four minutes giving it a read. It will almost surely surprise you.

Posted in General | Tagged | Leave a comment

Writing a Book in Org Mode

Grant Rettke over at Wisdom and Wonder points to an interesting discussion on the Org mailing list about writing a book in Org mode. The thread starts with Vikas Rawal’s announcement of his book, Ending Malnutrition: from commitment to action and a thank you to the members of the list for their help in working out some of the technical details. The rest of the thread discusses some of the problems Rawal solved in the course of publishing the book, including working with non-Emacs-using coauthors. Vikas also linked to the org source for the book.

This isn’t the first time Org mode has been used to write a book, of course, but the issue of its practicality has been discussed lately by Karl Voit and others so it’s convenient to have another example of a finished product. Voit complains that using LaTeX allows the author to tweak the output down to the micro level and thus produce a better final product. Vikas, John Kitchin, and other authors who’ve written in Org point out that you can embed LaTeX micro tweaks into the Org source file and bring to bear the power of Org Babel and reproducible research in preparing the manuscript.

If I were writing a strictly mathematical text with no empirical data, I might choose to use LaTeX/AUCTeX directly but if there were charts, graphs, or data calculations, I’d almost certainly choose to use Org for the manuscript, embedding any specialized LaTeX formatting directly in the source, using Babel for the calculations, diagrams, and graphs, and then export the result to LaTeX for use in producing the camera ready PDF.

The tools to do all this are available right now and they’re getting better all the time. For example, if you don’t like the Org exporter, you can use pandoc to covert your Org to LaTeX. As John Kitchin continues to demonstrate, there is less and less reason to prepare scientific documents in anything but Org.

Posted in General | Tagged , | 2 Comments

Plotting with Python and Org

Andrew Caird over at For the Love of Suffering has a nice post on how to use Python and Org mode to visualize data. As usual with this sort of thing, Caird leverages Org Babel to integrate a Python script directly into an Org file.

The data is in an Org table. That makes it easy to enter/import it and also to perform light-weight spread sheet operations on the data. Once the table data is complete, the Python code is invoked to produce a plot.

Lots of people are using Python these days so this post will be useful as a go-by for those wanting to use it to massage or plot data with Python/Org. Definitely worth spending a a couple of minutes to give it a read.

Posted in General | Tagged , | 1 Comment

Some Rare Good News

The Washington Post has an interesting article by Ellen Nakashima and Andrea Peterson on the Obama’s administration’s support for strong encryption. Nakashima and Peterson are reporting that the administration is backing away from seeking a legislative mandate that technology companies provide a means for law enforcement to decrypt their users’ communications.

Law enforcement departments are continuing their usual dark mumblings about going dark but these are the same warnings they’ve been pushing for 20 years and they can’t point to any cases where the ability to break encryption would have made a difference. Officials in commerce, trade, and technology departments are not persuaded either. They are recommending that the president explicitly disavow a legislative mandate. Even the law enforcement community seems to realize the issue is dead for the time being. An email by Robert Litt, the top intelligence community lawyer, suggests that law enforcement and intelligence should bide their time until “a terrorist attack or criminal event where strong encryption can be shown to have hindered law enforcement.”

Jeffrey Vagle tweets that we may be approaching another Clipper Chip moment.

We can only hope he’s right.

In many ways, law enforcement’s predicament reminds me of the situation advertisers find themselves in with the growing use of ad blockers. In both cases users were abused by outrageous actions on the part of the incumbents who are now howling about the end of the world when those users revolt with strong encryption or ad blockers.

Posted in General | Tagged | Leave a comment

Fixing the Size and Location of the OS X Finder Window

John Gruber points to a nice tip from Christopher Phin on how to fix the size and location of the Finder window in OS X. All you have to do is open a Finder window, resize it, place it in the desired location, and close it without clicking on any icons inside the window. New windows will have the desired properties.

Posted in General | Tagged , | Leave a comment

Compiling Emacs

Matthew Daly reminds us of something that’s easy to forget:

Here’s how to do it on OS X. Follow the link on that post if you want to compile in eww.

Posted in General | Tagged | Leave a comment