Sunday, December 10, 2023

"Coming To Terms With My Rape Fantasies After Being Assaulted", by KS Woodmansee

This piece was originally posted at The Establishment, on 16 November 2016, but it has since disappeared from the web (with that whole site), and does not seem to be archived at the Wayback Machine. I have found it worth reading myself, so I'm reproducing it here.


Coming To Terms With My Rape Fantasies After Being Assaulted

KS Woodmansee

I first learned about rape fantasies when I was a naive 17-year-old who had never even masturbated, much less considered power dynamics in sexual relationships. A friend told me that a girl he was interested in wanted someone to sneak into her bedroom and “force” her to have sex. I was intrigued, but quickly dismissed my interest in the topic. I saw it as aberrant, and the last thing I wanted was to be seen as weirder than I already was.

Monday, December 4, 2023

New Paper: Sexual Fantasy and the Eroticization of Evil

Abstract

Many people have sexual fantasies about being forced to have sex, or forcing someone to have sex. Several authors have argued that it is wrong to enjoy such fantasies: They lead to harm, or reinforce oppressive social structures, are liable to corrupt our character, or, mostly interestingly, are wrong in themselves, because they involve the eroticization of things that are wrong. I argue here that all such arguments fail properly to distinguish between fantasy and desire (despite authors' acknowledgement of that distinction), and between objects of desire and sources of arousal. The broader significance of this point is also discussed.

This paper is intended, in part, as a defense of claims about sexual fantasy made at the end of "Does Pornography Presuppose Rape Myths?".  

Download it here.

Tuesday, November 28, 2023

Schirmer's Early Intermediate Level Masterpieces

During the pandemic, I started teaching myself piano. Recently, I've been working my way through a book of 'selected piano masterpieces' from Schirmer's Library of Musical Classics: Early Intermediate Level. Of course, this is all public domain, and you can get the music online, but it's nice to have it in a book.

That said, it's also nice to be able to hear the pieces, and for that I've been using MuseScore, which is open source music notation software that will also 'play' whatever you enter into it. There's also a huge library of music that various people have uploaded into it, including a lot of the 'classics'. 

So here's a list of links to versions of the pieces in the mentioned book. Note that you can download these or play them directly from the site. Please let me know if any of the links should break.

Sunday, November 19, 2023

Comparing PDFs, Round 2

I've found an even better application for the idea mentioned in my last post. It can be very hard to see all the copy editor's corrections. Well, PDF comparison to the rescue! This script is slightly more complex, since I have a number of different files from them, one for each chapter. But not a problem. First, explode the PDFs into images using pdftocairo, as before. Now:

#!/bin/bash

#DEBUG=echo;
# basename of the images for this
# chapter from copy editor
TYP=$1;
# basename for 'original' pages
BASE=
SenseBook-19-IX-2023-Revised
# first page number of 'original' pages
XPAGE=$2;

for PG in $TYP*tif; do
    NEXT=$XPAGE;
    if (($XPAGE < 10)); then NEXT=0$NEXT; fi
    if (($XPAGE < 100)); then NEXT=0$NEXT; fi
    $DEBUG compare $PG $BASE-$NEXT.tif Comp-$NEXT.tif;
    XPAGE=$(($XPAGE + 1));
done

When that's done, it gives me the comparison images for that chapter. So now just:

convert Comp*tif Edited-ChN.pdf

And now it's easy to see where the corrections are:



Saturday, November 18, 2023

Comparing PDFs

I'm working on final corrections for my book Modes of Presentation, which I'm again typesetting myself via LyX and LaTeX (as I did Frege's Theorem and Reading Frege's Grundgesetze). I'm paranoid about something weird creeping into the book and have been comparing the new and old pages as I go. I figured there had to be a better way to do that than flipping back and forth between the two PDFs. All the more so given that doing so feels like one of those change-blindness experiments.

Well, Linux and the command line to the rescue. The ImageMagick suite contains a 'compare' command that takes two images and produces a new one that shows the differences between them. So all I have to do is explode the PDF into a bunch of page images and run the compare command on them. Here's a generic script to do it:

#!/bin/bash

# Uncomment to test with just a few pages
#D2="-l 10";
# Image resolution
RES=100;

pdftocairo $D2 -gray -tiff -r $RES NEWPDF.pdf New;
pdftocairo $D2 -gray -tiff -r $RES OLDPDF.pdf Old;
for NEW in New*tif; do
    BASE=${NEW#New};
    OLD=Old$BASE;
    compare $NEW $OLD Comp$BASE;
done

Here's an example of what you get:

It's not readable, but you can easily see where the changes have been made and, if need be, check the actual page. Mostly, I want to make sure that nothing dramatic has changed with the page breaks, etc, anyway.

Of course, you can also do this on other operating systems, but they do not encourage you, as Linux does, to use the command line.


Sunday, November 12, 2023

Setting Up Soft Synths in Linux---Even Windows Ones!

I've been wanting to have a keyboard at my office, so I can practice a bit when I have a free moment. Eventually, I want to get a digital piano, or something similar, but at the moment I don't have the room for that. So I've bought an Arturia KeyLab 88 Mk II for the time being. It's just a MIDI controller, so does not make any sound by itself. The plan is to use software synthesizers on my computer for the sound.

Sunday, October 29, 2023

Converting LaTeX to Word (docx)

I write my papers in LyX, which can easily produce a LaTeX file. (Indeed, LyX uses LaTeX as a backend when producing PDFs.) But most journals want a Word file or something of the sort. Well, it's John MacFarlane's pandoc to the rescue. Here's how to do it:

  1. Get yourself a LaTeX file.
  2. Use pandoc to convert to a docx file:
    • pandoc -o output.docx --citeproc --bibliography mybib.bib input.tex

The --citeproc option tells pandoc to produce a bibliography. The --bibliogrpaphy option tells pandoc where to find citation information. This can be used multiple times if you have multiple bib files, but it's easier to use aux2bib to create a local bib file with just the citations in that document.

‘No Way To Prevent This,’ Says Only Nation Where This Regularly Happens

Sometimes humor is the only proper way to express things.

Wednesday, October 25, 2023

"Does Pornography Presuppose Rape Myths?" Accepted at Pacific Philosophical Quarterly

What a relief! The paper had been rejected at another journal without even being sent to referees, so I was starting to get worried.

A somewhat longer version than what will be published is available on my web site.

Sunday, September 24, 2023

Is Philosophy at Brown Euro-Centric?

Every once in a while, I'll hear from a student, or group of students, who worry that the philosophy department at Brown is too `euro-centric'. I take this concern seriously. I'm sure there are ways in which what we do is artificially narrow. But this particular concern, it seems to me, is somewhat misplaced, and I want to take a moment to record why.

Monday, August 14, 2023

Some New Papers

My website has been acting up a bit, so it's been redesigned somewhat. That's finally allowed me to post a few new papers. These are:

  • Self-Reference: The Meta-Mathematics of the Liar Paradox (PDF)

    Central to the liar paradox is the phenomenon of 'self-reference'. The paradox typically begins with a sentence like:

    (L): (L) is not true

    Historically, doubts about the intelligibility of self-reference have been quite common. In some sense, though, these doubts were answered by Kurt Gödel's famous 'diagonal lemma'. This paper surveys some of the methods by which self-reference can be achieved, focusing first on purely syntactic methods before turning attention to the 'arithmetized' methods introduced by Gödel. It's primary lesson is that we need to be more careful than we usually have been about self-reference.

  • Sense as Mode of Representation (PDF)
    There are two main models for explaining Frege's notion of sense, both of which have their roots in the work of Sir Michael Dummett. One, nowadays most familiar from the work of David Chalmers, is broadly internalist and descriptivist in character. The other, most familiar from the work of Gareth Evans, is externalist and anti-descriptivist. I first consider the former project, arguing that Dummett anticipated Chalmers's version of the view, and that no version of this view is going to be defensible. The arguments are somewhat different from those familiar from the literature. I then consider Evans's view and argue that, while it is not vulnerable to many of the objections that have been made to it, it does not really succeed as an account of sense, because it forces us to abandon Frege's view that sense is an aspect of representational content. 

I've also updated the paper "Chalmers on Analyticity and A Priority", which will now appear in my book Modes of Representation, and "Speaker's Reference, Semantic Reference, and Intuition", which will appear in expanded form in the same book.

Tuesday, August 8, 2023

Musical Tempo Markings

I've not found an easily printable list of these online, so here's one. 

 

Larghissimo Very, very slow 20 bpm or slower
Solenne/Grave Slow and solemn 20 - 40 bpm
Lento Slowly 40 - 60 bpm
Lentissimo At a very slow tempo 48 bpm or slower
Largo Broadly 40 - 60 bpm
Larghetto Rather broadly 60 - 66 bpm
Adagio At ease, slow and stately 66 - 76 bpm
Adagietto Rather slow 70 - 80 bpm
Tranquillo Tranquil, calmly, or peaceful 80 bpm
Andante At a walking pace, moderately slow 72 - 76 bpm
Andantino Slighlty faster and more light-hearted than Andante 73 - 83 bpm
Andante moderato Between Andante and Moderato 92 - 98 bpm
Moderato Moderately 108 - 120 bpm
Allegretto Moderately fast, but less than allegro 100 - 128 bpm
Allegro moderato Moderately quick, almost Allegro 116 - 120 bpm
Allegro Fast, quickly and bright 120 - 156 bpm
Vivace Briskly, Lively and fast 156 - 176 bpm
Vivacissimo Very fast and lively, faster than Vivace 172 - 176 bpm
Allegrissimo or Allegro vivace Very Fast 172 - 176 bpm
Presto Very, very fast 168 - 200 bpm
Prestissimo Faster than Presto 200+ bpm

Monday, July 10, 2023

Creating New Divisions (New Types of Sections) In LaTeX

For those who just want the answer:

\newcounter{postsection}[chapter]
\renewcommand\thepostsection{\thechapter.\Alph{postsection}}
\newcommand\postsection{\@startsection{postsection}{1}{\z@}%
   {-3.5ex \@plus -1ex \@minus -.2ex}%
   {2.3ex \@plus.2ex}%
   {\normalfont\Large\raggedright}}
\newcommand*\postsectionmark{\sectionmark}
\newcommand*\l@postsection{\l@section}

 


For the book on which I'm currently working, I want to have special sections, labelled with letters rather than numbers, in the Postscripts. So, e.g., there will be sections 9.A and 9.B. This seemed like it would be easy to do. The book.cls file, on which my custom class file is based, defines sectioning commands like this:

\newcommand\section{\@startsection {section}{1}{\z@}%
    {-3.5ex \@plus -1ex \@minus -.2ex}%
    {2.3ex \@plus.2ex}%
    {\normalfont\Large\bfseries}}

The \@startsection macro is provided by LaTeX for precisely this purpose. It's documented here. So the obvious thing to do was just replicate that definition:

\newcounter{postsection}[chapter]
\renewcommand\thepostsection{\thechapter.\Alph{postsection}}
\newcommand\postsection{\@startsection{postsection}{1}{\z@}%
   {-3.5ex \@plus -1ex \@minus -.2ex}%
   {2.3ex \@plus.2ex}%
   {\normalfont\Large\raggedright}}

This defines a new counter, formats it, and then tells the new \postsection command to use it.

Unfortunately, this led to two problems. The first is that I got an error when generating the table of contents. LaTeX uses a series of commands like \l@section and \l@subsection to do that, and so it was trying to call \l@postsection to format these ones, and that wasn't defined. That's easy to fix:

\newcommand*\l@postsection{\l@section}

The second problem was weirder. The postsection headings were being printed like this:

9.A Against Russellianism
   Against Russellianism

I.e., the title of the section was being repeated. It took me a while to figure that one out. The problem turned out to be that LaTeX was, in effect, calling \postsectionmark to set the heading of the pages with the title of the section. And, again, that wasn't defined (though, given how it is called, it didn't throw an error but just printed the argument). So solving that problem, in the end, was also easy:

\newcommand*\postsectionmark{\sectionmark}

It's a bit unclear to me why \@startsection doesn't just define sensible defaults, but there you have it.

Sunday, April 16, 2023

Convert XZ File to GZ File

I've been having some trouble with XZ files when modified through KDE's ark program. So I decided to convert them all to GZIP files. To do that one at a time, by hand, would take forever. Hello shell scripting.

#!/bin/bash

#DEBUG="echo";
CWD=$(pwd);

XZFILE="$1";
if [ -z "$XZFILE" ]; then
   echo "No file given!";
   exit 1;
fi

XZFILE=$(realpath "$XZFILE");
TARGETDIR=${XZFILE%/*};
GZFILE=${XZFILE##*/};
GZFILE="${GZFILE%xz}gz";
NEWDIR="/tmp/xz2gz.$$";

echo $XZFILE;
$DEBUG mkdir "$NEWDIR";
$DEBUG tar -Jxvf "$XZFILE" -C "$NEWDIR";
$DEBUG pushd "$NEWDIR";
$DEBUG tar -czf "$GZFILE" *;
$DEBUG mv "$GZFILE" "$TARGETDIR";
$DEBUG popd;
$DEBUG rm -Rf "$NEWDIR";


Sunday, March 19, 2023

Compiling Ardour on Fedora

Ardour is an open source Digital Audio Workstation that runs on Linux, OSX, and Windows. They provide binaries, but require payment for them. I'll probably subscribe, just to help them out, but I decided to compile it myself first, so I could check it out. To do that, I had to install a number of libraries. Namely, these ones:

boost boost-devel glibmm2.4-devel sndfile-devel sndfile libsndfile-devel libcurl-devel libarchive-devel libcurl-devel liblo-devel taglib-devel vamp-plugin-sdk-devel rubberband-devel aubio-devel lv2-devel serd-devel sord-devel libudev-devel libusb-devel libusb1-devel cppunit-devel  libwebsockets-devel pangomm*devel liblrdf-devel sratom-devel lilv-devel lilv-{devel,libs} gtkmm*devel

I don't think I needed absolutely all of that, and you may need to install other things, too, but that will get you going.

Once the headers were installed, compilation was pretty painless.

Tuesday, February 28, 2023

Bash: Looping Over Filenames With Spaces

 The common:

for F in *; do ...; done

will fail if the files contain whitespace in their names. At least for files with just spaces, this works:

find -iname GLOB | while read F; do
   ....
done

https://stackoverflow.com/questions/7039130/iterate-over-a-list-of-files-with-spaces

 


UPDATE: It appears that newer versions of bash solve this problem and do what expect it to do:

#> for i in h*; do echo $i; done
ho ho

Monday, January 9, 2023

The Loudness War

Many years ago, record companies realized that most people prefer music when it sounds louder. (See wikipedia and this article.) This isn't just a matter of turning it up. Rather, what people respond to is the average loudness, and you can increase that by compressing the music: making the quiet parts louder, basically.