That’ll keep the riff-raff out

Of course, the tool this came from gives no indication whatsoever of what method it uses to determine readability, and sneakily inserts a link to an advertiser in the html they give you to copy, so caveat lector.

Update: After Googling around a little, my guess is that the tool uses the Flesch-Kincaid Grade Level readability test, both because it delivers the results in categories that roughly correspond to grade level, and because it’s a test that’s simple enough to calculate with a tiny program.  The formula (from the Wikipedia article) is:

0.39 \left ( \frac{\mbox{total words}}{\mbox{total sentences}} \right ) + 11.8 \left ( \frac{\mbox{total syllables}}{\mbox{total words}} \right ) - 15.59
 

It’s my infatuation with sesquipedalian verbiage I tells ya.

November 14th, 2007, posted by Joshua

You’ve Got Another X Coming

Here’s the result of a poll I took on one of the boards I frequent (a board for a group of City of Heroes players). Comments on the poll were disallowed, to try to prevent people from influencing each other’s views, though many eagerly shared their opinions with me via private message. It’s interesting how well this matches up to the 146,000 vs. 49, 300 Google Hits observed on Language Log.

You’ve got another X coming

 

Which sounds right?

>You’ve got another thing coming [ 37 ] ** [78.72%]
>You’ve got another think coming [ 8 ] ** [17.02%]
>Both sound right to me [ 2 ] ** [4.26%]
Total Votes: 47

November 13th, 2007, posted by Joshua

And Another Think

Language Log: Another thing coming

Google has 146,000 hits for “another thing coming”, most of which are not the Judas Priest song, vs. 49,300 for “another think coming”, which I’m pretty sure is the original expression. (Arnold Zwicky observed thing’s internet victory back in June of 2004 — though the totals were much smaller then, 21,400 to 5,830.)

This came up the other day in the car, when we were listening to the Judas Priest song, and it turns out that neither my fiancée nor my old college friend recall having ever even heard it as “you’ve got another think coming.” Moreover both were convinced, at least initially, that “another thing” just made more sense than “another think.”

November 7th, 2007, posted by Joshua

More Nerd Pr0n

SAGE: Open Source Mathematics Software

General and Advanced Pure and Applied Mathematics
Use SAGE for studying a huge range of mathematics, including algebra, calculus, elementary to very advanced number theory, cryptography, numerical computation, commutative algebra, group theory, combinatorics, graph theory, and exact linear algebra.

Recently I’ve found myself having to do real mathematics for the first time in many years. Surprisingly, despite being a programmer of actuarial math calculations, there’s not a lot of call for solving equations; the algorithms seldom change. This year, though, we’ve been rushing to implement changes for the Pension Protection Act which have made things very much more complicated and changed the way we calculate benefits in a big way. And what I’ve found is that I’d forgotten a lot of what I once knew.

So I decided to refresh my memory of a lot of the math I once studied as an undergrad, and, being a nerd one of the first things I did (after buying a couple of books) is to go fishing around for some software to play with. I was particularly interested in stuff that would let me model and graph equations, to try to regain some intuitive sense of their behavior, and I wanted something fairly easy to program. While it’s possible to write spreadsheets to validate the actuarial calculations I’ve been working on (and I have), it’s a bitch-and-a-half to read them again later or debug them. And if possible I wanted it to be open-source.

SAGE is what I found, and to my delight it’s yet another application that makes heavy use of Python. And, no, I didn’t go looking on a Python site to find these. Straight Google searches turned up both SAGE and the NLTK. It’s no coincidence that applications looking for a way to provide straight-forward but powerful programming tend to be built on or with Python, but it wasn’t one of my search criteria.

Again I installed it on both my Windows and Mac boxen, and again the Windows installation was a bit more straightforward, though this time not by much. In the case of Windows, you have to first install a VMWare player (free, but not open source) so that SAGE can run in its own virtual machine, and then you have to configure your firewall (I use ZoneAlarm) so that you can hit the web-server that SAGE runs (if you’re going to use the graphical interface, which is built as a web application). In the case of Mac, stuffit repeatedly had problems opening the .tar.gz file and I ended up just downloading and unzipping and untarring it from the command-line; after that running the setup.py script was straightforward.

Once you have it set up, it’s a breeze to use. You can run it from a command prompt (in fact, you have to start it that way), but the most convenient way to use it is to run a “notebook” sub-application that sets up a web server; surf to that server on your localhost and you get a graphical interface (web-page) that lets you create and manage “notebook” pages–basically persistable interactive sessions. You can even upload these sessions to public instances of SAGE running on the internet (for instance at the University of Washington math department); in fact a great way to explore SAGE is to surf there, create an account and start playing around.

Like most really powerful pieces of software, there is a learning curve to using SAGE, and it’s a steeper curve if you don’t know any Python, but a lot of the most basic stuff (assigning variables, solving simple equations) is pretty much exactly what you expect. Tip: Enter what you evaluate into the box on the screen (the boxes are for code). Shift+Enter to cause SAGE to evaluate what you’ve entered in the box and create a new empty box below, use your mouse to put the cursor in a box you’ve evaluated to edit it, and hover your mouse above the top border of a box until you see a bluish-purple line across the page then click to insert a new empty box prior to an existing box.

I’d also recommend starting with the SAGE Programming for Newbies link from the SAGE Documentation, even though it’s incomplete, rather than the SAGE Tutorial. The Tutorial jumps right into operator precedence, “rings” and other such minutiae without even stopping to explain what’s facing you at the prompt once you’ve completed the install. The SAGE Programming for Newbies is a much gentler introduction (and you can skip the parts that are too gentle, like “what is a computer”).

SAGE is also built to interface with other standard mathematics software packages, like Maple, Mathematica, MATLAB, and so forth, if that floats your boat. I don’t have access to them, but I can see how that would be useful.

What can I say? I find this kind of thing really, really cool.

November 7th, 2007, posted by Joshua

Nerd Pr0n

Main Page - NLTK

NLTK — the Natural Language Toolkit — is a suite of open source Python modules, data and documentation for research and development in natural language processing. NLTK contains Code supporting dozens of NLP tasks, along with 30 popular Corpora and extensive Documentation including a 360-page online Book. Distributions for Windows, Mac OSX and Linux are available.

I ran across this the other day, and I was just blown away by it. I’m a big fan of Python (and use it whenever I get a chance professionally) as well as being interested in linguistics, so being able to write Python code to manipulate this stuff was just…so…cool. It’s startling how much time I can waste just counting things in the provided corpora. I’m really looking forward to playing with it more, and using it to teach myself about Natural Language Processing as well as new bits of Python that I haven’t fully come to grips with yet (e.g. the generator functions). It really pushes all my ooooh! Shiny! buttons.

I’ve successfully installed it and got it to run some of the examples (including the graphing demo) on my Windows box and my Mac OS X laptop. As is unfortunately typical, although it seems to run better on the Mac, installing it on Windows was actually a quite a bit easier. Yeah, yeah, pre-compiled binaries are the work of the devil, but for Joe end-user–even for a relatively sophisticated Joe end-user–it’s a pain to get partway through, realize that it won’t compile because it’s missing some compilers, have to go get the developer toolkit and install that, and then get back to building the thing you were trying to get to work in the first place. I didn’t have any particular problems, other than the time it took to download 183 mb of stuff that I’ll probably barely use, but it was pretty painful compared to double-clicking on an exe and then clicking a couple of buttons. I’m sure hard-core Mac users are so used to the pain that they don’t even perceive it as pain, and I’m certainly not saying that the developers of the NLTK ought to devote any time at all to improving the installation, but if you’re thinking of playing with this and you aren’t a hard-core Mac user, I’d suggest that if you have access to both kinds of system, at least to get your feet wet you should try it in Windows first. You’ll be messing around with the actual NLTK code a lot faster.

November 6th, 2007, posted by Joshua

Adieu, OED Online

Parting is such sweet sorrow. I love the OED Online, and I don’t quite know what I’m going to do to replace it, but I don’t quite love it enough for $395 a year for an individual subscription. You folks with your fancy institutional subscriptions don’t know how good you’ve got it. So when I got the notice that my subscription was expiring and they were going to charge me for another year, I bit the bullet and canceled.

Actually what really irks me is that I have the OED 3.1 on CD-ROM, but it stopped working one day, as their asinine anti-copying protection scheme (which calls for relicensing the software every 90 days) screwed up and made the program unlaunchable.

November 6th, 2007, posted by Joshua

It lives again!

It’s been a little less than a year since I’ve posted to this blog, but it’s been a busy year for me. I met a woman, fell in love, proposed to her, bought a house with her, moved in together (along with her teen-aged daughter), and my beloved cat died. During all that, I pretty much stopped blogging except for the occasional LJ post, but now that things are settling down again I’ve felt some of that old itch to write stuff down.

So here we are again… Once more into the breach, dear friends!

November 6th, 2007, posted by Joshua

Another day, another upgrade

Testing the latest WP bugfix release.

November 6th, 2007, posted by Joshua

Boston accent?

What American accent do you have?

Your Result: Boston

 

You definitely have a Boston accent, even if you think you don’t. Of course, that doesn’t mean you are from the Boston area, you may also be from New Hampshire or Maine.

The Midland

 

The West

 

North Central

 

The Northeast

 

Philadelphia

 

The Inland North

 

The South

 

What American accent do you have?
Take More Quizzes

I guess, though my accent is definitely rhotic (I pronounce the r’s as written) and completely lacks the intrusive r (idea(r), saw(r)) that makes someone sound like a Kennedy, something the quiz isn’t designed to pick up on.

November 28th, 2006, posted by Joshua

Tenser, said the Tensor: Take on Me

Tenser, said the Tensor: Take on Me

Does this post have a “Linguistics” tag on it? I guess I should add some linguistic content. When I saw the words printed out on the screen, it struck me for the first time that the title of the song isn’t a very natural-sounding English sentence. Here’s what I mean. English phrasal verbs that take direct objects like take on have the property that the object can appear either before or after the particle. That means the following are both good sentences:

(1) We’ll take some new employees on

(2) We’ll take on some new employees

It’s a little bit different with pronouns, though—if a phrasal verb has a pronoun as its direct object, the pronoun must come before the particle. Otherwise it sounds wrong (to my ear):

(3) We’ll take them on

(4) * We’ll take on them

My two cents on this is that I recall hearing several J-Pop songs that incorporate “Take on me” as an untranslated bit of English, which is quite common in J-Pop. A quick Google turns up i ~crossin’ the star~, and CHUUZU MII (themselves bits of untranslated English), as well as a cover by Utada Hikaru. I assume that wherever it turns up it’s a quote of the a-ha song, since as the Tensor points out it’s not natural-sounding English, but I wonder if the Japanese lyricists understand that it’s odd. I have the (probably incorrect) impression that it’s being used as if it meant something like “Stop and look at me”, though I can’t point out a specific song, just a vague recollection of some anime theme.

November 26th, 2006, posted by Joshua