Not a lot of useful, thought out content this time (like every time really, but that’s another point), just a few quick things that I’ve run into over the past few weeks that are worth noting for future reference. Continue reading »
Software is awesome, but it’s not going to save the world
I love software, and I love writing software, but these days there seems to be a belief amongst developers that software and good programming can solve all humanity’s problems. Don’t get me wrong, software can solve a lot of problems, especially problems that involve keeping track of a lot of stuff, tasks very repetitive, and doing lots of math. However, as good as software is, some problems are systemic, people problems, and no clever coding can make that disappear.
All developers have been in this situation, sitting around, staring at the monitor, trying to make sense of the code staring us back. It’s a tough, miserable period for developers going through this. Specifically, it’s a tough, miserable period for developers that doesn’t have to happen. No matter what the code that does this to you, there’s 1 common, glaring thing in common with the code that does this to developers – there are hardly any, if any at all, comments in the code. In the interest of sparing developers this pain, here are some simple rules about commenting that will reduce developer suffering whenever somebody has to read your code. Continue reading »
When Marissa Mayer ended Yahoo’s work from home policy, the Internet went nuts, and stayed nuts for days, which is a pretty long time for Internet nuttery. There’s been all sorts of random talk…um….personal annecdotes…er….”news articles” have sprung up discussing this very important issue of 1 specific company’s policies. It’s almost as if people think that Yahoo, great, shining beacon of largely irrelevant and nobody cares anymore, is a precursor to the whole tech industry (something it hasn’t been in a long while). Some people have at least either tried to either limit their discussion to Yahoo’s particular situation, or moved everything to a broader discussion of telecommuting in general. I’m going to focus on why I personally don’t like to telecommute if I don’t have to. Continue reading »
Originally when I cooked up this idea, it was going to be all about how Google didn’t really get mobile, and how they were getting sidetracked by Android. I still think Android is more of a distraction than Google shining at mobile, but I do think they’re at least starting to understand what they need to do to continue to be successful and relevant as people leave the computers at their desks and turn more to phones and tablets. Continue reading »
Why I don’t believe in a “happy medium”
Don’t get me wrong, I’m not anti “happy medium”. After all, who could be against a magical mythical scenario that has all the advantages of the other options and none of their disadvantages? I’m also for unicorns, flying cars, making a trillion dollars (after taxes) in salary, peace in the Middle East, and calm, tempered, well-reasoned, rational political discourse – but those aren’t real either. The thing about “happy mediums” you have to remember is that they don’t exist, therefore you can never hit them. Continue reading »
Programming resolutions
I was going to write something about the 1 or 2 tricks I’ve learned about trying to wrap your head around large codebases, but the last few months at work have pretty much made it clear to me I know nothing about knowing things, so that one’s pretty much in the scrap heap at this point. My very first post tried to capture that sense of being overwhelmed and in over your head when you start a new job, and it turns out it’s pretty easy to keep that sensation alive 6 months in. I wouldn’t be surprised to discover that I know less about what I’m doing now than I did when I started. Continue reading »
I’m sure there are lots of ways to handle documenting things (design documents, release notes, requirements, etc.) in a software development environment, but I’ve only ever seen 2: a corporate wiki, and something from Microsoft (I forget the name of it, all I really remember is that it had a check out/check in model, and all the developers thought sucked. I’ll just call this option “the Microsoft option” for lack of something more accurate). From what I’ve seen, wikis have a lot of promise, and do a great job, but to live up to their full promise they still require an anal retentive developer dedicated to periodically reviewing and fixing the documentation for anything they actually deal with on a day-by-day basis. Continue reading »
We all have our own personal Kryptonite, that little something you encounter as part of your job that just never seems to go right no matter what you do. For me, that Krytonite is server configuration. It doesn’t matter how clear you make the how-to directions, I will find a way to fail at it no matter how hard I try to get it right on the very first time. It’s like magic, or karma, or some other-worldly force that’s determined I fail when trying to set up any new environment. Continue reading »
What’s in your box?
For the first time in my professional career, I’ve found myself working without any type of laptop. I can still work from home on my own machine, but given how easy it is to telecommute as a software developer, it struck me as odd that my work machine would be just a desktop. It led me to think about just what the reasons could be that I have a desktop for working, and why everywhere else I worked chose to make sure that I had a laptop capable of doing development work, or at the least could remote desktop into my development machine. Continue reading »