Archive for the ‘Uncategorized’ Category

Our Valued Customers: Mini Tales From the Comics Store

Posted on:

I used to work in a comic book store. Technically, I worked in the video game LAN in the back of the store, but I spent enough time there and occa­sion­ally manned the front enough that I can say, well, I worked in one.  When I was 17, I thought this was the pin­na­cle of jobs. I could climb no higher than work­ing in a comic book store, being paid to school n00bs at Quake. 

I lot of the “reg­u­lars” were… decid­edly sin­gle.  I mean, that doesn’t go far enough in describ­ing it.  They were absolute women-​​hating ass­holes.  Women were made to feel incred­i­bly unwel­come in the store by their leer­ing and out and out crude com­ments.  Many a friend has told me how hor­ri­ble that place seemed to them back in the day .  I was com­pletely igno­rant of it at the time. Well, almost. The “reg­u­lars”, mostly friends of the owner, were very deri­sive of me hav­ing a girl­friend.  They would often try to advise me on how my girl­friend would “screw me over,” and when I didn’t take them seri­ously, they’d insult me instead.  I wrote them off as being a lit­tle bit­ter, but I was liv­ing my dream and I wasn’t going to let their neg­a­tive atti­tudes drag me down.

Reading this web­comic, Our Valued Customers, has brought a lot of mem­o­ries of that time back, and not in a good way.  This is a web­comic that is not funny in a “ha ha” kind of way, although some of them are.  Most are funny in a “this is so fucked up, I hate human­ity now” kind of way.  It’s absolutely mes­mer­iz­ing to read these lit­tle quo­ta­tions of things actu­ally cus­tomers have said in store.

As a writer, I don’t want to shy away from stuff like this.  As a human being, the abject igno­rance, bla­tant misog­y­nism,  and gen­er­al­ized homo­pho­bia on dis­play makes me want to become a hermit.

Stop Worrying About Subgenre

Posted on:

There’s been an awful lot of chat­ter around the web lately about sub­gen­res and steam­punk in par­tic­u­lar.  We’ve seen attacks on steam­punk, defenses of steam­punk, and a thou­sand shades of opin­ion in-​​between.  As some­one who likes steam/​clockpunk enough to name his busi­ness after it, I have a dog in the fight.

But I’m not drawn to these discussions.

Genre in gen­eral, as far as I am con­cerned, is mostly a con­struct of mar­ket­ing. Booksellers care about them, and the read­ers do too, but I ques­tion how much it helps an author to con­sciously choose a genre or sub­genre.  Right now, I feel bad for any­one writ­ing a steam­punk novel, because steam­punk is clearly, at least to my eyes, reach­ing a sat­u­ra­tion point rivaled only by zom­bies.  To be on that bus, you needed to write and sell your steam­punk novel 2–3 years ago.  I’m sure we’re going to con­tinue to see nov­els from estab­lished authors in this vein, but it wouldn’t sur­prise me if edi­tors and agents are already mov­ing on in their search for the next big thing.

My advice to you, and to myself, is to ignore the sub­genre when you write.  You can ignore that advice and still be suc­cess­ful (of course). I know, for exam­ple, that John Scalzi set out delib­er­ately to write mil­i­tary SF because it seemed to be sell­ing well, but I won­der what we would have got­ten from him if he had set out to write his own sub­genre.  Scalzian fic­tion, we would call it, prob­a­bly.  What would it look like? Who knows.  It’d prob­a­bly have fart jokes though! (and I mean that in a pos­i­tive way)

That’s not to say that if your pas­sion is steam­punk, I think you shouldn’t write a steam­punk novel. By all means, punk away.  This post once again boils down to “don’t lis­ten to oth­ers and write what you love.”

But I think this advice espe­cially holds true when it comes to labels.  Labels are for mar­ket­ing and that comes later.  Right now, when you’re still string­ing words together and shap­ing a book just seems like the wrong time to get caught up in such thoughts.  It’s not the sub­gen­res that exist today that get me excited.  I’m exited to won­der just what weird, wild, and expres­sive forms and gen­res writ­ers are work­ing on right now, as we speak, that we’ve never seen before.  I can’t wait to see what they turn out to be.  Regardless of where they are shelved in the bookstore.

Friend Plug: Portland Counseling and Therapy

Posted on:

One of my best friends from col­lege, Roy Huggins, has recently returned to the states after a long stay in the JET pro­gram in Japan.  He and his wife taught English in the Sapporo area for… 3 years I think it was?  They had some enter­tain­ing adven­tures that were fun to fol­low via our alumni mail­ing list and Facebook, but we’re all glad to have them back state­side so that there’s a chance we might actu­ally see them in per­son again.  And no, I’m not jeal­ous at all about them liv­ing in Japan.  Not one bit.  Lucky bas­tards…

Anyway—

Roy’s based in Portland, Oregon and has recently opened his own prac­tice as a ther­a­pist, Portland Counseling and Therapy .  I know quite a few of you are based in that area, so if you or any­one you know is look­ing for a ther­a­pist, you should con­sider Roy.  He’s one of the best peo­ple I know, period and while he hasn’t coun­seled me in a for­mal sense, his friend­ship got me through many a tough time in my life. 

The Cat Who Believed Himself To Be a Bathroom Rug

Posted on:

I said to some­one recently—I can’t remem­ber who—that I had a corol­lary to Godwin’s Law.  Call it, I dunno, Jer’s Corollary.  It is:

As a con­ver­sa­tion among any group of writ­ers con­tin­ues, the like­li­hood of the topic turn­ing towards cats approaches 100%.

Over the past week­end, I was involved in about half a dozen pet-​​related con­ver­sa­tions, and dogs or other types were men­tioned in only one of those.  Cats do seem to hold the major­ity among the writ­ers that I know.

That said, I’m now going to relate a hope­fully funny anec­dote about one of my cats.

We have two, nearly iden­ti­cal to most view­ers, named Rosencrantz and Guildenstern.  Roz and Gil for short.  They’re both very pecu­liar ani­mals, and absolutely huge.  Not nec­es­sar­ily fat, as Gil is a coiled spring of anx­ious mus­cle, but they’re over 15 pounds each last I checked. 

It’s Gil that has become (even more) strongly weird in the past few months.  He like—no, demands—to be dripped upon.

The minute you turn off the shower, he races into the bath­room and sits on the rug right out­side the tub.  You have no choice but to stand over him as you get out.  And inevitably you drip upon him.  All he does is lay there, fur flinch­ing a bit with each droplet.  If you move away, he moves to get beneath you again.  We’ve taken to just wring­ing out our hair and wip­ing water droplets off us onto him.  He lux­u­ri­ates in it.  There is really no ques­tion that this is exactly what he wants us to do.

He’s always had this weird fix­a­tion with the green towel rug in our bath­room.  Whenever he wants to be pet­ted, he will meow at you and lead you to this rug.  He flops down heav­ily and rolls onto his side on it, squirm­ing as if to say, “get busy, pal.”  And he purrs so loudly it echoes off the tile and linoleum. 

He will some­times jump up onto the lip of the tub while you shower and give a sharp meow, as if to say “come on, fin­ish up, I want my turn.”  He has never mus­tered up the courage to get into the shower with me, but I always have this feel­ing that he wishes he could.  Better first-​​hand water than second-​​hand drip­pings, I suspect.

Given this odd behav­ior, I can only assume that my dimwit­ted cat has con­cluded through some strange cat-​​logic that he is not a cat, but is in fact a bath­room rug.  We’re think­ing of get­ting him a rub­ber under­side for Christmas to com­plete the transformation.

On Novel Writing

Posted on:

Nanowrimo is here again.  I’ve always had mixed feel­ings about it per­son­ally.  As some­one who has never man­aged to suc­cess­fully com­plete a novel, I can under­stand the idea behind it, but the grump in me thinks that it encour­ages peo­ple to try and take short­cuts with their writ­ing, which in gen­eral is a bad idea.  Artificial dead­lines can be help­ful, but I won­der if some amaz­ing nov­el­ist who needs 3–4 years not weeks to fin­ish a book has tried nanow­rimo and failed, and given up on it entirely.

Not that his­tory isn’t already lit­tered with failed artists and writ­ers for even more capri­cious reasons.

I’ve been say­ing since about 2005 that “this is the year I will write my novel.”  Each year, I find a rea­son not to write one, most of them silly.  Ultimately, I figure—I’ll write a novel when my craft and ideas are ready.  Until then, I’ll con­tinue to build up writ­ing mus­cle tone by work­ing on the sprints or medium dis­tance work.  I’m eager to do a marathon.  One of these days.  Probably next year.

And yet… I’m sorely tempted.  Very tempted to ham­mer one out over November. Or bet­ter yet, December, just so I can be a lit­tle contrarian.

Assorted Thoughts From the Road

Posted on:

For a con­ser­v­a­tive state, Missouri sure does have a lot of “adult” stores.  But I guess that’s bal­anced out by all the JESUS IS WATCHING YOU JERK IT bul­letin boards.

So much road con­struc­tion.  Where’s my god­damned hovercar?

How the hell did any­one drive any­where solo with­out GPS? Getting through St. Louis prac­ti­cally requires wise Native American guides.

Thank god for Stephen Fry and his four­teen hour auto­bi­og­ra­phy on audio book. 

Does the entire state of Illinois smells like road­kill skunk?  (Hour and a half later) Yes. Yes it does.

Vandalia?  Wonder how that town got its name?  Settled by descen­dants of the Vandals? 

Is there any­thing more blind­ing than the set­ting sun in your driver’s side mirror? 

Indiana appears to be lack­ing state pride.  I didn’t notice any gar­ish ban­ners announc­ing my arrival within its bor­ders.  Come on Indiana, you’re not that bad of a place.

Okay, so maybe Indiana’s motto should be “Generally indis­tin­guish­able from Illinois.”

At one point, my GPS locked up.  After 15 min­utes, it still said I had 2 hours, 15 min­utes left to reach my des­ti­na­tion.  For a brief moment, I feared I had died in a car crash and this was to be my own per­sonal hell.  Then I thought maybe my super­pow­ers finally kicked in and I was out­side the time stream.  Then I rebooted the GPS and the time stream returned to normal.

Just another 12 hour day of mind­less driving!

Lesson in Progress: How to Balance Travel and Freelancing

Posted on:

I’ve spent this week get­ting increas­ingly wor­ried and agi­tated about tak­ing this trip to Kansas and then on to Ohio for World Fantasy Convention. In fact, by the time you read this, I should be past Denver and on my way east on I-​​70.

The idea of vaca­tion and travel is some­thing I’ve strug­gled with how to man­age since start­ing my own busi­ness as a web designer for authors and pub­lish­ers.  I have to admit that one of the aspects about the lifestyle that appealed to me most was the abil­ity to set my own sched­ule, not just on a daily basis, but also on a weekly or monthly one.  If I want to take some time to go spend with my fam­ily in Kansas, I can. Theoretically.

The truth is, though, that travel costs money, which means I need to work more to pay for the trip, but by tak­ing the trip, I’ll be work­ing less.  So I end up with this sit­u­a­tion where I’m try­ing to jug­gle projects and travel, and I haven’t even talked about how the graphic design work isn’t done very eas­ily on a lap­top (writ­ing and writ­ing code, how­ever, goes very smoothly).

So while it seems from the out­side that you can have a lot more free­dom in this area, the truth is, when you have a day job, you may have strictly lim­ited time off, but at least then there’s some­one to cover for you.  When you’re a one man show, you have to either make sure you have some­one in on your project with you, or you have to be pre­pared to drop the daiquiri, pull out the lap­top, log in, and fix the problem.

I’m hop­ing that this trip has a min­i­mum amount of dis­rup­tion of my work. I’ll be dri­ving on Friday/​Saturday, and will be ready to work hard Sunday. I’ll work a reg­u­lar sched­ule Monday through Wednesday, but then Thursday, Friday, and Saturday, I will be at World Fantasy Convention and not really work­ing a reg­u­lar set of hours. I’ll drive back early Sunday morn­ing to Kansas, mak­ing the 12 hour trip hope­fully in record time, col­lapse, and get up Monday and work a full day.  Then I will either spend all of Tuesday dri­ving back to Colorado, or I’ll work a half day, drive and stop halfway at a motel, then be home Wednesday mid-​​afternoon to put in some work Wednesday afternoon.

So that’s a lit­tle exam­ple of the plan­ning I have to make for myself.  I try to keep it flex­i­ble, in case I’m in the mid­dle of Kansas and someone’s server explodes, or if Monday morn­ing, there’s a ton of stuff hit­ting the fan, so I need to stay over a cou­ple of days to get things in order.  The key here, as in most things, is main­tain­ing flexibility.

Really?  That flex­i­bil­ity that seems so appeal­ing cuts both ways.  You have to be ready for it.

Links of the Week, September 16th, 2010

Posted on:

Boxers, Briefs and Books

My father-​​in-​​law sends me links from time to time, and I always stop what I am doing because they’re gen­er­ally fas­ci­nat­ing.   Last week, he sent along this link to an Op Ed in the New York Times by John Grisham:

Writing was not a child­hood dream of mine. I do not recall long­ing to write as a stu­dent. I wasn’t sure how to start. Over the fol­low­ing weeks I refined my plot out­line and fleshed out my char­ac­ters. One night I wrote “Chapter One” at the top of the first page of a legal pad; the novel, “A Time to Kill,” was fin­ished three years later.

I quote that part, because it’s heart­en­ing to know he spent 3 years on a novel.  Sometimes it feels like it will eas­ily take me that long to write my first novel.  But what really fas­ci­nated me were all the jobs he worked through his life before he became a writer pro­fes­sion­ally.  It takes a long time for us to find our call­ings in life some­times, and that’s great.  The jour­ney is as much fun as the destination.

I’ll have to write about my job his­tory some time on a Monday post—I’ve had some inter­est­ing work expe­ri­ences over the years, and you’ll never guess which job at which I had the most fun.

Some very fine writ­ing advice

I’m absorb­ing a lot of writing-​​related mate­r­ial because of my com­mit­ment to build­ing this blog up as a use­ful resource, with inter­est­ing mate­ri­als.  My cre­ative inter­ests tend to move in cycles, and right now writ­ing is push­ing to the fore­front.  Intrigued by the title, I read this post by Sebastian Marshall on how he accom­plishes so much writ­ing, and it has quite a few use­ful tid­bits scat­tered throughout.

Try to think of every vis­i­tor as an hon­ored guest. If you think of “web traf­fic,” 15 vis­i­tors is dis­ap­point­ing. If you think of 15 peo­ple decid­ing to spend time with you they could spend any­where, and they’re choos­ing to spend it with you – they’re choos­ing to spend their life energy read­ing your thoughts – that’s very cool and hum­bling, and sud­denly chug­ging along with 15 read­ers feels pretty good. I had between 10 and 40 vis­i­tors for the longest time. The site is start­ing to blow up a lit­tle bit more, had 746 unique vis­i­tors on September 1st and have been above 200 daily vis­i­tors con­sis­tently recently, but I was pretty hon­ored even when 10 peo­ple were stop­ping by for 4 min­utes each. That’s 40 min­utes of life energy peo­ple are choos­ing to spend with you instead of some­where else. Like, that’s pretty hum­bling. (author’s emphasis)

I’d never read Ozymandias in the right frame of mind until he brought it up here.  It’s now ris­ing to the top of the list of my favorite poems as well.  It’s like a memento mori in word form. Wonderful.

Things are a bit short this week. I haven’t been prowl­ing the web for good con­tent as much as I’d like, but I have been get­ting plenty of web design done, as well as squeez­ing out a few words on a new short story.  It’s a bal­anc­ing act.

Tutorial: Adding a custom meta field as a dropdown menu in WordPress

Posted on:

One of my favorite things about devel­op­ing the LightSpeed site was the inter­est­ing cus­tom CMS fea­tures I needed to cre­ate to accom­plish the fea­tures that we wanted.

I knew I wanted to have a cus­tom post type for the Issues so that I could aggre­gate all con­tent from an issue in a sin­gle post, and also store things like buy link urls for the var­i­ous e-​​issues all in a sin­gle place, rather than on each con­tent post itself. The idea being, the edi­tor cre­ates an issue, which stores links, cover image, mast­head image, artist link, etc.. When I am writ­ing tem­plate code for an indi­vid­ual post, I can grab the value of a meta field for the id of the issue and have all of that, or I can just query the lat­est issue for set­tings such as which mast­head graphic to use.

To make this work, I would need a way on the indi­vid­ual con­tent entries to link them to the issue posts.  This to be as user-​​friendly as pos­si­ble, so sim­ply using a nor­mal meta field and requir­ing some­thing like a post ID in it wasn’t going to cut it.  So I trolled the web and exper­i­mented until I worked up the fol­low­ing code to accom­plish the cus­tom select menus.

All of the code below goes in the functions.php file. This code has been cob­bled together from var­i­ous sources, pri­mar­ily this tuto­r­ial. If you want a more detailed walk-​​through, take a look at that. *ETA: I’m told the orig­i­nal of that tuto­r­ial can actu­ally be found at wefunc​tion​.com. It’s a bet­ter run down of the indi­vid­ual parts.

First, we cre­ate an array of arrays defin­ing the new cus­tom meta boxes that would appear. In the actual site, I imple­mented one of these for authors as well as issues (rather than cre­at­ing WordPress users to cre­ate a data object for authors), but I’ve removed that to sim­plify what I’ve pre­sented here.

$new_meta_boxes =
		array(
			"issueslist" => array(
				"type" => "select",
				"std" => "",
				"name" => "assignissue",
				"title" => "Set Issue",
				"description" => "select the issue for the content",
				"category" => 4
			)
		);

Our meta box array defines a type of field (text, select, textarea), a name, the title asso­ci­ated with it, a descrip­tion, and a cat­e­gory for the related con­tent. In this case, cat­e­gory 4 is assigned to all Issue posts types. I’m cur­rently using Magic Fields to accom­plish cus­tom write pan­els, which means I have not con­verted over to using cus­tom post types as intro­duced fully in WordPress 3.0. To sort con­tent out for my cus­tom write pan­els, I assign cat­e­gories to them, and then I exclude these cat­e­gories from most loops. They only dis­play when I write a cus­tom loop for them.

Next, we write a func­tion to loop through our $new_​meta_​boxes array and cre­ate the HTML used in the admin/​. One thing I noticed going through this code–I’m not entirely sure why I left the new_​meta_​boxes array out­side of the new_​meta_​boxes() func­tion. Oh, and yes, I don’t use camel­Case for nam­ing my func­tions and vari­ables. I find it’s eas­ier to screw up cap­i­tal­iza­tion than it is to leave out under­scores, so it saves me time on cod­ing. Your mileage may of course differ.

function new_meta_boxes() {
		global $post, $new_meta_boxes;
		foreach($new_meta_boxes as $meta_box) {
			$args=array(
			  'category' => $meta_box['category'],
			  'orderby' => 'title',
			  'showposts' => '9999',
			  'order' => 'ASC',
			);
			$args_future= array(
			  'category' => $meta_box['category'],
			  'orderby' => 'title',
			  'showposts' => '9999',
			  'order' => 'ASC',
			  'post_status' => 'future'
			);
			$getposts = get_posts($args);
			$getpostsFuture = get_posts($args_future);
			echo'<input type="hidden" name="'.$meta_box['name'].'_noncename" id="'.$meta_box['name'].'_noncename" value="'.wp_create_nonce( plugin_basename(__FILE__) ).'" />';
			echo'<h2>'.$meta_box['title'].'</h2>';
			if( $meta_box['type'] == "text" ) {
				$meta_box_value = get_post_meta($post->ID, $meta_box['name'].'_value', true);
				if($meta_box_value == "")
					$meta_box_value = $meta_box['std'];
				echo'<input type="text" name="'.$meta_box['name'].'_value" value="'.$meta_box_value.'" size="55" />';
			} elseif ( $meta_box['type'] == "select" ) {
				echo'<select name="'.$meta_box['name'].'_value">';
				echo'<option value="">'.$meta_box['title'].'</option>';
				foreach ($getposts as $option) {
					if ( get_post_meta($post->ID, $meta_box['name'].'_value', true) == $option->ID ) {
						$sel =  ' selected="selected"';
					} else {
						$sel = '';}
					echo'<option value="'.$option->ID.'"'. $sel .'>'. $option->post_title.'</option>';
				}
				foreach ($getpostsFuture as $option) {
					if ( get_post_meta($post->ID, $meta_box['name'].'_value', true) == $option->ID ) {
						$sel =  ' selected="selected"';
					} else {
						$sel = '';}
					echo'<option value="'.$option->ID.'"'. $sel .'>'. $option->post_title.'</option>';
				}
				echo'</select>';
			}
			echo'<p><label for="'.$meta_box['name'].'_value">'.$meta_box['description'].'</label></p>';
		}
	}

To explain what’s hap­pen­ing here: we’re using get_​posts to cre­ate an array of posts based on our set­tings from the meta boxes array. I’ve put together two post arrays here because we wanted to be able to set sched­uled issues as well as posted ones. By default, sched­uled posts aren’t queried, and I couldn’t fig­ure out how to use a sin­gle get_​posts() to get both future posts and pub­lished ones. Simple enough– I just tack on another fore­ach loop for the future posts to the bot­tom of the select. Still, it would have been bet­ter to just do one. I need to sort this out at some point.

Line 19 is a hid­den field with nonces for secu­rity, and comes into play in our save_​postdata() func­tion that we’ll get to later on.

Line 20 is our header for the select box.

Lines 27–43 deal with the cre­ation of the select boxes. For each of the get_​posts arrays, we loop through and echo out a title inside of an option and an ID as the value, so that we ulti­mately can save the value of select box to the meta field on the post, and call it using get_​post_​meta in our templates.

We also have some basic if else code check­ing to see what the type of meta box is, as I antic­i­pated maybe need­ing to add some reg­u­lar text fields, but never actu­ally needed them.

It’s not pretty and prob­a­bly not as effi­cient as it could be, but it works.

Next, we cre­ate the func­tion that we’ll actu­ally call when we add the action using WordPress hooks. Add meta_​box has a lot of para­me­ters that you can’t pass when you use add_​action, so you have to cre­ate a wrap­per func­tion like this. And it lets use one add_​action to cre­ate all the meta fields.

function create_meta_box() {
	global $theme_name;
	if (function_exists('add_meta_box') ) {
		add_meta_box( 'new-meta-boxes', 'Author Info', 'new_meta_boxes', 'post', 'normal', 'high' );
	}
}

In ret­ro­spect, I’m not sure why this has the $theme_​name global here. I should have com­mented that require­ment so I would know why in the world I have it here. Ah well. And here’s how we hook our func­tion into the admin so we get to see our hand­i­work in the WordPress admin:

add_action('admin_menu', 'create_meta_box');

All of the above will gen­er­ate our dis­play, but it doesn’t actu­ally save any­thing. This next bit of code, I took mostly unmod­i­fied from the other tuto­r­ial. This func­tion does all the nec­es­sary secu­rity checks– the nonce, check­ing the user to make sure they have the per­mis­sions to mod­ify the data, and finally adding the data, or updat­ing it, or delet­ing it, depend­ing on what’s there already. When you’re work­ing with small bud­gets, you learn to use what you can and save time, so as to save your clients money.

function save_postdata( $post_id ) {
	global $post, $new_meta_boxes;
	foreach($new_meta_boxes as $meta_box) {
		// Verify
		if ( !wp_verify_nonce( $_POST[$meta_box['name'].'_noncename'], plugin_basename(__FILE__) )) {
			return $post_id;
		}
		if ( 'page' == $_POST['post_type'] ) {
			if ( !current_user_can( 'edit_page', $post_id ))
			return $post_id;
		} else {
			if ( !current_user_can( 'edit_post', $post_id ))
			return $post_id;
		}
		$data = $_POST[$meta_box['name'].'_value'];
		if(get_post_meta($post_id, $meta_box['name'].'_value') == "")
		add_post_meta($post_id, $meta_box['name'].'_value', $data, true);
		elseif($data != get_post_meta($post_id, $meta_box['name'].'_value', true))
		update_post_meta($post_id, $meta_box['name'].'_value', $data);
		elseif($data == "")
		delete_post_meta($post_id, $meta_box['name'].'_value', get_post_meta($post_id, $meta_box['name'].'_value', true));
	}
}

All that’s left is to hook this in with add_​action to the save_​post hook, so that when a post is saved, the data in our cus­tom meta boxes are saved as well.

add_action('save_post', 'save_postdata');

So any­where I needed to get the value of the issues box, I just use the fol­low­ing code:

$post_author = get_post_meta($post->ID, 'assignauthor_value', true);

That gives me a vari­able I can then use to query against in a cus­tom loop, and then grab other cus­tom fields using get() which is pro­vided by the Magic Fields plugin.

So that’s the code in a nut­shell. Questions and com­ments welcome!

Freelance Tax Annoyances

Posted on:

I’m para­noid about taxes.  I’m con­stantly afraid that I’m going to end up mag­i­cally owing twice what I think I owe to the point where I save nearly every penny in antic­i­pa­tion of the tax bill.  Freelancer taxes are really screwed up, you see.  Sure, we get to deduct a lot of things like home office space, but we end up pay­ing dou­ble the social security/​medicare taxes that the employed pay, because the employer pays half of that usu­ally.    And then there’s the state income taxes, and the fed­eral income taxes, which are nor­mal, except we don’t have the lux­ury of hav­ing them with­held for us.

I was not set up this year to pay esti­mated taxes because I had not intended when I started out to be free­lanc­ing for the entire year.  I spent half the year look­ing for a job before finally giv­ing up on that and set­tling into being a full time free­lance designer.  I’ve done alright for myself in those last 6 months.  But I’m look­ing at my sav­ings and know­ing that a con­sid­er­able chunk of it is owed in taxes.  How much exactly is what I would like to know.  I don’t even begin to under­stand how the tax sys­tem truly works.

That’s all a long way of get­ting around to say­ing, I file early every year.  As soon as I have the paper­work.  I almost never fail to have my taxes done by the sec­ond week of February.  This year, I’m not sure what to do, because of a bunch of 1099 forms from my clients are slow to arrive.  Several have not even been sent yet, despite the fact that the gov­ern­ment requires that 1099s be mailed no later than January 31st.  Now, I have very detailed records of my income thanks to using fan­tas­tic invoic­ing soft­ware.   I  don’t need the 1099s to know what I made.  But I think the gov­ern­ment expects me to send them in.

Any tax experts out there know what the require­ments are regard­ing 1099s that are so damned slow in arriv­ing?  If I report the income myself, does it mat­ter if I don’t send a 1099 that didn’t come in time?

Ugh.  It’s enough to give me an ulcer.  You know, it’s not like free­lancers don’t have enough to worry about.  The com­plete lack of income secu­rity is plenty!