Sure, if you ignore all the anticompetitive bullshit they pulled to blackmail high street stores into removing BeOS, DrDOS, Linux and others from their shelves.
And the stunts they pulled to kill other IMs.
Or how they crippled the web for a decade due to killing competing browsers, building Windows lock-ins into IE (eg ActiveX controls), fragmenting Java, and then leaving IE to die themselves.
Or how they lied about Windows 98 requiring IE4.
Or how they didn’t give a crap about OS security until halfway through the life of XP. Leaving literally millions of people vulnerable to a plethora of different forms of attacks from malware to direct hacking on open Telnet ports.
Or how they tried to land grab IRC with their comic book GUI. Which, in fairness, was a novel app. But unfortunately it was another embrace, extend, extinguish play.
Or how they tried to kill ODF with their own faux-open document format: OOXML
Or their constant stream of FUD messaging about Linux being “communism”.
Yeah, MS were really noble in their goals to create a good OS. /s
It’s a pity they couldn’t even manage to do that well given every iteration of Windows has been bloated, buggy, and years behind the competition in terms of performance and capabilities. Windows was never a good OS.
In fact I’d go further and say Microsoft have never release a good OS. Even their versions of BASIC sucked compared to the competition.
Microsoft have always been good at negotiating with businesses. It’s why Azure is used in governments, why Windows is the “business platform”, and why 9x beat the competition in the 90s despite being consistently the worst in class for basically every metric you could think of.
Windows didn’t succeed because it was good. Microsoft succeeded because Bill Gates was ruthless!
They are very good at talking to businesses but even more important was their installed base. As they used to say "nobody ever got fired for buying IBM".
They won because they were first mover, not because they were the best because they weren't and they aren't. This is why they are so hell bent on copilot everywhere. They want to build an installed base again so they can milk it. But they're hardly the best. In fact what they are selling as copilot isn't even anything they made. It's just Chatgpt. Another interesting parallel with edge by the way which is of course just chrome.
They weren’t the first movers. They just managed to get IBM to sign with them after BASIC proved not to be IBMs long term version and CP/M struck out from any disk OS talks (though stories differ about exactly how that interaction went)
Microsoft didn’t even have an OS when they made that deal with IBM.
Hence why I said they’re good at negotiating with businesses.
Being first to market is actually less important than people think it is. It’s just history tends to remember the victors so everyone assumes they were first to market.
The abomination that was IE6 - it poisoned the internet at the time with developers designing specifically for it and its random bullshit bugs. The number of admin tools (e.g. SAN interface) that specifically required IE6 to run ActiveX or some monstrosity.
Not the OP, but yeah that used to bother me when I was younger.
As did any CRTs running below 75hz
My “super power” used to be that I could tell what refresh rate a VDU was operating at just by looking at it. Well, I couldn’t tell past 80hz. But anything below that I could.
More likely, what we will see is the decline of low effort projects. The JavaScript/ Typescript ecosystem has been plagued with such packages. But that’s more anomalous to the JS community than it is a systemic problem with open source in general.
So if fewer people are including silly dependencies like isEven or leftPad, then I see that as a positive outcome.
Yes. Because if unrelated industries decide to give up then a theoretical collapse becomes an unavoidable economic collapse. And history has proven that war usually follows economic collapses.
So literally the best thing Valve could do here is carry on like usual.
Notice that I'm not discussing economic collapse, I'm mentioning the environment and international relationships (e.g. the apparent return from the rule of international right we've had since WW2, however partially and imperfectly, to the rule of international anarchy we've seen in Europe since the birth of feodalism).
Notice that I'm also not criticizing Valve. They're doing what they feel is best for their business.
What I'm disagreeing with is enthusiasm for buying yet another gaming rig in the above circumstances.
> Notice that I'm not discussing economic collapse, I'm mentioning the environment and international relationships
Noice how I also discussed international relationships. I didn’t miss your point.
> Notice that I'm also not criticizing Valve. They're doing what they feel is best for their business. What I'm disagreeing with is enthusiasm for buying yet another gaming rig in the above circumstances.
It’s basically called “reinforced learning” and it’s a common technique for machine learning.
You provide a goal as a big reward (eg test passing), and smaller rewards for any particular behaviours you want to encourage, and then leave the machine to figure out the best way to achieve those rewards through trial and error.
After a few million attempts, you generally either have a decent result, or more data around additional weights you need to apply before reiterating on the training.
Defining the goal is the easy part: as I said in my OP, the goal is unit tests passing.
It’s the other weights that are harder. You might want execution speed to be one metric. But how do you add weights to prevent cheating (eg hardcoding the results)? Or use of anti-patterns like global variables? (For example. Though one could argue that scoped variables aren’t something an AI-first language would need)
This is where the human feedback part comes into play.
It’s definitely not an easy problem. But it’s still more pragmatic than having a human curate the corpus. Particularly considering the end goal (no pun intended) is having an AI-first programming language.
I should close off by saying that I’m very skeptical that there’s any real value in an AI-first PL. so all of this is just a thought experiment rather than something I’d advocate.
With such learning your model needs to be able to provide some kind of solution or at least approximate it right off the bat. Otherwise it will keep producing random sequences of tokens and will not learn anything ever because there will be nothing in its output to reward, so no guidance.
I don’t agree it needs to provide a solution off the bat. But I do agree there is some initial weights you need to define.
With a AI-first language, I suspect the primitives to be more similar to assembly or WASM rather than something human readable like Rust or Python. So the amount of pre-training preparation would’ve a little easier since syntax errors due to parser constraints.
I’m not suggesting this would be easy though haha. I think it’s a solvable problem but that doesn’t mean it’s easy.
With Electron, for example, a stripped down Chromium is shipped. So what does the web view rendering with this package?
reply