Neovim 0.1.0 was released yesterday. I’ve been using an earlier version for a month or two now and all things told, I’m happy with it. My old .vimrc worked fine (though with 0.1.0 the .vimrc has been moved to ~/.config/nvim/init.vim, which will take a bit of getting used to), and everything I’ve needed to use has worked. Vim-plug is nice for managing plugins. I haven’t switched from Syntastic to Neomake yet, but that’s on my todo list for the near future.
I’m currently retypesetting the print edition of my Book of Mormon reader’s edition. The 2006 edition was one of the first books I ever typeset, and my skills then were, well, limited. (Because now they are unlimited. I jest.)
Here’s a glimpse at 3 Nephi 5 (which is normally 3 Nephi 11, but in this edition I use the chapter breaks from the first edition of the Book of Mormon):
I’m using Arno 11/14 for the body text, and the paperback will be available at cost via CreateSpace. The good news with the move to CreateSpace is that the book will only cost around $9 instead of the $18 it is at Lulu. (And I should add that I make no profit on these, nor do I want to.)
I will also be typesetting a matching, combined reader’s edition of the D&C and Pearl of Great Price. And after that, I’ll be doing a study edition of the D&C and Pearl of Great Price, as a companion piece to the Book of Mormon study edition.
Earlier this week I wrote a small Asteroids clone in JavaScript:
Instructions and the link to the game are on the project page.
FYI, here’s how I made the animated GIF: I used Quicktime Player to record a portion of the screen, then used ImageMagick to convert the .mov file to a series of PNGs:
convert asteroids.mov png/asteroids_%03d.png
I deleted the extra frames at beginning and end that I didn’t care about (unpausing the game, figuring out how to turn the recording off), then used ImageMagick again to make the GIF:
In a similar vein to yesterday’s last conference talks, I’ve started making lists of the collected talks of the members of the Quorum of the Twelve and First Presidency. The ones I’ve done so far:
Thus far I’m including conference talks and addresses at Church universities (BYU, BYU–Idaho, BYU–Hawaii, LDS Business College).
It’s still very much a work in progress — it only includes conference talks from 1971 and later, the BYU–Hawaii sections are fairly incomplete, etc. — but I plan to expand it to include other members of the Quorum of the Twelve (past and present) and any other talks I find.
Inspired by Elder Bednar’s talk in the afternoon session of conference today, I’ve made a list of the last general conference talks of the members of the Quorum of the Twelve. It currently has the last twenty-two members to pass away; when the Church adds the pre-1971 conference talks to LDS.org, I’ll expand the list.
As requested, here’s my process when creating the circle series paintings.
Conception
My ideas for these pieces usually come while I’m in the shower or reading the scriptures. Sometimes, as with Sweet Hour of Prayer, I’ll be consciously trying to come up with an idea for a new piece. Other times the idea just comes to me in a flash, as happened with Sacrament — in the middle of an unrelated verse in Mosiah during family scripture study, it popped into my head fully formed.
Once I’ve got the idea, I sketch it out, run it by my wife to make sure it makes sense, and revise as necessary. With Sacrament, I painted a mockup in Brushes Redux on my phone (ArtStudio is also good for painting):
With Sweet Hour of Prayer, I drew some thumbnail sketches, trying to figure out the best configuration of circles and triangles to convey the idea of prayer:
I then settled on this layout:
I also made a version in Illustrator so I could further refine the idea (it’s easier to manipulate the shapes there):
Execution: Shapes
I’ll then open Photoshop and create a new file, usually around 4500px wide so the resolution is high enough for printing at larger sizes. This is also where I’ll decide on the orientation of the painting — square, horizontal, vertical, etc.
I fill the background layer with a color to get started. The color usually ends up changing by the end.
I then paste in my mockup and set the opacity to something like 10% so I can trace over it.
On a new layer, I take my Ninety-One brush (part of my Eclectica brush set) and, using a light color set to Color Dodge at 20% opacity, I paint in each shape in successive passes, usually doing seven or eight passes. This gives the edge look I like.
At this point it looks something like this:
Execution: Texture
Once I have the shapes in place, I texture the painting, generally trying to make it look like it wasn’t made on a computer (with varying levels of success).
I then add five to fifteen texture layers. For each, I usually choose one or more colors, paint all over with a noisyish brush (dots, lines, etc.), and then erase lots of it with another noisyish brush. I optionally set the layer blend mode to Soft Light or Overlay and/or turn the layer opacity down to 10–20% (this combination of steps I’m going to dub “SLO” since I’ll be using it again in later steps). The layers for Sacrament:
I’ll also usually drop in a photo texture (usually pictures of concrete sidewalks I’ve taken) on a new layer and set it to SLO. I’ll also often desaturate the image and play with the curves to get a more contrast.
Sometimes I throw in a radial gradient (usually white to a color) on another new layer and set it to SLO (sensing a trend here?). I also often add a layer mask and paint/erase some noise in black on it to get rid of gradient banding.
I sometimes paint/erase noise, then duplicate the layer, make it darker, turn the layer opacity down, place it under the original layer, and move it down and to the right to simulate shadows.
I usually tweak the colors of the piece at this point, using the hue slider to play around with the background color layer and the radial gradient layer.
Completion
The execution phase usually takes an hour or two. After I’m done, I send it to my wife for feedback.
Once I’m satisfied with the painting, I flatten the layers. I optionally run the Unsharp Mask filter on it to make it look a little more like a photo/scan. And then I save it to a full-res PNG and upload it.
Entitlement
After it’s done, I’ll come up with a list of possible titles and send it to my wife. I almost always use whichever title she chooses from the list.
I’m currently working on a short story (working title is “A Glass Darkly”), outlining the whole thing before I write it. For a while I thought I might be a discovery writer, but I’ve learned that I do better if I have a solid plan. Figuring out the structure of the story beforehand — the overall arc, the individual scene arcs, the character arcs, etc. — seems to help me write better stories, and not to panic when I get to the middle and usually have no idea what should come next. Structure is my friend.
Anyway, I’m wrapping up the outline (figuring out the middle, as it happens), and should have a first draft banged out a week or so after that. This time, rather than releasing it on my site immediately after I finish it, I’m going to start submitting it to magazines, something I haven’t done before. Racking up a few rejection slips will be a good thing for me as a writer, I think. (Sidenote: I’m very much on the fence re: trying to get my fiction traditionally published vs. self-publishing it. But that’s a topic for another post.)
Tool-wise, I put together a Google spreadsheet for tracking daily word counts, but I realized that when I’m not drafting — when I’m outlining — it doesn’t make sense. Time spent (plus deadlines) is a better metric. So I’ve revised my spreadsheet to track minutes instead.
I’ve also been itching to have a better place to do the actual outlining and writing. This may just be my neverending toolmaking itch, but I think it’ll help me be more productive. I want to write an outline, then flesh it out in place into a list of scenes, then flesh that out into an actual draft. A simplified version of the snowflake method, basically. Forest, trees, branches, leaves.
While you could do this fairly easily in Word or any other writing app, some of the other bits I want (easily moving between levels of abstraction, drag and drop reordering of scenes, etc.) might not be as easy, so to work through the ideas and figure out what I really need, I’m working on a new web app called Storybook. I built an initial prototype a few months ago, but it isn’t very good, for a number of reasons (it isn’t mobile-friendly, it’s too cluttered, etc.). I’m in the middle of rethinking how it should work, and I think I’ve got a better handle now on how the UI should work.
A final word: back in my younger days, I would build tools and then stop using them after a short time. I’m not entirely sure what changed, but now the tools I build stick with me a lot longer, and I can easily see the productivity gains from using them. Toolmaking does take time away from whatever it is the tool is supposed to help me with (writing, in this case), but I’ve found it to be well worth the investment.
I’m getting back into blogging about in-progress projects, because otherwise I hardly blog at all. Expect posts soon about the following coding projects, all at varying stages of completion:
Brief sidenote: I switched a while back to Python/Django, and I’m very glad I did. I can often get to a working prototype within only an hour or two. Back in my younger days I wanted to write everything myself from the ground up, but I see now that I was foolish. Life is short. I’d rather focus on the interesting parts — the app itself — and let the framework handle the routine grunt work.
Momentum
Momentum is the app I’d like to introduce today. It’s a web app written in Django, started back in January to help me track my goals.
More specifically, I wanted something that would help me spend more time reading scriptures and writing fiction. I don’t always have a free half-hour, though, so I needed something to track little bits of time throughout the day, and Momentum was born. I’ve been using it pretty much every single day since then.
Here’s what it looks like on my phone (with dummy data):
Some quick notes:
It currently supports tracking minutes, times, or words per day.
When I reach a particular goal, it disappears from the list for the rest of the day so I can focus on the goals I haven’t yet reached. (This is a change I made last night, actually.)
If I don’t make any progress toward a goal at all within a set time period, the goal goes stale and turns red. (There’s a system-wide stale period setting and each goal can also have its own.) I started using this staleness idea in Bookshelf (more on that in a later post) and it’s been motivating enough that I ported it to Momentum.
It supports folders. I have Projects and Health folders, where I have specific projects (stories/apps I’m working on), and things like squats and pushups.
Right now you have to add/edit goals via the Django admin. It works but isn’t as nice as something in-app. I just need to get around to doing this, since this is the main thing keeping it from being releasable.
The code is on GitHub as usual. Again, this is unreleased, in-progress code, YMMV, grain of salt, etc.