I'm building my ideal backend for small projects and hobby stuff. It's inspired by PocketBase, but built around Lua scripting instead of built-in endpoints or usage as a Go library.
Like PocketBase, it's made in Go, has an admin panel, and compiles down to one executable. Here, you write your endpoints as Lua scripts with a simple API for interfacing with requests and the built-in SQLite database. It's minimal and sticks close to being a bare wrapper around the underlying tech (HTTP, SQL, simple file routing), but comes with some niceties too, like automatic backups, a staging server, and a code editor inside the admin panel for quick changes.
It comes from wanting a server that pairs well with htmx (and the backend-first approach in general) that's comfy to use like a CMS. It's not exactly a groundbreaking project, and it still has a ways to go, but I think it's shaping up pretty nicely :)
Nice article, although I'm not so sure about this part:
> There’s a reason why there wasn’t an Apollo 18, or 19 and 20. Even though funding had been secured, an executive decision was made to kill the program early, because LoC was inevitable.
Was funding really secure? I believe that was the main sticking point; a quick search [0] seems to confirm this, and the John Young quote below backs it up: "Even if they’d had the money..." Not to say the risk wasn't a factor too of course, but it doesn't look like funding was otherwise guaranteed.
Anyway, I think what sets the risk of the Shuttle apart from Apollo is summed up nicely in one of the quotes (in reference to the Apollo program): "The awareness of risk led to intense focus on reducing risk." In the Apollo program, there was a pattern of rigorously hunting down and eliminating any possible known risks, leaving unknowns as the primary source of risk; on the other hand, the Shuttle program let known risks accumulate continuously until crews paid the price for a bad draw.
When debris hit Atlantis on STS-27 [1] and the shuttle only survived on a one in a million stroke of luck -- the completely broken tile happened to be over an aluminum mounting plate -- it should have been taken as a free lesson on one more known source of risk to eliminate. Instead, it led to seven people dying completely preventable and unnecessary deaths a few years later.
Spaceflight is inherently risky, it's true. That's why things like the Orion heat shield are so worrisome; because it is physically possible at our current level of technology to make it safer, and yet for political / funding / etc. reasons we're not doing the best we can.
So there were 3 Saturn V already assembled and in existence.
Did the CSMs and LEMs exist? CSMs had a similar serial number scheme. And they designated "Block 1" and "Block 2" (iterations of the spacecraft design based on testing) CSM-0## and CSM-1##
The CSM used in Apollo 17 was CSM-114. On wikipedia it says that CSM-115 and CSM-115a were never fully assembled and cancelled, but if you look past that, you can also see that Skylab used, CSM-116, CSM-117 and CSM-118. These were Apollo CSMs, fresh off the same assembly line. https://en.wikipedia.org/wiki/Apollo_command_and_service_mod...
So there were 3 CSMs.
What about LEM? Similar number scheme, LM-## which is incremented with each one made. So first one was LM-1 and the last one used on Apollo 17 was LM-12. LM-13 is on display in a museum. LM-14 was on the production line (along with LM-15??) and a "stop work" order was issued and they were scrapped. Yes, they were literally broken down and turned into scrap. https://www.businessinsider.com/nasa-lunar-modules-lm14-lm15...
So NASA had 1 LEM and 2 were on the way. I think, we can charitably say that there were 3 LEMs available at the time. I think it's fair to say that...
So the Saturn Vs existed and had been paid for. The CSMs existed and had been paid for. The LMs existed / were on the line and had been paid for. The crews existed (and had been partially paid for).
So what is the "funding shortfall" that caused America to stop going to the moon?
The "funding shortfall" here is the money required to pay for the ground crews and personnel for carrying out the mission. And that amount was $42.1 million out of $956 million for Apollo. The total NASA budget was, $3.27 billion that year.
> NASA was canceling Apollo missions 15 and 19 because of congressional cuts in FY 1971 NASA appropriations, Administrator Thomas O. Paine announced in a Washington news conference. Remaining missions would be designated Apollo 14 through 17. The Apollo budget would be reduced by $42.1 million, to $914.4 million - within total NASA $3.27 billion.
$42.1 million. NASA admin just couldn't find $42.1 million of ground staff salaries etc out of the remaining $2.3 Billion budget.
It's probably a coincidence that this happened right after Apollo 13. The decision was announced on September 2nd, 1970. Apollo 13 happened in April, 1970.
----
So yes, the funding was there. I suspect the "funding cut" argument was an attempt to save face; after the US Government (and I mean the Government, it's clear both the White House and Congress were involved) decided to cut the cord post-Apollo 13.
I also suspect this is one of the many "open secrets" lost to time. It might have been known by "everyone" in the know at the time, but those who knew died off, and history crystallized around the written page.
Thank you for the in depth reply! You make a very good point, and the timing of Apollo 13 with the budget decision is pretty damning, I'm convinced.
I will point out however that the budget was congressionally-mandated, and no funds were allocated for moon landings as they were in previous years; it would have been illegal to use funds dedicated to other areas for moon landings. Maybe I'm being overly pedantic here, but to say the 'funding was secured' as in the article implies the decision to cancel the remaining programs lay with NASA leadership; it would be more accurate to say that funding for the remaining programs, though possible, was not secured, most likely as an attempt to save face by congress/govt.
No, that's a great point. Let me rephrase it, they couldn't go to congress in 1970 and say, "hey, we've got $2.3B in other parts of NASA, here's what we're happy to cut so that we can keep Apollo."
Apollo 18, 19 and 20 were cancelled in 1970. 3+ years ahead of Apollo 18. Apollo 17 didn't happen until December 1972.
The US couldn't plug this funding "shortfall" in 3+ years out of the many, many parts of NASA?
It's pretty clear that the decision to kill Apollo had been made. The money is just how they chose to do it so that the POTUS didn't have to go on record cancelling Apollo. There was no room for negotiation. POTUS and Congress had decided that Apollo needed to die and so it died. How it died was relevant only so far as to serve as a mechanism to save face.
> the 'funding was secured' as in the article implies the decision to cancel the remaining programs lay with NASA leadership
Yes, you're right. I just don't know how else to put it. The capital outlays for the components of the missions had already been committed to ahead of time. The physical capital was present; the main cost of the missions; those assets existed / were in place. I don't know what the right language is over here.
We can look at what NASA did after the Columbia disaster; namely, redesign the external tank, employ stricter quality control of the foam across the board, better monitoring of the heat shield integrity, and adding contingencies for being stuck in space with a damaged shuttle.
- They replaced the specific foam insulation that struck Columbia with external heaters, and redesigned other areas where foam was necessary to ensure greater structural stability + minimize damage to the shuttle in case of breakage. They also began more thorough inspection of any heat shield panels that would be reused between missions
- They added various cameras, both on the shuttle and on the ground, to monitor the heat shield throughout launch, plus accelerometers and temperature sensors. Also, the heat shield was checked manually on every mission once in orbit for damage, both with an extension to the Canadarm, and with ISS cameras when possible (a funky maneuver [0] where they would do a backflip to flash the shuttle's belly at the ISS for it to take high res pictures)
- Every mission from then on had a backup plan in case the shuttle wasn't in a state to return to Earth (this wasn't really the case before then, which is kinda wild). Another shuttle was always ready to launch, with a new configuration of seats to allow for sufficient crew space
- They sent up equipment and materials for repairs in space with every launch, though admittedly the usefulness of that was dubious and the repair kits were never used
Perhaps 'eliminate' was too strong a word, but there's no reason these precautions couldn't or shouldn't have been taken before it resulted in deaths and the loss of a spacecraft. (well, other than the aforementioned funding/politics/organizational failure)
>Every mission from then on had a backup plan in case the shuttle wasn't in a state to return to Earth (this wasn't really the case before then, which is kinda wild). Another shuttle was always ready to launch, with a new configuration of seats to allow for sufficient crew space
Actually the backup plan almost every time was to just stay on the ISS until another Shuttle could be prepared. They only had another Shuttle on standby a couple times, during missions where they weren’t going to the ISS.
>They sent up equipment and materials for repairs in space with every launch, though admittedly the usefulness of that was dubious and the repair kits were never used
Yeah it wasn’t even useful for a situation like Columbia. It didn’t lose a few tiles or something, it had a giant hole punched into its wing.
There’s no fixing that in space. So I personally think they focused on situations they could theoretically fix, even though those situations weren’t what happened to Columbia.
It was a hole punched in the reinforced carbon-carbon panel that made up the leading edge of the wing.
They didn’t use tiles on highly curved parts of the Shuttle, like the nose and the wing leading edges. Those areas were structural heat shields, so not tiles at all.
The solution to a Columbia situation was the aforementioned stay at the ISS. The idea was to have many solutions for a range of situations. No reason to throw away a billion dollar shuttle if there is a repair in space option
Worth mentioning, this is all particularly fresh in my mind because of a recently released video by the excellent Classic Aerospace History channel on YT, "A Brief History of the Space Shuttle". It's two hours long and provides a reasonably detailed overview of the program, would recommend if you're into that sort of thing: https://www.youtube.com/watch?v=WtmOVxcga-Y
The risk couldn't have been entirely eliminated, but most likely the external tank insulation could have been modified to at least reduce the risk of chunks breaking loose and damaging the thermal tiles during launch.
The premise is asymmetrical. One could just as easily ask "Which regular medicine has been adopted as a folk remedy?", to which the answer of course is largely no. There is also a (purely pedantic) argument to be made that folk remedies are more 'regular', though assuming the question here is "Are folk remedies widely prescribed in their original forms by typical modern-day MDs?", the answer, again, is largely no.
Now, to the question "Which folk medicines have a fairly robust (or at least promising) clinical basis?", there are certainly some: ginger[0], turmeric[1], honey[2], psilocybin[3], and of course capsaicin and peppermint. Not to mention sunshine, exercise, and meditation, all of which have traditional origins.
Taking a step back though, historically, pharmaceutical drugs have often been derived from natural remedies with bases in folk remedies. The pipeline from traditional medicine -> scientific study -> molecular isolation -> synthesis and mechanized production is pretty well-trodden. Aspirin comes from willow bark, morphine comes from opium, quinine (malaria treatment) comes from cinchona bark, paclitaxel (cancer treatment) comes from yew bark.
Homeopathy is BS though, no argument there. GP really shouldn't put it in the same bucket as folk medicine (it's not even particularly old).
The poverty line, as established in the 60s, is simply 3x the minimum food budget. Food as a percentage of spending has decreased, while housing and other expenses have dramatically increased.
If the poverty line were to be adjusted to reflect the share that food takes up of income today, from ~30% in 1963 to ~6% today, the threshold for a family of four would go from ~30k a year to ~150k.
It's true that lower income families spend a higher proportion of money on food [0], but that was equally true in 1963. It's a static fact about income brackets at any time, and doesn't explain the change in average share.
Food share dropped from ~30% to ~6% because real incomes have risen and food has become cheaper relative to housing, healthcare, education, and so on. That shift affects all income levels, including the poor. Your point doesn't contradict the article's, that the poverty line, based on 1960s food budgets, no longer reflect current costs of living.
Could you send the article where the author revises their claim?
In the 1950's poor people in America may have had housing, but there's a good chance that housing didn't have plumbing. Poor people in the 50's spent roughly 0% of their income on childcare. Much of the article is complaining about the cost of child care.
You may think that poor people should be able to afford child care. That's a valid thought. But then you can't compare that to a 1950's definition of poverty where child care is definitely not affordable by the poor.
In the 60s (and 50s, though not sure why we're moving backwards) most households were single income; childcare costs were virtually nonexistent because mothers typically stayed at home to raise children, and a family would get by on the father's income alone.
That actually illustrates the point nicely: typical economic and living situations from when the metric was created were very different from today in a variety of ways, and once again, the reason the 3x food costs number was chosen -- that roughly 1/3 of income of low-income households was spent on food -- is simply no longer true.
Now, what the poverty line should be is a whole 'nother topic -- for the record the ~150k number is more as an demonstration of how broken the metric is than an actual suggestion, at least as I see it. This discussion doesn't seem to be going anywhere though so I'm tapping out, but I would still appreciate it if you would link to the article you mentioned.
> Alongside thousands of other extensions. If they were scanning for a dozen things and this was one of them, I’d tend to agree with you. But this sounds more like they enumerated known extension IDs for a large number of extensions because getting all installed extensions isn’t possible.
To take a step back further: what you're saying here is that gathering more data makes it less sinister. The gathering not being targeted is not an excuse for gathering the data in the first place.
It's likely that the 'naive developer tasked with fingerprinting' scenario is close to the reality of how this happened. But that doesn't change the fact that sensitive data -- associated with real identities -- is now in the hands of MS and a slew of other companies, likely illegally.
> But the authors have chosen to frame this in language that is hyperbolic and alarmist, and in doing so I thing they’re making people focus on the wrong things and actually obscuring the severity of the problem, which is certainly not limited to LinkedIn.
The article is not hyperbolizing by exploring the ramifications of this; and it's true that this sort of tracking is going on everywhere, but neither is it alarmist to draw attention to a particularly egregious case. What wrong things does it focus on?
> The gathering not being targeted is not an excuse for gathering the data in the first place.
I’m not saying it is. My point is that they appear to be trying to accomplish something like getInstalledExcentions(), which is meaningfully different from a small and targeted list like isInstalled([“Indeed.com”, “DailyBibleVerse”, “ADHD Helper”]).
One could be reasonably interpreted as targeting specific kinds of users. What they’re actually doing to your point looks more like a naive implementation of a fingerprinting strategy that uses installed extensions as one set of indicators.
Both are problematic. I’m not arguing in favor of invasive fingerprinting. But what one might infer about the intent of one vs. the other is quite different, and I think that matters.
Here are two paragraphs that illustrate my point:
> “Microsoft reduces malicious traffic to their websites by employing an anti-bot/anti-abuse system that builds a browser fingerprint consisting of <n> categories of identifiers, including Browser/OS version, installed fonts, screen resolution, installed extensions, etc. and using that fingerprint to ban known offenders. While this approach is effective, it raises major privacy concerns due to the amount of information collected during the fingerprinting process and the risk that this data could be misused to profile users”.
vs.
> “Microsoft secretly scans every user’s computer software to determine if they’re a Christian or Muslim, have learning disabilities, are looking for jobs, are working for a competitor, etc.”
The second paragraph is what the article is effectively communicating, when in reality the first paragraph is almost certainly closer to the truth.
The implications inherent to the first paragraph are still critical and a discussion should be had about them. Collecting that much data is still a major privacy issue and makes it possible for bad things to happen.
But I would maintain that it is hyperbole and alarmism to present the information in the form of the second paragraph. And by calling this alarmism I’m not saying there isn’t a valid alarm to raise. But it’s important not to pull the fire alarm when there’s a tornado inbound.
> But what one might infer about the intent of one vs. the other is quite different, and I think that matters.
That's where we disagree: intent doesn't matter here, because the intent of the person gathering the data is not the same as those who have access to the data. I don't care if the team tasked with implementing this believed they were saving the world, because once this data is in the hands of a big corporation, in perpetuity, and the thousands of people that entails, and it diffuses across advertisers and governments, be it through leaks, backroom deals, or perfectly above-board operations, it makes no difference how it got there.
The two paragraphs given:
> “Microsoft reduces malicious traffic to their websites by employing an anti-bot/anti-abuse system that builds a browser fingerprint consisting of <n> categories of identifiers, including Browser/OS version, installed fonts, screen resolution, installed extensions, etc. and using that fingerprint to ban known offenders. While this approach is effective, it raises major privacy concerns due to the amount of information collected during the fingerprinting process and the risk that this data could be misused to profile users”.
vs.
> “Microsoft secretly scans every user’s computer software to determine if they’re a Christian or Muslim, have learning disabilities, are looking for jobs, are working for a competitor, etc.”
The latter is the tangible effect of the former. The two aren't mutually exclusive, and considering the former has long gone unaddressed in its most charitable form, it only makes sense to use a particularly egregious example of it taken to its natural conclusion to address in courts and the public consciousness.
The issue here is that even if the original goal is the first thing, once you have the data you can do that second thing. From where we stand, nothing changes - same information is collected. But now, it's also used for affinity targeting or worse.
It is equally “searching your home network” as it is “searching your computer”. This is not searching your computer. It is searching your browser. Being contained to the browser is completely different than having access to the OS behind the browser.
Well, you can take it because it's cheaper than flying. Prices are comparable to the dirtiest, cheapiest dirt cheap flights with no checked baggage, carry-ons etc., but with more space, free wifi + (often) functional mobile data, better amenities, no TSA, and all the luggage you can carry. It's amazing being able to bring a whole guitar in a gig bag without having to worry about it at all.
The romance of it is wonderful too, but even from a purely practical standpoint the only real downsides are the slow speed and inconsistent arrival times.
At $5000 vs $2000 to take my family someplace over Christmas break (when the kids are off school flight costs go up because everyone else is trying to take their kids on vacation at the same time) I'll pay the time. I seriously considered driving instead (which would have been cheaper, and perhaps faster).
Like PocketBase, it's made in Go, has an admin panel, and compiles down to one executable. Here, you write your endpoints as Lua scripts with a simple API for interfacing with requests and the built-in SQLite database. It's minimal and sticks close to being a bare wrapper around the underlying tech (HTTP, SQL, simple file routing), but comes with some niceties too, like automatic backups, a staging server, and a code editor inside the admin panel for quick changes.
It comes from wanting a server that pairs well with htmx (and the backend-first approach in general) that's comfy to use like a CMS. It's not exactly a groundbreaking project, and it still has a ways to go, but I think it's shaping up pretty nicely :)
link: https://github.com/ksymph/mogo
reply