BazookaMusic | 2 years ago | on: A customer stuck due to a hurricane who needed SSH
BazookaMusic's comments
BazookaMusic | 2 years ago | on: What the interns have wrought, 2023 edition
I can say though that when I was working on stuff I enjoyed less (backend ERP stuff), I felt much worse and would compare myself to others a lot more. So I think these feelings you are expressing can sometimes be a manifestation of not being very satisfied with your own life.
BazookaMusic | 2 years ago | on: Computer scientists discover limits of gradient descent (2021)
BazookaMusic | 2 years ago | on: They took blockbuster drugs for weight loss. Now their stomachs are paralyzed
Car crashes: https://www.nhtsa.gov/press-releases/early-estimate-2021-tra...
UK for comparison: https://commonslibrary.parliament.uk/research-briefings/cbp-...
To be fair though, the root cause is probably a mental health crisis, especially seeing that suicides outnumber the homicides. But it goes without question that projectile weapons make it tremendously easier for mentally ill or desperate people to kill themselves or other people.
BazookaMusic | 2 years ago | on: What Do the Best Investors Do That the Rest Don’t?
BazookaMusic | 2 years ago | on: Ask HN: Could you share your personal blog here?
Maybe you could make a newsletter so I can subscribe and get notifications for when you write? I'd probably read them once in a while.
BazookaMusic | 2 years ago | on: A single line of code made a 24-core server slower than a laptop (2021)
During execution you had two kinds of memory locations, some in CPU caches and some in RAM. By running all the threads on one socket, everything accessed from the cache was just a fast cache access. Everything accessed from the memory was a slower memory load. Frequently loaded/stored locations will tend to go to the cache.
In the NUMA setup, you would have a larger cache (more than one socket) which would mean that more locations were likely to be in the cache. However, if a core on a socket tries to access a location which is on another socket's cache, it will use the interconnect between them to access it.
If you have an unfortunate memory layout, this can make it so that you end up having a large percentage of the accesses using the interconnect (slower than cache access) and values get swapped between the caches constantly, which forces subsequent accesses to also use the interconnect.
Another way to avoid this except using just one socket is for the designer of a program to consider NUMA nodes as separate processing units and design around that. Both should be processing separate data and they should only share small amounts of data for synchronization/communication. Then the caches will be much less affected.
BazookaMusic | 2 years ago | on: Ask HN: Learning Modern Compilers?
1) Reading the source code of roslyn which can be quite readable 2) Building VSCode extensions to add diagnostics and implement code actions. You can use any open source language server as the reference
BazookaMusic | 2 years ago | on: Ask HN: How did you get out of an echo chamber?
This turned on a light bulb for me, so I really appreciate you sharing your point of view. Specifically, I feel that it helps a lot with my issue of having analysis paralysis to frame things in terms of fulfillment rather than happiness.
I will try to come up with some innoculations of my own going forward.
BazookaMusic | 2 years ago | on: Stop eliminating good candidates by asking them the wrong questions
Anand should ask all the annoying questions. This way he's saving both himself and the VP all the wasted time of hiring him and then having a broken relationship because things weren't clear later. This way the VP can also see what concerns the potential employee and if they have a potential mismatch in expectations.
Finally, even if we disregard all that I said above, if it's Anand's working style to ask a lot of questions and he hides this style during the interview, then he will invariably clash with management later due to it if he's hired. Then he may have more to lose then just a potential future job.
BazookaMusic | 2 years ago | on: IBM sued for age discrimination by former global software director
Perhaps it has been easier historically to converge to the single ruler model due to the available knowledge and resources. Is there any research concluding that one ruler systems offer higher gains in modern societies?
BazookaMusic | 2 years ago | on: Ask HN: How do you generate ideas?
BazookaMusic | 2 years ago | on: An introduction to lockless algorithms (2021)
The point of a lock free algorithm is to avoid having a thread wait on a resource and not do any work. It may do useless work that needs to be reverted, but it's not sleeping or spinning until something happens. It's not guaranteed that you can do that for every algorithm in a way that makes sense performance wise.
Here's a nice resource I used on my thesis for an adequate but not perfect spinlock with atomic instructions: https://rigtorp.se/spinlock/
BazookaMusic | 2 years ago | on: Generative Agents: Interactive Simulacra of Human Behavior
As an example, let's take the scenario of building a simulator. The simulation needs to have some internal state. This state will need to be stored either using some properties of matter or some kind of signal. The simulation will also need an energy source.
As soon as the stability of matter or the power supply is perturbed, due to reasons like cosmic radiation or the fact that the power source cannot sustain its output, randomness from the creator's "world" will start seeping into the simulation. The interference may affect the internal state and then you may have unpredicted rules in your simulation.
The counterpoint can be that you use error correction algorithms or you insulate the simulation in such a way that interference does not affect it for a reasonable time-frame or in a manner that is very hard to observe for simulated "agents".
But with this in mind, we can imagine some very crafty agents who somehow stumbled upon these weird phenomena. Suddenly we see our agents building complex contraptions to study the emergent phenomena. Who's to say that the interference and thus these phenomena do not contain information about their creator's world? In the end, they could understand more rules than the simulation was programmed with, if that is true.
Maybe in that case you shut down the simulation. Or maybe you observe the simulation to learn more about your own world.
BazookaMusic | 3 years ago | on: Need for cognition
BazookaMusic | 3 years ago | on: Wind-Powered Cargo Ships
BazookaMusic | 3 years ago | on: Recursive (Re-Entrant) Locks (2013)
For example let's say you have a class Resource that needs to be locked and a method Foo(Resource) that needs to operate on the resource under a lock.
You could change Foo(Resource) to Foo(LockedResource). LockedResource could be a class that is defined using a lock object and a resource and takes the lock or validates that lock is taken in the constructor.
Then by making the object disposable the release can be handled as well.
This way the type system handles the validation.
This is kinda like a budget version of having the type system support locking and concurrency like Rust does.
BazookaMusic | 3 years ago | on: A step forward in understanding Fragile X syndrome, a cause of autism
Maybe adjusting the production of the protein they identified would be a reasonable thing to study before resorting to Clockwork Orange therapy.
BazookaMusic | 3 years ago | on: GitHub staff are required to use Teams by Sep 1, 2023
As an example, if meetings are made in teams and people comment during the meetings, their input will be in teams. Further communication around the meetings is likely to stay in teams. They're making it inconvenient to use slack or other means.
BazookaMusic | 3 years ago | on: GitHub staff are required to use Teams by Sep 1, 2023
Of course, I'm not saying that teams is more secure than competing products or that this will automatically improve security. The point is that it's a single option that's easier to manage.
Outside of security, this also applies to cooperation between MS and Github teams. Teams helps with keeping common calendars, meeting invites, recordings and transcripts. Having more tools means that an adapter needs to exist between them and might be disincentivising communication, since engineers would prefer to work on their tasks rather than work around fixing soft problems.
The problem actually comes from the fact that big tech is becoming increasingly cheap on creating good support organizations. Experienced support engineers are fired and replaced with outsourced low-cost inexperienced personnel. In most cases, issues can be resolved or worked around with the help of a support engineer with access to some extra knobs. When those engineers are removed and are replaced with people who act like a pipe for cat to send the customer's stdout to product engineers, you get what you describe.