Urbit in 2017 - <AUTHOR> https://urbit.org/blog/2017.1-update/ <comment><USER2> I appreciate the design notes, but there is a strange dissonance in the concept.

The text reads: _" Urbit has to be just as usable as any widely used app in 2017. For a personal server, the usability bar can't be Unix."_

Just above this, there is a screenshot of a browser displaying the following: _" OK, ~ravmel-ropdyl is coming online. Ping 734ms, DNS Waiting, :talk Waiting"_

...which, well, looks exactly like '70s Unix usability.

I also find it odd that Urbit wants to conquer the world, yet the design is so attached to entering ASCII sequences on a command line. This severely limits the platform's international usability. Their programming language's syntax page even proclaims "To make ASCII great again, we've mapped each punctuation glyph to a syllable": [https://urbit.org/docs/hoon/syntax/#-glyphs-and- characters](https://urbit.org/docs/hoon/syntax/#-glyphs-and-characters)

The problem with using all these ASCII punctuation marks is that many of them are hard or even impossible to type on various international keyboards. It doesn't seem like non-English users were ever considered when the decision was made to "make ASCII great again".

On a more conceptual level, marrying a supposed futuristic redesign of the Internet to a 1960s character set just seems off. Today's computing increasingly happens on touchscreens, but Urbit's I/O model is happy to settle for the ancient paradigms of teletype terminal emulation and ASCII streams.

The whole thing has a weird retro-futuristic vibe to it, like it's more of an art project about a computer system that the Mad Men would have used to update their websites in some alternate reality.

<comment><USER3> I really don't think that worrying about what symbols Hoon uses is productive. There are tons of worse things to say about Urbit than "once it becomes bigger than C, how will Japanese people code it"

Arabic and Japanese people have been using C and Javascript just fine, so I'm not sure even in the hypothetical future it would be a problem. And if it is - Hoon has keyword style now ("|- a/@ (add 5 a)" can be written (":gate a/@ (add a 5)"), or barring that the language rune parser can be replaced with a simple gsub in the source.

Hoons runes are really just names for which AST node it is, so it would be trivial to make a smartphone Hoon editor that works like Scratch or Lisp instead of textual.

Hell, Hoon compiles down to Nock, so you don't even have to use it, just write another language that targets Nock instead.

<comment><USER4> Japanese is actually not the best example of "bracket pain" \- in order to type in Latin script at all, you need to shift completely away from "native" input, as the various methods for typing kanji and kana tend to be some variant of lookup (via eg pronunciation) - select (like tab completing identifiers).

Thus, it makes a lot of sense to simply switch input modes and maybe even keyboard layouts.

Now, for something as close to English as Norwegian - you have a rather different touch layout due to having 29 letters. This is actually one reason I like python - less gymnastics due to less curly brackets.

Another problem with using ascii, is that now even code comments need to be in English character set in practice. Never mind function names etc.

Utf-8 by default is actually great in the programming languages that support it.

Don't mistake "have been tolerating absurd limitations of C" with "greatly enjoying the backward limitations of ASCII".

<comment><USER3> I'd actually have to check if Urbit supports utf8 code. I want to say yes, since the compiler internals technically can, but it's probably not hooked up correctly.

Are there any languages do this right? Even if identifiers can be utf8, they still have English reserved words. Maybe something like Forth, where the entire language is redefinable. Or, I dunno, Smalltalk.

<comment> yjftsjthsd-h There's always APL!

</comment></comment></comment></comment></comment><comment><USER5> For a toy project of mine, I needed a way to encode small programs to send around. I originally wrote a interpreter for the MIPS instruction set, but then I encountered Urbit's functional machine language, "nock", and switched right over to that. It ended up being a much much simpler interpreter with more compact program encodings and a lot fewer arbitrary-feeling decisions involved. Nock also turns out to be a really straightforward compile target for lisp-like languages. Nock is confusing to approach, but it is really very clever. I would recommend learning it if you are in the mood for a puzzle!

Nock: [https://github.com/cgyarvin/urbit/blob/master/doc/book/1-noc...](https://github.com/cgyarvin/urbit/blob/master/doc/book/1-nock.markdown) My project's nock VM: [https://github.com/PeterReid/hoplight/tree/master/vm](https://github.com/PeterReid/hoplight/tree/master/vm)

<comment><USER3> Neat! Are you compiling Hoon for the programs, or did you make your own language that targets it? How are you handling infinite loops or calling potentially unsandboxed jets? Reading over your code, it looks like you expanded Nock a bit with opcodes for e.g. hashing. instead of having a base stdlib context you are calling against with a jetted gate for it. Any reason?

The problem with Nock as an embedded language is that you need a certain critical mass of jets before it's usable, unfortunately. How has that worked out for you?

I thought that Nock would be a cool language for this type of stuff, or replacing Bitcoins/Etherums embedded stack languages due to the purely functional, its-just-reduction aspect.

<comment><USER6> This is one of the reasons I included all arithmetic operations in ax:

[https://github.com/mnemnion/ax/blob/master/ax%20spec.md](https://github.com/mnemnion/ax/blob/master/ax%20spec.md)

Also because once you say 'natural number', the arithmetic operations are already in scope, so to speak.

<comment><USER3> I get that Nock is half philosophical perfection, so it makes sense to me. All those operations can be trivially defined without any cost, but they muck up the spec (Does your language gzip to 340 bytes? Can I wear it on a t-shirt?).

Not that there's anything wrong with defining a language that is usable out of the box, but at the same time muh intellectual purity.

<comment><USER6> You might have to use the back of a t-shirt.

A spec which includes the term 'natural numbers' but not subtraction might even be argued to be incomplete, rather than minimal. Ymmv.

<comment><USER3> You can synthesize subtraction from recursion and addition. Peano numbers really only have successor, but is still a valid encoding.

Really, you aren't wrong. But then how would we be able to advertise how stupid Nock is for those sweet internet points? It can't even do subtraction! Come see, tickets one dollar!

Addition is kinda the prime operation that is needed - everything else can be dissolved into it, but without it the jet system doesn't hold up because your language can't really /do/ anything. If you didn't require jets to be transparent to the reduction, you could just have /all/ operations be jets and not even pretend Nock was useful without them.

<comment><USER7> Check out [https://github.com/tibru/tibru](https://github.com/tibru/tibru) No primitive arithmetic operations at all, no need for jets but the same time complexity as arithmetic in C just with a higher constant factor.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> It's a wonderful luxury to craft such a sufficiently vast work of nonsense that no one possessed of sufficient reason to craft an informed critique will ever feel it worthwhile to invest the time to do so...one can putter away indefinitely in such a self-crafted safe space

<comment><USER9> Must all creation be judged? Subject to code review? Criticized and torn apart? Next, let us ban the child's doodle, for it is a self-crafted safe space, free of criticism and the harshness of reality.

<comment><USER10> Yes. Yes. Yes. And Exalted, Loved, and Adored. Critique is not the same as banning. The Child's doodle is always critiqued, which is why we say "Good Job!" to the child who shows us the doodle. The doodle is not created in a self-crafted safe space by any measure.

Creative works are not delicate embers that need to be protected from the elements. They are divine sparks, each one illuminating the darkness. That light is meaningless without eyes to see it.

</comment></comment></comment><comment><USER11> I remain unsure whether Urbit is a real thing or simply an incredibly long- running satire. Their missives do nothing to clarify this point.

<comment><USER12> Well, you can run it and it does things, which effectively puts the question of "real" or "satire" into our hands. At this point, it is what we make of it.

<comment><USER13> You can use an onion article as a force to motivate activism, unleashing a very real effect upon the world. But it remains satire.

Your post is more about real vs. not real, while I think the question was supposed to be satire vs. not satire.

<comment><USER14> The parent post from jff was explicitly framed as "real vs satire" and not as "satire vs not satire".

<comment><USER13> It used the word "real", but I'm pretty sure it was a synonym for "not satire", not the more philosophical meaning that callahad took. It's very common to use the word "real" that way, for something that isn't just extant to demonstrate an idea.

</comment></comment></comment></comment></comment><comment><USER15> Reading urbit, I feel like I've stumbled upon some ancient alien artifact, that no one has any idea what its purpose is.

<comment><USER16> the 'alien artifact' characterization is one used by popehat in his explanation of urbit from a few years ago, which i recommend to those curious as to what exactly urbit is: [https://www.popehat.com/2013/12/06/nock-hoon- etc-for-non-vul...](https://www.popehat.com/2013/12/06/nock-hoon-etc-for-non- vulcans-why-urbit-matters/)

<comment><USER17> That's ClarkHat, _not_ PopeHat.

<comment><USER16> aha! apologies

</comment></comment></comment></comment><comment><USER18> ...still no "Urbit for mere mortals guide" or something like this?

Or even a "how to do X with Urbit" where X could be anything.

Sorry, but no matter how great the ideas, until they can show an explanation _anyone_ can understand it's all worthless. If you try hard enough you can explain block-chain and bitcoin and ethereum to a poet or painter or politician. Won't be easy, but you'll get somewhere.

Whereas their:

> If Bitcoin is money and Ethereum is law, Urbit is land.

...makes absolutely no sense whatsover to anyone, despite the plain words used. What's the correspondence, analogy, what abstracts what, what does what?! No place for your mind to even start chewing this. With this you can't even explain Urbit to a mathematician or to a philosopher... let alone to Joe Average or Frank Underwood.

<comment><USER19> Bitcoin is digitally manages money, ethereum digitally manages laws (in the form of autonomous contracts, in the form of code is law) and urbit digitally manages real estate (in the form of hierarchical address space).

My understanding of Urbit is that its trying to solve the problem of identity management, while maintaining that all data begins with you, while using ie we give our information to facebook, and facebook is free to use that information as it wishes (including modifying it, or deleting it). Facebook thus becomes the source if truth. Ideally, the control structure should be inverted; our machine is the source of truth, and facebook gets to read from us when we let it. And since we're the source of truth, there's no issue with sharing that data to anyone else (ie google).

This is of course what we have when dealing with desktop applications reading from our personal files; vim and sublime can be used interchangeably because our files are ours, and we always have access to it. Use google apps, and you get access to your text file only when google chooses to let you have it. If they refuse to give it back to you in a format recognizable by anyone else, then, well, you're fucked. But if we choose the format, and google must follow..

The idea, as they express it, that using a cloud service a n:1 deal; many users on a single app. Urbit tries to provide the inverse, 1:n. Many apps working solely for you.

After that is a bunch of interesting implementation details; a purely functional os, language; the pretense that multiple servers are one unified machine, the pronouncable base-256 encoding, the astronomy-naming system for address space, the political governance of Urbit as a network, etc.

</comment></comment><comment><USER20> Yarvin's having a laugh at all of you.

Early in the article:

> What is an app, anyway? It's _shared computing_. Everyone's data is one data > structure, in one program, on one server, owned by one corporation.

This is a callout to the Nazi slogan Ein Volk, ein Reich, ein Führer: [https://en.wikipedia.org/wiki/F%C3%BChrer#Ein_Volk.2C_ein_Re...](https://en.wikipedia.org/wiki/F%C3%BChrer#Ein_Volk.2C_ein_Reich.2C_ein_F.C3.BChrer)

And then the only other time "shared computing" appears in the document:

> To paraphrase Walter Sobchak: say what you want about the tenets of shared > computing, but at least it's an ethos.

In the movie _The Big Lebowski_ , the protagonists are harassed by by nihilists that the sort-of militantly Jewish Walter initially assumes are Nazis. When it finally gets through to him, he says, stunned, "Say what you want about the tenets of National Socialism, at least it's an ethos."

Yarvin is a deliberate, meticulous writer who prides himself on his references. This is not a coincidence, this is a white supremacist laughing at programmers not recognizing that he's calling competing software Nazis. Well, I happen to be reading up on Yavin's buddies[0] and I understood that reference[1].

[0]: [https://www.amazon.com/They-Thought-Were-Free- Germans/dp/022...](https://www.amazon.com/They-Thought-Were-Free- Germans/dp/0226511928) [1]: [https://www.youtube.com/watch?v=YIp-0V6YKfQ](https://www.youtube.com/watch?v=YIp-0V6YKfQ)

He's laughing at you because he knows the technical and political are inseparable, and the longer you think so the longer he gets to use you.

</comment><comment><USER21> How is this different from many other approaches like Sandstorm, or any other effort to "decentralize the web" by giving people their own servers?

I'm asking in terms of actual benefit it provides, not the technical part. I think at this point it's pretty clear that these efforts have failed due to lack of traction in that department (not enough people care about "owning their own server" or "controlling their own destiny")

<comment><USER3> It provides an application framework and reinvention of the world to have decentralized apps work, instead of just providing packaging apps like Sandstorm.

Urbit has an identity system with limited space to prevent Sybil attacks. The network pretends to expose exactly-once networking that Just Werks so that apps don't have to worry about it. All apps are purely functional state machines to make it easier to handle them and transparently upgrade them from code updates. Sending RPC messages so your own apps I exactly the same as sending them to remote hosts, the same with reading files, with peer discovery happening for you by the kernel.

<comment><USER21> This doesn't answer my question. In fact, it's the opposite of what i asked. I said:

> I'm asking in terms of actual benefit it provides, not the technical part. I > think at this point it's pretty clear that these efforts have failed due to > lack of traction in that department (not enough people care about "owning > their own server" or "controlling their own destiny")

<comment><USER3> I'm not really sure what else to say, then. Can any project with similar ideas answer anything other than "no, nothing different"? The idea for all the different projects is to make self-hosting sufficiently easy and usable, just different ways to come about it. You could ask the same thing about IPFS or even Bitcoin, and the disregard it when you don't get a yes.

<comment><USER21> Bitcoin does have a use case--you can buy drugs with it. I'm not going to judge whether this is moral or not, but the point is it's serving a previously unmet need. There have been tons of attempts at cryptocurrency before Bitcoin, but Bitcoin came and it just worked to serve this purpose. And it enabled whole new type of transactions online. Currently it's definitely not mainstream currency but at least it has a clear set of customers from which they can expand.

Which means, it's not like Bitcoin invented a non existing demand. It already existed, and Bitcoin came and served the previously unmet demand.

My question was whether this urbit technology is something like Bitcoin where it serves a previously unmet (AND significant) demand. All previous attempts at this approach failed NOT because the technology was bad but because not enough people used them, which is different from Bitcoin.

<comment><USER22> Urbit is a network where you can, by default, trust the other party you're communicating with. It does this by making identities hierarchically controlled; if you behave badly, the rest of the network will blacklist you and your master. Thus, your master has a strong incentive to police your behavior.

tl;dr; it should be a spam free network.

Note that this is already a mechanism used in the public stock markets; your broker polices your behavior because if you screw up, the broker is on the hook for your losses, and the clearinghouse is on the line for the broker's losses.

</comment></comment></comment></comment></comment></comment><comment><USER23> A couple thoughts from an early backer who really, really wants Urbit to succeed (and fears it won't):

1\. What is Urbit?

I'm not involved with it and don't speak for the devs, but this always comes up, so I'll just explain in plain terms what I think Urbit is, or what I hope it will grow up to be. Urbit is the server-app-container thing that would make my non-techy Mom want to pay $5/mo for a hosted server instance.

Imagine if every man, woman and child had their own server. Nothing fancy, just a cheap ECC instance or DigitalOcean droplet or something. What would they do with them? Well, host a webserver I suppose, maybe a mail server, maybe a Minecraft server, stuff like that, right? But, these would have to be accessible to non-sysadmin types, so all of these server applications would have to be easy-as-an-iphone to set up and administer. Right now, such apps don't exist, because there's no market for them. But if the market were there, millions of people with hosted servers just sitting around, you can imagine how quickly they'd get made.

What about a social media? At a high level, every social media app is essentially the same app - they let you upload a file to the cloud and they let your friends access it and they show you ads. The differences between Twitter and FB and Instagram and Snapchat are nothing more than differences in how those three features are implemented. So why do they all use the cloud? Because there aren't a million people with server space just sitting around on which to host their IG pictures and FB arguments and Twitter profundities. But if there were, a good self-hosted social media app would make a lot of sense to build.

Urbit is intended to shortcut this chicken-and-egg problem by making a container in which it is easy to build those things. My Mom can afford a hosted server, but she has nothing to run there. If there were great things to run there, like a Facebook with no ads and a webserver with no hassles, she might rent one. Urbit is intended to be the thing in which those great apps are easy to build.

2\. Why I want it

Those are all abstract reasons why something like urbit might succeed. As we all know, the mark of a good startup is not whether you can explain why it might succeed, it's whether there are users who want to use it _right now_. Well, I do want to use it, but it's hard to explain why. I'll take a stab at it.

If you're over 40, you may remember getting your first shell account. Wasn't that the shit? You want to host some files for colleagues? Just make a directory, chmod it to world-readable. You want to run a web server? Go ahead, and don't worry about security, the only people that can see this are inside your college/company. Want to see what Bill Smith is up to? finger bsmith. Want to argue about politics? talk.politics. God, how simple things were! Playing with Urbit feels like those days to me. It makes a handful of things, like identifying users and sharing files between them, trivial. You could probably write a Twitter clone in less than 1K LOC.

Or at least you could, if Urbit does everything it says it does. That's a big if. Which brings me to...

3\. Isn't it really weird and fucked up?

Yes. _Oh yes_. It is incredibly eclectic, the fevered result of an insane genius toiling away in obscurity on his dream project when he wasn't busy writing interminable political screeds. It is an attempt to combine a bunch of things (a ground-up OS, two new languages, and a novel networking architecture) that might be too much for such a small team. The Hoon language is weirder than you've heard. Some people swear it's great once you get used to it, but the docs are sparse and I haven't invested the effort. And if you do invest the effort, it could well be that it has non-obvious architectural flaws that will doom it to be a buggy mess for all eternity. And on top of that, the founder is primarily known for political rantings that are... well, not racist _per se_ , but close enough to get Urbit boycotted by the sorts of people who boycott obscure open source projects due to things in the founder's blog.

But if it fails, I really hope someone builds something less weird that accomplishes the same thing, because at the end of the day, I want it. I want a cheapo server with a cheapo self-hosted Twitter clone and a cheapo self- hosted FB clone, and I want to share pictures of my kids with my Mom without running them through some enormous corporation's billion-dollar machine- learning advertising algorithm, and I want to host my own website and server apps without taking on "sysadmin" as a night job. And it seems like, right now, Urbit is the fastest way from here to there.

<comment><USER24> Thank you for the comment. It is nice to be able to talk to someone who believes in Urbit ideal. I have a question for you: there are many advantages of running things on huge scale. How do you see Urbit will solve it? For example:

\- webserver: I used to run a personal web server, and then I noticed that I have to throttle the speed to avoid ending up with a huge bill, and when the colo is down, the server is down. I keep all my data in the cloud now, and due to economy of scale, I do not have to worry about availability, ping times, or bandwidth limits. How can personal server compete with CDNs?

\- I also used to run my own mailserver, and it was always a pain to keep spam away. This is a complex process which includes tuning spam filters, deciding which DNS blacklists to use (oh controversy!), deciding if I want to use DCC and at which stage. And I had to re-tune periodically, otherwise it would eat my automated messages... At the same time, Google (for example) has it easy -- at their scale, they have all the information they need to decide if the mail is spam or not.

\- Social media: no, I have not run my social media server :) But I cannot understand how do you get started. The main point is network effects, and even Disapora, which has been around for a long while, is not that popular. Plus spam and viruses, of course -- how do you prevent that? If my friend gets a trojan on her machine, will her account be able to spam entire network?

<comment><USER23> Thanks for responding! Sadly the signal:noise ratio on HN really plummets when urbit gets mentioned. Zaphar's response is good but I'll go in to more detail (as I see it):

\- bandwidth : there's nothing in Urbit itself to address this, but one presumes that if you host an urbit on EC2, you'd also be putting cloudflare in front of its webserver. More generally, if Urbit got even moderate adoption, the hosted-server companies would fall over themselves supporting it, because it's a new customer base for them.

\- mail : Agreed, I would never want to run a mail server, on urbit or anywhere else, due to how convoluted it is. However, Urbit uses a federated addressing system that would make spam unprofitable. Read their page on identities if you want details, but the short version is that full-fledged identities on the Urbit network cost a couple of bucks, and it is assumed that anyone who spammed from one would get blackholed before they recouped the investment.

\- social : From a user's perspective, I think the big difference between Diaspora and the-yet-to-be-made-facebook-clone-on-urbit is that the latter is not the _only_ thing you can put on an urbit. It's unlikely that Urbitbook would be so popular that anyone would run out to host an EC2 just to join it. But Urbit is supposed to be useful in and of itself. And if it does take off on its own merits, it seems very likely that a self-hosted social media clone would be one of the popular apps.

\- viruses : Urbit is designed to be essentially impervious to malware. (Which is not the same as saying it _is_ impervious - kind of depends on whether the people who architected it are as good as they think they are. I'm not qualified to weigh in on that.) In a worst-case scenario (say, your whole urbit got bitlocker'd), recovering would require you to a) get your hosting provider to restore from a backup, and b) notify your "galaxy" (your parent in the distributed network architecture) that you have lost continuity, and convince them that you are your urbit's rightful owner. That last bit would be nontrivial (because this is exactly how someone would go about stealing your identity) so it is assumed that the most galaxies would have stringent requirements, or if Urbit is as stable and unhackable as its supposed to be, not allow it at all.

<comment><USER25> I don't think the acerbic swipe at HN here was merited; as threads about programming environments go, this one seems pretty high-signal, with less flamage than any of the recent large threads about Go or Rust.

If your expectation about threads for Urbit is that they center on its real- world applications or potential, the project itself has done you no favors. It doesn't so much beg as howl madly for the kind of meta discussion that dominates this thread.

<comment><USER23> That's a fair point, I was complaining about past Urbit threads, which sometimes spend a lot more time on the founder's weird-but-irrelevant politics than on the technical merits of the project. I expect and welcome flaming about why it's built the way it's built! I would _so_ love a big deep thread between the urbit devs and some really smart people who have deep misgivings about its architecture, because the outcome of that would help me decide whether it's worth investing time learning hoon.

<comment><USER25> You say his politics are irrelevant. I disagree: the only person in the world who probably has a complete picture of what this system is meant to be is Yarvin, and there are troubling indications that his political principles influence the design. See, for instance:

[http://web.archive.org/web/20131014210123/http://www.urbit.o...](http://web.archive.org/web/20131014210123/http://www.urbit.org/2013/08/22/Chapter-7-security.html)

But that's neither here nor there, because this thread hasn't really centered on his odious politics, but rather on the dubiousness of its design and the steps the team has taken to conceal the basic details of the design behind a wall of obfuscation. We generally don't like distributed systems that go out of their way to make themselves _harder_ to reason about.

I'd further add that a lot of basic support Urbit receives on places like HN seems premised on the idea that there's something intrinsically novel about it. But that's not so: overlay networks are a relatively well-trodden topic in CS, including overlays based on what we used to call "mobile code", including functional mobile code overlay networks.

I'd like to see more discussion of decentralized overlay networks, including compute overlays, on HN. I find it unfortunate that all those discussions for the past year or so have more or less been captured by this goofy system.

<comment><USER23> _shrug_ As you like. If whoever wrote Jira revealed that the reason "stories" and "bugs" and "epics" all have the same default fields was because he thinks capitalism is better than socialism or what have you, I would entirely ignore it, and I don't think I'd be any poorer for it.

I would also wish for more projects in this vein. If something came down the pike with similar aims but minus the spooky political baggage and the eccentric syntax, believe me, I'd subscribe to their newsletter. But AFAIK there is nothing in the offing even remotely similar to urbit other than urbit.

<comment><USER25> That's because Jira is just a bug tracker. None of us need any assistance understanding the implications of a bug tracker, even one as sprawling as Jira.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER26> Someday I hope to understand what urbit actually is :-)

<comment><USER27> Urbit is a VM/library/io it runs programs, sometimes local, sometimes remote, sometimes distributed.

It's Jboss.

If you want to be generous it's Inferno.

<comment><USER28> I never could work out what JBoss was meant to be either.

<comment><USER29> Lets go see what their website says. How bad can it be?

> Red Hat® JBoss® Middleware is a family of a lightweight, cloud-friendly, > enterprise-grade products that help enterprises innovate faster, in a > smarter way. The ideal middleware portfolio for open hybrid cloud > environments, our products and services help you accelerate application > development, deployment, and performance, integrate data and applications > efficiently, and automate business processes across physical, virtual, > mobile, and cloud environments.

Its bad.

</comment></comment></comment></comment><comment><USER30> Is the idea behind urbit that you have one place that stores all your data and then you can use different services to access and use that data in whatever way they want?

<comment><USER31> Correct-ish - you can run other people's applications against data you own to get things done.

</comment></comment><comment><USER30> Why did they go with 32 bit addresses for planets? Seems short sighted given the woes of the ipv4 -> ipv6 transition.

<comment><USER32> Artificial scarcity helps them make sure that only the "correct" people get planets.

EDIT: You think I'm making a random political dig at Urbit that isn't borne out by the actual system, don't you. No, I am making a political dig at Urbit about something that is actually designed into the system. The design is about ownership, and about how not everyone can have it.

<comment><USER23> This is just grousing; If urbit got so popular that addresses were sparse, a big if, planet owners would just vote to add more.

<comment><USER32> Now you're faced with exactly what the GP said: address spaces are hard to change later.

What part of Urbit involves voting?

Even if Urbit were a democracy, which sounds improbable, why would the people who have the scarce thing vote to open it up to more people? Look at Bitcoin right now: they can't increase the block size because large miners benefit from the small block size.

<comment><USER23> I shouldn't have said "planets". I think only the top 256 "galaxies" (owned by the founders and investors) really get a vote. Maybe? That might not be right, I don't remember the details.

But there are two other misconceptions to clarify.

First, the defense against "What if the people who run urbit turn out to be jerks?" is not to have democratic voting. And it's not Bitcoin-style "51% of us agree" forks either, urbit is a top-down hierarchy. The defense is that Urbit is open source, and anyone could go out and start their own Urbit network and ask people to join it.

Second, planets have (theoretical) value, but they're not fungible, they're identities. A good analogy is: imagine if Reddit were designed to only have 2^32 handles, and they each cost a dollar. In that scenario, if Reddit said, "Hey, we've sold all our handles, hooray! Now we're going to issue an update that makes some more available", would existing Redditors lose anything?

<comment><USER32> Why would they each cost a dollar when they're running out? How could you possibly defeat economics like that? Scarce things are expensive.

The Redditors who are paying lots of money for the scarce handles, and the people they are paying lots of money to (the feudal lords or whatever, I don't know what to call people in this hypothetical Reddit/Urbit mashup), would _absolutely_ lose out if more became available. They would be like taxi medallions, or houses. Urbit itself makes the analogy to real estate, and real estate owners do not have the tendency to say "yay, more neighbors!"

And I don't need to fork Urbit given the people who run it are jerks; I can just run my own normal Linux server, which runs reasonable well-designed programming languages, and can subtract in constant time.

<comment><USER23> > Why would they each cost a dollar when they're running out? How could you > possibly defeat economics like that? Scarce things are expensive.

The "urbit is land" analogy is, like any analogy, only so useful; don't carry it so far that it breaks. Urbit addresses are numbers, and numbers aren't scarce. They're only limited by convention, and conventions can change.

I think the devs like to trot out that "land" analogy for BTC users, to help illustrate that urbit addresses aren't fungible, but it only holds if you imagine that land in this scenario can be created out of thin air by the king when he feels like the kingdom is getting crowded, and if polluting your land makes other landowners pretend your land doesn't exist, and if used land on the secondary market is all presumed to be polluted.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> For those using Nock and seeking an alternative take on Urbit check out this open source project [https://github.com/tibru/tibru](https://github.com/tibru/tibru) A few willing devs could take this forward with open libertarian ideals. There is nothing special about Nock and Urbit technically or mathematically.

</comment><comment><USER33> I find Urbit very confusing. It uses a bespoke virtual machine for a bespoke programming language, uses a bespoke approach to optimisation, uses another bespoke programming language which compiles down to the first, has a bespoke OS written in that second language, connects these OSes into a bespoke p2p network, all in order to.... what?

Their go-to example seems to be social networking with an interface to Twitter??

I _absolutely_ get the 'own your data/compute' idea.

I think a bespoke OS is a decent approach, as it removes a lot of legacy complexity and allows a few carefully-chosen, simple, unified approaches to things like I/O and addressing.

I like the use of a functional language, as it's an extreme form of isolation/sandboxing/reproducibility which makes sense in an untrusted online world. I don't see why a new language was invented though, when something like a subset of Scheme, Joy, plain lambda calculus, etc. would suffice.

I have absolutely no idea why they've invented a custom p2p network/addressing system. I chalk this up to huris, along with their spiel about ASCII punctuation, etc.

I have absolutely no idea how this has anything to do with social media. I assume it's just for buzzword value. I don't use social media, but I imagine programming language theory isn't its main appeal?

Even if we assume that all of Urbit's ideas pan out: interacting with Twitter seems to _completely undermine_ all of it!

\- Twitter is centralised, whilst the point of Urbit's network is decentralisation.

\- No matter how much elaborate language machinery you build, there's very little you can actually _do_ with Twitter, since they keep their database secret.

\- Despite all of the sandboxing, reproducibility, etc. Twitter will not execute any code that you try to send them. The only operations which can be performed are chosen by them, and exposed as API endpoints.

\- Doing anything with Twitter throws purity out of the window, since they only interact via I/O requests.

\- No amount of fanciness in OS interfaces or language semantics can do anything to prevent Twitter modifying/deleting/overwriting/etc. any of their data at any time, without any notification to anyone; hence there are very few guarantees that the OS or language can actually provide about such values (e.g. there's no referential transparency, no way to know if a cache is invalid, no way to know if someone else will receive the same data you did, etc.).

\- Whatever the resulting API looks like, it will be a constant source of incompatibility and churn, since Twitter are free to modify their API at any time. If some operation gets dropped, any applications which rely on it may break irreparably.

I get that the Twitter example seems to be along the lines of a minimum viable product, but it seems like a bad choice considering that it can't really make use of any of Urbit's features. It could be implemented as a big string of Javascript, with Urbit only being used to get it into the browser; the result would be about as integrated as any other approach.

A more relevant example might be a multiplayer game with a shared leaderboard, player chat and non-critical use of external APIs (e.g. gravatar for player pics), e.g. a clone of Words With Friends or maybe something with more animation.

The game itself would be a decent test of the programming languages, rather than just shuttling strings in/out of Twitter. The interactivity and chat would test the latency. The leaderboard would test shared access to data. Using external APIs would test the data-shuttling, in a way that doesn't much affect the application if the provider shuts down the API.

<comment><USER23> Interesting thoughts. I'll just weigh in on the ones I feel confident answering:

> I have absolutely no idea why they've invented a custom p2p > network/addressing system.

Part of what Urbit does is make it easy to identify people and exchange messages with them, so it has to have a built-in idea of what identity means and how to tell who someone is. If it didn't have its own identities, each application would have to do that itself, which is where we are today.

> I have absolutely no idea how this has anything to do with social media.

It's just a use case that everyone's familiar with which illustrates something that urbit makes easy to do. But I think the hope is that "Hosting continuously available cryptographically identified server apps is easy now, what shall we do with that?" would spawn genuinely new niches, in the same way that mobile phones have.

> Even if we assume that all of Urbit's ideas pan out: interacting with > Twitter seems to completely undermine all of it!

I think the idea is that you'd have some app on urbit that sits between you and your social media. So, when you take a picture of your kid and want to share it, you'd use an app within urbit that would (say) post it to twitter, put it on facebook but only for "family", and store a copy in the "backed up monthly by the hosting provider" folder. As social media apps come and go, you could use them while they're useful and abandon them when you tire of them, without having to export or import things.

</comment></comment><comment><USER34> Needs a GUI to be useful for any non-enthusiast users. Does urbit need any non-enthusiast users at this point, though?

<comment><USER35> There is a well-integrated web api/interface to the shell-based services.

</comment></comment><comment><USER36> An interesting idea confounded by inexplicably strange design choices, and the regressive, odious politics of its creator.

Would love to see a similar idea done by a different team.

<comment><USER37> Poor old Urbit! Learning curve so steep that nobody has the time to figure out that it's bollocks on its own terms, and they are obliged to dismiss it purely on the grounds of who it was created by.

<comment><USER38> What makes it bollocks on its own terms?

<comment><USER39> Urbit is totally new to me, but from what I understand, the hierarchical identity layout and restricted address space are instant red flags for any distributed system. Oh, and the founders assert ownership over a non-trivial block of addresses.

Looking in from the outside, this looks like a fairly transparent attempt at bootstrapping a fiefdom: Create a type of digital "property", artificially restrict supply, reserve a huge chunk for yourself, and hope it becomes popular (making you "digital rich" and "digital powerful").

<comment><USER40> The funny thing is that, after dismissing criticism based on the creator and his politics, you just made a technical criticism that is basically reaches the exact same co conclusions about its intent and effects as are frequently made by those reasoning from the author's publicly stated political views (including those directly attached to Urbit docs before those were cleansed to make the product more commercially viable.)

Which is not to say you are wrong to prefer technical criticism, only that in this case the telegraphed political intent seems to match precisely the technical criticism.

<comment><USER38> Not speaking for the parent comment, but maybe the two aren't so inseparable after all. I would rather not immediately dismiss this project, since there are multiple contributors to it and it seems cruel to bash their hard work just because of Yarvin's presence. However, it seems like there definitely is a similarity between the product of the man and his ideology- especially the same inscrutable, esoteric, unconventional nature.</comment></comment></comment></comment></comment></comment>


Just wanted to thank HN for not going full retard on April Fools Day - <AUTHOR>

Thank you <comment><USER2> What's wrong with a little bit of fun on one day a year?

<comment><USER3> It's not really that fun, though. The 'jokes' are so over the top that it's annoying.

<comment><USER2> How so? Whats wrong with a small change for the day, or some goofy humor?

Sometimes its an acknowledgement of your audience. Sometimes it drums up some good publicity for a company.

</comment></comment></comment><comment><USER4> You're welcome.</comment>


Video Poker "Hackers" Cleared of Federal Charges - <AUTHOR> http://www.wired.com/2013/11/video--poker-case/

<comment><USER2> I enjoyed the original story in Wired.

I think you can argue that casinos are exploiting a 'bug' in some human's 'firmware'; a potential for addiction to gambling and a lack of understanding of probability.. So if someone is able to find and exploit a bug in the code behind your video poker machines, well too bad! Find it, fix it and accept it as a cost of doing business.

<comment><USER3> I think the most common bug in human's 'firmware' is being against to 'rich/big' and side with 'poor/small' even it is not logical at all.

</comment></comment><comment><USER4> This is from 2013, please add (2013) to the post title. Thanks.</comment>


App Store Semantic Search Preview - <AUTHOR> http://iapps.in/preview

<comment><USER2> This video demo isn't very compelling. Typing the phrase about wanting to take one's girlfriend to a dance club returns a health club locator. Doesn't actually seem very semantic.</comment>


Learn a language in 22 hours - <AUTHOR> http://www.guardian.co.uk/education/2012/nov/09/learn-language-in-three-months Joshua Foer: 'What if, instead of tabbing over to the web browser in search of some nugget of gossip or news, we could scratch the itch by engaging in a meaningful activity, such as learning a language?'<p>Yeah, right. <comment><USER2> tldr; check out memrise.com if you want to learn a new language. It uses additional context to aid in the learning process.</comment>


What people don't understand about OAuth - <AUTHOR> http://scripting.com/stories/2010/09/11/peopleDontUnderstandOauthB.html <comment><USER2> It's Twitter's decision that each 3rd-party gets full "be you" permissions; they could choose otherwise and still use OAuth.

And the fact that everything done by a bad actor can be attributed to them -- for reversal or blanket punishment -- does add a lot of security, in addition to the party-at-a-time revocability.</comment>


Twitter clarifies special rules for tweets by world leaders like Trump - <AUTHOR> https://arstechnica.com/tech-policy/2019/06/trump-tweets-will-get-warning-labels-if-they-break-rules-twitter-says/ <comment><USER2> It seems like by doing this, Twitter is increasing the size of their voice as a non-neutral platform, simultaneously displaying the popular tweets and their own message that, hey, this is hate speech.

I do wonder, though, if this will have the opposite effect. There is plenty to criticize about these tweets, and the stable genius behind them, so it's not surprising that many have called for these messages to be banned. But, they still seem like a legitimate use if the platform, so my main reaction reading the messages is "Wait, _that_ would be ban-worthy?". This policy may end up undermining the credibility of the platform more than the author.

</comment><comment><USER3> Does Twitter allow the end user to disable this censorship?</comment>


Ask HN: Free accounts for students? - <AUTHOR> We charge for private repositories at GitHub. As a result, we often get emails from students asking for free, private accounts (usually
of the $7/mo or $12/mo variety).
"I'm working on a website with some friends and we don't have any money. If we start making money, we'll gladly move to a paid account!"
While we offer free private accounts to instructors for classes, we haven't given students free accounts to work on commercial projects in the past.
Should we? Would you? <comment><USER3> I'd be in favor of it. In fact, it's one of the reasons that I use Mercurial/Bitbucket (bitbucket.org - they allow you to have one free private repo no matter who you are). Offering students a Micro plan probably wouldn't cut into profits too much and it will get them in the mindset of using git (rather than svn or hg or whatever). Most people don't like learning new things when they're comfortable with one - get them while they're young. You're the premier git host. More git people means more money for you.

<comment><USER4> You could also take a mid-range approach. Give students one free year, no credit card information required.

The vast majority of student projects will be very short-lived. If a project actually gets speed and lasts for more than a year, the founders would probably be happy to pay to keep it going.

</comment></comment><comment><USER5> T = turnover per client per month

E = variable expense per client per month

A = Average lifetime of a customer in months

P = Percent of students that turn into paying customers

As = Average lifetime of a student account before it is either terminated (graduated) or turned into a paying account

The lifetime value of a customer is (T-E)xA The cost of a student account is ExAs The acquisition cost of one customer that has previously been a student is ExAs/P

if ExAs/P < (T-E)xA then you should do it.

Stick the numbers into an excel sheet and play around with the basic assumptions. Chances are that your answer will be obvious.

Note I had to use x for multiplication since the character normally used for this is used for markup :-(

<comment><USER6> Agree that you should try to figure out what doing so would actually cost, and what you might hope to gain from the situation.

Of course, if the costs are expected to be relatively low (which I would imagine, given that it isn't likely to be a large % of your users), even if the expected value is zero, you should consider the goodwill and potential long term benefits you might gain.

Plus, you can always try giving out free student accounts, and then if it becomes too expensive, stop. You might even consider a manual approval process, just to make it enough effort that most people won't bother unless they really want it.

<comment><USER5> There are of course many factors you could include. If you do an excel sheet it is pretty trivial to include all sorts of numbers.

The advantage of this approach is that instead of just guessing you'll be naking an informed decision based on an assessment of the underlying assumptions. In my opinion this is hugely superior to just guessing.

</comment></comment></comment><comment><USER7> How many people would hang on to their GitHub student accounts way after they ceased being matriculated (fancy SAT word for registered) at that school? Maybe a one or two semester-long free trial - get them using it for their projects.

Usually, at a university, when you have a .edu email address, the school knows when you're a student. If you graduate or leave, unless you went to a school that graduates you to alumni.school.edu - you lose that email address.

<comment><USER8> Why not time-limit student accounts to a year or so? And require a .edu address to signup?

A year's a long time for a student. It's plenty for any coursework, and should be enough time to decide if a project will become a startup. And the hassle of moving things over gives people an incentive to switch to a real pro account instead of just mooching off the student account forever.

And you can get folks hooked on GitHub, so that's what they go for when they enter the working world.

<comment><USER9> moving stuff over is super-easy with git. you make a new repo and push to it.

<comment><USER8> Yeah, but paying $7/month is super-easy for those with credit cards and income. The point's to get people paying for it - for those who would anyway, a simple nudge and slight incentive is probably all you need. And for those who wouldn't pay for it anyway, you keep them using GitHub.

</comment></comment></comment></comment><comment><USER10> I like the idea of giving students free accounts, but I feel like it would probably be abused by too many people. If it is important that it be a private repo or they needs lots of space, they should consider setting up their own and then move to GH if they have revenue.

<comment><USER11> Agreed, why not just offer one free private project at GitHub? No real programmer is going to have just one project.

If this were the case, I'm not so cheap as to create multiple accounts for multiple projects to bypass having to pay, so I'm guessing other people might be 'not cheap' either.

<comment><USER10> thats not a bad idea. one limited private repo would be good incentive to buy up if people like it

<comment><USER12> I'd just offer it as student account with one private hub, but don't check to see if they are students?

</comment></comment></comment></comment><comment><USER13> I remember downloading Netscape Navigator for free as a student. I also remember doing the same on my father's work computers.

Unless you absolutely need the network effects - and I don't think you do - then I say no. We've thought about a reduced commission structure for students at Dawdle, and I just can't justify it - when do you expire free access?

</comment><comment><USER14> I think you should only consider giving free accounts to students who go out of their way to ask.

</comment><comment><USER15> I'm a student with a paid plan, and I'd love it if you'd give up even 1 free private repo with more than one collaborator. I don't need a ton of repositories, but It'd be cool to not have to worry about having more than one person working on a project. I think it'd be a great way to get more people interested and develop customers in the long run. Also, I'm going to give a talk about Git at our next ACM meeting in a week or so, if I could hook people up with some kind of free private account they could play with, I think you'd have a few new customers.

</comment><comment><USER16> The people suggesting .edu email address verification (especially fancy systems with 'alum' filtering) forget non-US colleges.

One solution might be to use Facebook Connect -- I'm not sure if you'd have access to all the data you need, but people on FB tend to be honest about this kind of personal info, FB maintains a comprehensive list of colleges (and requires email verification to join a college network), and for extra security you could perhaps restrict it to people with over 10 friends in the college network, to make it a bit harder to scam.

<comment><USER17> First you warn about forgetting non-US colleges and then you suggest Facebook Connect? :P

</comment></comment><comment><USER18> As a student I say "Yes!"

Just require a valid .edu address at sign up and send a confirmation email. Allow students to put in their edu email as well as their personal email because I really only use my personal account, as do most of my friends. Just send a confirmation email each semester or something as recommended by another commenter and that should be strong enough verification. Some people may try to cheat the system by either using an alumni email address (which you should filter: alumni.*.edu) or purchasing an edu domain to host their own email on, but those are both very unlikely and I doubt you'll run into them often if at all. There is at least one school that I know of that doesn't give out email addresses to its students anymore (Boston College or University, I forget which one); for those students just put a note next to the .edu field saying something along the lines of "Your school doesn't give you .edu addresses? Just email us and we'll help you out."

I don't think there's much else you can do to verify student accounts. If you're really ambitious you can ask for the student's ID number, full legal name, and university and then call up the registrar office to verify their registration. My school also participates in the National Student Clearinghouse: <http://www.studentclearinghouse.org/> but it costs money for each verification. Obviously these options are kind of extreme and I'm pretty sure only banks and hiring agencies would spend the time verifying an enrollment this way.

</comment><comment><USER19> We (from <http://www.versionsapp.com>, a Mac SVN client) had the same debate in our mail group. We decided against free as we want to offer email support to everyone and that just costs money. We ended up giving almost 50% off and almost everyone seems to be satisfied with that.

<comment><USER12> are you racing to support git? seems like you released a few months before the git craze swept the internet.

</comment></comment><comment><USER20> I say yes. You could flag all accounts registered with a .edu email address and send out a confirmation email at the start of traditional semesters--i.e., September and January. A graduate shouldn't have an email address by then. Once it happens, drop them to the free account. It would be really cool if you guys would just freeze the private repos and leave them there for a bit while the account exists so that people can get their data.

$7/mo and $12/mo are $84/yr and $144/yr respectively. That's money that I would rather put to rent/utilities/cable as a student.

Of course, many universities allow students to keep their .edu for a fee after they graduate, but you have to imagine the number of people paying for a .edu to maintain a free GitHub account is going to be pretty small.

<comment><USER21> Not all universities uses _.edu emails for instance McGill uses_.ca.

</comment></comment><comment><USER22> As one of these student with no money, yes that would be awesome. I enjoy using github.com, however because I need to protect my source I have been using <http://unfuddle.com> as a single user. It works, and it is nice, but it is a single user environment (the free version).

I would prefer to use github.com, just think of it as a mini-investment for each student startups. I for one would pledge to use your service for a while if any of my ideas "make it". In addition to this it might encourage students who use your service to become evangelists for github.com once they matriculate from college.

</comment><comment><USER23> Chances are, whatever they're building doesn't need to be put in private repositories. If it really does (as in, they're working on commercial stuff), $7 a month (even $12) shouldn't be hard to scrounge up, and I'm an in-the-red student myself. After all, we all need to learn about business expenses sometime--and they're not having to worry about paying for food or rent. If a private repo is that important to them, most schools offer private server space. I say no.

<comment><USER20> It's quite a leap to say that students don't have to worry about paying for food or rent. I would go out on a limb and say _millions_ of students do just that.

<comment><USER23> Don't get me wrong--I'm paying for food and rent--just for many (most?) it's covered in their loans/scholarship/whatever. I guess I wasn't thinking about people who work at the same time, though. (My school requires everyone to be on a meal plan and to live on campus or prove that they can live off campus, so I forget that people at other schools have to worry about it.)

</comment></comment></comment><comment><USER24> Providing SCM to universities is a great idea. My university's CS program didn't once expose us to source control, which I think was a mistake. Going through four years of not using source control produced some bad habits which took a little while to rectify (my source control consisted of occasionally doing "tar czf backup- _timestamp_.tar.gz project" occasionally)

Our UPE chapter (CS honor society) tried setting up a SVN system, but it never really got off the ground.

<comment><AUTHOR> To clarify: we already offer GitHub to universities for educational purposes.

</comment></comment><comment><USER25> Yes!

Most students I know who know what git is are technically adept enough to install Trac and svn, or their own git or hg central repo, and would rather do that than pay $7-$12/month. So I doubt you'd be losing many paying customers by offering free student accounts. But once people moved on to other projects, they are more likely to go with what they know, which will by then include GitHub.

<comment><USER26> I agree. I spent a considerable amount of time learning about/setting up/configuring my own SVN server and tools around it simply because I couldn't find a free hosted alternative that didn't expose my source code.

If I had a free github/alternative account I'd probably give it a shot and give that my time. Although more for curiousity sake... git doesn't integrate with the VS.net IDE which I spend a lot of my time in.

They wouldn't lose me as a paying customer because I never intended on paying in the first place (as evidenced by spending more than $7 of my time in setting up an alternative). They may gain an interested follower in the long run.

</comment></comment><comment><USER27> I (very occasionally) get asked for free copies of my software. Past reasons have included "I am a nun", "I live in a country where $25 is a lot of money", and "I teach at an inner city school district with no instructional aid budget".

I told the first person to ask this that I would make an exception just this once and "write off" one copy as a marketing expense. (Nota bene for US-based software writers: you cannot actually treat free licenses as a business expense.) This is also what I have told any subsequent people who were motivated enough to try to ask for it.

My theory: software licenses cost me nothing to issue, I can say "Yes" faster than I can say "No", and I already am philosophically OK with giving out metric tonnes of free value to get a small percentage of visitors to pay because that is, after all, my entire business model. The fact that this practice creates rabidly vocal fans of my business is a bonus.

</comment><comment><USER28> I think you should - the obvious point of view that it's just kind to do so. From a business perspective it's allowing you to hook in the future startup founders and coders. It'll get them excited and used to GitHub and in a few years from now when they're working somewhere or starting a new project they'd be more then happy to pay.

</comment><comment><USER29> I was considering working for the CSCI department at my school to update the cobwebbed CVS repository hosted in our lab that some teachers actually expected students to use to turn in code. Funding/grant hurdles and my graduation got in the way, but I was thinking what would be awesome is some kind of sub–github: maybe a walled–off version of the entire site restricted to students at a particular school and their professors and TAs. In whatever case, some kind of github.edu site, where CSCI departments sign up and encourage student use would be a lot cooler than just giving students free accounts.

I paid for an account for about 7 or so months while I was a student, but after a few of my private collaborative projects slowed down or ended I was paying for nothing and have now cancelled.

<comment><USER30> You'll be able to purchase a GitHub license in a few months, tell your school to buy a copy!

</comment></comment><comment><USER31> $7? Couldn't you just politely tell them to drink 2 or 3 less beers a month?

Seriously, I think the "I'm a student, I'm so poor" shitck is getting a little tired.

I think you'd get a better bang for your buck (in the feel good department) by offering free accounts to Indian/east European coders, given purchasing power.

<comment><USER26> I had eactly €100 per 5day week for most of my first year at college. €65 was my accomodation (quite a distance from the college) which included breakfast €4.50 lunch at college x 4 days (I'd frequently get it for less + drink because the lady on the till liked me) €3 for a sandwich/roll x 5 days which I'd eat in the evening. I had to budget because I had _NO OTHER INCOME_ so your remark about beers doesn't cut it. My blood just boiled when I saw you generalising students like that.

And there is a considerable leap between using something for free and paying any money for it.

<comment><USER32> In this situation one normally considers getting a job of some sort.

<comment><USER26> Thanks for the advice - I subsequently did that. But I have to point out you know nothing more about my situation than what I said in response to your comment.

Just like GitHub are investigating possible outcomes of their situation - <USER2> my situation I was perfectly able to survive on my means and dedicate 100% of my time being top of my year, building a strong reputation within the school of IT and working on my own tech projects that just happened not to be money making exercises. Git was not used, SVN was. If Github existed at the time and for free, I can think of a couple projects I built at the time that I would could have used it for. I still strongly feel for certain classes of product, a free version for students would get them hooked early - but it's a choice GitHub have to make themselves. I hope I've provided counter points to the "all students can afford this" argument and points for why a free student license should exist.

</comment></comment></comment></comment><comment><USER33> I'm a student -- and have been for _way_ too long.

My answer's no for free. Instead, a heavy discount's a good idea. You can make it really significant, like 50-90% off. Cheap enough for anyone serious to afford it.

But, the fact that it isn't free will get most of the worthless ones off your back.

</comment><comment><USER34> I know one of our startup's founding principles is to always be free for students. I was a student when we started it and know all to well how tight money is. I don't feel right contributing to the insane amount of debt American university students are already forced to take on.

If you're worried about abuse, you could provide a free account to registered students, which you can verify with their .edu email address. To keep the account free and active, you could send them a confirmation email once a year (or 6 months) to make sure their original .edu address is still active.

<comment><USER25> Keep in mind that .edu is primarily US-only. For other countries you will need to make or find a whitelist.

</comment></comment><comment><USER35> When working on our startup, we used to use Assembla solely because it was free. After we moved past the whiteboard phase, we switched to Unfuddle immediately. The productivity gain alone... If your site is awesome (like GitHub), peopel will pay for it, even students. The bigger problem (for us at least) was not lack of funding, but lack of a funding _method_. Source control should really be a business expense. Sure, everyone can kick me five bucks or something, but that tends to make accountants mad.

</comment><comment><USER36> I would like to have a free account, but I don't think that a free account should be given out to students. I understand give private accounts to instructors, however, $7 a month is very little and think that most students could come up with the money. I truly enjoy using github, and think that $7 or $12 per month is a great value.

If the account were to be free I think that there should be a timeframe for which the account should be free (for 2 - 4 years). After that the user is given the option to continue or drop the account.

</comment><comment><USER37> As long as cost is manageable and the number of free accounts limited, why not?

How about free accounts for a set period of time (3 mths)? And maybe setup a special referral program to give kickbacks (commission) to students who refer people who sign up for paid accounts. This can be credited to each students account. Don't know your audience though so these are just some general suggestions..

</comment><comment><USER38> Even though it may become complex I think it should be judged per project. WingIDE (Python IDE) for example gives out free copies of it's Professional version to people who have existing semi-notable Python projects. So you could do something similar. Or perhaps just a discount. Just as long as people don't abuse your services.

<comment><USER39> Semi-notable projects are likely to be open source, and GitHub is already free for open source projects.

</comment></comment><comment><USER40> Absolutely not. I'm a student and it's easy enough to come up with $7 dollars a month for something you care about.

</comment><comment><USER41> It would be a bit like investing in your customer's business. You want to, but is that the business you're in?

Besides, the two all important questions: How do you decide who is deserving of the free account, and how do you know when they should start paying. You need to cover these both rationally and legally.

</comment><comment><USER42> Working on a startup as a student has a lot of unique challenges. When I'm away from school, there's no where good to work. When I'm at school, everything vies for my attention.

I've discovered that the public library is extremely useful. The thing is, the soon as my project takes off I'd be willing to spend money, but with my resources so constrained, I really have to be frugal.

If you perform a service for the public good, I have a feeling that within a few years, it will start to pay back in some way. Whether it puts you in the black from providing free service is another question.

The public library doesn't have much to look forward to because the people that hang out there are mostly old. However, a service where people are creating value is likely to turn over into something useful to the service provider in some way. You might want to consider offering the free service to students for a year and watching the conversion rate.

      If nothing else, you'll certainly help train the next generation of software engineers which will certainly turn into something useful for everyone.

</comment><comment><USER43> At the very least, do it for students working on projects related to their classes (in which an instructor approves).

Think Lexis-Nexis. Get students so acclimated to your product that the mere use of it is your competitive advantage. Set some limits on git like what psyklic was saying.

</comment><comment><USER44> It's already free for open source. If someone wants to use it for a commercial product, they shouldn't mind paying commercial prices. It's not as if $7 a month is a fortune.

What you might want to do, however, is give people a free trial period of say 3 months.

</comment><comment><USER45> You could do 3 or 6 months for free then charge if they have a school email.

</comment><comment><USER46> I have been wanting to try GitHub for use in my new startup, but I cant justify paying for it out of my extremely shallow pockets. I know if I used it now I would upgrade in the future as funding allows

</comment><comment><USER47> Speaking as a student that is about to start working on a startup I think the prices are fair and hell, I'll probably end up signing up for GitHub myself in the next couple weeks.

</comment><comment><USER21> Make sure you ask for a scanned studend id or something so that you get less "fake students", but this would be great.

</comment><comment><USER48> seems like a pain in the ass...why not simply give people with .edu accounts a 1 year free access, and then make them pay? 1 year should be plenty of time for a person to make something thats $12 a month profitable

</comment><comment><USER49> 1-3 month for free. That should be enough to see the value.

</comment><comment><USER50> It's a good idea, but theres no easy way of verifying if some one is a student. Facebook back when it was student only had a big list of valid uni domains but this only worked for the universities they'd rolled out to

</comment><comment><USER51> Unfuddle does it. And I love it.

</comment><comment><USER12> I would - good hearts and minds.

</comment><comment><USER52> I don't know of any student who, in interest of their project, couldn't save $7 or $12/mo. That's only one or two Starbucks purchases!

<comment><USER8> There's a qualitative difference between "pay" and "no-pay", particularly among students with no income.

When I was in college, I had essentially no cash flow. Nothing in, nothing out. The college dining hall was open 7 days/week, so I always ate there instead of eating out or cooking. (The only times I ate out were the TYPO - "Take Your Professor Out" - dinners, which the school paid for.) Room & board was completely paid for, and we weren't allowed to live off-campus. Internet access was provided by the college, as was webhosting. Student activities (I did sailing, orchestra, taiko, some artsy-crafty stuff, and a variety of other things that would've otherwise been expensive) all came out of the student activities fund, which was paid with our tuition. I bought books once a semester with a credit card that went to my parent's account. After the first year, I didn't bother signing up for a room phone, instead using my cell phone, again paid for by my parents. The only thing I ended up paying for was ordering Wingz or pizza at midnight, or alcohol contributions to parties.

There were many purchases that I could easily have afforded that I didn't bother with, because it meant I would've had to worry about money. They included Starbucks, going out for meals or ice cream, paid LiveJournal accounts, actually buying music, and basically anything that required a credit card (I didn't have my own until I got a job after college). If GitHub had existed back then and charged, I would've said "Screw it, I'll setup my own git account on a college server, and we can all pull from that."

The cost isn't just $7-12/month. It's all the time spent balancing bank statements or checking over credit card bills that you wouldn't otherwise need to worry about if you never use money.

<comment><USER53> I'm rather curious were you went to school, this sounds kinda nice. It's the direct opposite situation here (very little on campus housing, cook all my own food, don't do too may extracurricular activities because it's all rather expensive) but I come to the same conclusion. Except that our school servers don't let us host git repos, so I need an external place to store code.

<comment><USER8> Amherst College. It's pretty common at top private colleges, and it also seems more common at rural schools than urban ones. If every college student in Amherst needed to get an apartment, I think the townspeople would panic, since there were 7000 of them and 35,000 of us. (Okay, this is misleading, since about 32,000 of those college students are at UMass, which occasionally _does_ house students off-campus. Amherst and Hampshire don't, though.)

(Irony: many of these same students who go through 4 years never having to manage money are then hired on Wall Street to...you guessed it...manage money. Maybe that explains the current crisis.)

</comment></comment></comment></comment><comment><USER54> maybe special discounts? almost free?</comment>


Mashion's Pairing Rig - <AUTHOR> http://matschaffer.com/2012/07/mashion-pairing-rig/

<comment><USER2> I wonder how many teams have pair programming engraved into the workflow. As in "for at least a year." I tried it more than once, on different projects with different people and it universally sucked. To say that I hate it with passion is an understatement. Perhaps it was because the language was C or because the routine was instigated by a clueless management, but still... in what conditions does it actually work?

<comment><USER3> I've found pairing to be very useful when I don't know the stack or codebase all that well. It can certainly be frustrating though when the two people in the pair have extremely mismatched skill levels and are working against a deadline.

<comment><USER2> That's not a pair _programming_ though. It's just one person teaching another whatever there needs to be taught.

<comment><USER4> That is pair programming though. The point is to get the other user up to speed so they can contribute more to the project.

I like to think of knowledge as a resource with compound interest for the individual and especially for the company. Knowledge is built on what you already know and the more you learn the more ideas and knowledge you can generate. Teaching another is the key principle of pairing. If done correctly somebody should always be learning and teaching.

</comment></comment></comment></comment><comment><USER5> Isn't this the same setup that pivotal has been using for a few years now?

They have a bunch of details in a 2010 blog post here:

[http://pivotallabs.com/users/jsusser/blog/articles/1505-pair...](http://pivotallabs.com/users/jsusser/blog/articles/1505-pairing- tete-a-tete)

<comment><USER3> It's pretty close, but it has a few improvements. For starters, the Pivotal setup used Ikea Galant desks, which are a bit large. Instead of needing to cut that in two, we've got two Galant extensions. This eliminates the need for the desk staggering pattern shown in the pivotal post.

Second, the pivotal setup is based around an iMac with a second screen. We've found this somewhat odd as everyone has their own laptop. Therefore, this setup is driven from a laptop with the key addition of an hdmi splitter to make driving two screens from the laptop cost effective.

<comment><USER6> Given the extreme similarities, wouldn't it have been worthwhile to point out the similarities and differences to the Pivotal setup in the article, rather than adding them retroactively in the HN comments?

</comment></comment></comment><comment><USER7> Depending on how sensitive you are to peripheral stimuli (which is generally oversensitive thanks to evolution), this setup seems like it'd make you distracted with the movements of your partner's head.</comment>


So You Want to Find a Technical Co-Founder... - <AUTHOR> http://blog.hartleybrody.com/find-a-coder/

<comment><USER2> Helpful, I needed this thank you.</comment>


My Insights as a Job Hopper - <AUTHOR> http://dandonahue.net/professional/2015/11/08/my-insights-as-a-job-hopper.html <comment><USER2> No description of how often the author actually changed jobs?

There is definitely a happy medium and early career job hopping might be more productive than later career job hopping.

As an employee the only thing you have to invest is time and really not as much of it as you would think IMO. Invest it wisely.

<comment><USER3> I'm the author. It's a fair point - I wasn't sure how concrete I wanted to get about my specific experiences. Or maybe I was concerned about people being able to trace my actual job history. Then again - it's all on LinkedIn anyhow so I guess those were invalid fears.</comment></comment>


Who's Telling The Truth About PRISM? - <AUTHOR> http://techcrunch.com/2013/06/07/whos-telling-the-truth-about-nsa-prism-computer-security-expert-gene-spafford-weighs-in-tctv/

<comment><USER2> This is not as interesting a question as who is lying.</comment>


Show HN: View API test results on GitHub status checks - <AUTHOR> https://assertible.com/blog/view-api-test-results-on-github-status-checks <comment><USER2> We've been working on API test automation for a while and this is one of my favorite integrations so far.

The idea is that, after deploying from CI or a script, Assertible runs a series of integration/smoke tests against the app and reports the result back to GitHub via a status check.

Here's an example of a failing status check on a Go API: [https://github.com/assertible/go-heroku- example/pull/5](https://github.com/assertible/go-heroku-example/pull/5)

Having immediate feedback on an actual _live deployment_ has saved us a lot of time from manual testing.

Would love to hear your thoughts!</comment>


What's new in Opera 12 alpha (many presto engine updates) - <AUTHOR> http://my.opera.com/ODIN/blog/2012/03/26/whats-new-in-opera-development-snapshots-march-26-2012

<comment><USER2> are svg data urls as source for <input type="image"> working now? (<http://0x2620.org/html/bugs/input_image_svg.html>)</comment>


CarrierIQ Sparks Class Action vs. Apple, Samsung, HTC, More - <AUTHOR> http://www.macobserver.com/tmo/article/carrieriq_sparks_class_action_vs._apple_samsung_htc_more/ <comment><USER2> MacObserver spam HN - 38 submissions just in the last week that push submissions from legitimate users out of sight that little bit faster.

<http://news.ycombinator.com/submitted?id=jmartellaro>

<http://news.ycombinator.com/submitted?id=digiwizard>

<http://news.ycombinator.com/submitted?id=Semteksam>

<http://news.ycombinator.com/submitted?id=davethenerd>

<comment><USER3> holy... 0_0

Is there anything people can do to stop those kinds of posts? Submitting a few articles from your own site is fair enough, but these are obviously blogspam.

</comment></comment><comment><USER4> I'm surprised it took this long for a law firm to jump on this. This looks like a big payday for a few sharks and pennies for us.

<comment><USER5> I'm currently holding in my hand a check for the amount of zero dollars and thirteen cents from an eBay Motors class action settlement. I am sure that the attorneys in this case billed hundreds of thousands of dollars, and I'm sure that eBay spent similar amounts defending the case. The outcome is that the direct fees for mailing and postage of this letter cost an entire order of magnitude more than the actual reimbursement.

It's embarrassing to me that this is an acceptable outcome for a suit that is intended to protect and compensate consumers.

</comment></comment><comment><USER6> I'm surprised it took them this long. The whole company stinks to high heaven.</comment>


NHS wins landmark legal battle against drug companies about Avastin - <AUTHOR> https://www.hsj.co.uk/finance-and-efficiency/breaking-nhs-wins-landmark-legal-battle-against-drug-companies/7023422.article#.W6TH58DoL6U.twitter <comment><AUTHOR> Avastin is an old, cheap, medication. It's useful for wet age-related macular degeneration, but it is not licenced for that. Drug companies ever-greened it by tweaking it slightly and creating lucentis. Lucentis is almost identical to avastin in everything but price: it is very much more expensive.

Doctors are allowed to prescibe off-label.

The patent holders for Lucentis have tried very hard to prevent this off-label usage, going as far as suing the English NHS.

This case was won by the NHS (strictly, by twelve Clinical Commissioning Groups. You can think of those as regional branches of the NHS who commission services in their regions) so hopefully the NHS can save a lot of money and more people can get treatment for wet AMD.

I'm posting this to HN because Lucentis and Avantis have been mentioned before on HN, and it's a great example of unethical harmful behaviour from drug companies.</comment>


New twist explains how a single giant impact could blast the moon into being - <AUTHOR> https://www.washingtonpost.com/news/speaking-of-science/wp/2016/11/01/new-twist-explains-how-a-single-giant-impact-could-blast-the-moon-into-being/ <comment><USER2> See also:

[https://news.ycombinator.com/item?id=12838243](https://news.ycombinator.com/item?id=12838243)

Abstract:

[http://www.nature.com/nature/journal/vaop/ncurrent/full/natu...](http://www.nature.com/nature/journal/vaop/ncurrent/full/nature19846.html)</comment>


Open source app to generate any GraphQL server documentation instantly - <AUTHOR> https://github.com/dhruv-kumar-jha/graphql-doc <comment><USER2> If it meets the guidelines, this might make a good 'Show HN'. Show HN guidelines: [https://news.ycombinator.com/showhn.html](https://news.ycombinator.com/showhn.html)

<comment><AUTHOR> Thank you.</comment></comment>


What's new in Docker 1.13: prune, secrets, checkpoints and more - <AUTHOR> https://www.cloudshare.com/blog/whats-new-docker-1-13 <comment><USER2> I'm really looking forward to seeing the scientific community adopt docker as a way to distribute reproducible research and coursework.

MIT 6.S094 has a Dockerfile[^1] that contains all the software required for taking part in the class. This is a huge boon for getting stuck into the class and its coursework.

[^1]: [http://selfdrivingcars.mit.edu/files/Dockerfile](http://selfdrivingcars.mit.edu/files/Dockerfile)

<comment><USER3> How is publishing a Dockerfile even remotely reproducible? Almost every Dockerfile is a series of apt-get install, or yum install or pip install commands. How do I know what versions of packages I am downloading or whether they will even be available to download if I build from this Dockerfile, say two months from now?

IMHO, every Dockerfile has left-pad written all over it.

<comment><USER4> Good question.

Reproduciblity is all about the starting point. Computers are electronic, so if your computation requires high entropy from some random source and supposed next run there is not enough entropy your experiment may fail. But that's really really really a corner case. Docker image keeps the state of the starting point (kernel, packages, history of bashrc etc) are kept version controlled. It is as if someone gave you a copy of the virtualbox image.

So how do we lock down?

1) When you start with a Dockerfile, specify the version of the packages you are installing

2) When you want to reproduce, you can rebuild an image with that Dockerdile.

3) But most people are just going to use your image which is always the same now or next year. Building image != launching a container using an image.

</comment></comment></comment><comment><USER5> I'm just a guy that wants to deploy web apps. Is docker overkill for me? Basically, I want to be able to test something on my local machine under the same conditions it will be running on my server. Containerisation seems like the only way to do this that doesn't involve keeping packages and system configurations in sync in two or more systems.

<comment><USER6> Docker may be overkill to start but it's relatively low cost to implement and it will definitely pay dividends over time:

        * You can be sure that what you're running locally
          is exactly what you'll be running on the server
        * Your deployment experience will be the same
          regardless of which tech stack you're using for the
          web application
        * There are many places you can deploy docker
          containers (Google GCE, Amazon ECS, Amazon EB, etc.)
        * A web application is often composed of several
          services (e.g. the web app, a database, redis etc.)
          and docker compose makes it easy to fire all of
          those up in development e.g. if a new
          developer joins, they only need to install
          docker rather than web app framework +
          database + redis
        * Docker sets you up quite well to grow into a
          more complex deployment (e.g. using Kubernetes)

<comment><USER7> > it's relatively low cost to implement

Running Docker in production takes a huge amount of effort to get right and is not easily done.

<comment><USER8> I dont believe that's an accurate assessment. If the grandparent wants to run a one off container with reproducible results, something like docker-compose is perfect. If he wants to run a multi-node microservices architecture then the story gets more complicated.

<comment><USER9> i run a lot of small projects with docker-compose on a single host and it makes deploying my changes very easy. Maybe there is a low cost setting it up, but i think eve with a small project it pays it divides pretty fast.

</comment></comment></comment></comment></comment><comment><USER10> Does this mean the qcow2 disk space usage in Mac is fixed?

<comment><USER11> Yep, just tested it. The qcow2 disk space gets reclaimed on Docker restart.

<comment><USER10> Sweet. Now time to play. I followed that bug until i got tired of it. Took a couple of months! Good on them for fixing it. Thanks!

</comment></comment></comment><comment><USER12> As much as I welcome the CLI cleanup, I can't stop thinking that the 'docker ps -> docker container ls' change makes no sense to anyone who has any experience with bsd/unix/linux systems. Seriously, why?

<comment><USER13> I agree. It looks like `docker ps` still works so it's nothing to really be concerned about just yet.

<comment><USER14> `docker ps` will never be removed.

</comment></comment></comment><comment><USER15> Secrets is a big one! Will really help speed up enterprise adoption.

</comment><comment><USER16> Looks like there's a mistake about image pruning:

"Add -f to get rid of all unused images (ones with no containers running them)."

But the option is actually `-a` -- `-f` just simply skips the prompt.

<comment><USER17> Like this?

docker rmi -af

I'm a bit confused by the backticks as I use them all the time scripting, but also in Markdown.

<comment><USER18> I have a gist for it: [https://gist.github.com/pubkey/73dcb894cf5f7d262863](https://gist.github.com/pubkey/73dcb894cf5f7d262863)

#stop and delete all containers

docker rm -f $(docker ps -a -q)

#delete all images

docker rmi -f $(docker images -q)

<comment><USER19> This is NOT equivalent. The OP was talking about removing _unused_ images. Your commands remove _all_ images.

<comment><USER20> Maybe this?

        docker rm $(docker ps -qa --no-trunc --filter "status=exited")
        docker rmi $(docker images --filter "dangling=true" -q --no-trunc)

</comment></comment></comment></comment></comment><comment><USER21> Prune seems not that well thought to me. Don't get me wrong, I do find it useful but many people use containers as environments. Think about how many people are going to run prune only to find their work go missing.

If you are gonna add a nuclear button, do it with a big red alert and give the option to whitelist some containers.

<comment><USER16> But that's really what `docker rm` is for, isn't it? I mean, if you want to only delete specific containers, use that. Prune has a specific purpose, which I think is very clear. If you're running the command, you (presumably) know what it should be doing.

I suppose you could argue it might be nice to be able to do something like `docker container prune startsWith*` or something similar. But on the other hand, that functionality is already available -- just use `docker rm` with xargs or something.

<comment><USER21> But the thing people complain most isn't because they want to delete everything but because they need docker rm, xargs and complex bash foo to delete the containers and images they don't need.

For example I want to delete all old and all untagged versions of an image. I want to delete all stopped containers that use a specific image, or that were created more than two weeks ago. I want to delete all images starting with test.

Nuke everything? Not so much and to be honest this would be the easiest even with xargs and docker rm.

<comment><USER14> fyi, you do not need xargs.

`docker rm $(docker ps -q --filter blash)`

But agree, `prune` is currently sledge hammer and needs some refinement. It's not about not being well thought out, it's about getting something out there that can be built on top of.

<comment><USER21> Thanks, it was too long since I used filter and it wasn't that interesting. Seems much better now!

</comment></comment></comment></comment></comment><comment><USER22> Curious what methods others use for handling secrets at build time (using docker-compose). I'm currently installing (private) dependencies at runtime by mounting my secrets as a volume. I couldn't find a method that didn't seem to have some risk of inadvertently exposing them.

<comment><USER23> There are only methods that I'm aware of:

\- Exposing the secrets on a (http) server that the Dockerfile can use to fetch

\- What we use: Create a one time use secret that is destroyed after the image is built and before it is pushed.

<comment><USER24> >What we use: Create a one time use secret that is destroyed after the image is built and before it is pushed.

This approach has sparked my interest, could you post an example of any open source docker-compose file and/or associated scripts that would do this?

<comment><USER22> I did actually encounter this solution while researching the problem, didn't love it, but you can check out the solution at: [https://github.com/docker/docker/issues/13490#issuecomment-1...](https://github.com/docker/docker/issues/13490#issuecomment-162125128)

As long as you add the file and remove it in the same command it doesn't get committed as an extra layer, so the container won't have any history of the secrets. You'll run into problems if you do multiple RUN's or an ADD and then RUN.

</comment></comment></comment></comment><comment><USER25> Why not one 'prune' command with 'containers', 'images', ... as an argument / subcommand?

Would have seemed more intuitive to me.

<comment><USER26> All of the other commands have been namespaced by what they deal with, so I think it makes more sense in the come t of everything else.</comment></comment>


Augmented Reality Could Be Coming to Your Contact Lens - <AUTHOR> http://singularityhub.com/2009/10/15/augmented-reality-could-be-coming-to-your-contact-lens/

<comment><USER2> It would be nice to get it on something as portable as normal glasses first.

</comment><comment><USER3> Anyone remember the Baroness books from the 70's? She did this in one of them - also she drove a racing car with a spoiler 'controlled by a computer the size of a poker chip' - the first mention of microprocessors in literature I think - this was 72 or so...</comment>


Ask HN: Which language should I learn in 2017? Why should I learn? - <AUTHOR> Wish you the happiest new year!<p>I would like you to help me choose the language. <comment><USER2> Scala.

</comment><comment><USER3> Chinese seems to be a good idea</comment>


If everyone ate beans instead of beef - <AUTHOR> https://www.theatlantic.com/health/archive/2017/08/if-everyone-ate-beans-instead-of-beef/535536/ <comment><USER3> If you think the populist rural tide that gave us Trump is bad now, imagine what happens if the beef industry in the US collapses. Yes I know this article is mainly to highlight the differences, but I am seriously concerned about the rise of self-driving trucks and plant based "meats" and the damage they will do to communities. The parts of the country hit by this still get to vote.

<comment><USER4> They probably ought to take the guns away before they take the meat.

</comment></comment><comment><USER5> [https://www.youtube.com/watch?v=FXHkFZ- nG4Y](https://www.youtube.com/watch?v=FXHkFZ-nG4Y)

</comment><comment><USER6> So instead of us feeding the beans to the cows we eat them directly - <USER2> extra step makes it inefficient. That makes sense. Unfortunately beans don't occupy the same place in a meal, so the easiest solution seems to be to just not eat beef nor the beans, but then we need a substitute food.

This seems to be neat math more than practical solution.

<comment><USER7> Isn't that the whole point of Beyond and Impossible? Make vegetables have the same place in the meal as the meat they replace?

<comment><USER6> It is - hopefully those turn out to be actually healthy and sustainable options. Having had a beyond meat burger, I was totally happy with the experience. Unfortunately, I don't think it'll follow through for most other forms of beef, and I have some concerns in regards to its heavily processed nature.

</comment></comment></comment><comment><USER8> What about methane emissions?

<comment><USER9> Ours, or the cows?

<comment><USER10> Yes</comment></comment></comment>