Either I have Stockholm syndrome or this is not really too bad. The Java codebase I work on is 25 years old and also has large areas without test coverage (smaller, recently!), was only updated from Java 8 to 11 last year, and had portions generated with a JavaCC version from the 90s that could no longer be found anywhere. Tens of thousands of IDE warnings are not a big deal. At a certain point once all the original developers leave you start to be concerned about minimizing diffs, to preserve the ability to bisect and find what changes introduced a bug - thus large changes such as reformatting or fixing IDE warnings become untenable. This is a sort of local maxima of development efficiency which can really only be escaped by investing in writing truly staggering quantities of unit tests, so that newly-discovered bugs can be analyzed by writing another test instead of bisecting through changes. And we are doing that, but it just takes a while.
Me writing all that was just an indicator of getting old, though. I remember coming out of college and hating warnings. They are simple and easy to fix without understanding the codebase, which seems overwhelming by comparison. Fixing all -Wall compiler warnings in a large C++ project was my first task upon joining Azure out of undergrad. Some day all the code you write will, unchanged, become riddled with IDE warnings as language capabilities shift over time. And a new grad will ask how you can tolerate it.
I agree that the codebase isn’t bad for like… a standard Java codebase. However I would have expected that a high-stakes nuclear research facility would have had a better codebase? I’m just surprised that bad code is this pervasive.
having grown up near such a facility, and knowing how fast and loose they tend to play with radiological materials, let alone perl scripts, i’m utterly unsurprised, but i guess for people without prior exposure it would be a shock, yeah
ime most processes in most organizations, code or otherwise, are held together with duct tape and prayer to varying degrees of literalism
@MiraWelner you mentioned that one of your posts hit the front page of HN for an hour or so. How many visits did you get? And the site served everyone with no downtime? It always amuses me to see a site go down from the HN hug of death, knowing that other sites (such as yours) successfully serve all the traffic from literally a hobbyist computer in someone’s house
This is actually a really funny story - when this post and the git post were on the front page my site was fine. However with this post in particular on HN the site did go down and commenters assumed it was the hug of death.
But actually I don’t think it was the hug of death because it went down exactly at 2am EST - which is when it updates and reboots if necessary!
Is there a simple way to have a backup server for the site? E.g. can I point one of the DNS A records to my IP and another one to my GitHub-Pages-hosted version of the site?
This is one of my dream projects but I could never figure out how to expose the site to the public internet. I will try the port forwarding thing but I have a feeling my Xfinity router has locked that down (please correct me if I’m wrong)
Got it working with like 10 minutes of effort, lol. Don’t know why I struggled previously so much
One thing I previously was stumped about was getting my public IP address. Kinda surprising that I just go to a site like whatsmyip.com and get the value from there. I thought that wouldn’t work because Xfinity always rotates my public IP
Try Cloudflare tunnel (like a comment above suggested).
It creates a private connection between your home network and cloudflare, which won’t expose your home IP or network to the outside.
It’s a compromise to have cloudflare MITM your self-hosted website, but it’s better than burning through your (very generous—sarcastic) xfinity monthly cap.
In theory, yes. You get access to their CDN when using a tunnel. You can setup custom caching rules to serve content from their edge network and reduce your outgoing bandwidth.
In practice, no one visits my site so I can’t test it. lol.
Cloudflare Tunnel is free and a good solution for those behind CG-NATs or an ISP firewall. It also offers effortless DoS protection.
I will admit, however, that I think it’s slightly “cooler” in some sense to host your site directly from your home, with no assistance from Cloudflare or other giant tech companies, even if you don’t really get much tangible benefit from doing it that way.
(By these standards of course, my personal site is rather lame because it’s just your standard Jekyll + GitHub Pages site.)
What are the risks of port forwarding and hosting on home network? I get the general risk of giving the public internet direct access to my home devices. But how do people specifically exploit this? It depends on me misconfiguring or not properly locking down the web server, right?
Pretty much, but nobody has ever made an unhackable server. So even if you “properly” configure the server it’s not 100% secure because nothing is.
I did get my router hacked and it had third party malicious software installed on it and it didn’t function until I got the NetGear people to fix it which is why I installed fail2ban vibe has worked so far. But nothing is foolproof.
Let’s assume you forward port 443 to your Pi running Apache. You’re basically exposing the following bits of software to the Internet:
Your kernel’s TCP/IP stack
Apache
Any software you may choose to place behind an Apache reverse proxy
The biggest risk is an RCE in any of those pieces, because you’re truly pwned, but I’d lay pretty long odds against an RCE in the Linux network stack, and I don’t think your average Apache config is at much risk either – these things have both been highly battle-tested. Some sort of denial-of-service exploit is more likely but again, Linux+Apache have powered a huge chunk of the Internet for the last 25+ years. Now, if you write an HTTP server which executes arbitrary shell commands from the body of POST requests and proxy it behind Apache, you have only yourself to blame…
I expose HTTP and a few other services from my home network via port forwarding. I don’t lose sleep over it.
Nice! I don’t know what it is but there is something really satisfying about hosting your website at home.
You can have some fun as well, like getting an LED to blink on every hit to the site.
I do want to do something hardware related because right now I’m under utilising the pi’s hardware abilities, but I feel like I’d have trouble distinguishing real traffic from bot traffic.
I have an interactive pixel grid that syncs to an ePaper in my home on my website: https://www.svenknebel.de/posts/2023/12/2/ (picture, grid it self at the top of the homepage feed)
Very intentionally very low-res so I don’t have to worry about people writing/drawing bad stuff, and its an entirely separate small program, so if someone ever manages to crash it only that part is gone.
I just moved my blog off of EC2 to my Raspberry Pi Kubernetes cluster at home just today. The whole idea behind running it on EC2 was that I figured I would have fewer reliability issues than on my homelab Kubernetes cluster, but the Kubernetes cluster has been remarkably stable (especially for stateless apps) and my EC2 setup was remarkably flaky[^1]. It’s definitely rewarding to run my own services, and it saves me a bunch of time/money to boot.
[^1]: not because of EC2, but because I would misconfigure Linux things, or not properly put my certificates in an EBS volume, or not set the spot instance termination policy properly, or any of a dozen other things–my k8s cluster runs behind cloudflare which takes care of the https stuff for me
I’ve banned Googlebot on my personal site, though only through robots.txt and not the user-agent sniffing I use for other bots. I don’t really care about it being searchable anymore.
I mean the reality is most software projects pick none of the three. I like the point the author makes that price is very much its own thing, separate from the actual quality and reality of the project.
Yeah, «pick two» is just an upper bound, and sometimes I suspect that somehow «zero» is not a reliable lower bound.
Also, it is often two out of four, because if you eventually build something cheap and good, it is quite likely not to be the «it» you were initially planning… (but maybe still good and good to have!)
This is simple vs. easy. It definitely is very simple mathematics, pretty basic set theory (not Venn diagram basic, as it needs functions&relations, but nothing even remotely crazy). It probably isn’t easy for most people, as I think this “foundations of mathematics” stuff is not frequently taught, and it does require somewhat more abstract thinking.
Perhaps even the question itself is a type error.
Sure, programming is mostly done via Turing-complete languages, and a Turing-completeness is surprisingly easy/trivial to reach. (Doesn’t make “the sum of its parts” any easier though, two trivial function’s composition may not end up as a trivial function.)
As for why I consider it a type error: programming is the whole act and art of building and maintaining computable functions with certain properties, if we want to be very abstract.
Naming variables, encoding business logic/constraints in a safe way, focusing on efficiency are all parts of programming itself. The computing model is just one (small) part of it all.
The computing model is just one (small) part of it all.
Related:
“(Alan) Turing’s work is very important; there is no question about that. He illuminated many fundamental questions. In a sense, however, it is unfortunate that he chose to write in terms of ‘computability’ especially in view of development, subsequent to Turing’s work, of modern computers. As a theory of ‘computability’, Turing’s work is quite important, as a theory of ‘computations’, it is worthless.
Very much agree but id say that this current AI cycle is specifically GenAI, to distinguish it from other AI hypes that I suspect will happen in the future.
I would like to represent the delegation of broke people in their 20s whose tech salaries are efficiently absorbed by their student loans:
You don’t need a smart bed. My mattress cost $200 and my bedframe cost <50. I sleep fine. I know as people age they need more back support but you do NOT need this. $250 worth of bed is FINE. You will survive!!
I’m not sure I agree. Like if you are living paycheck-to-paycheck then yeah, probably don’t drop $2k on a mattress. But I believe pretty strongly in spending good money on things you use every day.
The way it was explained to me that aligned with my frugal-by-nature mindset was basically an amortization argument. You (hopefully) use a bed every single day. So even if you only keep your bed for a single year (maybe these newfangled cloud-powered beds will also have planned obsolescence built-in, but the beds I know of should last at least a decade), that’s like 5 bucks a day. Which is like, a coffee or something in this economy. I know my colleagues and I will sometimes take an extra coffee break some days, which could be a get up and walk break instead.
You might be young now, but in your situation I would rather save for my old age than borrow against my youth. And for what it’s worth I have friends in their 20s with back problems.
(of course, do your own research to figure out what sort of benefits a mattress will give to your sleep, back, etc. my point is more that even if the perceived benefits feel minimal, so too do the costs when you consider the usage you get)
Mattresses are known to have a rather high markup, and the salesmen have honed the arguments you just re-iterated to perfection. There are plenty of items I’ve used nearly daily for a decade or more. Cutlery, pots, my wallet, certain bags, my bike, etc. None of them cost anywhere near $2000. Yes, amortized on a daily basis, their cost comes to pennies, which is why life is affordable.
Yes, there are bad mattresses that will exacerbate bad sleep and back problems. I’ve slept on some of them. When you have one of those, you’ll feel it. If you wake up rested, without pains or muscle aches in the morning, you’re fine.
I too lament that there are things we buy which have unreasonable markups, possibly without any benefits from the markups at all. I guess my point is more that I believe – for the important things in life – erring on the side of “too much” is fine. I personally have not been grifted by a $2k temperature-controlled mattress, but if it legitimately helped my sleep I wouldn’t feel bad about the spend. So long as I’m not buying one every month.
I think one point you’re glossing over is that sometimes you have to pay an ignorance tax. I know about PCs, so I can tell you that the RGB tower with gaming branding plastered all over it is a grift [1]. And I know enough about the purpose my kitchen knife serves to know that while it looks cool, the most that the $1k chef’s knife could get me is faster and more cleanly cut veggies [2].
You sound confident in your understanding of mattresses, and that’s a confidence I don’t know if I share. But if I think of a field I am confident in, like buying PCs, I would rather end the guy who buys the overly marked-up PC that works well for him than the one who walks a way with a steal that doesn’t meet his needs. Obviously we want to always live in the sweet spot of matching spend to necessity, but I don’t know if it’s always so easy.
[1] except for when companies are unloading their old stock and it’s actually cheap.
[2] but maybe, amortized, that is worth it to you. I won’t pretend to always be making the right decisions.
I personally have not been grifted by a $2k temperature-controlled mattress, but if it legitimately helped my sleep I wouldn’t feel bad about the spend.
Note, because it’s not super obvious from the article: the $2k (or up to about 5k EUR for the newest version) is only the temperature-control, the mattress is extra.
All that said: having suffered from severe sleep issues for a stretch of years, I can totally understand how any amount of thousands feels like a steal to make them go away.
One of the big virtues of the age of the internet is that you can pay your ignorance tax with a few hours of research.
In any case, framing it as ‘$5 a day’ doesn’t make it seem like a lot until you calculate your daily take-home pay. For most people, $5 is like 10% of their daily income. You can probably afford being ignorant about a few purchases, but not about all of them.
One of the big virtues of the age of the internet is that you can pay your ignorance tax with a few hours of research.
Maybe I would have agreed with you five years ago, but I don’t feel the same way today. Even for simple factual things I feel like the amount of misinformation and slop has gone up, much less things for which we don’t have straight answers.
For most people, $5 is like 10% of their daily income. You can probably afford being ignorant about a few purchases, but not about all of them.
Your point is valid. I agree that we can’t 5-bucks-of-coffee-a-day away every purchase we make. Hopefully the ignorance tax we pay is much less than 10% of our daily income.
I think smart features and good quality are completely separate issues. When I was young, I also had a cheap bed, cheap keyboard, cheap desk, cheap chair, etc. Now that I’m older, I kinda regret that I didn’t get better stuff at a younger age (though I couldn’t really afford it, junior/medior Dutch/German IT jobs don’t pay that well + also a sizable student loan). More ergonomic is better long-term and generally more expensive.
Smart features on the other hand, are totally useless. But unfortunately, they go together a bit. E.g. a lot of good Miele washing machines (which do last longer if you look at statistics of repair shops) or things like the non-basic Oral-B toothbrushes have Bluetooth smart features. We just ignore them, but I’d rather have these otherwise good products without she smart crap.
Also, while I’m on a soapbox – Smart TVs are the worst thing to happen. I have my own streaming box, thank you. Many of them make screenshots to spy on you (the samba.tv crap, etc).
Also, while I’m on a soapbox – Smart TVs are the worst thing to happen. I have my own streaming box, thank you. Many of them make screenshots to spy on you (the samba.tv crap, etc).
Yes, absolutely! Although it would be cool to be able to run a mainline kernel and some sort of Kodi, cutting all the crap…
You don’t need a smart bed. My mattress cost $200 and my bedframe cost <50. I sleep fine. I know as people age they need more back support but you do NOT need this. $250 worth of bed is FINE. You will survive!!
I guess you never experienced a period with serious insomnia. It can make you desperate. Your whole life falls in to shambles, you’ll become a complete wreck, and you can’t resolve the problem while everybody else around seems to be able to just go to bed, close their eyes and sleep.
There is so much more to sleep than whether your mattress can support your back. While I don’t think I would ever buy such a ludicrous product, I have sympathy for the people who try this out of sheer desperation. At the end of the day, having Jeff Bezos in your bed and some sleep is actually better than having no sleep at all.
You make some good points why this kind of product shouldn’t exist and anything but a standard mattress should be a matter of medical professionals and sleep studies. When people are delirious from a lack of sleep and desperate, these options shouldn’t be there to take advantage of them. I’m surprised at the crazy number of mattress stores out there in the age of really-very-good sub-$1,000 mattresses you can have delivered to your door. I think we could do more to protect people from their worn out selves.
None of the old people in my family feel the need for an internet connected bed (that stops working during an internet or power outage). Also, I imagine that knowing you are being spied on in your sleep by some creepy amoral tech company does not improve sleep quality.
I do know that creepy amoral tech companies collect tons of personal data so that they can monetize it on the market (grey or otherwise). Knowing that you didn’t use your bed last night would be valuable information for some grey market data consumers I imagine. This seems like a ripe opportunity for organized crime to coordinate house breakins using an app.
I believe the people who buy this want to basically experience the most technological “advanced” thing they can pay for. They don’t “need” it. It’s more about the experience and the bragging rights, but I could be wrong.
I’m sorry to somewhat disagree. The reason I would buy this (not at that price tag, I had actually looked into this product) is because I am a wildly hot person/sleeper. I have just a flat sheet on and I am still sweating. I have ceiling fans running additional fans added. This is not only about the experience unless a good night sleep is now considered “an experience”. I legitimately wear shorts even in up to a foot of snow.
Ouch… Please do not follow this piece of advice. A lot of cheap mattresses contain “cancer dust”[1] that you just breath in when you sleep. You most likely don’t want to buy the most expensive mattress either, because many of the very expensive mattresses are just cheap mattresses made overseas with expensive marketing.
The best thing to do is to look at your independent consumer test results for your local market. (In Germany where I live it’s “Stiftugn Warentest” and in France where I’m from it’s “60 millions de consommateurs (fr).” I don’t know what it is in the US.)
A good mattress is not expensive, but it’s not cheap either. I spend 8 hours sleeping on this every day, I don’t want to cheap out.
[1] I don’t mean literal cancer dust. It’s usually just foam dust created when the mattress foam was cut, or when it rubs against the cover. People jokingly call it “cancer dust”
Sighhhh my crappy apartment complex uses a Ruckus box so I had to contact the ruckus box people and get my own ip address to host my website on a local device because my default I just share an ip address with the rest of the building.
And it’s just an ipv4. I don’t get an ipv6. So my personal site, mirawelner.com, has no ipv6.
If it makes you feel any better, 10 years ago the big “problem” was people copying and pasting code directly from Stack Overflow (as others have mentioned in the comments here). Stack Overflow even made it the point of an April Fool’s joke in 2021. xkcd joked about “Stacksort” in the alt-text of “ineffective sorts” in 2013. As a random example I found, Scott Hanselman worried about a version of this problem in 2013 as well. “Remember that there was a time we programmed without copying our work” is pretty perennial advice.
Nostalgia – whether experienced or manufactured – has a tendency to cherry-pick good or bad examples depending on what you want the result to be. This might be a dated reference itself but I remember someone asking why Saturday Night Live wasn’t as good as it used to be, and the answer is that it hasn’t changed – there were always 9 bad skits for every one that was good, but you only remember the good ones.
Also, “junior engineers can’t code” is a genre of blog post older than timeitself.
This is why I just gave up and used Vivaldi because it has cool features. The stance of “give up on ethics they are all evil” is a stance I deeply oppose in most cases but I think it may be warranted in browsers. I used Brave for a bit, then tried Pale Moon, and now I guess I’ve given up.
I don’t mean for you to take away “give up on ethics they are all evil” as the conclusion. There is promise in the Ladybird Browser Initiative, and I am hopeful to see those efforts mature.
I know this is taking a lot of hate but I used this today to improve some HTML/CSS for my site and it was quite helpful imo. I’d say I’m a fan if it, and Zed in general.
Either I have Stockholm syndrome or this is not really too bad. The Java codebase I work on is 25 years old and also has large areas without test coverage (smaller, recently!), was only updated from Java 8 to 11 last year, and had portions generated with a JavaCC version from the 90s that could no longer be found anywhere. Tens of thousands of IDE warnings are not a big deal. At a certain point once all the original developers leave you start to be concerned about minimizing diffs, to preserve the ability to bisect and find what changes introduced a bug - thus large changes such as reformatting or fixing IDE warnings become untenable. This is a sort of local maxima of development efficiency which can really only be escaped by investing in writing truly staggering quantities of unit tests, so that newly-discovered bugs can be analyzed by writing another test instead of bisecting through changes. And we are doing that, but it just takes a while.
Me writing all that was just an indicator of getting old, though. I remember coming out of college and hating warnings. They are simple and easy to fix without understanding the codebase, which seems overwhelming by comparison. Fixing all -Wall compiler warnings in a large C++ project was my first task upon joining Azure out of undergrad. Some day all the code you write will, unchanged, become riddled with IDE warnings as language capabilities shift over time. And a new grad will ask how you can tolerate it.
I agree that the codebase isn’t bad for like… a standard Java codebase. However I would have expected that a high-stakes nuclear research facility would have had a better codebase? I’m just surprised that bad code is this pervasive.
having grown up near such a facility, and knowing how fast and loose they tend to play with radiological materials, let alone perl scripts, i’m utterly unsurprised, but i guess for people without prior exposure it would be a shock, yeah
ime most processes in most organizations, code or otherwise, are held together with duct tape and prayer to varying degrees of literalism
You should try looking at the NumPy internals!
It’s better than it used to be though…
No!! Not this comment from a NumPy Maintainer!!
Bad code is everywhere :(
@MiraWelner you mentioned that one of your posts hit the front page of HN for an hour or so. How many visits did you get? And the site served everyone with no downtime? It always amuses me to see a site go down from the HN hug of death, knowing that other sites (such as yours) successfully serve all the traffic from literally a hobbyist computer in someone’s house
This is actually a really funny story - when this post and the git post were on the front page my site was fine. However with this post in particular on HN the site did go down and commenters assumed it was the hug of death.
But actually I don’t think it was the hug of death because it went down exactly at 2am EST - which is when it updates and reboots if necessary!
Murphy strikes again
Is there a simple way to have a backup server for the site? E.g. can I point one of the DNS A records to my IP and another one to my GitHub-Pages-hosted version of the site?
Not to my knowledge using the stack I described although there probably is a way. But I doubt you would be able to use simple tools like i am
This is one of my dream projects but I could never figure out how to expose the site to the public internet. I will try the port forwarding thing but I have a feeling my Xfinity router has locked that down (please correct me if I’m wrong)
I think it works on Xfinity?
https://www.xfinity.com/support/articles/port-forwarding-xfinity-wireless-gateway
Yes, that looks promising! Thanks for the research
Got it working with like 10 minutes of effort, lol. Don’t know why I struggled previously so much
One thing I previously was stumped about was getting my public IP address. Kinda surprising that I just go to a site like whatsmyip.com and get the value from there. I thought that wouldn’t work because Xfinity always rotates my public IP
Try Cloudflare tunnel (like a comment above suggested).
It creates a private connection between your home network and cloudflare, which won’t expose your home IP or network to the outside.
It’s a compromise to have cloudflare MITM your self-hosted website, but it’s better than burning through your (very generous—sarcastic) xfinity monthly cap.
Does Cloudflare Tunnel help with your bandwidth cap? Do they offer caching or something?
In theory, yes. You get access to their CDN when using a tunnel. You can setup custom caching rules to serve content from their edge network and reduce your outgoing bandwidth.
In practice, no one visits my site so I can’t test it. lol.
I would suggest cloudflared (cloudflare proxy) versus opening a port on your home router and port forwarding.
cloudflare regularly blocks my access to sites, from both home and work, so I am not a fan of cloudflare services…
Cloudflare Tunnel is free and a good solution for those behind CG-NATs or an ISP firewall. It also offers effortless DoS protection.
I will admit, however, that I think it’s slightly “cooler” in some sense to host your site directly from your home, with no assistance from Cloudflare or other giant tech companies, even if you don’t really get much tangible benefit from doing it that way.
(By these standards of course, my personal site is rather lame because it’s just your standard Jekyll + GitHub Pages site.)
Can the cloudflare proxy reach the server without opening a port, etc ?
Ah, I did not read close enough. This thing creates a tunnel: https://github.com/cloudflare/cloudflared
What are the risks of port forwarding and hosting on home network? I get the general risk of giving the public internet direct access to my home devices. But how do people specifically exploit this? It depends on me misconfiguring or not properly locking down the web server, right?
Pretty much, but nobody has ever made an unhackable server. So even if you “properly” configure the server it’s not 100% secure because nothing is.
I did get my router hacked and it had third party malicious software installed on it and it didn’t function until I got the NetGear people to fix it which is why I installed fail2ban vibe has worked so far. But nothing is foolproof.
Let’s assume you forward port 443 to your Pi running Apache. You’re basically exposing the following bits of software to the Internet:
The biggest risk is an RCE in any of those pieces, because you’re truly pwned, but I’d lay pretty long odds against an RCE in the Linux network stack, and I don’t think your average Apache config is at much risk either – these things have both been highly battle-tested. Some sort of denial-of-service exploit is more likely but again, Linux+Apache have powered a huge chunk of the Internet for the last 25+ years. Now, if you write an HTTP server which executes arbitrary shell commands from the body of POST requests and proxy it behind Apache, you have only yourself to blame…
I expose HTTP and a few other services from my home network via port forwarding. I don’t lose sleep over it.
Oh I didn’t know they had a free tier but it looks like they do! I’ll look into it.
Also are you the same whalesalad on HN that gave me the advice on the browser text width?
Nice! I don’t know what it is but there is something really satisfying about hosting your website at home. You can have some fun as well, like getting an LED to blink on every hit to the site.
I do want to do something hardware related because right now I’m under utilising the pi’s hardware abilities, but I feel like I’d have trouble distinguishing real traffic from bot traffic.
I have an interactive pixel grid that syncs to an ePaper in my home on my website: https://www.svenknebel.de/posts/2023/12/2/ (picture, grid it self at the top of the homepage feed)
Very intentionally very low-res so I don’t have to worry about people writing/drawing bad stuff, and its an entirely separate small program, so if someone ever manages to crash it only that part is gone.
there is a neat little project at https://lights.climagic.com/ where you can switch the lights on and off remotely…
I just moved my blog off of EC2 to my Raspberry Pi Kubernetes cluster at home just today. The whole idea behind running it on EC2 was that I figured I would have fewer reliability issues than on my homelab Kubernetes cluster, but the Kubernetes cluster has been remarkably stable (especially for stateless apps) and my EC2 setup was remarkably flaky[^1]. It’s definitely rewarding to run my own services, and it saves me a bunch of time/money to boot.
[^1]: not because of EC2, but because I would misconfigure Linux things, or not properly put my certificates in an EBS volume, or not set the spot instance termination policy properly, or any of a dozen other things–my k8s cluster runs behind cloudflare which takes care of the https stuff for me
This is nice and old-school.
My static site is buckling under the strain of ai scrapers. I wonder when that problem will need addressing at this entry level.
I’m sorely tempted sometimes. I’m not convinced Google remain relevant in search anymore.
I’ve banned Googlebot on my personal site, though only through robots.txt and not the user-agent sniffing I use for other bots. I don’t really care about it being searchable anymore.
If Google isn’t relevant than what is?
Decentralised social media, rss feeds, and stuff built around those things to aid in discovery. Things like Lobsters! But it depends on what you want.
Many (most?) of the non-Google search engines use Bing as their index.
I mean the reality is most software projects pick none of the three. I like the point the author makes that price is very much its own thing, separate from the actual quality and reality of the project.
Yeah, «pick two» is just an upper bound, and sometimes I suspect that somehow «zero» is not a reliable lower bound.
Also, it is often two out of four, because if you eventually build something cheap and good, it is quite likely not to be the «it» you were initially planning… (but maybe still good and good to have!)
The fish dev team knows how to make tools for the programming community which is HARD to do
I think it’s actually complex mathematics
This is simple vs. easy. It definitely is very simple mathematics, pretty basic set theory (not Venn diagram basic, as it needs functions&relations, but nothing even remotely crazy). It probably isn’t easy for most people, as I think this “foundations of mathematics” stuff is not frequently taught, and it does require somewhat more abstract thinking.
Perhaps even the question itself is a type error. Sure, programming is mostly done via Turing-complete languages, and a Turing-completeness is surprisingly easy/trivial to reach. (Doesn’t make “the sum of its parts” any easier though, two trivial function’s composition may not end up as a trivial function.)
As for why I consider it a type error: programming is the whole act and art of building and maintaining computable functions with certain properties, if we want to be very abstract.
Naming variables, encoding business logic/constraints in a safe way, focusing on efficiency are all parts of programming itself. The computing model is just one (small) part of it all.
Programming is the art of understanding a process in enough detail that a computer can be used to automate part of it.
Related:
https://lockywolf.wordpress.com/2019/02/16/a-mathematical-theory-of-systems-engineering-the-elements-by-a-wayne-wymore/
More like complicated mathematics.
Very much agree but id say that this current AI cycle is specifically GenAI, to distinguish it from other AI hypes that I suspect will happen in the future.
And AI hype cycles that happened in the past, like 5th Gen programming in the late 80’s
I would like to represent the delegation of broke people in their 20s whose tech salaries are efficiently absorbed by their student loans:
You don’t need a smart bed. My mattress cost $200 and my bedframe cost <50. I sleep fine. I know as people age they need more back support but you do NOT need this. $250 worth of bed is FINE. You will survive!!
I’m not sure I agree. Like if you are living paycheck-to-paycheck then yeah, probably don’t drop $2k on a mattress. But I believe pretty strongly in spending good money on things you use every day.
The way it was explained to me that aligned with my frugal-by-nature mindset was basically an amortization argument. You (hopefully) use a bed every single day. So even if you only keep your bed for a single year (maybe these newfangled cloud-powered beds will also have planned obsolescence built-in, but the beds I know of should last at least a decade), that’s like 5 bucks a day. Which is like, a coffee or something in this economy. I know my colleagues and I will sometimes take an extra coffee break some days, which could be a get up and walk break instead.
You might be young now, but in your situation I would rather save for my old age than borrow against my youth. And for what it’s worth I have friends in their 20s with back problems.
(of course, do your own research to figure out what sort of benefits a mattress will give to your sleep, back, etc. my point is more that even if the perceived benefits feel minimal, so too do the costs when you consider the usage you get)
Mattresses are known to have a rather high markup, and the salesmen have honed the arguments you just re-iterated to perfection. There are plenty of items I’ve used nearly daily for a decade or more. Cutlery, pots, my wallet, certain bags, my bike, etc. None of them cost anywhere near $2000. Yes, amortized on a daily basis, their cost comes to pennies, which is why life is affordable.
Yes, there are bad mattresses that will exacerbate bad sleep and back problems. I’ve slept on some of them. When you have one of those, you’ll feel it. If you wake up rested, without pains or muscle aches in the morning, you’re fine.
I too lament that there are things we buy which have unreasonable markups, possibly without any benefits from the markups at all. I guess my point is more that I believe – for the important things in life – erring on the side of “too much” is fine. I personally have not been grifted by a $2k temperature-controlled mattress, but if it legitimately helped my sleep I wouldn’t feel bad about the spend. So long as I’m not buying one every month.
I think one point you’re glossing over is that sometimes you have to pay an ignorance tax. I know about PCs, so I can tell you that the RGB tower with gaming branding plastered all over it is a grift [1]. And I know enough about the purpose my kitchen knife serves to know that while it looks cool, the most that the $1k chef’s knife could get me is faster and more cleanly cut veggies [2].
You sound confident in your understanding of mattresses, and that’s a confidence I don’t know if I share. But if I think of a field I am confident in, like buying PCs, I would rather end the guy who buys the overly marked-up PC that works well for him than the one who walks a way with a steal that doesn’t meet his needs. Obviously we want to always live in the sweet spot of matching spend to necessity, but I don’t know if it’s always so easy.
[1] except for when companies are unloading their old stock and it’s actually cheap.
[2] but maybe, amortized, that is worth it to you. I won’t pretend to always be making the right decisions.
Note, because it’s not super obvious from the article: the $2k (or up to about 5k EUR for the newest version) is only the temperature-control, the mattress is extra.
All that said: having suffered from severe sleep issues for a stretch of years, I can totally understand how any amount of thousands feels like a steal to make them go away.
One of the big virtues of the age of the internet is that you can pay your ignorance tax with a few hours of research.
In any case, framing it as ‘$5 a day’ doesn’t make it seem like a lot until you calculate your daily take-home pay. For most people, $5 is like 10% of their daily income. You can probably afford being ignorant about a few purchases, but not about all of them.
Maybe I would have agreed with you five years ago, but I don’t feel the same way today. Even for simple factual things I feel like the amount of misinformation and slop has gone up, much less things for which we don’t have straight answers.
Your point is valid. I agree that we can’t 5-bucks-of-coffee-a-day away every purchase we make. Hopefully the ignorance tax we pay is much less than 10% of our daily income.
I think smart features and good quality are completely separate issues. When I was young, I also had a cheap bed, cheap keyboard, cheap desk, cheap chair, etc. Now that I’m older, I kinda regret that I didn’t get better stuff at a younger age (though I couldn’t really afford it, junior/medior Dutch/German IT jobs don’t pay that well + also a sizable student loan). More ergonomic is better long-term and generally more expensive.
Smart features on the other hand, are totally useless. But unfortunately, they go together a bit. E.g. a lot of good Miele washing machines (which do last longer if you look at statistics of repair shops) or things like the non-basic Oral-B toothbrushes have Bluetooth smart features. We just ignore them, but I’d rather have these otherwise good products without she smart crap.
Also, while I’m on a soapbox – Smart TVs are the worst thing to happen. I have my own streaming box, thank you. Many of them make screenshots to spy on you (the samba.tv crap, etc).
Yes, absolutely! Although it would be cool to be able to run a mainline kernel and some sort of Kodi, cutting all the crap…
I guess you never experienced a period with serious insomnia. It can make you desperate. Your whole life falls in to shambles, you’ll become a complete wreck, and you can’t resolve the problem while everybody else around seems to be able to just go to bed, close their eyes and sleep.
There is so much more to sleep than whether your mattress can support your back. While I don’t think I would ever buy such a ludicrous product, I have sympathy for the people who try this out of sheer desperation. At the end of the day, having Jeff Bezos in your bed and some sleep is actually better than having no sleep at all.
You make some good points why this kind of product shouldn’t exist and anything but a standard mattress should be a matter of medical professionals and sleep studies. When people are delirious from a lack of sleep and desperate, these options shouldn’t be there to take advantage of them. I’m surprised at the crazy number of mattress stores out there in the age of really-very-good sub-$1,000 mattresses you can have delivered to your door. I think we could do more to protect people from their worn out selves.
None of the old people in my family feel the need for an internet connected bed (that stops working during an internet or power outage). Also, I imagine that knowing you are being spied on in your sleep by some creepy amoral tech company does not improve sleep quality.
I do know that creepy amoral tech companies collect tons of personal data so that they can monetize it on the market (grey or otherwise). Knowing that you didn’t use your bed last night would be valuable information for some grey market data consumers I imagine. This seems like a ripe opportunity for organized crime to coordinate house breakins using an app.
I believe the people who buy this want to basically experience the most technological “advanced” thing they can pay for. They don’t “need” it. It’s more about the experience and the bragging rights, but I could be wrong.
I’m sorry to somewhat disagree. The reason I would buy this (not at that price tag, I had actually looked into this product) is because I am a wildly hot person/sleeper. I have just a flat sheet on and I am still sweating. I have ceiling fans running additional fans added. This is not only about the experience unless a good night sleep is now considered “an experience”. I legitimately wear shorts even in up to a foot of snow.
As the article says, you can get the same cooling effect with an aquarium chiller for that purpose. You don’t need a cloud-only bed cooler.
Ouch… Please do not follow this piece of advice. A lot of cheap mattresses contain “cancer dust”[1] that you just breath in when you sleep. You most likely don’t want to buy the most expensive mattress either, because many of the very expensive mattresses are just cheap mattresses made overseas with expensive marketing.
The best thing to do is to look at your independent consumer test results for your local market. (In Germany where I live it’s “Stiftugn Warentest” and in France where I’m from it’s “60 millions de consommateurs (fr).” I don’t know what it is in the US.)
A good mattress is not expensive, but it’s not cheap either. I spend 8 hours sleeping on this every day, I don’t want to cheap out.
[1] I don’t mean literal cancer dust. It’s usually just foam dust created when the mattress foam was cut, or when it rubs against the cover. People jokingly call it “cancer dust”
source?
https://www.everydayhealth.com/healthy-home/does-your-mattress-contain-fiberglass-how-to-know-and-why-its-dangerous/
wait… is it carcinogenic? Now I’m concerned lol
I wouldn’t know. Because it depends on what the “dust” is. It just lead most reviewer to say “this can’t be healthy”
This article claims that it just lead to lung irritation. But again, I’m just paranoid, with asbestos we started having concerns way too late.
Finish the data lean spectroscopy paper that I’ve been about to finish next month for six months now.
Next weekend I’m sure I’ll be doing the same thing
Going to protest my government in the hopes that I won’t lose the right to protest my government.
Thanks!
Thank you!
Sighhhh my crappy apartment complex uses a Ruckus box so I had to contact the ruckus box people and get my own ip address to host my website on a local device because my default I just share an ip address with the rest of the building.
And it’s just an ipv4. I don’t get an ipv6. So my personal site, mirawelner.com, has no ipv6.
cries
I’m 24 years old - I am NOT old enough to reminisce about the good old days before kids got everything handed to them.
And yet here I am.
If it makes you feel any better, 10 years ago the big “problem” was people copying and pasting code directly from Stack Overflow (as others have mentioned in the comments here). Stack Overflow even made it the point of an April Fool’s joke in 2021. xkcd joked about “Stacksort” in the alt-text of “ineffective sorts” in 2013. As a random example I found, Scott Hanselman worried about a version of this problem in 2013 as well. “Remember that there was a time we programmed without copying our work” is pretty perennial advice.
Nostalgia – whether experienced or manufactured – has a tendency to cherry-pick good or bad examples depending on what you want the result to be. This might be a dated reference itself but I remember someone asking why Saturday Night Live wasn’t as good as it used to be, and the answer is that it hasn’t changed – there were always 9 bad skits for every one that was good, but you only remember the good ones.
Also, “junior engineers can’t code” is a genre of blog post older than time itself.
I know Juniors who can code but can’t get jobs
Haha me :)
This is why I just gave up and used Vivaldi because it has cool features. The stance of “give up on ethics they are all evil” is a stance I deeply oppose in most cases but I think it may be warranted in browsers. I used Brave for a bit, then tried Pale Moon, and now I guess I’ve given up.
I don’t mean for you to take away “give up on ethics they are all evil” as the conclusion. There is promise in the Ladybird Browser Initiative, and I am hopeful to see those efforts mature.
I know this is taking a lot of hate but I used this today to improve some HTML/CSS for my site and it was quite helpful imo. I’d say I’m a fan if it, and Zed in general.
I cannot write C or C++ without a debugger, but Python, R, HTML/CSS/JS I don’t think I’ve ever used a debugger. So I guess it’s language dependent