Day 8: Provocation and Patience

Watch this video. This is what an occupying army during a war looks like:

This is a civil police force. I use civil in the sense of “not military”, as their behavior is anything but civil.

Instead of keeping the peace, they are actively provoking an angry response. It is as if their attitude is “ok, we got this cool paramilitary gear – let’s use it!”. This aggressive provocation is also not confined to a few bad groups; instead, we have seen over the past few days that this is representative of police around the country.

They don’t show the entire crowd, but from the bits you could see, they easily outnumber the police 10 to 1. Riot gear or no riot gear, if the crowd was ever angered enough to attack back, they would quickly overwhelm the much smaller police force. That hasn’t happened yet, but it doesn’t take a wild imagination to envision it happening soon.

And while a part of me really wants to see these bastards get what’s coming to them, in the long haul an event like that would be just what the Trump regime needs to declare martial law, suspend civil rights, and get rid of everyone in their way. Trump knows that if he loses the election he will be quickly indicted, and will no longer have presidential privilege to hide behind. I don’t doubt for a second that he would tear up the Constitution and embrace the strongman role if it means never having to give up power.

We just need to hang on for a few months longer, vote out Trump and the entire Republican party, and then we can begin restoring the country. There is a lot that is broken; electing the people who will do that work is the first step.

Day 7: Equipment

I’m deliberately taking a step back from my more political posts of the last few days in order to mentally process the events of the past weekend to get some perspective. Don’t worry, though, I’m sure I’ll be back to political commentary soon!

When people learn I’m a photographer, one of the first questions is invariably “So what kind of camera do you use?”. This is a perfectly understandable question, and also a completely irrelevant one.

When I first started out in photography, I had a friend who was a staff photographer for the city newspaper. He used a Canon F-1, a black-bodied professional camera. I noticed, though, that he used black electrical tape to cover the words ‘Canon’ and ‘F-1’ that were prominently written in white letters. I asked him about the tape, and he said that he got so sick of people seeing it and saying things like “Canon? Why don’t you use Nikon instead?” that he covered up the identifying marks.

A camera is a tool, nothing more. If you want to improve your photographs, buying an expensive new camera, or switching from Brand A to Brand B is not going to help.

I used to golf a lot, not that I was very good at it – I enjoyed being outside with a task to focus on, the company of other men, and, in retrospect, I enjoyed time away from my (now ex-) wife. Golf equipment companies are notorious for marketing expensive new clubs with the promise to hit the ball farther and straighter. But for everyone but the top professionals, it isn’t the club that’s holding you back; it’s your skill. You would be infinitely better off spending that money on lessons with a golf pro than on new clubs. Yet every year golfers spend their money on things that won’t help them improve.

This holds true in so many areas. New tools won’t make your woodworking better, and buying a vintage Stratocaster won’t help you play guitar better. So what will?

In almost all cases, the two things that will help is a good teacher, and lots of practice. The teacher can get you on the right path, and correct you when you stray off of it. You still have to put in the time, though, if you ever want to improve.

So when should you upgrade? When you’ve mastered that equipment, and its limitations are becoming an obvious hindrance to you. Or when different equipment offers functionality that your current equipment doesn’t (and you truly need those functions).

For photography, where you get the most bang for your buck is from better lenses, not camera bodies. Last year I dropped my camera and broke the mount for the zoom lens that was my main workhorse. When I looked for a replacement, I saw that there was a professional version of the lens that had better optics, a wider aperture, and tougher construction. I really considered it, but couldn’t justify spending an extra $1300 on it. So I ended up getting the same model as the one I broke, because as nice as the pro model lens was, I couldn’t see it improving my images enough to justify the cost. Maybe someday when money isn’t a concern…

The best camera in the world is the one you have with you.

Chase Jarvis

The quote above is from a book about iPhone photography. I found out about this book after I had made a similar statement about my realization that I could create some wonderful images with my iPhone, and one of the people I was speaking with mentioned the book. I don’t own the book, but I certainly agree with the sentiment. You can have all the fancy equipment in the world, but if it’s home in your closet when an opportunity presents itself, it doesn’t do you much good.

Which brings me to the answer to my choice of camera: the Olympus OM-D E-M5 II. I was in the market for a DSLR, and looked around at the different options. I read about a new style of mirrorless camera called the Micro 4/3 system, which was significantly smaller and lighter than the full-sized DSLRs. Since my primary mode of work is walking around looking for images, smaller and lighter were big selling points. I read the reviews, and chose Olympus because of its stabilization system, and the M5 as it was the middle choice that balanced features and price. I’ve been very happy with it, and the images I create with it.

Day 6: Revolution

I started this daily blogging last week as an exercise to help me get back in the writing groove during the “shelter at home” while unemployed reality of the pandemic. I had thought about writing about my photography, or my new sourdough breadmaking skills, along with an occasional political rant. Little did I realize just what was going to happen in the coming days.

You don’t have to look very far to see the coverage of the widespread protests around the country. In many ways it feels like a perfect storm of events, in a way that is summed up astutely by Trevor Noah.

I have read a lot of this coverage, but one particular thread on Twitter really summarized it best. Here is the first post of that thread; I encourage you to click on the tweet below to see the whole thread. Watch the videos, remembering that unless you are one of the protesters, the police in those videos represent you.

These people are protesting the brutality of their police forces. And how do those police respond? Watching these, it seems as though they think that even greater levels of brutality is the answer.

The thing that struck me reading and watching all this is numbers. The numbers of protesters vs. the numbers of police. Sure, the police have weapons, but all it would take is for the crowd mentality to be enraged enough for those people to fight back. I remember images of the Arab Spring almost a decade ago, when the citizens of those countries had had enough, and through sheer numbers overthrew several military-back dictators. If the protestors here in the US ever got similarly enraged, and decided to attack back, the police wouldn’t stand a chance. Sure, they would kill and wound many, but the sheer numbers of protestors would quickly overwhelm the police, and much blood would be spilled.

Much has been written about how we have no leader in the White House, but I see it differently. We do have a leader, but he is not leading us. He is leading the white supremacists, inciting them to assert themselves. We saw that when he encouraged the armed protests against the lockdown measures for COVID-19; we saw it back in Charlottesville with his “very fine people” comments. We see it in his embrace of strongman leaders around the world, and his disdain for the free press. They hear his words and are provoked to act.

Unfortunately, many of the police are also white supremacists, and are also hearing his words. They hear him say “When the looting starts, the shooting starts”, and take it as their marching orders to attack the protestors with ever-increasing levels of violence.

I don’t know what the next few days and weeks will hold. I have little hope for national leadership stepping up to calm things down; rather, I fear that they will continue to stir the pot. My only hope is that leaders begin to emerge from the people, and that these leaders can direct this energy into a positive direction. I saw one great example of this:

I hope that many others like Killer Mike come forward. And as I mentioned earlier, the police represent you. They do all of this in your name. Turning away from this with an “oh, I’m not political” is your cowardly way of saying that “I’m fine with all of this”.

Damned If You Do

The recent spate of canceled conferences, sporting events, etc., due to concerns about spreading infection of the coronavirus COVID-19 has made me think about what will happen if these efforts are successful.

Back in the late 1990s, people realized that a lot of software written in the mid-20th century had a problem: due to the expense of storage, programmers shortened the way years were stored, so that something like 1978 would be stored as 78, with the century assumed. This was fine, but as that software aged, and the coming change of century approached, it was realized that many critical software problems would go from December 31, 1999, to January 1, 1900. This was the Year 2000 problem, commonly abbreviated as Y2K.

Having recognized the issue, most software companies invested heavily in updating their software to use full 4-digit representations for the year. It was tedious work; I personally had to write a series of tests for my projects that verified that things would continue to work in the year 2000. But because the warning was heeded, by the time that January 1, 2000 came most software had been updated. As a result, all of the doomsday scenarios (such as planes dropping from the sky) had been avoided. Yes, there were some billing glitches that were missed, but because of the intense efforts to address this problem, there were no serious problems.

What was the public’s reaction to this? Did they laud the developers for successfully averting a potential problem? Of course not. Instead, they reacted with disdain: “I thought this was going to be the end of the world! Nothing happened!”.

And that’s the point: because the warnings were heeded, and action was taken, nothing catastrophic happened. It didn’t mean that the problem wasn’t real; it just meant that the tech community understood the problem, and addressed it head-on.

So I’m wondering what will happen if the common-sense steps we are taking now to avoid spreading this virus ends up that not that many people get sick or die: will the Fox News people start complaining that it was all a politically-inspired hoax? That the liberal media tried to make Trump look bad by crying wolf? It almost makes me think that if there is a terrible body count, people will be ridiculed for taking ineffective steps, but if there isn’t such a terrible outcome, the steps that were taken will be ridiculed as overreaction, or, even worse, a political stunt.

Damned if you do; damned if you dont.

Why Go to a Tech Conference?

Good question! It does seem unnecessary, especially since most major conferences record every talk and make them freely available online. PyCon has been doing this for many years, and are so good at it that the talks are available online shortly after they are finished! So there’s no real penalty for waiting until you can watch it online.

I suppose that if you look at tech conferences as simply dry tutorials on some new tool or technique, the answer would be “no, you should save your money and watch the sessions at home”. But there are much bigger benefits to attending a conference than just the knowledge available at the talks. I like to think of it as pressing the restart button on my thinking as a developer. By taking advantage of these additional avenues of learning, I come away with a different perspective on things: new tools, new ways of using existing tools, different approaches to solving development issues, and so much more that is intangible. Limiting yourself to the tangible resources of a conference means that you’re missing out. So what are these intangible things?

One of the most important is meeting people. Not so much to build your social network, but more to expand your understanding of different approaches to development. The people there may be strangers, but you know that you have at least one thing in common with them, so it’s easy to start conversations. I’ve been to 14 PyCons, and at lunch I make it a point to sit at tables where I don’t know anyone, and ask the people there “So what do you use Python for?”. Invariably they use it in ways that I had never thought about, or to solve problems that I had never worked on. The conversation can then move on to “Where are you from?”; people usually love to brag about their home town, and you might learn a few interesting things about a place you’ve never been to. Many people also go out to dinner in groups, usually with people who know each other, but I always try to look for people who are alone, and invite them to join our group.

Another major benefit of attending in person is what is known as the “hallway track”. These are the unscheduled discussions that occur in the hallways between sessions; sometimes they are a continuation of discussions that were held in a previous talk, and other times they are simply a bunch of people exchanging ideas. Some of the best technical takeaways I’ve gotten from conferences have come from these hallway discussions. When you’ve been to as many PyCons as I have, there are many people I run into who I haven’t seen since the last PyCon, and we can catch up on what’s new in each other’s lives and careers. Like the lunchtime table discussions, these are opportunities to learn about techniques and approaches that are different than what you regularly do.

Closely related to the above is the “bar track”. Most conferences have a main hotel for attendees, and in the evening you can find lots of people hanging out in the bar. The discussions there tend to have a bit less technical content, for obvious reasons, but I’ve been part of some very technical discussions where the participants are all on their third beer or so. But even if you don’t drink alcohol, you can certainly enjoy hanging out with your fellow developers in the evening. Or, of course, you can use that time to recharge your mental batteries.

Yet another opportunity at a conference is to enhance your career. There is usually some form of formal recruiting; if you’re looking for a change of career, this can be a valuable place to start. I’ve heard some managers say that they won’t send their developers to conferences because they are afraid that someone will hire them; it makes you wonder why they think their developers are not happy with their current job! But even if you’re not looking to make a career move at the moment, establishing relationships with others in your field can come in handy in the future if your job suddenly disappears. You can also learn what companies are looking for skills that match yours; I was surprised to learn that companies as diverse as Disney, Capital One, Yelp, and Bloomberg are all looking for Python talent. As an example, back at PyCon 2016 I met with some people recruiting for DataRobot, and while I didn’t pursue things then, they made a good impression on me. When I was looking for a change last year and got a LinkedIn message from a recruiter at DataRobot, I remembered them well, and this time I followed up, with the result that I’m now happily employed by DataRobot!

Unfortunately, I’ve seen people who arrive to a conference with a group of co-workers, attend the sessions, eat with each other at lunch, and then go out to dinner together. By isolating themselves and confining their learning to the scheduled talks, they are missing out on the most valuable part of attending a conference: interacting with your community, and sharing knowledge with your peers. If this sounds like you, I would advise you to try out some of the things I’ve mentioned here. I’m sure you will find that your conference experience is greatly improved!