1. 3

    I start learning Rust , after seeing soo many posts about Rust. I actually don’t have the motivation, so I use blog as my motivation. I’ll write everything I learn on my blog

    1. 3

      I created a tutorial for this purpose (with answers). Maybe it helps!

      https://git.sr.ht/~gruberb/onetutorial

      1. 1

        thank you!

    1. 40

      It would be nice to have an example of their previous preaching; as of now this post basically looks like the standard “I switched from Mac to some minimalist-fetishist Linux” bait template you see posted to link aggregators every so often and tick the boxes of what appeals to users there.

      1. 18

        Seems to be a new blog. Found it through some mailing list I am on. I think it’s different, than the usual, because of the insight of “who controls my day-to-day life: Product Owners of FAANG companies or passionate software developers who “are like me”. Therefore I found it insightful.

      1. 3

        I had a Nokia N9 and it is still by far my most loved device I owned. However, even if Nokia would have been managed well, I don’t believe they would have competed well with Google or Apple. The whole platform, access to hardware etc. is far too big and successful. At this point, it’s not about hardware anymore, it’s about software and ecosystem. And I just can’t see Nokia would have succeeded in this.

        Googles Ad revenue (for now) and Apples growing ecosystem make these devices valuable.

        1. 10

          Definitely spending time with my daughter. Seeing her learning about the world and enjoying every little rock and hill connects all the dots in the universe for me and puts work and stress in a different perspective. Spending time in nature with her, explaining what leaves are and why there comes water from the sky and watching her trying to understand is beyond magical.

          1. 7

            Best part for me recently is when I wanted to go take a walk after supper to stretch the old body. I asked my daughter if she wanted to come along and she answered “Oh! I thought you would never ask!”.

            1. 3

              Same. Before we had our kid I kind of not-joked I expected the first year or two to kind of be like having a puppy - helpless, super cute, not particularly clever. It turns out it is absolutely stunning how intelligent human children are, and how incessantly driven they are to learn things.

              Current favourite activity is feeling the texture of oak trees.

              Not only is the - notable - added stress of taking care of a one-year-old in the middle of all this offset by the joy.. it also offsets the stress of all the rest of 2020.

            1. 23

              Nothing particularly surprising here, but a good read. The lack of anything to show for in the blockchain sphere after 12 years except for Bitcoin itself (and even there it’s unclear to me whether that has proven itself, or is just hanging on fueled by money laundering and as support for the shitcoin investment fraud scene).

              I agree with others that it seems barely on topic here. Certainly Stephen Diehl’s Haskell/Crypto criticism from a couple weeks back seemed far more relevant to the site, and that was moderated, presumably because it was deemed off-topic…

              1. 9

                I think the problem is you’re not aware of the developments coming out of the crypto space. Saying that there’s nothing to show for is incorrect, in my opinion.

                1. 7

                  The original article makes that point pretty convincingly; you might want read it and argue against that, instead.

                  (Are you invested in the crypto space by any chance?)

                  1. 9

                    I come from a country that has experienced severe inflation and the consequences of incompetent politicians in control of the central bank. You bet I’m invested in the crypto space. You might be too sooner than you think.

                    1. 12

                      I come from a country that has experienced severe inflation and the consequences of incompetent politicians in control of the central bank.

                      So what developments in the crypto-space has solved this problem? (Referring your original post)

                      1. 7

                        Widespread adoption of a currency that can’t be controlled by any government solves this.

                        Bitcoin in theory solves this, but it’s not scalable, fees become expensive and the consensus algorithm based on PoW is subject to too much systemic risk in my opinion. Some people are concerned about the environmental harm that BTC mining may cause. Promising alternatives to Bitcoin exist that are much more scalable, clean and that seem fit for the purpose of p2p digital cash, however, these technologies need to be stress tested as they make fundamental changes to the traditional BTC protocol. In order to stress test them you need people to use them, but it’s so easy to create a new cryptocurrencies that now there are thousands of them. Many are scams. So legitimate projects need to compete for the trust and attention of people.

                        All this only pertains to those aiming at becoming p2p digital cash, which is my main area of interest, then you have smart contracts which are a whole other world. New developments are coming out all the time and it’s hard to keep up. Extremely interesting experiments and ideas get implemented all the time. You can rest assured that cryptocurrencies are here to stay. Buckle up!

                        1. 3

                          Which brings us full circle: These “better” digital currencies have been touted for 5, 10 years. If these truly were a viable improvement, a successful bitcoin successor could be expected to have emerged, with all the effort that’s been going into the field. By now it seems reasonable to suspect that there’s nothing viable there, and the research busywork machine is just kept rolling (consciously or not) because of the investment fraud incentives.

                          1. 4

                            There ar successful Bitcoin successors, see Monero and the like. Maybe not as successful as anyone would like, but it doesn’t stop them being viable replacements.

                            1. 1

                              Well, we’ll see how things pan out.

                        2. 10

                          You can’t solve a social/political problems with technical solutions.

                          Incompetent politicians will just make cryptocurrencies illegal if the adoption is ever high. They will blame pedo-rings, money laundering, terrorism, drug dealers etc.

                          Technically competent people need to stop thinking the technological space exists in a separate plane from the rest of humanity.

                          1. 3

                            Only because something is made illegal it doesn’t mean that people will comply.

                            1. 4

                              If this is your solution, then why even have crypto-currency? Just don’t comply with the central bank’s monopoly on the money supply.

                              1. 1

                                In most places it hasn’t gotten bad enough yet for the opportunity costs to be too high not to use them.

                                1. 1

                                  So the people are not willing to not comply now but they will start not complying once the crypto new world order is implemented?

                                  1. 1

                                    I had a long answer to your question but my browser crashed. People will do what is best for them. Cryptocurrencies are not immoral and people around the world are starting to adopt them. If this continues and good results are shown, it’d be hard for a liberal (in the freedom, not political sense) government to forbid their use by people. There’s a good case to make that the USD’s time as a reserve currency is coming to an end. Something else will have to take its place.

                                    I recommend you watch this very short video: https://youtu.be/1tHO3cylCRM

                                    1. 2

                                      There’s a good case to make that the USD’s time as a reserve currency is coming to an end.

                                      This was said 10 years ago.

                                      At the end of the day, no cryptocurrency is backed by 10 aircraft carriers, 1000s nukes and millions of people willing too die to keep it afloat.

                                      If this continues and good results are shown, it’d be hard for a liberal (in the freedom, not political sense) government to forbid their use by people.

                                      It would be very easy. Governments have banned private currency before i.e. liberty dollar. The ability to control the money supply is fundamental to a nation’s sovereignty.

                                      Also note that nobody will use a currency that fluctuates in value by 10% daily seriously. That is simply not workable.

                                      1. 1

                                        This was said 10 years ago.

                                        Things change my friend. The dynamics of central banking are structured so that politicians have an incentive to print money in order to make the constituency happy in the short-term, with dire consequences. To see how things have changed, just check this out: https://www.federalreserve.gov/monetarypolicy/bst_recenttrends.htm.

                                        Regarding cryptocurrency, 10 years ago all we had was a whitepaper and an initial implementation. Now you have a whole new asset class, a field full with people working on new projects and ideas. Give it more time.

                                        At the end of the day, no cryptocurrency is backed by 10 aircraft carriers, 1000s nukes and millions of people willing too die to keep it afloat.

                                        None of this matters when you have the central bank controlling that currency printing it without proper regard to monetary phenomena. If people see their money being devalued, they’ll start using something else. It’s as simple as that, even if you try to coerce them not to, they’ll do it. Take my word for this, because I’ve seen it many times.

                                        It would be very easy. Governments have banned private currency before i.e. liberty dollar. The ability to control the money supply is fundamental to a nation’s sovereignty.

                                        This is false. Nations were sovereign before central banks. The problem is that governments like to have power and they get tons of it through controlling the currency. This has to stop, and it’ll stop eventually.

                                        Also note that nobody will use a currency that fluctuates in value by 10% daily seriously. That is simply not workable.

                                        They will if the volatility is better than the impact of holding a devaluing currency is lessened. Also this problem will solve itself once it gains wider adoption. Volatility is caused by a small market cap. People still speculate on fiat money (forex) and even the USD can be subject to quick losses of value. Just look at the USD’s worth over this year, it’s going to shit.

                          2. 3

                            With all due respect, cryptocurrencies are not exactly well known for their stability.

                            An unregulated currency used mostly by speculators and subject to price manipulation is not what I regard as a suitable replacement for fiat.

                            1. 2

                              Well, we’ll see how things pan out.

                              1. 3

                                A fair question is: could something apart from a blockchain-based solution work? Some kind of gold or its facsimile?

                                And out of curiosity: how ok are these crappy governments with their crappy central banks with the use of crypto cash? Is it widespread enough to matter to the government?

                                The EU has put in enough regulation to make it for traditional intents and purposes illegal, unless you do bureaucracy, when it becomes (by my understanding) more trustworthy when dealing on exchanges.

                                Sometimes bitcoin feels like the most overkill solution imaginable, especially now that the “fun” has been sucked out of it; you file it in your taxes or you’re a criminal.

                                1. 3

                                  A fair question is: could something apart from a blockchain-based solution work? Some kind of gold or its facsimile?

                                  Well, we already used gold as currency before and then central banks were established, probably by a combination of reasonable arguments and force. Why go back to something we had before? Gold is not so easy to handle.

                                  And out of curiosity: how ok are these crappy governments with their crappy central banks with the use of crypto cash? Is it widespread enough to matter to the government?

                                  I invite you to discover your independence and your right as an individual to transact with your fellow men and women in whatever means you desire. If anyone tries to coerce you to do otherwise, fight back.

                                  The EU has put in enough regulation to make it for traditional intents and purposes illegal, unless you do bureaucracy, when it becomes (by my understanding) more trustworthy when dealing on exchanges.

                                  Regulation can change.

                                  Sometimes bitcoin feels like the most overkill solution imaginable, especially now that the “fun” has been sucked out of it; you file it in your taxes or you’re a criminal.

                                  BTC is a dinosaur. It’s the original cryptocurrency and much is owed to it. But I personally would like it to be less relevant and let new projects get tested in the world arena. Cryptocurrency is software. Software changes and evolves/

                              2. 3

                                Companies that are using blockchain technology for their services aren’t always advertising it. Even if you could question the use of blockchain in some projects, it doesn’t change the fact that, as in any other technology choices like nosql vs sql, some people pick blockchain for reasons that are legit or perceived to be.

                                1. 12

                                  “Companies picking blockchain” generally means someone gave a fat stack of cash to consultants who know what a merkle tree is. This is useful, but it’s not new or interesting in any way. Calling that “blockchain” is just riding the hype from public trustless cryptocurrencies, which are actually infamous for burning massive amounts of power to fuel extortion/ransomware, all kinds of fraud, and speculation.

                                2. 2

                                  Do you hold any fiat currency investments, savings or pensions?

                                  Might that bias you against crypto mayhaps?

                                  ;-)

                              3. 4

                                The classic Nick Weaver talk is still the best general criticism.

                                1. 1

                                  Arguing that you don’t care about the right to privacy because you have nothing to hide is no different than saying you don’t care about free speech because you have nothing to say.

                                1. 6

                                  The problem with articles like his is….. it’s like saying God doesn’t exist. Well, well done. Happy discussing for the next 1k years.

                                  1. If you are not into economics nor finance, you won’t understand the appeal for Bitcoin. After just 12 years, US banks can store cryptocurrencies now. So Hedge Funds will soon move into the market and buy Bitcoin for their clients. So I would call this a pretty big success. A currency with no country or company behind has a fair share of an investment portfolio of big names like Paul Tudor Jones

                                  2. The argument is pointless. You don’t need Docker to live, you don’t need an iPhone, you need nothing. Everything technological solves a problem created by itself a few years ago.

                                  3. Does Blockchain solve a problem yet? Well it is used and tested. We will see. People sometimes don’t understand that it doesn’t matter if it’s more complicated then just using a database. It’s not a technological problem but a business and politics problem. People are using SalesForce for stuff which can be solved easier. But it you know, the business world cares about different things. So if Blockchain can bring more than 5 companies together to share data and make them public, here you go. Even if it’s 10times more complicated than a simple database.

                                  4. I don’t understand the hatred against Blockchain or Bitcoin at all. If you don’t like it, don’t use it. People trade cryptocurrencies, the gamble, they believe Bitcoin has long lasting value, so be it. Tesla is up a ridiculous amount this year. It’s a religion so far and not value. Maybe comment on it without making any prediction or talking it down or up.

                                  It’s a bit sad, since their other articles are mostly well researched and written, and after reading this piece, I read a few others and subscribed for a year. Great website, I hope they don’t follow blindly into the Blockchain-Hating-Cult like everyone else but try to report on it more nuanced.

                                  1. 10

                                    I don’t understand the hatred against Blockchain or Bitcoin at all. If you don’t like it, don’t use it. People trade cryptocurrencies, the gamble, they believe Bitcoin has long lasting value, so be it.

                                    This is a really frustrating comment because what you’re basically saying is that you don’t understand that your actions affect other people. It’s gross that you would describe cryptocurrencies as gambling as a means of portraying them as neutral, and therefore unworthy of criticism. The idea that people shouldn’t be bothered by gambling because if they don’t like to gamble they can just not gamble is ignoring the fact that people who are brought to financial ruin by gambling have other people in their lives, and those people are affected. Multiple people in my family have been brought to financial ruin by gambling addiction. Do you really think that doesn’t affect the people around them?

                                    I know people that have sunk the majority of their wealth into cryptocurrencies. Friends and family. I’m not the one taking the risks, but I know that if the bubble bursts, those people, people I care about, will need help. That is why I’m bothered by the breathless and seemingly unending parade of empty promises from crypto people.

                                    If you are not into economics nor finance, you won’t understand the appeal for Bitcoin.

                                    honestly so frustrated by this comment too. Every person I know that actually works in finance thinks Bitcoin is ridiculously risky and not stable enough to be a primary investment vehicle for most people. The people I know who are into Bitcoin largely have no interest in finance outside of Bitcoin; they’re nearly all programmers with essentially no financial acumen outside of cryptocurrencies, and no non-crypto investment portfolio. If you have a diversified portfolio and some of your assets are in cryptocurrencies, fine, whatever; that’s a measured risk. But I don’t know a single person like that. Everyone I know with a diversified portolio has no crypto at all, and everyone I know with substantial crypto holdings has essentially no portfolio outside of crypto and some recreational trading on Robinhood.

                                    1. 4

                                      It seems like you are having a problem with your family and friends. In my surrounding, I’m the only one involved. While crypto is a significant part of my worth at the moment, it’s a result of crypto going up, not me investing any serious money. And I’m diversifying.

                                      they’re nearly all programmers

                                      It seems that they are investing into things they might understand, at least from technical side of things. IMHO beats investing into some stock.

                                      That is why I’m bothered by the breathless and seemingly unending parade of empty promises from crypto people.

                                      How is crypto different from startups in that regard? Is the main difference is lack of barrier between “investors” and “enterprises”, no accredited investor institution?

                                      1. 3

                                        An interesting fact is that many HFT companies are going after the cryptocurrencies. These companies are all about volatility and making a lot of trades, not keeping anything. One can extrapolate that cryptocurrencies are nothing about safe investment to keep, but more of a vehicle to get payout through volatility. And I would posit that it’s why they are kept afloat for so long – because companies can gamble easily and reap profits.

                                        1. 1

                                          This reminds me of this ancient HN comment:

                                          https://news.ycombinator.com/item?id=3787375

                                        2. 3

                                          I think you let your emotions affect a lot of your insights. Which is fine when you talk about your friends and family. But in investing, there is no place for that.

                                          So lets say people “sunk all their money into Bitcoin”. What does it mean? Bitcoin, based on the charts, is mainly in the greens. So you accumulated along the years, you are probably in the greens, by a lot.

                                          I invested since 2016, here and there, and I am maybe overall 32% YTY in plus. My other bets in companies and some ETFs are around 7 - 15% in plus. So what gives? Everything you do in investing is betting and managing your risks. What you meant to say is people didn’t learn to manage their risks. If Bitcoin falls below your number you need to sell to still take a profit, sell. All good. Nothing crashed. The stock market went down as much as Bitcoin in March, and Bitcoin went up much more than the stock market overall since then.

                                          I know a ton of people where Bitcoin was the entry drug to their financial education. As everyone will tell you, you might loose money in the beginning because you know, you are learning. You pay tuition at school, and you pay a bit when first investing. But so many people took it as a chance to understand the broader financial system. If more people would actually know and read about it, they would be baffled by the amount of bullshit there is going on and therefore get into the space and make it better.

                                          Owning your own money is a valid reason to own Bitcoin. Warren Buffet doesn’t like Gold, as many. But nobody goes Bananas over it. You have to build a bigger macro narrative for yourself and every day check if you think the market/world is on course and follows your narrative or not. If not, change something.

                                          So what does it mean to have 100% in Bitcoin? Nothing really. If you bought in at 5k and Bitcoin crashes down to 6k and you sell, you still made a profit. As with literally everyhting else. This is “how you trade stocks” (at least the baseline of it), and this is how people use Bitcoin.

                                          I don’t see why you think you are so much smarter than the people around you. That’s the difference between taking a bet (lets say Go will have sufficient market share so I should learn it to get a job, or Bitcoin will outperform other major assets in the next 5 years), and then see if it’s true or not and adjust accordingly. That’s all.

                                          So why not just educate yourself. And help other people educate themselves too.

                                          Now are there scammers around? Hell yes. 99% of the market is complete bollocks. But as with every invention, be it the car, cargo containers etc., you had the crazy ones believing in it. Cargo container didn’t made any sense financially in the beginning, until the surroundings changed.

                                          Central banks will create their own digital currencies (well they already have but it’s used for high street banks) but they will release versions of it for the general public. Lots of banks are going bust in the next few years. Learning and investing into the future is as valid as moving from mainframe to servers (mainframes still run more efficiently in banks then Linux servers, but who cares right?).

                                          1. 2

                                            This is a really frustrating comment because what you’re basically saying is that you don’t understand that your actions affect other people. It’s gross that you would describe cryptocurrencies as gambling as a means of portraying them as neutral, and therefore unworthy of criticism. The idea that people shouldn’t be bothered by gambling because if they don’t like to gamble they can just not gamble is ignoring the fact that people who are brought to financial ruin by gambling have other people in their lives, and those people are affected. Multiple people in my family have been brought to financial ruin by gambling addiction. Do you really think that doesn’t affect the people around them?

                                            Let’s ignore cryptocurrency for the time being - this is a fully-general argument against any kind of human behavior with some kind of risk involved, that a person might foolishly take. It’s not wrong to found a company that offers hang-gliding lessons just because hang-gliding is a relatively high risk activity that people have gotten themselves killed doing in the past. It’s not wrong to operate a craft brewery just because some people are prone to alcoholism.

                                            honestly so frustrated by this comment too. Every person I know that actually works in finance thinks Bitcoin is ridiculously risky and not stable enough to be a primary investment vehicle for most people. The people I know who are into Bitcoin largely have no interest in finance outside of Bitcoin; they’re nearly all programmers with essentially no financial acumen outside of cryptocurrencies, and no non-crypto investment portfolio. If you have a diversified portfolio and some of your assets are in cryptocurrencies, fine, whatever; that’s a measured risk. But I don’t know a single person like that. Everyone I know with a diversified portolio has no crypto at all, and everyone I know with substantial crypto holdings has essentially no portfolio outside of crypto and some recreational trading on Robinhood.

                                            Bitcoin is absolutely not stable enough to be a primary investment vehicle for most people and may never be. This is also true of gold, but that doesn’t mean that the existence of gold is bad. I’m broadly in favor of cryptocurrencies and own some bitcoin and monero myself, and I absolutely have a non-crypto investment portfolio diversified according to my best understanding of the principles of sound portfolio management for small-scale investors. I don’t even think of the small amount cryptocurrency I do own as “part of my investment portfolio”, since I do acutally use it to pay for things I need from time to time. This is a problem with a set of people you know not having the financial acumen to make prudent investment decisions, not the existence of bitcoin.

                                          2. 8

                                            Blockchain-Hating-Cult

                                            When does a critical opinion of something turn into hate? When does a broadly critical consensus about something turn into a cult?

                                            1. 4

                                              When was a technology ever portraied like that? Like there are reports on non-tech websites out there. And without any deep knowledge nor balanced.

                                              People loose their goddamn minds about it, it is ridiculous. So I would say it gives clicks, and it’s part of a movement.

                                              It’s the same as the pro-Blockchain no-matter-what cult.

                                              1. 10

                                                When was a technology ever hated like that?

                                                Innumerable technologies. Apple devices. Windows devices. Game consoles. Programming languages. The internet itself.

                                                And without any deep knowledge nor balanced.

                                                I have deep structural knowledge of the crypto space, and I completely agree with most critical perspectives, including that it’s fundamentally a solution chasing a problem. Does the fact that my opinion is informed make it different, somehow, than if it were less informed?

                                                1. 4

                                                  That’s a philosphical question, but yea, I think it does.

                                                  I don’t disagree with the main statement of the article. But st no-matter which MeetUp I went, people actually working in this space were the biggest critics. So they are very well aware.

                                                  And looking for a solution, isn’t Bitcoin the biggest, mind blowing success? Like really, creating a hedge against the world reserve currency out of the blue? It’s bigger than the success of Wikipedia in my opinon, and maybe just short after Linux.

                                                  1. 4

                                                    And looking for a solution, isn’t Bitcoin the biggest, mind blowing success? Like really, creating a hedge against the world reserve currency out of the blue?

                                                    I don’t consider it successful in any meaningful sense. (I also don’t consider it a currency, by any meaningful definition of currency, and I certainly don’t see it as a hedge against “the world reserve”.) So to say it’s more successful than Wikipedia is totally incoherent to me. But that’s the thing: success doesn’t have a single, objective definition. That’s fine.

                                                2. 6

                                                  When was a technology so heavily peddled by snake-oil salesmen who see it as a get-rich-quick scheme?

                                                  1. 3

                                                    I totally agree. But why just counter-attack? Why not actually report, show facts and let the reader decide. Or actually inform the reader.

                                                    1. 1

                                                      I’ve been following Bitcoin/blockchain since the white paper was released and the linked article is a model of clarity. I especially like the capsule explanation of the consensus protocol.

                                                3. 1

                                                  Whoever flagged this comment as a troll is pretty clearly abusing (or totally ignorant about the intent of) the flagging system. If you’re reading this comment, please do your research and remove the flag. If a mod reads this comment, please investigate this user.

                                              1. 1

                                                In addition to my Thinkpad, I operate a remote server (for around 10 Euros/month) for backups (via rsync) and other fun activities.

                                                Where do you have this remote server from? I’ve been meaning to set up an FTP box on Hetzner to make offsite backups, but curious what other services people use in Germany.

                                                1. 1

                                                  I am using Kimsufi: https://www.kimsufi.com/de/

                                                  Why? Because I want my server location to be in France! Maybe other providers are offering the same, but I used it a while ago and just stick with it now!

                                                1. 7

                                                  But, as I digged deeper and deeper into the language, and watched tutorials, I figured: I can’t do Systems Programming on a MacBook Pro running macOS. Don’t get me wrong: Once you mastered a skill, it doesn’t matter where you operate it on. Also a different machine doesn’t make a huge difference. Although, I might disagree a bit with that. Take loosing weight for example.

                                                  I - disagree with this logic, at least as stated in the article.

                                                  I think what you were going for was “I wanted to switch to a working environment where I could strive to understand (and possibly modify!) every aspect of it all the way down to the bare metal, and in so doing increase my comfort level with and skill in systems programming”.

                                                  I don’t mean to rewrite your article for you, and I’m hardly a writer, but I think you’re actually driving at something worth saying here.

                                                  1. 3

                                                    Thanks, that’s exactly what I meant. English is my second language, so sometimes it shows :)

                                                  1. 23

                                                    This is basically a blog post on how the author set up an Arch Linux machine to code Rust on. There’s almost no Rust-specific content.

                                                    1. 1

                                                      That’s right. I just wanted to give some inspiration and why changing your hardware/software setup can also lead to a better understanding of the how’s and why’s of a programming langauge, in this case Rust.

                                                      1. 6

                                                        changing your hardware/software setup can also lead to a better understanding of the how’s and why’s of a programming langauge, in this case Rust.

                                                        This point wooshed past me. I wrote quite a bit of low-level stuff in Rust on macOS, including hand-rolled linear algebra code with SIMD intrinsics. I could have done the same on Windows with WSL if I had wanted to (or plain Windows, but that’s an alien environment to me). Just inspect the generated machine code (e.g. with cargo-asm). The argumentation here seems to be more about the reduction of distractions and aesthetics. You can work with a full-screen iTerm with tmux on the Mac as well and put it in permanent do not disturb mode to avoid notifications, so I am not sure how valid this point is.

                                                        There is an interesting story to tell about system programming on Linux vs. Mac, but it would be about perf vs. DTrace/Instruments, valgrind for finding memory leaks vs. leaks, etc.

                                                        I have mostly switched back to Linux, but my primary motivation is that if I find a bug or possible improvement in the software or distro (NixOS) that I use, I can fix it myself and submit a patch upstream. Among other things, I am really fed up with macOS bugs, some of which have stuck around for years (e.g. Preview crashing frequently on re-LaTeXing PDF files) that I cannot attempt to fix because the source code is proprietary.

                                                        1. 4

                                                          It seemed more about eliminating distractions than languages or systems programming. It didn’t seem language-specific at all — that same setup would let you focus on Clojure, C++, Haskell, or writing a novel.

                                                          I didn’t get the point about not being able to do systems programming on MacOS. I mean, all those distractions in a Mac are enabled by mind-bogglingly clever systems programming that was done on MacOS!

                                                          Is the idea that by setting up the right “feng shui” on your computer, you create a mental space conducive to the kind of work you want to do? In other words, it’s not all about lack of distraction, but about the right aesthetics? So if you want to do a certain kind of programming, namely headless network servers and the like, you want to work on a bare Linux system? I can understand that — I just recently installed the Go font to do Go in, which in some weird way is now associated with thinking like Russ Cox. :)

                                                      1. 8

                                                        I enjoy your enthusiasm for Rust Bastian but I think you need to be careful with statements that can be interpreted as subjective or incorrect as this is what will stick in folks minds instead of the message you are trying to send. For example:

                                                        Rust can be compiled to a single binary, statically linked with C libraries to not even need a Rust runtime anymore.

                                                        Rust doesn’t have a runtime in the conventional sense of the word. I links against libc by default, as do C programs and has some pre-main code and panic handling code but is generally runtime free whether statically or dynamically linked.

                                                        The compiler helps bringing safe applications out there. Just implementing a web server in Rust will stop SQL Injections and other security risks.

                                                        Implementing a web server in Rust is not enough to eliminate SQL injection. It’s possible to write Rust code succeptable to SQL injection. The same best practices that avoid SQL injection in other languages also apply to Rust, such as don’t interpolate unsanitised user controlled content into SQL queries. Using a library like diesel can help make this safer, just as activerecord can make it safer in Ruby.

                                                        If you’re interested, The Rust Community Team can put you in touch with folks that can proof read posts prior to publishing.

                                                        Anyway I don’t want to discourage you, just provide some feedback.

                                                        1. 1

                                                          Thanks for the feedback! Will do, maybe this one was published too fast, usually I let articles sit for a while and get proof readers in early!

                                                          Will update the post accordingly!

                                                        1. 2

                                                          Does anyone have uBlock Origin filters or UserStyle to decrapify Medium?

                                                          If not I will make one.

                                                          1. 4

                                                            as much as I hate the name, https://makemediumreadable.com/ really helps with this

                                                              1. 1

                                                                I use Stylus to apply custom CSS.

                                                                .js-stickyFooter,
                                                                .overlay,
                                                                .js-metabar,
                                                                .js-metabarSpacer,
                                                                .js-postShareWidget,
                                                                .collectionHeader,
                                                                .progressiveMedia-image,
                                                                .progressiveMedia-canvas,
                                                                .progressiveMedia,
                                                                .aspectRatioPlaceholder,
                                                                .butterBar.
                                                                .postMeterBar {
                                                                    display: none;
                                                                }
                                                                .avatar-image {
                                                                    border-radius: 4px !important;
                                                                }
                                                                
                                                                    1. 1

                                                                      needs to cover the fullscreen popup as well

                                                                    1. 2

                                                                      I wish there would be another platform where I could publish articles as easy I can on Medium. I hate their layout for not loggedin users (and a lot more). But it’s easy to see how well an article is doing and to be able to write on the go.

                                                                      1. 8

                                                                        Maybe https://write.as/ or https://dev.to could work. As a reader, I certainly prefer both over Medium.

                                                                      1. 20

                                                                        I like Rust, there are good use cases for it, but “Rust is the new JavaScript”, etc? Rust’s restrictions, which make it so different and useful also slow down development velocity and application design. Hyping it up to be something it isn’t doesn’t help anyone (except maybe the authors click count). Different requirements, different tools, different solutions. Want a good explanation of the topic (and a pro-Rust talk)? See Bryan Cantrill’s “Platform Values” https://youtu.be/2wZ1pCpJUIM?t=126

                                                                        1. 1

                                                                          Fair point! Allthough the headlines for these certain paragraphs are a bit catchy, they have a true point: Bitcoin is a decentralised, sort of self-governed structure. Rust is doing the same. JavaScript runs everywhere, Rust does it too.

                                                                        1. 2

                                                                          A significant reason I find it hard to adopt other tech stacks over nodejs for the web is the large existing ecosystem, especially the tooling, compilers and others. Would Rust be a good contender today, without one having to implement those lower level blocks?

                                                                          1. 4

                                                                            It’s an ongoing process and of course, a decade of Node is not caught up in a few years. http://www.arewewebyet.org/

                                                                            1. 1

                                                                              That’s an amazing link, and exactly the question I was pondering, thank you!

                                                                          1. 2

                                                                            4 things I want on a computer to be happy: i3, tmux, Firefox, and a music player (i.e. Spotify) https://timetoplatypus.com/screenshots.html

                                                                            1. 1

                                                                              On which machine are you running your setup?

                                                                              1. 1

                                                                                I normally run Arch Linux

                                                                            1. 13

                                                                              For two of my three projects, my setup is almost exactly the same.

                                                                              Three tmux panes, holding Vim, GHCi, and an Elm compiler. I work from anywhere, and I still use a 13” MacBook Air as I have done for the better part of a decade. I have tried larger setups, but I always revert back to this. I need portability. Some developers say they need external displays for lots of screen real estate, but I actually only have one pair of eyeballs so I can’t focus on much more than what I already have.

                                                                              Almost everything is done in nix shells. Sometimes I’ll have other tmux windows containing a psql, mutt, ssh (over nixops), redis-cli, or weechat session. My tmux status bar has a little weather widget that I made.

                                                                              1. 9

                                                                                Would you mind posting a non-Instagram link? I blocked Facebook services in my hosts and would love to see your desktop ;)

                                                                                1. 8

                                                                                  I blocked Facebook services

                                                                                  Very wise :)

                                                                                  Would you mind posting a non-Instagram link?

                                                                                  Sure. Hope this works: https://imgur.com/a/Vy3gv9E

                                                                                2. 6

                                                                                  Vim, GHCi, and an Elm compiler

                                                                                  Living the dream, I see. :D

                                                                                  1. 2

                                                                                    I’ve come a long way from having to build everything in WordPress :)

                                                                                  2. 5

                                                                                    Battlestation that inspires Lobsters to achieve the career they love. Ten upvotes. :)

                                                                                    1. 3

                                                                                      The 13” non-retina MacBook Air is still my favourite ever laptop, even though I’ve long since moved on. My mid-2011 model is on the shelf, awaiting a fresh installation of Debian.

                                                                                      1. 2

                                                                                        But you can see the weather out the window ;)

                                                                                      1. 2

                                                                                        My question here is really: Why not drop the Browser completely and use Chrome instead? In the end, it’s just branding. Which browser I use doesn’t make much of a difference anymore.

                                                                                        Right now I am using Brave Beta (based on Chrome) and Firefox. I don’t mind either of them.

                                                                                        Or, why wouldn’t this great new Open Source company Microsoft not join forces with Firefox and help them to deliver a better browser then Chrome is? Then they could have their Microsoft apps as extensions or stuff like that.

                                                                                        Then, they would also have a market reach on macOS and Linux where people still will have a hard time installing Edge, just because of branding reasons.

                                                                                        1. 1

                                                                                          Chrome wants to sync with your Google Account. Edge wants to sync with your Live.com Account.

                                                                                        1. 3

                                                                                          This is interesting, but another 20 years of software development continues to prove him wrong.

                                                                                          The current dominant paradigm is flat, single-ordered lists, and search (perhaps augmented with tags like our dear lobste.rs here).

                                                                                          This is even more of all the bad stuff he’s railing against at the start of the article, but this is the stuff that works and there are innumerable other approaches dead or dying.

                                                                                          It suspect that for UI’s less freedom is simpler (one button, one list, one query, one purpose, etc.) and not the other way around.


                                                                                          For developers, I think he was right, and it’s also what we’ve got today. It’s clearly preferable for developers to have a simple model to work against (Like URIs + JSON).

                                                                                          apt-get install firefox (Which unpacks to a resource identifier and a standardized, machine-readable package file) is quite probably as good as it gets. It’s a directed graph instead of an undirected graph like his zipper system, but undirected graphs require an unrealistic (and in my opinion probably harmful) amount of federation between producers of API’s and their consumers.

                                                                                          1. 7

                                                                                            When the pitch is “good computing is possible”, “bad computing has dominated” isn’t actually a great counterargument – particularly when the history of so much of it comes down to dumb luck, path dependence, tradeoffs between technical ability & marketing skills, and increasingly fast turnover and the dominance of increasingly inexperienced devs in the industry.

                                                                                            If you’re trying to suggest that the way things shook out is actually ideal for users – I don’t know how to even start arguing against that. If you’re suggesting that it’s inevitable, then I can’t share that kind of cynicism because it would kill me.

                                                                                            A better world is possible but nobody ever said it would be easy.

                                                                                            1. 4

                                                                                              Your comment is such a good expression of how I feel about the status quo! I was just having a similar discussion in another thread about source code, where I said “text is hugely limiting for working with source code”, and somebody objected with “but look at this grep-like tool, it’s totally enough for me”. I can understand when people raise practical objections to better tools (hard to get traction, hard to interface with existing systems etc.). What’s dispiriting is the refusal to even admit that better tools are possible.

                                                                                              1. 2

                                                                                                The mistake is believing that we’re anywhere close to status quo in software development. The tools and techniques used today are completely different from the tools we used 5 and 10 years ago, and are almost unrecognizable next to the tools and techniques used 40 and 50 years ago.

                                                                                                Some stuff sticks around, (keyboards are fast!) but other things change and there is loads of innovative stuff going on all the time. With reference to visual programming: I recently spent a weekend playing with the Unreal 4 SDK’s block programming language (they call it blueprints) it has fairly seamless C++ integration and I was surprised with how nice it was for certain operations… You might also be interested in Scratch.

                                                                                                Often, these systems are out there, already existing. Sometimes they’re not in the mainstream because of institutional momentum, but more often they’re not in the mainstream because they’re not good (the implementations or the ideas themselves).

                                                                                                The proof of the pudding is in the eating.

                                                                                                1. 4

                                                                                                  I don’t think I can agree with this. I’m pretty sure the “write code-compile-run” approach to writing code that is still in incredibly widespread use is over 40 years old. Smalltalk was developed in the 70s. Emacs was developed in the 70s. Turbo Pascal, which had an integrated compiler and editor, was released in mid-80s (more than 30 years ago). CVS was developed in mid-80s (more than 30 years ago). Borland Delphi and Microsoft Visual Studio, which were pretty much full-fledged IDEs, were released in the 90s (20 years ago). I could go on.

                                                                                                  What do we have now that’s qualitatively different from 20 years ago?

                                                                                                  1. 3

                                                                                                    Yup. Some very shallow things have changed but the big ideas in computing really all date to the 70s (and even the ‘radical’ ideas from the 70s still seem radical). I blame the churn: half of the industry has less than 10 years of experience, and degree programs don’t emphasize an in-depth understanding of the variety of ideas (focusing instead on the ‘royal road’ between Turing’s UTM paper and Java, while avoiding important but complicated side-quests into domains like computability).

                                                                                                    Somebody graduating with a CS degree today can be forgiven for thinking that the web is hypertext, because they didn’t really receive an education about it. Likewise, they can be forgiven for thinking (for example) that inheritance is a great way to do code reuse in large java codebases – because they were taught this, despite the fact that everybody knows it isn’t true. And, because more than half their coworkers got fundamentally the same curriculum, they can stay blissfully unaware of all the possible (and actually existing) alternatives – and think that what they work with is anywhere from “all there is” to “the best possible system”.

                                                                                                    1. 1

                                                                                                      I got your book of essays - interested in your thinking on these topics.

                                                                                                      1. 1

                                                                                                        Thanks!

                                                                                                        There are more details in that, but I’m not sure whether or not they’ll be any more accessible than my explanation here.

                                                                                                    2. 3
                                                                                                      • Most languages aren’t AOT compiled, there’s usually a JIT in place (if even that, Ruby and python are run-time languages through and through). These languages did not exist 20 years ago, though their ancestors did (and died, and had some of the good bits resurrected, I use Clojure regularly, which is both modern and a throwback).

                                                                                                      • Automated testing is very much the norm today, it was a fringe idea 10 years ago and something that you were only crazy enough to do if you were building rockets or missiles or something.

                                                                                                      • Packages and entire machines are regularly downloaded from the internet and executed in production. I had someone tell me that a docker image was the best way to distribute and run a desktop Linux application.

                                                                                                      • Smartphones, and the old-as-new challenges of working around vendors locking them down.

                                                                                                      • The year of the Linux desktop surely came sometime in the last or next 20 years.

                                                                                                      • Near dominance of Linux in the cloud.

                                                                                                      • Cloud computing and the tooling around it.

                                                                                                      • The browser wars ended, though they started to heat up before the 20 year cutoff.

                                                                                                      • The last days of Moore’s law and the 10 years it took most of the industry to realize the party was over.

                                                                                                      • CUDA, related, the almost unbelievable advances in computer graphics. (Which we aren’t seeing in web/UI design, again, probably not for lack of trying, but maybe the right design hasn’t been struck)

                                                                                                      • Success with Neural Networks on some problem sets and their fledgling integration into other parts of the stack. Wondering when or if I’ll see a NN based linter I can drop into Emacs.


                                                                                                      I could go on too, QWERTY keyboards have been around 150 years because it’s good enough and the alternatives aren’t better then having one standard. I don’t think that the fact that my computer has a QWERTY keyboard on it is an aberration or failure, and not for lack of experimentation on my own part and on the parts of others. Now if only we could do something about that caps lock key… Oh wait, I remapped it.


                                                                                                      It’s easy to pick up on the greatest hits in computer science, 20, 30, and 40 years ago. There’s a ton of survivorship bias and you don’t point to all of those COBOL-alikes and stack-based languages which have all but vanished from the industry. If it seems like there’s no progress today, it’s only because it’s more difficult to pick the winners without the benefit of hindsight. There might be some innovation still buried that makes two way linking better then one way linking, but I don’t know what it is and my opinion is that it doesn’t exist.

                                                                                                      1. 3

                                                                                                        Fair enough. Let me clarify my comment, which was narrowly focused on developer tools for no good reason.

                                                                                                        There is no question that there have been massive advances in hardware, but I think the software is a lot more hit and miss.

                                                                                                        In terms of advances on the software front, I would point to distributed storage in addition to cloud computing and machine learning. For end users, navigation and maps are finally really good too. There are probably hundreds of other specific examples like incredible technology for animated films.

                                                                                                        I think my complaints are to do with the fact that most of the effort in the last 20 years seems to have been directed to reimplementing mainframes on top of the web. In many ways, there is churn without innovation. I do not see much change in software development either, as I mentioned in the previous comment (I don’t think automated testing counts), and it’s what I spend most of my time on so there’s an availability bias to my complaints. There is also very little progress in tools for information management and, for lack of a better word, “end user computing” (again, spreadsheets are very old news).

                                                                                                        I think my perception is additionally coloured by the fact that we ended up with both smartphones and the web as channels for addictive consumption and advertising industry surveillance. It often feels like one step forward and ten back.

                                                                                                        I hope this comment provides a more balanced perspective.

                                                                                                2. 2

                                                                                                  In the last 20 years, the ideas in that paper have been attempted a lot, by a lot of people.

                                                                                                  Opensource and the internet have given a ton of ideas a fair shake, including these ideas. Stuff is getting better (not worse). The two way links thing is crummy, and you don’t have to take my word for it, you can go engage with any of the dozens of systems implementing it (including several by the author of that paper) and form your own opinions.

                                                                                                  1. 4

                                                                                                    In the last 20 years, the ideas in that paper have been attempted a lot, by a lot of people.

                                                                                                    Dozens of people, and I’ve met or worked with approximately half of them. Post-web, the hypertext community is tiny. I can describe at length the problems preventing these implementations from becoming commercially successful, but none of them are that the underlying ideas are difficult or impractical.

                                                                                                    The two way links thing is crummy, and you don’t have to take my word for it, you can go engage with any of the dozens of systems implementing it (including several by the author of that paper) and form your own opinions.

                                                                                                    I wrote some of those systems, while working under the author of that paper. That’s how I formed my opinions.

                                                                                                    1. 1

                                                                                                      That’s awesome. Maybe you can change my mind!

                                                                                                      Directed graphs are more general then undirected graphs (You can implement two-way undirected graphs out of one way arrows, you can’t go the other way around). Almost every level of the stack from the tippy top of the application layer to the deepest depths of CPU caching and branch prediction is implemented in terms of one-way arrows and abstractions, I find it difficult to believe that this is a mistake.


                                                                                                      EDIT: I realized that ‘general’ in this case has a different meaning for a software developer then it does in mathematics and here I was using the software-developers perspective of “can be readily implemented using”. Mathematically, something is more general when it can be described with fewer terms or axioms. Undirected graphs are more maths general because you have to add arrowheads to an undirected graph to make a directed graph, but for the software developer it feels more obvious that you could get a “bidirected” graph by adding a backwards arrow to each forwards arrow. The implementation of a directed graph from an undirected graph is difficult for a software developer because you have to figure out which way each arrow is supposed to go.

                                                                                                      1. 1

                                                                                                        Bidirectional links are not undirected edges. The difference is not that direction is unknown – it’s that the edge is visible whichever side of the node you’re on.

                                                                                                        (This is only hard on the web because HTML decided against linkbases in favor of embedded representations that must be mined by a third party in order to reverse them – which makes jump links a little bit easier to initially implement but screws over other forms of linking. The issue, essentially, is that with a naive host-centric way of performing jump links, no portion of the graph is actually known without mining.

                                                                                                        Linkbases are literally the connection graph, and links are constructed from linkbases. In the XanaSpace/XanaduSpace model, you’ve got a bunch of arbitrary linkbases representing arbitrary subgraphts that are ‘resident’ – created by whoever and distributed however – and when a node intersects with one of the resident links, the connection is displayed and made navigable.

                                                                                                        Also in this model a link might actually be a node in itself where it has multiple points on either side, or it might have zero end points on one side, but that’s a generalization & not necessarily interesting since it’s equivalent to all combinations of either end’s endsets.)

                                                                                                        TL;DR: bidirectional links are not undirected links – merely links understood above the level of the contents of a single node.

                                                                                                        1. 1

                                                                                                          Ok then, and how is it that you construct a graph out of a set of subgraphs? Is that construction also two way links thereby assuring that every participant constructs the same graph?

                                                                                                          1. 1

                                                                                                            Participants are not guaranteed to construct the same graph, and the graphs aren’t guaranteed to even be fully connected. (The only difference between bidirectional links & jump links is that you can see both points.)

                                                                                                            Instead, you get whatever collection of connected subgraphs are navigable from the linkbases you have resident (which are just lists of directed edges).

                                                                                                            This particular kind of graph-theory analysis isn’t terribly meaningful for either the web or translit, since it’s the technical detail of how much work you have to do to get a link graph that differs, not the kind of graph itself. (Graph theory is useful for talking about ZigZag, but ZigZag is basically unrelated to translit / hypertext and is more like an everted tabular database.)

                                                                                                            1. 1

                                                                                                              I guess I’m trying to understand how this is better or different from what already exists. If it’s a curated list of one way links that you can search and discuss freely with others, then guess what, lobste.rs is your dream, the future is now, time to throw one back and celebrate.

                                                                                                              1. 1

                                                                                                                I’m trying to understand how this is better or different from what already exists

                                                                                                                Well, when the project started, none of what we have existed. This was the first attempt.

                                                                                                                If it’s a curated list of one way links that you can search and discuss freely with others, then guess what, lobste.rs is your dream, the future is now,

                                                                                                                ‘Link’ doesn’t actually mean ‘URL’ in this sense. A link is an edge between two nodes – each of these nodes being a collection of positions within a document. So, a linkbase isn’t anything like a collection of URLs, but it it’s a lot like a collection of pairs of URLs with an array of byte offsets & lengths affixed to each URL. (In fact, this is exactly what it is in the XanaSpace ODL model.) A URL by itself is only capable of creating a jump link, not a bidirectional link.

                                                                                                                It’s not a matter of commenting on a URL, but of creating sharable lists of connections between sections of already-existing content. That’s the point of linking: that you can indicate a connection between two existing things without coordinating with any authors or owners.

                                                                                                                URL-sharing sites like lobste.rs provide one quarter of that function: by coordinating with one site, you can share a URL to another site, but you don’t have control over either side beyond the level of an entire document (or, if you’re very lucky and the author put useful anchors, you can point to the beginning of a section on only the target side of the link).

                                                                                                                1. 1

                                                                                                                  To take an example of a system which steps in the middle and does take greater control over both ends, Google’s AMP. I feel like it is one of the worse things anyone has ever tried to do to the internet in it’s entire existence.

                                                                                                                  Control oriented systems like AMP and to a lesser degree sharing sites like Imgur, Pinterest, Facebook, and soon (probably) Medium, represent existential threats to forums like lobste.rs.

                                                                                                                  So, in short, you’re really not selling me on why this two way links thing is better.

                                                                                                                  1. 2

                                                                                                                    We actually don’t have centralization like that in the system. (We sort of did in XU88 and XU92 but that stopped in the mid-80s.)

                                                                                                                    It’s not about controlling the ends. The edges are not part of the ends, and therefore the edges can be distributed and handled without permission from the ends.

                                                                                                                    Links are not part of a document. Links are an association between sections of documents. Therefore, it doesn’t make any sense to embed them in a document (and then require a big organization like Google to extract them and sell them back to you). Instead, people create connections between existing things & share them.

                                                                                                                    I’m having a hard time understanding what your understanding of bidirectional linking is, so let me get down to brass tacks & implementation details:

                                                                                                                    A link is a pair of spanpointers. A spanpointer is a document address, a byte offset from the beginning of the document, and a span length. Anyone can make one of these between any two things so long as you have the addresses. This doesn’t require control of either endpoint. It doesn’t require any third party to control anything either. I can write a link on a piece of paper and give it to you, and you can make the same link on your own computer, without any bits being transferred between our machines.

                                                                                                                    We do not host the links. We do not host the endpoints. We don’t host anything. We let you see connections between documents.

                                                                                                                    Seeing connections between documents manifests in two ways:

                                                                                                                    1. transpointing windows – we draw a line between the sections that are linked together, and maybe color them the same color as the line
                                                                                                                    2. bidirectional navigation – since you can see the link from either side, you can go left instead of going right

                                                                                                                    It’s not about control, or centralization. Documents aren’t aware of their links.

                                                                                                                    The only requirement for bidirectional linking is that an address points to the same document forever. (This is a solved problem: ignore hosts & use content addressing, like IPFS.)

                                                                                                                    1. 1

                                                                                                                      Wow, thank you for taking the time to walk me through these ideas. I think I’m starting to understand a little better.

                                                                                                                      I still think we’ve got this, or could implement it on the existing web stack. I think any user could implement zig-zag links in a hierarchal windows-style file structure since ’98 if not ‘95. I think it’s informative that most users do not construct those links, who knows how many of us have tried it in the name of getting organized.

                                                                                                                      I really believe that any interface more complex then a single item is too complex, and if you absolutely must you can usually present a list without distracting from a UI too badly. I think a minimalist and relatively focused UI is what allows this website to thrive and us to have this discussion.

                                                                                                                      I’m going to be thinking over this a lot more. A system like git stores the differences between documents instead of the documents themselves, so clearly there are places for other ways of relating documents to each other then what we’ve got, which work!

                                                                                                                      1. 3

                                                                                                                        I should clarify: I’ve been describing bidirectional links in translit (aka hypertext or transliterature). ZigZag is actually a totally different (incompatible) system. The only similarity is that they’re both interactive methods of looking at associations between data invented by Ted Nelson.

                                                                                                                        If we want to compare to existing stacks, transliterature is a kind of whole-document authoring and annotation thing like Word, while ZigZag is a personal database like Access – though in both cases the assumptions have been turned inside-out.

                                                                                                                        You’re right that these things, once they’re understood, aren’t very difficult to implement. (I implemented open source versions of core data structures after leaving the project, specifically as demonstrations of this.)

                                                                                                                        I really believe that any interface more complex then a single item is too complex, and if you absolutely must you can usually present a list without distracting from a UI too badly. I think a minimalist and relatively focused UI is what allows this website to thrive and us to have this discussion.

                                                                                                                        Depending on how you chunk, a site like this has a whole host of items. I see a lot of characters, for instance. I see multiple buttons, and multiple jump links. We’ve sort of gotten used to a particular way of working with the web, so its inherent complexity is forgotten.

                                                                                                                        thank you for taking the time to walk me through these ideas. I think I’m starting to understand a little better.

                                                                                                                        No problem! I feel like it’s my duty to explain Xanadu ideas because they’re explained so poorly elsewhere. I spent years trying to fully understand them from public documentation before I joined the project and got direct feedback, and I want to make it easier for other people to learn it than it was for me.

                                                                                                  2. 1

                                                                                                    I wouldn’t say so. What you have is more and more people are using the same tools, therefore you will never get a “perfect” solution. Generally, nature doesn’t provide a perfect system but “good enough to survive”. My partner and I are getting a child at the moment, and the times the doctor told us: “This is not perfect, but nature doesn’t care about that. It just cares about good enough to get the job done”.

                                                                                                    After I’ve heard this statement, I see it everywhere. Also with computers. Code and how we work run a huge chunk of important systems, and somehow they work. Maybe they work because they are not perfect.

                                                                                                    I agree that things will change (“for the better”), but it will come in phases. We will have a bigger catastrophic thing happening and afterwards systems and tools will change and adapt. As long everything sort of works, well, there is no big reason to change it (for the majority of people) since they can get the job done and then enjoy the sun, beaches and human interactions.

                                                                                                    1. 1

                                                                                                      Nobody’s complaining that we don’t have perfection here. We’re complaining about the remarkable absence of not-awful in projects by people who should know better.

                                                                                                  3. 3

                                                                                                    I think the best way to describe what we have is “Design by Pop Culture”. Our socio-economic system is a low pass filter, distilling ideas until you can package them and sell them. Is it the best we got given those economic constraints? maybe…

                                                                                                    But that’s like saying “Look, this is the best way to produce cotton, it’s the best we got” during the slave era…(slavery being a different socio-economic system)