3 ms·
Politics only plays such a strong role because at the end of the day having a single API doesn't solve a real problem. It's desirable because it reduces the sur
by enos_feedler 5y ago
Politics only plays such a strong role because at the end of the day having a single API doesn't solve a real problem. It's desirable because it reduces the surface area of new things developers have to learn if they want to target all these systems. However, mostly different people work on different targets and it really just helps with learning. In terms of actual building, deploying etc it's probably best to have proprietary things that wrap themselves cleanly around the systems they are operate in.
- pcwalton 5y agoStrong disagree as someone who spent years on a cross-platform accelerated vector graphics library in industry. Dealing with API differences and differences in tooling (Metal's tooling is far behind RenderDoc for example) took an enormous amount of my time, time that could otherwise have been spent fixing bugs and adding features.
- enos_feedler 5y agoI don't disagree you had these problems. I'm just saying the market of developers in your pool is not very big. Most people are happy just learning a single platform, chip, etc and getting a job writing code against it. I get the allure of "if only every target spoke the language I Know.. then I could target all the things.." but in practice it's not really a problem
- ncmncm 5y agoThe sheer quantity of things not even started because of the excess cost of targeting everything absolutely dwarfs the sum total of what is now built for this or that target. We have seen this dynamic play out over and over again, in the past six+ decades, going all the way back to FORTRAN. A standard target would multiply the size of this "market" many times over, generating additional demand for implementations throughout multiple industries. Balkanization has always been a debilitating tax on everyone, not excepting "market leaders" scrapping over the artificially reduced pie. Everyone made way more money after FORTRAN than before.
- enos_feedler 5y agoif the cost is attributed to "targeting everything" as you say, then wouldn't those things just get started by targeting one thing? Neither you or I can prove there are things not invented because of this, so nothing to debate here. The reason why pcwalton spent lots of effort jumping through hoops building a vector graphics library that targets lots of platforms is because we already know that vector graphics is something we had on a single platform. It is really hard for to imagine something not being invented/created at all because there isn't a single language that can express its computation everywhere simultaneously.
- ncmncm 5y agoThat argument has been repeated over and over again, over decades, and is proven wildly off the mark the moment standardization enables the test, every time. Strangely, the fact never prevents it being trotted out again, every time.
- enos_feedler 5y agoThe only time standardization unlocks innovation is when agreement is core to the function of the system (TCP/IP, communication protocols, etc). If it's simply to create a common abstraction across similar things, then it won't unlock anything. It's simply a nice to have.
- smoldesu 5y agoWhy doesn't Apple consider their GPU to be a core function of their system, then?
- ncmncm 5y agoStrangely, the fact still never prevents it being trotted out again, every time.
- rowanG077 5y agoA GPU is not core to the function of modern personal computers? It's not 1990 anymore. Literally every single personal computer has a GPU. In fact it would be more apt to say that nowadays you buy a GPU that has sacrificed a small part of its transistor budget to include a CPU.
- kvark 5y agoI'm surprised to hear your poor experience with Metal tooling. In my book, it was always superior to RenderDoc. For example, it got able to debug shaders way before RenderDoc started supporting this on Vulkan. It also goes above and beyond with showing your render graph, performance metrics and hints. The only problem with Metal tooling is occasional bugs, but it's not like RenderDoc is clean of them either.