TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Stop Building Closed Ecosystems

158 点作者 LinguaBrowse大约 2 年前

24 条评论

PaulDavisThe1st大约 2 年前
The native side of this has long been addressed by cross-platform toolkits including but not limited to: Qt, GTK, FLTK, WxWidgets (note: all FLOSS, at least optionally).<p>Alas, web development &quot;decided&quot; to completely reinvent the wheel for all this stuff, leading to a new generation of heading-to-native toolkits derived from browser-based technologies, such as Electron, React Native and Flutter.<p>Unless you believe there is any mechanism to force a single cross-platform GUI toolkit on all developers - a belief that would make you basically insane - the reality is there will always be N different options for cross-platform development, depending on (a) which platforms you intend to cover (b) your own development history (c) subjective preferences (d) specific functionality that may be limited to specific toolkits.<p>Does it matter if N is 10 instead of (say) 5 ? I don&#x27;t know.<p>Does it matter if the N is segmented into &quot;derived from 90s widget models&quot; versus &quot;derived from 2010&#x27;s web models&quot; ? I don&#x27;t know.<p>Is there any chance of a single toolkit that covers native desktop environments (which continue to be important for creative apps, high performance apps, browsers etc.), native mobile and browser based apps? I don&#x27;t know, but it seems ... unlikely.
评论 #35582527 未加载
评论 #35582632 未加载
评论 #35582689 未加载
评论 #35586603 未加载
评论 #35582122 未加载
rektide大约 2 年前
This is my main fear with Flutter CanvasKit &amp; &quot;Towards a Modern Web Stack&quot;. <a href="https:&#x2F;&#x2F;hn.algolia.com&#x2F;?query=%22Towards%20a%20modern%20web%22&amp;sort=byDate&amp;type=all" rel="nofollow">https:&#x2F;&#x2F;hn.algolia.com&#x2F;?query=%22Towards%20a%20modern%20web%...</a><p>They are using canvas &amp; webgpu, &amp; making their own rendering engine (borrowing Skia) to take web apps from part of a participatory open ecosystem where extensions &amp; user-agency work, &amp; turning the page into a giant animated screen.<p>The best open ecosystem we have on the planet is being body snatched by the closed-as-can-be native app world.<p>The post here is a more developer-centric view of open &amp; I think that&#x27;s so valuable. It feels like we really used to have a more share-early share-by-default spirit.<p>I think that&#x27;s one thing that kind of agitated so many folks about webdev, is how share-centric it was.<p>We didn&#x27;t have established experts, there were no well established patterns, everyone was collectively figuring it out. Finding libraries that might work for you or doodling around with an idea was lead by sensibilities fit &amp; taste. Throw it against the wall &amp; see what sticks.<p>The web today has really become a far far far more hyperindustrialized system, with far more popular (not enforced) norms &amp; conventions. The random lead devs at a company are no longer necessarily intrepid explorers navigating an open sea of possibility. Everything is more set. And we no longer have that spirit of it just being us in the room, of sharing by default. The expectation is there&#x27;s very very smart far off people building libraries, and we&#x27;re just working on our app. The mindset has shifted, the culture has shifted, in a way where open is no longer the collective exciting happening place that we are all a part of.
评论 #35582346 未加载
评论 #35581904 未加载
评论 #35583964 未加载
apsurd大约 2 年前
The main problem is who gets to decide on the one anointed approach. Diversity ends up being a good thing, and also makes everything more messy and more complex.<p>Take your example of the Open Web. I wouldn&#x27;t be in software without the Open Web. I hand-write HTML and CSS to this day! But many people hate the web stack. They hate the ergonomics and enjoy better ecosystem for nearly every possible thing implemented in the web. I think ultimately, that&#x27;s ok and it&#x27;s &quot;worth&quot; having competing standards, because the alternative is - pardon the dramatics - authoritarian.<p>edits:<p>&gt; #2) Check for prior art first. The problem may have been solved before...<p>I generally take issue with the statement &quot;this is a solved problem&quot;. It ends up killing critical thought on the vine. I think everyone is better served thinking critically, and yes maybe something off the shelf is the right choice. But think critically, and freely, first.<p>&gt; #3) &quot;be opened-minded to other approaches&quot;<p>contradicts the idea of building one-thing all-together no?
评论 #35582071 未加载
评论 #35582376 未加载
s1k3s大约 2 年前
I strongly disagree with most of the points in this article. Why does he blame small app developers for vendor lock-in? Why is everyone casually avoiding the fact that vendor lock-in comes from.. vendors? You think I want to rewrite the same app 3 times for it to work on Apple, Google and Microsoft systems? When is the last time these 3 major platform owners have done anything but locking you in their ecosystem?<p>Such a weird take on this, really.
评论 #35582787 未加载
评论 #35583966 未加载
ksec大约 2 年前
I guess everyone goes through the stage of life thinking that Open System, or Cross Platform should be the norm. Java write once run everywhere in the 90s or earlier attempt like Smalltalk. But forgetting the lesson of Write Once, Debug Everywhere. Even if you had &quot;<i>open</i>&quot; Ecosystem completely built on top of Linux you will still have completing OS with different parts like UX, UI or windowing systems &#x2F; rendering engine. So what you want is a single OS for everything and everyone. Then you run into the other sets of argument which I wont name here.<p>There is probably a reason why many working in Tech or specifically software is heavily leaning into certain political spectrum which relates to the above.
mvuksano大约 2 年前
I think about these frameworks as products. They are meant to solve specific problem for specific audience. I also think we need to start differentiating between different classes of developers. I think a good analogy is car mechanic vs mechanical engineer. when a car is made there will be a lot of need for mechanical engineering. Once it&#x27;s on the road and needs to be fixed is when car mechanic comes into play. You need to decide whether you want to be mechanical engineering or a mechanic - skillet is very different.
detourdog大约 2 年前
I feel these complaints are misguided. If anybody thinks an Apple II was the good old days should lose their mind with this computer.<p><a href="https:&#x2F;&#x2F;www.analog.com&#x2F;en&#x2F;products&#x2F;max78000.html#product-overview" rel="nofollow">https:&#x2F;&#x2F;www.analog.com&#x2F;en&#x2F;products&#x2F;max78000.html#product-ove...</a><p>This has all the freedom one could need and amazing computing power. If one needs a non-propriety way to reach iOS users use a webpage.<p>Nobody is stopping anyone from making the next big thing.
dasil003大约 2 年前
This is utopian thinking that disregards how software ecosystems actually work in practice. Take the opening sentence:<p>&gt; <i>In the world of mobile development (though likely also elsewhere), we sink so much engineering talent into making tools that are great within-ecosystem, but as we don’t bother making them available to other ecosystems, everyone ends up reinventing the wheel.</i><p>I get the frustration with software churn and substandard tooling when you have to code for multiple platforms, but this is a very hand-wavy admonishment. Leaving aside who &quot;we&quot; are and what our cross-platform responsibilities are for the moment, how would this even work? Different platforms have different capabilities. Cross-platform tooling will therefore always be more complex and less capable than platform-specific tooling.<p>One could then argue that we should consolidate platforms, which generally will be more efficient, but who will be responsible for this platform? Whether closed or open, you are now in a situation where one platform has to be all things to all people, and that means there will be tradeoffs that hurt someone. I&#x27;m a happy iOS user, but I&#x27;m sure glad Android exists because diversity is healthy.<p>Technology will always trend towards consolidation because bits are cheap and easy to move, and there&#x27;s always an incentive to harness economies of scale. The problem is mono-cultures are brittle. Some amount of &quot;reinventing the wheel&quot; is just the cost of a healthy and diverse software ecosystem. The OA should be careful what he wishes for.
asdfman123大约 2 年前
Developers don’t like closed ecosystems for obvious reasons. But companies like them because they’re very profitable, if they can get enough users trapped in them.<p>Having an open ecosystem can often mean you have no moat around your business.
solarkraft大约 2 年前
Ecosystems interest me (&quot;how do I get my product&#x2F;feature adopted in a larger landscape?&quot;). The following are some observations everyone could make, yet I see some companies (Microsoft in particular) struggling with it, so maybe it&#x27;s not that obvious.<p>&gt; The lack of interest in Unimodules taught me that it’s not enough to come up with an opt-in common standard.<p>It&#x27;s a tough sell if it offers no immediate value to the developer. If there&#x27;s no immediate value for the user or a big push, they aren&#x27;t going to be asking for it either. This can turn into a vicious cycle Apple keeps avoiding and Microsoft keeps falling into.<p>&gt; Given it’s far too late to convince each framework to redesign their native module interfaces from the ground up for compatibility, it may be worth exploring a top-down approach instead. That is, producing tools to translate modules from one ecosystem to another “whether they like it or not”.<p>That&#x27;s the gold standard, IMO. Once you need people to do anything for your feature to work, your work becomes a lot harder. &quot;If everyone would adopt it you&#x27;d see the benefit!&quot; doesn&#x27;t convince many users OR developers. By removing the requirement for developer opt-in, you&#x27;re suddenly avoiding a huge part of the viscous cycle (no users because no devs, no devs because no users), which is a huge part of Apple&#x27;s ARM success and probably a good part of Microsoft&#x27;s ARM failure.
brookst大约 2 年前
Developers care about modularity, flexibility, and reusability.<p>Users care about unique value.<p>Vertical integration and differentiation lend themselves to building something unique and valuable.
samsquire大约 2 年前
What upsets me is the waste of effort building the same things again and again. I would like to reuse solutions to problems I solved and use them going forward.<p>Imagine if we were all building upon the state of the art at all times and upgrades were free and things don&#x27;t break between upgrades.
butterfi大约 2 年前
Good luck with that. Developers love creating frameworks and new ways of doing the same things. You might as well complain about how movies keep using the same plots.
评论 #35582881 未加载
评论 #35583319 未加载
ipsin大约 2 年前
Content streaming is one case where I wish,wish,wish they were non-closed ecosystems.<p>Make your offerings available via an API. Make the actual content stream with whatever DRM standards you (the &quot;platform&quot;) need to feel comfortable.<p>Let me wrap all my streaming services with a single platform, having decent search and ability for me to do automatic price arbitrage. Why rent on Netflix when it&#x27;s free this week on Hulu?<p>It could be so much better, but it&#x27;s not.
hammyhavoc大约 2 年前
People invoke corps when discussing this problem, but fail to realize that publicly traded stocks only care about monetary value; that&#x27;s why they&#x27;re there. Any notion of bettering humanity or doing something sensible in terms of software is purely secondary. They&#x27;re a business.<p>Is it any surprise that tech is the way it is with this in mind? Is it frustrating? Absolutely. Is it as expected? Yup.
rafark大约 2 年前
Huh? Apple and Android (google) are for profit companies and are literally competing against each other. One of the iPhone’s biggest selling points is iOS. Why does the author think Apple would want to share a single, unified interface with its competitor?<p>It sounds ideal in a developer POV, but this is not open source territory.
评论 #35582735 未加载
LinguaBrowse大约 2 年前
This short essay is a lament about how close we are to creating really good cross-platform solutions, but how we always fall short because of closing off our ecosystems to each other. I hope to spark a bit of conversation with this about how we can do better moving forwards!
评论 #35582741 未加载
spion大约 2 年前
Almost every single programming language ever invented has to reinvent more or less the same ecosystem of libraries from scratch. What is the best estimate of how many hours of work that is per language?
sfpotter大约 2 年前
Stop writing articles titled &quot;Stop Doing X&quot;.
评论 #35583540 未加载
thealchemistdev大约 2 年前
Whatever Jamie. (Nice blog name) Move out of the technician role and into either stake holder or owner, then run your mouth. ;)
emodendroket大约 2 年前
Like everything else you have to trade off some other properties to prioritize this sort of “openness.”
powera大约 2 年前
There is no such thing as an &quot;open ecosystem&quot;.<p>You can only choose between having your own closed ecosystem, or being part of someone else&#x27;s larger closed ecosystem.
评论 #35583500 未加载
znpy大约 2 年前
Qt is fairly open, I don’t get why the author doesn’t point at qt for a valid alternative.
评论 #35582176 未加载
评论 #35582249 未加载
评论 #35582080 未加载
评论 #35582701 未加载
photochemsyn大约 2 年前
The long-term solution seems to be to ditch iOS and Android on mobile devices entirely and replace them with fully featured operating systems based on Linux, e.g.<p><a href="https:&#x2F;&#x2F;itsfoss.com&#x2F;open-source-alternatives-android&#x2F;" rel="nofollow">https:&#x2F;&#x2F;itsfoss.com&#x2F;open-source-alternatives-android&#x2F;</a>
评论 #35582147 未加载
评论 #35581852 未加载
评论 #35582022 未加载
评论 #35582142 未加载