Tuesday, December 10, 2013

Ditch the politics and see people as people


Like it or not, politics is a part of most offices. The games that people play for getting a project or advancing up the career ladder are somehow part of the nature of every company with more than just a few employees.  In my opinion, the culture that this breeds is poisonous. Friends collaborate but individuals compete. The biggest problem that I see is when your co-workers and managers stop being your friends and become the competition.  This is most destructive in engineering organizations where collaboration is the real goal to building something awesome. By focusing on building friendships in a company, you can create a culture where politics are minimized and productivity is increased. It doesn't take some complicated team building exercise, just a few minutes to get to know someone and to treat them as you would like to be treated.

Tuesday, December 3, 2013

The challenge of new technology isn't new

a favorite theory of mine—to wit, that no occurrence is sole and solitary, but is merely a repetition of a thing which has happened before, and perhaps often.

- Mark Twain

Books, radio, and TV all share the distinction of being inventions that have changed society. Likewise, they have each been demonized as corrupting children and harming society. Today, it seems laughable that people would fear the printing press as something negative, but you try going back in time and printing a Bible in English. In many respects, the internet is the modern day printing press in its ability to change society. It also plays the role of whipping-boy for traditionalists who fear the possible outcomes. There is some aspect of our nature that always leads groups to think that this new invention will destroy the next generation, only for the naysayers to forget when their fore-bearers said the same about them. Still, they aren't completely wrong either. Change is exciting and the desire to be a part of whatever nouveau technology can be addicting and consuming. To me, the message is simple: use caution and reason in your use of technology and avoid excess.

Tuesday, November 19, 2013

Death schedules are deadly

Finishing the Masters of Doom made me grumpy. It brought back memories of my own "death schedule" and lead me to question whether or not our industry is fundamentally screwed up. I love what I do and I am passionate about it. That passion when left unbridled however, comes at a price. This cost is often in the form of friends and family and a loss of contact with the world outside of software.  The key players in the Master of Doom ultimately do okay, but not without leaving a trail of broken relationships behind them.  We as an industry worship people like John Carmack for their brilliance and work ethic, but after learning about more of the past of "Engine John", I wonder if he really is a role model for what we want in the industry.

The software industry historically has a tendency towards overworking its assets and we as developers often take on the burden to get ahead or to be the person who saves the day. If we don't stop this trend, I fear we will burn ourselves out, not just as individuals, but as an industry. Last year, for about 5 straight months, I worked 60-80 hour weeks in order to help ship a product where I played a critical role. I took me a while to realize it, but the stress that built up had a long lasting impact on me that I still have painful memories of.

I am passionate about software and would love to be recognized for what I do, but I am not going to do it at the cost of my family or other obligations. I think this attitude towards a balance between work and family is something that we need to work to cultivate and to put on a pedestal those who successfully manage a career and family. This problem obviously isn't exclusive to software, but our industry is perhaps the most capable to achieve this goal as we can leverage technology to work in a fashion that keeps us close to our families and productive in our careers.

Sunday, November 17, 2013

We aren't diverse, but we aren't exclusionary either

I will be the first to admit that the tech industry, particularly in Utah Valley, can be quite the mono-culture. If you aren't a white Mormon male from a middle class family, then you better at least be prepared to be surrounded by them. That said, I am not always sure the criticisms of the tech culture as being hostile or unfriendly towards women are always fair. At least in my experience, I have never heard disparaging comments towards women or their programming abilities. Historically, computers have been seen as the playthings of misfits and social outcasts, and those who enjoyed tinkering with software were immediately labelled as such, regardless of its truthfulness. It should come at no surprise that an industry that has always been cast as full of socially awkward nerds would fail to attract a hugely diverse range of people. That isn't to say we can't do better in being more inclusive, and I think analysis of what we can do is important. However, before woman will feel comfortable joining the ranks, those outside of the computer industry must also recognize we aren't all basement-dwelling Star Trek fans.

Tuesday, November 12, 2013

Open source works in the real world

Open source software is misunderstood. To many, the logic behind the open source movement doesn't make sense. I have heard the phrase "Why do something for free when you can get paid?" many times, even from professors or experienced developers. The primary thing that many misunderstand is that open source is not about altruism or not making money, its about recognizing the nature of problems and their solutions. Closed source software assumes that problems are well defined and that a one-size-fits-all solution can be found. In reality, problems are rarely defined and those problems that are often have subtle variants that necessitate a tweaked solution. Open source allows me to leverage the efforts of others with similar problems and find a solution custom fit for me that I then can contribute back and help others. This process, when repeated, creates software that is more capable and more powerful than what any single company could create and has a side effect of creating an ecosystem that fosters growth and even profits for those who understand how to leverage the ecosystem. I have grown used to the inquiries about why I use and contribute to open source and still extoll the virtues, but I am confident that as our problems get more complex open source communities will continue to create solutions and prove me right.

Thursday, November 7, 2013

A modern meeting place

It was only a few years ago that The Church of Jesus Christ of Latter-day Saints seemed to have serious technology problems. The websites were ugly, the search results for the church were misleading, and the message that come across to the wider audience was fragmented. The technological transformation of the LDS church in the last few years is nigh unto miraculous. Today, church members have  functional and beautiful tools in the form of LDS.org and accompanying mobile apps. Gone are the days of the always out-of-date paper ward list. The church has greatly improved their presence on the web through mormon.org and good SEO - no longer does a search for 'mormon' lead only to the opinions of anti-mormons. More impressive is the way the members of the LDS faith have come together online to share of their faith in a consistent and friendly manner. Facebook is home to many missionaries, some even wearing name-tags. The fact that conference trends on Twitter every 6 months is incredible sign to the world that we aren't religious nut jobs incapable of reasonable thought, but normal, technology savvy people who just happen to have a strong faith. I used to think the church didn't "get" technology. It seems I was wrong, and I am glad I was.