What if your website had business hours? (2022)
bobbiechen.com
bobbiechen.com
It is wrong in so many ways. First of all the site is determining when the appropriate business hours are for its users, not taking into consideration moonlighters or other night owls. And second, it's a service for travel agents!! who are supposedly traveling to other time zones.
I get it if the people behind a service need to set limits on when they are expected to handle requests, but that doesn't mean the service shouldn't be available all the time. Good messaging and setting expectations for when requests will be handled are a much better solution in my opinion.
During that time, it returns a temporary error `450 4.3.2 We're sorry! The mail room is closed from 7 p.m. till 7 a.m. [Time Zone]. Email servers automatically retry, so your mail should be delivered in a few hours.` Depending on their mail provider and the time of evening, some will never see an error, while others will eventually receive the standard “Delayed Mail: no need to retry” message in their own inboxes.
I see it as accomplishing three things: first, it tests email servers to see if they properly handle temporary delivery errors by retrying; second, it prevents me from checking my email after hours, or rather, leaves me overnight with only the email I got during the day, perhaps encouraging better habits; and third, it could provide an opportunity for others to consider assumptions about always-on digital services.
And maybe also always-on humans, which some companies seem to ridiculously expect.
I really don't understand this obsession with 24/7 uptime for non-critical systems. Requiring your engineers to be always on-call and debug something at 3am is a health hazard and should be treated like one.
If a photo-sharing app is down at 3am, I'm sure the users can go to sleep and wait till 10am. This isn't some oxygen life support system. If you have that many users in multiple time zones, then hire people in multiple time zones.
Even if TurboTax crashes on 4/15 at 11:35pm and the engineers don't fix it until the next workday, resulting in millions of people not being able to file their taxes, I'm sure the IRS might grumble a lot but would give people an extension. It'll all be good, and everyone will get to sleep .
That's way too big of a risk, and way too much stress to put on your customers.
For something like tax software, you should have people on call, or even 24/7 staffing, for that specific week. 2% of the year.
In general, big release dates or important deadline should often have extra resources. 0-10 days per year. Pay extra for the health hazard, but that doesn't mean don't do it.
In my country, the tax system (EDS, Electronic Declaration System) is down pretty much every single year on the day when tax declaration submissions start.
2020: "SRS: Significantly increasing EDS capacity is expensive and not cost-effective" https://www-lsm-lv.translate.goog/raksts/zinas/ekonomika/vid...
2022: "SRS urges not to rush to submit annual income tax returns so as not to overload the EDS" https://www-lsm-lv.translate.goog/raksts/zinas/ekonomika/vid...
2023: "The SRS urges not to rush to submit income tax returns in the first days of March" https://www-lsm-lv.translate.goog/raksts/zinas/ekonomika/vid...
2025: "A virtual queue will be open this year for submitting annual income tax returns to the SRS" https://www-lsm-lv.translate.goog/raksts/zinas/ekonomika/28....
So basically their "solution" for the longest time was to just tell people that it's too expensive to make it have high availability and that they shouldn't use the system on the first days of the period when you can submit the data and eventually just adding a queue in front of the system to manage the concurrent users.
It seems that taxes still get handled correctly and that nobody really cares that much. Found this to be an interesting example of going against the established culture of trying to go above and beyond for availability, even if I scoffed at it a few years ago.
It definitely wouldn't be horrible to live in a world where a prod outage doesn't mean "Sorry wife, I'm not coming home today, will be stuck in some random war room for hours and then fudge up the groceries massively due to sleep deprivation" but rather "Sorry boss, the system is down, what a bummer. I'll look into it tomorrow at 9 AM." for pretty much anything aside from truly critical and time sensitive systems (e.g. air traffic control, as opposed to your music streaming app).
And as I already said, when it comes to missing the tax deadline, leaving things broken would have a huge impact on the customers' heal and life. The total stress levels they'd feel would be enough to kill your server engineers outright.
The IRS can wait. If a million people can't file their taxes the IRS will wait and I'm okay with that.
I'm not risking another cardiac arrest so that a bunch of people can file their taxes on time.
Even if you're right, it would cause a fuckton of stress in the people filing taxes, many of them now undergoing a significantly higher risk of cardiac arrest than the guy who's on call 1 week per year.
And if there's even a few percent chance you're wrong, the fallout would be enormous. In both money lost and even more stress.
And how many people do you think it'll take to make the IRS wait? What if you're a bit under that threshold, still with a whole lot of very stressed customers?
As long as the amount of on-call time is very small, I don't think it needs to be restricted to a super critical subset of jobs.
Why should the engineers be stressed and overworked because other people are scared of something that doesn't have to happen?
The world is less stressful and - I think - better without manufactured urgency like what you're defending.
Don't get me wrong, some things are life and death, like life support machines. Taxes are not.
Despite not being anywhere near life or death, the stress is real. And for most people it's not crippling stress, but neither is being on call for a single week out of the year. If we're going to blow that level of on-call into a "risk of cardiac arrest" then to be reasonable we have to do the same thing for tax filing failures.
There's no way for deadlines to not be moderately stressful. You can't decide to avoid urgency and stress.
If you keep on creating examples where x number of people face consequences for being late, then yes, there will always be stressful consequences for being late.
Yes, there will always be situations like this, actual life or death situations. Don't release this update to address a newly spotted bug, pacemakers are all going to switch off at midnight and people die - worth the stress from the engineer and everyone else involved to keep people alive.
Is a tax return one of those things? It doesn't have to be. Unless you want to insist it has to be. That is my point.
> There's no way for deadlines to not be moderately stressful. You can't decide to avoid urgency and stress.
Owners of deadlines can decide to avoid urgency and stress if they have the resources to be flexible with submissions. Most deadlines are not life, death, urgency and stress, unless people make them to be.
There will be people, who will feel it is critical important to post some pictures at 3 am and they will get stressed, if it is not working (say people preparing an event and the pictures should be online the next day).
But .. whether that is worth that engineers must be on call, is a differnt question. I never had a job like this and I know I would never accept it as default for myself.
sometimes i remember some important message i need to send colleagues or clients... for that i like the telegram feature where i can send a message with a delay. i can write it now and it will be sent the next morning or whenever i think is a good time. i wish my email client had that feature too.
They can use a different platform, print the pictures on paper, there are a million ways to deal with these kind of issues.
An earthquake could strike and the event might need to be postponed.
If nobody's life or health is at risk, it is not urgent enough to sacrifice someone else's health for it.
I agree. But I think being on call is possible in a healthy way, if there are long enough brakes in between. Occasionally being a night on call is possible. (Well and normal if you have small kids, but having small kids and having to worry about getting an emergency call any minute, that would be draining)
not if they already committed to this one. you can't make such a change in a few minutes. limitations are so unusual that nobody would expect them and be prepared. and even if they were known ahead of time, you are also not expecting the kind of situation where you have to upload pictures in the middle of the night.
This isn't a 911 dispatching system.
Ahem. Anyway. Institute "business hours" for your website at your own risk. Among your users you'll find it polarizing at best.
We could compare it to refusing mailed in registrations or not setting up a post box for out of office submissions, those are long lived practices depending on the office, and they "just" brought it wholesale to the online world.
If it's that much easier for the staff to hold a mental model of what they do and how they work, I'd respect their choice even if it feels so alien in the online side.
There isn't a person walking through the system with me, making sure it worked right. I could understand an office that only accepts appointments or phone calls, but this is an online system that breaks that direct connection no matter what time of day you use it.
- a post box you can leave your application
- a filing tray at the registration desk next to the clerk
For the later they have a real time handling of how much registration are coming in, and from who. They don't have to look at it realtime, but they have full control of the input and can either shut it down if needed, or immediately react to errors or issues.
It was a long time ago, but I once had a school clerk phone me right after I submitted a request, to tell me their system is dead and they want me physically come fill out the papers. For them it was a straight equivalent to the tray at their office, except it's digital.
This sounds like a beginner PM's plan for a task management system. Just make the status DONE or NOT_DONE, tasks are always done roughly instantly, stop adding complications with your intermediate states! Later this leads to bugs or at least poor UX because tasks don't finish instantly, and someone is convinced to add IN_PROGRESS. Eventually we add CANCELLED and FAILED and UP_FOR_RETRY and, if we're unlucky, a hundred more states. The benefit of those depends on the application but there's always a benefit in representing the three states instead of two.
However, we can just put business hours on support, and would expect that the websites would generally work, unmonitored, while the SREs maintained a normal 40.
B&H is so good that I don't care when their online store is closed, I just come back later. That they are still in business (and flourishing, from what I can see) is proof that their service is so good that people are loyal.
Chick-fil-A is famously closed every Sunday, yet is one of the most successful restaurants.
Suppose B&H or Chick-Fil-A suddenly changed their policy to be open, which is easy to verify (just see if you can buy something on that day). What do you think the reaction of their customers would be to this greater convenience and no loss of quality? Would they celebrate? I think the reaction would be highly negative - everyone would panic that they had sold out and the beancounters were now in charge and the quality was going to go downhill while the prices go up.
Precisely because the policy is so economically foolish and is not a marketing stunt (notice no one is clamoring to imitate them even though it's trivial: just close on some day) and would be one of the first things to go under new (ie. normal) management, it proves that they don't care that much about maximizing their profits but other things.
I honestly don’t know much about B&H as a business but I’m a frequent customer. I have bought several expensive camera bodies and lenses from them, countless camera accessories, and it’s often the first place I look for all electronics. NAS, hard drives, cables, that sort of thing. I like buying from B&H because I trust them, they have fast shipping, and I’ve never had a bad experience.
It’s a high quality store. I value high quality and I like that they value high quality over maximizing profit. That makes me a loyal customer, and unless something changes about the quality of B&H, I probably will be for a long time. I don’t care that their online store is occasionally closed; it’s never been an inconvenience to me. And if it ever is, the quality of the store more than makes up for the minor convenience of waiting a couple days to buy something. When it comes to my gear and equipment, I’m rarely in such a rush that I’m willing to compromise quality for speed. I imagine a lot of other B&H customers feel the same way.
And it's not like websites naturally inherit their hours from the stores of the company running them.
But I think that if you are familiar with B&H this wouldn't really be a surprise and it's pretty rare that you find yourself unexpectedly needing a new SLR on saturday morning in my experience
Not only does B&H close their webshop on Saturdays, they also observe many holidays and close both their physical stores and webstore for them. This month they are open for only 18 days due to Passover.
During traffic surges, such as when government allows people to withdraw part of their unemployment fund for one reason or another, the site/app loads normally but display a page placing you in a queue with a dynamically updated ETA, usually several minutes or hours.
Example (news article in Portuguese): https://epocanegocios.globo.com/economia/noticia/2023/07/dis...
A weird way to rate limit... I guess it perfectly emulates the real life experience of waiting in line for hours in government branches.
https://dafyddvaughan.uk/blog/2025/why-some-dvla-digital-ser...
(they were frontends to old systems that were based on assumptions of when data would be submitted)
For example I planned to work on a project on sunday for which i would need some sterling silver sheets. My usual supplier is cooksongold.com, and since precious metal is such a high trust product I would be normaly very reluctant to go and search for a new supplier. But their website is on the fritz since yesterday. Which makes me think i need to find some new supplier. Who knows maybe they are going out of business even. Or maybe they are just having trouble with their database. That’s the kind of situation where the damage is. Where consumer behaviors can maybe permanently alter just because of some technical malfunction.
Like, I get live chat having hours… but a form?
Would love to hear other stories of businesses doing similar activities during sane weekday hours.
It requires specific technology choices and planning ahead, but it is especially simple in the web era because they all go through load balancers which are redundant themselves.
The opposite example was Blizzard taking down WoW for half a day every week, which is an absurdly long time.
Even if they had a single server per game world instance, they could have orchestrated updates using automation to take each instance down for a few minutes instead of all of them at once for many hours.
Steam is under heavy use at all times, and the lowest user count is roughly from 3PM-2AM PST.
And being partially off for 3 hours a week is pretty far from "business hours".
Since it's Germany it'd have to go through to many departments and take at least a week to be approved.
> MyLotto operates between 6.30 am and 11 pm Monday, Tuesday, Thursday, Friday and Sunday, and between 6.30 am and midnight on Wednesday and Saturday.
https://web.archive.org/web/20070822082110/https://onlineser...
> Hours: Monday-Friday, 7:00 am to 10:00 pm, Saturday/Sunday 9:00 am to 3:00 pm
> Online Services is an unattended service after 7pm Monday through Thursday, after 1pm on Friday and all day Saturday and Sunday. If you have problems or questions please call Admissions and Records during normal business hours.
The next Wayback Machine snapshot, from May 2008, doesn't have the notice:
https://web.archive.org/web/20080519115756/http://onlineserv...
I love the idea of a website with constraints that users can feel - and if I ever get too many concurrent visitors, I'll naturally stop serving requests.
(Still has some AI-generated content as filler - when I'm done, it'll be strictly human-only content)
I think being aware of your traffic patterns and incorporating that into business decisions is a great idea. OT, especially for potentially hair pulling off hours deployments, costs a lot of employee happiness - reserve it for when it's actually an emergency.
> This story has been classified as developmentally harmful and has been given special protection measures. It can therefore only be read by registered users and only between 11:00 pm and 4:00 am. Registered users have the option of carrying out age verification with us in order to be able to read such stories without time restrictions. (google translated)
So does KONAMI's e-amusement service, affecting arcade games and home versions alike: https://iidx.org/eamuse_maint
That seemed like a reasonable way to set boundaries but provide some entry level support.
I guess for a website you could do similar by flicking cloudflare over to an IP serving a were closed.
But you won't be competitive and you will lose customers!
The same amount of quality will cost more for 24/7 availability so the likelihood of them cutting corners is more likely and thas causing a lack of quality. If however they don't then yeah, I guess you would.
You can't even read amazon reviews without logging in, now all you get is an AI generated summary.
My broadband provider is more expensive than the common domestic provider but they provide decent support so that's why I am content in forking the extra cost.
Huh? Why would you need Cloudflare and a separate IP for that? You can just have your server serve a different thing in certain hours
Should I blame Safari on iPhone?
I'm seeing similar sticky scrolling in Safari on Mac for a narrow window (but it unsticks if I scroll fast enough...). I think this suggests something with the mobile view CSS. I'll keep investigating.
In the meantime, try reader mode. Sorry again and thanks for reporting!
Once I scrolled down a bit, I was able to scroll normally afterwards.
On the content: I enjoyed your article! B&H being closed for Sabbath saved me from almost blowing $10k on camera gear a few years ago... everything in my cart, but couldn't check out. I wouldn't say I churned, but I also didn't come back to purchase because I had pre-buyers remorse.
As others in the comments have noted, though - I still come back and shop at B&H for other things, even though I've run into their closures. I actually like the humanity of it. For all the always-on-ness of the internet and websites... there's something innately "human" about something being closed, like B&H's site, that isn't upsetting to me.
That idea is contrary to the definition or reason for the existence of Websites.
Just because the server is powered 24/7 doesn't mean the website has too. I turn off my personal NAS when I go to bed. No point keeping it on while I am asleep.
In PDP days you were given a allotted time slot of usage.
But businesses are usually closed at certain times because it's not economical to keep them open. There are not enough customers looking to buy a pair of socks at 3AM to justify paying someone to sell socks. Or depending on where you live there are laws protecting workers so they get a bigger pay if they work at night etc. There could be other reasons.
If none of those things apply then it is pointless to apply the same restrictions as if they did apply. That would be like driving a car at the speed of a horse carriage.
You have complete freedom on things that you tag as "personal".
A "business" is always looking to grow upwards and onwards.
Sure, yes the back-office of passing the item through processing centres require 24/7 operation's for the delivery to reach from left side of the country to the right but if we were not conditioned to accept 24/7 as a thing, do you really need X in next day delivery when if XYZ CompShop was open and sold the same item for a reasonable/same price at a reasonable time for you?
24/7 provides convenience but convenience isn't always the greatest nor always the best. It's these businesses that make the price high for the local causing them to suffer per-se because we expect it all now.
Keeping a website generally available 24/7 is usually pretty trivial of a cost compared to the costs for everything else in running a business so to me putting effort into limiting business hours seems unproductive. If you receive significant malicious traffic or attacks during off hours it may make sense but otherwise the cost of keeping the lights on for a server are usually marginal at most.
Imagine a banking app not allowing onboarding outside 8:30-18:30 Mon-Fri or a municipal site just saying come back at 8am.
The e-Tax system and various other government services still have these as well, mostly as daily maintenance windows. Some services use it to run data clean-up, consolidation, backup, etc. tasks so it’s not without reason.