My favorite YA novels of 2013, including books by Holly Black, Chelsea M. Campbell, Sarah Beth Durst, Em Garner, Lydia Kang, Cori McCarthy, and Sean Williams
Want access to a lively community of writers and readers, free writing classes, co-working sessions, special speakers, weekly writing games, random pictures and MORE for as little as $2? Check out Cat’s Patreon campaign.
Want to get some new fiction? Support my Patreon campaign.
"(On the writing F&SF workshop) Wanted to crow and say thanks: the first story I wrote after taking your class was my very first sale. Coincidence? nah….thanks so much."
~K. Richardson
You may also like...
On The Treatment of Coders
Coders can seem like odd creatures sometimes. Under that ladybug costume, though, they're as human as you or I.This article originally appeared in the now-defunct online magazine Imaginary Realities. It talks about MUD administration, and draws on my experience working with Armageddon MUD, the world of Zalanthas. For those who don’t know what a MUD is, it’s a text-based roleplaying game. Here’s the wikipedia article on MUDs.
One of the sad truths of the mud world is that there are never enough coders. Builders aplenty, brimming with fresh idealism and plans for entire zones, appear (and sometimes disappear) at the drop of a hat. But coders are the unicorns of the mudding world, seldom glimpsed and ardently pursued. We are lucky enough to have three dedicated coders on Armageddon MUD: Morgenes, Tenebrius and Tiernan, as well as a few other staff members willing and able to wade through the bugs file and tinker with things upon occasion. How, then, does an administrator keep these rare beasts happy? The following four steps may help.
1) Communicate: When asking for new code, try to let the coders know exactly what is desired. For example, instead of ‘Let’s make archery more complicated,” a staff member might propose “Let’s put a range on archery, so the farther away the target is, the harder it is to shoot it.” A full description of the the idea, perhaps including examples, such as fake logs showing what the idea will look like when being used, helps make sure the originator of the idea and the coder are on the same track as far as things like syntax and usage are concerned.
The same holds true for bugs. Describing how it’s supposed to work as well to how it’s working right now helps clarify ideas. Coders want to know if the bug is REALLY a bug, or something being reported because it doesn’t work as the reporter feels it should.
With bugs, give the coders as much information as possible, including how to reproduce the bug. Examples by way of logs are great, and if they include some form of error message (or message that they’re getting that shows it’s an error), it often allows the coder to track down what section of the code needs to be worked on.
Make sure people aren’t bumping into each other. On Armageddon, we’ve got a coder’s board, where people post changes as they make them. This alerts fellow team members to what they’re doing and is also helpful if unexpected bugs crop up, enabling people to track exactly what got changed and when. Two people should not be working on the same idea at once unless they know it, and can divvy up the work accordingly.
2) Have a purpose: Will it get used? Is it something players are asking for? This one is a matter of ego, but we’re all human and we all do have egos. Seeing their work getting used, regularly and as envisioned, is a reward beyond any thanks or congratulations other staff members can give a coder. Track player requests, through entries in the bugs/ideas/typos files as well as emails to the account and posts on the general discussion board in order to convince a coder that the players want, and will use, something.
Generally, with new ideas figure out how they are moving towards some goal. A piece of code like a new skill is going to sound more interesting if it fits into some overall purpose, such as a master plan of non-combat related skills for the economy than it would if it is just a random idea. You are also going to end up getting more out of the idea if it is part of a greater whole.
Make it innovative. Some coders like to be trail breakers, to feel that they’re not just playing catch-up with another mud, but are creating ideas and concepts new to the mud community. Some ideas get requested to ‘balance’ things out between groups: guilds, or races, or mount speed. When a coder starts to feel like the code they’re doing that day only works to nullify a change made last week, then they’re going to start wondering what they will be asked to implement tomorrow.
3) Share the work: Do as much of the grunt work as you can for the coders, including helping thoroughly test, providing help files and documentation, and fleshing things out. In testing, give coders information about what is not working and how to recreate the result. Be precise about what needs to be changed: not ‘the plague of locusts spell needs to do more damage’, but ‘it needs to do about twice the damage it is now.’ When something requires a new help file or modification of an existing help file, do not expect the coder to do it, but supply it yourself. If it is something that requires building, provide the items. Teamwork of this kind, when it is working well, is terrific, and will often produce amazingly cool results.
4) Appreciate: Good coders can never be praised sufficiently. We try to make sure that players know who is responsible for new and interesting changes, by posting information about them in the news as well as in our weekly update, which is a mailing our players can subscribe to, which provides information about changes, staff and world news, upcoming recommended playing times, etc. When players write in with compliments or feedback on a code change, make sure that the note gets passed along to the person , as well as that the coder knows how cool or slick you think the ideas they have implemented are as well.
There is a tendency sometimes to regard coders as resources that spit out code at request. But the fact of the matter is that treating coders in that way will frustrate both sides, leading coders to become discouraged and unmotivated to implement new ideas and builders to feel that their coding needs are not being met. These four points may help avoid such frustration.
Creating an Online Presence for Your Group: Some Basic Steps
Trying to set up an online presence for your group or organization? Here’s some basics to think about.
One: Include a blog on your website that has new content on a regular basis.
This first step is key to a better social media presence, because it influences your search engine rankings. Better search engine rankings draw more traffic to your site, as do good keywords, and if your blog features information about the group, it’s pretty much guaranteed to have the appropriate keywords.
Establish realistic criteria for “regular”: daily? weekly? biweekly? What can you actually expect to do?
Figure out how you will generate such content. Some suggestions:
Group member announcements, interviews, and guest posts.
Group events and news.
Posts drawing on other social media, such as announcements of new videos on the Youtube channel (see point 4) or Pinterest boards (see point 5).
Calls for volunteer positions and interviews with volunteers.
Yearly best-of lists or review columns.
This blog should drive the group’s presence on social networks. Posts should automatically propagate to other networks, thereby relieving the pressure for someone to be managing and posting to individual streams, such as Facebook and Twitter, as well as presenting a more unified and consistent approach.
Two: Keep your Facebook policy simple and free.
Social networks rise and fall, but currently Facebook’s attempts to monetize itself by making you pay for messages or pay extra to reach people is making it less useful to those of us who want the most bang for the buck. Simply put, recent changes make is so not everyone who’s liked your page or followed you is seeing your posts.
Basically all you need is a public Facebook fan page to which blog posts (generated in point 1) are automatically posted and which people can “like” in order to receive news of the organization via that social network. Here’s a sample of my writerly FB fan page and one I did for a recent book. (Feel free to “like” them!)
Three: Use Google+.
As Facebook’s popularity falls, Google+’s is rising, particularly internationally. There’s space to be innovative here. Set up an open community. Certainly blog posts should get propagated to here, but make the most of Google+ technology and encourage people to use Hangouts, share documents, etc.
Four: Use Youtube.
Users like more than just text, and video is one way to get more interest, if your group is one likely to generate videos of events, gatherings, speeches, etc. Each time a video is put up, there should be a blog post with a link and brief description, thereby generating blog content.
Six: Make it easy for your group members to connect.
Make social media information, such as Twitter or Facebook handles, available to users. Provide directories of alumni on the various networks. For example, someone joining Twitter might find a list of all group members currently on Twitter useful. Here’s my list of Codex members on Twitter.
Seven: Make it easy for your group members to create community.
Provide a way people can upload announcements to the blog for a moderator to check and post on a daily or weekly basis. Encourage people to reply to each other’s posts and pass them along on social networks by noticing and rewarding community efforts as well as by leading by example and being an active and responsive community member.
Eight: You don’t need forums or mailings.
Creating a log-in for a forum or subscribing to a newsletter is one way for people to reach you, but social media has the advantage of reaching out to new as well as established community members. It’s as easy — in some cases easier — for someone to check your group’s Facebook page as it is to log into a forum. Physical mailings are costly; e-mail lists need to be maintained.
Nine: Use the community.
Your members include people who are invested in the organization and are also social influencers. The organization should be making the most of this. Here’s some possible ways to do so.
Create social media posts that include calls to action, asking people to pass along information.
Generate guest posts for the blog from the community by calling for volunteers to write them.
Generate Youtube videos and Pinterest boards via the community by issuing calls to collect images or videos for a specific event or contest.
Ten: No matter what, have a succinct and coherent plan.
Figure out what the social media mission is (perhaps increase membership and establish brand). Establish (again, realistic is important) criteria for success in the various social media, such as number of website hits via Facebook each month, number of Twitter followers, etc. Check the success rate on at least yearly basis, perhaps better every six months or even three, given how fast social media can change.
Give things a unified feel. The background on the group’s Twitter page should be the same one used on Facebook or on the blog. Use the same font where possible.
Have someone who’s in charge of all this, rather than trying to do it by committee. Having someone oversee things makes sure that gaps don’t get missed.
_________________
Prefer to opt for weekly interaction, advice, opportunities to ask questions, and access to the Chez Rambo Discord community and critique group? Check out Cat’s Patreon. Or sample her writing here.