Are We Spamming You?

What is the etiquette on personal marketing? How many times to you have to post on Facebook or Twitter before people know you are doing a thing they might want to check out? At what point does it become annoying? These questions have been bothering me lately, not because I’ve got something to promote (yet), but it seems as though I’m the last to know when my friends are doing something creative, like a webcomic, a music album, or home business.

Of course, I could just ask people what they’re doing through private messaging, but that just sounds rude. You might catch them at the exact moment of their life when circumstance stands to rip away all of their artistic dreams and toss them into the ether. Or you might remind them that they haven’t worked on their thing in ages, and that their big chance might have slipped away.

Now, if you’ve already made a thing, how do you get the kind of feedback you need to get better? Your only option there is to solicit comments and criticism privately, but then, there is always that shadow of a doubt that you might be terrible and everyone is just too polite to say anything.

As someone with delusions of creativity, I want to see my internet feeds full of people trying new things. I want to see that first painting as much as I want to see that advanced cosplay prop photographed with a new lighting rig. Art is such a personal kind of communication. It increases our collective self-knowledge in a way that’s different from the kind of social media overshare that we’re all afraid of. There are some squicky aspects to it, but I’m just be generous with my likes and comments until we figure them out.

Contributing to Open source in 8 easy steps

 

If you want to find a job as a programmer, a four year degree may not be enough.Formal education can only tell employers so much about what you know and how you work. Fortunately, most of the internet is now run by open source software, which anybody, and I do mean anybody, can contribute to. In 2015, over 98% of servers are run using some form of Linux, an operating system that was written by community of thousands over the past 23 years. http://www.w3cook.com/os/summary/ Almost every kind of software out there has an open source counterpart that you can download, compile, or make changes to yourself. It’s a great way to teach yourself programming and get the attention of prospective employers. You may think, well that’s fine and good for a genius like you, James, but how do *I* get into open source software? Easy, just follow these 8 steps.

1. Get a Github account
Github.com is kind of like Facebook for programmers. It allows you to post your code and track all of your changes using a handy version control program called git. Just head to github.com and pick a username and password!
2. Find a project
This step is going to be different for each person, but you generally want to pick something that people are using and are contributing to. That way you can get more feedback from people in charge of the project or from the users. You can find new projects by browsing github, sourceforge, or by looking up any old open source product you like to use, like firefox or WordPress. When it comes to web software, my favourite place to find new projects is Refactorcop. It was a winner at the 2014 rails rumble, and it analyzes github projects on Ruby on Rails, and makes sure they comply with the code standards in the Ruby style guide. You can use Refactorcop’s search engine to find projects that need code cleanup, a process that doesn’t change the program’s functionality, but ensures that the code is easier to read and contribute to.

3. Check the issues page
Once you choose an open source project, you should check the issues page on the repository to find out where you can contribute. These may be features, bug fixes, or general annoyances that users have noticed. These issue pages are also a good way to tell if your project is active. Active projects mean that you will be able to get quick feedback on any code you contribute.

4. Fork the project
“Forking” refers to a process where you create your own “branch” of a software project within its version control system, which is kind of like a family tree for computer programs. If you are still confused, I think Github’s help page can do a better job of explaining it then I can.

5. Download and Test the project
This may be the most important step of the whole process. It proves that this program you want to work on isn’t broken. It can also give you some inspiration for changes you want to add yourself. Use the git clone command to download the code.

6. Program
This is where that four year degree (and a lot of google) comes in. Add your code, make sure it’s readable, test it out, and commit it to your branch!

7. Submit a pull request
Once you are confident that your code has made the software better, send a pull request to the original project. Here is Github’s tutorial on pull requests.

All that’s left is to wait for the project manager to approve your changes, and voila! You are now contributing to the open source community! Sit back, crack a beer, and know that you have made the future just a little bit better! Thanks goes out to Dan Kubb and everyone else in the Fraser valley Ruby Brigade who introduced me to this whole process.

Introducing the Writing Machine

Well, it looks like I’ve been called out. I had been thinking of starting a writers group. You know, an online place where people could come together in the spirit of mutual creative motivation. It’s always easier to keep your word count up if you have 2 or more people expecting your word count every day. But I had a question, what happens when you finish your first draft and you are not creating new material? How do you track your editing if you are not using a word count to track your progress?

So I decided to talk to my favourite self-publishing experts at the Smarter Artist Podcast, and asked them how they would track their editing.

Believe it or not, they answered! We had nice little back-and-forth about how one would do this and they said they would put my question on a future episode. And they did! You an listen to their answer here, but basically, you can use the number of words in the chapter or short story you are editing as your word count. Of course, you can track other factors like time spent, the place you are working in, even the time of day.

When I found this podcast episode, I realized that I had not started the writing group I  mentioned in my email. They did not use my last name, and I could simply disavow the proclamation forever, but I decided if I needed to kick in the ass to do this, this podcast episode would do the job.

So, after messaging all of my writer friends, I started a new group on slack.com. I called it the writing machine because I want to focus on the day-to-day habit of writing. Before all that discussion about prose, structure and character development can happen, I believe that you need to focus on production. You can’t improve a product that’s not there. If you develop the habit of writing every day, it becomes automatic, and so it’s a writing machine.

I always get a little nervous setting up groups like this, but I promised myself that I would learn more about creating communities this year. What better way to learn than by creating one myself? There’s still plenty of room here at the writing machine. If you want to join, send me your email address, and I’ll send you an invite.

Dear Internet,


So how am I doing?

I wish there was more to tell you, but things are still going rather well. The day job is still there, the house is still amazing, and my three-year-old has discovered Star Wars. And as it turns out, he is a Jedi like his father before him. Even though I’m living the whole adult lifestyle, with all the responsibilities that it entails, things are pretty quiet. I haven’t had quite a routine like this since I left high school almost 20 years ago. Before, if I wasn’t worried about withering job prospects, I was worrying whether I could save enough money to buy a house, or sell the condo I already owned, or how I could keep my son alive and reasonably well-behaved.

It was only in the last year that all these questions were answered with a resounding yes. Over the past few months, I have had the chance to feel bored for the first time in years. And it feels great!

Still, because life is just fundamentally unfair, I feel like I miss that sense of struggle. I’ve lived with it for so long that I get a little sense of loss as well as a sense of relief. Of course, some other crisis could blunder around the corner and I’d feel like me again, but it just doesn’t feel right to wait for something like that.

I need to strive for something outside of my daily routine. It will help me figure out my own limits, or at the very least keep me sane. I think I can do that through my writing.

I’m not exactly happy with it, and that’s great thing about it. There’s room for improvement. I haven’t done it as much I would like, but that’s because I put most of my efforts into finding and keeping a career. Now that I’m more experienced, I don’t have to busy myself learning every technology, I just have to refine my skills with the tools that will help me with my job. That leaves me time to focus on my other competencies.

So, as of this writing, I have almost completed the first draft of a novel I started a couple of years ago. I’ve been able to finish it by dictating portions onto my phone and having it transcribed by voice recognition software. I decided to keep the writing habit going by recording an audio journal. Most of it is dull and unpublishable, but I found the more I did it, the more I had to say. So, I have two hours a day, to and from work, to write anything I want from the comfort of my car without inconveniencing me, my job, or my family. Of course, I don’t talk while I’m navigating bad traffic, but for the calm spots of my commute, I can write a little bit, every day, without too much interference.

If the material comes out regularly, I can focus on other aspects of my craft. Like if my tone is far too intellectual, or whether I need to start writing fiction, or if there’s an opportunity to get paid for my writing. Money is not the reason I love to write, but if I want a good metric of success, it’ll fit the bill. I can start off by updating this blog once a week, and I’ll look for other places to post my work. To date, I only have one rejection letter from the Magazine of Fantasy and Science Fiction. That was 15 years ago. For me, the undiscovered country is my writing career, and it’s time for me to start exploring.

4 Questions for 2016

Rummaging back through my 2015 posts, I found that I had set a bunch of goals for myself. Sure, I accomplished a few things last year. I moved, put another 10,000 words on my novel, and read 88 books (okay, most of them were graphic novels and audio books, but still). Other goals were kind of a bust, like restarting one of my old blogs, or setting up a twitch streaming channel. There was only one difference between the goals I achieved and the goals that I did not. It’s all habit. Just about everything that I’ve completed or finished last year came down to whether I was working on it every day for a given length of time. It’s one of those dull truths that you can only learn from experience.

Now that it’s a new year, I want to change my focus. Last year, it was all about finding out how to achieve, now I want to find out how to make a bigger impact. So instead of having goals for 2016, I want ask some basic questions to frame my actions. It’s about making better choices about what do, rather than how to do it. Here’s what I want to know in 2016:

1. How do I create community?

Throughout my life I’ve put a lot of emphasis on going it alone or taking the path less travelled. It’s given me the courage to seek out a lot of new experiences and take on unusual challenges. However, that effort only really pays off when you can share it with a great community.

Communities have brought us the current convention scene, hospitals, and copious amounts of open source software. There is still a lot I don’t know about them, though. How do you create a good community? How do you keep a good one going? I guess my first step to figuring this one out is to contribute more. I need to share things that I’ve found or created. I also need to encourage everyone else who tries to do the contributing. So, if you like to share your work, expect my likes and comments.

2. How do I use my knowledge to help people?

It’s a funny thing. The older I get, it feels like my knowledge is getting rarer. Everyone gets in to more specialized fields and suddenly I have more friends who don’t know about computers than those who do. How can I share that knowledge in a way that can help a lot of people? The great thing about sharing knowledge is that doesn’t cost anything to distribute. Even 20 years ago if you wanted to educate people you at least needed to print out a pamphlet or something. These days all it takes is a Facebook page and you are off to the races. The trick then, is to know what people want to know at any particular place and time.

3. How do I automate more?

Automation is the very soul of my career. Programming takes human thought and it applies it to the same repetitive tasks, over and over again. It frees your brain up for the sort of specialized thinking that humans are good at, but machines aren’t. Of course, automation doesn’t need to apply to just machines. I agonize over a lot of little decisions, such as when to place a phone call, where I really should just make a choice and accept the consequences.

4. How many cute little cafes can I take my wife to?

There’s this place in Aberdeen Center called the Sugarholic cafe. It had well-dressed wait-staff and a lot of crown moulding. I had a croquette sandwich, and Sara had some crab pasta. I want to find more places like that.

So there you have it. A little bit of navel-gazing, but with a direction to look outward. I’m still going to work on stuff, too. The novel is going to be DONE this year, come hell or high water. Beyond that, I’m not going to plan any future side projects. I’m going to be in a different head space once this one is done, so I can make the decision when I get there. Other than that, I’ll just try to keep my house clean, get to work on time, and hang out with my family on the weekend.