Generally the same idea, yes. Your parent mentioned a key difference though: "and pattern matching." enums in Rust have much stronger language support.
But there are also differences, for example, errors must be absl::StatusCode, whereas enums in Rust allow for arbitrary error payloads.
Also don't discount ecosystem usage: everyone uses Result in Rust, abeseil isn't used by most things, and std::expected has its own issues (though I can appreciate how tough making those calls is) and only landed in C++23, so it's not as widely used as Result either.
Sibling comment mentioned pattern matching, but didn’t point out the important point that the rustc compiler makes sure all patterns matches are exhaustive.
To use a C example, if you add a new definition/variant to an enum, suddenly all switch statements over that enum will fail to compile (unless there is a default: branch).
This does eliminate a large swatch of logic errors, though by no means all.
I don't think so. According to [0], the passcode is used to protect filesystem encryption keys, meaning that without the code, you cannot decrypt your files. I don't know if pictures are stored encrypted, but I would assume so.
edit: apparently I might be wrong. [0] also says that for a while only Mail storage, was encrypted and the default changed in iOS 7. So if your iPhone is on iOS <= 6, you might be able to use that to gain access to the device and copy pictures. The tools at [1] might help.
You can also use third party libraries. I have written projects using ChibiOS and libopencm3 and their driver model was actually OK to use, although for most peripherals you still need the datasheet to understand the exact capabilities of the device.
I use Android with work profile and just turn it off at the end of the day (actually have it automatically scheduled). Definitely took some discipline at first but now I'm really disconnected on days off.
Different profiles do you no good. Under US law, if there's an investigation against your employer, you might be required to hand over any device that you used to access your work email, or other data. That's why your work phone should be a separate device, not just a profile.
I doubt any search warrant will respect simple ownership. If the police deem something evidence then under US law you will basically never see it again...
With the USB gadget Driver in Linux you can have the existing USB Hardware enumerate as a USB Ethernet adapter without too much config work so that would not add much to the BoM :)
I second the magic the gathering suggestion, in particular if you go to tournaments. I have met a lot of cool people by preparing a tournament, discussing metagame choices, then spending three days living a shared experience (the tournament itself).
Specific rule is they can't solicit new members, as badly as they might wish to. You have to ask. The advice to check out multiple lodges is key, as they really are different. Most of the guys in mine have said they probably wouldn't have joined another one, so they're really that unique. A lot of them have pub nights and lunches where prospective members meet everyone, and having those is a good sign they're growing and lively.
When the work in masonry is good, it lets guys really, really shine. When it's weak, it's hard to watch, but seeing what any mason can do and how well he chooses to do it gives you a lot of perspective on where you are. If anyone from HN does get initiated in the Toronto area, track me down and I will show up for it.
> When the work in masonry is good, it lets guys really, really shine. When it's weak, it's hard to watch, but seeing what any mason can do and how well he chooses to do it gives you a lot of perspective on where you are.
I'm having trouble interpreting what you meant with this excerpt but it sounds interesting. Care to elaborate?
The 'work' in masonry refers to the ritual. There is some ritual involved just in opening and closing a regular meeting. However, there is a lot of ritual involved in the degrees. When the ritual for a degree is executed flawlessly, it's quite beautiful to behold. On the other hand, when those involved with the ritual aren't very good at it, it's quite painful to watch.
"To be one, ask one" is their common saying about how to join. There are 3 degrees (entered apprentice, fellow craft, and master mason). Typically, someone who wants to join a lodge will contact the secretary of the lodge to express their interest. The secretary should provide information on either 'stated communications' (regular meetings) or some informal event that would be conducive to meeting some of the members of the lodge. Once the person decides that they want to join a specific lodge, they should ask the secretary (or whoever else) for a petition. You fill out the petition and then the lodge will form an 'investigating committee' to meet with you personally to determine whether they would be willing to have you join. The investigating committee then reports their findings at the next stated meeting. The lodge then votes on whether to accept the petition (or not). After the vote, the secretary will notify the applicant and ask them to come to the lodge on a specific date and time for the initiation as an entered apprentice (the first degree).
If there are multiple lodges in your area, I would highly encourage you to visit all of them. Every lodge has its own personality. You might be a good fit for one lodge and a poor fit for another.
Disclosure: I used to be a card-carrying Freemason.
My great grandfather was a Mason, but having grown up Catholic I understand that there's a bit more nuance and trickiness behind it if I wanted to join. I've been curious about it for a while.
I want to preface my answer by saying that these were my experiences. It's very important to point out that not all lodges are the same and not all Grand Lodges (at the state level in US) are the same.
I have to give some context of how things are in the US. At its most basic level, Freemasonry is what you hear Masons refer to as the 'blue lodge'. The blue lodge has 3 degrees. There are a number of affiliated or 'appendant bodies' that tie into the Masonic family. The Scottish Rite has 32 degrees (and a 33rd degree that is bestowed on someone deserving after a number of years and much service). There is also the York Rite. I don't know much about the York Rite because I never belonged to it. Then there is the Shrine - the guys who wear the red fezzes and commonly participate in parades.
At one time, a Mason (3rd degree in blue lodge) had to first belong to either the Scottish Rite or the York Rite BEFORE they were eligible to join the Shrine. To be clear, only Masons can join the Shrine. Back in the early 2000s, the Shrine dropped the requirement that you also belong to either the Scottish Rite or York Rite. Why? Because it was another obstacle to getting new members and they (the Shrine) desperately needed new members to replace the ones who are dying.
[Stepping up on my Masonic soap box for a rant]
The fundamental problem is that there are many who want to join the Shrine just for the fun and partying. (And speaking of fun and partying, they're the only ones who are allowed to have alcohol at their functions.) Remember me saying that to be a Shrine, you first have to be a Mason? Due to pressure from the Shrine, a significant number of lodges have resorted to one-day classes in order to obtain all 3 blue lodge degrees in a single day. Traditionally, they're given one at a time and then the person who received the degree must study and learn some 'proficiency work' that they must be able to demonstrate before being allowed to obtain the next degree. Usually, there is AT LEAST 1 MONTH between each of the 3 blue lodge degrees.
The blue lodge degrees are very special and a person who is planning to become a Master Mason (3rd degree in blue lodge) should be a part of the ritual for each degree. Why? Because it's a very special and solemn ritual and experiencing it first hand, it's easier to learn the proficiency work.
A 1-day class is where they round up about 20 guys and they're herded through the 3 degrees quickly. For each degree ritual, 1 person is selected to be the 'candidate' who actively participates in the ritual. The 19 others only watch it. They don't experience it.
The truth of the matter is that the Shrine has no real Masonic connection, yet they (the Shrine) still require their members to be Masons. So, they (the Shrine) push very hard to get 1-day classes to rush guys through so that they're then eligible to join the Shrine. The Shrine was the only affiliated organization that was allowed to have alcohol at any of their functions. Blue lodge wants to have a 'table lodge' with wine or beer? Forbidden!! This was true in the state where I was. It's possible that other states would allow it.
In summary, because of the Shrine's Masonic requirement for membership, they (the Shrine) watered down the blue lodge by: (1) 1-day classes, and (2) bringing guys through who had NO interest in Freemasonry, but were only there to have fun with the Shrine.
[end of Masonic rant]
Additionally, there was lots of petty bickering. Freemasonry PROMISES a great deal! What you read about the fraternity is impressive. However, walking the walk is not nearly as common. I eventually had enough of it all and dropped out.
Again, what I described above is what I experienced in the state where I was (and I don't want to mention the state). It might be completely different in your state.
As far as I understand as a non-member, but as someone who has talked to one, they are really hurting for new members. I'm pretty sure if you just find a local lodge and email them they'd be happy to give an invite.
Isn't the chat server they talk about for somethin in-app ? Like if your game offers player-to-player chat, or something similar ? I don't think they are talking about tools for software engineers themselves.
This is typically solved using a class of control algorithm called Model Predictive Control which are capable of optimizing for a given cost function (such as using minimal fuel).
Search for "fuel optimal rocket landing algorithm" for good starting points.