Hacker News new | ask | show | jobs
by ineptech 1719 days ago
This seems like a pretty shallow take. Urbit is (or aspires to be) a platform for server-side use cases; complaining that it's not decentralized is kind of off the mark. But I (more bullish on urbit than 95% of HN, I suspect) agree with this bit:

> the deepest problem with Urbit: it’s light on actual substance.

At heart, urbit is a platform with no compelling software for it yet, and hence subject to the chicken-and-egg problem that was on the HN front page again today[0]. And urbit is famously hard to develop for, which ought to be enough to spell its doom. But I still check in on it every year or so, because it keeps on plugging away, and what it does have (exactly-once messaging, built-in crypto, and a goofy-but-it-works identity/networking system that allows you to do away with app level authentication) is kind of nifty and it's still not totally clear that it won't go somewhere eventually.

0: https://www.joelonsoftware.com/2000/05/24/strategy-letter-ii...

2 comments

In fact, since I'm in my cups and I've got a head of steam, and since I know urbit people will read this no matter how fast it scrolls off the front page, I'll make my pitch for the use case that I wish they'd work on: plain old sharing a file with people, a la social media.

Why do so many people use Facebook? Because they want to share a file with a friend. But to do that well requires owning and running a server, and some way of authenticating people, both of which are hard. So mostly people just farm the "serve files to certain people" task out to companies like FB to handle.

Well, Urbit is a personal server, a thing you use to do server-based stuff for a person. This should be exactly in its wheelhouse. And I think it's fair to say that in this case at least, it delivers; "serve files to certain people" is indeed trivial on urbit. Any urbit app can authenticate a user and serve a file to them natively, thanks to the afforementioned goofy networking scheme[0]. And that's all I want it for: a sort of rudimentary FB clone (at base, let's say a "upload a file to your urbit and configure it to be automatically shared with certain people" widget, and a "scrolling feed of files that other urbit users have elected to share with you" widget) to use it to share files with people, without either becoming a competent sysadmin nor involving an enormous ad corporation.

Such an app would be, if not trivial, I think at least straightforward. If you eschew stuff like comments and moderation, the backend would be like 20 lines of hoon. I admit, it would only work with other urbit users, and hence be kind of useless to people who don't know anyone on urbit. I know that's the conventional wisdom: no one will build good software on a platform until there are users there, so build a community. And that's certainly what they have been trying to do. But I don't want to join a community, I kind of have one. You're much more likely to get me to convince my friends to try a new app than to get me to make new friends.

0: Urbit's goofy networking/auth scheme in one sentence: "What if there was an exact 1:1 mapping between valid IP addresses and valid usernames, and it was stored on the ethereum ledger, and they're expensive enough be unprofitable to troll/spam from."

> Why do so many people use Facebook? Because they want to share a file with a friend.

very confused by this read... what am I missing?

Well, you know how client/server stuff works, right? The whole "client/server" paradigm exists because it's necessary; some use cases can't be done well just from client software. Sharing a file is such a use case. Sending a file isn't - you can just email something from your phone - but sharing or making a file available is hard for various reasons (e.g. client software isn't usually 24/7 available, it is often behind a NAT and difficult to route to, etc).

So, we need a server to share a file. There's a lot of ways to do that. On one end of the spectrum, you can do it all yourself: buy a computer, put it in your basement, connect it to the internet, install a webserver, move the file to it, write an index.html file pointing to it, write a .htaccess file to limit who can access it, and send the credentials to your friends and family. On the other end of the spectrum, you can pay someone else to do all of it by signing up for Facebook. In between are a lot of options. Urbit is one of those options, and (obviously) the people who make it are trying to make it the best option for at least somebody. What I was trying to do in this drunken rant, er, crowd-sourced user story, was to lay out how it might be implemented, in order to take advantage of urbit's strengths.

That comment is not an explanation of what urbit is or what its strengths are; it was written towards people who already know, and so glosses over that. I have a near-done "what is urbit and what are its major pros and cons" blog post I should really finish up someday, but this ain't it...

sorry, I’m asking specifically about the assertion that most people use Facebook to share files, what evidence is there for that?
Um. Go to Facebook. Type in some text or select a photo and hit "Share". You have just shared a file with your friends.

(I'm not being snarky, but it seems you misunderstood me and I'm not sure how. Perhaps you thought I meant "share a file" like pirating movies or something? I just meant in the general sense that anything on a computer is a file, and sharing means letting someone else access it, which is sort of the core feature of any social media site.)

Yes I think the misunderstanding is that sharing a status update on Facebook constitutes sharing a file; I assumed you meant "sharing a file" like "I have a PDF I need to get to someone" and just could not imagine a world in which that constituted the majority of Facebook usage. :)

If you had said "creating an entry in a database" instead of "sharing a file" I don't think I would have had the same misunderstanding.

Sharing a file also has different connotations from uploading an image; when I upload an image to Instagram I am not doing it to share the raw file with someone so they can download it (though they certainly can if they use a browser extension to do so); I'm sharing it because that's where the people I know can see and interact with it.

Send Grandma pics of grandchild
Agreed. Urbit has the feel of a project that is over-architected but under-engineered.