HNHacker News
TopNewBestAskShowJobs

gav

1,629 karma · joined December 21, 2011

I work at making organizations better at digital, with a focus on content and commerce. One of my interests is "experience optimization": attempting to reduce the barriers to a sale by optimizing the entire purchase journey (from discovery to delivery and beyond).

I've been helping people sell online since 1995.

Currently based in Los Angeles, CA. Feel free to reach out if you ever want to discuss anything over coffee; I'm always in search of new stories and new ideas.

Contact: gavin@estey.com http://www.linkedin.com/in/gavinestey

submissionscomments
gav··on School custodian refuses to download app that monitors location, got her fired
I've worked for a hardware company where our employee badges were tracked throughout the building, you had to badge in and out to go to the bathroom, which could be tracked I guess.

I didn't really have a problem with it, I feel that this sort of non-intrusive tracking is perfectly acceptable when you're on the clock.

gav··on The Health Hazards of Plug-In Air Fresheners (2017)
A $200 air purifier can make a world of difference: https://www.nytimes.com/wirecutter/reviews/best-air-purifier... (I own a Coway Airmega 200M.)

I bought a Temtop monitor to verify if the "smart mode" (where it only runs if the air quality is low): https://www.amazon.com/gp/product/B07DHXQXGK/

I live in Los Angeles where the air quality isn't that great and in a rented apartment where I have limited choices. The air purifier made a dramatic difference in the first hour I had it and now it keeps the PM2.5 reading down to around 2-4 with minimal cycling.

gav··on Anonymously call out the bad behavior of “ghosting” by recruiters
I think of it more as a BBC thing than a LinkedIn thing: https://danielmiessler.com/blog/email-like-bbc/

If you're trying to get your point across to busy people, short paragraphs help.

gav··on I reverse engineered Google Docs to play back any document's keystrokes (2014)
They both look really interesting but suffer from the same issue: top-down vs. bottom-up adoption. There’s no way I can convince everyone to choose a new system for email just to collaborate with me.
gav··on I reverse engineered Google Docs to play back any document's keystrokes (2014)
If Google could integrate Gmail, Google Docs, and Chat to make this happen it would make a huge difference to me. I spent a lot of time collaborating on incoming and outgoing email with a combination of Docs and Slack. This also has the tendency to silo both the end-result and the discussion where that would be something useful to have in some sort of shared repository.
gav··on Netlify for the frontend, Micro for the backend
I understand where you're coming from, but the license itself is terribly general and broad:

> Any purpose is a permitted purpose, except for providing any product that competes with the software or any product the licensor or any of its affiliates provides using the software.

You're not just unable to compete with Polyform, you're unable to compete with Polyform's affiliates.

gav··on “Before cancelling your subscription, you must agree to the following”
Estimated reading time: 22 minutes, 45 seconds. Contains 4552 words

Plus it's a poor use of half an hour if they can change things anyway:

> Prezi may revise these Prezi Business Terms and Conditions. If Prezi makes material revisions, Prezi will notify Customer, either through the user interface of the Presentation Services, in an email notification or through other reasonable means. Customer’s use of the Presentation Services after the date such revisions become effective will constitute consent to the revised Prezi Business Terms and Conditions.

gav··on A socialite who hated washing dishes invented the automated dishwasher
Have you looked at a double drawer dishwasher: https://www.fisherpaykel.com/us/dishwashing/all-dishwashers/...
gav··on Amazon restricts how rival device makers buy ads on its site
> But they are still buying it and still taking the risk that it won't sell.

I don't know about Costco, but the big box stores don't carry any risk. If the product doesn't sell then they return it and deduct that off your next invoice. The same happens for a customer return.

Depending on the retailer/product category you might get charged slotting fees, pay-to-stay, plus a share of promotional costs[1]. There are also other fees for use of distribution centers, discounts for paying early (even if it's not early), fees (or extended terms) for slow-moving products, and so on.

"Owning the items" feel less correct than "borrowing items with a promise to pay".

[1] https://traxretail.com/blog/quick-guide-shelf-space-costs/

gav··on How we scaled Google Meet during Covid-19
There's a setting you can turn on called "Automatically add Google Meet video conferences to events I create"[1].

I tested on a new account and the default was on, which you might argue is bad, but when I tried to create my first calendar event there was a popup that told me that it was on and gave me the option to turn it off.

Plus when you create a event the option to include a Google Meet is right there and it's one click to remove.

[1] https://support.google.com/a/answer/9898950?hl=en

gav··on Wasabi fire alarm a lifesaver for the deaf (2008)
It looks like they won a IG Nobel in 2011: https://www.improbable.com/ig-about/winners/#ig2011

And it's in the National Museum of Scotland: https://www.nms.ac.uk/explore-our-collections/stories/scienc...

Unfortunately I can't seem to find any evidence that they turned it into a real product.

gav··on Chat Bubble Blindness
I see this issue a lot with social media, everyone wants to have share buttons and so on, but few step back and think about if that even makes sense and if their customers even want to engage with them in that way.

There's a perceived need for a Facebook page or Twitter, but how much value does it really add to either party. Especially in commerce where conversion correlates with speed, is it really worth paying that performance cost? As an example, last week I removed a bunch of integrations for a client that were adding no value and adding roughly 1.5s to First Contentful Paint.

Though as a strategy, it sometimes pays off to hurt your competitors by focusing them on features that are useless or cost them money.

gav··on The World of Competitive Lockpicking
You’re generally trying to make a burglar rob somebody else’s house instead of your own, which is why things like visible cameras, nighttime lighting, and dogs are more important than locks.

You can’t really defend against a determined adversary. I lived down the road from somebody who had a significant collection of rare coins. He had good locks, hardened doors, and a state of the art security system which was bypassed by using a chainsaw to cut a hole in the wall of his house.

gav··on Local-first software (2019)
Short answer: generally it costs more money for worse results.

Longer answer: doing things in-house that are outside your core competencies and/or value creation model is a poor use of scarce resources (both capital and human—predominantly management bandwidth) and increases risk carried.

To give a concrete example: imagine you need to host your source code repository. You can pay for something like Bitbucket for $6/month/user and not have to worry about it. It’s a price that scales linearly with your team size and is a tiny fraction of their total cost.

Doing it in-house: you have to pay for hardware, storage, worry about backups, have somebody support it, have somebody manage the person that supports it, deal with users, find a solution to remote access, and so on. But all these miss the big cost—risk—what happens if the server dies or your office burns down? Nobody used to get fired for buying IBM, nobody now gets fired for buying a popular SaaS product.

You aren’t Google, at some point scale changes the equation, but that’s a rare spot to be in.

gav··on Reviewing the worst piece of code ever
I was on a project where a recently hired Senior Java Developer managed to avoid committing code for three weeks with various excuses. When we finally looked at their code, it was a couple of hundred lines code that looked like Java, but with no semicolons. It didn’t compile.
gav··on Tampa teen accused of being ‘mastermind’ behind Twitter hack
Security training improves security but it doesn't get close to stopping 100% of attacks.

I know it's obvious, but it feels like it's only obvious to those that think about security. It's the same reason that putting your developers through a yearly OWASP Top 10 secure coding course isn't going to get you to 100% secure code.

Locking down systems seems draconian, but it's the only way:

- Disabling USB storage

- Moving away from passwords to hardware authentication

- Strong controls on internet access

- Stop incoming calls from reaching most employees. Better: take away phones altogether

And so on.

gav··on Facebook says Apple’s iOS 14 changes could hurt its ad targeting
When I do that that I get political adverts mixed in with meal-kits, diets (I'm not sure what they're trying to sell), and exercise equipment. It's pretty awful and I'm waiting down the seconds to hit skip. It's like going back in time to pop-ups and animated horrors of the 90s and early 00s but with vlog-style ads instead--I guess this style tests well, they all look the same to me.

Instagram does a great job of personalizing ads to both products and the type of companies I like. I don't mind seeing these kinds of ads at all. I'm happy (in this case) for them to track me because it's much much, better than the alternative.

gav··on Some SQL Tricks of an Application DBA
I do the same thing.

However, it won't save you if realize that there's an issue after you commit. Maybe I'm just paranoid but I like to have both a snapshot before a major change, plus I'm fond of having a spare (via delayed replication or log shipping).

gav··on Some SQL Tricks of an Application DBA
I'm not sure if it's just me, but when I see DELETEs that use CTEs like that I start to get nervous. It's easy to get wrong and it's hard to undo.

I like to have an intermediary table where I can verify what's going to be deleted (or updated) before it runs. Even better it lets you save the mappings of old ids so when you find out some downstream system was using them you can fix that too.

I know it's just an example but soft deletes solve a huge range of problems.

gav··on Data Consistency Checks
You can add domain-specific validations that are hard or impossible to capture with database constraints.

For example, I built similar tool that you could write simple rules to validate product data. This would run every night and generate a report for the data quality team. One of the advantages was that you could decide have stricter requirements and then choose if they only applied to new products, or if the team had to go back and fix all the old products too.

Some rules I remember:

- Validating min-length, max-length, and casing of product names. Spell checking words founds.

- Verifying product images existed and where the right dimensions, below a certain file size, etc.

- Making sure that certain product categories had dimensions, and that the metric/imperial conversions were rounded in the industry-norm way (e.g. 3 3/4" was 96mm)

- Making sure that pricing/margins made sense on a vendor/product category level, to try to catch typos like $1 or $1000.

The thing I found handy was to add new rules when problems occurred that fixed historical issues.

gav··on Cloudflare launches Workers Unbound, next evolution of its serverless platform
It's a hard problem to solve: getting to some useful amount of "done" where it solves actual problems for customers is a long way from delivering a truly polished, quality product.

There's diminishing returns from 80% to 100% done, plus there's the human condition--it's a lot more fun to solve the hard problems than do the polishing at the end. I think that teams can get too enamored of the features they create, it's hard to get perspective when you've been staring at something for a while.

I've often wondered if the answer is to have multiple teams (pods) so that one team can get a feature to MVP, then hand it over. You're then not invested in "your" product, there's space to be objective and revisit the path from MVP onward.

gav··on The code I’m still ashamed of (2016)
> This is something I've struggled with in the past too, my job is basically to put people out of a job by replacing them with software, and those people might then suffer because of it.

I spent five years working for a small company that was a scrappy startup, especially in how they thought about technology--everything was duct taped together and barely worked--but was cheap!

At a high level, my job was to replace people with software. What I am proud of is that we didn't let anyone go, we just found something more valuable for them to do. When I started they had 4-5 people who's job was to spend 40 hours copy and pasting tracking numbers from one system to another. This was automated and they were able to move to roles that actually helped customers.

I think my (apologies for taking a while to get there) point is that you can look at digitization and automation as a cost cutting exercise to improve the bottom line or instead view it as a way to invest in and improve the customer experience. Information Technology as margin-defense is a short-term benefit, while IT as a value-driver is a long-term one.

"offensive operations, often times, is the surest, if not the only (in some cases) means of defence" --George Washington

gav··on How to survive a ransomware attack without paying the ransom
Sometimes not that simple, the attack could have corrupted or deleted the backups, or the backups themselves could be the source of reinfection.
gav··on FDA Updates on Hand Sanitizers with Methanol
As a Boy Scout in the 90s we used methanol stoves (Trangia) and lanterns, in the UK it’s untaxed alcohol.

Spills were common, as was pouring it in your hand or boot, igniting it and running around in the dark. I’m sure we came into contact with way more than you’d use as hand sanitizer—-and I never heard of anyone with ill effects.

gav··on GoodJob – a Postgres-based ActiveJob back end for Ruby on Rails
It's funny you say that, I've seen people pick a tech stack based on developer cost.

Maybe five years back I had a client in NYC who had a predominantly Java stack, but due to internal politics, wouldn't pay more than 135k for a senior developer when the market was wanting at least 25-30k more than that. Everyone they hired was pretty terrible.

At the time, Node developers were cheaper, so we split the application in two, wrapped all the old Java code with APIs, which was then able to be maintained by a small team while the front-end and any new features were all re-written with Node. It was architectural a better system--but the driving factor was really developer cost (the business hated to make any investments in technology).

The problem was that Node got popular and it got harder and harder to hire good Node developers at what the company wanted to pay. They had a big re-org and fired everyone I knew, so I don't know what they are doing now, but I often wonder if they just repeated the process with whatever up-and-coming language was more hip.

gav··on Invert, always, invert
There's a huge potential in mining search data, especially if you can group top-of-funnel vs. bottom-of-funnel searches to see where failures are occurring. Segmenting queries like "zm950" against "shoes" or "nike" and seeing where gaps exist against user intent.

When it comes to zero (or near-zero) results, I've had good results using this to identify gaps in the current product offering and what visitors are expecting to be there. Two examples:

1) A seller of custom prescription glasses: top two search queries were "contact lenses" and "sunglasses". They didn't offer the former, they did sell sunglasses (most frames could take a tinted lens as an option) but didn't make it obvious with design, content, or marketing.

2) A seller of cabinet hardware (pulls & knobs): a large proportion of their top 10 search terms seemed to have a door hardware intent. Adding this missing category boosted sales without additional marketing dollars spent (the customers were already there and just bouncing when they realized the site didn't carry what they wanted).

These are all ways to focus on understanding failures instead of trying to optimize successes, which is often finding the local maxima.

gav··on ‘Strong Opinions, Weakly Held’ Doesn't Work That Well
There's a type of exercise where you're not asked "I want to do $x, how do I achieve that?" but instead are asked "I don't know what to do, can you find out?" where the scope might be anywhere from "pick an new ERP" to "reorganise the entire worldwide operations to be a more effective at all things digital".

If faced with such a wide open question you could do some research and start asking all the questions you think of, but you're then just hoping to narrow in on something by luck. The "Strong Opinions, Weakly Held" method works well here, if within the first week you can learn enough to form some opinions, you now have some ideas to test against and disprove. You can start to decide on what information is important and what isn't important, rather than trying to gather all the possible information and synthesize it later on.

If you have an opinion such as "you should formulate a strategy to sell direct to the consumer instead of relying on distribution alone" you have a starting point and have narrowed things down from "how do we sell more things?". You might not have one opinion, you might have five. It takes experience to come up with opinions quickly when faced with limited data and potentially a large problem space.

It's hypothesis-driven decision making. It does require both iteration and the willingness to let your original opinions go--kill your darlings.

gav··on Unidentified Federal Law Enforcement Detaining Protestors Without Explanation
Here's one such encounter: https://twitter.com/greg_doucette/status/1283452585945583618

What rights do you have resisting being grabbed from the street by somebody who isn't identifying themselves as law enforcement? They just have a "police" patch, they could be cosplayers.

gav··on The Slack Social Network
A former employer bristled at the cost of Slack[1]. Why should we pay for Slack when we already own Teams? Everyone will just use Teams.

About a week later I was on 4 unofficial Slack workspaces.

They also mandated Teams for meetings, which was both terrible and particularly hostile to external invitees, so everyone just used free versions of Zoom instead.

[1] Less than 0.07% of my base salary

gav··on Whole Earth Software Catalog (1984)
The book that inspired the series is also great.

How Buildings Learn: What Happens After They’re Built: https://en.wikipedia.org/wiki/How_Buildings_Learn

← PreviousPage 3 of 14Next →