For me, everything is about UX. By UX I do not mean UI but the "User Experience".
Users don't have to be customers. They could be consumers of your API; they could be the programmer that sits beside you that uses the function you just wrote.
I believe that as often as is feasible, you should "play detective"; put yourself in your user's shoes and ask yourself:
- What do I want to achieve? (and how do I get there as fast as possible)
- What am I capable of ? (what are my skills, computer literacy, environment, etc)
- What is "normal" for me ?
Personally, I love a challenge.
A challenge could be learning a new technique, tool or language; it could finding the right UX that makes the product "feel right"; it could even be finding just the right architecture that best solves the current problem.
I believe in being lazy
If you do something often then its likely worth automating. This is why I love the concepts of Automated Testing, Continuous Delivery and DevOps.
While I love a good technical debate, I try to stay away from zealots.
The longer I spend in this industry to more I am certain that the technology, the tools, the ideology that you use to get the job done doesn't matter. What is important is that you regularly examine these things to see if the current approach is the most effective and be willing to experiment with new things.
I love to learn and share knowledge.
If I find someone that know's something I don't, I wanna learn it. Likewise if I know something you wanna know then pull up a chair.