June 2, 2013

Lawyers vs. Engineers

Filed under: Information Politics, Politics — marcstober @ 11:41 am

Emblem-scales-red

A reaction to: “Attorney General: Aaron Swartz Case Was a ‘Good Use of Prosecutorial Discretion'” at Wired.com.

As you see by the date of the article about the Aaron Swartz case I’ve linked to, I’ve been mulling this blog post over for a while. 🙂

I’ve known a fair number of software engineers/developers (including myself) and also a fair number of lawyers (including immediate family).

It’s tempting to think we all view the world in a similar way: we work in systems governed by complex sets of rules and try to understand how those rules can be applied. But this masks an important difference.

Software systems, however complex they get, are fundamentally deterministic. Computers don’t make judgement calls, and they don’t make mistakes. If you get the wrong result, it’s a bug to be crushed. (Something that distinguishes professional developers from others is that for us, letting an issue go as an insignificant outlier is often more difficult than digging until you find a solution.)

For lawyers, laws aren’t processed by silicon CPU’s, they’re processed by human judges, juries, and prosecutors. For them, individual discretion is not a bug, it’s a feature. Furthermore, there’s a difference between litigators and corporate lawyers. Much as things like EULA’s are the bane of everyone’s existence, we can find common ground with the corporate lawyers who write them, because we get the idea that inputting a certain formula into “the system”–like a magical incantion–should lead us to desired results. Whereas litigators and prosecutors (and sometimes politicians) are much more comfortable in that risky space where one’s fortune can be changed, not simply by whether you followed the letter of the law, but by human judgement in applying it.

The point of the blog post isn’t to say that one worldview is right and the other is wrong, but that it might help everyone to understand that they are different, and that either way of thinking can be used for good or evil. Both sticking to the rules and never making an exception, and fighting to win by bending the rules, can lead to inhumane results. We need to strike a balance.

Learn more from EFF about the CFAA, the law used to prosecute Aaron Swartz, which gives prosecutors the discretion to pursue almost any modern computer usage as “hacking.”

May 13, 2013

Spying on the AP! What’s Wrong With America?

Filed under: Information Politics, Politics — marcstober @ 9:09 pm

When I was in fifth grade, one of my teachers went to visit Russia. I remember her telling us how there were fairly obvious wires going from their hotels rooms to the end of hall where government monitors could spy on guests.

Around the same time, I heard a Soviet joke: An American says, “American is a great country, I can say I hate President Reagan out loud on the street and I won’t get in trouble.” The Russian replies, “So? I can say that I hate that American President Reagan, too.”

The Cold War was in full effect, and spying on citizens, or controlling the press, was supposed to be something they did, our Soviet nemesis that Reagan called an “evil empire,” and what separated us from them, was that we were free, our rights protected.

Perhaps I was naive, but as a child of the ’80’s, this is what I learned as right and wrong. These days, when I hear about something that sounds like the government abusing civil liberties, I’m concerned, but I like to at least consider that maybe there’s another side of the story. Perhaps there was a misunderstanding. Perhaps, from the government’s perspective, they were doing the right thing.

But it’s hard to see how spying on the AP could be seen as doing the right thing. It’s not just a violation of someone’s privacy, it’s a violation of freedom of the press stated in the Constituion. And it’s not just a violation of a website that wants to see itself as “the press,” it’s spying on an institution that is literally the backbone of the free press.

Gov’t obtains wide AP phone records in probe.

March 22, 2013

Google Reader Takeout Reader

Filed under: Consumer, Information Politics, Software Blog — marcstober @ 7:24 am

Enough inkelectrons have been spilled over the Google Reader sunset. I simply offer a simple tool to take your Google Reader data from Google Takeout and convert it into a nicely formatted list of links to browse and re-bookmark/subscribe in your new favorite service (or save as a backup, even if you’ve found a new feed reading service).

Using it is as simple as unzipping your takeout file and dropping a file into the same folder.

  1. Unzip your takeout file.
  2. Download the file (right-click and “Save Link As…”) below and drop it in the Reader directory you just created (the one that has the JSON and XML files from Google).
    reader.html
  3. Double-click on the reader.html file in that directory.

This only displays part of your Google Reader Takeout data. Do not delete any other files!!!

No warranties, express or implied. None of the data in your takeout file is uploaded to me (although I may track usage of this tool).

March 3, 2013

Usability, Backward-Compatibility, and “Three-Way” Light Switches

Filed under: Design, House Blog, Usability — marcstober @ 8:40 pm

My nine-year-old daughter commented the other day that it was confusing to turn off the living room lights because you couldn’t just push it down to turn it off, sometimes you had to push it up and sometimes you had to push it down.

Indeed. It’s a so-called “three-way” switch, the biggest crime against usability that’s been foisted upon the world. These are the type of switches you use to control a light from two locations, like both ends of a hall. They look just like a classic light switch, that you push up to turn on and down to turn off; and they sometimes work the same (at least from the user’s perspective), but other times, depending on the state of the opposite switch, they work the opposite way. To add insult to injury, they’re called “three-way” switches when they can only be used in two locations. (Three-way refers to the wiring, with three instead of the usual two wires inside. In the rare occasion you need three switches, are you surprised that you need a four-way switch?)

As an aside, the typical toggle switch doesn’t offend me. Paddle switches with screwless wallplates are nice, but not necessary; I just want to fix the usability issue.

One solution would be a single push-button switch. In an example of what was old is now again, the 1950’s house I lived in as a child in the 1980’s had Honeywell Tap-Lite switches. (At least it did at first, my first exposure to electrical wiring was when my dad had to replace some 30 year old switches that failed.) Recently, Legrand has introduced push-button switches in its Adorne line. I think I might use these in my house.

An even better solution would be a switch that you could simply always push down to turn off. It could spring back to the center position, so if the switch at other end of the room was used it wouldn’t end up in the wrong position. But I haven’t seen such a switch for normal residential use.

The amazing thing is that all these switches are backward compatible. The living room switches above were a replacement for the original 1920’s two-button switches that failed after over 90 years of service! I like the character of those old switches (and there are reproductions available now), although the three-way version did have the same usability issue. But, I was able to swap out the 90 year old part with little more than a screwdriver. I think about this when I see USB charging ports that you can hard wire into your house now–will any new hardware and software of today be as compatible at the dawn of the 22nd century?

November 13, 2012

NEMUG Presentation on Test Driven Development

Filed under: Software Blog — marcstober @ 6:00 pm

View tonight’s presentation to NEMUG entitled “Test Driven Development with %UnitTest.”

Download as a ZIP file.

November 7, 2012

The Right to Tinker and Make Stuff

Filed under: Consumer, Politics, Software Blog, Uncategorized — marcstober @ 9:16 am

I’m amazed by the overwhelming 85% support for Question 1, “Right to Repair,” in Massachusetts.

Here’s a summary of the question (from boston.com):

Should auto makers be required to give owners access to the same diagnostic and repair information that dealers and authorized repair facilities have?

I suppose people will vote yes on this because they expect it will hit them in the pocketbook when they get their car serviced. But it’s also a vindication that people don’t think it’s wrong, and shouldn’t be illegal, to do what you want with stuff you’ve bought. I thought maybe I was crazy or at least living in a tech bubble from hearing that our elected leaders favor things like SOPA or TPP. Years ago I wrote to Barney Frank on the issue, and he strongly disagreed with me. And what to make of Chris Dodd’s new job?

Now, here are some more referendums I’d like to see pass:

  • People should have the right to jailbreak their devices. (This is now legal for iPhones–but not iPads nor other devices–because of a bureaucratic exception, not by right in the law.)
  • People should have the right to copy DVD’s to their iPad (without paying extra for a “digital copy,” like I did with the last DVD I bought).
  • People should have the right to keep, permanently, a book they’ve bought on their Kindle; it’s not a rental.
  • People should have the right to bring a book home with them from an overseas trip. It should be clear in the law this isn’t the same as a mass counterfeiting operation.
  • People should have the right to put their dancing baby video on the Internet without licensing the music on the radio in the background.
  • Girl Scouts should have the right to sing Happy Birthday at camp, without relying on the forebearance of those who could sue them.
  • People should have the right to create their own prayerbook with their church/synagogue’s liturgy, and not be told not to share it.

By the way, I don’t jailbreak my iPhone, and I take my car to the dealer for service. But I like to have that choice.

October 31, 2012

A Response About Ephemera From a Software Developer

Filed under: Software Blog — marcstober @ 5:36 am

The cover story of the Ideas section in this past Sunday’s Boston Globe talks about how academics use ephemera—for example, handwritten notes in the margins of books—and whether anything like it will survive from the digital age.

Those of us who create digital information technology, software engineers, understand the problem well and have our own solutions. Most software code is still written in simple text files, or encoded in open formats like XML. Every computer language has a way to insert comments, so its author can explain what they were thinking. We use version control so there’s a record of earlier drafts of our work. And we often publish our work as open source on sites like GitHub so that those who come after us will be able to use our work.

Why don’t other fields do the same?

July 8, 2012

Seeking Upside: Why I Care About Intellectual Property (and a Recent Court Decision)

Filed under: Business, Consumer, Economics, Information Politics, Politics, Software Blog — marcstober @ 9:54 am

I’ve long been a fan of open-source software. First of all, because you don’t have to pay for it, and who isn’t a fan of free? Second, even compared to closed-source free software, I prefer open, because I can rely on it. I might never look at the source code, but knowing that one can gives me some assurance that there isn’t anything bad (spyware, viruses) hiding and that I can continue using the software even if the original author stops providing upgrades or takes his business in a different direction.

Like a lot of other people in the technology industry, I aslo tend to see free software as something more than that, as a moral good, and intellectual property (IP) rights like a dangerous weapon that needs to be controlled. (With apologies to the NRA: “Patents and copyrights don’t kill innovation, patent and copyright holders do.”)

And after a lot of reflection on the matter, I’ve figured out why I feel this way: I have no personal upside. I don’t make money from IP rights. And on the downside, and I can lose money when others decide to exercise their IP rights. That doesn’t seem fair.

Here’s a thought experiment: If, like a songwriter represented by ASCAP, I got regular royalty checks for each line of code still in production that I’d written at some job years ago, would I feel differently? Or if I was guaranteed an on-screen credit and chance at an Oscar like a union technician in a Hollywood movie?

But I’m not complaining. I have a good job and make a decent living. If I stop working for my current employer, they own that work I’ve done, and that seems fair; I was reasonably paid for providing a service. But, while I’m not making money from licensing IP, I still have the downside of costs and risk of licensing it from others.

And writing software is, in my opinion, providing a service. Software has a pretty short half-life, and whether you hire developers to write software to use or to sell, you need to keep developers on the payroll to be valued as a software shop. No one is making money selling two-year-old software, at least not without ongoing investment in upgrades and support.

Judge Richard Posner of the 7th U.S. Circuit Court of Appeals in Chicago came to basically the same conclusion recently:

Advances in software and other industries cost much less, he said, and the companies benefit tremendously from being first in the market with gadgets — a benefit they would still get if there were no software patents. “It’s not clear that we really need patents in most industries,” he said. “Also, devices like smartphones have thousands of component features, and they all receive legal protection. You just have this proliferation of patents,” Posner said. “It’s a problem.”

via Judge Posner: U.S. patent system out of sync – chicagotribune.com.

It was wonderful to see our legal system take this view, which I’d usually associate with underdog advocates who can’t actually afford a day in court.

I’m not against all forms of intellectual property or its strict enforcement. I don’t support piracy or counterfeiting; that’s legally and morally wrong and I think it’s unfortunate that the cause of online freedom sometimes gets mixed up in defending it. Nevertheless, I see IP as a modern policy construct, not in the same category as the biblical “thou shalt not steal.” A purpose of IP is to encourage investment in innovation by providing investors with a better return, and laws should be calibrated so they’re fair to all.

Perhaps I need to find a way to own some IP that can generate some returns. Then again, perhaps creating IP, not owning it, is more fun.


Creative Commons License
This post is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.

June 3, 2012

Does Rabbi Steinsaltz Dream of Open Source Talmud?

Filed under: Judaism, Software Blog — marcstober @ 9:12 pm

Some of you might know I started another blog for my “Jewish tech” stuff. I wanted to share the latest post with you:

They say the Talmud is like a discussion among rabbis of different generations who could never have met. Well, Rabbi Adin Steinsaltz and venture capitalist Fred Wilson are both living, but I doubt they’ve met. But after reading a review of Steinsaltz’s new Hebrew/English Talmud, and then seeing this interview with Wilson about online content and the future of that business and copyright (20 minutes, worth watching), I’m imagining it in my head.

Keep reading: “Does Rabbi Steinsaltz Dream of Open Source Talmud?” on the JHacker blog..

March 9, 2012

Ki Tisa: Individual health insurance mandate and patient registration?

Filed under: Judaism, Software Blog — marcstober @ 10:29 am

For the past five years of my career I’ve worked on a patient registration system. It keeps track of millions of people for both clinical care and insurance reimbursement. So, when I started to practice my Torah reading for this week’s Ruach Shabbat Family Service (please come!), I couldn’t help thinking it sounded familiar:

When you take a headcount of the Israelites, to register them, for each man give a soul-payment to God to register them, that they will not get a plague by being registered. Those on the registry will give a half-shekel… (Exodus 30:12-13, my translation)

As Jews, we believe that every word in the Torah has meaning. (It better, since I have to basically memorize the cantillation of the reading! :)) I found a few things interesting.

The reason for donation is to avoid a plague. Today, spirituality complements modern medicine, but ancients really believed religious acts could cure physical illness–pre-modern religious leaders were sometimes even keepers of herbal remedies, etc. This sounds a lot like health insurance.

They are only asked for a half shekel. “Half” here has always meant to me that people are not asked to pay their share. There are other campaigns (such as to build the Temple, that we read a few weeks ago) where some give less and some give more, but the half shekel is the same for everyone. Thus, there is value to being a taxpayer even if you take more than you pay in. In modern terms, yes, liberals, some people need public assistance, and yes, conservatives, everyone should be responsible for paying something.

A more subtle point I notice from my IT experience is the focus on individual registrations rather than a count, which are not the same. In a small group, you know each person as an individual and you can count them. In a simple business, you can ignore people’s uniqueness–treat them “as a number,” as we say–because you only care about the totals. Treating each person as a valuable, unique individual and scaling that up to a population of thousands or millions is hard. Often, the techniques for counting totals are at odds with the techniques for counting individuals. In a database, it’s technically easy to retrieve one record or count all records if your data set is small. But, when you have millions of records, you need specialized, separate techniques for “transactional” and “analytic” processing.

Taking this to a higher level, I think perhaps the core Judeo-Christian value (not that Jews and Christians have exactly the sample values) is the value of the individual. It’s interesting that in English we can say that each person “counts,” and yet means, davka, that we are not simply counting them, but recognizing individuality. In healthcare, although we could probably do more with population-based measures, we tend to treat each case as individual. In the synagogue, although we worry about membership numbers, each person gets a chance to go the bimah as a bar mitzvah because we treat each person as an individual.

« Previous PageNext Page »