September 2013 Archives

A rare post in which I talk about my day-job.

We're doing a few things that are either really freaking cool or head-scratchy depending on your point of view. We've kicked a Software-as-a-Service product out the door that's aimed at the business market, specifically the legal bits of the business market.

Not supporting all IE versions.

A B2B product that doesn't support all IE versions? We're nuts.

And yet... there are enough law-firms, corporate legal departments, and civil-service law entities out there that don't have Mandatory IE policies that we're finding quite a lot of business. Yes, it does prevent some potential clients who are otherwise enthusiastic about the product from being able to use it. But we feel strongly enough about not having to support older IE versions (anything IE8 and older) that we're willing to let those sales go elsewhere.

We feel that those entities that do have flexible browser policies gain a significiant competetive advantage by using us, so we're OK with letting the inflexible slide. They'll get the clue eventually. We'll be there for them.

Embracing collaboration between entities, not just within the entity.

The nice thing about a SaaS product like we've built is that it allows people across the world to use it without having to have their own local install. This is a surprisingly revolutionary thing in this market because this market is filled to the brim with ultra-conservaties when it comes to data handling. Collaboration is the product of careful negotiation between entities over exactly what kind of data must be shared, what meta-data about the data will also be shared, and who will have access to it.

HIstorically the workflow for this has been:

  1. Negotiate.
  2. Build an export of the data and meta-data using industry standard(-ish) formats.
  3. Export data (possibly to disk).
  4. FedEx / FTP data to the other entity.
  5. Import the data into the system.
  6. Dicker over incompatibilities (those industry standards are only standards-ish).
  7. Repeat steps 2-6 until it imports right.

Total run-time, 1-5 days.

Our product can support this old-school workflow (up to step 3, same as the old days, and we're working on step 5), but we're really pushing for a new model based on online collaboration.

  1. Negotiate.
  2. Build and tag a dataset for sharing.
  3. Add a user to the Project with access to just that restricted set.
  4. Communicate with the other entity and get them logged in.
  5. They start working.

You can do that in a day. And if you can skip the first step, such as with an Expert Witness, it goes even faster.

The people we've shown this to have been blown away, even though this workflow is present in other markets. I believe I mentioned our market is deeply conservative? Yeah. We're working on changing that.

30 days to pay your bill or you get locked out

Anyone who has ever done business with certain types of big business or government knows they're big fans of the "pay you eventually" model of finance. You'll get your check, but only after a long wait (60-180 days) or whenever they feel like paying. The SaaS movement has been doing a lot to break this since so many such services operate on the pay-in-30-or-else model.

[Which we ran into ourselves. One of the company credit-cards expired in April and we didn't do a good enough job of tracking what all was using it for auto-pay. A whole bunch of services locked us out at the end of May.]

A client of ours who could be a major customer is learning this right now. They're a pay-in-3-6-months kind of shop and figured that bit of the usage agreement didn't apply to them. They're learning about or-else right now.

This pay-eventually model is rife in the non-SaaS market, which we've been in for many years. We know what these entities will pull because they've pulled it on us before (one memorable now-fired client went a year and a half between payments). Going SaaS and embracing the SaaS payment model allows us to lever sanity into our finances.

Yes, it'll lose us clients. But...

Not all clients are worth having.

This is something all small businesses figure out, and we're embracing it.

  • Technologically backward clients aren't worth the trouble to backport our stuff to.
  • Clients who are assholes about money aren't worth our time to bother with.
  • Clients who are endless fonts of special needs aren't worth the trouble (though they may be a good source of feature-requests).
  • The SaaS market we're in is wide open, there is always another client.

Yes, we may only be able to 'reach' 60% of our potential market (that number is made up), but those that do work with us will help bootstrap the industry into the modern era. Especially after the network-effects of collaboration kick in.

Fingerprinting your way to security

The NSA Raccoon is mostly right in this one:

For two reasons.

Reason 1: You (probably) don't own your phone

If you haven't rooted your phone, you don't really own it. While Apple says the fingerprint images are not uploaded to the borg collective, it's just one network hop away should the collective decide that it really needs them. A phone is a data-network connected device, after all, and the wireless carrier's customizations makes it a lot easier to get local access to the device if they want to.

Reason 2: Rooting won't help much either

Among the many disclosures since Snowden started his leaks is that law enforcement has a dirty-tricks bag deep enough to get into practically anything once they decide they need in. If it's got a data connection, and you haven't taken specific steps to keep others out, they'll still get in.


That said, if there is one thing we've learned from all of this is that there are massive databases at work here, and databases are only as good as the collected data and its indexes. Since fingerprint image collection isn't in the borg collective, it's not going to go into the secret national identity databases. They'll still need to take active effort to collect that information.


Fingerprint readers are nothing new:

FingerprintLaptop.png

My work laptop has one, and they've been on business laptops for years. What's new is that they're now on a data-connected device the habitual users don't own or manage, and is tightly integrated into the OS (unlike my laptop, which runs Linux; the reader has never worked for me).


What I'd like to know is where was the hue and cry over Android's face-lock ability?

That's another extremely useful biometric, and one that's arguably even more damaging than fingerprints: facial recognition in all of it's crappy implementations has been used by law-enforcement for a decade now. A good face-capture allows facial-recognition to work against random video feeds of public places to track individuals, something the ever expanding CCTV network enables.

Fingerprint readers tied to the borg collective will tie individuals to specific high value locations where fingerprint collection is deemed worth it.

Face-capture readers tied to the borg collective will tie individuals to low value public locations.

One of these is more likely to be deemed a serious invasion of privacy than the other, and it isn't the technology Apple just added.

Why I still have a land-line

| 1 Comment

There are reasons.

  1. Inertia. I've always had one, so the habit is there.
  2. Totally free conference calling. When parents call, just pick up the extension. No need to burn double minutes, no mucking around with speaker-phone. Great!
  3. It gives us an 'us' number. We each have our own cells for getting each of us individually, but sometimes we need an us number. Like for the landlord, or utilities, or or or.
  4. It's yet enother number to put into PagerDuty. If I really need to get up at 4am, making that phone ring is a good way to do it, especially since it's impossible to put it to Vibrate or Airplane Mode.
  5. I share a house with a cell-phone resister. They have one, but only use it as a portable internet connection not a voice communications device. They'll probably drop the phone and go with an iPad and a SIM card when the time comes. That person will need a phone number.

Conference-calling, I tell you.

In defense of quiet keyboards

| 5 Comments

Like many sysadmins I learned to type on an IBM Model M keyboard. That was a mechanical switch keyboard and any time you made a key-press there was a click sound. It was also made to engineering standards unheard of today, and the very keyboard I learned to type on two and a half decades ago would probably still work today if it were still with us (it got lost in the great AT to PS2 interface switch).

That keyboard was a joy to use. Good key travel, nice feedback when typing.

However, it had a bad habit. It was noisy. A fact I didn't mind since the computer was in the basement and I didn't have to share that space with anyone.


Fast forward to the modern era of open-plan office space where even the paltry protection of our cubical walls is being taken away from us in favor of tables in clusters and such keyboards are downright anti-social. Pack 5 power-users into a small space with concrete floors, give each of them a mechanical switch keyboard and it'll sound like a horrible accident at a pachinko ball factory; only going on for 9 hours.

Like many sysadmins I've learned to type really fast. When I'm rattling out command-lines as fast as I can think, it can sound like repeating gun-fire (really: that analogy was drawn for me back at WWU during an intense trouble-shooting session at 4am).

As a kindness to my office mates, I stay away from mechanical switch keyboards and stick with the soft thud of a scissor-spring keyboard. Since I learned on a Model M, I hit those scissor-spring keys with about twice as much force as I need to so even they clatter a little bit. It isn't as nice as that old Model M, but it sure as hell is a lot easier to live next to me as a result.

Back at WWU when I shared an actual office with one other person I could possibly have gotten away with a mechanical-switch keyboard. Now that I share a table-cluster with two other people, and we're close enough together we can hear each other mutter darkly as we debug, that's no longer the case. Head-phones to drown out the typing sounds of your neighbors should not be required-issue for working in an office.


My current office keyboard is not the engineering marvel of that Model M. It's only 8 years old and most of the home-row key-caps have simply eroded off. What's more, there are very shiny spots on the spacebar where my thumbs have polished nice divots. Also, the U and the I keys are beginning to get erratic. It's probably time for a new one.

Happily, like that Model M, they still make the model I'm using.