HN user

shultays

1,740 karma
Posts7
Comments932
View on HN
  “Bookmark Link…”
  “Save Link As…”
  “Email Image…”
  “Set Image as Desktop Background…”
  “Bookmark Page…”
  ... we can’t get rid of these things by simply toggling some option in about:config ...
Why seemingly the most useless options are not in about:config

I think another problem is the tiny resize cursor, on windows (at least on mine) it is a lot bigger and more distinct compared to regular cursor and when your cursor changes to resize arrow it is more apparent.

I don't really see/care where my mouse exactly is. If it is outside or inside the window. Once my cursor turns to resize cursor, I just start dragging.

Probably the users he is talking about are not the end users like you and me. It is one team using the tools/software of the other team and so "users" for that other team are the members of the first team.

Does that hardware traps overflows or something?

  I had read an article about how DOOMs engine works and noticed how a variable for tracking the demo kept being incremented even after the next demo started. This variable was compared with a second one storing its previous value

Doesn't sound like something that would crash, I wonder what was the actual crash
  The comments show the values each thread observed.
Why? Nothing in that code implies any synchronization between threads and force an ordering. thread_2 can fetch value of y before 1 writes to it which would set b to 0.

You would need additional mechanisms (an extra atomic that you compare_exchange) to force order

edit: but I guess the comment means it is the thing author wants to observe

  Now, the big question: is this execution even possible under the C++ memory model?
sure, use an extra atomic to synchronize threads

A week or so ago I needed to convince chatgpt that following code will indeed initialize x values in struct

  struct MyStruct
  {
    int x = 5;
  };
  ...
  MyStruct myStructs[100];
It was insisting very passionately that you need MyStruct myStructs[100] = {}; instead.

I even showed msvc assembly output and pointed to the place where it is looping & assigning all x values and then it started hallucinating about msvc not conforming the standards. Then I did it for gcc and it said the same. It was surreal how strongly it believed it was correct.

  The general cost over a several large codebases has been observed to be minimal
Is this unexpected? A large code base has a lot of other things and it is normal that such changes will be a rounding error. There are lots of other bottlenecks that will just overwhelm such a such change. I don't think "it is not affecting large code bases as much", you can use that argument for pretty much anything that adds an overhead

Not to mention if you change every int a to int a=0 right now, in those code bases, a=0 part will likely to be optimized away since that value is not being (shouldn't be) used at all and likely will be overwritten in all code paths

  Of course we should provide a mechanism to allow large arrays to remain uninitialized, but this should be an explicit choice, rather than the default behaviour.
First you are saying "cost is minimal even negative" and then already arguing against it on the next paragraph.
  const string input = "interesting";
  bool comparison = input.ToUpper() == "INTERESTING";
  Console.WriteLine("These things are equal: " + comparison);
  Console.ReadLine();
Is this a realistic scenario? Changing case of a string and comparing it to something else? Running some kind of operations & logic on a string that is meant for user?

If you are doing such things then it looks more like a code smell.

My cat learned to jump and grab the door handles to open doors. It was escaping the house that way. I had to lock the door while I am at home so he doesn't escape. After some tries and seeing that it is no longer working, he forgot/gave up at doing it.

AIs in general are definitely hallucinating a lot more when it comes to niche topics. It is funny how they are unable to say "I don't know" and just make up things to answer your questions

No offense but I feel like this is an overengineered solution that misses the problem. It may efficiently render millions of notes I will not take in my life but it is extremely ugly with the slow loading/populating the screen as you scroll. And scroll goes crazy if you try to drag and scroll.

I would prefer a note taking app that can render maybe 100 notes but doesn't have that scrolling behaviour.

Why? If all standard functions that take no ownership/keep references are using raw pointers then it behaves same as user code/C++ devs expect: if a function is taking a pointer then it claims no ownership. You take a look at standard_function(T*) and see raw pointer and then can assume it is not taking ownership or keeping references

Pretty cool design, I am not sure if some boards are unsolvable or if I suck though. Some hints:

  * It works similar to minesweeper so hints/patters for minesweeper also applies. 
 https://minesweeper.online/help/patterns
  * Prefer levelling up to heal over the hearts. You can use hearts later for bigger heals
  * Don't level up unless needed to. Try to hit 0 heart before levelling up.
  * Point is exploring as much as possible
  * You can use right mouse button to mark cells with numbers or X (for mine). If you figure out a cell don't open it unless you want to explore that area. If not just mark them and leave them. Later when you need to heal/level up, you can kill those marked cells for extra XP with no cost since the health you have will be wasted anyway.
  * While picking up hearts again prefer the ones that in areas you want to explore into
  * To make things easier, at the beginning you can just open random cells that are far away from the orbs. If you die, you won't lose much :)

Sometimes there are hidden menus or settings that might allow you to toggle those features. I used to work on TVs and we had a secret menu that toggles various features. Some of those features would be disabled for specific countries (mainly for patents)