AernaLingus

joined 2 years ago
[–] [email protected] 4 points 2 weeks ago* (last edited 2 weeks ago)

I'll preface this by saying I'm working my way through the Rust book, too--just a bit further along--so don't take my word as gospel.

This exact scenario is what the ? operator was designed for: returning early with the Err if one is received^[There's also some type coercion, but that's beyond the scope of your question], otherwise unpacking the Ok. As you've discovered, it's a common pattern, so using the ? operator greatly cuts down on the boilerplate code. If you wanted to do the equivalent of you have here (panicking instead of returning the Err for it to potentially be handled in calling code, albeit without your custom panic messages^[edit: you can use expect to get the custom messages as covered in another comment--not sure how I forgot that]) you could achieve this with unwrap() instead of ?:

let html_content_text = reqwest::blocking::get(&permalink).unwrap().text().unwrap();

Both of these will be covered in chapter 9.

If you want to avoid those constructs until later, the only thing I'd say is that some of the intermediate variables seem unnecessary since you can match on the function call directly:

fn get_document(permalink: String) -> Html {
        let html_content = match reqwest::blocking::get(&permalink) {
            Ok(response) => response,
            Err(error) => panic!("There was an error making the request: {:?}", error),
        };

        let html_content_text = match html_content.text() {
            Ok(text) => text,
            Err(error) =>
                panic!(
                    "There was an error getting the html text from the content of response: :{:?}",
                    error
                ),
        };

        let document = Html::parse_document(&html_content_text);

        document
    }

You could also eliminate the final let statement and just stick the parse_document call at the end, but that's a matter of preference--I know having an intermediate variable before a return can sometimes make debugging easier.

As for whether you should build something now or wait till you learn more--go with your gut! The most important thing is that you stay actively engaged with the material, and many people find diving into projects as soon as possible helps them learn and stay motivated. You could also use rustlings and/or Rust by Example as you go through the book, which is what I've been doing (specifically rustlings). It's not as stimulating as writing a project from scratch, but it does let you write some relevant code. And if you're not already, I highly recommend using the Brown version of the Rust Book which includes interactive quizzes sprinkled throughout. I've found them particularly helpful for understanding the quirks of the borrow checker, which is a topic it continues to revist throughout the book.

[–] [email protected] 4 points 1 month ago

One thing I'm confused about is why even the Japanese article referenced is just speculating, albeit in a more reasoned fashion--they use the fact that it's a joint lawsuit from Nintendo and The Pokémon Company to narrow their focus to jointly-held patents in a relevant time range. I did a bit of Googling and one result said that you can only request court records if you know the case number, which is pretty wack if that's the case. Like, PACER sucks and all (always check RECAP first and use their extension to upload documents for everyone!) but I've been following a random-ass civil court case in the US for about a year now and that's shit is all online. Seems wild to me that even an intrepid reporter who marched on down to the courthouse wouldn't be able to get their hands on the complaint. Big cases like this have ramifications far beyond the involved parties, so it's important for the public to be able to see the arguments being made in detail.

DeepL translation of Japanese articleNintendo and Pokémon Inc. filed a lawsuit against Pocket Pair, developer of Palworld, for patent infringement (Nintendo press release). As you know, there was some opinion that the modeling of the monsters in Palworld was similar to that of Pokemon, but it was difficult to question copyright infringement (they were close, but just barely avoided it). So Nintendo exercised its rights not by copyright but by patent right. An injunction and damages are being sought.

Palworld is not free to play, so I guess from the introduction videos on YouTube, etc., but aside from the monster sculpting, the game system does not seem to be that similar to Pokemon, and it seems to be an open-world game similar to Ark, etc. If there are similarities, it seems to be Balls. If there is a similarity, it is in the part where you capture monsters by throwing a ball-like object at them. If there is any similarity, it is the part where you throw a ball-like object at the monster to capture it.

Since Pokémon and Nintendo are jointly suing, we can naturally narrow the number of patents down to 28 if we assume that the patents are also jointly filed by the two companies. Of those 28, four were filed as divisional applications after PAL World went into service (January 19, 2024).

The one with the most recent filing date is patent 7545191. It was filed on July 30 of this year, requested for examination on August 6, requested for accelerated examination, and was already granted a patent on August 22. It is believed that the Super Accelerated Examination system was used.

The following patents follow: Patent No. 7528390 (filed on March 5 and registered on July 26), Patent No. 7493117 (filed on February 26 and registered on May 30), and Patent No. 7505854 (filed on February 6 and registered on June 17). All have requested accelerated examination (possibly super accelerated examination).

All are divisional applications of the December 22, 2021 application, so the effective filing date is December 22, 2021, and they are enforceable against Palworld, which entered service on January 19, 2024. It is believed that the scope of rights of the divisional application of the existing patent was amended to "pull in" the composition of the allegedly infringing property for use in litigation, a technique commonly referred to as "fitting in" (we wrote an explanatory article on this in the case of Konami's lawsuit against Cygames "Uma Musume"). In terms of timing, it seems natural to assume that the lawsuit was filed pending the grant of these patents.

Let's take a look at the contents of Patent No. 7493117, which is easy to understand and seems to have a broad scope of rights among these patents. Claim 1 reads as follows

Claim 1.

To a computer of an information processing apparatus,

In a first mode,

determine a aiming direction in the virtual space based on a first operation input, which is a directional input; and

When a second operation input is made, having the aiming direction be directed toward a field character positioned on a field in the virtual space, and having the first indicator displayed,

In accordance with the third operation input, the player character is made to perform a movement of releasing a capture item for capturing the field character in the aiming direction,

When the capturing item hits the field character, the player character is made to make a determination as to whether the capture is successful or not,

If the capture success judgment is positive, the player character is set to own the field character that was hit by the captured item,

The first indicator is information indicating how easy it is to make a positive judgment of the capture success judgment.

In the end, what it is saying is that a ball (capture item) is thrown at a monster (field character), a successful capture decision is made, and if the capture is successful, the monster can be set to be owned, in which case the ease of successful capture is indicated by some indicator (not a number, but a color or design is also acceptable, according to the specification). This is all. If you want to make a Pokémon-like game, it may be difficult to avoid it, and if you are not aware of it, it may conflict with it. I feel that this is a killer patent. Other patents will be explained later.

Of course, there is no proof that these patents are used, and there is a possibility that other patents are used as well. It is also possible that Nintendo or Pokémon is filing another lawsuit using patents of which it is the sole owner. Nintendo is also known for its incredibly powerful patents, such as the patent used in the lawsuit against Coroplast (see related article), which restricts users to play games only with mutually registered users in communication games.

As was said during the lawsuit against Coroplast, it seems that Nintendo's corporate policy is that even though they have a super-powerful patent portfolio, they do not actively enforce their rights themselves, but only fight thoroughly when their IP is about to be eroded.

[–] [email protected] 19 points 1 month ago* (last edited 1 month ago)

Davis states that the original source of the tale was Olayuk Narqitarvik. It was allegedly Olayuk's grandfather in the 1950s who refused to go to the settlements and thus fashioned a knife from his own feces to facilitate his escape by skinning and disarticulating a dog. Davis has admitted that the story could be “apocryphal”, and that initially he thought the Inuit who told him this story was “pulling his leg”.

That's a long payoff for a practical joke, but totally worth it.

Also, unsurprisingly, they won the 2020 Ig Nobel Prize in Materials Science (lol) for this one (video of the ceremony, Ig Nobel "lecture" from the lead author (also the primary pooper))

[–] [email protected] 6 points 1 month ago* (last edited 1 month ago)

Written a bit more explicitly (although I kinda handwaved away the final term--the point is that you end up with one unpaired term which goes to zero)

edit: I was honestly confused about how exactly this related to the question, but seeing the comment from @[email protected] (not visible from Hexbear) which showed that the first sum in the image is equivalent to

the sum from n = 1 to ∞ of 2/(n * (n + 1))

made things clear (just take the above, put 2 in the numerator, and you get a result of 2)

[–] [email protected] 4 points 2 months ago

Obligatory Gianni Matragrano version (couldn't find the original on his channel, idk if it's from another platform or the video is no longer available or what)

[–] [email protected] 4 points 2 months ago (1 children)

Facebook (when that was still a platform young people used). I would obsessively scroll through it for hours each day, basically trying to look at and comment on EVERYTHING. On a whim, I decided to take a break from it for a month. By the time the month was up, I realized I didn't miss it at all, and that was that. One of the big takeaways was that I thought that I was forming relationships with the people I'd comment back and forth with, but in reality these were people who I would never hang out with outside of school and barely even talk with in school (if at all); it was all just superficial, and I was better off spending time talking to my actual friends.

It wasn't that bad, but in high school I mindlessly got into the habit of drinking a few cups of Coke each day (I think it started because I would get a 2 liter whenever I'd order pizza). I quit it pretty much cold turkey, and not only did I stop drinking it at home, I no longer order it at restaurants either, which is something I did ever since I was a little kid. The idea of just buying a bottle of soda and drinking it is straight honestly grosses me out now even though getting a can or bottle from a vending machine was something I'd do without thinking. The one exception is when I'm pigging out at the movies with a bucket of popcorn, but that's pretty rare.

[–] [email protected] 6 points 2 months ago

The original French quote appears to be from here. Stories link to another tweet (since privated) as the source of the translation, which quotes the first tweet, but it only differs from the embedded Google Translate result by a single word ("tasty" vs. "satisfying"). Here's a video of the press conference with more context and a similar translation of that quote.

[–] [email protected] 5 points 3 months ago

Whoa, that looks pretty sick. Definitely will give it a shot next time the need arises!

[–] [email protected] 15 points 3 months ago

Here's an insta of an actual Japanese wildlife photographer chock-full of great photos of this bird (among others)

[–] [email protected] 1 points 3 months ago

I went through a phase in my late teens/early 20s where I had major bladder shyness. There were a few times in especially high pressure situations (e.g. right after a movie or during a break in a football game) where I just stood there for 30 seconds with no results and was like "welp I guess I'm just gonna have to hold it until I get home." I honestly don't think I had any major psychological shift, since I was and still am majorly anxious, but thankfully it waned over time and I can now piss in peace.

view more: next ›