Is a 'Stack' the Best Way to Understand Everything? (2017)
nytimes.com
nytimes.com
The article was generally cringey but this sentence stood out:
Stack logic is only just finding its footing in the corporate world, and it hasn’t spilled into mainstream conversation just yet.
> “Stack,” in technological terms, can mean a few different things, but the most relevant usage grew from the start-up world: A stack is a collection of different pieces of software that are being used together to accomplish a task.
When it comes to mainstream conversation, Discord appears to be picking up the slack.
EDIT: Welp, this is what I get for only glancing at the headline and not reading the article before commenting. I'll leave my mistake here rather than delete it for posterity's sake.
Also this notion that stack was invented in tech is ridiculous. Stack ups have been referred to in manufacturing and medicine for years prior.
Which, generally, boils down to a group that is largely programmers, and even those that aren't programmers DO (AFAICT) have familiarity with the "stack" concept (non-technical Eng Managers, non-technical PMs, etc)
I'm not saying you're wrong in any way, just pointing out that it can be said in a way that doesn't sound like "programmers are all that matter" (which I don't think was your intent anyway).
No. Next question.
Yeah, that's got nothing to do with the article.
Can you replace the application while leaving the OS in tact? Of course. Now try replacing the OS without impacting the other two.
The processor stack and a software stack really are distinct things, because the "software stack" has the notion of interfaces at the top and the bottom of each layer.
The fact that at the implementation level, the call stack sometimes mirrors the software stack is not really relevant. It's sort of accidental: each layer could be a process, connected with other layers by a pipe for instance.
That's literally the entire point of the abstraction. Each layer is independent and can do its thing without considering what other layers are doing.
Of course, like all abstractions, it's leaky, which leads to things like Nagle's algorithm causing lag in MMORPGs when devs don't turn it off (no offense, Animats! :D )
Of course, there are applications that run on bare metal without that abstraction layer, but the point I'm making is that in stacks with an OS, an application "on top" of that OS is not independent of the OS even with virtualization.
There's also a "stack", a layered architecture.
Don't confuse the two. They're unrelated.
I think that probably predates assembly language programming!
stack => memory allocation :- local variables on call stackFundamentally, a stack is not about technology. Sure, it is used to represent a data structure in software, but the same can be said for queues, heaps, pipelines... And yes, it can also be used when the graphical representation of something looks like a pile of boxes sitting on top of each other, which is common in tech (ex: the TCP/IP model).
It may be true that tech popularized the word "stack" but it is just as easy (in fact easier) to imagine a stack of books rather than anything software related. Using that as an argument that "software is eating the world" is circular reasoning.
Then in another waiting room I saw the same thing, except it was basically a ring buffer. They used a little magnet to denote the top and I watched them keep filling below my chart and then back to the top above the other charts. No need to move every chart every time.
I highly doubt these nurses are thinking tech or programming. They're just being naturally clever.
I sure hope the refrigeration doesn't go out, they'll have a real mess on their hands then.
* Monolithic: expensive but very carefully crafted. Beautiful. Self-contained and self-supporting. There's enough for everyone, and you'll keep it around for years (ok you'll keep a piece in the freezer, the metaphor only goes so far...)
* Microservices: cheaper, easier, and more popular on social media. Leaves you feeling a bit unsatisfied, and with a tendency to drop crumbs all over the place as you try to access the contents. Stale and discarded after a day.
(I'm assuming the spiky-haired genius was speaking in favor of microservices and I wanted to have fun with the metaphor :)
Combining the AGI capabilities of Deep Learning with hyperdimensional system architectures to create decentralized Cloud infrastructure like never before!
1) A stack 10) a queue