Attack on the Scientific Method

I just read a horrifying article in Nature. The article, Scientific method: Defend the integrity of physics, recounts an effort among some theoretical physicists to redefine the scientific method so that it no longer requires experimental verification or even that a theory needs to be testable in principle.

The issue is that much of string theory, an entirely theoretical construct, is not testable, even in principle. It has been widely criticized on those grounds. The string theorists are now arguing that it should be enough that a theory be “elegant” and that philosophical and probabilistic arguments should suffice.

What could go wrong? Even a meager imagination can dream up plenty of ways that such a move could end in disaster. An easy example: an elegant, untested, and untestable theory predicts that global warming is (or is not) a threat and we take an action (exploding the world economy or ignoring the threat) based on that theory that turns out to be wrong1. Would you trust a politician or vested interests with such a theory. Experimental verification is required precisely because it gives us confidence that a given theory is true.

Whatever you think about logical positivism, it seems to me that it’s correct in its tenet that ideas or theories that can’t be verified or falsified, at least in principle, are meaningless. If I announced to the world that magical beings inhabit our world but that you can never prove their existence or nonexistence, I’d be widely ridiculed as delusional. I might even come up with some mathematics that’s consistent with the existence of such beings. I’d still be ridiculed.

To me, the issue is clear. If you tell me that your theory isn’t testable, I’ll tell you it’s not science.

Footnotes:

1

Save your stamps. This is an entirely hypothetical example and says nothing about whether or not global warming is a threat.

Posted in General | Tagged | Leave a comment

Multiple Info Buffers

Marcin Borkowski (mbork), who’s an occasional commenter here on Irreal, has an interesting post on his info workflow. He likes to have multiple info buffers open at the same time. That may seem a little odd but as Borkowski explains, he is often working on something in Org mode, say, and needs to check something in the Elisp manual.

It is possible, of course—it’s Emacs, to have multiple info buffers but it’s a bit clumsy. Borkowski wanted to be able to pop up an info buffer immediately whenever he needed it. To do that, he wrote a bit of Elisp to open an additional info buffer (or switch to an existing one) for any info manual. Then he wrote some additional code to call his function for his most often used manuals and bound them to quick key sequences.

A nice solution and another great example of how Emacs makes it easy to adjust it to accommodate your workflow. Head on over and take a look at his code. It may be something that you can use too.

Posted in General | Tagged | 2 Comments

Using Emacs to Run a Course

Via Sacha I found this really interesting post by John Kitchin, whose work Irreal has mentioned many times. In this post, Kitchin writes about how he used Emacs to run a graduate course in Chemical Engineering. Emacs was used to handle everything in the course.

When I say “everything,” I mean everything. As Kitchin says

Every lecture was given from Emacs, every assignment completed in Emacs, turned in from Emacs, graded in Emacs, returned in Emacs.

Kitchin provided each student with a custom Emacs environment that included all the tools he uses for interfacing with Python and for making engineering calculations. In addition, he included a package he calls techela that interfaces with git and handles student assignment submission, quiz and exam taking, retrieval of grades, and other similar chores.

Course administration generally takes a significant amount of a professor’s time. Kitchin’s set up eliminates much of the busy work. Read the post to get an idea of how pervasive Emacs was in the course. As usual, Kitchin exploits Emacs in novel ways that makes his work much easier.

Posted in General | Tagged | Leave a comment

Happy New Year

Have a Happy New Year and be careful out there.

Posted in General | Leave a comment

Safely Loading Your Emacs Configuration

Over at the Emacs Reddit, tending asks how to fall back to a known good Emacs configuration when initialization gets an error. His complaint is that if there’s an error early in his .emacs file, the initialization is aborted and he’s dumped into a default Emacs that doesn’t have his usual environment. We’ve all been there.

Last time I looked, no one had a solution for falling back to a known good configuration but Renan Ranelli pointed to his solution for the problem. Ranelli’s approach is to divide his configuration into several files—as many Emacs users do—and then have a small “bootloader” that loads each file but within a condition-case that captures any errors and records them. The rest of the files (assuming no further errors) are loaded normally. At the end of the loading, any errors are reported but most of his environment is available.

It’s a very nice solution and, if you already have your configuration divided into separate files, very easy to implement. Take a look at his init-bootstrap.el file. You may find you want to do something similar. You could even use the same idea to implement the solution tending was seeking.

Posted in General | Tagged | Leave a comment

Using AUCTeX

Piotr Kaźmierczak has a nice post on why Emacs is the ultimate LaTeX editor1. The idea is that adding AUCTeX to the greatest editor in the world gives you an incredibly powerful LaTeX environment.

Kaźmierczak is a Mathematician so his writings are of exactly the type that TeX/LaTeX were designed for. He gives some examples from one of his papers showing how it’s possible to preview the finished product within an Emacs buffer while still being able to see the markup. This is, as he says, very useful.

He also mentions using flymake with AUCTeX to have Emacs check your LaTeX syntax on the fly, and RefTex mode to manage your references and generate a table of contents to help you navigate through the document. He shows his configuration for using these utilities if you’re interested in setting up a similar environment.

These days, as I’ve said before, I use Org mode for almost all my writing. The nice thing is that Org is easier to use but you can embed LaTeX commands within your document so you still have almost all of the LaTeX functionality available. If I were to write a longer paper with a lot of mathematical content, I’d probably fire up AUCTeX. Kaźmierczak’s post makes me want to do that just for fun.

It’s a great post and if you have any interest in writing in LaTeX, you should give it a read.

Footnotes:

1

The post is from 2010, but Kaźmierczak has added updates occasionally so it’s pretty much up to date.

Posted in General | Tagged , | 2 Comments

LaTeX vs. Word

In an act that I’m sure was designed to throw me into a fit of rage, Markus Knauff and Jelica Nejasmic published An Efficiency Comparison of Document Preparation Systems Used in Academic Research and Development in PLOS ONE. The paper purports to compare the efficiency of Word versus LaTeX in academic document preparation.

Most everyone here knows my feelings about Word but that doesn’t mean I’m not open to a reasoned analysis of the relative merits of Word and LaTeX in producing technical documents. Sadly, this paper is not that analysis. Claus Wilke has an excellent post on the problems with the paper. You should definitely read it.

The thrust of Wilke’s post is that the design of the experiment discussed in the paper is very weak and does not support the rather strong conclusions that the authors reach. Most of the problems stem from the authors’ failure to distinguish between layout and content. For example, one of the tests involved reproducing exactly a page of continuous text (including title, author, and address lines). But, of course, LaTeX users don’t work that way. They download a style sheet from the journal they’re submitting the paper to and let the style sheet worry about the layout.

The most infuriating thing about the paper is their explanation for—what they consider—an anomaly: the fact that LaTeX users express less frustration and enjoy using their system more than Word users. They posit that the poor deluded fools who feel that way must be suffering from cognitive dissonance. Because, after all, it couldn’t be that LaTeX actually was better for it’s users.

Their other conclusion is that journals—at least non-mathematical journals—should stop accepting LaTeX and insist on Word or PDF. This even though they admit that LaTeX is easier for the journals to integrate into their work flow and produces a better product. I find their reason for this conclusion particularly offensive. Since their study concludes that it takes longer to prepare a document with LaTeX than it does with Word, researchers should be forced, forced, to use a document preparation system other than the one they’d like because then they’ll have more time to do research and improve the common weal. As if researchers were slaves. It’s a disgraceful argument.

UPDATE: There’s an interesting discussion of the paper on the Org-Emacs list. In particular, see the post by Christophe Pouzat. He obtained the original data and reanalyzed it. His findings are very revealing.

Posted in General | Tagged , | 2 Comments

A New Emacs Blog

Oleh Krehel (abo-abo) has a new blog, (or emacs. There’s only a few posts so far but they’re really excellent. For example, his initial post discusses his packaging of ace-window into a library so that other packages can use the ace-window technology to pick windows to operate on.

I really like ace-window and use it all the time. I didn’t know, though, that with 【Ctrl+u】 it will swap the current window with the selected one and with 【Ctrl+u Ctrl+u】 it will delete the selected window. So I learned something useful from his very first post.

Abo-abo has made many contributions to Emacs other than ace-window so he has interesting things to say. Welcome, abo-abo. We’ll be looking forward to many more posts.

Posted in General | Tagged | 5 Comments

Quicklisp Client Update

Xach has an updated quicklisp client available. Just call

(ql:update-client)

to get it.

Posted in Programming | Tagged , | Leave a comment

Going to the Top and Bottom of iBuffer

I use iBuffer a lot. That’s probably because I get a little OCD about stray buffers eating up memory for no reason. With my new 16 GB laptop, buffers eating up memory isn’t much of a problem but it’s too late for me to reform my ways.

I especially like to clean up after I upgrade my packages. That process always leaves a Compile-Log buffer at the top of the iBuffer list and a Packages buffer at the bottom. Of course, when I navigate to the head or tail of the buffer I end up in the wrong place—not at the head or tail of the list.

If that seems a little familiar it’s probably because Magnar Sveen had similar problem with dired and solved it with a bit of Elisp. So I shamelessly ripped off Sveen’s code and made a few trivial changes so it does the same thing for iBuffer that Sveen’s did for dired. If you’re having the same problem, the code is below. It’s almost embarrassing to post it because it’s such a rip off but Emacsers who don’t have the wherewithal to figure out which key map to use or who don’t know Elisp may find it useful.

;; Stolen from Magnar's code to do the same thing for dired
;; http://whattheemacsd.com/setup-dired.el-02.html
(defun ibuffer-back-to-top ()
  (interactive)
  (beginning-of-buffer)
  (next-line 3))

(defun ibuffer-jump-to-bottom ()
  (interactive)
  (end-of-buffer)
  (next-line -2))

(eval-after-load 'ibuffer
  '(progn
     (define-key ibuffer-mode-map
       (vector 'remap 'end-of-buffer) 'ibuffer-jump-to-bottom)
     (define-key ibuffer-mode-map
       (vector 'remap 'beginning-of-buffer) 'ibuffer-back-to-top)))
Posted in General | Tagged | 2 Comments