Some real honest and actionable advice here. I think the natural course for intelligent people that enjoy crafting things is very much in conflict with the real world. We care about the things we are building because we see them as an extension of ourselves. Anxiously perfecting our creations in a safe place, obsessing over ever smaller details of finished portions; working on detailing while ignoring the missing half of the ship. Its an ego thing. We see these things as pieces of ourselves, we’re afraid that the world won’t accept them, and by extension us. It’s not real though; nothing and nobody is perfect, and its okay.
I have a deep feeling that i can “do it myself”, yet i work for companies because deep down I like the anonymity and the safety of it; at a big company we get to be part of something established, we don’t have to show our own faces to the world.
After 20 years building software for other companies, I started my own thing a few weeks ago. The reality check hit fast. When you're an employee, you can hide behind process and blame the market. When it's yours, every signup or lack of one is direct feedback. No buffer.
> When you're an employee, you can hide behind process and blame the market.
You can still blame the market. A good market makes everything easier, a bad market makes everything harder.
But here’s the catch: You choose the market.
To share an example: When I started my react teaching side business in 2015 it was so easy. Growing 2x year over year, I thought I was some kind of business genius. Then one day it stopped. React became old, no longer the exciting new thing, the market consolidated into 2 or 3 big players with The Default resources and my stuff wasn’t one of them. I totally missed the land grab aspect of the early market phase and didn’t go hard enough on pure growth. Not a business genius after all.
In 2020-2022 I had a repair side-hustle that became unexpectedly profitable, so I started scaling it up and thinking about quitting my job. Then interest rates went up, assets stopped appreciating, and I realized that most of the value I thought I was adding was actually just asset inflation and the common wisdom that repair is a miserable business niche was correct after all.
Yes, and none of that matters when the money runs out and you can't convince investors that your business will bring them a worthwhile return in an environment that includes all of those outside forces.
Seems the page is down. So, yes, Reality is where money is. For money to reach you, you need to setup the pipelines, or poke a hole in an existing pipeline.
Maybe that's old-school. Youngsters seem to argue that they don't need to move out of their den, to start and run a business. And they were right some times.
I wonder how many decades the advice “use WP-cache; WP-supercache” has endured. Is it still the advice? Why knows. It’s been 20 years of WP (last week) and seeing that error message.
Thank you for sharing. My wife and I have been down this road in physical retail, SaaS, consulting, and real estate. It always feels like the first time when you learn slowly, and you’ve done a Good Thing by helping us all learn faster.
FYI - I tried to leave this comment on your blog, but I got a database connection error. HTH
well... it's a certain KIND of reality... one where numbers fight with "common sense"...
examples... a large paying customer can kill a business... tiny or free users can be great for free marketing and product testing... a weird channel partner can make a business... obscure cashflow and accounting can make/break a business... product development or inventory can require fundraising which comes with wild "strings attached"... and and and...
(having started a number of both self-funded and venture-funded business, in tech small format retail and more...)
Thoughtful piece with a different and engaging tack to the “Developers don’t understand marketing” commonplace. Kozlowski describes indirectly his mother’s professional organizing business, which indirectness asks readers to consider the churn of consumer culture and the goals (if any) of capitalism.
It’s just a trace, but the following paragraph (quoted in part) hits hard in this season of thanks and bounty. Thank you, Fred K, for writing it.
> The business has been a giant blackpill on Temu. Seeing people pay my mom to throw away bags full of internet purchases has been depressing. Bringing yet cheaper goods into the States hasn’t actually increased quality of life whatsoever over the already cheap goods on Amazon[. . . .] Unfortunately — despite the very real benefits that mass affluence and consumer culture have, it’s difficult in my position to not think that we’ve gone too far.
Reality is subjective. There is no singular objective "reality" that everyone shares, so we get by with objective, repeatable measurements instead. Business in particular means contact with realities that are not your own, and that can be a real gut check to some people.
Thing is, working as a cog in a larger machine is itself another form of reality check. Both situations force you to confront data and perspectives that aren't your own, and to adapt to them. Reading through the comments here, I find myself resonating with folks who very much enjoy being cogs or have a desire to run a smaller business for themselves, profit-motives and moat-building be damned. Almost as if there's a desire to return to a simpler market devoid of the complexities that computers have allowed to thrive (algorithmic pricing, big data analysis, surveillance capitalism, etc), where what mattered was running a good environment with fair pricing rather than grandiose plans for expansion or market monopolization. I empathize with those goals, given my "fuck you money" pie-in-the-sky plans of running a small makerspace/net cafe in a community and eating the modest loss through ROI elsewhere in my investments.
To get back to the (still-down) article, running a business absolutely means confronting the reality of the fickleness of the marketplace. It means dealing with customers who are ill-informed and also ill-suited to critique or correction. You have to make a product others want to buy, rather than one you believe is best. The pressure is there to capitalize on every avenue, every opportunity, never turning down business for fear of it reverberating into collapsing other opportunities. It's a really immediate reckoning over what's more important to you in terms of success vs ethics, in an environment incredibly hostile to the latter (and exploitative of those who reside on that side of the proverbial fence). It's stressful, and it's why I refuse to open my own shop despite my dissatisfaction with corporate life at present.
I remember one time at summer camp in the teen dorm I claimed that pain was an illusion, because it was subjective. A girl named Lisa picked up a wooden block and threw it at me. It hit my lip, which started bleeding, and she was immediately horrified at what she had done; but I had to acknowledge that subjective "reality" has an importance to me that objective reality does not.
Pain actually has a lot of objective parts to it. There are real chemical and mechanical processes involved. You could even argue the subjective part might be smaller than people think. Mindset can change the experience, but different people might just have different "pain functions" to begin with.
Same idea with hunger and weight gain or loss. Hunger is a biological process. You can push through it, but people also experience it differently because their actual hunger mechanisms differ, not just because they "interpret" it differently.
Interestingly I had just re-watched the House episode with the CIPA patient in S3, and it touched on this if you squint. The girl, having CIPA, effectively can’t feel pain. She can’t even feel getting 2nd degree burns and it’s questionable if she even felt them poking around in her head or if she used that to escape (and fall down a 2nd story balcony). The only time she felt actual pain was seeing her mother relapse and be wheeled off for more surgery.
She cannot feel what should objectively cause her pain, but because pain is a subjective experience she can’t. However, truly subjective pain, that is pain derived from emotional connection, is literally the worst pain she can feel.
The guy couldn't emotionally recognise his mother after seeing her and started calling her imposter. But when he heard her voice over telephone, he felt emotional connection and said the person on other end was indeed his mother. Emotional pathways provide salience information in conjunction with sensory pathways. Any disruption to emotional pathways can override even correct sensory data.
Computers are fast now. You can serve five million hits a day with a webserver that's a shell script running from inetd. You don't need Cloudflare unless you're getting DDoSed.
I don't understand such comments. Obviously the people having trouble serving HN traffic have no clue what inetd is. Most of them might not even know about using varnish/nginx and that too is fine. It is good that internet is so accessible that you don't need to write shell script from inetd to express your opinions on your own domain and website. A random php running blog will be able to serve far less than 5M hits/day and that too is fine. Most people can't run curlftpfs too and it turned out to be fine
Oh, I was using a shell script spawned from inetd as the lowest-tech, most primitive, worst-performance simple way of running a web server. A random PHP-running blog will easily handle tens of millions of hits a day unless you way overcomplicate it.
Concurrent connections is the number of simultaneous connections a server can handle, something little wordpress sites not behind anything to help often get slammed with on the regular.
Wordpress is kind of a pig, yeah. But unless you're running WebSocket or server-sent events or some other Comet thing from Wordpress, you can solve the concurrent-connections problem just by limiting the number of concurrent PHP processes your server runs (MaxRequestWorkers in Apache), which may or may not be set to a reasonable default like 20 normally. Additional burst clients will either pile up in the kernel's connection queue or have to retry their SYN packets if the kernel's connection queue is full.
The reason you need more than one concurrent connection (again, barring some kind of Comet) is that some clients take a significantly nonzero amount of time to finish receiving the response, at which point PHP has generally already finished executing but is still taking up RAM, which is what limits the number of concurrent connections you can handle with Wordpress. But really all you need to do is not go into swap when you hit an overload, and Bob's your uncle.
Depending on how it's configured, Wordpress may still not be able to answer new requests as soon as they come in, but that's not a problem of the number of concurrent connections; it's a problem of the number of hits per second.
You can decouple the number of concurrent connections from the amount of RAM you're burning in PHP by using FastCGI, or just plain old CGI, or nginx (with probably FastCGI), or putting a reverse proxy in front of Apache, or just about anything except mod_php, but you very rarely need to. There just aren't that many people on 14.4kbps modems any more, and your web server has literal gigabytes of RAM.
You don't need Cloudflare unless you're getting DDoSed.
Millions of hits a day doesn't seem to be the correct metric for an HN front page traffic spike.
Concurrent connections per second is likely much more relevant, and in that case, one can put the most basic proxy or cache in front of the webpage to help a great deal, if not Cloudflare.
"Concurrent connections" and "connections per second" are two different measures which you are confusing. The second one is basically the same thing as "hits per day", and the first one isn't relevant.
Some real honest and actionable advice here. I think the natural course for intelligent people that enjoy crafting things is very much in conflict with the real world. We care about the things we are building because we see them as an extension of ourselves. Anxiously perfecting our creations in a safe place, obsessing over ever smaller details of finished portions; working on detailing while ignoring the missing half of the ship. Its an ego thing. We see these things as pieces of ourselves, we’re afraid that the world won’t accept them, and by extension us. It’s not real though; nothing and nobody is perfect, and its okay.
I have a deep feeling that i can “do it myself”, yet i work for companies because deep down I like the anonymity and the safety of it; at a big company we get to be part of something established, we don’t have to show our own faces to the world.
After 20 years building software for other companies, I started my own thing a few weeks ago. The reality check hit fast. When you're an employee, you can hide behind process and blame the market. When it's yours, every signup or lack of one is direct feedback. No buffer.
> When you're an employee, you can hide behind process and blame the market.
You can still blame the market. A good market makes everything easier, a bad market makes everything harder.
But here’s the catch: You choose the market.
To share an example: When I started my react teaching side business in 2015 it was so easy. Growing 2x year over year, I thought I was some kind of business genius. Then one day it stopped. React became old, no longer the exciting new thing, the market consolidated into 2 or 3 big players with The Default resources and my stuff wasn’t one of them. I totally missed the land grab aspect of the early market phase and didn’t go hard enough on pure growth. Not a business genius after all.
Those tides are really something.
In 2020-2022 I had a repair side-hustle that became unexpectedly profitable, so I started scaling it up and thinking about quitting my job. Then interest rates went up, assets stopped appreciating, and I realized that most of the value I thought I was adding was actually just asset inflation and the common wisdom that repair is a miserable business niche was correct after all.
Bad business people have been blaming outside forces for their failings forever. Taxes! Regulations! China! The Algorithm! It’s a symphony out there.
Yes, and none of that matters when the money runs out and you can't convince investors that your business will bring them a worthwhile return in an environment that includes all of those outside forces.
Seems the page is down. So, yes, Reality is where money is. For money to reach you, you need to setup the pipelines, or poke a hole in an existing pipeline.
Maybe that's old-school. Youngsters seem to argue that they don't need to move out of their den, to start and run a business. And they were right some times.
This is why I build static astro sites now for marketing and blog type pages. Cheaper to run, too - it's just html/css with optional js/ts sprinkles.
Another biz lesson I learned luckily through observation (WP sites being down too often and a nightmare to configure and maintain).
I wonder how many decades the advice “use WP-cache; WP-supercache” has endured. Is it still the advice? Why knows. It’s been 20 years of WP (last week) and seeing that error message.
Thank you for sharing. My wife and I have been down this road in physical retail, SaaS, consulting, and real estate. It always feels like the first time when you learn slowly, and you’ve done a Good Thing by helping us all learn faster.
FYI - I tried to leave this comment on your blog, but I got a database connection error. HTH
Archived Copy https://archive.is/3scj5
well... it's a certain KIND of reality... one where numbers fight with "common sense"...
examples... a large paying customer can kill a business... tiny or free users can be great for free marketing and product testing... a weird channel partner can make a business... obscure cashflow and accounting can make/break a business... product development or inventory can require fundraising which comes with wild "strings attached"... and and and...
(having started a number of both self-funded and venture-funded business, in tech small format retail and more...)
Unless it's an AI business
https://youtu.be/tO5sxLapAts?si=C5IvWbJjlpr3Icvo
I read the article but didn't understand what kind of business this person is in particularly.
Sounds like a personal organizing business, i.e. decluttering and home storage solutions.
The reality of the HN effect. I really want to read this. Can someone post a mirror?
https://archive.ph/3scj5
Thoughtful piece with a different and engaging tack to the “Developers don’t understand marketing” commonplace. Kozlowski describes indirectly his mother’s professional organizing business, which indirectness asks readers to consider the churn of consumer culture and the goals (if any) of capitalism.
It’s just a trace, but the following paragraph (quoted in part) hits hard in this season of thanks and bounty. Thank you, Fred K, for writing it.
> The business has been a giant blackpill on Temu. Seeing people pay my mom to throw away bags full of internet purchases has been depressing. Bringing yet cheaper goods into the States hasn’t actually increased quality of life whatsoever over the already cheap goods on Amazon[. . . .] Unfortunately — despite the very real benefits that mass affluence and consumer culture have, it’s difficult in my position to not think that we’ve gone too far.
Reality is subjective. There is no singular objective "reality" that everyone shares, so we get by with objective, repeatable measurements instead. Business in particular means contact with realities that are not your own, and that can be a real gut check to some people.
Thing is, working as a cog in a larger machine is itself another form of reality check. Both situations force you to confront data and perspectives that aren't your own, and to adapt to them. Reading through the comments here, I find myself resonating with folks who very much enjoy being cogs or have a desire to run a smaller business for themselves, profit-motives and moat-building be damned. Almost as if there's a desire to return to a simpler market devoid of the complexities that computers have allowed to thrive (algorithmic pricing, big data analysis, surveillance capitalism, etc), where what mattered was running a good environment with fair pricing rather than grandiose plans for expansion or market monopolization. I empathize with those goals, given my "fuck you money" pie-in-the-sky plans of running a small makerspace/net cafe in a community and eating the modest loss through ROI elsewhere in my investments.
To get back to the (still-down) article, running a business absolutely means confronting the reality of the fickleness of the marketplace. It means dealing with customers who are ill-informed and also ill-suited to critique or correction. You have to make a product others want to buy, rather than one you believe is best. The pressure is there to capitalize on every avenue, every opportunity, never turning down business for fear of it reverberating into collapsing other opportunities. It's a really immediate reckoning over what's more important to you in terms of success vs ethics, in an environment incredibly hostile to the latter (and exploitative of those who reside on that side of the proverbial fence). It's stressful, and it's why I refuse to open my own shop despite my dissatisfaction with corporate life at present.
The best business people meet the world where it is.
Technologists want to change the world to be how they envision the world.
These are fundamentally at odds but modern business requires both to operate successfully.
I haven't been someone else's employee for 20 years, so the title immediately drew my attention.
One click later, "Error establishing a database connection". HN seems to have hugged this guy's site to death.
Reality - a simple blog should hardly ever need a database server for content.
The problem is wordpress does require a database server by default.
And reality is most blogs could be better served by a static web host platform with lower maintenance and less security risks.
Running a business means contact with people's opinions. Having your server fall over when you post it to Hacker News means contact with reality.
I suppose one could argue that both are equally real.
I remember one time at summer camp in the teen dorm I claimed that pain was an illusion, because it was subjective. A girl named Lisa picked up a wooden block and threw it at me. It hit my lip, which started bleeding, and she was immediately horrified at what she had done; but I had to acknowledge that subjective "reality" has an importance to me that objective reality does not.
Pain actually has a lot of objective parts to it. There are real chemical and mechanical processes involved. You could even argue the subjective part might be smaller than people think. Mindset can change the experience, but different people might just have different "pain functions" to begin with.
Same idea with hunger and weight gain or loss. Hunger is a biological process. You can push through it, but people also experience it differently because their actual hunger mechanisms differ, not just because they "interpret" it differently.
She objectively caused you to transition to an objective state which you both experienced subjectively!
Interestingly I had just re-watched the House episode with the CIPA patient in S3, and it touched on this if you squint. The girl, having CIPA, effectively can’t feel pain. She can’t even feel getting 2nd degree burns and it’s questionable if she even felt them poking around in her head or if she used that to escape (and fall down a 2nd story balcony). The only time she felt actual pain was seeing her mother relapse and be wheeled off for more surgery.
She cannot feel what should objectively cause her pain, but because pain is a subjective experience she can’t. However, truly subjective pain, that is pain derived from emotional connection, is literally the worst pain she can feel.
I think you will like this Capgras Syndrome story.
https://youtu.be/dqBGzkz1oDU
The guy couldn't emotionally recognise his mother after seeing her and started calling her imposter. But when he heard her voice over telephone, he felt emotional connection and said the person on other end was indeed his mother. Emotional pathways provide salience information in conjunction with sensory pathways. Any disruption to emotional pathways can override even correct sensory data.
This is a very deep story. Thank you.
Contact with paying customers, or eyeballs who refuse to pay is reality.
Contact with curious internet traffic crippling a non cloudflared webserver might not be.
Computers are fast now. You can serve five million hits a day with a webserver that's a shell script running from inetd. You don't need Cloudflare unless you're getting DDoSed.
I don't understand such comments. Obviously the people having trouble serving HN traffic have no clue what inetd is. Most of them might not even know about using varnish/nginx and that too is fine. It is good that internet is so accessible that you don't need to write shell script from inetd to express your opinions on your own domain and website. A random php running blog will be able to serve far less than 5M hits/day and that too is fine. Most people can't run curlftpfs too and it turned out to be fine
Oh, I was using a shell script spawned from inetd as the lowest-tech, most primitive, worst-performance simple way of running a web server. A random PHP-running blog will easily handle tens of millions of hits a day unless you way overcomplicate it.
I can't seem to reply to the other quote.
Concurrent connections is the number of simultaneous connections a server can handle, something little wordpress sites not behind anything to help often get slammed with on the regular.
Wordpress is kind of a pig, yeah. But unless you're running WebSocket or server-sent events or some other Comet thing from Wordpress, you can solve the concurrent-connections problem just by limiting the number of concurrent PHP processes your server runs (MaxRequestWorkers in Apache), which may or may not be set to a reasonable default like 20 normally. Additional burst clients will either pile up in the kernel's connection queue or have to retry their SYN packets if the kernel's connection queue is full.
The reason you need more than one concurrent connection (again, barring some kind of Comet) is that some clients take a significantly nonzero amount of time to finish receiving the response, at which point PHP has generally already finished executing but is still taking up RAM, which is what limits the number of concurrent connections you can handle with Wordpress. But really all you need to do is not go into swap when you hit an overload, and Bob's your uncle.
Depending on how it's configured, Wordpress may still not be able to answer new requests as soon as they come in, but that's not a problem of the number of concurrent connections; it's a problem of the number of hits per second.
You can decouple the number of concurrent connections from the amount of RAM you're burning in PHP by using FastCGI, or just plain old CGI, or nginx (with probably FastCGI), or putting a reverse proxy in front of Apache, or just about anything except mod_php, but you very rarely need to. There just aren't that many people on 14.4kbps modems any more, and your web server has literal gigabytes of RAM.
You don't need Cloudflare unless you're getting DDoSed.
Millions of hits a day doesn't seem to be the correct metric for an HN front page traffic spike.
Concurrent connections per second is likely much more relevant, and in that case, one can put the most basic proxy or cache in front of the webpage to help a great deal, if not Cloudflare.
"Concurrent connections" and "connections per second" are two different measures which you are confusing. The second one is basically the same thing as "hits per day", and the first one isn't relevant.
Getting hacker news'd is also contact w/ reality for your website/hosting platform :-D
Crazy... 15 years after nginx solving the c10k problem...