How to act like you (maybe actually) care about your work – Ann Arbor PHP/MySQL Group – November 17th 2012
Here is the video from my talk about how to be a better developer. For more information, check out my page dedicated to the talk.
I was setting up a basic Selenium test setup and ran into a pretty immediate show stopper:
Cannot find firefox binary in PATH. Make sure firefox is installed. OS appears to be: MAC
I hadn’t yet installed Firefox. After I installed it, however, I still continued to get the error.
My googling lead me to this page, and while the advice is generally what needs to happen, I wanted to detail my exact fix, and make life a little simpler for everyone else.
As you can see, the solution is two fold:
- Create a file at ~/bin/firefox with the short script to run firefox. I got unclear errors w/ the source page’s suggestion, and this resolves it.
- Create a ~/.profile to add ~/bin/ to your path.
I was thinking about what my dream job would be today, and it occurred to me that I have already figured out my dream job, and how to get it. I have it, in fact. I just haven’t figured out how to actually get paid for it.
See, I have always liked to help people. Never doing well in school, though, ruled out a whole list of options. However, one thing I have always enjoyed is programming.
I wonder how I ended up helping out in #symfony? It seems I made up my own dream job.
So, having your dream job is great, but not being paid to do it, well, that’s not going to work. I have a family to take care of, and they have this unfortunate habit of eating.
So — it’s a work in progress. I suppose that’s pretty much like everything else we do, no?
There’s so much about programming that is incredibly satisfying and empowering. But it doesn’t change the fact that, for me, programming builds an acutely negative mindset over time. I’m always asking the question “what’s wrong with this?” Positive people are always focusing on “what’s good about this?”
As soon as I saw it, I immediately sent the following back to him:
We can’t spend our lives mired in depression by seeing everything we do as imperfect. Nothing is perfect. Especially with our “programmer’s eyes” for technical detail, we will almost never achieve a level of quality that we would consider perfect. In fact, I would be worried if we did achieve perfection with any regularity.
Instead, if you start to feel the same way as Myles did, take a step back, and a deep breath. Stop looking at your code base, and start looking at your usage metrics. Look at all of the people using your code. Deriving value from your code. Improving their lives because of your code. If you don’t have access to that information, ask for it! Validate that your “bug-riddled mess” is actually helping people do something they want (or need) to do. Seeing this will help fuel your creativity, and drive you to provide ever better solutions.
Take some time to connect to your users. They are your best defense against the negative subtext that we operate in. View your work through their eyes, and see how they derive value from it. It’s a powerful thing, knowing you are improving someone else’s life — and we get to do it every single day. How lucky are we?