skysight-inc/HackerNews huggingface dataset:
The Japanese even have a word for it: Karoshi.

> which can be translated literally as "overwork death", […] The most common medical causes of karoshi deaths are heart attacks or strokes due to stress and a starvation diet.

https://en.m.wikipedia.org/wiki/Karoshi
Profiling in production to detect server bottlenecks
Yes! Tabs for indentation, and spaces for alignment.

There is no other sane way
Joke:
Devs are paid by how many buttons they press, devs who use spaces press the spacebar a lot!
But computer chips, telecommunications, the electric grid, etc., don't require for governments to exist for them to exist and work. I would even argue that they would work better and more efficiently under a free market economy, so governments, in general, are holding back progress.
>The theory is that the code is the law. There is no theft.

What rubbish. You cannot claim "the computer let me do it" and expect to be let off for that. That's an extreme absurdity and is absolutely not how the law works.

Contrary to what a lot of people seem to think: Crypto is not "outside" the law in any way. It is a token of value (like FIAT currency) and there are plenty of laws that cover use cases from capital gains taxes to money laundering to, you guessed it, theft.
Surely this nonsense is a textbook example of statistical overfitting ?
Edit: I realize you're talking about the picture in the GP comment (it's a Mercedes dash), below I'm talking about the UI in the article (the VW Atlas);

It's pretty bad UI, the 2 bars are thinner than the scale lines, and the fuel pump icon with the arrow seems to be just slapped on there not aligned to anything.
Where can I find Recore Mattress Savings?
Twitter sadly didn’t give them an alternative to that. They charge for the usage of their new API.
If the sign throws fireworks at passers-by, yes. Because the point of a billboard ban is not their contents, but the distraction they cause. It would be enough to tune them down and nobody would mind but yeah, losing perceived ad revenue is somehow never the first thought.
You've asked for it ;)

This prints the years - you can the group and plot them as you wish (it should be fairly easy, but I wrestled enough with git). It's a non-rigorous script (eg. it assumes nobody's email/name includes an `YYYY-MM-DD`-like string, and that filenames don't include the colon character):

grep -P '\bTODO\b' -n -R -- * | awk -F: '{ system("git blame "$1" -L "$2","$2) }' | perl -lne 'print /(\d{4})-\d\d-\d\d/'

The working is actually fairly simple:

- grep prints filenames and lines

- awk captures the filename and line, and executes a git blame on it

- perl matches the year and prints it

In the Perl matching expression, month and day are not strictly necessary, but disambiguate potential 4-digit numbers in the email/name.

I'm very underwhelmed by the lack of customization of the `git blame` command - `--porcelain` is also uncustomizable, which makes things even uglier.

Note that `git blame` also mishandles some edges (printing "fatal: file [...] has only 1 line").
Tabs ... of acid? :-P
> everyone can use indentation they prefer without causing conflicts.

To be honest, I never thought of this, I use spaces and my editor converts to 2-space indentation. But I can imagine that some people prefer 4 "space" indentation. With spaces this is impossible, whereas I now realise, an editor can render them any way it wants, so at 2 'spaces'.

So I agree somewhat, that tabs sound good on paper. But then again, I don't want to start earning less all of a sudden...
There is a compile option named APE_NO_MODIFY_SELF which writes and launches a copy of itself into the tmpdir instead of self-modifying (with a huge caveat).
I think there's a general trend where C programmers generally are near the bottom in terms of salary, and I think a disproportionate amount of C programmers probably use tabs (due to the popularity of the Linux kernel style).

Or in other words: I know who's pulling down the average because it's me.
Quick Moodboard Template for Figma
I recently wrote a single-file library in C for Wave Function Collapse: https://github.com/krychu/wfc

It’s a procgen algorithm that takes small image as input and generates a larger one with similar local features. I hope to add tiled method to the library some time.
Maybe they don't and that's why they make more money
The fact that people like you are here makes HN still worthwhile while all other social media networks seem to fall flat.

I’d love to think John Carmack is here among us; cleverly disguised under some cute u/n we’d never get unless it was explained to us.
Wait, there are still people who use tabs?
Hopefully they code in Whitespace - https://en.m.wikipedia.org/wiki/Whitespace_(programming_lang...
Comments like this make me think we software engineers live in a different world.

>unlike USD, the court can’t do something like garnish your wages to pay back a 10M settlement by taking some crypto out of your incoming transactions

You think so, do you? "The law is the because that's what the law says it is". It might not be possible now (and I'm not sure I believe that, you can garnish foreign wages) but it will be if the need arises.

"But the code" yeah, no, that's a silly argument that only applies to cyberspace and not the physical world you occupy
It might have to do with the fact that people who use tabs have stronger principles (indentation should be one char!) and people with strong principles will generally have more conflicts with their colleagues and bosses. Usually conflict isn't good for salary negotiations or keeping a job.

That's my 100% unscientific, non-evidence based guess.
There is a simpler explanation: I once worked an (industrial+officies) site of high-tech company, and they had their own private Cell tower, with phones that only worked on the site; maybe they forgot to update the time. IIRC, small base stations have been deployed at hacker events(CCC) with similar internal-only features.
This might be the most annoying cookie notice I’ve ever seen. I can’t reject cookies on the page, have to click through to another page, where I cannot even find the option to do so.

Shame on you Atlas Obscura, this should not even be legal. Does anybody know if this is in line with GDPR?
In theory I agree, but having recently worked in a code base that used tabs, it was painfully obviously that some devs displayed them as 4 spaces and some as 2 because they would visually align things for their editor’s configuration. It was very ugly.
Monoids are cool. It took me a long time to actually discover monoids during coding. It finally clicked when I realized the QuadBitboard I wrote for a chess move generator is actually a monoid. Empty board is the neutral element, and xor of all 4 bitboards is the operation.

https://github.com/mlang/chessIO/blob/master/src/Game/Chess/...
I don't know which editor you use but in my experience using tabs or spaces is just changing a single setting and then forgetting about it. The most likely explanation is that a lot of languages recommend spaces for indentation, so probably big companies just follow those guidelines and they also pay bigger salaries. Trying to find some causation of "people who use spaces are better" is not going to go anywhere.
Ongoing Adaptive Evolution of a Brain Size Determinant in Homo Sapiens (2005)
I wonder how kubernetes do.
Children learn language by learning phrases and the correspondence of those phrases to things around them or things that happen around them. Rules are learnt later. Learning language is harder when you don't have parents to play the language game with you. Maybe something like aidungeon could be a language learning tool??
> throw away type safety

In theory yes, in practice if your Sort array function takes a list of interface{} instead of a well defined type is not going to cause any type bugs. Might be slow, might be ugly, but lack of types on functional/generic stdlib functions doesn't make your code buggier if the original
implementation is sound.
Looks great. But I don't known any scenes we need to use this function.
I'd also rather have optionals/non-nullable types in the core syntax than generics. Although, I must say, I haven't seen a nil pointer crash for a long time.
Compare the NSA asking Google "please sign this update to signal". To the FBI asking Apple "please sign this this new OS that allows brute-forcing".

The second case was apparently feasible enough that the FBI thought it was worth trying in open court. I don't think the first case is that dissimilar. And I think there is a decent chance that the NSA/CIA has stronger pressure methods than what the FBI tried in the San-bernedino case.

And if not, it seems quite a bit more feasible for new legislation to be written that could be used to force google to cooperate with malicious update signing. It certainly fits with the theme of recent "we should be allowed to read your messages" legislation attempts. Heck, I think it would be one of the more reasonable ways to implement such legislation.
Sorry but I need to disagree.
The stability of rust is exceptional.

Old code always compiles.

The stdlib of Rust, I find it superior, very much so, to the one of go. Even though this is mostly due to the different type system.

The tooling around rust, it is just great, what tool you feel missing in Rust?

Few years ago, rust was lacking libraries, but they are really catching up quickly.

They are different languages that shine in different scenarios, but maturity, stability and stdlib is not where Rust is lacking behind.
Fyi: Akasa sells replacement cases for Intel NUCs. I've used this to ensure my NUC is entirely silent. After this you do need some air circulation around the case. Meaning, a closed cupboard might built be enough. I've put mine under a desk.
This is a huge effect. Implausibly huge? I'm reminded of Gelman et al's piranhas: http://www.stat.columbia.edu/~gelman/research/unpublished/pi.... The "folk theorem" version is that you can't have very many independent variables that all have large effects on salary. Saying that spaces vs tabs has a 10% effect is tantamount to saying that its one of the ten (or fewer) most important things about a developer.

So there must be a confounder. What could it be?

- Do the top schools all instruct students to always use spaces? This should have been partly taken care of when the author controlled for level of education though, right?

- Choice of editor? This seems like a weird one, but editor defaults are definitely linked to tabs vs spaces, and the survey didn't even collect data on this.

- Starting language?

- Total number of languages used? Spaces are tolerable in more languages than tabs are. Of course, I'd expect "both" to beat "spaces" if this was the case.

None of these strikes me as particularly plausible, except maybe the last one. This result is kind of bothersome, because it's big, obviously not a statistical fluke, and hard to understand.

EDIT: a past thread (https://news.ycombinator.com/item?id=20719010) suggested that some higher paying companies mandate spaces. This also seems plausible.
The Muse Group website doesn't even have an impressum: https://mu.se/

Some comments on the GitHub thread claim that it's actually a Cypriot shell company. Having read a bit about the situation with MuseScore, it looks rather shady...
It would be an interesting experiment for sure to see if one could "terraform" Mars with some kind of life from Earth. But I don't see how it would be any more actionable than any discovery of past life. Both experiments will give greater insight into theories like abiogenesis and panspermia, but that's about it. Better to exhaust the first before trying the second, since you can't undo the second one. Also a bit more scientific rigour than just seeing what happens to piggyback on the spacecraft would probably be warranted.
Sounds very interesting. I am particularly fond of anyone trying to reach less technologically inclined users (been working in that space for a couple of years now. You quickly learn that software devs do not reason about websites / apps and their UX in any way like a software dev would).

Do you have a pricing page anywhere? I am finding it hard to figure out where you make this project sustainable financially :)
When there's only one way to do it, everyone is or soon will be accustomed to it.

I'm not a fan, but it fits with google's goal when creating the language.
Why couldn't it be that the people who use spaces are the ones with stronger principles?
Correlation does not imply causation but very fun title!
Afaik bitcode remains architecture-dependent, so bitcode deployments is mostly do they can re-optimise, and a convenient component of app slicing (if they end up generating the final bundle anyway, having more visibility into what’s what is useful).
Which should be the correct way ? Space or Tabs ?
Maybe they pad their paycheck and their files.
or may be they just like to follow rules, including rules they impose on themselves, and apparently it pays off to not limit oneself with artificial constraints
No, I am only arguing they are inseparable with respect to questions of antitrust. Obviously there's no technical impediment to iOS becoming a complete free-for-all where you can download and run any binary with root privileges using an innocuous shell script command piped from wget.

The question of what's been done elsewhere isn't relevant, because there are many elsewheres, each with their own origin stories. Most of them look more like iOS than macOS—the personal computer marketplace is something of an outlier when it comes to software distribution.
Physiologically our bodies are not optimized to sit all day and stare at screens.
That is why one should use tabs for indentation and spaces for alignment. Then this problem does not occur.
It's a language designed with a couple of things in mind: easy to use cheap concurrency (or parallelism, or whatever you want to call it).

Then there's Rust designed around low-level code and memory safety, and a much more complex syntax.

I think it just goes to show that any language (modern or otherwise) is a consequence of its design decisions (or lack of).
> Sure, just like how if you let's say own Google Play Store and own those updating keys

The ENTIRE POINT, of this scare is that currently, google does not have access to those keys, developers do. And the signatures on these apps are checked by the OS, not the play store.

Notably, google can't change the OS on my phone at their whim. They'd need to release a new version and get Samsung (and maybe my carrier) to ship that OS to me.
I think to me it boils down to need and trust. Debian needs to do things this way and has earned trust over decades not to abuse its power. Google doesn't have the need and is burning trust in enough other areas where it doesn't instill a lot of confidence that they will not abuse the increased control.
In theory, assuming the files are always opened by the same tool and no one ever types a single space instead of a tab.

After fixing a couple of mixed tabs/space files back in the glory MS-DOS days, I became a space zealot.

Apparently it was a good decision.
There's a point I want to clarify. When we say tabs and spaces do we mean using Tab vs Space or not?

I use Tab (the key) for indentation, but I have my editors configured to enter spaces and not tabs.
Unfortunately, most editors support that “workflow“ very poorly.
I am not OP but I have noticed in several European countries that many companies see software engineering (and IT in general) as a "necessary evil". Even in SMEs selling automation solutions, the perception is that the "real" work is done by the mechanical/electrical engineers and the marketing department, while the software engineers are just...support people, aren't they? And everybody has learned a little bit of python programming at the university, no? /s

You need official certificates to be allowed to work with high voltage. But the program that controls that machine there, well, it can be written by some Germanistics student who can't find a job in his original field (no offense intended. I know several brilliant programmers who never studied. I just want to illustrate the difference).

If you understand this attitude, you will also understand why the general state of cybersecurity in such companies is such a problem.
How did you learn this lesson?
Principles are founded in reason.

There are good reasons for using tabs. I am still to find a good reason for using spaces.
where do all the people who use spaces work?

is one (or some) high paying companies coding practices skewing the results?
Changes...

.. Add Fabrice Bellard's JavaScript engine to third party

.. Add SQLite to third party
Overpass API is not suitable for downloading entire countries.

Use https://wiki.openstreetmap.org/wiki/Planet.osm#Country_and_a... for that (right now https://download.geofabrik.de/ is typically the best).

See https://wiki.openstreetmap.org/wiki/Downloading_data in general.
Tab character vs spaces characters is the debate, not the manner in which they are inputted
The former is past perfect[1], and the latter is past perfect progressive.[2]

There are subtleties involved, but the most basic use case is that the former refers to an action that took place before some point in the past (to which the sentence refers), while the latter refers to an action that was still happening at that past point.

[1] https://en.wikipedia.org/wiki/Uses_of_English_verb_forms#Pas...

[2] https://en.wikipedia.org/wiki/Uses_of_English_verb_forms#Pas...
Hard to overfit a median.
It is generally understood to be the tab character, not the tab key.
do you know any devs who use spaces who press space 2-4 times instead of their tab key that indents it 2-4 spaces?
If you believe very strongly that indentation should be >1 char then that is entirely possible.
I believe apple only gives discount to developers doing less than 1m in revenue not more than 1m.
I hope you configured soft tabs...
I have no idea whether there are any APIs the Play Store has access to which expose that feature, but through ADB (or directly calling the package manager from the shell of a rooted device) you have been able to instruct Android to keep the app data even after uninstalling for a long time already.

(I haven't actually tried whether you can really successfully switch signatures on an APK that way without losing all user data, tough)

Additionally, starting from Android 10 it seems that there is a new official feature allowing data to be kept after uninstallation if an app opts-in (https://stackoverflow.com/questions/58750567/how-to-enable-o...).
If it were all tabs or all spaces, that could theoretically work.

But in practice, any combination of tabs and spaces will look wrong for someone.
The study doesn’t FWIW.

Anecdotally I’m in my late-thirties, fit, don’t work crazy hours or live unhealthily and I had a heart attack a week ago today.

Being sedentary obviously doesn’t help matters and I’d suspect in terms of risk factors working long hours without moving much is worse than working long hours whilst active but we can’t defend that with anecdotes.
Which I recall being touted as one of the major advantages of systemd - specifically that binary log files would make for much easier log aggregation as it would be more efficient to send over the wire. Fast forward to today and the best way of shipping logs is to force journald to output to, uh, text, then wring it through, yes thats right, syslog, to then be sent to a central server...
Just like with C and static analysers, there is the "one should" and what the large majority actually ends up doing, as usually no one enforces anything on large code bases in most development shops.
Method of Swinging on a Swing
> They control the UI that shows you the certificates too.

Really? They wrote the code for a part of it, sure. But that code was compiled by my OEM, and modified to put the OEM's extra little bit of sauce on there. Besides, the certificates aren't shown to me. They are used by the OS itself to verify updates to the app.

Currently, signing gives control between a trusted developer of an app and any updates reaching my phone. This is enforced at the OS level. That means that the app store cannot just ship my phone false updates. At least, unless they can exploit the currently installed OS.
I have never had a problem with "key money". I just see it as asking for 2/26ths of your rent up front (the average key money being 2 months rent and paid again every 2 years). I know it's labeled as "礼金" but functionally there is no different from them asking for 2/26ths of my rent up front and then asking for 1/26th each month for the next 24 months. That the system has evolved to have this strange system is curious but looking at it as just an upfront portion of the rent removes most negative feelings about it, at least for me.

The thing that still bugs me a little though is the fact that move in costs to the average apartment is 6 months rent. first month + 2 months deposit + 2 months key money + 1 month to realtor. So, a $2.5k a month apartment costs $15k to get started. You can often get 100% of your deposit back when you leave but still, I know lots of people, especially younger people, that saving up 6 months rent to move is hard which suggests it's a barrier to mobility.

Note: I'm comparing to Los Angeles where for large apartment complexes it was often just first months rent + $500 deposit to move in.
My qualified guess is that PHP developers overall tend to use tabs more, and PHP developers are generally paid less on average.
> A human would have seen what all the other cars were doing, and emulated that eventually, even if the construction was poorly marked.

Google are probably planning for 100% of the cars on the road being AI-controlled, at which point it no longer makes sense to copy other car’s behaviour, because they are all AIs.

Seeing how monopolistic Google is in other areas, it would not surprise me if they are chasing a self-driving monopoly, too.
I dont think average stats really confirm that conclusion. People working in white collar professions have higher life expectancy then blue collar professions.
Aren’t you assuming way too much on the architecture of systemd with only a surface level knowledge?
The indentation I use cannot be expressed through tabs, unless they're of width 1, which defeats the purpose.
I am not sure if every old version stays available. However I had to binary search through versions of their VR tools once because only a few versions ran on my dev. system. The normal steam UI doesn't really expose the versions or provide an option to prevent updates, so the beta workaround might be necessary to tag these versions for end users.
I think speed is misinterpretted. I meant as a minimum benchmark, as in it won't be slower than your unorthodox methods once you are good at it. Not as a max. Typing words as you think them IMO beats holding your breathe and playing 3 finger whackamole to get a paragraph out while looking down at the keyboard. I have also been half way between 2 methods and glad I was able to transition over fully. As someone mentioned it also works on split keyboards.
This is because they are

a) More smart

b) More correct.

It is not that complex.

Also they are more likely to be using emacs, another big win.
If you read the article closely, you'll see that they made some effort to control for programming language, and in particular they note that this effect occurs within each subpopulation. So, among PHP developers only, it's still the case that spacers make substantially more than tabbers.
Name a few please. I can only think of garbled alignment when reading a diff of a file which used tabs to indent. And that is not really speaking for tabs.
This will eventually replace compilers
That… sounds like exactly the opposite of what GP wants? If you can’t throw checked exceptions then you can only throw unchecked exceptions, whose catching and checking is even less enforced by the compiler.