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

Exactly. I would personally consider damage caused by an unreliable suspend mode (whether an issue of software or hardware) to be an example of manufacturer defect.


The problem is that Windows defect breaks laptops not under warranty by Microsoft. Getting refund would be tricky, and voiding Dell warranty in such case seems justified.


You could argue this for pretty much anything? Your mac screen failure is LG's fault, not Apple's. Your Asus GPU's failure is Nvidia's fault, not Asus's. Your internet outage is Cisco's fault, not your ISP's.

Ultimately the company selling to the end user has to stand over the package they're selling.


The problem is that windows is bundled, so they are definitely responsible for putting defective software on their defective laptop. Putting suspended laptop in a backpack cannot void warranty. This is like from another universe or what.


We joke, but there actually was an aircraft carrier by the name HMS Theseus. It was under construction towards the end of the Second World War, and deployed to Korea in 1950.

https://en.wikipedia.org/wiki/HMS_Theseus_(R64)


Placenta is a flat cake, from Ancient Greek πλακοῦντος. Presumably, human placentae are named for their shape.


Fun fact! The German word for placenta is still "Mutterkuchen" (mother['s] cake)!


.ecneirepxe tfel-ot-thgir ,reporp a etamixorppa ot siht ekil yalpsid ot txet deen dluow uoy ,noinipo ym n'I


Except that what this site is demonstrating isn’t so much “right-to-left” as “the pain users of right-to-left languages experience when you implement things badly, especially with regards to BiDi problems”.


Not sure I understand how it demonstrates BiDi problems.

The real BiDi problems come when you got a context of LTR in RTL.

For example:

אני חושב שזה cool לכתוב מילה באנגלית.

This is where things goes wrong. And we didn't even start with text selection...


The site demonstrates the problems in two ways:

① Setting `text-align: right` so that you can feel the weirdness that `text-align: left` will produce for RTL languages.

② And for BiDi: setting `direction: rtl`, and using a mixture of strong LTR characters (e.g. letters) and neutral characters (e.g. punctuation). This combination results in the neutral characters going RTL, which is why you end up with things like “.solve them” and “→ ?What is this” rather than “solve them.” and “What is this? →”.

It’s demonstrating things that are commonly done wrong the other way (when the document says it’s LTR, but contains RTL text).


It's not the homepage but the site has an entire article on the exactly this.

https://rtl.wtf/explained/bidiintro.html


.pot ot mottob morf ti daer ot evah ouy taht si hgouht sdrawkcab gnitirw htiw melborp ehT .ti edulcni dna kcabdeef ruoy etaroprocni lliw srenwo etis eht ebyaM .dnif ot gnipoh saw I pilf niarb eht saw sihT.


nah, if you use `unicode-bidi: bidi-override` and force `direction: rtl` it'll still flow top to bottom. a conlang I speak is cursive RTL so I've made extensive use of this. side-note: it's a major peeve of mine that Unicode's entire Private Use Area is plain Latin in terms of properties. there's no way of setting RTL other than using CSS or prefixing an RTL Override character, which gets old fast in text editors. no font system, including Graphite, lets you override Unicode glyph properties to my knowledge.


Surprisingly readable


I think all West Asian scripts are is right-to-left, then top-to-bottom. I think Japanese/Chinese scripts can be top-to-bottom, then right-to-left, but may vary. I don't think there's are any bottom-to-top?


> I don't think there's are any bottom-to-top?

There are philipino and indonesian scripts which ars written bottom-to-top, though they are read left to right.

Ogham is bottom to to though.

I think there’s also a script which is read and written based on cardinal directions, but i can’t find it. I was expecting it to be indigenous australian (as several IA people use absolute directions as a matter of course).


That's really fascinating. Thanks for sharing


What exactly due you mean by "West Asian"? Georgian and Armenian are left-to-right.


I was painting with too broad a brush. Of course it's not all languages across that region


איבן בטר, וואי נוט רייט איט אין אה פרופר רייט טו לפט לנגואג׳?


Because then the site would not demonstrate the pain caused by poor RTL support, as most of its target audience will not be able to make sense of the script.

The point is that even when you understand the script and the language, you find yourself looking at a website with messed up formatting, punctuation in the wrong place, and broken sentences when BiDi gets involved. Those of us who deal with this all the time are used to it, but most people have no idea how broken things are.


https://www.cde.ca.gov/ci/ma/cf/index.asp if you want to read the actual draft proposals


Well, in FORTRAN, GOD is REAL (and JESUS is INTEGER, but that's not as funny). Even modern fortran has to maintain this feature for legacy reasons, leading one to add 'implicit none' to the beginning of each module etc.


> in FORTRAN, GOD is REAL

.. but not COMPLEX nor LOGICAL


> > in FORTRAN, GOD is REAL

> but not COMPLEX

Theology concurs: https://en.m.wikipedia.org/wiki/Divine_simplicity


Some miscellaneous comments:

Woman in a bar: This particular mathematician appears to be from the 5th century BC.

Prime numbers: This reminds me of the Grothendieck prime, 57.

Hunting: I would modify the statisticians statement to "on average, we got him", but that doesn't sound as funny.

Theorem: I would have thought that the mathematician would just define, without loss of generality, the interior of his prison cell to be 'outside', much like in the subsequent joke about fences.


A good name is also memorable, consistent, easily decipherable, and works around namespace conflicts. Might be a best 2.7 out of 4 situation, I guess. Why 2.7/4 and not 3/4? Because the remainder was lost in translation to the ASCII gods.


Hmm, In my experience, trying to stop a sufficiently motivated 'kid' is an exercise in futility. Here are some possible scenarios, in decreasing order of plausiblity:

1. At the surface level, you have to assume that the password mechanism is secure. I'm sure many of us remember the Windows 95 login, for instance.

2. But even making the assumption that the password is secure, social engineering will typically work against the parent.

3. Even if the parent is cautious, one can bypass Edge Kids Mode by simply not using Edge.

4. Even if no other browser is installed, this can be bypassed by copying a portable version from a friends.

5. Say the parent blacklists certain executables via GPedit. Typically, renaming the executable to a whitelisted one (e.g. calc.exe) will suffice.

6. Suppose the parent chooses to enable S mode, so that only Edge and UWP packages from the Microsoft Store can be enabled. The child creates a Linux live USB (at a friends house) and modifies the Windows filesystem directly (or ignores it entirely).

7. What if USB is disabled in BIOS, and the parent enables a BIOS password, and Windows has full disk encryption enabled? Disconnect the CMOS battery for a bit, I guess?

8. Say the parent gives up, welds the device shut, and cancels the internet service. Can't browse the Inter-webs without internet service, right? Wrong. Go to the friend's/neighbor's/public library and do it anyway.

In summary, Kids Mode is about as effective as transparent schoolbags or the Great Firewall. You are probably better of finding something interesting and productive for the kid to do (not to say learning to abuse poor infosec is a waste of time), so that they have better things to do than explore double-plus-ungood web sites.


Devil's advocate: It's still effective even if it's possible to bypass. I guarantee it's possible for someone with relatively easy to acquire tools and experience could pick a lock. But you still lock your doors at night. Having imperfect protections can, in the right situation, still work. My best guess is the situation in which one has to make a Linux drive without access to any of the distro websites is enough of a hurdle for your average nine year old.


Bonus, your kid is now learning problem solving.


The first item in the list reminded me of an exploit on Windows 7 that allowed anyone to login and use the computer without an account. I don't believe it treated you as an administrator, but some other system user instead.

The trick was:

1. On the login screen, press the shift key until the Sticky Keys window pops up.

2. Click the informational "learn more" link. That will open up a text file in Notepad.

3. In Notepad, select File > Open.

4. Navigate to system32 and rename the sticky keys executable to something else. Then, copy bat.exe and give the copy the name of the original sticky keys program.

5. Press shift multiple times like before, but this time a terminal will appear.

6. Run explorer.exe

I was amazed that this not only worked, but wasn't patched in the years that I used Windows 7. It came in handy a few times, but I do hope they've fixed it by now. I know a lot of people still use Windows 7.


The author recommends -std=c99 (-pedantic) default flags, yet suggests K&R (2nd edition, presumably) as a reference...


Also, why still use the old confusing long, short, long long etc... types when the much better fixed-width types had been standardized in stdint.h since C99 (even the Visual Studio C compiler has those since at least VS2015).


Little reason to not use at least -std=c11 these days


Linux is C99, most microcontrollers use C99 or even C89. It would be nice to get the new features, but it's not always possible.


> most microcontrollers use C99 or even C89

Most microcontrollers are ARM Cortex-M and are programmed with a recent GCC toolchain


MSVC has C11 support only since very, very recently:

https://devblogs.microsoft.com/cppblog/c11-and-c17-standard-...

(it has a solid subset of C99 since around VS2015 though, just _Generic was missing - and ignoring VLAs, which have been "dropped" in later C standards anyway).


Verifiers haven't caught up to C11 yet.


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

Search: