Category: Tech Writing

  • Thoughts on the Semi-colon

    (A college friend asked for my thoughts on the semi-colon, and I was happy to throw out some)

    I made screenshots of Bryan Garner’s Modern English Usage about semicolons. 

    Conventions for punctuations change with each generation. When editing that Clay Reynolds interview, I noticed that he punctuated things very strangely. In fact, he had taught English grammar and punctuation at the college level for over a decade and read all sorts of grammar books while pursuing his Phd. He used lots of commas and runon sentences throughout the interview. True, he died before he could go over everything again (and so a certain number of these anomalies were simply errors), but I was aware that he viewed punctuation and sentence length much differently than I did. Although he used  semi-colons, he didn’t use many of them, preferring instead to make lots of commas (which I try to avoid doing). 

    He also used Oxford commas (i.e., putting a final comma in a list of items), so that meant more commas in his text. I tend not to use the Oxford comma; that’s just the way I had learned it in high school and saw no reason to change it even though I recognized that sometimes it made sentences seem ambiguous (and I had to be careful about that). So I was more prone to use semicolons.

    (Lately I’ve been using the Oxford comma more often and have noticed that it allows for more variety in sentence structure, which may or may not be a good thing).

    I love semi-colons, but I don’t use them that much. I also use parenthetical statements more than the average writer would.  I also use m/n dashes for certain long sentences.

    I went over some recent writing of mine (both fiction and nonfiction) and found fewer semicolons than I would have thought.  Often I use  parentheses and m/n dashes  instead to  relieve the strain of overly long sentences.

    EXAMPLE: I like semi-colons; on the few occasions when it’s necessary to use them, I sometimes resort to parentheses (but only if the thought  inside the parentheses is simple).

    (NOTE: I really like starting out a sentence with a short statement such as “I like semi-colons;” and then continuing the thought. Also, at the end, I could have also used an m dash instead of the parenthesis).

    With the example, I could have easily put a period there instead of a semi-colon, but I thought it deserved to be one continuous thought. Formal writing tends to avoid sentence fragments, but sometimes a fragment can convey meaning effectively.

    When reading aloud, it should be easy to know when to breathe. A semi-colon makes it easier  to know when to breathe. Good sentences should be light and fluffy and occasionally strange. Although it’s true that semi-colons can result in longer sentences, the semi-colon can relieve the overall burden of breathing/reading  without making the flow of sentences seem too staccato.  

    Horray for semi-colons! I see no reason to avoid them unless they start making your sentences overly long. Also, I would try to avoid using semicolons more than once in a single paragraph if you can help it.

    Some authors of the past have used  multiple  semi-colons  and parenthetical statements in a single sentence to convey long-winded things (I’m looking at you, Faulkner and Proust!) These techniques can work up to a point. I loved reading Proust with all his twists and turns and cascade of mental associations, but found Faulkner’s prose in Absalom, Absalom to be absolutely insufferable. In contemporary times, I don’t think you could get away with that anymore (you don’t want people switching to social media in the middle of an interminable sentence!)

    As I mentioned, my arsenal currently  includes a mixture of semi-colons, parentheses, and  m dashes when trying to convey a longer thought. But that introduces all sorts of punctuation complexities. Semi-colons generally belong outside the quotation marks even if it looks strange. Occasionally, just to avoid having to deal with a tangle of punctuation rules, I will  iron the whole thing out into multiple sentences  even if it ends up making me sound like a dufus.

  • Fun with MS Word Wildcards

    It’s been a while since I’ve done a geeky post (see my April post about setting up WordPress using the latest themes and blocks.).

    But every so often (maybe once a month or two) I end up confronting a technical issue which I absolutely must solve, and I cannot find the answer on the web. People say that half of being an IT guy is being able to use search engines to find the information you need. I generally agree, but sometimes the problem is very odd or maybe you don’t know exactly what problem you are seeing or even if you are using the incorrect terminology. Also, search engines are not as helpful for advanced geeks. Almost all the problems you encounter are complex and have an unusual set of circumstances that no forum thread is going to replicate exactly.

    Partly the problem is having too many sources of information and being unable to winnow the relevant information. Sometimes postings on user forums are just not relevant. Sometimes you just lack enough information or smarts to understand the answer when it is staring right at you. Yes, I admit it: personal stupidity is often the primary barrier to a solution.

    Describing the Problem: A Messy OCR Conversion

    Recently I have been using a book scanner (CZUR ET18Pro) which scans the page and then uses the Abby Finereader engine (but NOT the actual software) to handle OCR conversions. It generally works great for books, but not great for scans of journal articles apparently. The scan can be converted into text pretty accurately, but you have two more issues: First, CZUR puts the text content for each page into a separate frame object. Second, some pages (such as pages of a journal) don’t have enough spaces between paragraphs, causing CZUR to insert paragraph marks at the end of EVERY line. (So if a paragraph has 6 different lines, instead of having 1 paragraph mark at the end, it has 6 different paragraph marks).

    About the frames problem, I was quickly able to find a solution from the search engines. You could manually remove each frame or you could run a simple VB script to globally remove these frames using (like here or here) .

    The second problem — paragraph marks after every line of text is a pretty hard one. I spent days figuring it out. I have two possible solutions: either I manually adjust all the line breaks or I must come up with a way to clean up these OCR documents.

    Manually adjusting the line breaks is tedious, but not terribly hard. I just have lots of pages to do; ideally I would have a way to globally clean up these documents with MS Word’s Find and Replace. I’ve certainly used Find and Replace for documentations — even for complex substitutions. But I need to write some find/replaces that won’t cause any further damage and do it in a way that is easy to repeat.

    Ultimately I know that I’m going to have to search for a single paragraph mark and replace it with nothing. That is the Big Substitution — and also the potentially most destructive. The trick is protecting the paragraph marks which you want to be there. But how? You should convert these instances to a temporary value which are immune to the Big Substitution — and then after the substitutions are complete, you can convert this temporary value back to a good paragraph mark.

    Also, the order is important. If you get the order wrong, you may create extra work.

    Microsoft Office offers some powerful functionality for Search/Replace. Indeed Word offers a limited number of preset search parameters. The first question: Do I “enable wildcards” in the search box?

    I quickly realized that enabling wildcards offered more options for text processing. It included a lot of syntax for regular expressions. It still is complicated to write your strings to replace, but the big stumbling block is: how do you search for paragraph marks when wildcards are enabled?

    Curiously, this is not documented on the MS Word documentation. Here is the magical voodoo answer from this great article:

    You may wish to identify a character string by means of a paragraph mark ¶. The normal search string for this would be ^p. ^p does not work in wildcard search strings! It must, however, be used in replace strings, but when searching, you must use the substitute code ^13.

    Finding and replacing characters using wildcards By Graham Mayor: (mirrored here)

    You read that right: When searching, you must use wildcards and use ^13. But when you are trying to reintroduce paragraph marks into the MS Word file, you must not use wildcards and instead use ^p.

    Another gotcha I noticed is that if you remove too many paragraph returns, it will corrupt the files. Instead of getting a clean substitution, the MS Word file is totally blank except for a giant mishapen blob of dark lines and dots.

    Here is the series of steps I devised.

    1. Correct the obvious scanning errors, most of which will be highlighted. Usually they are hyphenated words which are broken up into two separate lines.
    2. With wildcards turned on, you will need to manually search for optional hyphenation
      • Goal: remove optional hyphenation
      • Find: ^-^13
      • Replace (leave blank)
      • Manually or Globally? Globally. (this operation works pretty accurately)
      • Comment: Do this first because it messes up the substitutions later. Warning: this will not uncover some of the hyphenated words which were broken into separate lines.
    3. Remove MS page breaks (some of these were accidentally added). Make sure to uncheck Use Wildcards for this find/replace. If it is easier, you can just copy the wildcard in the Find section.
      • Goal: remove all page breaks
      • Find: ^m
      • Replace (leave blank)
      • Manually or Globally? Globally
      • Comment: Uncheck Wildcards and choose Page Breaks from the dropdown under “Special”
    4. Remove MS section breaks.
      • Goal: remove all page breaks/section breaks
      • Find: ^b
      • Replace (leave blank)
      • Manually or Globally? Globally
      • Comment: Comment: Uncheck Wildcards and choose Section Breaks from the dropdown under “Special”
    5. Page through the entire chapter and add an para mark + $sectionbreak$ whenever there should be a thematic section break.
    6. Manually page through the chapter and convert para marks followed by a capital I (Often it just so happens that the word I starts a line without it necessarily being the start of a new paragraph. You need to manually use Find/Replace to make sure you are doing only when I is the beginning of a new paragraph. You substitute these instances with $realparagraph$I Yes, that is an actual capital I after the $ sign
      • Goal: find/replace all new para + I
      • Find: ^13I
      • Replace $realparagraph$I
      • Manually or Globally? Manually
      • Comment:
    7. Now search for every time a para mark is followed by a capital letter. Note that the capital I is not included in this range of values
      • Goal: search for all new line paragraphs except capital Is
      • Find: (^13)([ABCDEFGHJKLMNOPQRSTUVXYZ"“])
      • Replace: $realparagraph$ \2
      • Manually or globally? Globally. It still will correct some things wrongly, but you can fix these.
      • Comment: Find has grouped the two terms with parentheses which allow you to reference them in the Replace statement (Note the \2 with the space before the backslash. I included a regular quote and beginning smart quote in the Find statement, but I think only one of them actually worked in my document. There are a number of false positives, so I recommend doing this manually.
    8. Now for the Big Substitution. Eliminate all single instance of a paragraph return at the end of a line
      • Goal: Eliminate all single instances of a para return
      • Find: ([!^13])^13([!^13])
      • Replace \1 \2
      • Manually or Globally? Globally (but Have that Ctl-Z ready!)
      • Comment: This searches for three elements where the middle element is a paragraph return, but the preceding or succeeding element is NOT a paragraph return. (The ! means “not”; the parenthesis will group things into element 1 and element 2 which are referenced in the replace statement. This step is very tricky. The Find statement prevents MS word from removing every paragraph return — just the ones at the end of the line. I can’t understand why the Find statement requirements 3 (instead of 2) elements, but somehow it never seems to yield satisfying results.
    9. Now you will reintroduce paragraph marks where they are supposed to be
      • Goal: Substitute the holder $realparagraph$ with an actual paragraph return. You must turn off Wildcards!
      • Find: $realparagraph$
      • Replace: ^p
      • Manually or Globally? Globally
      • Comment:
    10. Now you will add extra spaces (in the form of paragraph returns around the section breaks.
      • Goal: Add extra space around section breaks. You must turn off Wildcards!
      • Find: $sectionbreak$
      • Replace: ^p$sectionbreak$^p
      • Manually or Globally? Globally
      • Comment: When I have finished cleaning the MS Word version, I actually use a cut-paste operation to import them into Docbook XML using the Author mode of XML Oxygen editor. I will be replacing the $sectionbreak$ into custom html code, so I don’t need to convert them here. I just want it easy to see where the section breaks are.

    There you have it. I tested this thoroughly on my test file. Over the next week I’ll do it with different files. Maybe I’ll uncover some anomalies or extra steps, but this is probably enough (I’m guessing).

  • A friendly exchange between an technical author and reviewer

    This fun thing is something I published in 2000 on my old site — and has since become dead. A mixed review of a famous book on programming prompts a reply from the author and a friendly
    discussion about book reviewing

    My Original Review (August 2000) about the book Mastering Regular Expressions by Jeffrey Friedl

    I haven’t read the book from cover to cover but have read parts of it. I don’t deny that it is informative and occasionally helpful (especially if you come from a perl background). But the book as it stands is not appropriate for someone starting out in regular expressions. Instead it provides a lot of depth as far as how regular expressions are used in specific tools and all the different standards for regular expressions.

    But a lot of this information on regular expressions is not relevant or necessary for composing plain vanilla bash regular expressions. I suspect that the majority of readers will find a few chapters helpful, but will skip over at least a few chapters that have no bearing on their work. To spend so much time in a book talking about the different implementations of regular expressions is to beg the question about whether you should read a general book or instead read a book about the implementation of r.e. specific to your computer language.

    I have two complaints. First, the book does not try to teach you the art of writing regular expressions (it assumes a certain level of familiarity already). As a learning book, it may not be satisfy your needs. The second complaint is that the book doesn’t include an adequate reference section or at least a section you can refer to when trying to write your own regular expressions. I found myself flipping back and forth from pages to try to find the aspect of regular expressions I need. A more methodical reference chapter or appendix is sorely needed.

    Don’t get the impression I am not recommending this book. It is a fine book; only be sure that you thumb through it at a bookstore to make sure that the kind of material it presents is what you are looking for. For me it was not. The best teaching book I’ve found to explain regular expressions is Practical Guide to Linux by Mark Sobell. It’s old, but it explains regular expressions, sed, awk and grep better than any book, including this one. This book presented the clearest examples of any computer book I have encountered.

     

    The Author Responds (December, 2001)

    This evening I noticed your review of my book “Mastering Regular Expressions” on Amazon. I’m sorry that you didn’t get out of it what you desired of it. Perhaps if you had more of a need for advanced regex use, it would have been more valuable.

    In your review, you make two specific complaints. The first, “does not try to teach you the art of writing regular expressions”, makes me wonder what book you’re revewing. Teaching that art is the heart of the book, and the 100 or so pages that make up chapters 4 and 5 do nothing but teach that art. Perhaps they were part of what you didn’t read (you don’t learn an art by flipping around and reading tidbits like it’s a Reader’s Digest 🙂

    You also comment “(it assumes a certain level of familiarity already)”. Well, the later chapters assume you read chapter 1, which starts out from scratch.

    I find your comments puzzling because as you said yourself, you haven’t read more than “parts of it”, so how can you make any claim about what it doesn’t do? Sure, I know it can’t be all things to all people, but you really knocked it right where I’m the most happy with it.

    You’re right about your second complaint, though (needs a better reference section). My original thought was that I wanted to teach the thinking of regular expressions, and leave most tool-specific stuff to your tool’s manual. Why would someone want to pay for a copy of what they already have? But I find it’s a common desire, so in the 2nd edition I added 25 pages to Chapter 3 (which is really the lost child of the first edition), with a much expanded use of the “=> XX” page references that make the page flipping (which you can never eliminate) much more bearable. Anyway, I do hope that the book is able to prove its value to you sometime.

     I Respond to the Author (December 2001)

    Thanks for your reaction. It is an honor to receive something from the author himself!

    I write reviews of Oreilly books very often, and actually I request review copies from them every so often.

    The first thing I should say is that I consider myself a nonprogrammer, and it’s quite common for me to write reviews of subjects about which I know absolutely nothing. I’m a technical writer and I focus more on the “readability” and organization of the book.

    So I am writing as a nonexpert. And to be honest, I haven’t used regular expressions much, although I imagine that the time for that will come.

    I remember reading the first few chapters (perhaps a little too breezily , I’ll admit), and enjoying them and finding the information useful. The examples were also very good. I just found the detail about the different engines overwhelming and not really relevant to my current needs. (For some people, this information may be the best part of the book,I”ll admit).

    With programming books, one’s reaction to them changes over time. Some books I initially think are horrible, and then I find myself referring to over and over. With others, it’s just the reverse. Sometimes I feel I should write “updates” on amazon about what a numbskull I am.

    So please don’t get the impression that I was panning the book.

    Regex is such a broad subject, and every programming language seems to have their own quirks. The changes you mentioned sound interesting and could probably make an excellent book even better.

    On another note about not reading,etc. An anecdote. My friend (a professional book reviewer) often would choose books to review on the basis of how little reading was required to actually write the review. On some books, he wrote the review while barely opening the book! While this seems dangerous, sometimes initial impressions can be helpful.

    The Author Responds to my Response (Dec 2001)

    I’m not so sure that one should consider an email from me to be an honor — most of my friends procmail me away 🙂

    I appreciate your detailed reply, Robert, though I still feel that your review is unjust. It’s not that it says negative things (for certainly, any book can’t be all things to all people, nor even do what it intends to do perfectly). It’s that I feel that *had* you used the book as it was intended (and as the preface — the book’s instruction manual, so to speak — suggests), your concerns would have been answered and your review would have more accurately reflected the contents and usefulness of the book. (Such a review certainly may well have included negative comments that came with your deeper knowledge of what you were were reviewing — I know that the book is far from perfect.)

    I’ve seen a few negative reviews of my book over the years that have basically said “I wanted to book to be X, and it wasn’t!”. In every case, “X” was something that the book was not intended to be, so while I wish the reviewer had had a better experience with the book, such a review does serve a purpose to clarify to the reader of the review what the books does and doesn’t do.

    I guess what it comes down to is that if one feels the needs to begin a review with “well, I’ve not really read this book”, I feel one probably shouldn’t be offering a review at all. I realize that putting out more reviews gets you brownie points at Amazon, but it’s really not fair to me or to your readers. At least, that’s my feeling.

    Regex is such a broad subject, and every programming language seems to have their own quirks.

    Ha, if you still have a copy of the book, see the first sentence (and footnote) of the last paragraph of p62 🙂

    If you thought my book was “excellent”, your review very much does not give that impression. It gives the impression that the book is very bad at doing exactly what I belive the book is best at doing (bringing a novice up to speed, and teaching the *art* of writing a regex). As it’s written, I belive your review does a disservice to me and to all the readers of your review.

    I’m aware that there are people who do their job poorly. It’s sad, in any field, and all the worse when it hurts others. I try not to do mine here at Yahoo poorly, nor mine as an author. (My overriding principle when I’m writing was given to me by an author friend who said “you do the research, so your readers don’t have to”. People are paying *their* *money* for my book, so I’ll be dammed if I’m going to give them anything but my very best effort.)

    The 2nd edition concentrates mostly on the popular scripting languages (VB and other .NET Framework languages, Java, Perl, Python, Ruby), and less on the old Unix tools (awk/sed/lex). If it happens to land on your desk, I hope you find it useful.

    A Friend Makes a Very Valid Point (Dec 2001)

    Bobby, this is very interesting/amusing to read. I don’t recommend responding to him again, but perhaps you might have clarified that the books I choose that “require the least reading” are either 1) books with very little text to read, 2) reissues of books I’ve read before, 3) anthologies of literary material that I’m often already familiar with, or that only require a sampling of stories to be read for a broad impression, or 4) reference encyclopedias that are not meant to be read cover to cover, but which have certain important entries. He might think I idly try reviewing technical things I have no knowledge of. Actually, it’s my prior knowledge of a subject that enables me to review certain books quickly without much effort.

    (Now it can be revealed; this critic/friend is Michael Barrett, book and movie critic extraordinaire!)

    I Become Philosophical (August 2002)

    I am very sympathetic to this author’s defensiveness about his book. One has only to look over the hundreds of rave reviews on amazon to realize that the book is one of the most praised books on publishing today. As Andy Oram writes, “Yet Mastering Regular Expressions came out and became an instant hit. The Perl community (where regular expressions had taken hold most strongly at the time) treated Friedl as a hero. His talk at the first O’Reilly Perl Conference filled a large hall right up to the back doors. We sold out all copies of his book at the conference, even though it had released six months before, and brought in another batch of copies that were promptly sold out as well. Five years after publication and 22 years after the death of McLuhan, the first edition still sells several hundred copies per month and is continually recommended on mailing lists and in journal articles.”

    During the year 2000 I reviewed lots of books that I only half-understood (or at least wouldn’t be able to really understand until I tried it out myself). Often one’s gut instincts about a book are right; sometimes they are not. Sometimes a book which didn’t seem user-friendly at first turns out to be exactly what you need. Conversely, some books which look useful may in fact be too simple or too esoteric to be useful.

    So I went back to the book and read a few more chapters, afraid that I had seriously misjudged this book. Well, surprise, surprise! I not only stood by my previous opinion, I found myself justifying my original decision to review a book I hadn’t read all the way. To review a technical book requires, in all fairness, that you read the book from start to finish. That seems like an obvious point, but it is completely wrong. It overlooks the fact that reviewing is often about reporting what the book contains and doesn’t contain. With technical books, how do you criticize? You are reading a subject that you are probably a novice at, and the author is certainly an expert. Aside from pointing out technical errors (and from what I’ve heard, all technical books seem to have their fair share of them), the critic can talk about writing style, logical approach to the subject and whether the book covered the subject in a way that newbies could understand. My original review was not delivering harsh criticism to the book really; it was merely suggesting some reasons why this particular book might not be useful for some people.

    As a matter of fact, Friedl has a nice breezy writing style that is a delight to read. And indeed, it looks like a novel—the book is full of prose. Chapters 4 –the real crux of the book–gives a step-by-step guide to solving problems using regular expressions, explaining the syntax and showing some great examples. Chapter 5 is about optimizing, and the rest of the book hovers on the topic of Perl. My main problem was and still is that I couldn’t find what I needed whenever I picked it up! In contrast, whenever I wanted help on deciphering or writing regular expressions, I found myself referring to the much simpler “ Practical guide to Linux” .The author admits as much in his initial response that the first edition lacked an adequate reference section, and it seems likely that the second edition will address that difficulty.

    While Mr. Friedl has every right to respond to his critics, I have to wonder whether he is a shade too indignant. No book can win over everybody. Even if a book comes close to achieving that, it will no doubt attract a crowd of critics eager to deflate the hype, to burst the bubble, to rain on the parade. Of course, I intend to do no such thing. But amidst a chorus of lavish praise, the temptation of a critic to inject a modicum of dissent becomes irresistible.

  • Tutorial: How to control the crap which appears on your Facebook wall

    facebook

    facebook3

    Screencapture courtesy of the wonderful SnagIt software.

    That said, I have to admit that I am not telling half the story here. First, you can use the dropdown menu to fine-tune who can see these wall posts. You can even create customized groups that can’t view your wall.

    Facebook is adept at hiding  options and interfaces. I have to admit that its improved privacy settings look  sleek; they have simplified a lot so the user can find  things. On the other hand, I didn’t even know this options screen even existed until 30 minutes ago when I accidentally pressed Options and then Settings and then Settings a second time (yes, you have to do it twice, or the pretty screen won’t appear).

    Sometimes checking or unchecking one option can reveal or hide several others. You won’t really know what you’re missing until you manually try every one.

    And Facebook’s  help is atrocious. First, I did a cursory check on the Facebook site. Looks clean and organized, right? Wait, shouldn’t how to use the Wall  appear first on the list of FAQ?  And if the site is adept at hiding configuration options, wouldn’t you expect that the answers to the more complex questions would contain screenshots and videos?  In fact, when I expanded all the questions for this section, I didn’t find a single screenshot. Not one.

    fb2

    One of the problems is that Facebook stores everything in a database, so the views of help topics can’t be arranged or prioritized manually.  Everything is hidden or spread out into several pages. The information is atomized, and you have to click several links to see the relationship between two various screens. Also, Facebook uses a lot of terms whose meaning might be unclear.   What is a Wall? What is a post? Unfortunately  Wall is used in many contexts, so it’s easy to mix up help topics on how to write on other people’s wall with how to control one’s own.  The help topics for Wall are  hierarchically arranged, and that’s good, but it’s also too much for one page. That means having to click onto several pages to see the topics, and when that happens, you start yearning for a better arrangement of the help topics themselves.

    I don’t have a whole lot of advice for Facebook (except that maybe they could commission a few full-fledged tutorials or web demos).  Facebook is already on top, so they don’t need to worry about web traffic or teaching users how to do stuff. My main complaint is not with the help, but the fact that you can’t personalize your home page. For example, out of my 200 friends  I am mainly interested in posts from about 10 people, so I want to see their posts before  anyone’s else’s. Also, I almost never want to see posts from applications (Farmville, etc) and rarely wish to see Facebook  announcements.  Facebook has some algorithm for hiding and showing posts, but the user doesn’t really know what it’s doing. It’s black box technology.  I would love to have more transparency about how  Facebook  is filtering this information. Are they guessing? Are they counting clicks? Or are they relying on explicit indications of interest from me? 

    The user will never know.

    I’m not mentioning  my main objection to FB, which is that they prevent you from archiving message and older posts or even accessing them. (I wrote about that in my blogpost Pushback on Social Media). 

    Related: Here’s how to specify that a certain FB friend cannot make a comment on your microposts.  Privacy Settings –> Custom –> Customize Settings. On Things Others Share, select Can Comment on Posts –> Choose the dropdown list –> Custom Edit –> Hide this From and type the name of the individual in the text box. It should prompt you for names. Choose Save Settings. Whew! I didn’t realize it was so complicated!

  • Something I am really proud of!

    I’ve been writing a technical book on Plone and uncovering all sorts of user issues and bugs. I’m particularly proud of finding this one: it’s something that software developers would never notice – and yet would bug the living crap out of anybody creating content.

    One little known fact about technical writing is that you uncover all sorts of software bugs and usability issues during the process of writing documentation. I spend a lot of time researching and testing…maybe even more than I do actual writing.

  • Google Docs is ….useless?

    I just discovered something NASTY: the HTML export on Google docs is totally useless. BR tags everywhere instead of P tags. What was google/writerly thinking?

    Over the last year or two I have been keeping more and more of my personal documents and record keeping  on Google Docs, mainly for safety reasons. Recently I wrote an entire essay on Google Docs, intending to transfer it over to my blog when I was done.

    But alas! When I pasted over to Live Writer, I see nothing but carriage returns (regardless of whether I copy/paste with my mouse or export to HTML). I even tried copying HTML content over to the WordPress edit window. Still awful.

    My solution was to transfer the text content over to NoteTab Light (a free program), then copy/paste it over to Live Writer. Problem Solved!

    (Even though I didn’t need to use them in this particular case, NoteTab Light has several text processing functions that has saved my skin many times. I endorse this product highly and have even paid for the professional version of the product.  But the free version NoteTab Light is every bit as good.

    Google’s stupidity explains why I do most of my composition & editing with Live Writer & WordPress.  I use Note Tab Lite for raw editing, Personal Brain for outlining & organizing & mindmapping and XML Oxygen for structured writing.

    June 15 Update: The situation is not as bleak as I feared. Old Google Docs did have this problem, but Google Docs recently improved to a version that is more HTML friendly. Strangely though, the content is contained within SPAN tags instead of P tags (which might be almost as bad).  For older documents, I see a mix of BR tags and P tags, so it may depend on how content was created/pasted.

  • Docbook, Pandoc, Rants and Some Decent Free Fonts

    I’m working on a user manual and am in the process of discovering several tools to do the job.

    Here’s RSTA,  an online restructured text editor which lets you output into HTML and PDF. This is mainly of interest to people in the plone and python world.

    Python programmer extraordinaire Mark Pilgrim explains why he codes in HTML and not Docbook. From the comment section, I learn about Pandoc, a great program for converting different forms (LaTex, RST, markdown, HTML, Docbook, gosh – just about everything!).

    Here’s the Pandoc user guide and an online converter. The key, I’m guessing is how it handles unicode and document fragments, but I look forward to finding this out.

    Pilgrim also does a rant about the restrictive fonts:

    I know what you’re going to say. I can hear it in my head already. It sounds like the voice of the comic book guy from The Simpsons. You’re going to say, “Typography is by professionals, for professionals. Free fonts are worth less than you pay for them. They don’t have good hinting. They don’t come in different weights. They don’t have anything near complete Unicode coverage. They don’t, they don’t, they don’t…”

    And you’re right. You’re absolutely, completely, totally, 100% right. “Your Fonts” are professionally designed, traditionally licensed, aggressively marketed, and bought by professional designers who know a professional typeface when they see it. “Our Fonts” are nothing more than toys, and I’m the guy showing up at the Philadelphia Orchestra auditions with a tin drum and a kazoo. “Ha ha, look at the freetard with his little toy fonts, that he wants to put on his little toy web page, where they can be seen by 2 billion people ha h… wait, what?”

    Let me put it another way. Your Fonts are superior to Our Fonts in every conceivable way, except one:

    WE CAN’T FUCKING USE THEM!

    Soon — and I mean really fucking soon, like “this year” soon — there will be enough different browsers in the hands of enough different people that can use any possible font on any possible web page. And then a whole lotta people will start noticing fonts again — not just Your People, just also Our People. People who couldn’t tell a serif from a hole in their head, but they’re gonna be looking for new fonts. People who are just savvy enough to be tired of Comic Sans will be looking for a new font to “spruce up” their elementary school newsletter, which, in an effort to Love Our Mother (Earth), they now publish exclusively online.

    A typeface designer responds:

    As a type designer I feel like I have to step in and say something here. First off the majority of typefaces designed in the past twenty years haven’t been made by big foundries but by individuals working on type in their spare time. Second, typefaces receive no copyright protection in the United States so copying font files and renaming them for sale is pretty much legal. Third, fonts have been available on peer-to-peer networks since before the days of Napster and in 2000 it was estimated that only one out of fifty instances of a typeface file (postscript or TrueType files) was paid for, and it has only gotten worse.

    I have over forty commercial typefaces available for sale through various type re-sellers around the world and my average yearly income off the typefaces is $115, even though I regularly see my typefaces in use on the web, on TV in print and in video games. I used to think that one day I’d have a nice supplemental income from my typefaces but the reality of the situation is that people like you don’t value the effort that goes into making a typeface. I haven’t designed a new typeface in eight years now and I have no desire to do so. Why should I when you’re going to be a big bitching twat you greedy self-centered tantrum throwing teenager?

    Actually, the whole thread has a lot of expletives and rants, but lots of issues come up.  Actually, the most valuable information I gleaned from the threads were the names of some decent free fonts: Gentium, Day Roman, Yanone Kaffeesatz, Yanone Tagesschrift, Delicious, Aller, Charis SIL, Doulos SIL, Junicode,  Linux Libertine, the Liberation and Droid families, and Computer Modern (or, more likely, its Type 1 version, Latin Modern).

    See also the Open Font library (here’s the beta version, which seems buggy—the search results only gives 1 result). Here’s a general list of the most famous free fonts, separated by license type.

    Here’s a good (and indispensable) article about how to use the font-face css rule to use any of these awesome free fonts. Here’s another how-to. Here’s a nice demo.

    Update: This browser support table shows that Chrome 3 (the current version) does not support embedded fonts, and that Chrome 4 will be released in 2010. Also, Internet Explorer only supports EOT fonts. (I’m not 100% sure what that means; according to the link in the previous paragraph, EOT is a Microsoft implementation of fonts. Certainly there has to be a conversion tool? Update 2: this font wiki has this information and more).

    The free font issue is important for distributing ebooks. (Here’s a mobileread discussion). The .epub standard supports embedded fonts (I think), and having a unique font makes reading a more enjoyable experience when reading on a  Kindle or Nook.  I am growing weary of the same font on my Sony PRS 505 reader.

    I guess I haven’t mentioned it yet, but I’m working on two creative commons ebooks and am working on a user guide to publish on Booksurge and possibly as an ebook as well. For that reason, I’ve been learning a LOT about docbook. Overall, I’m happy with its flexibility even though the learning curve was steep –and also I’m depending a little too much on a on a noncommercial license of Oxygen XML editor. If I wanted to do something commercial, I’d have to pay $349 for a full version and $199 for an Author version (which lacks some  XML/XSLT tools but has an easier interface). Frankly, Oxygen is incredible, but I’m close to making commercial use of it.

    Serna XML editor (the free version) is good for authoring, but I haven’t figured out how to validate it using various  schemas and DTDs. Apparently, Serna uses python plugins to enable validation of various XML languages like docbook and DITA. It looks like Serna only supports 4x versions of Docbook; I could be wrong.

    By the way, after I finish one or two ebook projects, I plan to write an article about using docbook for ebook creation.

  • Job Interview Test

    Yesterday I interviewed for a technical writer job. Three people interviewed me,  and overall it went well. At the end, they asked me to take a short written test. This was a little unusual, but it went fine. They handed me a written set of instructions and left me alone with a laptop. On the laptop were two open windows: the company’s software and an empty  MS Wordpad file.  As they were leaving me,   I interrupted:

    “Wait, how much time do I have for this?”

    “There’s no time limit,” the woman said. “Just do it at your own pace.”

    “So where is your office – where do you sit?”

    “Oh, we sit at the office at the opposite side of the hallway.”

    “So how do I let you know when I’m done?”

    “You can just tell the receptionist.”

    “But what happens if I need help?  If I don’t understand something in the exercise or if the laptop malfunctions, how do I reach you?”

    “I’ll come back to check on you in about 10 minutes.”

    “By the way, do the people in the cubicles nearby know how to reach you?”

    “I think so.”

    “When I finish with the writing test, what do I do?”

    “Just save your work and tell the receptionist.”

    “So is it ok if I save the work on the local desktop…and name it ‘Robert Nagle test’?”

    “That’s fine.”

    “By the way, does the laptop still have the writing samples from other candidates?”

    She laughed. “Maybe. I can’t remember. Actually, you have Internet access, so you might be able to access the company’s public documentation as well.”

    “Ok,” I said. “I got it. You’ll check with me in a few minutes.”

    “Yes, good luck.”

    Hours later, I realize that this one minute preliminary  conversation  was probably more important than the written test itself. Part  of being a good technical writer involves  understanding directions and making sure you’ve been given adequate  information to do the  work on your own.  At my last job, the  primary  subject matter expert (SME)  lived in Australia; as a result, I had to structure my entire work schedule around the fact that he was available for questions for only 30-60 minutes at the end of my day (because of the time difference).   I usually spent between 4:00 PM and 6:00 PM gathering various questions to ask him via chat or email before I left. The next morning when I checked my email, the answers were usually waiting for me (to my amazement and relief).

    Looking back at this writing test, I realized that I made two mistakes:  1)I should have asked for the interviewer’s cell phone number in case I needed help and 2) I should have run my completed writing sample through the Google Docs spellchecker before finishing it. In my defense, I did check to see if the laptop had a copy of MS Office 2007 installed; if I did, I almost certainly would have used its amazing spelling/grammar check tool.

    Did I pass? I don’t know; I am still waiting to hear from them.

    **************************

    Robert Nagle  (idiotprogrammer at gmail.com) is a Houston-based technical writer. You can view his resume/writing portfolio here.

  • Book Review: Practical Plone 3

    With the proliferation of content management system (CMS) software, a need has arisen for good manuals. When a CMS starts out, user forums are usually the main place for help;  then someone will start a wiki, and a few people will write tutorials on their blogs. But if the user base for a CMS grows rapidly, docs quickly go out of date, and it becomes hard to figure out which parts of the docs still apply for the latest release.  That poses a risk for someone wishing to buy  a technical book (or  write  one).  Technical publishers use several methods to future-proof their books. This includes: focusing on core features unlikely to change between releases, anticipating future development, publishing smaller books that require less time to produce and group writing. Group writing (assigning different people to contribute chapters) has been a popular method because it reduces the burden on one person. As long as the assigned topics don’t overlap and are well organized, group-written technical books can be extraordinarily helpful and can be released quickly, as in the case of  Packt Publishing’s latest Plone book (Practical Plone 3).

    First, a little background. Plone is a python-based CMS that has a large user base and many enterprise  features. It is deployed on many nonprofits and governmental sites and historically has been easier to secure than LAMP CMS’s like Drupal. Data is stored in an object database (ZODB)  as opposed to relational databases (although adapters have been written to connect to mysql, postgresql, etc).   Plone is based on a platform called Zope, and in fact Plone’s version 3  release in 2007 implemented many architectural changes.
    Packt has published several Plone books already (including Martin Aspelli’s well-regarded 2007 book Professional Plone Development), and the latest book is bigger, covers more topics and should interest a wider audience.  

    About half of the pages (and a third of the chapters) in this 565 page book contain screenshots to demonstrate functionality which can be controlled with the web interface. However, the book’s audience is not really for novice users or content creators (despite the book’s subtitle that is a "beginner’s guide"). If you wish for something like that, try  the excellent Users Guide to Plone —downloadable for free). Practical Plone 3 covers basic topics in Chapters 4-6, but it focuses on several  topics which are not easy to find the answers for. This book would be useful for the website administrator or the developer or designer trying to customize Plone for an organization or company.

    First, Plone includes lots of features not enabled by default which are hidden in the administration menu (called "Plone Site Setup"). Unlike Drupal (which seems to have a massively complex control panel), Plone Site Setup looks deceptively simple, but lots of things are hidden under the hood. So you need to know where to look.   Practical Plone 3 explains how to use a lot of these features:  versioning, managing groups and roles, creating custom workflows and using the portlet manager to control what sidebars appear on the left or right of the web page.

    Plone differs in many ways from LAMP CMSs both in architecture and concepts. Usually, these differences remain hidden from users. But  understanding these  differences can help you  understand why things work differently in Plone. For example, Plone uses the folder-file metaphor for content objects. They can have states and properties; they can be copied/cut/pasted into other Plone folders even though they don’t really exist as files or folders on the file system itself. Another easily overlooked feature is the extensive metadata fields that exist for content types. (it exists in a secondary horizontal tab  like this one ).

    The book chooses (wisely) not to talk too much about third party Plone  products (i.e., plugins). But it does go into great detail about using PloneFormGen (an auto-generator of web forms) and cache-fu (an indispensable product for caching performance). These two sections were very well done.

    The last half of the book describes  how Plone development proceeds, beginning with creating  new content types. In Chapter 16, the book covers how to use a graphical UML tool called ArchGenXML to create a new content type based on the builtin content types. Here you use Archetypes, a Plone-specific way of building content types. (Archetypes have been around since Plone 2). After you use the graphical tool to create UML, the ArchGenXML script will generate the product code for you to upload to the server’s file system.  Later, in Chapter 17, there is a good walkthrough of using Generic Setup to export configuration changes you make in the Zope Management Interface (ZMI) into an XML file on the file system.  That allows you  to replicate site configuration more easily and  keep configuration information outside of the database.   Chapter 17 also  covers the Zope 3 architecture underlying Plone and how to set up browser views in ZCML configuration files and viewlets and portlets.

    Chapter 18 covers the creation of themes and css for a Plone site. This process is slightly complicated because you make your changes to a themed product which is later installed/enabled from Plone Site Setup. The book walks you through the steps of using a python script called paster to generate a series of files which make up the theme product. Editing the css for the theme is possible only if you understand how viewlets work and which files you are supposed to edit (it is not simply a styles.css file).

    The last two chapters cover caching and performance tuning. Overall, well done.

    In general, this is an excellent guide and it covers a lot of ground thoroughly. Unlike the Drupal series of books by Packt (which struck me as flimsy–they have 12 separate books!), this book  combines  all the important aspects of Plone 3 into  a single book.  Everything in the book struck me as important–none of the material seemed like padding. The usage information in the first section was very well done (although it probably needed better coverage of Kupu, the rich text editor).  The section on workflows was great, and the explanation about Zope 3 views seemed well done, but the look-and-feel chapter looked imposing. If editing a CSS class means having to edit a theme product and re-add it, that might discourage doing too many tweaks (especially on a live site!). It would have been nice to have an appendix summarizing the configuration files, location of important objects in the ZMI and CSS classes.   I did not see any chapter  about uploading images or multimedia files on the file system; that seemed to be outside of the book’s scope.   I am not a developer (I just play one on TV), but there seemed enough meat in the advanced sections to address many contexts.

    Finally, it’s worth pointing out that the plone.org site has a well-organized documentation section. The book may lack a good section on kupu, but plone.org has  several help topics about Kupu.  (In fact, many of the book’s contributors also produce documentation for the Plone.org site). One doesn’t read this kind of book for narrative; nonetheless,  most of it was easy to read and easy on the eyes.  Except for chapters 17 and 18 (which were a little deep), the rest of the book got straight to the point quickly.

    In summary: this book is a substantial guide which covers a lot of intermediate and advanced topics. Very well written and organized (with lots of illustrations), but the section on themes was hairy and even a little confusing

    *******

    Robert Nagle is a technical writer and fiction writer who lives in Houston.  He blogs about culture and technology on his idiotprogrammer weblog.

  • Ken Circeo: Technical Writers can be interesting (sometimes)

    I was reading a small piece from a Microsoft person about how he came to be a technical writer when I decided to plow through his archives. The stuff I found just cracked me up.

    Technical Writer (and ex-Microsoft worker)  Ken Circeo on meeting Bill Gates:

    At first, I thought it might be a Gates clone, no shortage of which are roaming Seattle. Guys who think that they, too, will become richer than most countries if they wear thick glasses and refuse to comb their hair. But no, this was Gates himself. The glasses, the hair, the voice. Especially the voice. As he fired a few technical questions at one of the guys working the booth, I noticed beads of sweat forming on the booth worker’s brow. I saw him lick his lips like a fourth-grader hoping to come up with the right answer, and I felt his anxiety. How would I like it if my boss to the sixth power started questioning me about the technology I write about? I’d be cool, right? Wrong. I’d say my name, my team’s product, and then start shaking like Ralph Kramden trying to answer the $99,000 question.

    ..

    My incidental meeting with Bill Gates doubtless had a greater effect on one of us than it did on the other. I’m fairly certain that Gates didn’t go home that night and say, “By the way, Melinda, you’ll never guess who I shook hands with today: Ken Circeo, the tech writer!”

    Here’s another piece on the perils of giving tech support to friends and family members:

    While it’s true that I may know trifle more about PCs than the average user, please don’t mistake me for a real technician. Computer technicians are paid to do things  like clean your registry, adjust your page file size, and remove your spyware. I know they charge a lot, but that’s because most of them know what they’re doing. When you get your computer back from them, the bill is too high but your PC runs better. It’s like taking your car to a garage. Same thing. Furthermore, real PC technicians seem to enjoy tinkering with computers. It’s like fun to them. One Microsoft guy, Adam, actually smiles whenever he opens the case. It’s eerie. I mean, what’s there to get excited about? An extra expansion slot? For crying out loud, Adam, it’s not a box of Twinkies, it’s a computer! Silicon, wires, jumpers, and fans.

    But Adam loves it. He’s knowledgeable and patient, and, like the mechanic who works all day fixing cars at the garage and all night at home fixing his ’68 Charger, Adam has found his passion in life. He proved that last summer when a bunch of us went jet skiing at the lake. It was an expense paid, all-afternoon event.

    On the way back, I said, "Anyone know where Adam was? I didn’t see him at the lake." To which someone replied, "He said he was going to overclock an old PC."

    In addition there is awkwardness when something goes wrong:

    Me: Geez, will you look at that?
    You: What?
    Me: I thought I saved that file before I changed it, but now I can’t find the original.
    You: Is it important?
    Me: You might say that.
    You: Can we get it back?
    Me: Do you have a recent backup?
    You: Backup?

    He debunks some myths about working at Microsoft:

    Myth: The software is free.

    Reality: Not quite.

    Microsoft employees can buy software in the Company Store for pennies on the dollar. When my friends find out about this, the typical reaction is disbelief that the stuff isn’t free. Fair enough. After all, free products for employees is pretty much standard policy across the American landscape. Kodak people get free film; Duracell workers get batteries; and don’t tell me the Duncan Hines employees aren’t driving home with trunkfulls of cake mixes. The difference with Microsoft is that the black market for pirated software continues to thrive. Free software to employees would make it awfully tempting for ne’er-do-wells to pad their pockets on the sly. I’m not sure what the keeps the execs at Duncan Hines awake at night, but I don’t think cake mix piracy is high on the list. ("Psst! Hey, bud…sell y’ some nice coconut mixes real cheap…")

    He discovers that safety precautions are not as sophisticated for hot-air balloons:

    I casually asked the 55-year-old balloon captain with whom I’d entrusted my life for an hour, "So I guess you get people losing water bottles and watches over the side on occasion, eh?"

    He looked at me like I was from outer space. "No, never," he said.

    Hey, it wasn’t like it was a bad question. It could happen. Not that there was any safety lesson to begin with either. You’d think that before you take off, they’d go over a few rules like:

    • Don’t throw anything overboard or you could hurt someone on the ground and we could get sued
    • Don’t lean too far over the basket or you could fall out and that tends to smart
    • Don’t stand too close to the propane tank because when we turn it on every 30 seconds or so, it’s DANG HOT!

    Nope. No safety lesson. I guess that would tend to detract from the romantic notion of floating off into the blue. It just seems a bit odd to me that in America you can drive down the road in a car surrounded by 2,000 lbs. of corrugated metal and a half-dozen air bags for protection, but if you aren’t wearing your canvas seat belt, it’s a $118 fine. But go ahead and float half a mile above the world in a balloon with nothing to hold you in but your sense of balance, and that’s just fine. No problem at all. Take the kids, why don’t you? Go have a great time!

  • Lots of Things to Blog About..and No time!

    I’ve been behind on blogging, but actually have a lot to blog about.  Here’s a longer-than-usual post to satisfy your daily Nagle fix.

    This may be the first year that the North Pole will be ice-free reports CNN’s Alan Duke.

    Will someone please explain to me why William Kristol is allowed to write for the NYT? Here and here are some reasons for him not to.

    I know people are panicking about gas prices, but keep in mind that in the last year, prices went up from $3 to $4.  Worrisome, but not enough to get in a tizzy about.

    Another screed by Michael Dean. Tidbits:

    It has been said that democracies generally exist for around 200 years, 300 tops, before they collapse. That they are theoretically a great form of government, but with a major flaw. Democracies allow lazy people who don’t want to work to vote in people who will let them not work. We are at the beginning of the end of this. At best, it will morph us into some sort of half-broken version of socialism. If we’re unlucky, a malevolent dictatorship.

    But I would love to see media producers and programmers have a little more self-policing, in the form of creating useful content that educates, promotes love of your fellow human and contains far less “kill everyone, blow stuff up, get thin, get laid, get rich” B.S. (If anything they’ve got it backwards, if it HAS to be regulated, I’d rather see more sex and less violence. You can show people dying graphically brutal deaths, get a PG rating, and get on TV. But if you show a sweet couple romantically making love, you get an R or NC-17 rating, and can’t get on TV.)

    I’m far more offended by a diamond commercial than a nice art film with a little nudity, because the art film is honest and diamond commercials lie. Diamond commercials basically say “If you don’t give us four months salary now, you’ll die sad and lonely.”

    WriterRiver, a Digg for Technical Writers. Here’s a great technical writing blog by Tom Johnson.  Here’s what he says about what users really want:

    When it comes down to it, here’s what I think most users truly want:

    • A comprehensive online source they can search and quickly find answers.
    • Short quick reference guides (about 3-5 pages) in an attractive format.
    • Short 2-minute video tutorials for the most confusing tasks.
    • An ability to interact or contact a real person either virtually or physically.

    (On a somewhat related topic, see my piece on why users don’t read documentation).

    In his piece about myths of technical writing, Johnson comments:

    1. Technical writers spend most of their time writing.

    Totally untrue. Most tech writers spend about 10% of their time writing. The rest of their time they spend learning applications, noting bugs, providing usability feedback, structuring their content, setting up styles for their help files, troubleshooting their tools, strategizing help deliverables, training new users, formatting and laying out their content, updating existing content, meeting with project team members, and occasionally playing ping pong.

    (I’ve written about this before on my thoughts about technical writing ).

    a few days ago the NYT had an article about a laptop bag that is checkpoint friendly for airport security. Several other sites wrote similar articles, all touting the groundbreaking design. Notice anything missing from the article? That’s right–the bags haven’t been produced, and they don’t even have a picture of the new design. Horray for vaporware!

    Liquidlogic, a weblog by a fiction writer and videographer

    Jamendo has released 10,000 free albums. I’ll be doing a major blog post about that soon.

    2 weblogs which have great things for webloggers (free templates, tools, plugin announcements, etc).

    Weblog tools collection and Daily Blog Trips.

    I saw 4 terrific films in the last week. two by Harold Lloyd (Gun Shy and Safety Last). One-armed swordsman, an amazing 1967 Hong Kong martial arts flick. Last night I saw another hilarious swashbuckling classic Army of Darkness by Samuel Raimi (who directed the Spiderman movies). 

    Kate Aurthur on a front-page longish personal essay on the NYT about blogging:

    In reading the essay "Exposed," I felt the biggest problem with it was not the fact that it was too long (it was), nor the accompanying photos (slightly creeped out, don’t really care), nor the score-settling (so much!), nor that someone like my mother, an NYT reader of 5000 years, wouldn’t understand a word of it because there was so little context provided about this bloggy world – the biggest problem, to me, is that the formula for provocative magazine stories is so rote, and we all (or I) fall for it every single time.

    That is: Developed over the years, the formula at its core paints a picture of a joyless, pathological universe that is so uncomplicated by nuance or ambivalence, that rather than being The Way We Live (as coined by Adam Moss long ago, and evoked by Gerry Marzorati here), it would more accurately be The Way We Die — it’s always that awful.
    The subject can be technology (as it is here) or Britney or date rape on college campuses. It seems to always be written by and about young women (and perhaps edited by older men?).

    So my question can be boiled down to: where is the love? Are our lives so gloomy and sad that the fun of Gawker (which serves as the main foil both here and in Vanessa Grigoriadis’ much more interesting New York Magazine article last October) is not worthy of examining or, if you see no fun at all in Gawker, debating? Why does a story need to construct a fake world of blackness and illness and panic in order to get people riled up?

    Or am I wrong? Please say I’m wrong!

    (I don’t have any opinion about the original essay by Emily Gold–which I didn’t read. Kudos to NYT for publishing it though, and for heaven’s sake, let Emily have her 15 minutes of fame).

    Speaking of Kate Aurthur, she’s been publishing tv criticism about American TV (I think I’ve read a few of these before).

    Aurthur on TV couples who take forever to hook up:

    Movies and books have it easy when it comes to romance—whatever push-and-pull they peddle can tie up near the end, leaving the viewer or reader to imagine what happens next. But on television, writers who deposit a couple in each others’ arms for the season finale must then write their way through the morning after—and the second date, and the 15th—come September. As a result, they go to great lengths to keep promising couples apart. The obvious strategy: extremely protracted wooing. On the 1980s detective show Remington Steele, for example, the workmanlike, anti-fun Laura spent four seasons infuriated by Steele’s flash and charm before she finally succumbed to it. And even Josh and Donna have occasionally been outdone. On Frasier, for example, the effete Niles pined after Daphne for a full seven years. During most of that time, his efforts to pursue her were so pathetic that she didn’t even notice; it was Frasier who finally blabbed.

    Aurthur on the "very special virginity" episodes:

    The conventions of the Very Special Virginity episode are by now well-established: Articulate kids fret about the decision, and parents usually learn of it in some way, giving them the access they need to become the moral arbiter of the situation. Sex tends to be represented by both the parents (and the show) as forebodingly destructive—to the teens’ future, to their mental well-being, to the family unit. Needless to say, the relationship usually doesn’t last very long after it’s been consummated, with the reasons for the breakup ranging from unreturned phone calls to nervous breakdowns. (And occasionally they are a bit odder: On 7th Heaven, Simon’s minister father reminded him he wasn’t capable of casual sex because of his "more than casual relationship with Christ.")

    Old writing buddy Julie Checkway has a filmmaker’s blog.  Her waiting for Hockney documentary came out recently, I think.

    Matt Groenig cartoon on how to be a clever film critic. (Notice film’s greatest paradox mentioned on it).

    Some things I’m encountered while doing research for my trip:

    Claus Valca on the wierdness-spam of AVG Free. Dwight Silverman and Claus recommend NOD32, a $60 product.

    Barry Bearak on being locked up for being a journalist in Zimbabwe. Here’s a line by a human rights lawyer to a police lackey:

    “This is a police state,” Ms. Mtetwa said brassily. “The law is only applied when it serves the perpetuation of the state. How does it feel, Inspector Rangwani, to be used this way by the state?”

    It’s funny. I’ve started to quote comments on people’s blogs just as often as I do on the blogs themselves. Here’s a comment on a NYT blog:

    Facebook will meet the same fate as MySpace. It will live at the top until a big corporation buys it. Then as it becomes more mainstream, the more the targeted trend setting demographic will rebel and migrate to the next cool site. Valuing these companies as “platforms” for advertising only drive the migration to the next thing. As soon as MySpace was bought by News Corp, the migration to Facebook started. When Microsoft or anyone else buys Facebook, the migration to the next site will begin…if it has not already. Social networking sites are like night clubs. The cool kids will set “the where” and the sheep will follow trying to drink from the same fountain. Same scene, different address. It is just an IP address in this case. Studio 54, Club Life, MySpace, Facebook, Bon Jovi, Panic at the Disco…and the beat goes on.

    Although I really haven’t mastered my HDV videocamera yet, I am planning to buy a mini-camcorder for my Europe trip. I was going to buy the much-touted Flip Camera (for $150), but after reading Michael Arrington’s article explaining why the Canon Power Shot SD 750 is the better deal, I am seriously tempted. Why? SD 750 functions both as a point and shoot as well as a videocamera, uses SDHC cards and has optical zoon. 

    From this article, a rather hilarious rebuke to MacFans:

    Recipe for success:

    1/ Take a general purpose device
    2/ Focus on a specific usage, remove the extra features
    3/ Hire a designer
    4/ Market the “Beautiful Simplicity” of the result
    5/ For version II, restore some of the removed extra features!

    Apple has been doing that for years I think.

  • Where is my email?

    I started at a new technical writing gig two weeks ago and I recently discovered 2 things about Microsoft products (specifically Office 2007). In fact, chances are that I will buy a copy fairly soon. It only costs $115.

    1. MS Word is really incredible. A lot of its improvements have to do with user interface to make it easier for users to make use of advanced features. The styles features is much easier to use than Office 2003. I am now a big fan.
    2. Here’s a test. Pretend you don’t know your work email. Using MS Outlook, try to discover what your work email actually is. How long will it take you? Obviously you can send an email to your personal email and check the headers, but that would be cheating–try using only Outlook to find out.

    More on MS Word. Quibbles/fun facts:

    1. MS Office now has some incredible demos/video tutorials on their website (They also did with Office 2003). However, they mix the demos with help topics in their online help. Big mistake.
    2. Did you know MS Office 2007 contains a free plugin to save as PDF? (In fact, there are several free third party plugins, not to mention Zamzar online converter. Fun fact, if you change the PDF setting to ISO-19005-1 PDF/A, then the fancy Office 2007 fonts will be embedded in the PDF (so you don’t have to worry about readers not having the right font installed).
    3. You don’t have to buy MS Office to obtain MS Word 2007. In fact you can buy MS Office Word Home and Student 2007 for $115. (This is not an academic version).
    4. It is amazing that MS Word doesn’t let you save as OpenDocument format (which is an ISO standard). Really, how hard can it be? Amazingly, MS’s own OfficeOpenXML standard was resoundingly rejected. Although I can justify spending $100 on MS Word 2007, it is hard to imagine state agencies opting for software packages that don’t have ISO standing behind them.
  • Why Users Don’t Read Documentation: Technical Writing Secrets

    Peter Morville’s subject of findability comes up all the time in looking for information on the web.

    Yesterday I was seeking a driver for an old scanner. Should be easy. I had a serial number but not the model number. Unfortunately, the website contained no information about how to determine the model number. To access help/support about your scanner, you needed to know the model number. But how do you identify your model? Without that information, you are helpless. You aren’t allowed through this gateway of information without the right code, but you can’t give the right code because you don’t have access to the documentation.

    Gateways are used to restrict access to telephone technical support, but they should rarely be used with documentation. Online help should provide paths for finding information, but sometimes if you are missing important information at the beginning, you are stuck. I like to tell the story about a Charlie Brown TV special. Charlie Brown is the football coach during halftime. All his friends are crowded in the locker room while Charlie Brown draws an extremely complicated football play on the blackboard. Finally, after Charlie Brown spends  a minute going over his elaborate play diagram, he says, “Are there any questions?” Nobody speaks, until finally Pigpen says, “Are we the X’s or the O’s?”

    Are we the X’s or the O’s? That is the perennial question for technical writers. Because Pigpen doesn’t know if he’s an X or an O, he can’t follow (or comprehend) the football play. To avoid these kinds of situations, documentation should offer cues right from the start about what documentation will cover and how to access it.

    Web documentation does amazing things these days. It lets customers provide direct feedback and lets the company see exactly what search queries which customers are using. That makes it easier to identify information gaps and needs. Companies want to customize the web experience for the user. That is good. But if carried too far, it interferes with the ability to navigate through information.

    Before you can document key features, the technical writer needs to address certain meta aspects of using help. How can the user  access the documentation? How can the user verify that this is the right information? Which version does the user have? Is the information sought by the user  out-of-date? Is the help intended to be all-inclusive (i.e., covering all sorts of scenarios)? Or is it merely suggesting the right way to use the product (while leaving the details to individual users). How does the user know he is at the right screen or pushing the right button? How can the user decide when to call customer service?

    Technical support people often talk about the PEBCAC (problem exists between chair and computer). In fact, users are not stupid very often. Over the telephone, there are other problems:

    • Users don’t know the terminology to describe the problem they have or to know what to look for.
    • Users haven’t studied the problem long enough.
    • Users don’t recognize details or signs which might aid in understanding the problem.
    • Users might not have easy access to the documentation, may not be qualified to understand it (because of language barriers or technical level), or they may simply not have the time or energy to use it.
    • Users might be unaware of the status of their computer/account/browser and/or they might be limited in their ability to obtain this information.
    • Users might have received incorrect or misleading information from someone else, or they might have made incorrect assumptions about the product.
    • Users may be familiar with one kind of product but  lack the appropriate mental model for knowing how this product is supposed to work.
    • Users might have previous problems in the past and found it easier just to call technical support than to risk aggravating the problem when trying to fix it.

    In some situations, a failure to use the documentation stems from underlying defects in the documentation itself. They may not know what term to look up or be unfamiliar about how to search or be unfamiliar with the name of the action they want to do. It’s like telling someone who wants to spell something that they should look it up in the dictionary for the answer. Users have a general idea of the task they need to perform. They might be unable to identify what they want or what the problem is, but they can still provide reliable answers to questions based on observation. Under many circumstances, the best we can expect is for  users to follow a checklist of tasks and seek help when this checklist isn’t met.

    Documentation is often geared towards power users (those who are willing to use advanced features of anything). In the long run, documenting the main uses and even the advanced uses are probably where the technical writer should spend most of his time. After all, one doesn’t remain a novice forever. On the other hand, it’s vital to have insight into what questions are popping into the minds of novice users.

    How then does one decide where to allocate resources? Here are some strategies and principles I have observed:

    • Novice topics are the easiest to write, but the typical user usually doesn’t need them; they can usually figure them out on their own.
    • Advanced topics/features should be covered especially if they are not obvious.
    • It’s good to provide hierarchies of documentation for the beginning/middle/advanced user. It’s good to give users an idea about what topics to start with.
    • Novice questions should include generous amounts of information about using help.
    • Screen Captures. SW documentation is often reused for different versions of the same software. Therefore, it is important to minimize the number of screen captures you use. Why?
      • Using out-of-date screen captures causes a lot of confusion.
      • Replacing/updating screen captures is a lot of work.
      • Unless it is difficult to do, screen captures should always be accompanied by a caption that explains what is useful and/or important about the screenshot. Instead of using the generic “Save As Dialog,” you should say “Ms Word lets you save in various formats” and then show the dropdown box of all the formats that MS Word saves in.
      • Screen captures use a lot of real estate and generally shouldn’t be used for long topics. If there’s more than three screenshots on a single page, something is probably wrong.
      • The best time to use screen captures in documentation  is to reveal a non-obvious feature or to show what SW looks like when it is processing live data.
      • Best contexts for using screenshots? : They are especially good for novice users and illustrating problem states in software.
      • Screencasts are also becoming efficient methods for conveying the general sense of a user-interface. They are especially effective for quick tours and to illustrate the overall flow of work in a short period of time, but they still are no substitute for conventional documentation.
    • Using Links. It’s good to arrange topics in a vertical hierarchy (a main TOC, with sub TOCs) to convey a flow of information from general to particular. In contrast, putting too many links in a single topic can confuse users — especially if the same links are repeated in multiple places. It’s good to have some redundant links, but often this causes users to visit them multiple times without really finding what they want. To prevent loops, the technical writer should:
      • label links consistently in different topics. You can’t have a link on one topic go to yahoo.com and a link on another topic go to the best search engine in the world and another link to the only search engine company that discloses user information to the Chinese government.
      • putting too many links on a single topic can dilute the usefulness of each topic. A link should appear only in contexts where there’s a good chance the user would want to use it.
      • Automated indices and table of contents save a lot of time but generally provide an unsatisfactory user experience. Some types of information (such as glossaries and references) lend themselves to automation. With diverse content, it pays to spend time organizing topics hierarchically.
      • FAQs are a great way to organize topics. But unless you’re just starting out, FAQs should be grouped in categories.
      • meta-topics (“how do I locate the documentation?”) should be easily accessible from the first topic.

    Here’s a dirty little secret known only to technical writers: many people don’t read documentation at all! Some prefer to learn by doing. Others may be troubleshooting exotic problems specific to their field. Others may find user forums and IRC a far easier solution (notwithstanding the irrelevant chatter). Some people prefer a learning-by-doing approach; other people may be troubleshooting complex (and esoteric) problems. Even so, good documentation increases people’s comfort level and offers people a quick high-level understanding of how something works. Also, it serves as a reference guide when technical support is closed and a software problem seems insurmountable.

    Robert Nagle is a technical writer living in Houston.

  • Presentation (August 25): Optimizing for Reading: The Art and Science of Presenting Content

    This Saturday I’ll be giving a presentation with Gerry Manacsa at Barcamp Houston.

    (See my post-presentation wrapup here)

    Subject Optimize for Reading: the art (and science) of presenting content
    Date: August 25, 2007. Probably 10:00 AM. (There is no set schedule, but we’ll probably be presenting before noon).
    Location: Houston Technology Center
    Cost: Free! (as is attendance at Barcamp Houston).

    • Reading on the Web: Why It’s Awesome, Why It Sucks
    • The Agony (and Ecstasies) of Intensive Reading
    • Packaging Content (and implications for content creators)
    • How hardware is constraining (and liberating) the way we read
    • Ad-supported content (i.e., “How Not to Irritate Readers”)

    Robert Nagle is a Houston-based fiction writer and associate editor of TeleRead, a site about ebook technologies and publishing.

    Gerry Manacsa is a senior designer for Wowio Ebooks, a site that publishes and distributes free ad-supported ebooks. He is also a Houston resident.

    Recording/Notes I’ll try to record this session and make the mp3 available when I can. (I’ll post the URL here and possibly elsewhere when it’s ready). I’ll try to put the presentation up as well.

    Show and Tell : As an added bonus, we’ll have lots of reading gear, ranging from the low-tech to the high tech.

    By the way, feel free to say hi to me if you show up!

  • Balancing Online Resumes with Online Identities

    (I was interviewed recently for a social science study about online resumes and identities. My answers are listed below).
    1. In your response to the survey questionnaire, you wrote that you have found your linkedin page to be more useful than an independent resume / business site, though you have plans to develop an independent site again with wordpress weblog, multimedia samples, etc. How have you experienced the trade-off between an independent site and a page within a social networking community like linkedin? You mentioned that linkedin provides testimonials, for instance. What other pluses and minuses are there?

    I generally don’t try to keep my “marketing info” on social networking sites (if only because of the limitations of the template). The biggest part of being a technical writer is portfolio, and obviously social networking sites have limited ability to allow for that. Linkedin is a special case, because many people in high tech use it. It’s more of a verification service of people’s background (and whom they know) than a way to locate employees. Linkedin Testimonials are a great way to buttress your work experience. Right now, people haven’t caught on yet that these testimonials may not be terribly reliable. Also, there is a lot of reciprocity going on. I scratch your back, and you scratch mine. On the whole though, I think it’s a major plus although I’m unsure whether recruiters use it much.

    2. Your old resume site provides several versions of your resume for several career tracks: technical writer, academic / teaching, etc., each in different formats. In the old print world and even in new media forums like linkedin, we tend to see only one resume per person. How do you think your site visitors reacted to seeing such a multiplicity of resumes for various careers?

    People have gotten in the habit of writing targeted resumes. That obviously poses problems to the web resume, where you try to write a one-size-fits-all resume. Personally, I viewed it as an information design/architecture challenge (which frankly, is part of what being a technical writer is). How could I demonstrate my method of organizing information and presenting it hierarchically? In my upcoming “facelift” I plan to incorporate “customized views” of the same information (probably using css, etc).

    Technical writers are known for versatility of skills, so I think people are tolerant of different kinds of resumes. For me, though, the personal website is critical: not only for showing off my portfolio, but for pushing recruiters/managers towards space I can control. With job boards, the forms just penalize people with more versatile skills and nebulous job titles. (I wrote about this in an essay of mine called the “Must have 5 Years Fallacy“) . Resume databases are all about having applicants quantify their skills in terms of number of years experience. Why? So recruiters can filter the results ! That is bad, really bad. They can create a query of 5+ years experience, and automatically knock a lot of qualified candidates out of the running. Driving future employers to my website allows me to present myself as a package, not just as a job obituary which can be filtered out by years of experience. As long as I can present this package honestly and faithfully without causing readers to suspect I am trying to “trick them,” things will be ok.

    The online resume has another advantage: keeping my resume up-to-date. I can add or subtract things if I have second thoughts; I can correct typos or improve things as time goes on. If only for that reason, I really try to refer future employers to the website so they always have my most current version.

    3. In your response to the survey questionnaire, you indicated that your Web site has helped you a lot in getting technical communication clientele who have originated primarily through referrals, reputation, networking, etc. In such cases, how has your Web site helped you?

    The industry was in a downturn in 2001-2002, so I probably had more time to “market myself for the web.” By the time I did find a job, my technical writing resume got incredibly good results on google (if you searched “technical writer houston” or “technical writer austin”). It was almost hilarious. So I got a few random calls about that. (Btw, I don’t expect this to happen with my new revamped resume –many more people have figured out search engine optimization). This time around, I’ll be applying for more senior positions, so I hope that the stretch of my web tentacles should count as an advantage.

    4. Your are an active blogger. Has your blog had any impact on how prospective clients perceive you? If / When you are looking for work again, would you still maintain such a high profile for your blog (e.g., linking to your blog from your linkedin page, etc.) or would you seek to separate business from personal pursuits?

    This of course is a critical question! I was being interviewed for a contract assignment a few months ago. The big boss (who had to give his ok before I was hired) said, “I saw your websites….” and then paused. At that moment, a chill went up my spine. What random post of mine did he find objectionable or laden with grammatical errors? “And I like what I saw,” he said.

    I realized that the employer had probably just skimmed my bio, my most recent 2 or 3 posts and maybe my list of Best of articles. But employers can use blogs against you. One friend of mine specifically didn’t receive a job because of political opinions expressed on his blog. He changed his blog entirely to one about java programming. Although my political views are pretty out there (if you read my blog for any length of time, it would be apparent). But over the last few years, I have rarely done political blogging, if only because the blogging space is already full of people who stay on top of issues more than I do). My bigger concern is not political views (technical writers are probably more liberal than most), but grammar and typos. I am pretty lousy about proofing my blog. Sometimes I go back and revise/edit; for more important posts, I definitely do editing. For writing I care about, I polish it thoroughly). Also, my blog is ocasionally risque and I worry about that kind of post being on the top of the blog during a time employers might be looking over it.

    The ability to create “pages” (not posts) on wordpress blogs lets me create static links pages which direct the reader to the “best of” kind of content. Even that is not ideal. My “best of” would probably include a lot of literary stuff, something of little interest to employers. Also, with linking, there is a lot of “guilt by association.” If I link to a blog with offcolor humor, by implication that means I approve of it. Then again, employers rarely have enough interest to delve deeply enough to notice. I haven’t blogged about my job (occasionally I refer to it afterwards). My attitude thus far has been: eclecticism and diverse interests come with the package. If you can’t accept that part of me, then I probably wouldn’t make a good employee for you anyway. On the other hand, if I grow desperate enough, that attitude might change. The problem with this proud attitude is that you never hear feedback when employers are excluding you. Perhaps some 2002 diatribe you made about George W. Bush or pornography or casual drug use was why the employer won’t be calling you back. You will never know. That to me is scary.

    One option is just to take your blog offline while searching for work. That sounds nice, but ultimately it’s impractical. Obviously employers can read your site after they hire you. Also, it’s funny how much I depend on my blog to keep track of information. (Yes, I use delicious, but I still forget). I often end up digging into my archives to find something, or –even better–sending someone a URL rather than give a complete answer via email. That’s one reason I started a list of books/movies I’ve been consuming. By doing that, I no longer need to repeat things in email; I can simply send people URL’s. To tell the truth, I keep this list also to remind myself of what I have read or watched. I am a forgetful person!

    I used to do online dating for a few years and that made me think a lot about what potential dates would think of me on the basis of my websites. I used to actually go to the trouble to mail them URLs, but later I backtracked; if they wanted to google me, they could do that (starting with my blog). Generally, I think the existence of my blog hasn’t helped me in online dating–it gives future dates a reason to filter me out. I’m guessing few of these prospects bothered to look at my websites before going out on a date (which is hardly surprising, given that neither my family or friends look at this blog either). For the record, I didn’t have any success with the online dating; who knows if it had anything to do with my web visibility! On the other hand, maybe some hot chick will stumble upon this website and make my acquaintance (that is my fantasy anyway). As I once mentioned, web visibility ensures that my email will always be full and my weekend social life will always be empty.

    Another thing. Photos (this has to do more with dating than job search). Do you make it easy to find or not? Photos reveal a lot about you, your family, your interests, your leisure time activities. I have 1000s of photos on my flickr account, going back all the way to my childhood. Ultimately I decided that if they are enough of a voyeur to look over my stuff, they probably would feel comfortable working with me.

    Forum postings. I also post on many forums and newsgroups. Mostly they are technical topics; still they indicate my level of knowledge on certain areas. (For a while, I even linked to a list of all my newsgroup postings on my resume site). It will be rather easy for employers to find this information..if they knew what to look for. On the other hand, these search results are undigested. Unless people are googling a specific knowledge area such as xml or plone or instructional technology, employers wouldn’t know what to look for.

    I write fiction and publish all of it online UNDER A PSEUDONYM. Several psuedonyms. I wouldn’t want employers/dates to have easy access to my creative writing. They might resort to stereotyping or interpret something the wrong way. (This happened when novelist James Webb ran for US Senate). I occasionally link to my fiction on my blog (without identifying it). Eventually my personas will be linked together (A wikipedia page could cause these things to be put in one central location beyond my control). But I am enjoying the fact this has not happened yet.

    I debated putting my entire weblog under a pseudonym. One writer I admire (Michael Blowhard) doesn’t hide his identity; on the other hand, he never advertises it anywhere. The problem about pseudonyms is that they are hard to maintain for any length of time; (I’ve written about that before). You forget which pseudonym you used to disclose which information; you naturally want to use one blog for the sheer convenience of it. I remember Jason Kottke’s discussion of “secret sites” and why people used them. Ironically, the best and easiest way to hide your online identity is to offer a public face that looks comprehensive, but it is anything but that.

    5. If you have other insights or experiences that could help me understand your business Web site, please describe them below.

    Generally, I’ve been struck by how little effort employers have taken to read over my online writings. On the other hand, my participation in many online communities has resulted in more emails/requests for help and that sort of thing. In my opinion, that is a good thing.

    I’m going to be moving to www.robertnagle.info fairly soon. I actually have a more substantial portfolio than I had several years ago, so now it’s finally possible for me to construct a 100% professional online identity. I’ll link to certain personal pages; however, I would expect employers/contacts to spend no time looking outside the portfolio site.

    My blogging probably makes little difference for employers (except to prove I write frequently and have been around for a while). On the other hand, there is a very small percentage of people whom I will call “loyal readers.” These are people who start out reading my blog, and if they live in my city or state, might think of me when a freelance gig becomes available. I’ve received some interesting propositions via email sometimes. Not necessarily job-related, but opportunity-related.

    Recently I’ve become aware of free reputation management services like naymz . Using such services and taking control of your online identity seem like sensible advice, especially for those who don’t do much online. Frankly people start blogs for various reasons; only a small percentage of them use it for self-expression (as I do). For those who don’t, it can be hard to understand why putting your brain in the public eye would seem so appealing. It is a rare event when you meet someone who actually reads your blog. I don’t seriously expect fame of any kind from it. However, there is appeal to the idea of withstanding public scrutiny, to knowing that you’ve put your brain online without causing a torrent of criticism to be unleashed.

    Update: Here’s the survey results/commentary about technical writers and resumes.

  • Em spaces vs. En spaces revisited

    I’ve always considered myself a sloppy writer (case in point: this weblog!). I haven’t really worried about stylistic/punctuation/grammatical consistency until near the end of a job. Then I go check everything once (maybe a global search and replace), and hopefully solve the problems.

    However, I just realized that in some of my more important projects, my use of m-dashes and n-dashes are a real mess. Most of the time, rather than hardcoding mdashes, I’ve just used double hyphen marks (which is a definite no-no in publishing). I knew that when I did that. But I frequently experienced encoding problems with my text editors (or rather when I switched applications or exported content into another application). MS Word was notoriously bad with its “smart quotes” and I think it had the same problem with mdashes as well.

    Frequently the destination was an html page, so I would cut and paste my text into some kind of html editor. Either I would manually put in the </p> <p> tags or I would run some command to replace the New Paragraph indicator with a <p> tag.

    In the last few years, to eliminate precisely these kinds of problems, I’ve been using Notetab Pro (for simple text editing) and Oxygen XML editor (which handles encoding in a fairly transparent way). Notetab Pro has a nice Txt-to-HTML feature as well as various other text processing functions that I love.

    So normally my workflow is to create the text document in Notetab Pro, print out drafts and reedit until I’m ready to start using HTML. Run the txt-to-html macro (maybe running some extra global replace commands to remove <br /> commands or space break commands. Then, in Oxygen, everything usually plays nice. Once things are in the XML editor, I print the rendered text from the browser window. It’s kind of a bummer to do it that way, but it works.

    But then there is that pesky problem of mdashes. Idiotically, neither Notetab Pro nor Oxygen have an easily accessible mdash button, so I end up manually typing it. Also, I usually end up wanting to type in <em>, <strong> and — when I’m typing drafts (not in the hmtl editor). Unfortunately, that defeats my text to html conversion program, which escapes anything that looks like raw code.

    So here’s my stopgap solution. Rather than type “” into the text editor, I type simply “mdash” (so I can globally replace it after I run my html conversion program). The problem is that mdash runs into the words it is sandwiched between. There is some controversy about whether mdashes or ndashes are better for conveying pauses or breaks in sentences. That is related to the problem of whether mdashes should be separated by spaces or should be sandwiched without spaces.

    I have no opinion either way. It seems to make more sense that mdashes should be separated by spaces (though that opinion is definitely in the minority). But it raises another question. It’s nearly impossible to proof drafts where the coded mdash entity runs continuously with the surrounding words. On the other hand, using instead does assume surrounding spaces; so I can view/edit/proofread those drafts fairly easily.

    While researching this, I noticed Richard Rutter’s Elements of Typographic Style as applied to the web. It is based on Robert Bringhurst’s famous book with almost the same name. Rutter’s website tries to apply Bringhursts principles using CSS. Nifty.

    Also, much as I loathe Microsoft, I recently installed MS Office (for work) and have been enjoying its grammar/spelling functions. There are quite a few false positives, but it’s now a mandatory step for me to paste my html page from the browser and see the suggestions that MS Offices offers. It can be right a lot of times. Now, if only I’d do that with my blogposts.

    Recently I’ve become a cheerleader for Google Docs, which is a fantastic editing environment. It also lets you output into PDF, HTML, DOC (not to mention your blog!). In other words, it is like the holy grail, with versioning and collaboration.  Saving things on google means that you can go back and compare versions with previous ones, eliminating the possibility of accidental deletion. The two weak spots are offline mode (and autosave) and grammar-checking functions. I don’t know if I can feel safe working on a document for two hours and then finding out that I’ve been offline for an hour and a half (and unable to save!). Also, MS grammar feature is light years ahead of google docs.

    Actually, as an experiment, I think my next post will be created with Google Docs.