1. 12

    There’s a lot about this article I like (and the site - powered by solar power and sometimes offline/ cute!) but the xenophobia towards Chinese people is not acceptable.

    1. 30

      This seems like an overreaction to me. There’s exactly two comments about China/Chinese people:

      The Chinese don’t have a reputation for building quality products


      The Chinese may not have a reputation for building quality products, but they sure know how to fix things.


      • statements exhibiting prejudice != xenophobia.
      • reporting on a reputation is just stating a fact: this is indeed the reputation Chinese (consumer?) products have. You can’t infer the author thinks the reputation is accurate, especially given how they acted (they bought the Chinese product anyway).
      • even if you believe the author does think the reputation is accurate: you don’t know how many experiences they have with Chinese products. Their belief in the accuracy of the reputation may be supported by their own experiences
      • A jab against the quality of products is not a jab against the people producing the product. Even if the author phrases it using the unfortunately common conflation of a country and its people.
      • it’s human and useful to generalize: a generalization isn’t necessarily problematic, unless the conclusions are extended too far. They aren’t suggesting you don’t buy Chinese products or only let things be repaired by a Chinese person, are they?
      1. 17

        The Chinese don’t have a reputation for building quality products

        The funny thing about this one is that not only does the person saying it come off as prejudiced, they’re also out of touch.

        Almost any electronic device made today is built in China, with components also made in China. From high end Apple products down to bottom of the barrel knock offs. Just being made in Chna doesn’t say much about quality any more.

        1. 17

          I agree with the parent, this also rubbed me the wrong way. Even just having “the Chinese” in your vocabulary is too much IMO, no matter whether it displays xenophobia or just unreflected prejudice.

          1. 9

            The author’s native language is Dutch, in which it’s still idiomatic to say ‘the Chinese’ to mean ‘the Chinese people’. It used to be idiomatic in English as well, of course, but it has gathered negative connotations in the past few decades. That’s something his proofreader should’ve picked up.

            As regard the statements about the quality of Chinese electronics and workmanship, yes, I could do without those as well.

            1. 2

              The author’s native language is Dutch, in which it’s still idiomatic to say ‘the Chinese’ to mean ‘the Chinese people’. It used to be idiomatic in English as well, of course, but it has gathered negative connotations in the past few decades

              Im curious how else you would say it? Would you attribute it to the country and not the people? i.e. China (or Chinese manufacturers) don’t have a reputation for quality?

              Is the issue attributing it to a people as a whole?

              Not trying to be argumentative, just trying to understand the issue.

              1. 3

                I just wouldn’t make unsubstantiated claims about an entire country.

          2. 11

            There is a condescending tone at play though, which generalises Chinese people (e.g. the guy that repaired his laptop) to members of a group and refuses to treat them as individuals.

            I don’t take issue with the literal meaning of those sentences, but given their tone and cultural context, I think it’s rather insensitive and unhelpful.

            1. 2

              The second occurrence was referring to a repair shop they sent it to. So unless that shop was in China (I don’t think they say so, so I assume not) they’re referring to the ethnicity of the shop worker.

            2. 9

              MacBooks are made in China, so if you can agree they’re at least on par with X60 build quality, the point falls apart. Perhaps you could say Lenovo chose a subpar Chinese supplier, but that hardly indicts the whole country.

              I enjoyed my X200s until hardware failure & blue screens, and my old X61s is in a closet (some sort of display issue). Eventually, these machines wear out. I find MacBooks at least as well-designed/-built, and the M1 ain’t too shabby, so while I miss the 12” ThinkPads I’ll be fine.

            1. 2

              Playing Cyberpunk 2077 on my PS5. Finally got both yesterday and I am hooked. Spent 20 minutes customizing my character last night.

              Also, will be wrapping presents and doing other productive things like rearranging the garage and some activity called “sleep.”

              1. 1

                How has the performance been and graphics in general? I was thinking of waiting until they release a version optimized for PS5 (figured some of the bugs would be ironed out by then also).

                1. 1

                  Performance has been great for me, graphics are decent and I’ve experienced pop-in and random t-poses. Crashes are a regular occurence but not annoyingly so.

                  Aside from all this, there has been no lag. Unless you are a Deus Ex/RPG fan, I’d wait for the optimized version. I absolutely love the last two DX games and I’m enjoying exploring the world of 2077 via side quests.

              1. 2

                Rust, Linux and VIM.

                Ive been learning Rust for the past month or so, working on a command line suite of tools for viewing data from Destiny 2 activities:


                Having a lot of fun with it, although its a ton of refactoring since Im learning so much.

                I made the switch over to Linux this week, away from Mac and am really liking it. I decided to also give VIM (Neovim) a try as a main development editor, and while the learning curve seems super high, I can already see how good it can be.

                So basically, im spending my weekend writing code in a language I dont know that well, on an OS which im still getting familiar with, in an editor where I have to look at a cheat sheet every time I want to copy some text or look at another file, and I couldn’t be more excited!

                Btw, if any people with Rust experience have any comments on the project above (I am sure I am doing a ton of stuff wrong), I am open to any feedback.

                1. 1

                  For Rust, the most amazing CLI parser library you can find is Pest.

                  1. 2

                    Any thoughts on why Pest is better that structopt? (which seems to be the default people turn to)?

                    1. 1

                      Actually, I cannot edit my answer know, but I meant to say Nom, not Pest, and I wanted to talk about parser combinators. Plenty of options for sure!

                      1. 4

                        Neither Pest nor Nom are CLI parsers though… You might use them to implement a CLI parser, but they are not CLI parsers themselves. They are not things I’d recommend to people wanting to write a CLI tool in Rust for handling argv outside of very specialized circumstances.

                      2. 1

                        What about argument-specific parsing, like clap or structopt? I haven’t actually used any of these, but I see them being commonly cited.

                        1. 1

                          In my experience there’s lots of good options, with slightly different tradeoffs. Pest isn’t specifically for command lines, it’s just a parser lib. For command line args specifically, there’s two main styles: ones that take a bunch of options and let you query them individually, like clap or argparse, and ones that let you just slap some annotations on a struct and parse your options into that struct, like structopt and argh. They’re all pretty good, just depends on what you want and how you want to get it.

                          1. 1

                            clap and structopt are both very good, but (and I think this is a big issue) they are both really substantial dependencies that in my own experience deliver a big hit to compile times. Compile times in Rust are an issue, so as powerful these libraries are, at this point I personally prefer not to use either of them.

                            1. 1

                              Compile times are definitely a pain, but if you plan on compiling the tool once and using it for months or years, I’d argue their flexibility and power pays off (although I’m guilty of avoiding them too, mostly because I haven’t done any serious Rust CLI…). Or even shipping the binaries to users.

                              1. 1

                                Small clarification, for those not as familiar with Rust (not directed at @alilleybrinker :)). Structopt is a wrapper around clap which adds Custom Derive procedural macros to allow placing attributes on struct definitions and having the argv parser inferred from such definitions. Most of the compile time is spent on the Custom Derive procedural macros and supporting crates. I.e. clap compiled without the optional features is usually very quick and does not add any significant compile time.

                                Edit: full disclosure I am the original clap author.

                              2. 1

                                I’d also checkout Seahorse.

                            1. 4

                              Im spending my week playing video games (Destiny 2, and just started Horizon Zero Dawn), and continuing to learn Rust. Ive been working on a suite of command line tools for working with the Destiny 2 API. Hoping to do initial release this week.