First, eliminate advertising. Next, eliminate anonymity. Next, focus on teaching things that can be taught. For one example, the old (pre .com) comp.lang Usenet forums were fantastic. For another example, Consumer Reports is a blissfully dull but useful publication. B2B commerce at least comes with contracts and credible threats of legal retaliation. Broadcast consumer marketing is fully toxic.
This is nonsense. Fools "debating" and babbling "what the TV said" are liabilities. What's more, what 7.7B fools "like" and "don't like" never matters. Simpler facticities, such as design and organic anatomies, are all documented. Probabilistic functional consequential facticities are also mostly Globally Credible Consensus Narratives (GCCN). Now, we can finger jerks selling something at expense of others. They must be silenced. Same for "bar drunks" and "team seekers" and attention seeking "2-sides debaters." All wastes of time. All noise, no signal. In any case, written narratives with some pretenses to formal completeness dominate babblers and texters. Focus on sets of propositions worth writing down. Ignore restaurant reviews. Focus laserlike on recipes.
HN itself is full of wonderful "counter-intuitive" narratives. College is the road to riches? We've heard Peter Thiel and others explain otherwise. "Health food bars" aren't just candybars? Whey protein doesn't just ruin kidneys? Daiquiri mix isn't just (overpriced) kool aid? DNC/GOP (partisans) correlates to "conservative/liberal" and also "right/left." Journalists stringing together "southern, conservative, Christians" seem to forget MLK and his kindred churches (I worked for Unitarians at Harvard). Might we consult George Lemaitre (Big Bang) and Gregor Mendel (Genetics) (both Christians monks) about the "Science vs. Religion" conflict? We can go on and on about "what everyone knows" that was never and shall never be the case. And Darwin himself wrote that Herbert Spencer's fictitious "Social Darwinism" was pure idiocy. I wish I could red pen correct all of TV and old wives tale "common sense" here, but I can't :/
BTW, notice how our very phrase "counter-intuitive" largely indicates credible consensus contradicting TV narratives, commercial advertising, news "headlines" and fragment's of yesterday's propaganda. Credible consensus is not even "counter-intuitive."
There is nothing obviously wrong with copying things and nothing obvious right with "inventing" them first. DOS was not first but beat CPM. Microsoft even went on to PROMOTE its "fast follower" modus operandi. VC's seeking exits have very sound reasons for wanting something "first" and preferably "license protected." But those wins do not obviously confer to either nation states or even all industries or companies. Making things over and over for expanding markets is the best source of innovation. Any delusions of "labs" as "heads" and "making things" as "mere hands" are in fact pure delusions. [Edit: sp]
Maybe not pure delusions! But I think you’re otherwise right. It’s slow to penetrate post-modern perspectives, so much that pointing it out seems to only confuse and slow us down. I think it’s sad. At this point, an American with the lab:factory perspective is met with a set of industries and personnel perfectly trained to that model, and scarce resources to undermine it if they choose to go against the grain (See Tesla’s uphill battles in manufacturing, not an isolated or perfect example but fits). We’re also likely to be surrounded with success stories of that model.
But, like you say, there is another way. It’s pretty tough to see the benefit of not looking for it, especially when comparing the pace of the outsourcing model. But, we ironically installed the artisan model in our nation’s individualist “doer” image of itself and spend a lot of effort talking around it. It’s proven time and time again in stories of history, art and innovation but it’s just a matter of a pendulum swing.
It probably depends on industry. It doesn't work so well in today's software, like Microsoft has proved. Also in industries with strong patents or with effective process secrets. And i'm not sure that way of thinking is effective in industries with network effects.
So what's left ? usually industries with low-margins. And afaik, that generally describes China.
First, it would certainly depend on as many sample variations we can find. Second, you are approaching tautological nonsense where patents and copyrights are nothing more than excuses for undeserved "outsized returns." Maybe that is true now or in countries with "first-to-file" patent regimes. There are no guarantees of ANY future outsized returns, no matter how much people might desire them. Low-margin might just equal "useful and fair."
I don't understand the appeal. We used to call this "slipstreaming" changes. I understand a variety of methodologies going back decades. Is this for content or entertainment applications where users are victims and data integrity is not sacrosanct?
My own model for software is tooling that enjoys infrequent highly stable releases, priorities on backward compatibility and iron tight accurate documentation. Where exactly is rapid incremental code delivery at such a premium? Why are these articles not contextualized to domains?
I think somehow the idea that you should keep your main branch buildable/shippable at all times (a good thing imo) evolved into, since it is shippable, it should be shipped automatically (which is, in my opinion, really suspect)
I'm in the same boat though, I don't get the point of CD for most applications other than to prove that you can do it (but other than impressing other engineers with your teams apparent discipline: who cares?)
Minimal code delta means the isolation of any bugs is much easier than if you have to read through six months of patches.
Ability to get user or system feedback on code today, rather than in three months, is often quite helpful. That is, if your company depends on listening to customers or studying customer behavior. (I know of no company that isn't, though, except monopolies like Comcast.)
> Minimal code delta means the isolation of any bugs is much easier than if you have to read through six months of patches.
Sure... which is why your QA department should test things early. (You're not making your users into QA... are you?)
> Ability to get user or system feedback on code today, rather than in three months, is often quite helpful.
Users-as-beta-testers can work in some contexts, but there's a lot of of fields where doing that is a very bad thing. Experimenting on your users is, at best, a pretty nuanced business decision. And: again you can get feedback internally, or by recruiting testers, or by having a QA department. I do game development. We do play tests when we're trying to figure out if something is a good idea and we have QA to track the bugs. CI is very useful for coordinating with QA on things, but god help us if we started shipping everything checked in. Not every feature is a winner.
Not saying CD can't be useful in some contexts, but I remain unconvinced it's anything but a niche need. CI is pretty universally useful, but CD? Really depends on what you're shipping and who you're shipping it to.
There are lots of things that QA can't test well. Some bugs can only be detected at scale. If you push every feature immidiately, it's also very easy to roll back a bad feature immidiately. And you can notice and deal with performance issues much more easily than with weekly or monthly releases.
It is easier today than ever before to share a basic great books history and philosophy "story" today. We can include our primate biology, geology, food history and organizational and strategic narratives from Sun Tzu to Aristotle to Schelling's game theory to Robert's Rules of order.
If we're going to live to 100, we should should share some tooling for how to get there better together. Education is not the problem. Constant crop dusting on filmic conflict fictions and staged sport conflicts is the problem. Living together in an industrial world secreted behind walls or even continents away on 1-way broadcast communications is foolhardy.
Nerds are raised on sci-fi. I was. They keep waiting for the future to happen. Scouring for "new technologies" is sometimes called "scouting." It's really important for a company to appoint "scounters." Then everyone else knows "scouting" is not in their job descriptions. Then they start to focus. Many organizations never graduate from future fetishism.
That's your team's problem. Optimizing single developers for "getting their part over" is not contributing. Software delivery is not like taking tests in school. It's team delivery over multiple release. The only wins are group delivery.
Great piece. 1) The title might be "Incidental Complexity is Killing Software." 2) Typing speed of scripting languages is truly a HIGHLY deceptive metric. Server resources are not free, and unit testing is wasted on type checking which compilers do cheaper. 3) For different sad reasons, software organizations CANNOT manage to do cradle-to-grave resource planning and schedule assessments all the way through sales, training, help-desk and MRO. 4) Why software ENGINEERS fetishize tool and equipment purchases like consumers I'll never understand. The application wins are cool. The tools are tools. 5) The developer stovepipe desire to "have their part work" is another contributing pathology. Software delivery is a team marathon styled sport.
This is true. Ancient USENET was once fantastic before SPAM and trolls invaded. The stores of free non-fiction books and journal articles in PDF is also a giant treasure few could have imagined a few decades ago.