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

> Language types such as char, int, short, and long do not come with a guarantee of how many bytes they occupy in memory.

Char is actually guaranteed by C to occupy exactly 1 byte in memory. It’s just that a byte can have more than eight bits in C. “Byte” is simply the smallest unit of memory addressable by a pointer.

Further down the article acknowledges that “C requires char to have at least 8 bits (CHAR_BIT >= 8), not exactly 8” and mentions the Honeywell 6000 as an example of a C implementation with 9 bits (and 36-bit ints).

Historically in computing, the size of a byte was hardware-dependent and not standardized. The Wikipedia article on “byte” cites Knuth’s 1968 TAOCP where byte denotes a unit which “contains an unspecified amount of information […] capable of holding at least 64 distinct values […] at most 100 distinct values. On a binary computer a byte must therefore be composed of six bits”.


> C requires char to have at least 8 bits (CHAR_BIT >= 8)

The famous TI C55x DSP with 16 bits byte for example: https://news.ycombinator.com/item?id=3112704.

And they are still available new for purchase.


Does it apply when robo-advisors make bad investments?

> This tiny batch script allowed for a poor man’s `touch` on Windows, which I used extensively from Windows NT to Windows 7. I typed `touch filename.txt` in the Total Commander mini-shell to quickly generate new, empty files.

This is funny to me, because I associate touch more with updating the timestamp of an existing file, and that script would miserably (destructively) be failing at that.


yeah i get the utility for the 'making new file' use case, but aliasing this as touch if you're used to touch for both uses scares me!

I’d replace #5 by “don’t use battery-driven lights, use a dynamo hub” (except for e-bikes, of course, which also won’t have strobing lights).

> I wasn’t sure how to find out what an “LI????77” was […]. I would be interested to learn non-LLM ways to figure this out though. There must be a way.

Reading https://en.wikipedia.org/wiki/Button_cell#Type_designation would have indicated a solution: The third character must be an R (for rechargeable), the “77” would be the height in tenths of millimeters (which makes for a good plausibility check), and then you can measure the cell’s diameter to obtain the remaining digits in the middle.


> This leads to a normalization of inexplicability.

It’s also tightly connected to a normalization of lack of accountability.

> This isn't "getting an FTP account, mounting it locally with curlftpfs, and then using SVN or CVS on the mounted filesystem" -- you still have to do the hard part.

This is probably losing the younger portion of the audience by now. ;)


The people accountable are those hosting & writing the algorithms, e.g. Therac-25.

It’s somewhat important for privacy reasons that the feature is opt-in. I don’t know if that’s the reason historically, but I wouldn’t want a text editor to persistently store a copy of everything I type without my consent. It’s almost like a keylogger.

Making privacy-sensitive features opt-in is a form of duty of care as well, to avert harm from the user.


Edit history in JetBrains being on by default saved my bacon a few times over the years.

A duty, like a responsibility, can be something you feel or choose for yourself. The fact that the maintainers of some software don’t feel it is a perfectly good argument for not using that software. There is no necessary connection to compensation or transactional thinking.

The following issue has a good number of screenshots in various comments: https://github.com/Microsoft/vscode/issues/325240?timeline_p...

LCD and OLED panels consist of a fixed, unchangeable matrix of native pixels. (Same for the discontinued Plasma TVs.) CRTs don’t have that.

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

Search: