Sunday, September 30, 2012

Tech handyman

Jack of all trades, master of none. That is a phrase that I can certainly apply to myself. Over the years I have traded professions and jobs many, many, many times. Even to this day I am not for certain that what I am doing now will be the same in the next year or two. A lot of people will go through life and work many odd jobs here and there, but can one make a career of odd jobs? There used to be a time when doing odd jobs was something that a person could making a living doing, and I think those days are coming back. Just being a handy man. Can I rebuild an engine to a car? No, but I can replace a bunch of the parts with a little bit of work. Can I build a house? No, but plumbing gas lines and running electrical I am your guy. Need me to write you a new OS? Ha! How about I just install one that works for you. I can see it already, if this job doesn't exist now, it will soon. I programming handy man.

We write scripts, applications, fix broken things, and help set up things. I am not talking about for medium to large companies either. I am talking about mom and pop, your neighbor, their friends, etc. Some of you might already be building websites for random people, and that is a good start. Why stop there? I know I like automation, you should too. You can use your knowledge of scripts to help facilitate somebodies life. But where can you automate? How about everywhere! Lets start with WiFi. It is a good idea to change your passwords every so often, but WiFi is a tough sell to update. I know for me I have the following devices that would have to be updated; Xbox, PS3, Three laptops, Two phones, and a TV. If I change the password I will have to go and update all of those devices. Suck is not the correct word to use on the amount of time and effort that takes. This leads to simpler passwords, as I don't want to type them in all those devices. I need a script that schedules a password change on all of these devices!

Well shit this blog got sidetracked, I guess I will plan this out down below and start building this thing.

First thing I will need is to have a password generator. I am sure there are plenty I can integrate with and not have to reinvent that wheel.
Set up a scheduler that will alert my apps that the password is changing and give them an encrypted version of the password.
Then decrepit the password and reset it on the scheduled time of change.
I will also need a way to reset the password on the router, hopefully I can find one with an API that I can access.


I will start this project on windows devices first, then move on to others. In my following posts, I will point you to the direction of my repository(ies) so you too can see the code.

This was in no way where I was headed with this post, but I like it.

Wednesday, September 19, 2012

Small Victories

I don't know about you, but I know that when I see a large task on my plate, it is easy to push away and come back to later or never. One thing that I find that is helpful is to knock out a few small tasks and then the big one seems smaller.

Take for example my day yesterday. I was having the toughest time staying focused. Then I was tasked with modifying a couple build jobs on Jenkins. They weren't hard tasks, just I am the only one in my group that can do it. Just doing these three tasks made the rest of my day go by much smoother and before I knew it, the large task was being completed and it didn't look menacing.

So now I look at large tasks and break them into a small of task as seems possible. Those that are familiar with Agile, know this is the methodology. Write a story, then create sub-tasks. I find if I take a little extra time to plan my attack, I can finish things much faster in the long run.

Monday, September 10, 2012

Motivation

Motivation and I do not get along. I try and find reasons to do things and I always struggle to keep with it. Here are a few tools that I have found to help me get work done.

1. Accountability - I just recently started going back to the gym on a regular basis. What is keeping me going is that I have about four friends that I go with. They each like to do different things, so I train with the one that shares exercise interests for that day. One friend likes to run, one likes to lift, the other likes to do classes. By the way, if you have never done a group class, holy balls those are tough depending on what you are doing. I did a core class, my abs hurt whenever I took a breath the next day. I digress, but if you can get somebody to do something with you, and even depend on you as much as you depend on them, you will create a habit. It might be a drug habit, but at least you are sticking to something right?

2. Gamification - Why is it that I am an expert at guitar hero, but people want to Dimebag me if I pick up a real guitar? It is because learning a real guitar is hard! There is no easy way to just get good at it. Unlike guitar hero where if I suck, I might still get a decent score. In real life you get told you suck. So how should I gamify life? Well for starters I use fitocracy when I work out. It is a simple tool that you can use to track your exercise and you get points, badges, and level up. There are even quests to complete to help you get in shape.

In Visual Studio there is an extension you can install called Code Hero. If gives you badges for code reviews, code checkins, etc. This makes it fun to code against other people and try to earn badges before the others.

Or even what I am doing right now, blogging. I started this blog a few months ago and that is where it just kind of stayed. Well this week we started Iron Blogging. About 5 or 6 of us now have to write one post a week, or stick $5 in the beer money jar. Once the jar reaches a certain point, you go out drinking. Simple enough right? It is good because it forces me to write things down that I would otherwise ignore.

3. Responsibility - This is strangely, for me anyway, is the most important factor in finishing work but often the most ignored. I know that it is my job to get this application fixed, yet why am I on reddit right now? Oh bills need to be payed? I would rather buy a video game. The baby crawled on the balcony? Terminal velocity isn't too high for him. It is strange to me that this factor almost has no effect on me. Need to fix that.

If there are any other factors, or you know of any other cool tools, leave a comment below. I like to try new shinny things that make life better. Especially if it delays responsibility.