Recent submissions

Comment · 10 months ago
I think the biggest mistake people make when thinking about mathematics is that it is fundamentally about numbers.

It’s not.

Mathematics is fundamentally about relations. Even numbers are just a type of relation (see Peano numbers).

It gives us a formal and well-studied way to find, describe, and reason about relation.

Comment · 10 months ago
This is one of the areas where memorization/deep familiarity with material is important.

Sometimes, when I have a difficult problem, I will spend time reading up as much on the principles of the problem and then go to bed.

Sometimes, I wake up with the answer.

Comment · 11 months ago
Actually we have the descendants of both with us now and they are roughly the same size in terms of spectatorship

Circus Maximus - Nascar - 250,000 spectators

Coliseum - Football - 50,000 - 80,000 spectators

Comment · 1 year ago
Brings back memories.

But with a focus more on C++ features.

I started with Visual C++ 1.0. There were no templates.

Visual C++ 2.0 had templates.

There was by Visual C++ 3.0. They went to 4.0 to sync the MFC (Microsoft Foundation Classes) versions.

IIRC, you could use a bit of STL with 4.0

Visual C++ 5.0 was mainly optimizer differences.

Visual C++ 6.0 was actually pretty good. However it lacked partial template specialization. I was a Boost author at the time and lots of Boost code had specific workarounds for Visual C++ 6.

Visual C++ 2002 also had no partial template specialization.

Visual C++ 2003 was the first version with partial template specialization and that could compile all of Boost.

Visual C++ 2005 and 2008 did not have much changes.

Visual C++ 2010 tried to get back to 6 in the IDE (there was a deliberate marketing as such). It also had some C++11 features. But no variadic templates.

Visual C++ 2012 had no variadic templates.

Visual C++ 2013 was the first with variadic templates.

Nowadays, Visual C++’is doing much better tracking the C++ standard and often has compiler and library features before clang and GCC.

Comment · 2 years ago
https://www.youtube.com/watch?v=ncHmEUmJZf4

Is a fun presentation by Matthew Kulukundis (designer of Google's Hash Table) with Hyrum Wright offering objections from the crowd (Hyrum's law) about the design and rollout of it at Google

Comment · 2 years ago
I think that is what this article is addressing.

You can never have a thorough protocol that always works.

Doctors need to be trained in the limits of protocol.

This is why the humanities are important. Doctors should not just be unthinking executors of protocols. Trained human intuition, expertise, experience still matters. Knowledge of the human factors still matters.

Comment · 2 years ago
> Several years ago, I was involved in a case that illuminates the difficult position many doctors today find themselves in. The patient was pregnant, close to delivery, and experiencing dangerous declines in her baby’s heart rate. She had been on a blood thinner, which kept me, the anesthesiologist, from placing an epidural in her back. She also had strange airway anatomy, which would make it a struggle to put her to sleep quickly if an emergency cesarean section became necessary. I advised the obstetrician to perform an elective cesarean section now, in advance, while we had good working conditions, and not to wait for an emergency, where time is of the essence, and where the delay needed to induce general anesthesia might seriously injure the baby.

I am a doctor and that scenario scares me. This has a very high likelihood of stuff hitting the fan and you need to think about your plan when it does.

You want stuff to hit the fan during daytime when everyone is around. In this case, during the day surgery is around, ENT, around, other anesthesiologists all of these can rush in if needed to help you secure an airway. You also have the neonatologists around.

If it happens in the middle of the night, the staffing will be much reduced and you won’t have as many resources available.

One of the most important things to learn as a doctor is when algorithms and guidelines actually apply to the current situations.

“Life is short, the art long, opportunity fleeting, experiment treacherous, judgment difficult”

- Hippocrates

Comment · 2 years ago
Apart from networking, the hourglass design is common throughout

Electricity is an hourglass. Coal plants, solar panels, gas turbines, wind turbines, nuclear power plants all produce electricity. This is then consumed by electric cars, computers, washing machines, etc.

LLVM IR is an hourglass. Many compilers and languages produce LLVM IR. This is then converted to many different instructions sets.

I think if you want many-to-many non-coupled relationships, you will end up with some sort of hourglass design eventually.

Comment · 2 years ago
I personally find software development to be enchanting and am often thankful to have a job like this.

I get to make in the comfort of my home creations where I am only limited by my knowledge, imagination, and attention. I can experiment easily and explore completely different designs with an ease that any other discipline would be envious of. And then I can allow millions or billions to have access my creation with ease.

That seems pretty enchanting and almost god-like and magical to me.

Comment · 2 years ago
What is really interesting is looking at the meta analysis cited in the Vox article:

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3932762/

This reaches the conclusion that beta blockers are harmful. However, if you look at the meat analysis, specifically figure 2, you find that the conclusion is mainly driven by a single trial - the 2008 POISE trial.

If you go to the POISE trial: https://www.thelancet.com/journals/lancet/article/PIIS0140-6...

You find that they discovered fraud in at least some of the hospitals:

" Concern was raised during central data consistency checks about 752 participants at six hospitals in Iran coordinated by one centre and 195 participants associated with one research assistant in three of 11 hospitals in Colombia. On-site auditing of these hospitals and cases indicated that fraudulent activity had occurred. Before the trial was concluded, the operations committee—blinded to the trial results at these hospitals and overall—decided to exclude these data (webappendix 1). "

We have an important question - should pre-op patients be given beta blockers - and the largest, most definitive trials to answer that question have at least some taint of fraud.

Comment · 2 years ago
The code presented has problems, but they are not the problems the author thinks it is.

The code is listed as c++. However, it is using a style that will result in problems.

First thing that jumped out at me is using const char* for strings. Using this muddies ownership and doesn’t store the length of the buffer which can result in all sorts of fun. Add to that that many times paths are formed by string concatenation, and it is looking like a code smell.

Second, there is no RAII and just manual management of resources.

These problems are far more likely to cause issues that the use of type deduction which by now has pretty good tooling support and is used successfully in many languages. Of course, not using RAII, using raw pointers make it tricky, but you shouldn’t be using those like that anyway.

Comment · 2 years ago
> Except they don’t. American Airlines, Delta, and United are running out of flight numbers, and nobody knows what to do about it.

All of the above mentioned airlines are the size they are because of mergers.

Why don’t they use the IATA codes of the airlines they absorbed. For example Delta merged with Northwestern. In addition to DL, they could also use NW. American merged with USAirways. They could use US in addition to AA. United merged with Continental. They could use CO in addition to UA.

Comment · 2 years ago
Especially when teaching children, limiting abstractions is helpful.

A 5 year old can tell you what:

    10 PRINT “HELLO”
    20 GOTO 10

Does. You can basically look at each line In isolation and figure out what is going on. There is no nesting or scopes.

In addition other than the quotes there are minimal additional symbols. Even parentheses in a function call can be confusing.

Comment · 2 years ago
> “By pinpointing AP-1 as a master controller linked to aging across cell types, we can now study the effects of drugs that reduce its activity to extend quality of life,” he said [2]. Targeting AP-1 and its associated pathways could lead to interventions that slow down or even prevent the onset of these diseases, marking a significant advancement in geriatric medicine.

Unfortunately, AP-1 is also involved in cancer.

From https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10361657/

> Activator protein-1 (AP-1) is a transcription factor that consists of a diverse group of members including Jun, Fos, Maf, and ATF. AP-1 involves a number of processes such as proliferation, migration, and invasion in cells. Dysfunctional AP-1 activity is associated with cancer initiation, development, invasion, migration and drug resistance.

Mentioning AP-1 without mentioning its role in cancer is misleading. Many of the mechanisms that are involved with aging, likely have a role with controlling cancer by keeping cells, especially cells with damage, from proliferating or invading nearby or distant tissue.

Comment · 2 years ago
Reposting my previous comment:

What technology has brought is choice and options:

A woman can choose to decouple having sex with getting pregnant.

A person can choose to live hundreds of miles away from their family yet still visit them every weekend.

A person can choose to move to a new country, halfway around the world, and still have their parents be able to see and converse with the grandchildren every night.

I can choose to talk to a person who speaks another language and have a computer translate for us.

On a more serious note:

I can choose to have my tooth decay treated without experiencing horrific pain.

A compound fracture is not an automatic sentence of death or lifelong severe disability.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton