Yeah I think that's pretty good. I'd say Reference + Explanation + Examples is good enough, like the GWBASIC example -- it doesn't give tutorial-size code, just snippets for each function. But having a tutorial section is definitely more helpful.
It's mostly on the business side. If business doesn't care then developers have no choice. Ofc the customers need to care too, looks like we don't care either...in general.
I have never written any technical manuals, but I'm surprised that Word is the choice of tool. How does one embed e.g. code easily in the document? I feel there must be a better way to do it, maybe some kind of markdown syntax? Latex?
> How does one embed e.g. code easily in the document?
You don't. For APIs and such, documentation is published online, and you don't need Word for that. Word is used in some industries, where printed manual is needed.
What about the printed manuals? I think they still have some of those not too long ago (e.g. Intel manuals). What was the tool chosen? Very curious to know.
Or, maybe a legacy example -- how were the printed manuals of Microsoft C 6.0 written? That was in the early 90s I think.
Yeah I agreed. Kinda missed the old days with thick manuals. I bought one for gdb a couple of years ago and love it -- despite it is just the paper version of the online one.
I think back then, due to the scarcity of RAM and HDD, developers, especially elite developers working for Apple/Microsoft/Borland/whatever really went for the last mile to squeeze as much performance as they could -- or, at least they spent way more time on this comparing to modern day developers -- even for the same applications (e.g. some native Windows programs on Win 2000 v.s. the re-written programs on Win 11).
Nowadays businesses simply don't care. They already achieved the feudal-ish bastion they have dreamed about, and there is no "business value" to spend too much time on it, unless ofc if it is something performance related, like A.I. or Supercomputing.
On the other hand, hardware today is 100X more complicated than the NeXTStep/Intel i486 days. Greybeards starting from the 70s/80s can gradually adapt to the complexity, while newcomers simply have to swim or die -- there is no "training" because any training on a toy computer or a toy OS is useless comparing to the massive architecture and complexity we face today.
I don't know. I wish the evolution of hardware is slower, but it's going to get to the point anyway. I recently completed the MIT xv6 labs and thought I was good enough to hack the kernel a bit, so I took another Linux device driver class, and OMG the complexity is unfathomable -- even the Makefile and KBuild stuffs are way way beyond my understanding. But hey, if I started from Linux 0.95, or maybe even Linux 1.0, I'd have much elss trouble to drill into a subsystem, and gradually adapt. That's why I think I need to give myself a year or two of training to scroll back to maybe Linux 0.95, and focus on just a simpler device driver (e.g. keyboard), and read EVERY evolution. There is no other way for commoners like us.
I guess we just need the other shoe to drop: punish companies that are based in the US and outsource to India. It’ll happen in time if this trend continues
Then the US companies will be outcompeted by more competitive companies located outside the US. Now the US lost the jobs and the workers' income tax and the corporate tax.
America cannot eternally capture a disproportionate share of global wealth, even with such rent seeking moves. It's unsustainable.
We had a golden age after WW2 when we were the only undamaged industrial economy but that age has ended.
It would be far smarter to have invested in the workforce continually. A microcosm of this is how we mismanaged college education and is a symptom of a larger problem: As far as US policy goes, got complacent and extractive over innovative and additive. The narrative shifted from 'abundance for all' to 'the pie is only so big' (that is, unless you're a favored incumbent, like defense contractors). It doesn't stop here. Job training programs, continual education, robust workforce displacement services, proper social welfare programs. We lack all of this (and more).
Another would be to remove burdens off companies that are better handled by the collective of society, via the government. Take universal healthcare. An often unnoticed benefit is how it would shift liabilities off the books of a huge number of companies, from the auto manufacturers to smaller businesses. A tax is a much easier and simplified expense to deal with over legacy healthcare costs that can weigh down a business. It also has a secondary knock off effect: employers can't use it as a pair of handcuffs. In all likelihood, an unintended side effect of universal healthcare would be an increase in entrepreneurship from the middle class. People who would otherwise be handcuffed to their job because of health insurance.
Somehow, the lesson everyone took away from the G.I. Bill was not that the government providing robust funding of social services (IE college, home ownership) works. That part is seemingly ignored by the vast majority of the conversation around the 'good times past' that many Americans romanticize.
Too many of my fellow citizens are prioritizing their own short term gains over the long term health of the community and society in which they were empowered by to get ahead in the first place. This will inevitably crater quite spectacularly bad.
Sure, and how about executive compensation? The gains aren’t spread throughout the company. You see highly revenue positive businesses like Google and Amazon laying off thousands of employees while record profits are abound.
You missed the point entirely, and if you were to take a few minutes to look this up you’d know that
Or they just move their "headquarters" and the US part of the business will be a subsidiary.
This is an old, and well tested strategy.
E.g. Commodore International formally had its head office in The Bahamas, but the entire leadership team worked out of the US.
You can try putting more constraints on what will get a company considerd a US company to catch those kinds of structures, but as you indirectly point out, there are really only downsides to playing that game.
Pretty much. America is destined for a decline. The billionaires can make money regardless of border by always moving things around and utilizing their expansive resources for any possible loopholes and escape hatches while manipulating public policy.
This is reductive and wrong. The billionares make money hand over fist either way. They own the companies. They don't care if the new campus or factory is in China or India. They skim their cut off it's productivity either way.
It's your fellow countrymen who are peddling the policies that, at the margin, push those investments overseas.
The majority don't care so long as they have enough food and shelter and healthcare.
The whole scoreboard based on bank accounts is all made up wankeroo.
Let's just have AI avatars fight for gloating rights; Goku beat Superman on PPV so Japan gets to host the inter dimensional cable world cup! And otherwise keep the biologically essential logistics flowing cause that collapse is when the meat suits will toss aside socialized truths of history and go crazy primate.
I'd like to see a serious study about the word "fiat" and whether it has been used to make a single valid economic argument in the last 30 years (auto maker excluded)
The whole point of it seems to be to dismiss the entire economic system in favor of something that almost nobody has bought in to like bullion or cryptocurrency or somesuch for the benefit of the speaker. Currency, even paper currency, is one of the most pervasive societal "grand illusions" that we share. But that isn't necessarily a bad thing as it greases the entire system of exchange for literally everyone everywhere.
Well, history has those uniquely medieval (or early modern) situations where kingdoms adopt fiat currencies just before they fail. I dunno how much academics discuss those.
Well, history has those uniquely medieval (or early modern) situations where kingdoms adopt fiat currencies and don't fail. I dunno how much academics discuss those
If you want American companies to not outsource any jobs AND have full foreign market access, get ready to get market access revoked from places like India. They’ll just incentivize their local companies to compete, and Amazon has plenty of local competition there already.
Amazon themselves have experienced in the past how heavy-handed Indian regulators can be.
It’s not a zero-sum game anymore. You cannot have only one side (US companies) capture 100% of the value.
Amazon has contributed enough to the current administration that I doubt they will face any consequences. Maybe another round of shakedowns and more financial contributions, but they have figured out pretty quickly how to play the game and end up on the good side of the current administration.
Amazon's MGM subsidiary spent 75 million dollars thus far on the Melania Trump documentary that by all accounts, is looking like its going to be a box office bomb. Reportedly, 30 million of that 75 went directly to Melania[0]
> [p]unish companies that are based in the US and outsource to India. It’ll happen in time if this trend continues
They ain't doing squat.
The Trump admin is encouraging technology transfer to India as part of Pax Silica [0] and GOP politicans in Ag heavy Purple States like Iowa [1] and Montana [2] are trying to mollify India after China pivoted from American to Brazilian soybeans [3] and India began tariffing pulses/lentils [4].
Additonally, Indian ONG majors like Reliance are negotiating with the Trump admin to purchase Venezuelan oil now that Maduro is in custody [5] and India SOEs have starting creating partnerships with ExxonMobil [6], Chevron [7], and Phillips66 [7] to "drill baby drill".
As such, what are you going to do lol - Agriculture and Ag adjacent industries employs 22 million Americans [8] and the Energy sector employs 7 million Americans [9] mostly in Red and Purple states. Software only employs around 2 million Americans [10] in either Blue states or Blue pockets of Red States.
For the presidential election sure, but I wouldn't underestimate state level organization of the DNC in the rural west and Midwest.
The issue is fractured fundraising basically undermines the local organization by funding challenger candidates, which alienates local Dems and depresses turnout (TDP is notorious for this).
Iowa is going to be a competitive race hence why Joni Ernst decided to not run for reelection.
I think all companies eventually mutate into a MBA company. For MSFT there was a culture from very early that PMs should lead the project instead of engineers. I read in "Showstoppers" that Cutler was very against of the idea and he pushed back. So that means even in the late 80s MSFT was already a MBA-centered company. The only reason that it has not degraded yet, was because it has not achieved the monopoly position. Once it does it started to chew on its success and quickly degraded into a quasi-feudal economic entity.
They don't have David Cutler to mow the lawns. I have worked in larger shops (smaller than MSFT but still large enough, almost 10K employees), and people in general are very forgiving about making mistakes. You would think it was a good thing, but what it shows was that no one cared and none took responsibility.
If youn put me in the starting lineup for an MLB team, I'd strike out every single at bat for the entire season, and it's wouldn't be a "mistake" on my part; I'm just fundamentally incapable of doing the job.
A mistake is something that happens when someone capable of doing the job well happens to not do it well in a specific instance (without ill intent, of course). If it happens often enough, the question should be whether it's a mistake or if they're not able (or not willing) to do the job as expected. I don't know that this is what's happening here, but the issues seem to be large and frequent enough to at least warrant a discussion.
I think system programmers are supposed to come under a more strict standard, simply because they are system programmers. There are programmers, and there are system programmers.
I'm not saying that people should be sacked for just one mistake, unless it is a pretty large one (criminal e.g.). But I'd say system programmers should be allowed to make the same mistake three times maximum. I think that's pretty generous. If the culture does not allow enough time for reflection and education, then that's a different story.
The other programmers do not need to hold the same standards simply because their code (presumably) impact less.
I actually know. A lot of financial software ran on VBA. I heard from a friend that about 15% of option market-making sits on some 30 years old VBA code...Yeah they should be treated as critic software, too.
There are fewer and fewer 'David Cutler' types and more and more 'Pavan Davuluri' types at Microsoft. Wonder if the blame is really down to AI or indeed a lack of attention to detail from a new kind of workforce.
People assumed they could "modernize" software engineering, but, at the end of the day, it's still mostly engineering and very slightly about software. People optimized for the wrong thing.
Yeah I think he moved away from Windows some 25 years ago, after Windows 2000. He gave me the vibe of trying to build something really solid and then move onto the next important target, never lingering in one place for too long.
I had the same experience when doing an exercise implementing `mmap` for `xv6` -- that was the last lab. There was no specification except for a test file. Passing that test file is relatively easy and I could game it. I consulted the manpage of `mmap` but it is pretty far from a specification, so eventually I had to write a lot of tests in Linux to figure out what it can do and what it can't do (what happens when I over-mmap? what happens when I write back pass EOF? etc.), and write the same tests for `xv6` so that I could test my implementation. Not sure about hardware, but it is really hard to get a clear specification for software.
It is not only a dump of functions, but also with examples for each one of them. I think the Go one is pretty good: https://go.dev/doc/
reply