Shallow Thoughts : : writing
Akkana's Musings on Open Source Computing and Technology, Science, and Nature.
Mon, 04 Sep 2017
My new book is now shipping! And it's being launched via a terrific Humble
Bundle of books on electronics, making, Raspberry Pi and Arduino.
Humble Bundles, if you haven't encountered them before, let you pay
what you want for a bundle of books on related subjects. The books are
available in ePub, Mobi, and PDF formats, without DRM, so you can read
them on your choice of device. If you pay above a certain amount,
they add additional books. My book is available if you pay $15 or more.
You can also designate some of the money you pay for charity.
In this case the charity is Maker Ed,
a crowdfunding initiative that supports Maker programs primarily
targeted toward kids in schools. (I don't know any more about them
than that; check out their website for more information.)
Jumpstarting the Raspberry Pi Zero W is a short book,
with only 103 pages in four chapters:
- Getting Started: includes tips on headless setup and the Linux
command line;
- Blink an LED: includes ways to blink and fade LEDs from the shell
and from several different Python libraries;
- A Temperature Notifier and Fan Control: code and wiring
instructions for three different temperature sensors (plus humidity
and barometric pressure), and a way to use them to control your house
fan or air conditioner, either according to the temperature in the room
or through a Twitter command;
- A Wearable News Alert Light Show: wire up NeoPixels or DotStars
and make them respond to keywords on Twitter or on any other web page
you choose, plus some information on powering a Pi portably with batteries.
All the code and wiring diagrams from the book, plus a few extras, are
available on Github, at my
Raspberry Pi Zero
Book code repository.
To see the book bundle, go to the
Electronics
& Programming Humble Bundle and check out the selections.
My book, Jumpstarting the Raspberry Pi Zero W, is available if
you pay $15 or more -- along with tons of other books you'll probably
also want. I already have Make: Electronics and it's one of the
best introductory electronics books I've seen, so I'm looking forward
to seeing the followup volume. Plus there are books on atmospheric and
environmental monitoring, a three-volume electronic components
encyclopedia, books on wearable electronics and drones and other cool stuff.
I know this sounds like a commercial, but this bundle really does look
like a great deal, whether or not you specifically want my Pi book,
and it's a limited-time offer, only good for six more days.
Tags: writing, raspberry pi, electronics, maker, arduino
[
13:21 Sep 04, 2017
More writing |
permalink to this entry |
]
Sun, 16 Jul 2017
For the Raspberry Pi Zero W book I'm writing, the publisher, Maker
Media, wants submissions in Word format (but stressed that LibreOffice
was fine and lots of people there use it, a nice difference from
Apress). That's fine ... but when I'm actually writing, I want to be
able to work in emacs; I don't want to be distracted fighting with
LibreOffice while trying to write.
For the GIMP book, I wrote in plaintext first, and formatted it later.
But that means the formatting step took a long time and needed
exceptionally thorough proofreading. This time, I decided to
experiment with Markdown, so I could add emphasis, section headings,
lists and images all without leaving my text editor.
Of course, it would be nice to be able to preview what the formatted
version will look like, and that turned out to be easy with a markdown
editor called ReText, which has a lovely preview mode, as long as you
enable Edit->Use WebKit renderer (I'm not sure why that
isn't the default).
Okay, a chapter is written and proofread. The big question: how to get
it into the Word format the publisher wants?
First thought:
ReText has a File->Export menu. Woohoo -- it offers ODT.
So I should be able to export to ODT then open the resulting file in
LibreOffice.
Not so much. The resulting LibreOffice document is a mess, with formatting
that doesn't look much like the original, and images that are all sorts
of random sizes. I started going through it, resizing all the images
and fixing the formatting, then realized what a big job it was going to
be and decided to investigate other options first.
ReText's Export menu also offers HTML, and the HTML it produces looks
quite nice in Firefox. Surely I could open that in LibreOffice, then
save it (maybe with a little minor reformatting) as DOCX?
Well, no, at least not directly. It turns out LibreOffice has no
obvious way to import an HTML file into a normal text document. If you
Open the HTML file, it displays okay (except the images are all tiny
thumbnails and need to be resized one by one); but LibreOffice can't
save it in any format besides HTML or plaintext. Those are the only
formats available in the menu in the Save dialog. LibreOffice also has
a Document Converter, but it only converts Office formats, not
HTML; and there's no Import... in LO's File. There's
a Wizards->Web Page, but it's geared to creating a new web
page and saving as HTML, not importing an existing HTML-formatted
document.
But eventually I discovered that if I "Create a new Text Document" in
LibreOffice, I can Select All and Copy in Firefox, followed
by Paste into Libre Office. It works great. All the images are the
correct size, the formatting is correct needing almost no corrections,
and LibreOffice can save it as DOCX, ODT or whatever I need.
Image Captions
I mentioned that the document needed almost no corrections. The exception
is captions.
Images in a book need captions and figure numbers, unlike images in HTML.
Markdown specifies images as
![Image description][path/to/image.jpg)
Unfortunately, the Image description part is only visible as a
mouseover, which only works if you're exporting to a format intended
for a web browser that runs on desktop and laptop computers. It's no
help in making a visible caption for print, or for tablets or phones
that don't have mouseover. And the mouseover text disappears completely
when you paste the document from Firefox into LibreOffice.
I also tried making a table with the image above and the caption
underneath. But I found it looked just as good in ReText, and much
better in HTML, just to add a new paragraph of italics below the image:
![][path/to/image.jpg)
*Image description here*
That looks pretty nice in a browser or when pasted into LibreOffice.
But before submitting a chapter, I changed them into real
LibreOffice captions.
In LibreOffice, right-click on the image; Add Caption is in the
context menu. It can even add numbers automatically. It initially
wants to call every caption "Illustration" (e.g. "Illustration 1",
"Illustration 2" and so on), and strangely, "Figure" isn't one of the
available alternatives; but you can edit the category and change it to
Figure, and that persists for the rest of the document, helpfully
numbering all your figures in order. The caption dialog when you add
each caption always says that the caption will be "Illustration 1:
(whatever you typed)" even if it's the fourteenth image you've
captioned; but when you dismiss the dialog it shows up correctly as
Figure 14, not as a fourteenth Figure 1.
The only problem arises if you have to insert a new image in the
middle of a chapter. If you do that, you end up with two Figure 6 (or
whatever the number is) and it's not clear how to persuade LibreOffice
to start over with its renumbering. You can fix it if you remove all
the captions and start over, but ugh. I never found a better way, and
web searches on LibreOffice caption numbers
suggest this
is a perennial source of frustration with LibreOffice.
The bright side: struggling with captions in LibreOffice convinced me
that I made the right choice to do most of my work in emacs and markdown!
Tags: writing, markdown
[
14:12 Jul 16, 2017
More writing |
permalink to this entry |
]
Thu, 06 Jul 2017
It's official: I'm working on another book!
This one will be much shorter than Beginning
GIMP. It's a mini-book for Make Media on the Raspberry Pi Zero W
and some fun projects you can build with it.
I don't want to give too much away at this early stage, but I predict
it will include light shows, temperature sensors, control of household
devices, Twitter access and web scraping. And lots of code samples.
I'll be posting more about the book, and about various Raspberry Pi
Zero W projects I'm exploring during the course of writing it.
But for now ... if you'll excuse me, I have a chapter that's due today,
and a string of addressable LEDs sitting on my desk calling out to be
played with as part of the next chapter.
Tags: writing, raspberry pi, hardware
[
09:50 Jul 06, 2017
More writing |
permalink to this entry |
]
Thu, 21 Nov 2013
I woke up thinking about dinosaurs.
Specifically, Pachycephalosaurus, the bone-headed dinosaur, and her
long-crested cousin
Parasaurolophus
(pictured at right).
The previous night, I had been reading
The Know-It-All,
A. J. Jacob's entertaining account of his adventures reading the whole
Encyclopedia Britannica. I'd left off in the Ps, which included a very
short entry on Pachycephalosaurus (A.J. is not particularly into
dinosaurs).
Drifting along in a typical insomniac "I wish I could get back to sleep"
haze, I couldn't help noticing that Parasaurolophus was six syllables --
in fact, it was a double dactyl.
And that meant it was a prime candidate for my favorite verse form,
double-dactylic
doggerel, a form with fairly strict rules which require, among
other things, that the second line be a double-dactylic proper name.
And as double-dactylic junkies know, once you've noticed a
double-dactylic name, you can't rest until it's turned into a poem.
So now I couldn't sleep because I was thinking about Parasaurolophus.
Now, even aside from its mellifluous name, Parasaurolophus and the whole
Hadrosaur family
are pretty interesting. The biggest puzzle is why they had those
elaborate bony crests.
Decoration for mating purposes? Fighting, like horns and antlers
on modern hoofed mammals? But in the late 1990s, CT scans of hadrosaur
fossils revealed long air passages inside the crests of many
Hadrosaurs, including Parasaurolophus ... and those air passages were
connected to the nasal passages.
That led to suggestions that the crests might have been tuned for
sound production -- a built-in wind instrument.
In Scientists Use
Digital Paleontology to Produce Voice of Parasaurolophus Dinosaur
a team at Sandia made computer models of the air passages,
and you can even listen to sound files of what Parasaurolophus might have
sounded like. The sound is wonderful, like a trombone. Sandia's
pages use a, <embed> tag that didn't work for me in Firefox, so
if you have trouble with their links, I've separated out the
wav file URLs:
songLQ.wav (588k)
and a higher quality version,
song2.wav (2.7M).
Anyway, I never did get back to sleep, but I did end up with some
insomniacal doggerel:
Dinosaur, schminosaur
Parasaurolophus
How do you use that
Magnificent crest?
"I play trombone in the
Dinosaur orchestra
All hadrosaurs play, but
I am the best."
Tags: dinosaur, poetry, writing
[
16:49 Nov 21, 2013
More writing |
permalink to this entry |
]
Thu, 13 Jan 2011
My latest article on Linux Planet is a
review
of Arch Linux.
I've been quite favorably impressed with Arch. It's a good, solid,
straightforward distro that's very well suited to folks who like
to administer their systems via the command-line -- or who want to
learn how to do that.
I've been running it on my laptop for a few months, because it has
excellent performance, without a lot of the bloatware you see in
a lot of other distros, and it boots fast.
The only real problem I've had involves fonts. I see nasty font
artifacts -- sometimes subtle, a line or a few pixels missing from
certain letters -- but sometimes severe, as in
this screenshot
or this one.
In the article I talk about some solutions I've found that make
the problems less bad, but I haven't found any way to make them
go away entirely.
Unfortunately, since the font problems are worst inside browsers and
I use my laptop for presentations at conferences, this may eventually
drive me off Arch. I hope not -- I hope I can find a solution --
because otherwise, Arch has been nothing short of a pleasure.
Tags: writing, linux
[
20:36 Jan 13, 2011
More writing |
permalink to this entry |
]
Fri, 15 Oct 2010
Part II of my CouchDB tutorial is out at Linux Planet.
In it, I use Python and CouchDB to write a simple application
that keeps track of which restaurants you've been to recently,
and to suggest new places to eat where you haven't been.
Snakes
on a Couch, Part 2: Where do you want to eat?
Tags: writing, python, programming, database, couchdb
[
21:00 Oct 15, 2010
More writing |
permalink to this entry |
]
Thu, 23 Sep 2010
I've been learning CouchDB, the hot NoSQL database, as part of my
new job. It's interesting -- a very different mindset compared to
classic databases like MySQL.
There's a fairly good Python package for it, python-couchdb ...
but the documentation is somewhat incomplete and there's very little
else written about it, and virtually no sample code to steal.
That makes it a perfect topic for a Linux Planet tutorial!
So here it is, Part 1:
Snakes
on a Couch! Using Python with CouchDB.
I have a rather fun application for the database I introduce in the
article, but you'll have to wait until Part 2, two weeks from now,
to see the details.
Tags: writing, python, programming, database, couchdb
[
11:55 Sep 23, 2010
More writing |
permalink to this entry |
]
Thu, 09 Sep 2010
Part 2 in my Hugin series is out, in which I discuss how to rescue
difficult panoramas that confuse Hugin.
Hugin is an amazing program, but if you get outside the bounds of
the normal "Assistant" steps, the user interface can be a bit
confusing -- and sometimes it does things that are Just Plain Weird.
But with help from some folks on IRC, I found out that a newer
version of Hugin can fix those problems, and worked out how to do
it (as well as lots of ways that seemed like they should work, but
didn't).
Read the gory details in:
Hugin
part 2: Rescuing Difficult Panoramas.
There will be a Hugin Part 3, and possibly even a Part 4, discussing
things Hugin can do beyond panoramas.
Tags: writing, linux, graphics, panorama, hugin
[
14:58 Sep 09, 2010
More writing |
permalink to this entry |
]