Hacker Newsnew | past | comments | ask | show | jobs | submit | more professor_v's commentslogin

I think this desire for understanding ultimately drives the resistance to systemd and the Linux/BSD divide, and I think for good reason. There will always be friction between features and inherent simplicity/ability to understand the system.


The article was talking about the first computer science guy in a team of mathematicians. I don't know if mathematicians should be called technical, but they're hardly MBA types.


I definitely think it's a mistake that IKEA stopped printing their catalogues last year. The offline experience is totally different from online. Online I tend to do direct searches for things I already decided I want, but the IKEA catalog is perfect for casual browsing and getting new ideas for stuff I would've never bought otherwise.

It might come off as a cost saving short term, but I doubt in the end the catalogues did not bring in enough money anymore.


Or they could improve the website to make it easier to get an overview of everything by category and scroll through listings with details with as little clunkiness and ephemeralness as possible


>, but the IKEA catalog is perfect for casual browsing and getting new ideas for stuff I would've never bought otherwise.

Understand the advantage of serendipity by flipping through pages instead of entering product search queries.

Fyi, the latest 2022 catalogs are available online with the typical "print book" layout and also downloadable as pdf:

https://www.ikea.com/us/en/customer-service/catalogues/

With pdf catalogs, you get the undirected window shopping without killing trees and adding to landfills.

EDIT reply to: >Those PDFs really don't work well on mobile devices.

Sorry for not being clear. The initial UI is not a pdf. They are web browser "digital catalogs" with page layouts similar to a printed book. There's also an option to download to pdf file.

I just tried it on my smartphone and the pages look fine. No pdf download necessary.


> without killing trees and adding to landfills.

I wonder what leads to worse pollution. A world where all information is printed and there are are no computers, or a world where no one uses paper and computers, cell phones, Kindles, etc proliferate.


Those are not the options though since personal electronics aren't going anywhere. It's either computers and papers or a similar amount of computers but at least less paper.


I realize that. It's more of a thought experiment.


Paper actually reduces pollution because trees are farmed and replanted in managed forests like crops with decades long seasons.

The more paper we use, the more trees we plant.


Nowadays most people will probably use their phones for this sort of thing. Those PDFs really don't work well on mobile devices.


>Production of catalogs like this squeezes our biome, and if we don't turn back, it will pop, and we'll be left with only enough resources for a small fraction of us to survive.

https://news.ycombinator.com/item?id=26163808


Not just IKEA. Argos and CPC both stopped catalogues, and my purchase with them declined. Argos especially had a USP over amazon being the “book of dreams”, something to leaf through in a Sunday morning and go “oooh”

Now I simply buy stuff on Amazon.


I wonder to what extent it's due to considering the environmental impact bad publicity.


Compared to this though?

"Ikea has for years sold children’s furniture made from wood linked to vast illegal logging in protected Russian forests, an Earthsight investigation has found."

https://www.earthsight.org.uk/news/press-release-illegal-rus...


So IKEA bought lumber certified by FSC, which at least until recently was a well renowned organisation. Apparently FSC shouldn't have certified this particular lumber. "FSC denies wrongdoing, but shortly after being alerted to our findings Bakurov’s certificate was abruptly terminated on 15 Jun 2021."

This might be a scandal with FSC, but hardly with IKEA. I don't expect every company to themselves track every piece of raw material back to the sources. They must be allowed to outsource some of that.


I was not implying anything very factually based, just a decision based on people's perception. Like the ban on plastic straws.


In this day and age, peoples perception is everything, and facts seem to be unimportant.


Facts, like that IKEA used certified lumber so they had very good reasons to believe that they used sustainable resources? Or that this scandal doesn't have anything to do with IKEA, but it seems like everyone that bought wood from that part of the world probably are as big part of it?

They really tried to make it look like it was about IKEA children's furniture!, but if you actual read the article you linked it has actually very little to do with IKEA and there's nothing there that says IKEA did anything reprehensible or even anything that is hard to defend.


Dude, I was agreeing with you.

I linked that article, because I recall it in the news, and it got fairly widely covered at the time with the blame firmly placed at IKEAs feet - "They should have known" apparently.

People believe what they are told these days, without any desire to fact-check or cross-reference. I think this was my point.


probably cost saving, but disguised as CO2 emission reduction


Given IKEA essentially produce throwaway furniture by design, I don't think they've got much of a leg to stand on when it comes to environmental responsibility.

Just buying more stuff is literally how they have historically marketed themselves.

https://www.youtube.com/watch?v=dBqhIVyfsRg


The price point might make people buy more that's true but calling it throwaway is hardly fair, still have a fair amount of 20 year old ikea stuff around the house and they're pretty extreme about quality assurance.


Indeed, IKEA stuff is really well built, solid, and lasts for years. I’ve had so many bad pieces of furniture from other manufacturers, IKEA just lasts, year after year, move after move

The “IKEA is crap” thing seems to be an American trope.


Surely cutting down fast growing trees and burying them in landfill is a great way to sequester co2?


I'm a heavy touchpad user and the sole reason I will not use Linux for the foreseeable future is because touchpad usage is absolutely terrible on Linux. Depending if you use the libinput or synaptics drivers it's either completely inconsistent between applications or all-around terrible.

I use Windows + WSL even though I practically never do anything Windows related.


I remember about 5 years ago I tried to deploy it on CoreOS using the available documentation and literally couldn't get it working.

I haven't done a manual deployment since. I hope it got significantly better and I may be an idiot but the reputation isn't fully undeserved.

The problem back then was also that this was usually the first thing you had to do to try it out. Doing a complicated deployment without knowing much about it doesn't make it any easier.


Same here. I just wanted to play with it for my toy projects and personal services, so I didn't really push a whole lot, but it just felt like there were too many moving parts to figure out. I didn't need autoscaling or most of the advanced features of k8s, so I just went back to my libvirt-based set of scripts.


I run kubernetes on a home server, but it took me a couple weeks of testing and trial and error to arrive at a setup I was happy with, and I already had experience of K8S in the cloud. At the time I was stuck without a work laptop, so had time to self-educate, but normally I wouldnt have that kind of time to sink in.


I can't think of a single benefit of a function over a comment for a piece of code that's only used once. The downsides of the function:

- Unless the function is extremely clear like max() or min(), you will have to read the function and jump around the code. I feel people underestimate the cognitive overhead required for this. This gets worse the more arguments are required to pass around. Linear code is much easier to read.

- More lines of code, a comment adds 1 line while a function or method adds at least 4. Also, code that has to be separated over multiple functions is practically always longer than linear code. Doing this to the extreme can have quite an effect.

- Naming issues, it can be hard to think of a good name for a function and it almost never describes it perfectly. Misnaming things leads to bad assumptions and leaky abstractions. Comments have the luxury of potentially conveying more information and are also less important to get right.

If you use a lot of vertical scrollbars then by all means go ahead and abstract it, but I'd generally pick the comment.


I think the most important drawback of the function for used once code is that its definition doesn't really map well to linear files.

There isn't really a proper place to put such function.

In this example, you would like to define add_vertical_scrollbar() right where it is used as this is the proper context where it makes sense to read it. But if you define it where it's used it no longer adds any clarity.


> I can’t think of a single benefit of a function over a comment for a piece of code that’s only used once.

A function makes the higher-level flow more clear and uncluttered than without either the function or comment, a comment may make it more clear but also makes it more cluttered.

> Unless the function is extremely clear like max() or min(), you will have to read the function and jump around the code. I feel people underestimate the cognitive overhead required for this. This gets worse the more arguments are required to pass around. Linear code is much easier to read.

Yes, function names should be extremely clear. But less code is easier to read than more code, so unless the contents (rather than the purpose) of the block of code is likely to be important every time you read the containing bit of code, you make the containing bit of code more readable by extracting the block.

> more lines of code, a comment adds 1 line while a function or method adds at least 4.

Depends on the language. In JS, for instance, a function definition can be a single line, so definition + call adds a minimum of 1 line, just like a comment. But a comment adds 1 line to the parent block of code, abstracting out a function at worst simplifies a single line, and usually reduces the lines of code in the parent block. So where the parent but not the content of the abstracted bit is important, it reduces code read, whereas the comment always increases it.

> Naming issues, it can be hard to think of a good name for a function and it almost never describes it perfectly.

Whether you can think of a clear name for the function is, IMO, part of the test for whether it is a logically coherent unit of work to abstract out to a function in the first place.

> Comments have the luxury of potentially conveying more information and are also less important to get right.

Comments are a pure addition of clutter to the code they are attached to; if they aren’t gotten right they are not just visual noise but misleading visual noise. Comments are no less important to get right than naming of functions.


> A function makes the higher-level flow more clear and uncluttered

It is subjective and depends on a given piece of code. In my experience functions (abstraction in general) often obfuscate code, because you cannot really see what they do without jumping to another place and breaking a flow of reading.

There are of course cases where factoring a piece of code into a function would make in more readable, but I cannot say this about any group of commented lines. And a function requires a comment too.


> In my experience functions (abstraction in general) often obfuscate code, because you cannot really see what they do without jumping to another place and breaking a flow of reading.

Already discussed in the post you are responding to: “unless the contents (rather than the purpose) of the block of code is likely to be important every time you read the containing bit of code, you make the containing bit of code more readable by extracting the block.”

> There are of course cases where factoring a piece of code into a function would make in more readable, but I cannot say this about any group of commented lines.

Also already addressed, e.g.: “Whether you can think of a clear name for the function is, IMO, part of the test for whether it is a logically coherent unit of work to abstract out to a function in the first place.”

> And a function requires a comment too.

Not necessarily. A function in the public interface of a module probably needs a doc comment or docstring, but we’re discussinf abstracting out a piece of functionality used once, so presumably this is to a private function in the same module, not part of the public interface of the module.


>I can't think of a single benefit of a function over a comment for a piece of code that's only used once.

The call stack becomes very organized and readable when debugging.


The call stack becomes deeper. I'm not sure that's always a good thing.


Within docker-compose.yml I use

  services:
    foo:
      image: foo/bar:6.9
      user: ${UID:-1000}:${UID:-1000}
On Linux with Bash it runs with your current user and most other platforms it runs with id 1000, which is setup as the default user in the Dockerfile. This is no problem on MacOS or Windows because of the way Docker-Desktop uses VM's.

ZSH or other shells don't necessarily set $UID, so if you're running Linux, not id 1000 and not running Bash you might need a little .env file with `UID=1001` in it to make it work. And then the user is still nameless in the container. This is kind of rare and I only use it for dev containers where most relevant files (and permissions) are bind-mounted from the host, so it hasn't really been a problem in practice.

Remaps would be cleaner but I find it too much work to explain for normal developers just wanting to use a dev container.


From my experience, UID is not always available as to docker-compose.yml because it isn't exported (at least in bash).

See more here: https://stackoverflow.com/a/50900530/15428104

$ declare -p UID declare -ir UID="1000"

The -x option is missing.


This is excellent, thank you.


I love the fact that the Thinkpad X1 has dedicated physical home/end/pgup/pgdown keys. I wouldn't consider buying a laptop without them anymore.


It never costed $56 billion. It's just $56 billion worth of goods held up for a few days. A bit like a bitcoin payment.


Some of those goods are cattle. Imagine being blocked in the middle of the desert on a steel ship for days.


It takes almost a day to transit the canal, so presumably they have some way of dealing with the heat.


How many cattle can fit in a TEU?


Are we dealing with spherical cows here?


Cattle (and sheep, of which there are at least 130.000 stuck at the moment, see https://www.voanews.com/middle-east/stranded-suez-canal-ship...) aren't squeezed in containers but rather shipped on specialized ships (which in turn often are sometimes barely retrofitted other ships, such as car ferries, see https://www.sueddeutsche.de/panorama/spanien-rinder-irrfahrt...).


I just realized the 'Referer' header is actually a misspelling in the http protocol.


Yup, here's an article you may enjoy https://httptoolkit.tech/blog/http-wtf/ and related HN discussion https://news.ycombinator.com/item?id=26343577


And I made up the HTTP status code "397 Tolerating" so that if you spell it "Referrer", browsers can correct you while still giving you the response you wanted :-p (see section 3 example):

https://pastebin.com/TPj9RwuZ


Late correction: sorry, that should be "if your browser spells it 'Referrer', webservers can correct you...".


I am genuinely unsure whether your RFC was intended to be serious or not.


So am I! I did it as an April Fool’s joke (see the date and the author, Ben Dover). But I also think it would be legitimately useful and have long wished for a standard protocol for expressing that you’re “tolerating” a standards violation while still pointing it out.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: