TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Bring Your Own Client

533 pointsby goranmoominover 4 years ago

66 comments

stupidcarover 4 years ago
The competitive advantages of owning both the application and the data are so high that don&#x27;t see widespread BYOC ever happening without government intervention.<p>I&#x27;d like to see an enforced separation in law between commercial application providers and storage providers. So, if someone writes an app like Google Docs, they <i>can&#x27;t</i> just store the data opaquely on their own cloud servers. They legally <i>have</i> to integrate with a separate storage provider. And that storage provider has an obligation to make my data accessible and manageable by me.<p>This wouldn&#x27;t be a panacea, but it at least makes it theoretically possible to write a replacement client for Google Docs that could be a drop-in replacement.
评论 #26359117 未加载
评论 #26359890 未加载
评论 #26356987 未加载
评论 #26358023 未加载
评论 #26356373 未加载
评论 #26358254 未加载
评论 #26356958 未加载
评论 #26357082 未加载
评论 #26367351 未加载
评论 #26356873 未加载
评论 #26356550 未加载
评论 #26359629 未加载
评论 #26356689 未加载
评论 #26358760 未加载
评论 #26361897 未加载
评论 #26356544 未加载
评论 #26359403 未加载
评论 #26356117 未加载
评论 #26357278 未加载
评论 #26363550 未加载
评论 #26356699 未加载
blfrover 4 years ago
This idea suffers from the same problem federation does. It&#x27;s harder to move a whole ecosystem. Makes it harder to innovate. Leads to centralized platforms outperforming these BYOC&#x2F;federated&#x2F;open options. Basically how Reddit replaced Usenet with upvotes and basic spam filtering.<p>There&#x27;s more on this from &#x27;moxie<p><a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=Nj3YFprqAr8" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=Nj3YFprqAr8</a><p><a href="https:&#x2F;&#x2F;signal.org&#x2F;blog&#x2F;the-ecosystem-is-moving&#x2F;" rel="nofollow">https:&#x2F;&#x2F;signal.org&#x2F;blog&#x2F;the-ecosystem-is-moving&#x2F;</a>
评论 #26356581 未加载
评论 #26356427 未加载
评论 #26357774 未加载
评论 #26356285 未加载
评论 #26356382 未加载
评论 #26356275 未加载
评论 #26355981 未加载
bombcarover 4 years ago
This strikes at something that people often WANT when they say &quot;text files are better than the registry&#x2F;binary formats&quot; - they want to easily bring their own tooling to bear.<p>Standard APIs let you do this - even if you have a &quot;binary format&quot; like MySQL or PostgreSQL (on disk) - nobody really complains about that because they have a defined API you can interact with.
评论 #26355958 未加载
评论 #26355957 未加载
评论 #26358039 未加载
poloteover 4 years ago
&gt; even if Google wanted to expose an API for editing Google Docs in third-party editors, it would probably be very challenging<p>It does, <a href="https:&#x2F;&#x2F;developers.google.com&#x2F;docs&#x2F;api&#x2F;reference&#x2F;rest&#x2F;v1&#x2F;documents" rel="nofollow">https:&#x2F;&#x2F;developers.google.com&#x2F;docs&#x2F;api&#x2F;reference&#x2F;rest&#x2F;v1&#x2F;doc...</a><p>The reality is that building an editor for text is easy. Building a rich text editor is faaaaaaar from being a simple thing
zomglingsover 4 years ago
The problem (currently) is that most people simply don&#x27;t care about being forced to use a particular client - as long as that client looks nice.<p>I say this with a lot of love for the idea. My company sells a collaborative knowledge base that supports Bringing Your Own Client. Out of the hundreds of users I have spoken to, only ONE has ever asked me if they could use their favorite markdown editor to access their knowledge base.<p>On the positive side of things, having the capability to bring your own client makes it really easy for us to support many different use cases. We just have to write those clients ourselves.
评论 #26357978 未加载
评论 #26357153 未加载
allenuover 4 years ago
Immutability and mutability of content, and expectations or conventions surrounding it, seems to play a large role in feasibility here. The successful examples listed are generally cases where content is immutable to the general audience (someone produces content and then publishes it to others) or the way content is mutable is &quot;understood&quot; by the participants. That is, text editors mutate content, but no one expects there to be multiple editors of a text file, and the convention of a file is understood and encapsulates the &quot;state&quot; of the data.<p>In the wishful cases listed, collaboration is the norm, so to make it BYOC, you&#x27;d have to expose core &quot;mutation&quot; API or else use a general convention that is understood across the board.<p>In my dream world, we&#x27;d be use CRDTs for data and the &quot;schema&quot; of the data for a given &quot;service&quot; (say something like Google Docs) is open. The data storage layer would be a commodity and you can swap in different providers as you see fit. Of course, there is no benefit to the creators of such services to do this, and I don&#x27;t think CRDTs are quite there yet with defining mutation efficiently with respect to multiple collaborators. However, from a data portability standpoint, it feels like the ideal to me.
eric4smithover 4 years ago
The main reason for using google docs is not it’s superlative editor... &#x2F;sarcasm<p>It’s the collaboration features. And no I don’t mean the multiple people typing the doc at the same time.<p>It’s the ability to quickly share a document with a set of people that you want.<p>Sure I use Vim every day, but without that git push and a trip to GitHub to invite collaborators I’m a man on a desert island waiting for that next weekly ferry.<p>Code editors and that ecosystem is good for code, but too slow for people who just want to share some recipes with their brother and not think about it too much.<p>Until we have some sharing infrastructure easy enough for a any client to sit on top of, it’s all a dream.
评论 #26359730 未加载
评论 #26356319 未加载
评论 #26365762 未加载
dnissleyover 4 years ago
I&#x27;ve got lots of small tweaks I&#x27;d love to incorporate into a Twitter client. Unfortunately, I think many of them would violate the developer TOS.<p>For example: hiding avatars completely or generating replacement avatars using the username to remove any chance of internal bias associated with an account&#x27;s avatar. Another one: hiding images by default and forcing you to click to expand&#x2F;open to see them (no previews). A lot of these ideas are intending to modify Twitter&#x27;s default salience landscape.<p>However disappointing it might be though that I can&#x27;t do this, I get it. These kinds of modifications could totally change the ways in which a user experiences Twitter, and how Twitter would be able to monetize those users. Simply forcing Twitter (via legislation) to allow BYOC doesn&#x27;t seem like a good idea because of this. It doesn&#x27;t seem right to force them to run a service with a reduced potential for monetization -- e.g. many clients could just not show any ads, which would totally remove Twitter&#x27;s ability to monetize at all.<p>An idea might be to charge users money in order to allow BYOC, so Twitter could focus on building out the core offering, which is just basically the public messaging substrate of the internet. But I&#x27;m not at all sure how well that would work out in practice.
评论 #26360776 未加载
评论 #26360506 未加载
评论 #26363678 未加载
评论 #26359518 未加载
jasodeover 4 years ago
<i>&gt;What would it look like to have a thriving ecosystem of third-party clients for Google Docs style word processing, which can all interoperate with each other, even supporting realtime collaboration?</i><p>Well, based on decades of history of other complex file formats such as pdf, zip, and MS Office formats of doc, docx, xls, xlsx, etc... it would be a buggy mess. It didn&#x27;t matter whether the format was reverse-engineered or an officially open specification.<p>The issue is that a plain text file used for programming code is <i>linear</i> from top to bottom and so the <i>low</i> complexity for universal editors is just parsing CR&#x2F;LF to interpret lines. (Yes, there can be extra complexity of syntax highlighting but the base level complexity of <i>opening the file for display</i> is still just parsing CR&#x2F;LF.)<p>The complexity is higher for pdf&#x2F;zip&#x2F;xls because a common theme is each have a <i>internal hashmap&#x2F;dictionary&#x2F;directory</i> that has byte pointers backwards and forwards to other parts of the file. And they have internal <i>hierarchies of data structures</i>. And changing from binary representation to XML such as Microsoft&#x27;s OOXML doesn&#x27;t change the base complexity which is why LibreOffice has constant bug reports from users unable to open their particular docx&#x2F;xlsx file.<p>When I collaborate with others in MS Word&#x2F;Excel, a best practice is to make sure <i>everybody is using the same version of MS Office</i>. If somebody is using MS Office 2007 while others are on Office 2013, a roundtrip save &amp; open between different versions will eventually corrupt the file or lose data. Even staying with just one vendor like MS can get unreliable. The wild west has lots of utilities&#x2F;libraries that write incorrect zip files and broken pdf files.<p><i>&gt;Some successful existing examples of client ecosystems built around open standards: [...] email clients </i><p>I&#x27;m not totally sold on this example. Yes, the open standard is SMTP for <i>network communication</i>... but there&#x27;s another aspect that isn&#x27;t standard: the on-disk file format for email archives. Microsoft Outlook uses binary PST files but Mozilla Thunderbird uses text-based MBOX files. But Mozilla&#x27;s MBOX is slightly different from other tools that use MBOX.
评论 #26371585 未加载
评论 #26356433 未加载
phren0logyover 4 years ago
I&#x27;m in medicine, and I desperately want this model for electronic health records.<p>The current state of lock-in has been effectively maintained by the entrenched players, and it&#x27;s really bad.
评论 #26357671 未加载
评论 #26357422 未加载
derefrover 4 years ago
Re: Notion, Trello, etc. — wouldn’t enabling interoperability on top of a presumably-free “open core”, completely commoditize these services? (As, for anything they offered on top of their open core, you could instead substitute a third-party service that does the same thing by operating against the service’s API.)<p>Which is to say — in a world where interoperability is a social norm or legal requirement, how would these services exist? (I would suspect they wouldn’t.) And, without them, would there be any money in advancing the state of the art in these verticals?<p>It’d be a lot like if there were a legal requirement for every drug to have a generic available from the start. Would there still be an incentive for drug research?
评论 #26358319 未加载
评论 #26358240 未加载
benjamirover 4 years ago
That&#x27;s why I hate forums without a proper E-mail gateway -- for me plain text E-Mail is the most essential API between humans. My mail client is the main reason and I really hate everyone changing something that disables using either my preferred editor.<p>Everytime some modern hype takes that from me I cannot stop thinking of goose fattening: forcefully stuffing it down the throat and not for good.
o_mover 4 years ago
I feel Reddit is another thing that has &quot;Bring your own client&quot;. I&#x27;m using the old design and Reddit Enhancement Suite to tweak it to whatever I want. Reddit also gives you everything as JSON if you just add &quot;.json&quot; behind any URL.
评论 #26356949 未加载
luplexover 4 years ago
It&#x27;s a situation like parents: There should be an incentive for a company to build a closed, innovative system. But once that system converges on features, and they reaped their rewards, it should be replaced by an open standard.<p>Instant messaging was fine, WhatsApp and Slack brought a lot of innovation and drove adoption, and I would argue it has gotten to a stable place where we should all use Matrix.<p>We need to figure out that process of standardization and opening up.
评论 #26356877 未加载
lewisjoeover 4 years ago
I work on a popular Google Docs alternative product in the market.<p>I gave some thoughts around this idea of experimenting a standard for collaborative rich text, that any client can implement. The problem though is that people want easy collaboration, more than the freedom to bring their own clients.<p>To simply put how can we deal with assigning people (for @mentions, comments, document ownership and content locking for a group of people) in such file formats? SaaS universe has a concept of a userbase with unique ids. So when a person is assigned&#x2F;mentioned the product knows who is relevant and what to do. This implies we need a universal userbase standard (which is already hugely complicated) and is adopted by the SaaS that your target users belong to.<p>This is one huge roadblock that I don&#x27;t see any practical solution for.
评论 #26356340 未加载
评论 #26358051 未加载
hirundoover 4 years ago
This applies well to the remote work environment. My employer makes no requirement about which editor or terminal or operating system or anything else we use to access their resources. The deliverables are (mostly code) files, and they just don&#x27;t care what we use to manipulate those. They don&#x27;t provide any hardware either.<p>What reads to some as worker exploitation is actually empowerment in practice.
throwaway316943over 4 years ago
I’m reading Thinking Forth at the moment and there’s a part in the description of Forth about how it decouples words from their parameters and return types by only allowing stack manipulation. This means that all words share a common interface and so they’re infinitely composable. The reason I started reading this book is due to learning how WebAssembly works which turns out to be quite similar to Forth. It got me thinking if there might be a way to make all code modules interoperable. Being able to compose an application or client out of many independent parts would be a dream come true.
评论 #26358584 未加载
评论 #26366166 未加载
megousover 4 years ago
BYOC for shopping online would be nice. Exchange formats for product aggregators sort of solve one part of the equation. But ordering is still an unsolved issue.<p>It shouldn&#x27;t be that hard to do. You may need maybe 5 endpoints. Get all product data for the whole stock, get individual product images, get order requirements (can include terms and conditions, desired information for the order, payment options, human contact info, etc.), post an order, get order status.<p>On this API you can easily create a fully featured 3rd party online shopping clients. Some shopping experiences these days are atrocious.<p>Some hugely popular platforms have product lists hidden like 4 screens bellow the fold, separated by tons of crap, that just gets in the way. Category selection is placed such, so that categories slide away, when you get to the product list after selecting one of the categories, and if you want to switch category, you just have to scroll all the way up again. No options for selecting alternative views, like in a file manager (large icons with a ton of detail, list view, etc.)<p>Each new eshop you have to learn how to navigate it, and collecting information about the ToC and payment&#x2F;delivery methods is a hassle.<p>Could be so much better if there was some simple web protocol for this, and it could be exposed in addition to existing website, too.<p>In the simplest implementation, everything but the POST could just be some static json files uploaded to the http server. And POST &#x2F;order could just be sending an e-mail to someone.
评论 #26366147 未加载
ndespresover 4 years ago
I think a major omission from the authors&#x27; wishlist of BYOC-capable applications is chat. Maybe in their case they are lucky enough to have a choice in the matter, but I think overall the walled gardens and closed APIs for the major chat programs is a shame. Every day that I have to use Microsoft Teams in an attempt to communicate with coworkers is an exercise in patience. Basic chat functionality should be open and interoperable.
评论 #26357720 未加载
vhandaover 4 years ago
disclaimer: Markdown Notes App Author<p>At least for simpler text documents, where formatting isn&#x27;t a big concern, markdown seems to be wining as the standard. Sure, each of these have added a few features on top of the markdown standard, but even those features are slowly getting quite standardized. [0][1][2][3][4][5][6]<p>[0] <a href="https:&#x2F;&#x2F;obsidian.md" rel="nofollow">https:&#x2F;&#x2F;obsidian.md</a><p>[1] <a href="https:&#x2F;&#x2F;zettlr.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;zettlr.com&#x2F;</a><p>[3] <a href="https:&#x2F;&#x2F;dendron.so&#x2F;" rel="nofollow">https:&#x2F;&#x2F;dendron.so&#x2F;</a><p>[4] <a href="https:&#x2F;&#x2F;foambubble.github.io&#x2F;foam&#x2F;" rel="nofollow">https:&#x2F;&#x2F;foambubble.github.io&#x2F;foam&#x2F;</a><p>[5] <a href="https:&#x2F;&#x2F;logseq.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;logseq.com&#x2F;</a><p>[6] <a href="https:&#x2F;&#x2F;gitjournal.io" rel="nofollow">https:&#x2F;&#x2F;gitjournal.io</a><p>I wish using Git as the VCS would also become more standardized, but we&#x27;re still lacking good clients which hide the complexity [6] (my project, fails at hiding all of the complexity, but hopefully it&#x27;ll get there)
greenie_beansover 4 years ago
I would like something like this but for banking logs. I got an alert from the bank about suspicious activity yesterday. The customer support rep couldn’t give me much information about it. I had to stop myself from asking if I could see the logs to determine myself whether it was a bug in their code or a real risk... I wondered if it was a bug because they had a similar buggy incident in the past.
ChrisMarshallNYover 4 years ago
Really, a good API is all that is necessary.<p>Also, maybe an SDK, but I am not particularly enthused by some of the SDKs I encounter, these days.<p>If a service can be exposed by a good, basic API that doesn&#x27;t require (but also affords) an SDK, then this allows development of connectors. Many client packages, these days, are written to allow connectors to be developed.
评论 #26357319 未加载
评论 #26356921 未加载
bitwizeover 4 years ago
There is a company called EditShare whose primary stock in trade is (or was, times do change) digital video server appliances. AVID sold such a thing, but it requires AVID software to work... and it turns out that film editors are about as persnickety about their choice of NLE software as programmers are about their text editor choice. So Alice may favor AVID, Bob likes Final Cut, and Claire uses Adobe Premiere. All three are competent editors and the director wants them all on the project. By using standard file sharing protocols like AppleTalk and SMB, the EditShare server lets them work on the same footage.
rakooover 4 years ago
I don&#x27;t see Google Drive ever providing an API for bringing your own client; it will probably have to be from the other side.<p>We already have OT and CRDTs for concurrently defining changes from each user and a way to merge them. There is also the Braid spec (<a href="https:&#x2F;&#x2F;datatracker.ietf.org&#x2F;doc&#x2F;html&#x2F;draft-toomim-httpbis-braid-http#section-4" rel="nofollow">https:&#x2F;&#x2F;datatracker.ietf.org&#x2F;doc&#x2F;html&#x2F;draft-toomim-httpbis-b...</a>) attempting to standardize state synchronization on top of which one can bring any client
评论 #26356746 未加载
评论 #26357241 未加载
hanspagelover 4 years ago
Great read! Just wanted to chime in and say I’m working on a collaborative editing backend [1] based on Y.js, which already makes some of the things you write about possible.<p>For example interop between different editors, like CodeMirror and Monaco. And thanks to Y.js, the server helps with syncing, but isn’t the single source of truth anymore. It’s more like Git, where every copy has all changes.<p>I really hope we all can leave the cloud behind soon.<p>[1] <a href="https:&#x2F;&#x2F;hocuspocus.dev" rel="nofollow">https:&#x2F;&#x2F;hocuspocus.dev</a>
groseover 4 years ago
I went with the BYOC route for my current side project: <a href="https:&#x2F;&#x2F;inter.tube" rel="nofollow">https:&#x2F;&#x2F;inter.tube</a><p>It’s a music locker service with a custom web client. Instead of writing my own native app I implemented the Subsonic protocol: <a href="http:&#x2F;&#x2F;www.subsonic.org&#x2F;pages&#x2F;api.jsp" rel="nofollow">http:&#x2F;&#x2F;www.subsonic.org&#x2F;pages&#x2F;api.jsp</a><p>It’s awesome to have a polished native app for “free” (eg. play:Sub on iOS is really nice) but it’s such an underspecified and loose spec that implementing it was a huge pain in the ass. For example, clients will choke on results missing values that are specified to be optional in the spec. The spec imposes integer offsets for pagination but my database wants string continuation tokens. It’s specified as XML but there’s an option to make it JSON with zero information on how to deal with discrepancies. Some clients use GET, some POST, some mangle the URL or capitalize random paths. I just had to reverse engineer pre-existing servers to figure out what clients can handle and there’s still a few clients that are mysteriously broken. I’m going to have to test as many as possible and create a list of recommended ones.<p>I’m happy I went with BYOC but I highly recommend to plan for it from the start so you can deal with the protocol’s weaknesses sooner than later.
评论 #26362152 未加载
w0de0over 4 years ago
Isn’t this just a reinvention of the idea of Open Standards?<p>The fundamental problem is not that no one has formalized the idea, but that the baseline incentives for commercial software do not include optimization for interoperability.<p>For that we need standards bodies or other regulation - RFCs and the like. And, hacker news, we need line engineers to recognize when their produce is suboptimal by these standards, and why.
markandrewjover 4 years ago
This isn&#x27;t to detract from what the author has said, but Google Docs does have a public API now. I wanted to mention this because the public API is fairly new, and people may not know about it. I am not sure if the API is rich enough to achieve what the author is describing though. It&#x27;s also not built on any kind of standard, like email, or other examples that are described.
folexover 4 years ago
Background gradient makes me dizzy after reading a single paragraph
评论 #26357264 未加载
godotover 4 years ago
Interesting premise, but some of the examples given as BYOC wishlist is a little weird to me. Google doc (the main example) makes sense, sure.<p>With others like Notion -- I recently started using Notion at a personal level and I feel like much of the draw about Notion is basically the UI (client). I don&#x27;t use it to publish public pages or anything, only private notes. Most of its usefulness to me comes down to it having a really nice client and it syncs between desktop&#x2F;mobile&#x2F;etc. I don&#x27;t know what Notion would be without the built in client. Simply a set of markdown files?<p>Other examples like Trello &#x2F; Asana seem to already have solutions. They offer APIs, and while I haven&#x27;t worked with them to know them extensively, my understanding is you can do basic CRUD operations on tickets. You could possibly build your own clients there.
评论 #26363697 未加载
pbreitover 4 years ago
Unirest is the BYOC that I was hoping would get traction: <a href="https:&#x2F;&#x2F;github.com&#x2F;kong?q=unirest" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;kong?q=unirest</a><p>I don&#x27;t understand why each API needs it&#x27;s own SDK. Or even why developers use SDKs instead of just calling the RESTful endpoints directly.
评论 #26359143 未加载
评论 #26358302 未加载
评论 #26358273 未加载
teekertover 4 years ago
Nice thoughts, now please think of some nice pro &quot;bring your own OS&quot; arguments I can make towards my IT department ;)<p>Regarding BYOC, I guess Git is where it is at right now, not? Allthough I switch clients for my personal note-taking every now and the which works well with NextCloud syncing of MD files.
nippooover 4 years ago
For the &quot;todo list&quot; item: check out Todo.txt and any number of the clients that use the same, human-readable&#x2F;editable text-based format. I really enjoy being able to choose the client I want on my Mac, iPad and Android phone while keeping the same todo list file...
noir_lordover 4 years ago
Small note: Trello has an <i>excellent</i> API - it is my goto example of a pleasant API to work with as an end user.<p>That means you can &quot;bring your own client&quot;, I have a &quot;todo today&quot; list that I pull via the API and display via conky right on my desktop.
评论 #26358601 未加载
RcouF1uZ4gsCover 4 years ago
&gt;Today we generally think about BYOC at the “app” level. But can we go finer-grained than that, picking individual interface elements?<p>Maybe will will end up re-inventing OLE from the 1990&#x27;s for the web. In OLE 2, there was a standard OLE Compound Document file storage API&#x2F;format. Different apps could all work with different parts of a document. You could even change which app you wanted to handle a certain type of feature. It was complicated, but when it worked, it was pretty neat. This was done during the time when most people had maybe 4-8MB of RAM. With much more powerful CPUs and vast amounts of RAM, we could probably come up with something even better.
SnowProblemover 4 years ago
There is an app called Twetch which is basically Twitter on the blockchain with money. Recently, I wanted to share someone&#x27;s feed to a friend, but Twetch requires you to login, and that friend didn&#x27;t have an account. I then remembered a third-party app called bitsurf.network that essentially served this role, and sent him that instead. Similarly, before Twetch had its search feature, a random developer had built one, because the data was available. So long as you are OK with limited privacy, these are pretty magical experiences compared to the status quo. I wonder if the incentives will allow it to last.
asimover 4 years ago
We had standardisation at the protocol level for the internet which let us build services on top, but now we&#x27;re looking for the same at the app level. HTTP was meant for web pages, we never created anything for Apps and Services. What that new standard is going to look like, I have no idea, gRPC does well to define the APIs and so we use it across dozens of services here <a href="https:&#x2F;&#x2F;github.com&#x2F;micro&#x2F;services" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;micro&#x2F;services</a>. Curious to hear what others think will happen.
评论 #26358905 未加载
mandliyaover 4 years ago
I admire the thought here however as author himself pointed out this is an innovation killer in some way. I think then we need to separate what can be shipped with universal BYOC and what can’t. Any new innovation is build up on existing features. Extending it to heterogeneous clients will be neither cost effective nor innovation friendly. I work for MS office and shipping the same feature on online client vs win32 apps takes 1-2 quarter and sometime whole rewrite.
uytover 4 years ago
I think no one wants to go through the work of creating a full featured client. What most people want is just adhoc customizability.<p>For this reason, the web is great if you know how to code. Most sites are pretty easy to reverse-engineer so you can add whatever feature you want via extensions.<p>For example I do a lot of simple stuff with greasemonkey scripts like making stuff sortable or filterable, creating a bulk download and rename button, or just customizing appearances&#x2F;css.
harhaover 4 years ago
Another one is storing data, Apple for instance can easily lock in users with iCloud because it is so much more complicated keeping all devices and apps in sync without, with iCloud you have one login for passwords, browser, files, etc.<p>In theory a shared folder with clients that handle multiple devices&#x2F;operating systems in their dot-files well would be able to replace that, but with most phones in a closed ecosystem, I don&#x27;t see that happening.
z0rover 4 years ago
I&#x27;d love to be able to pay a music streaming service a monthly fee to play their catalog without having to use any of their first party software.
anthkover 4 years ago
On Google Docs, there were some CLI tools that today are deprecated.<p>EDIT: not yet:<p><a href="https:&#x2F;&#x2F;coderwall.com&#x2F;p&#x2F;elfkaq&#x2F;editing-google-docs-with-vim" rel="nofollow">https:&#x2F;&#x2F;coderwall.com&#x2F;p&#x2F;elfkaq&#x2F;editing-google-docs-with-vim</a><p>The best setup would be:<p>Wordgrinder&#x2F;nvi+py3-markdown for Google Docs.<p>Sc-IM+GNUplot opening Google Sheets.<p>MagicPoint generating HTML files usable for Google Slides.<p>Rclone for Drive.
pixelkritzelover 4 years ago
Prosemirror might be a good starting point for a headless collaborative rich text environment. It manages rich texts state and is collaborative out of the box.<p><a href="https:&#x2F;&#x2F;prosemirror.net&#x2F;examples&#x2F;collab&#x2F;#edit-Example" rel="nofollow">https:&#x2F;&#x2F;prosemirror.net&#x2F;examples&#x2F;collab&#x2F;#edit-Example</a>
pvorbover 4 years ago
Not having to ship your own client to every platform is the biggest selling point of web apps (or cloud apps). The border between app and client shifted to more low-level, but also more capable interfaces: HTTP, HTML, CSS, JS rather than single-purpose file formats like DOCX or PSD.
indymikeover 4 years ago
Most of these closed systems exist because of gaps in the open alternatives, and those gaps may be be difficult to close. For example, an open client for Google docs, which works fundamentally differently than say, a closed-source word processor that was written in the 90s.
jimbokunover 4 years ago
&gt; Today we generally think about BYOC at the “app” level. But can we go finer-grained than that, picking individual interface elements?<p>Reminds me of this:<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;OpenDoc" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;OpenDoc</a>
评论 #26357728 未加载
GameOfKnowingover 4 years ago
This article is basically describing the UNIX philosophy from a user-facing perspective, right?
dgudkovover 4 years ago
Another great example of BYOC is SQL. Even despite popular relational databases have slightly different SQL dialects, it&#x27;s still possible to use different clients to query&#x2F;view&#x2F;design&#x2F;update a relational database.
marmadaover 4 years ago
The problem with BYOC client for Google docs &#x2F; Figma is that the underlying data isn&#x27;t simple plaintext, it&#x27;s too complex, and the protocol requires things like operational transforms, so BYOC wouldn&#x27;t make sense.
评论 #26359998 未加载
TimJRobinsonover 4 years ago
BYOC is why I&#x27;m so excited about decentralized social media.<p>I hate how we have to put up with whatever UI &#x2F; algorithms each site gives us. Why can&#x27;t we have access to the underlying data and choose how we wish to consume it?
alexf95over 4 years ago
What about options of importing and exporting files? For example Google Docs lets download your file in another format making it easy to open in another client e.g. MS Word. Wouldn&#x27;t that be somewhat of a BYOC approach.
bo3OUover 4 years ago
This reminds me of the solid project from Tim Berners-lee <a href="https:&#x2F;&#x2F;solid.mit.edu&#x2F;" rel="nofollow">https:&#x2F;&#x2F;solid.mit.edu&#x2F;</a> which i find very interesting
imwillofficialover 4 years ago
This article was pleasant to read. Well reasoned, well delivered, and timely.
rullelitoover 4 years ago
It does not suprise me that it&#x27;s a kid proposing this. They probably live and breathe open source and still dream of a free and open world, where companies prioritize the user far above over profit.
评论 #26357754 未加载
Andrew_nenakhovover 4 years ago
All I want from office software is a clone of Google Docs that would be open source, self hosted, allow concurrent file editing and would use OpenDocument file standard for storing files.<p>Humanity really needs that.
awinter-pyover 4 years ago
msft&#x27;s docx is only a documented open format bc the european union sued them in like 07 for antitrust<p>fight for open file formats for common things
Fnoordover 4 years ago
Open network and interface protocols. This was Sun&#x27;s argument before they opened up Solaris and Java.
EGregover 4 years ago
<i>It seems like local-first software is a good foundation for promoting Bring Your Own Client more broadly.</i><p>It also goes hand in hand with end-to-end encryption. This sounds a lot like the Case I made for building Client-First web apps, I just posted it on HN:<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26356391" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=26356391</a>
intrasightover 4 years ago
I&#x27;m a developer. Pretty much everything is a text file. Text files get edited with Emacs :)
ghoshbishakhover 4 years ago
I trust someone from the HN community will get started working on some of these :)
ilakshover 4 years ago
So maybe something like CRDT or OT on top of libp2p?<p>Does something like that exist already?
评论 #26357896 未加载
crails124over 4 years ago
I agree that you should choose your own clients. I think the examples provided beg a different question as to why it&#x27;s not like this today?<p>PDF and DocX files are open specifications that provide for extension. Nothing is stopping anyone from building clients around these formats with the features listed in the article. PDF is definitely more common as most programming languages have comprehensive libraries to work with it.<p>The path forward would to be build the features you want and publish the extension specifications for others to use. Perhaps the interesting question however isn&#x27;t technical possibility but if a market exists for it? Email clients were very widespread over a decade ago but have consolidated to 3-4 over the years. Hey.com has been the first big new email clients that I am aware of. I&#x27;m curious if it can prove there is big business in improving on existing, standardized specifications.
madeofpalkover 4 years ago
Git does not have colaboration tools. It&#x27;s very much a &quot;work in a silo for a period of time and then evtually figure out how to mash these things together&quot; approach.
评论 #26356068 未加载
评论 #26355942 未加载
评论 #26357828 未加载
abbiyaover 4 years ago
I want to add Music services to the list
ameliusover 4 years ago
I want BYOC for consuming social media.
vladmkover 4 years ago
To work day?