Simply wait until Friday afternoon, then close every bug WONTFIX.
The ones that people angrily reopen on Monday are the important ones.
Simply wait until Friday afternoon, then close every bug WONTFIX.
The ones that people angrily reopen on Monday are the important ones.
Jacob Weisberg has a new article in Slate riffing on Charlie Sheen’s recent woes that lists eight reasons why people care about celebrities. Reason #7:
Another version of this theory comes from a 2008 article in Scientific American, which attributed our celebrity obsession to status-jockeying. Some research findings: Men are mainly interested in gossip about men and women mainly interested in gossip about women; we care much more about those above us in social hierarchy than those below; we care more about people in our own age group; we care more about negative news (someone got arrested) than positive (someone won an award). According to Frank McAndrew, professor of psychology at Knox College, we instinctively collect information that can affect our social status. Negative information about higher-status, same-sex others is ammunition against biological competitors.
I don’t normally have much truck with Evolutional Psychology, but damn, if this one paragraph doesn’t explain the entire tech press as we know it. Of course, see also Reason #8.
I once listened to a professional SF writer lecture about his craft. A wonderful fellow — highly competent, writes great stuff, and a super nice guy to boot. His lecture included all sorts of useful and insightful tips. But the part that stuck in my mind to this day was what he said around how he handled backing up his work in progress:
“I have a folders for each story. Every day, when I’m done writing, I click Save As and save my story as ‘name-of-story date.doc’. Then every few weeks, I burn my story folders to a new CD…”
When confronted with a complex software-related problem, “regular” people develop all sorts of rational responses and workarounds that give those of us in the software industry the vapors. Nothing captures the disconnect between software people and regular people better than Yishan Wong’s breakdown of what’s wrong with OpenID:
To answer the most immediate question of “isn’t having to register and log into many sites a big problem that everyone has?,” I will say this: No, it’s not. Regular normal people have a number of solutions to this problem. Here are some of them:
- use the same username/password for multiple sites
- use their browser’s ability to remember their password (enabled by default)
- don’t register for the new site
- don’t ever log in to the site
- log in once, click “remember me”
- click the back button on their browser and never come back to the site
- maintain a list of user IDs and passwords in an offline document
These are all perfectly valid solutions that a regular user finds acceptable…
One of the tragic things about this disconnect is that Actual Good Ideas that software people take for granted end up taking decades to migrate out to regular people in a form that they can actually use. As an example, take backup — an absolutely critical feature that until fairly recently, regular people would implement (if at all) by occasionally remembering to burn some files to a CD. Pathetic. And by “pathetic,” I mean we the software industry, not the poor end-users.
Which brings us to version control. Version control is one of the few innovations in the field of software engineering that is an unalloyed good. Even a creaky, antiquated version control system is much better than having no version control at all.
Of course, version control systems are designed for software construction, which means they have tons of complicated features for nerds. Version control for regular people would look something like this:
This is what Apple appears to be shipping in OS X Lion. A simple, friendly, OS-level versioning service for apps to hook into. In one master stroke, Apple has just granted millions of people the same power software engineers have enjoyed for years: the ability to author without fear. This is huge.
Granted, it took about three decades to get to this point, but still — this is a great moment for anyone who does creative work. And if you don’t use OS X, cheer up. Any operating system worth using will be implementing something similar very soon.
Every winter, half the office gets taken out by illness. We call it “the Super Plague”, “the Creeping Crud”, “the Plague of Death.” It’s brutal.
Yesterday, I woke up feeling the tell-tale signs. Scratchy throat, low energy. Uh-oh.
But today I woke up feeling… totally fine! One hundred percent! Yes my friends, the famous Goer immune system, the same one that ensured the survival of prehistoric Goers, kicked in… and kicked ass.
So this is my post where I dance in the endzone, taunting the entire Team Virus defensive line. In your FACE, Team Virus! In your face!
Although it’s the Year of our Lord 2011, and we are blessed with no end of advanced publishing technology, many fiction writers practice their craft something along these lines:
"Title_of_Story Todays_Date.doc"Some writers are a little nerdier. They might use a specialized writing tool such as Scrivener or Ulysses. They might have automated backup set up. Or they might use an online word processor such as Zoho Docs and Google Docs which provide “free” offsite storage and version control.
But what if you’re a really nerdy writer? Nerdy enough to want to author in an open plain text format? Nerdy enough to want to check your files into a real version control system? Nerdy enough to run diff and sed and perform other text-munging feats of strength?
It all sounds promising, but there’s one major obstacle standing in your way: Standard Manuscript Format. Double spaced, 12pt monospace, one-inch margins, a running header with the author and title, you know the drill. This exacting print-ready format is easy to produce with a word processor, but if you want to stay outside of that world, you’re in for some serious pain. So what to do?
I choose… “Other!”
When it comes to exacting typesetting, nothing beats LaTeX. And it just so happens that M. C. DeMarco has designed a LaTeX document class named sffms that outputs Standard Manuscript Format.
DeMarco has documented sffms to the point where you can use sffms without actually knowing much about LaTeX itself. There’s a bunch of config-y header-y stuff at the top of the file. Paragraphs look like paragraphs. Occasionally you need to add a special command like chapter{In Which Stuff Happens} to create a chapter break, or emph{Look out!} for emphasis. You run the thing through latex and then pdflatex, and out comes a beautifully typeset manuscript complete with wordcount. You have to watch out for reserved LaTeX characters, but quite honestly, authoring a story in LaTeX is easier and cleaner than, say, hand authoring the same thing in HTML. It’s all quite civilized.
The one wrinkle is that the LaTeX toolchain really only works for print. All the TeX to HTML conversion tools I’ve tried are ancient and horrible. They’re particularly bad with sffms, which has some differences from a “normal” LaTeX article that trip up the ordinary HTML converters.
So if all you want to do is submit manuscripts to publishers, you are golden with LaTeX and sffms. But if you want anything even remotely reasonable to post to the web, you’ll need to roll your own converter. Or read on.
LaTeX is a great technology. But for a humane plain text format that converts nicely to HTML, we have to move forward in time a couple of decades. reStructuredText (aka reST) is a lightweight markup language developed by the Python community for technical documentation. Sphinx is a builder tool that transforms reStructuredText into different target output formats.
The nice thing about authoring in reST is that the source files are even cleaner-looking than LaTeX (let alone an angle brackety language). Paragraphs are paragraphs. Chapter headings are titles with underlines. Emphasized text is text surrounded by asterisks. Even if the entire Python documentation toolchain disappears, even if you’re looking at your story’s source files decades from now, your work will still be perfectly readable as plain text.
For the fiction writer, what Sphinx brings to the table is solid, easy to use HTML production. If you don’t like the built-in HTML templates, it’s straightforward to hack your own. Sphinx also produces EPUB out of the box, as should all writing tools worthy of your consideration. So to recap: reST is a really nice source format, while Sphinx provides you with lots of power and control over how the HTML and EPUB output looks. Looking good so far!
Sphinx also produces LaTeX output. The problem with Sphinx’s LaTeX output is that — surprise! — it’s designed to typeset a nice looking technical manual, not a novel. The results look nothing like Standard Manuscript Format. Ah, well.
But wait a second:
Hmmm…
So it turns out that it’s not terribly difficult to write a Sphinx extension, even if you are a Bear of Very Little Brain who hardly knows a lick of Python. Now available for public consumption: the sffms Sphinx extension. And yes, the source code is available on github.
To use this extension:
There is also very little documentation other than some comments in example files (though I’m working on that). In other words, this extension is for software engineers who also like to write fiction. Preferably software engineers who have used Sphinx before, and who have lots of patience.
You don’t have to be familiar with the sffms LaTeX class, but reading DeMarco’s original documentation might help you wrap your head around what sffms actually can do. My extension currently exposes almost all the knobs that are available in the sffms LaTeX class. For example, you can set sffms_frenchspacing = True in your Sphinx conf.py, which injects a frenchspacing command in the resulting LaTeX output.
If you want to kick the tires, here is a sketchy outline of what to do:
_build/sffms and run latex index.tex — twice.conf.py file. The configuration file contains all the available sffms configuration options with comments. The file also contains some minimal options for Sphinx in general. These other options are uncommented and you can ignore them if you are just working with sffms LaTeX output.The next order of business is to write some real documentation. Beyond that, I welcome any bug reports or suggestions for feature enhancements. I am neither a professional programmer nor very experienced with Python, so any help you can provide would be very… helpful. Thanks!
Hoisted from comments in $social_network, a friend of a friend says:
“And for what it’s worth, when it come to the Battleship film, I have a sneaking feeling that it’ll be a stormer. Look at this way: producer and director go into film exec’s office and starts by saying ‘look, we’ve got this idea to turn Battleship into a film, and it’ll star Rhianna.’ You’ve got to imagine that the rest of this pitch must have been of Godfather dimensions not to have been kicked into touch after that opening sentence…”
“Look, we’ve got this idea to turn the Pirates of the Caribbean ride into a film, and it’ll star Orlando Bloom.”
“Look, we’ve got this idea to turn…”
… and, actually, I’m out. Still, an intriguing theory.
It’s hard to understand how he does it. Scott Adams hasn’t worked as an engineer since when? The 70s? The early 80s? And yet even after all this time, he is still able to write cartoons that are pitch-perfect.
The only real explanation I can think of is that tech industry bullshit is so conservative and formulaic that even if you happened to master its syntax thirty years ago, you can plug in new buzzwords today and sound completely up-to-date.
That just raises the question — does all industry bullshit work like this? Is fashion industry bullshit today the same as fashion industry bullshit from the 70s? Or do different industries have wildly different bullshit mutation rates?
As an aside, is it just me or does Dilbert really match the color scheme of the site really well? I should start embedding these things more often.
When using OS X Mail on Leopard with IMAP, it is possible to get Mail.app into a bad state with respect to the server. When this happens, Mail will start displaying an extremely-hard-to-dismiss dialog that resembles:
Mail has undone actions on some messages so that you can redo the actions while online.
Additional information: The IMAP command “UID COPY” (to Deleted Items) failed for the mailbox “Junk E-mail” with server error: Command Error. 10.
For the benefit of the entire Internets, here is the solution.
Close Mail.app.
Open a terminal and cd ~/Library/Mail/.
In this directory is a subdirectory that is called something like IMAP-youremail@yourmailserver. (Or if you’re living dangerously and/or stupidly like me, Exchange-youremail@yourmailserver). cd into this directory.
cd .OfflineCache/ and rm everything in this directory.
You’re welcome!
Well, it turns out that The Grid runs on Solaris.
But that doesn’t mean we Mac users can’t get in on the fun! Just
download my TRON.terminal file, import it into your own Terminal,
and you’re off to the races:

And yes, it isn’t very sophisticated. Remember that when it comes to visual design, I only received
the standard sub-standard training.
Recently my friend Shelly went on a trip to Europe, where she had the opportunity to take a tour of the crypts of Vienna. The tour guide pointed out some skulls, one of which had incredibly poor teeth.
“Do you think this is the skull of a rich person or a poor one?” asked the guide.
A poor one, the tourists guessed.
“Wrong,” said the tour guide. It turns out that the entire upper class in old Vienna suffered from severe tooth decay, because unlike the poor, they had access to all the sugar they could eat.
No reason to bring this up, other than I was reminded of this story while staring at Paul Allen’s horrific visage. All that money to spend on lawyers, and not a penny for dental floss. Sad.