Category Archives: Opinion

Using Computers to Create

I am enamored by the state of technology in 2014. I look around and see the computing power that permeates society and it blows me away. It seems like everyone has a smartphone or tablet that they can use to message someone on the other side of the planet, watch an awesome video of a baby and dachshunds, or just chill out and read their subreddit of choice. It is easier to communicate with others and consume content than ever before.

What I really love about all this computing power, though, is the freedom it gives for everyone to create. The democratization of powerful technology in the developed world has made it possible for almost everyone to be a photographer, videographer, or writer. We can share our creations and get feedback from our peers in no time at all.

When I look back to my childhood, some of my fondest memories are creating things on my computer and sharing them with the world. One instance in particular really stands out to me.

In middle school and early high school I was obsessed with a game called Empire Earth. This was the first game I ever played online and I would sneak up to our family computer to play it late at night with friends.

Eventually, I noticed that there was a scenario editor option in the menu and clicked on it. After that, my entire worldview about what you could do with a computer changed. I spent hours and hours building scenarios and teaching myself the tips and tricks of the editor. In a way, this was my first real introduction to programming (even though I didn’t think of it as such).

Eventually, I released my scenarios for Empire Earth and got some really positive feedback (the web was a much more positive place in 2002-2003). I eventually lost interest in favor of being a football player, but those experiences continue to stick with me. In fact, I still have the scenarios that I created:

Going forward, I hope to continue to create and I invite all content consumers to use the technology at their fingertips to put their mark on the world. Write, draw, photograph, record, or whatever else you can think of and share it with the world. Be a creator, not just a consumer, and you’ll feel more fulfilled. And maybe, just maybe, 10 years from now you’ll look back with pride at what you created and the paths it led you down.

Understanding GitHub’s Awesomeness

Until a couple of weeks ago, I didn’t understand what it was that makes GitHub so awesome. It isn’t the pretty interface to the Git version control system or the fact that people can post code and other things for the world to see and use. GitHub is awesome because it makes it absolutely trivial to collaborate and help out other programmers.

It all started with a tweet:

I thought it was pretty cool that Erik was sharing this with the world so I took a look at the plugin. I opened the plugin file that had just been committed and started perusing the code. I immediately saw this line:

wp_register_style( 'wap8-flickr-me', plugins_url( 'flickr-me/css/flickr-me.css' ), '', WAP8_FLICKR_ME_VERSION, 'screen' );

I noticed that plugins_url was missing the second parameter needed for it to function correctly. I wanted to help Erik out by providing a fix, but I didn’t have a bunch of time that morning. In the past, providing help would have meant checking out the code, making my change, generating a patch, and sending that to Erik in some way. Alternatively, I could have provided instructions for a fix like I did for the WP SMTP config plugin.

Because the code was hosted on GitHub, I didn’t have to do either of those things. The interface allowed me to create a fork, edit the file, and send a pull request – all through the web interface. In case I’m not illustrating how easy it is to do this, here’s some screenshots of the process:

Click the edit button to start the process

Click the edit button to start the process

A fork is created for you - make whatever changes you need to

A fork is created for you – make whatever changes you need to

Enter a summary of your changes and then click the "Propose File Changes" button

Enter a summary of your changes and then click the “Propose File Changes” button

Enter some more information or details if you want, and then click "Send Pull Request"

Enter some more information or details if you want, and then click “Send Pull Request”

Finally, you get to send a tweet letting the person know that you’ve sent them a pull request:

And that’s why GitHub is awesome. Not just because you can find solutions for problems you’re having, but because it makes it as easy as possible to collaborate and help others.

As a Freelancer, Not Every Day is Great

I wrote the other day about not conflating your sense of self-worth with your work. That is particularly important on the days where your work isn’t going as well as you think it should.

When I started freelancing, I thought I would never have a bad day of work again. I’d be in control of my own destiny and, since I was going to do my best work without fail, every day was going to be more awesome than the last.

I don’t think this could be any further from the truth. Over the last five years of freelancing, I’ve definitely had more good days than bad, but I’ve had some days that were really, really terrible.

Most of the time, the bad days came because of something I couldn’t control. Maybe there was a storm and our power was knocked out, or my motherboard on my computer had a corrupted BIOS and wouldn’t boot, or a client was late getting me feedback but absolutely had to launch tomorrow because of some reason they hadn’t told me about.

There’s not much to do in these situations but buck up, do the best you can, and try to have a positive outcome to the day. Accomplish one thing and you’ll set yourself on the path to success tomorrow.

If you’re getting into freelancing and think everything will always be awesome, you’re wrong. Accept that fact, prepare to deal with it, and you’ll be better for it.