1. 7

    with this extra $50 million they’ll surely have the resources to support federating their servers. let’s see it moxie.

    1. 3

      I hope so too, but Moxie Marlinspike voiced quite principal concerns against federations before https://signal.org/blog/the-ecosystem-is-moving/

      1. 5

        That was the day I realised I had to boycott Signal too

        1. 2

          Generally I don’t like “me too” posts, but in this case, me too! This is unacceptable. Using phone numbers as sole userids, is also unacceptable in my book.

          1. 1

            What is wrong with using phone numbers as ids? Was it wrong 50 years ago?

            1. 4

              First, I don’t want to give my phone number to strangers. I am okay with giving my e-mail address (or some other kind of token) to strangers.

              Second, at least for myself, e-mail addresses are eternal, while phone numbers are very ephemeral. Especially if you travel or move a lot.

              Third, Signal doesn’t just depend on your phone number, it somehow depends on your SIM card (not sure of tech details). You can’t change your SIM card and continue to use Signal smoothly. For me this is a blocker. It means I can’t use Signal even for testing purposes, as I switch SIM cards often.

              Apple iMessage gets this right. You can have any number of ids, including phone numbers or e-mails. I am identified by either one of those. I can be contacted by people who have either in their address book. And I can switch my SIM card any time I want. Of course, iMessage is not equivalent to Signal, nor is iMessage a good example to follow apart from the UX.

              Also I must add a fourth point about Signal. Until relatively recently there was no way to use it on a real computer. Now there’s an Electron application, which to me still means there is no way to use it on a real computer. I do not know if 3rd parties can implement real native desktop applications or not, but there are no such applications today.

              1. 3

                Third, Signal doesn’t just depend on your phone number, it somehow depends on your SIM card (not sure of tech details). You can’t change your SIM card and continue to use Signal smoothly. For me this is a blocker. It means I can’t use Signal even for testing purposes, as I switch SIM cards often.

                I have a burner phone that was initially set up with a throw-away prepaid SIM. After doing the initial setup (including with Signal), I threw away the SIM and put the phone in airplane mode. The phone now sits behind a fully Tor-ified wireless network. Signal’s still working fine.

                Maybe if I were to put in a new SIM card, Signal might go crazy.

                And since this is a burner phone that sits behind Tor with a number that’s meant to be public, here it is: +1 443-546-8752. :)

                1. 2

                  I have a burner phone

                  You can’t legally acquire a pre-paid SIM in the European Union without registering it against your ID. They did it to ‘thwart terrorism’.

                  1. 1

                    Interesting. They give out pre-paid SIMs as promotions on the street here in Sweden, or at least they used to. Maybe the ID check comes at the first top-up.

                    1. 1

                      In the past you were able to obtain them anonymously.

                      They still give them away like candy but it won’t operate unless you register it by providing your ID at the operator. Though I’m speaking based on Poland - don’t know how other countries regulated this.

                      1. 1

                        I see. I don’t know if it’s a specific EU-related law / regulation or whether each country has their own rules.

                        1. 2

                          Some EU countries have regulations limiting the possibility to purchase prepaid cards to the stationary shops of telecommunications operators. Such solutions have been adopted i.a. in Germany, United Kingdom, Spain, Bulgaria and Hungary. Obligation to collect data concerning subscribers who use telecommunications services can be found i.a. in the German law.

                          source: http://krakowexpats.pl/utilities/mandatory-registration-of-prepaid-sim-cards/

                          Funny I thought it was a cross EU law. Regardless, that still makes it very annoying that signal has no other means of making an ID. I don’t really want to give my mobile to everyone, and there is no way to use signal anonymously in countries that do regulate sim registration.

                    2. 1

                      What that would do is create a black market for pre-paid SIMs, where you have a single entity registering tons of SIMs and reselling them pre-activated.

                      1. 2

                        That is what is happening on the street, criminals approach durnkards etc. to register a SIM on them and resell or use that themselves.

                        Point is, for a regular person there is no legal way to obtain an anonymous SIM. Creating a legal entity registering SIMs is also not possible. This means that signal can’t be used anonymously if you want to stay on the legal side.

                        1. 2

                          Completely agreed. It’s unfortunate to see such silly laws that are so easy to be skirted around. All it does is make people who would otherwise be honest and trustworthy break the law.

                    3. 1

                      At least in my country, phone numbers can, and eventually, will be reallocated when not in use for several years. So aren’t you running at a small risk that someone else might register ‘your’ number with Signal in a few years?

                    4. 1

                      A me-too-style reply for what @lattera said.

                      A friend lives abroad and got a local SIM on a visit once. When he went back, he discarded his SIM, unknown to me.

                      When I heard he might be visiting again, I sent a Signal message asking if this still works. To our surprise, it did.

                      So this myth needs to be busted.

                      It may have a bug, though, as I sent a Signal message to another friend and got a reply from a foreign phone number. He told me it’s the number of a SIM he used on a business trip.

                      That’s a different issue someone else can hunt down, but Signal is more anonymous than eg. Bitcoin as it stands today.

              2. 1

                this is so dumb

                • it’s a messaging app… how much can people’s expectations evolve? how have they evolved since signal’s inception?
                • the cost of switching between services is low only for services that already have mass adoption. if moxie started fucking around with the protocol and people weren’t having it, network effects mean there would be no alternative (whatsapp and facebook messenger are not alternatives)
            1. 3

              Not having their five pairs of legs properly represented is one thing, but always being shown as a dead lobster is something else entirely!

              I’d like the lobster to be very much alive, please!

              1. 1

                But then you have to pick if it should be grey, brown, blue, yellow, green or probably even other colours!

                1. 2

                  Human emoji have different colors now, why not lobsters? #dontboilmebro

                  1. 1

                    #zoidberg

              1. 2

                is it passé to mention namecoin?

                1. 3

                  If only there was a way to have a decentralized name registry that did not go fully trustless, requiring all the coin crap…

                  Would be nice if something like dename took off.

                  But it seems like nothing will :( No one wants a name service that is not already used by everyone.

                  1. 1

                    Well, to be fair, today is the first time I’ve ever heard of dename. Definitely sounds interesting!

                    I have heard of Namecoin but I haven’t looked into it that deeply.

                  2. 2

                    How would Namecoin have assisted in preventing this issue?

                    1. 1

                      if enough people had clients supporting fully decentralised DNS, human failures such as those described here would be less likely (or replaced by technical problems, at worst). it would be nice if a decentralised solution got at least a bit of traction so they could just tweet something along the lines of “website still up at alternate.domain, visit us there!”

                      1. 2

                        I agree that a decentralized DNS would be great, but I still don’t know how Namecoin specifically can help achieve that.

                    2. 1

                      I thought namecoin was just used to buy .bit domains on ZeroNet?

                    1. 6

                      What part of “decapod” don’t you understand, Unicode consortium?!

                      1. 4

                        I used Google Wave briefly to plan a trip with some friends. It had a lot of potential, actually.

                        1. 5

                          I also used Google Wave and agree; I saw the potential right away. It’s a shame it was underappreciated and the project wasn’t a priority and given more resources.

                          1. 1

                            I’ve used iOS notes and it makes edits instantly visible. I’m sure there are other collaborative tools available.

                          1. 1

                            Does anyone know why Aperture Science is included in the style guide but not Black Mesa?

                            1. 2

                              Black Mesa suffered a physical breach, Aperture Science didn’t?

                              1. 1

                                It’s been a while since I played the Portal series but what kind of breach did Aperture Science experience? Would the Wheatley takeover be considered a breach? Or Chell’s escape?

                                1. 2

                                  I now realized I misunderstood your question completely.

                            1. 5

                              Wow… maybe tone down the shade of red in the progress bar?

                              The color signals “WARNING ALL ACCOUNTS COMPROMISED!”, even though it’s consistent with the color of boiled lobster…

                              1. 3

                                Sure. It was the standard #ac130d that’s used around the site, but I’ve dimmed it to #740804.

                                1. 3

                                  Alternatively, change the bar into a conga line of lobster emojis.

                                  1. 1

                                    Sadly I don’t think the actual emoji is released yet?

                                    1.  

                                      Could use the one referenced here -> https://www.thesun.co.uk/fabulous/5647842/lobster-emoji-issue/ maybe?

                                1. 5

                                  It seems odd to spend so much space discussing the complexities of software development, only to conclude that the answer is empiricism. Surely the number of variables and their non-linear effects make experimentation difficult. I think $10M is an extremely tiny fraction of what a reproducible experiment would cost, and it would take a long time to run. You need a huge scale in number of projects and also lengthy longitudinal studies of their long-term impacts. And after you did all that the gigantic experiment would be practically certain to perturb what it’s trying to measure: programmer behavior. Because no two projects I’m on get the same me. I change, mostly by accumulating scar tissue.

                                  Empiricism works in a tiny subset of situations where the variables have been first cleaned up into orthogonal components. I think in this case we have to wait for the right perspective to find us. We can’t just throw money at the problem.

                                  1. 6

                                    What else can we do? Our reason is fallible, our experiences are deceitful, and we can’t just throw our hands up and say “we’ll never know”. Empiricism is hard and expensive, but at least we know it works. It’s gotten us results about things like n-version programming and COCOMO and TDD and formal methods. What would you propose we do instead?

                                    1. 4

                                      Empiricism is by no means the only thing that works. Other things that work: case studies, taxonomies, trial and error with motivation and perseverance. Other things, I’m sure. All of these things work some of the time – including empiricism. It’s not like there’s some excluded middle between alchemy and science. Seriously, check out that link in my comment above.

                                      I’m skeptical that we have empirically sound results about any of the things you mentioned, particularly TDD and formal methods. Pointers? For formal methods I find some of @nickpsecurity’s links kinda persuasive. On some mornings. But those are usually case studies.

                                      Questions like “static or dynamic typing” are deep in not-even-wrong territory. Using empiricism to try to answer them is like a blind man in a dark room looking for a black cat that isn’t there.

                                      Even “programming” as a field of endeavor strikes me as a false category. Try to understand that domain you’re interested in well enough to automate it. Try a few times and you’ll get better at it – in this one domain. Leave the task of generalization across domains to future generations. Maybe we’ll eventually find that some orthogonal axis of generalization works much better. Programming in domain X is like ___ in domain X more than it is like programming in domain Y.

                                      You ask “what else is there?” I respond in the spirit of Sherlock Holmes: “when you have excluded the impossible, whatever is left, however unlikely, is closer to the answer.” So focus on your core idea that the number of variables is huge, and loosen your grip on empiricism. See where that leads you.

                                      1. 5

                                        I think we’re actually on the same page here. I consider taxonomies, ethnographies, case studies, histories, and even surveys as empirical. It’s not just double blind clinical studies: as Making Software put it, qualitative findings are just as important.

                                        I reject the idea that these kinds of questions are “not even wrong”, though. There’s no reason to think programming is any more special than the rest of human knowledge.

                                        1. 2

                                          Ah ok. If by empiricism you mean, “try to observe what works and do more of that”, sure. But does that really seem worth saying?

                                          It can be hard psychologically to describe a problem well in an article and then not suggest a solution. But sometimes that may be the best we can do.

                                          I agree that programming is not any more special than the rest of human knowledge. That’s why I claim these questions are not even wrong. Future generations will say, “sure static typing is better than dynamic typing by about 0.0001% on average, but why did the ancients spend so much time on that?” Consider how we consider ancient philosophers who worried at silly questions like whether truth comes from reason or the senses.

                                          Basically no field of human endeavor had discovered the important questions to ask in its first century of existence. We should spend more time doing and finding new questions to ask, and less time trying to generalize the narrow answers we discover.

                                          1. 3

                                            Ah ok. If by empiricism you mean, “try to observe what works and do more of that”, sure. But does that really seem worth saying?

                                            It’s not quite that. It’s all about learning the values and limitations of all the forms of knowledge-collection. What it means to do a case study and how that differs from a controlled study, where ethnographies are useful, etc. It’s not “observe what works and do more of that”, it’s “systematically collect information on what works and understand how we collect and interpret it.”

                                            Critically in that is that the information we collect by using “reason” alone is minimal and often faulty, but it’s how almost everybody interprets software. That and appealing to authority, really.

                                            Basically no field of human endeavor had discovered the important questions to ask in its first century of existence. We should spend more time doing and finding new questions to ask, and less time trying to generalize the narrow answers we discover.

                                            The difference is that we’ve already given software control over the whole world. Everything is managed with software. It guides our flights and runs our power grid. Algorithms decide whether people go to jail or go free. Sure, maybe code will look radically different in a hundred years, but right now it’s here and present and we have to understand it.

                                            1. 2

                                              It is fascinating that we care about the same long-term problem but prioritize sub-goals so differently. Can you give an example of a more important question than static vs dynamic typing that you want to help answer by systematically collecting more information?

                                              Yes, we have to deal with the code that’s here and present. My answer is to reduce scale rather than increase it. Don’t try to get better at running large software projects. Run more small projects; those are non-linearly more tractable. Gradually reduce the amount of code we rely on, and encourage more people to understand the code that’s left. A great example is the OpenBSD team’s response to Heartbleed. That seems far more direct an attack on existing problems than any experiments I can think of. Experiments seem insufficiently urgent, because they grow non-linearly more intractable with scale, while small-scale experiments don’t buy you much: if you don’t control for all variables you’re still stuck using “reason”.

                                              1. 2

                                                Can you give an example of a more important question than static vs dynamic typing that you want to help answer by systematically collecting more information?

                                                Sure. Just off the top of my head:

                                                • How much does planning ahead improve error rate? What impacts, if any, does agile have?
                                                • What are the main causes of cascading critical failures in systems, and what can we do about them?
                                                • When it comes to maximizing correctness, how much do intrinsic language features matter vs processes?
                                                • I don’t like pair programming. Should I be doing it anyway?
                                                • How do we audit ML code?
                                                • How much do comments help? How much does documentation help?
                                                • Is goto actually harmful?

                                                Obviously each of these have ambiguity and plenty of subquestions in them. The important thing is to consider them things we can investigate, and that investigating them is important.

                                                1. 0

                                                  Faced with Cthulhu, you’re trying to measure how the tips of His tentacles move. But sometimes you’re conflating multiple tentacles! Fthagn!

                                                  1. 1

                                                    As if you can measure tentacles in non-Euclidean space without going mad…

                                                    1. 1

                                                      Now you’re just being rude. I made a good faith effort to answer all of your questions and you keep condescending to me and insulting me. I respect that you disagree with me, but you don’t have to be an asshole about it.

                                                      1. 2

                                                        Not my intention at all! I’ll have to think about why this allegory came across as rude. (I was more worried about skirting the edge when I said, “is that really worth talking about?”) I think you’re misguided, but I’m also aware that I’m pushing the less likely theory. It’s been fun chatting with you precisely because you’re trying to steelman conventional wisdom (relative to my more outre idea), and I find a lot to agree with. Under it all I’ve been hoping that somebody will convince me to return to the herd so I can stop wasting my life. Anyway, I’ll stop bothering you. Thanks for the post and the stimulating conversation.

                                              2. 2

                                                “try to observe what works and do more of that”

                                                That is worth saying, because it can easily get lost when you’re in the trenches at your job, and can be easy to forget.

                                          2. 2

                                            What else can we do?

                                            If describing in terms of philosophies, then there’s also reductionism and logic. The hardware field turning analog into digital lego’s and Oberon/Forth/Simula for software come to mind for that. Maybe model-driven engineering. They break software into fundamental primitives that are well-understood which then compose into more complex things. This knocks out tons of problems but not all.

                                            Then, there’s logical school that I’m always posting about as akkartik said where you encode what you want, the success/failure conditions, how you’re achieving them, and prove you are. Memory safety, basic forms of concurrency safety, and type systems in general can be done this way. Two of those have eliminated entire classes of defects in enterprise and FOSS software using such languages. CVE list indicates the trial-and-error approach didn’t works as well. ;) Failure detection/recovery algorithms, done as protocols, can be used to maintain reliability in all kinds of problematic systems. Model-checking and proof has been most cost-effective in finding protocol errors, esp deep ones. Everything being done with formal methods also falls into this category. Just highlighting high impact stuff. Meyer’s Eiffel Method might be said to combine reductionism (language design/style) and logic (contracts). Cleanroom, too. Experimental evidence from case studies showed Cleanroom was very low defect, even on first use by amateurs.

                                            Googled a list of philosophies. Let’s see. There’s the capitalism school that says the bugs are OK if profitable. The existentialists say it only matters if you think it does. The phenomenologists say it’s more about how you perceived the failure from the color of the screen to the smell of the fire in the datacenter. The emergentists say throw college grads at the problem until something comes out of it. The theologists might say God blessed their OS to be perfect with criticism not allowed. The skeptics are increasingly skeptical of the value of this comment. The… I wonder if it’s useful to look at it in light of philosophy at all given where this is going so far. ;)

                                            I look at it like this. We have most of what we want out of a combo of intuition, trial-and-error, logic, and peer review. This is a combo of individuals’ irrational activities with rational activity on generating and review side of ideas. I say apply it all with empirical techniques used to basically just catch nonsense from errors, bias, deception, etc. The important thing for me is whether something is working for what problems at what effort. If it works, I don’t care at all whether there’s studies about it with enough statistical algorithms or jargon used in them. However, at least how they’re tested and vetted… the evidence they work… should have rigor of some kind. I also prefer ideological diversity and financial independence in reviewers to reduce collusion problem science doesn’t address enough. A perfectly-empirical study with 100,000+ data points refusing my logic that Windows is insecure is less trustworthy when the people who wrote it are Microsoft employees wanting a NDA for the data they used, eh?

                                            I’ll throw out another example that illustrates it nicely: CompCert. That compiler is an outlier where it proves little to nothing about formal verification in general most empiricists might tell you. Partly true. Skepticism’s followers might add we can’t prove that this problem and only this problem was the one they could express correctly with logic if they weren’t misguided or lying to begin with. ;) Well, they use logical school of specifying stuff they prove is true. We know from testing vs formal verification analysis that testing or trial-and-error can’t ensure the invariants due to state space exploration. Even that is a mathematical/logical claim because otherwise you gotta test it haha. The prior work with many formal methods indicate they reduce defects a lot in a wide range of software at high cost with simplicity of software required. Those generalizations have evidence. The logical methods seem to work within some constraints. CompCert pushes those methods into new territory in specification but reuses logical system that worked before. Can we trust claim? Csmith throws CPU years of testing against it and other compilers. Its defect rate bottoms out, mainly spec errors, unlike about any compiler ever tested that I’ve seen in the literature. That matches prediction of logical side where errors in proven components about what’s proven should be rare to nonexistent.

                                            So, the empirical methods prove certain logical systems work in specific ways like ensuring proof is at least as good as the specs. We should be able to reuse logical systems proven to work to do what they’re proven to be good at. We can put less testing into components developed that way when resources are constrained. Each time something truly new is done like that we review and test the heck out of it. Otherwise, we leverage it since things that logically work for all inputs to do specific things will work for the next input with high confidence since we vetted the logical system itself already. Logically or empirically, we can therefore trust methods ground in logic as another tool. Composable, black boxes connected in logical ways plus rigorous testing/analysis of the box and composition methods are main ways I advocate doing both programming and verification. You can keep applying those concepts over and over regardless of tools or paradigms you’re using. Well, so far in what I’ve seen anyway…

                                            @derek-jones, tag you’re it! Or, I figure you might have some input on this topic as a devout empiricist. :)

                                            1. 2

                                              Googled a list of philosophies. Let’s see. There’s the capitalism school that says the bugs are OK if profitable. The existentialists say it only matters if you think it does. The phenomenologists say it’s more about how you perceived the failure from the color of the screen to the smell of the fire in the datacenter. The emergentists say throw college grads at the problem until something comes out of it. The theologists might say God blessed their OS to be perfect with criticism not allowed. The skeptics are increasingly skeptical of the value of this comment. The… I wonder if it’s useful to look at it in light of philosophy at all given where this is going so far. ;)

                                              Awesome, hilarious paragraph.

                                              We have most of what we want out of a combo of intuition, trial-and-error, logic, and peer review. This is a combo of individuals’ irrational activities with rational activity on generating and review side of ideas. I say apply it all with empirical techniques used to basically just catch nonsense from errors, bias, deception, etc. The important thing for me is whether something is working for what problems at what effort. If it works, I don’t care at all whether there’s studies about it with enough statistical algorithms or jargon used in them.

                                              Yes, totally agreed.

                                            2. 2

                                              What else can we do? Our reason is fallible, our experiences are deceitful, and we can’t just throw our hands up and say “we’ll never know”.

                                              Why not? The only place these arguments are questioned or really matter is when it comes to making money and software has ridiculous margins, so maybe it’s just fine not knowing. I know high-risk activities like writing airplane and spaceship code matter, but those folks seem to not really have much contention about about if their methods work. It’s us folks writing irrelevant web services that get all uppity about these things.

                                          1. 2

                                            I come to the same conclusion from the other side: I agree with the idea of filtering by tags in principle, but I couldn’t care less about whether a new tag is or isn’t adopted since it will or will not be there for filtering at my discretion.

                                            The discussion about the tag itself is just bikeshedding to me. It would be nice if I could filter it.

                                            1. 3

                                              So you propose a bikeshedding tag?

                                              1. 2

                                                The title of https://lobste.rs/t/meta is

                                                Lobsters-related bikeshedding

                                                So that’s covered…

                                            1. 2

                                              This thread is just a way to express my disappointment against (what I consider to be) irrelevant threads that have spawned here lately.

                                              This is better addressed by flagging posted content (“downvoting”).

                                              1. 5

                                                Tagception?

                                                1. 2

                                                  I wanted to go there, but didn’t.

                                                1. 16

                                                  Isn’t it just easier to hide the relatively few discussions about tags that turn up?

                                                  1. 6

                                                    I think the faulty assumption is that the happiness of users and developers is more important to the corporate bottom line than full control over the ecosystem.

                                                    Linux distributions have shown for a decade that providing a system for reliable software distribution while retaining full user control works very well.

                                                    Both Microsoft and Apple kept the first part, but dropped the second part. Allowing users to install software not sanctioned by them is a legacy feature that is removed – slowly to not cause too much uproar from users.

                                                    Compare it to the time when Windows started “phoning home” with XP … today it’s completely accepted that it happens. The same thing will happen with software distributed outside of Microsoft’s/Apple’s sanctioned channels. (It indeed has already happened on their mobile OSes.)

                                                    1. 8

                                                      As a long-time Linux user and believer in the four freedoms, I find it hard to accept that Linux distributions demonstrate “providing a system for reliable software distribution while retaining full user control works very well”. Linux distros seems to work well for enthusiasts and places with dedicated support staff, but we are still at least a century away from the year of Linux on the desktop. Even many developers (who probably have some overlap with the enthusiast community) have chosen Macs with unreliable software distribution like Homebrew and incomplete user control.

                                                      1. 2

                                                        I agree with you that Linux is still far away from the year of Linux on the desktop, but I think it is not related to the way Linux deals with software distribution.

                                                        There are other, bigger issues with Linux that need to be addressed.

                                                        In the end, the biggest impact on adoption would be some game studios releasing their AAA title as a Linux-exclusive. That’s highly unlikely, but I think it illustrates well that many of the factors of Linux’ success on the desktop hinge on external factors which are outside of the control of users and contributors.

                                                        1. 2

                                                          All the devs I know that use mac use linux in some virtualisation options instead of homebrew for work. Obviously thats not scientific study by any means.

                                                          1. 8

                                                            I’ll be your counter example. Homebrew is a great system, it’s not unreliable at all. I run everything on my Mac when I can, which is pretty much everything except commercial Linux-only vendor software. It all works just as well, and sometimes better, so why bother with the overhead and inconvenience of a VM? Seriously, why would you do that? It’s nonsense.

                                                            1. 4

                                                              Maybe a VM makes sense if you have very specific wishes. But really, macOS is an excellent UNIX and for most development you won’t notice much difference. Think Go, Java, Python, Ruby work. Millions of developers probably write on macOS and deploy on Linux. I’ve been doing this for a long time and ‘oh this needs a Linux specific exception’ is a rarity.

                                                              1. 4

                                                                you won’t notice much difference.

                                                                Some time ago I was very surprised that hfs is not case sensitive (by default). Due to a bad letter-case in an import my script would fail on linux (production), but worked on mac. Took me about 30 minutes to figure this out :)

                                                                1. 3

                                                                  You can make a case sensitive code partition. And now with APFS, partitions are continuously variable size so you won’t have to deal with choosing how much goes to code vs system.

                                                                  1. 1

                                                                    A case sensitive HFS+ slice on a disk image file is a good solution too.

                                                                  2. 2

                                                                    Have fun checking out a git repo that has Foo and foo in it :)

                                                                    1. 2

                                                                      It was bad when microsoft did it in VB, and it’s bad when apple does it in their filesystem lol.

                                                                  3. 2

                                                                    Yeah definitely. And I’ve found that accommodating two platforms where necessary makes my projects more robust and forces me to hard code less stuff. E.g. using pkg-config instead of yolocoding path literals into the build. When we switched Linux distros at work, all the packages that worked on MacOS and Linux worked great, and the Linux only ones all had to be fixed for the new distro. 🙄

                                                                  4. 2

                                                                    I did it for awhile because I dislike the Mac UI a lot but needed to run it for some work things. Running in a full screen VM wasn’t that bad. Running native is better, but virtualization is pretty first class at this point. It was actually convenient in a few ways too. I had to give my mac in for repair at one point, so I just copied the VM to a new machine and I was ready to run in minutes.

                                                                    1. 3

                                                                      I use an Apple computer as my home machine, and the native Mac app I use is Terminal. That’s it. All other apps are non-Apple and cross-platform.

                                                                      That said, MacOS does a lot of nice things. For example, if you try to unmount a drive, it will tell you what application is still using it so you can unmount it. Windows (10) still can’t do that, you have to look in the Event viewer(!) to find the error message.

                                                                      1. 3

                                                                        In case it’s unclear, non-Native means webapps, not software that doesn’t come preinstalled on your Mac.

                                                                        1. 3

                                                                          It is actually pretty unclear what non-Native here really means. The original HN post is about sandboxed apps (distributed through the App Store) vs non-sandboxed apps distributed via a developer’s own website.

                                                                          Even Gruber doesn’t mention actual non-Native apps until the very last sentence. He just talks/quotes about sandboxing.

                                                                          1. 3

                                                                            The second sentence of the quoted paragraph says:

                                                                            Cocoa-based Mac apps are rapidly being eaten by web apps and Electron pseudo-desktop apps.

                                                                      2. 1

                                                                        full-screen VM high-five

                                                                      3. 1

                                                                        To have environment closer to production I guess (or maybe ease of installation, dunno never used homebrew). I don’t have to use mac anymore so I run pure distro, but everyone else I know uses virtualisation or containers on their macs.

                                                                        1. 3

                                                                          Homebrew is really really really easy. I actually like it over a lot of Linux package managers because it first class supports building the software with different flags. And it has binaries for the default flag set for fast installs. Installing a package on Linux with alternate build flags sucks hard in anything except portage (Gentoo), and portage is way less usable than brew. It also supports having multiple versions of packages installed, kind of half way to what nix does. And unlike Debian/CentOS it doesn’t have opinions about what should be “in the distro,” it just has up to date packages for everything and lets you pick your own philosophy.

                                                                          The only thing that sucks is OpenSSL ever since Apple removed it from MacOS. Brew packages handle it just fine, but the python package system is blatantly garbage and doesn’t handle it well at all. You sometimes have to pip install with CFLAGS set, or with a package specific env var because python is trash and doesn’t standardize any of this.

                                                                          But even on Linux using python sucks ass, so it’s not a huge disadvantage.

                                                                          1. 1

                                                                            Installing a package on Linux with alternate build flags sucks hard in anything except portage

                                                                            You mention nix in the following sentence, but installing packages with different flags is also something nix does well!

                                                                            1. 1

                                                                              Yes true, but I don’t want to use NixOS even a little bit. I’m thinking more vs mainstream distro package managers.

                                                                            2. 1

                                                                              For all its ease, homebrew only works properly if used by a single user who is also an administrator who only ever installs software through homebrew. And then “works properly” means “install software in a global location as the current user”.

                                                                              1. 1

                                                                                by a single user who is also an administrator

                                                                                So like a laptop owner?

                                                                                1. 1

                                                                                  A laptop owner who hasn’t heard that it’s good practice to not have admin privileges on their regular account, maybe.

                                                                              2. 1

                                                                                But even on Linux using python sucks ass, so it’s not a huge disadvantage.

                                                                                Can you elaborate more on this? You create a virtualenv and go from there, everything works.

                                                                                1. 2

                                                                                  It used to be worse, when mainstream distros would have either 2.4 or 2.6/2.7 and there wasn’t a lot you could do about it. Now if you’re on python 2, pretty much everyone is 2.6/2.7. Because python 2 isn’t being updated. Joy. Ruby has rvm and other tools to install different ruby versions. Java has a tarball distribution that’s easy to run in place. But with python you’re stuck with whatever your distro has pretty much.

                                                                                  And virtualenvs suck ass. Bundler, maven / gradle, etc. all install packages globally and let you exec against arbitrary environments directly (bundle exec, mvn exec, gradle run), without messing with activating and deactivating virtualenvs. Node installs all it’s modules locally to a directory by default but at least it automatically picks those up. I know there are janky shell hacks to make virtualenvs automatically activate and deactivate with your current working directory, but come on. Janky shell hacks.

                                                                                  That and pip just sucks. Whenever I have python dependency issues, I just blow away my venv and rebuild it from scratch. The virtualenv melting pot of files that pip dumps into one directory just blatantly breaks a lot of the time. They’re basically write once. Meanwhile every gem version has it’s own directory so you can cleanly add, update, and remove gems.

                                                                                  Basically the ruby, java, node, etc. all have tooling actually designed to author and deploy real applications. Python never got there for some reason, and still has a ton of second rate trash. The scientific community doesn’t even bother, they use distributions like Anaconda. And Linux distros that depend on python packages handle the dependencies independently in their native package formats. Ruby gets that too, but the native packages are just… gems. And again, since gems are version binned, you can still install different versions of that gem for your own use without breaking anything. Python there is no way to avoid fucking up the system packages without using virtualenvs exclusively.

                                                                                  1. 1

                                                                                    But with python you’re stuck with whatever your distro has pretty much.

                                                                                    I’m afraid you are mistaken, not only distros ship with 2.7 and 3.5 at same time (for years now) it is usually trivial to install newer version.

                                                                                    let you exec against arbitrary environments directly (bundle exec, mvn exec, gradle run), without messing with activating and deactivating virtualenvs

                                                                                    You can also execute from virtualenvs directly.

                                                                                    Whenever I have python dependency issues, I just blow away my venv and rebuild it from scratch.

                                                                                    I’m not sure how to comment on that :-)

                                                                                    1. 1

                                                                                      it is usually trivial to install newer version

                                                                                      Not my experience? How?

                                                                                      1. 1

                                                                                        Usually you have packages for all python versions available in some repository.

                                                                        2. 2

                                                                          Have they chosen Macs or have they been issued Macs? If I were setting up my development environment today I’d love to go back to Linux, but my employers keep giving me Macs.

                                                                          1. 3

                                                                            Ask for a Linux laptop. We provide both.

                                                                            I personally keep going Mac because I want things like wifi, decent power management, and not having to carefully construct a house of cards special snowflake desktop environment to get a useable workspace.

                                                                            If I used a desktop computer with statically affixed monitors and an Ethernet connection, I’d consider Linux. But Macs are still the premier Linux laptop.

                                                                            1. 1

                                                                              At my work place every employee is given a Linux desktop and they have to do a special request to get a Mac or Windows laptop (Which would be in addition to their Linux desktop).

                                                                          2. 3

                                                                            Let’s be clear though, what this author is advocating is much much worse from an individual liberty perspective than what Microsoft does today.

                                                                            1. 4

                                                                              Do you remember when we all thought Microsoft were evil for bundling their browser and media player? Those were good times.

                                                                          1. 4

                                                                            As usual, David apparently fails or refuses to understand how and why PoW is useful and must attack it at every opportunity (using his favorite rhetorical technique of linking negatively connoted phrases to vaguely relevant websites).

                                                                            That said, the article reminds me of a fun story - I went to a talk from a blockchain lead at <big bank> a while back and she related that a primary component of her job was assuring executives that, in fact, they did not need a blockchain for <random task>. This had become such a regular occurrence that she had attached this image to her desk.

                                                                            1. 10

                                                                              What would you consider a useful situation for PoW? In the sense that no other alternative could make up for the advantages in some real life use-case?

                                                                              But otherwise, and maybe it’s just me, since I agree wuth his premise, but I see @David_Gerard as taking the opposite role of popular blockchain (over-)advocates, who claim that the technology is the holy grail for far too many problems. Even if one doesn’t agree with his conclusions, I enjoy reading his articles, and find them very informative, since he doesn’t just oppose blockchains from a opinion-based position, but he also seems to have the credentials to do so.

                                                                              1. 1

                                                                                Relying to @gerikson as well. I personally believe that decentralization and cryptographically anchored trust are extremely important (what David dismissively refers to as “conspiracy theory economics”). We know of two ways to achieve this: proof of work, and proof of stake. Proof of stake is interesting but has some issues and trade-offs. If you don’t believe that PoW mining is some sort of anti-environmental evil (I don’t) it seems to generally offer better properties than PoS (like superior surprise-fork resistance).

                                                                                1. 13

                                                                                  I personally believe that decentralization and cryptographically anchored trust are extremely important

                                                                                  I personally also prefer decentralised or federalised systems, when they have a practical advantage over a centralized alternative. But I don’t see this to be the case with most application of the blockchain. Bitcoin, as a prime example, to my knowledge is too slow, too inconvenient, too unstable and too resource hungry to have a practical application, as a real substitute for money, either digital or virtual. One doesn’t have the time to wait 20m or more whenever one pays for lunch or buys some chewing gum at a corner shop, just because some other transactions got picked up first by a miner. It’s obviously different when you want to do something like micro-donations or buying illegal stuff, but I just claim that this isn’t the basis of a modern economy.

                                                                                  Cryptography is a substitute for authority, that is true, but I don’t belive that this is always wanted. Payments can’t be easily reveresed, addresses mean nothing, clients might loose support because the core developers arbitrarily change stuff. (I for example am stuck with 0.49mBTC from an old Electrum client, and I can’t do anything with it, since the whole system is a mess, but that’s rather unrelated.) This isn’t really the dynamic basis which capitalism has managed to survive on for this long. But even disregarding all of this, it simply is true that bitcoin isn’t a proper decentralized network like BitTorrent. Since the role of the wallet and the miner is (understandably) split, these two parts of the network don’t scale equally. In China gigantic mining farms are set up using specialized hardware to mine, mine, mine. I remember reading that there was one farm that predominated over at least 10% of the total mining power. All of this seems to run contrary to the proclaimed ideals. Proof of Work, well “works” in the most abstract sense, that it produces the intended results on one side, at the cost of disregarding everything can be disregarded, irrespective of whether it should be or not. And ultimately I prioritise other things over an anti-authority fetish, as do most people -which reminds us that even if everything I said is false that Bitcoin just doesn’t have the adoption to be significant enough to anyone but Crypto-Hobbiests, Looney Libertarians and some soon-to-fail startups in Silicon Valley.

                                                                                  1. 5

                                                                                    there was one farm that predominated over at least 10% of the total mining power

                                                                                    There was one pool that was at 42% of the total mining power! such decentralization very security

                                                                                      1. 5

                                                                                        To be fair, that was one pool consisting of multiple miners. What I was talking about was a single miner controlling 10% of the total hashing power.

                                                                                        1. 7

                                                                                          That’s definitely true.

                                                                                          On the other hand, if you look at incident reports like https://github.com/bitcoin/bips/blob/master/bip-0050.mediawiki — the pool policies set by the operators (often a single person has this power for a given pool) directly and significantly affect the consensus.

                                                                                          Ghash.io itself did have incentives to avoid giving reasons for accusations that would tank Bitcoin, but being close to 50% makes a pool a very attractive attack target: take over their transaction and parent-block choice, and you take over the entire network.

                                                                                      2. 0

                                                                                        But I don’t see this to be the case with most application of the blockchain.

                                                                                        Then I would advise researching it.

                                                                                        One doesn’t have the time to wait 20m or more whenever one pays for lunch or buys some chewing gum at a corner shop

                                                                                        Not trying to be rude, but it’s clear whenever anyone makes this argument that they don’t know at all how our existing financial infrastructure works. In fact, it takes months for a credit card transaction to clear to anything resembling the permanence of a mined bitcoin transaction. Same story with credit cards.

                                                                                        Low-risk merchants (digital goods, face-to-face sales, etc.) rarely require the average 10 minute (not sure where you got 20 from) wait for a confirmation.

                                                                                        If you do want permanence, Bitcoin is infinitely superior to any popular payment mechanism. Look into the payment limits set by high-value fungible goods dealers (like gold warehouses) for bitcoin vs. credit card or check.

                                                                                        Bitcoin just doesn’t have the adoption to be significant enough to anyone but Crypto-Hobbiests, Looney Libertarians and some soon-to-fail startups in Silicon Valley.

                                                                                        Very interesting theory - do you think these strawmen you’ve put up have collective hundreds of billions of dollars? As an effort barometer, are you familiar with the CBOE?

                                                                                        1. 10

                                                                                          Please try to keep a civil tone here.

                                                                                          Also, it’s hard to buy a cup of coffee or a steam game or a pizza with bitcoin. Ditto stocks.

                                                                                          1. -4

                                                                                            It’s hard to be nice when the quality of discourse on this topic is, for some reason, abysimally low compared to most technical topics on this site. It feels like people aren’t putting in any effort at all.

                                                                                            For example, why did you respond with this list of complete non-sequiturs? It has nothing to do with what we’ve been discussing in this thread except insofar as it involves bitcoin. I feel like your comments are normally high-effort, so what’s going on? Does this topic sap people’s will to think carefully?

                                                                                            (Civility is also reciprocal, and I’ve seen a lot of childish name-calling from the people I’m arguing with in this thread, including the linked article and the GP.)

                                                                                            Beyond the fact that this list is not really relevant, it’s also not true; you could have just searched “bitcoin <any of those things>” and seen that you can buy any of those things pretty easily, perhaps with a layer of indirection (just as you need a layer of indirection to buy things in the US if you already have EUR). In that list you gave, perhaps the most interesting example in bitcoin’s disfavor is Steam; Steam stopped accepting bitcoin directly recently, presumably due to low interest. However, it’s still easy to buy games from other sources (like Humble) with BTC.

                                                                                            1. 6

                                                                                              IMO, your comments are not very inspiring for quality. As someone who does not follow Bitcoin or the Blockchain all that much, I have not felt like any of your comments addressed anyone else’s comments. Instead, I have perceived you as coming off as defensive and with the attitude of “if you don’t get it you haven’t done enough research because I’m right” rather than trying to extol the virtues of the blockchain. Maybe you aren’t interested in correcting any of what you perceive as misinformation on here, and if so that’s even worse.

                                                                                              For example, I do not know of any place I can buy pizza with bitcoin. But you say it is possible, but perhaps with a layer of indirection. I have no idea what this layer of indirection is and you have left it vague, which does not lend me to trusting your response.

                                                                                              In one comment you are very dismissive of people’s Bitcoins getting hacked, but as a lay person, I see news stories on this all the time with substantial losses and no FDIC, so someone like me considers this a major issue but you gloss over it.

                                                                                              Many of the comments I’ve read by you on this thread are a similar level of unhelpful, all the while claiming the person you’re responding to is some combination of lazy or acting dumb. Maybe that is the truth but, again, as an outsider, all I see is the person defending the idea coming off as kind of a jerk. Maybe for someone more educated on the matter you are spot on.

                                                                                              1. 5

                                                                                                There is a religious quality to belief in the blockchain, particularly Bitcoin. It needs to be perfect in order to meet expectations for it: it can’t be “just” a distributed database, it has to be better than that. Bitcoin can’t be “just” a payment system, it has to be “the future of currency.” Check out David’s book if you’re interested in more detail.

                                                                                          2. 8

                                                                                            In fact, it takes months for a credit card transaction to clear to anything resembling the permanence of a mined bitcoin transaction. Same story with credit cards.

                                                                                            But I don’t have to wait months for both parties to be content the transaction is successful, only seconds, so this is really irrelevant to the point you are responding to, which is that if a Bitcoin transaction takes 10m to process then I heave to wait 10m for my transaction to be done, which people might not want to do.

                                                                                            1. -1

                                                                                              Again, as I said directly below the text you quoted, most merchants don’t require you to wait 10 minutes - only seconds.

                                                                                            2. 5

                                                                                              Then I would advise researching it.

                                                                                              It is exactly because I looked into the inner workings of Bitcoin and the Blockchain - as a proponent I have to mention - that I became more and more skeptical about it. And I still do support various decentralized and federated systems: BitTorrent, IPFS, (proper) HTTP, Email, … but just because the structure offers the possibility for a decentralized network, doesn’t have to mean that this potential is realized or that it is necessarily superior.

                                                                                              Not trying to be rude, but it’s clear whenever anyone makes this argument that they don’t know at all how our existing financial infrastructure works. In fact, it takes months for a credit card transaction to clear to anything resembling the permanence of a mined bitcoin transaction. Same story with credit cards.

                                                                                              The crucial difference being that, let’s say the cashier nearly instantaneously hears a some beep and knows that it isn’t his responsibility, nor that of the shop, to make sure that the money is transfered. The Bank, the credit card company or whoever has signed a binding contract lining this technical part of the process out to be what they have to care about, and if they don’t, they can be sued since there is an absolute regulatory instance - the state - in the background. This mutual delegation of trust, gives everyone a sense of security (regardless of how true or false it is) that makes people spend money instead of hording it, investing into projects instead of trading it for more secure assets. Add Bitcoins aforementioned volatileness, and no reasonable person would want to use it as their primary financial medium.

                                                                                              If you do want permanence, Bitcoin is infinitely superior to any popular payment mechanism.

                                                                                              I wouldn’t conciser 3.3 to 7 transactions per second infinitely superior to, for example Visa with an average of 1,700 t/s. Even it you think about it, there are far more that just 7 purchases being made a second around the whole world for this to be realistically feasible. But on the other side, as @friendlysock Bitcoin makes up for it by not having too many things you can actually buy with it: The region I live in has approximately a million or something inhabitants, but according to CoinMap even by the most generous measures, only 5 shops (withing a 30km radius) accepting it as a payment method. And most of those just offer it to promote themselves anyway.

                                                                                              Very interesting theory - do you think these strawmen you’ve put up have collective hundreds of billions of dollars? As an effort barometer, are you familiar with the CBOE?

                                                                                              (I prefer to think about my phrasing as a exaggeration and a handful of other literary deviced, instead of a fallacy, but never mind that) I’ll give you this: It has been a while since I’ve properly engaged with Bitcoin, and I was always more interested in the technological than the economical side, since I have a bit of an aversion towards libertarian politics. And it might be true that money is invested, but that still doesn’t change anything about all the other issues. It remains a bubble, a volatile, unstable, unpredictable bubble, and as it is typical for bubbles, people invest disproportional sums into it - which in the end makes it a bubble.

                                                                                              1. 0

                                                                                                The crucial difference being that, let’s say the cashier nearly instantaneously hears a some beep and knows that it isn’t his responsibility, nor that of the shop, to make sure that the money is transfered.

                                                                                                Not quite. The shop doesn’t actually have the money. The customer can revoke that payment at any time in the next 90 or 180 days, depending. Credit card fraud (including fraudulent chargebacks) is a huge problem for businesses, especially online businesses. There are lots of good technical articles online about combatting this with machine learning which should give you an idea of the scope of the problem.

                                                                                                makes people spend money instead of hording it,

                                                                                                Basically any argument of this form (including arguments for inflation) don’t really make sense with the existence of arbitrage.

                                                                                                Add Bitcoins aforementioned volatileness, and no reasonable person would want to use it as their primary financial medium.

                                                                                                So it sounds like it would make people… spend money instead of hoarding it, which you were just arguing for?

                                                                                                I wouldn’t conciser 3.3 to 7 transactions per second infinitely superior to, for example Visa with an average of 1,700 t/s.

                                                                                                https://lightning.network

                                                                                                as @friendlysock Bitcoin makes up for it by not having too many things you can actually buy with it

                                                                                                This is just patently wrong. The number of web stores that take Bitcoin directly is substantial (both in number and traffic volume), and even the number of physical stores (at least in the US) is impressive given that it’s going up against a national currency. How many stores in the US take even EUR directly?

                                                                                                Anything you can’t buy directly you can buy with some small indirection, like a BTC-USD forex card.

                                                                                                It remains a bubble, a volatile, unstable, unpredictable bubble

                                                                                                It’s certainly volatile, and it’s certainly unstable, but it may or may not be a bubble depending on your model for what Bitcoin’s role in global finance is going to become.

                                                                                                1. 5

                                                                                                  Not quite. The shop doesn’t actually have the money. The customer can revoke that payment at any time in the next 90 or 180 days, depending

                                                                                                  You’ve still missed my point - it isn’t important if the money has been actually transfered, but that there is trust that a framework behind all of this will guarantee that the money will be there when it has to be, as well as a protocol specifying what has to be done if the payment is to be revoked, if a purchase wishes to be undone, etc.

                                                                                                  Credit card fraud (including fraudulent chargebacks) is a huge problem for businesses, especially online businesses.

                                                                                                  Part of the reason, I would suspect is that the Internet was never made to be a platform for online businesses - but I’m not going to deny the problem, I’m certainly not a defender of banks and credit card companies - just an opponent of Bitcoin.

                                                                                                  Basically any argument of this form (including arguments for inflation) don’t really make sense with the existence of arbitrage.

                                                                                                  Could you elaborate? You have missed my point a few times already, so I’d rather we understand each other instead of having two monologues.

                                                                                                  So it sounds like it would make people… spend money instead of hoarding it, which you were just arguing for?

                                                                                                  No, if it’s volatile people either won’t buy into it in the first place. And if a currency is unstable, like Bitcoin inflating and deflating all the time, people don’t even know what do do with it, if it were their main asset (which I was I understand you are promoting, but nobody does). I doubt it will ever happen, since if prices were insecure, the whole economy would suffer, because all the “usual” incentives would be distorted.

                                                                                                  https://lightning.network

                                                                                                  I haven’t heard of this until you mentioned it, but it seems like it’s quite new, so time has to test this yet-another-bitcoin-related project that has popped up. Even disregarding that it will again need to first to make a name of it self, then be accepted, then adopted, etc. from what I gather, it’s not the ultimate solution (but, I might be wrong), especially since it seems to encourage centralization, which I believe is what you are so afraid of.

                                                                                                  This is just patently wrong. The number of web stores that take Bitcoin directly is substantial (both in number and traffic volume),

                                                                                                  Sure, there might be a great quantity of shops (as I mentioned, who use Bitcoin as a medium to promote themselves), but I, and from what I know most people, don’t really care about these small, frankly often dodgy online shops. Can I use it to pay directly on Amazon? Ebay? Sure, you can convert it back and forth, but all that means it that Bitcoin and other crypto currencies are just an extra step for life stylists and hipster, with no added benefit. And these shops don’t even accept Bitcoin directly, to my knowledge always just so they can convert it into their national currency - i.e. the one they actually use and Bitcoins value is always compared to. What is even Bitcoin without the USD, the currency it hates but can’t stop comparing itself to?

                                                                                                  and even the number of physical stores (at least in the US) is impressive given that it’s going up against a national currency.

                                                                                                  The same problems apply as I’ve already mentioned, but I wonder: have you actually ever used Bitcoin to pay in a shop? I’ve done it once and it was a hassle - in the end I just bought it with regular money like a normal person because it was frankly too embarrassing to have the cashier have to find the right QR code, me to take out my phone, wait for me got get an internet connection, try and scan the code, wait, wait, wait…. And that is of course only if you want to make the trip to buy for the sake of spending money, and decide to make a trip to some place you’d usually never go to buy something you don’t even need.

                                                                                                  Ok when you’re buying drugs online or doing something with microdonations, but otherwise… meh.

                                                                                                  How many stores in the US take even EUR directly?

                                                                                                  Why should they? And even if they do, they convert it back to US dollars, because that’s the common currency - there isn’t really a point in a currency (one could even question if it is one), when nobody you economically interact with uses it.

                                                                                                  Anything you can’t buy directly you can buy with some small indirection, like a BTC-USD forex card.

                                                                                                  So a round-about payment over a centralized instance - this is the future? Seriously, this dishonesty of Bitcoin advocates (and Libertarians in general) is why you guys are so unpopular. I am deeply disgusted that I have ever advocated for this mess.

                                                                                                  It’s certainly volatile, and it’s certainly unstable, but it may or may not be a bubble depending on your model for what Bitcoin’s role in global finance is going to become.

                                                                                                  So you admit that is has none of the necessary preconditions to be a currency… but for some reason it will… do what exactly? If you respond to anything I mentioned here, at least tell me this: What is your “model” for what Bitcoin’s role is going to be?

                                                                                          3. 14

                                                                                            Why don’t you believe it is anti-enviromental? It certainly seems to be pretty power hungry. In fact it’s hunger for power is part of why it’s effective. All of the same arguments about using less power should apply.

                                                                                            1. -1

                                                                                              Trying to reduce energy consumption is counterproductive. Energy abundance is one of the primary driving forces of civilizational advancement. Much better is to generate more, cleaner energy. Expending a few terrawatts on substantially improved economic infrastructure is a perfectly reasonable trade-off.

                                                                                              Blaming bitcoin for consuming energy is like blaming almond farmers for using water. If their use of a resource is a problem, you should either get more of it or fix your economic system so externalities are priced in. Rationing is not an effective solution.

                                                                                              1. 10

                                                                                                on substantially improved economic infrastructure

                                                                                                This claim definitely needs substantiation, given that in practice bitcoin does everything worse than the alternatives.

                                                                                                1. -1

                                                                                                  bitcoin does everything worse than the alternatives.

                                                                                                  Come on David, we’ve been over this before and discovered that you just have a crazy definition of “better” explicitly selected to rule out cryptocurrencies.

                                                                                                  Here’s a way Bitcoin is better than any of its traditional digital alternatives; bitcoin transactions can’t be busted. As you’ve stated before, you think going back on transactions at the whim of network operators is a good thing, and as I stated before I think that’s silly. This is getting tiring.

                                                                                                  A few more, for which you no doubt have some other excuse for why this is actually a bad thing; Bitcoin can’t be taken without the user’s permission (let me guess; “but people get hacked sometimes”, right?). Bitcoin doesn’t impose an inflationary loss on its users (“but what will the fed do?!”). Bitcoin isn’t vulnerable to economic censorship (don’t know if we’ve argued about this one; I’m guessing you’re going to claim that capital controls are critical for national security or something.). The list goes on, but I’m pretty sure we’ve gone over most of it before.

                                                                                                  I’ll admit that bitcoin isn’t a panacea, but “it does everything worse” is clearly a silly nonsensical claim.

                                                                                                2. 4

                                                                                                  Reducing total energy consumption may or may not be counterproductive. But almost every industry I can name has a vested interest in being more power efficient for it’s particular usage of energy. The purpose of a car isn’t to burn gasoline it is to get people places. If it can do that with less gasoline people are generally happier with it.

                                                                                                  PoW however tries to maximizes power consumption, via second order effects , with the goal of making it expensive to try to subvert the chain. It’s clever because it leverages economics to keep it in everyone’s best interest to not fork but it’s not the same as something like a car where reducing energy consumption is part of the value add.

                                                                                                  I think that this makes PoW significantly different than just about any other use of energy that I can think of.

                                                                                                  1. 3

                                                                                                    Indeed. The underlying idea of Bitcoin is to simulate the mining of gold (or any other finite, valuable resource). By ensuring that an asset is always difficult to procure (a block reward every 10 minutes, block reward halving every 4 years), there’s a guard against some entity devaluing the currency (literally by fiat).

                                                                                                    This means of course that no matter how fast or efficient the hardware used to process transactions becomes, the difficulty will always rise to compensate for it. The energy per hash calculation has fallen precipitously, but the number of hash calculations required to find a block has risen to compensate.

                                                                                              2. 6

                                                                                                We’ve been doing each a long time without proof of work. There’s lots of systems that are decentralized with parties that have to look out for each other a bit. The banking system is an example. They have protocols and lawyers to take care of most problems. Things work fine most of the time. There are also cryptographically-anchored trust systems like trusted timestamping and CA’s who do what they’re set up to do within their incentives. If we can do both in isolation without PoW, we can probably do both together without PoW using some combination of what’s already worked.

                                                                                                I also think we haven’t even begun to explore the possibilities of building more trustworthy charters, organizational incentives, contracts, and so on. The failings people speak of with centralized organizations are almost always about for-profit companies or strong-arming governments whose structure, incentives, and culture is prone to causing problems like that. So, maybe we eliminate root cause instead of tools root cause uses to bring problems since they’ll probably just bring new forms of problems. Regulations, disruption, or bans of decentralized payment is what I predicted would be response with some reactions already happening. They just got quite lucky that big banks like Bank of America got interested in subverting it through the legal and financial system for their own gains. Those heavyweights are probably all that held the government dogs back. Ironically, the same ones that killed Wikileaks by cutting off its payments.

                                                                                            2. 8

                                                                                              In what context do you view proof-of-work as useful?

                                                                                              1. 11

                                                                                                You have addressed 0 of the actual content of the article.

                                                                                              1. 10

                                                                                                Helpful hint: you can turn slack notifications off.

                                                                                                1. 9

                                                                                                  When I did this my coworkers got super mad I wasn’t answering things promptly.

                                                                                                  1. 3

                                                                                                    Do they get mad when you try to negotiate for “Do No Distract” times in the day?

                                                                                                    1. 4

                                                                                                      We didn’t have a culture where people actually followed that. You could have a do not disturb time but people would interrupt you anyway. A couple of us started making fake meetings just to get some time to code.

                                                                                                      1. 3

                                                                                                        Ouch. It’s telling when things get that bad.

                                                                                                        1. 2

                                                                                                          A couple of us started making fake meetings just to get some time to code.

                                                                                                          It’s a good trick, I’ve been doing this for years so I could make sure I got lunch and time to do work.

                                                                                                          1. 3

                                                                                                            Wow. These comments, and the recent thread about maybe not working long hours, paint a bleak picture of current work practices in the US.

                                                                                                      2. 4

                                                                                                        get better co-workers

                                                                                                        1. 1

                                                                                                          I actually got the different answer. I was using slack as a message queue, when I saw a coworker that I wanted to distract, I’d slack them (via the app) and wait for an answer, but they actually prefered me to come to talk to them and bother them.

                                                                                                          I found this weird but complied…

                                                                                                        2. 7

                                                                                                          If you read the article, notifications are only a very small part of the problem. The author was speaking about wide scale effects happening at the organization level.

                                                                                                          1. 3

                                                                                                            This. So much this. I know that the discussion can take different forms and sometimes there are also larger organizational issues at play. But with that said, I think people often forget that they can disable notification on devices. I’ve seen co-workers across two companies leave notifications on for every single message in a channel (yes, you read that correctly) and with sound nonetheless. It baffles me.

                                                                                                            macOS comes with a built-in Do Not Disturb mode. Slack lets you configure your notifications so that you’re not getting notifications for each single message across a bajillion channels.

                                                                                                            [Slack] normalizes interruptions, multitasking, and distractions, implicitly permitting these things to happen IRL as well as online. It normalizes insanely short reply times for questions. In the slack world people can escalate from asking in a room to @person to @here in a matter of minutes. And they’re not wrong to – if your request isn’t handled in 5 minutes it’s as good as forgotten.

                                                                                                            Somewhere along the way we forgot that interruptions are toxic to real work. It wasn’t always this way. On day 1 of my first trading job the only instruction I received was ‘when the market is open, mute your phone.’ The subtext was ‘or else’. If someone said this to me today I’d give them a hug, and I’m not a hugger.

                                                                                                            I think people need this reminder today. Outside of work I see people with group chats on their phones (be it Facebook, Twitter, Hangouts, whathaveyou) that bleeps and bloops without rest. I can’t imagine living in that world.

                                                                                                          1. 6

                                                                                                            Why do we use paper in 2018? The children’s books from my childhood promised that stuff would be gone by the year 2000 :(

                                                                                                            1. 9

                                                                                                              At this point paper seems far more durable for the long term than digital.

                                                                                                              1. 4

                                                                                                                Anecdotally, I have heard this same sentiment from professional archivists as well. We’re pretty good at preserving paper over time.

                                                                                                                1. 2

                                                                                                                  If there was something I really wanted to survive past my lifetime I would use a lazer printer, with acid-free paper, and have it laminated in plastic.

                                                                                                              2. 7

                                                                                                                Digital is just not as quick and flexible as paper.

                                                                                                                Think about it. You print something on paper, you want to highlight, just do it, you want to correct it, just write over it, you want to give someone your highlighted and corrected version, just photocopy/scan it.

                                                                                                                You want to write something down, grab a pen, pencil, heck even something that’s pointy enough to make an indent on the paper, and just do it. No need to press a button to turn it on. No need to keep a battery around. etc.

                                                                                                                Closest thing I’ve seen to paper using digital are these nice things called reMarkable, which are nowhere near affordable compared to paper (or a phone/laptop for that matter). Honestly I would consider buying one if they were 50$ lol

                                                                                                                1. 2

                                                                                                                  I have a reMarkable. It seems to me that and iPad with an Apple Pencil would work better.

                                                                                                                2. 5

                                                                                                                  Because not everyone does digital, not everyone does backups and the kids of today know more about how to take pics for Tinder than organize their data.

                                                                                                                  I’m just happy the need for paper has diminished. That’s plenty and we’ll never lose the need altogether anyway.

                                                                                                                  1. 4

                                                                                                                    because industry has not provided a suitable alternative.

                                                                                                                    still waiting on an e-ink device which can run linux and has an sd card slot, replaceable battery, and usb port. an e-ink laptop or even just a monitor would be good too, but alas.

                                                                                                                    1. 4

                                                                                                                      Because every suitable alternative is shackled and hobbled by DRM.

                                                                                                                      1. 3

                                                                                                                        You can read, for instance, the Dead Sea Scrolls, or a copy of a Chinese text written on mulberry paper from 2,300 years ago. Does anybody really think that our descendants will be reading information off of Zip drives or Memory Sticks in 50 years, let alone 500?

                                                                                                                        Paper is an amazingly great technology and it’s uses have yet to be obsoleted by digital technologies.

                                                                                                                        1. 2

                                                                                                                          Not just Zip drives and such. CD-R was supposed to be quite good, but I’ve lost my only copies of some nostalgic and personal data from only 20 years ago, because the fuck it is. Instead I do have drawings from when I was four.

                                                                                                                          Anyone know if the M-Disc is any good?

                                                                                                                          But even then, paper can’t really be replaced, though maybe digital copies could make decent backups if there is proper tech for it.

                                                                                                                        2. 1

                                                                                                                          While paper uses within (Western) offices has probably declined a lot, and there’s less demand for newspapers, there’s still a lot of printing going on - whether on advertising flyers, billboards, decals for vehicles, photographic prints on metal or glass… and paper is used as a substrate a lot.

                                                                                                                          Wood pulp and paper products is still one of the staple export industries of Sweden and Finland.

                                                                                                                          1. 1

                                                                                                                            I have it on fairly good authority Nordic paper isn’t as good as bamboo paper, except that it’s here already.

                                                                                                                            Cardboard is the next big thing, that can’t be made from bamboo as well and people order more and more online.

                                                                                                                            1. 2

                                                                                                                              I believe you’re right, the little I’ve gleaned from my readings is that cardboard production (including the fancy kind used by electronics manufacturers in their packaging) is an big part of the industry here in Sweden now.

                                                                                                                        1. 3

                                                                                                                          Interesting to see some backlash over this, Dave Winer’s objections have caught my eye in particular.

                                                                                                                          On the one hand I’m not sure google should be punishing sites for being http only.

                                                                                                                          On the other hand, what is the open web if your ISP can inject ads into a page where there are none?

                                                                                                                          1. 2

                                                                                                                            I didn’t see a link to Winer’s objection in the linked article. Do you have a reference?

                                                                                                                              1. 4

                                                                                                                                He sounds a bit, well

                                                                                                                                HTTPS is going to burn huge portions of the open web

                                                                                                                                His entire shtick seems to be that he thinks HTTPS is a conspiracy by Google to control the web, somehow.

                                                                                                                                1. 3

                                                                                                                                  He seems to be confounding Google’s motives, which in fairness are probably not altruistic, with the technology itself which is obviously pretty sound.

                                                                                                                                  1. 2

                                                                                                                                    I’ve literally never seen so much FUD in my life. He must have some fundamental misconception about how HTTPS works. I just don’t see how he could be arguing these points otherwise.

                                                                                                                                    I mean, I would be mad if Google really was doing what he thinks they’re doing. But they’re not. He’s also totally missing (ignoring?) the fact that Mozilla is also taking steps matching Google’s.

                                                                                                                                    1. 4

                                                                                                                                      I hate to say it because I have a lot of respect for his work, but I think basically he’s got a lot of domains and can’t be bothered converting them. I totally get the objections against the way Google are approaching this, but going after https itself is dumb.

                                                                                                                                      Why would you think it’s a bad thing that you can guarantee that the site you are viewing has not been tampered with?

                                                                                                                                      I’ve seen him call out Mozilla too in fairness.

                                                                                                                                      1. 1

                                                                                                                                        Meh. Honestly I have no issues with the way Google is approaching this. They (and Mozilla) give plenty of time before making even the tiniest changes, and in the end really all they’re doing is changing the UI to reflect reality.

                                                                                                                                        And without them doing that, people exactly like Winer just wouldn’t care.

                                                                                                                                      2. 3

                                                                                                                                        I’m skimming through, trying to understand it, and he never really states an objection anywhere that I can see. I am familiar with several reasonable objections to the concentration of power created by the CA system and to the burden it imposes on content creators; I just don’t see Winer actually expressing any of them.

                                                                                                                                  2. 1

                                                                                                                                    On the other hand, what is the open web if your ISP can inject ads into a page where there are none?

                                                                                                                                    May be this is better served by adding signatures to the basic HTTP rather than forcing HTTPS everywhere?

                                                                                                                                    1. 2

                                                                                                                                      Wouldn’t that involve the same trust infrastructure but without actually encrypting the traffic?

                                                                                                                                      1. 4

                                                                                                                                        Not completely. The benefit is that intermediaries can cache it if required, and clients can verify the signature only when needed. With the forcing of HTTPS everywhere, a lot of caching infrastructure that existed previously has become useless without any alternatives. These are especially important in low bandwidth countries or communities relying on low bandwidth gateways.

                                                                                                                                  1. 14

                                                                                                                                    So who wants to adopt the lobster for lobste.rs?

                                                                                                                                    1. 6

                                                                                                                                      why not zoidberg?

                                                                                                                                      1. 5

                                                                                                                                        I’m up for donating to a pool for this.

                                                                                                                                        1. 4

                                                                                                                                          Agreed with /u/gerikson, I’m up for a donation pool! Who wants to spearhead it?

                                                                                                                                          1. 15

                                                                                                                                            I could put together a pool to try to hit the Silver or Gold level. The link would point back to a note on the about page. There would be no reward for donating besides the warm glow of knowing you’ve helped support an organization that is the source of so much error handling in our code.

                                                                                                                                            Please take this ad-hoc poll by upvoting the single highest amount you’d donate towards this. Enough support and I’ll put something together. (If you made judicious use of your GPU a few years ago and have cryptocurrency to donate, please select the amount of USD you’d convert it into before sending it because I’m game for a fun lark, not a major project.) (Edit: tweeted)

                                                                                                                                            1. 59

                                                                                                                                              10 USD

                                                                                                                                              1. 17

                                                                                                                                                1 USD

                                                                                                                                                1. 9

                                                                                                                                                  50 USD

                                                                                                                                                  1. 4

                                                                                                                                                    100 USD

                                                                                                                                                    1. 1

                                                                                                                                                      This is in progress.

                                                                                                                                                      1. 1

                                                                                                                                                        500 USD

                                                                                                                                                  1. 4

                                                                                                                                                    What changed in my reasoning?

                                                                                                                                                    First of all, I’m working on other problems. Whereas I used to do a lot of work that was very easy to map to numpy operations (which are fast as they use compiled code), now I write a lot of code which is not straight numerics. And, then, if I have to write it in standard Python, it is slow as molasses. I don’t mean slower in the sense of “wait a couple of seconds”, I mean “wait several hours instead of 2 minutes.”

                                                                                                                                                    So, basically, the author is solving problems Python isn’t good at. So, great - use another tool, Haskell or whatever. I do not see how this says anything useful or interesting about the language itself other than “Python is not optimized for solving numerical problems not addressed with numpy”

                                                                                                                                                    1. 2

                                                                                                                                                      Is Haskell well-optimized for numerical problems?

                                                                                                                                                      1. 8

                                                                                                                                                        It’s OK. The mainline compiler doesn’t have vectorization by default yet. See https://ghc.haskell.org/trac/ghc/wiki/SIMD/Implementation/Status . For some classes of numerical algorithms, you can expect performance on par with (unvectorized) C. For algorithms that are inherently mutation heavy, I generally find that making Haskell exactly as efficient as C removes many of the benefits of using Haskell in the first place. That’s fine for library writers but not great for end users.

                                                                                                                                                        Haskell’s main strength wrt speed is that you can compose high-level things and the abstraction overhead will be unreasonably small. If you’re churning through gigabytes of data per second, you can write Haskell that’s almost as fast as really well optimized C for a small fraction of the effort. However, I wouldn’t really describe the problems this works well on as “numerical”. When I think of “numerical” I usually thing of lots of mutations on big matrices, for which I would rather use Numpy or something. Haskell’s good for many of the things numpy isn’t.

                                                                                                                                                        1. 2

                                                                                                                                                          I may be wrong but my understanding was that haskell does have library support for generalized stream fusion which gets very good performance without having to write particularly clever code.

                                                                                                                                                          https://www.microsoft.com/en-us/research/wp-content/uploads/2016/07/haskell-beats-C.pdf?from=http%3A%2F%2Fresearch.microsoft.com%2Fen-us%2Fum%2Fpeople%2Fsimonpj%2Fpapers%2Fndp%2Fhaskell-beats-c.pdf

                                                                                                                                                          1. 1

                                                                                                                                                            That’s exactly what I meant by

                                                                                                                                                            you can compose high-level things and the abstraction overhead will be unreasonably small

                                                                                                                                                        2. 1

                                                                                                                                                          Excellent question - I have zero idea. It’s compiled, right? So I’d think there’s more room for optimization there, but I dunno.

                                                                                                                                                      1. 3

                                                                                                                                                        Nothing ever gets exploited when access to the system to exploit is very expensive and restrictive in the first place.

                                                                                                                                                        1. 5

                                                                                                                                                          The teams who ran the Iranian nuclear subterfuges would like to have a word with you. You might also find Wiley’s book Unauthorized Access on physical hacking relevant.

                                                                                                                                                          On the one hand, you’re right: that kind of stuff really only applies when you are a seriously high-value target. On the other hand, we’re talking about OpenVMS machines. Many of them are.

                                                                                                                                                          1. 2

                                                                                                                                                            subterfuges

                                                                                                                                                            Nice, I know it’s not really a portmanteau word but it captures to reality perfectly!

                                                                                                                                                            1. 2

                                                                                                                                                              Heh. That was a fun combo fo commenting on my phone over breakfast and forgetting to disable autocorrect, but I’m going to claim I did that on purpose.

                                                                                                                                                          2. 2

                                                                                                                                                            Exactly. See the mainframe OS’s and ancient systems the military runs for examples.