It's the laws that we have. Basically, if someone breaches your home, you're under no obligation to back down and if you respond with lethal force you have a lot of the benefit of the doubt, fear is implied in that situation. The police are treating it as if they were breaking in to one of their own homes, because if you or I did that, we'd get shot and killed. The only difference it that they have a legal document that allows it in that case, you have to serve that document though.
I had a coworker that lived on a street like "N 13th Avenue" and I guess there was some sort of crackhouse at "S 13th Avenue" one night the police served a no-know warrant, he was pissed and demanded to know what was going on, they shot his dog and killed his dog, he was shot in the hip and had permanent damage from it, his wife was marched out in cuffs half naked in-front of the neighborhood. When the dust settled the police realized they went to the wrong address. The police reached some sort of settlement with them, it never seemed remotely fair. (Think $700k in the mid-1990s) He was in his 50s when I worked with him, this happened in his late 30s or early 40s. He looked like he was 80 though, walked with a cane. He ultimately passed away at a fairly young age.
There is the literal benefit of "we use the hell out of this tool, we need to make sure it stays usable for us" and then there is what they can learn from or coerce the community in to doing.
I don't know about OpenAI using a lot of Python, but Astral builds all their tools in Rust and just exposes Python bindings. Codex is all Rust. It feels like a reasonable acquisition from that perspective. They're banking on at least in part on the Astral team being able to integrate with and supercharge Codex.
I have that sort of arrangement. I've been wondering though. What's the proper data access protocol? Like I want it available, easily, if the police need it and I'm not there but at the same time, I don't want anyone to just screw around with it because I've got directions and password printed on paper somewhere.
We did have some repeated night time visitors (long story, but it was some mistaken identity that took a while to sleuth out) it wasn't difficult to export data for the police but it wasn't something I'd just ask my wife or kids to do either. Scan the footage, find the timestamps, export the data then upload the data somewhere where they can get at it. It wasn't hard but it was chores and it took time with high emotions.
First off, it's not inexpensive. It's not a giant investment either but my cameras cost in the same range as the Nest cameras do and then there is a relatively powerful mini pc, and an accelerator for AI detection and then drives to store the data, PoE switch, network segmentation... I'm rocking home assistant and frigate and 8 8k cameras. Then the much more subtle part is I have a pretty good idea when I'd like the police to have all the data and when I don't want that. That's not so easy if I was abducted. Perhaps an off the shelf complete solution is better and has that sort of law enforcement access situation sorted out. This is sort of the 0.000001% kind of thing though. Over the years, I've replaced drives a couple times too, it's becomes a living and breathing system that needs support and love.
I am surprised by the number of comments that say the assembler is trivial - it is admittedly perhaps simpler than some other parts of the compiler chain, but it’s not trivial.
What you are doing is kinda serialising a self-referential graph structure of machine code entries that reference each others addresses, but you don’t know the addresses because the (x86) instructions are variable-length, so you can’t know them until you generate the machine code, chicken-and-egg problem.
Personally I find writing parsers much much simpler than writing assemblers.
assembler is far from trivial at least for x86 where there are many possible encodings for a given instruction. emitting the most optimal encoding that does the correct thing depends on surrounding context, and you'd have to do multiple passes over the input.
What is a single example where the optimal encoding depends on context? (I am assuming you're just doing an assembler where registers have already been chosen, vs. a compiler that can choose sse vs. scalar and do register allocation etc.)?
“mov rcx, 0”. At least one assembler (the Go assembler) would at one point blindly (and arguably, incorrectly) rewrite this to “xor rcx, rcx”, which is smaller but modifies flags, which “mov” does not. I believe Go fixed this later, possibly by looking at surrounding instructions to see if the flags were being used, for instance by an “adc” later, to know if the assembler needs to pick the larger “mov” encoding.
Whether that logic should belong in a compiler or an assembler is a separate issue, but it definitely was in the assembler there.
jumps is another one. jmp can have many encodings depending on where the target offset you're jumping to is. but often times, the offset is not yet known when you first encounter the jump insn and have to assemble it.
In practice, one of the difficulties in getting _clang_ to assemble the Linux kernel (as opposed to GNU `as` aka GAS), was having clang implement support for "fragments" in more places.
There were a few cases IIRC around usage of the `.` operator which means something to the effect of "the current point in the program." It can be used in complex expressions, and sometimes resolving those requires multiple passes. So supporting GAS compatible syntax in more than just the basic cases forces the architecture of your assembler to be multi-pass.
You also need to choose optimal instruction encoding, and you need to understand how relocs work - which things can you resolve now vs which require you to encode info for the linker to fill in once the program is launched, etc etc.
Not sure why I'm on this little micro-rant about this; I'm sure Claude could write a workable assembler. I'm more like.. I've written one assembler and many, many parsers, and the parsers where way simpler, yet this thread is littered with people that seem to think assemblers are just lookup tables from ascii to machine code with a loop slapped on top of them.
Makes you wonder. Technology usually becomes less expensive. Car companies have used it as a differentiator for years though. There are giant cost differences between like a base line Tundra and a top of the line and the mechanicals are the same; it's more price for luxury and more tech.
Seems like Toyota is about to make a big Lexus pivot in the next year or two.
As someone that has built security applications for most of this century, I can confidently say that when you make security the problem of one device, system, team or entity that it results in insecurity. It might satisfy some auditors but that’s about it.
The most obvious issue is that if any system is compromised, then the attacker can potentially sniff traffic and they are all effectively compromised. The next one, and it’s really key to TLS, is that the app you are proxying probably has an opinion or desired behavior when things can’t be authenticated or are improper. Someone reading you blog and the cert is a day old? Probably not super risky to let them read it. Logging in to the mail server and the keys are bad? You might want the server to just block that.
For like a home lab situation or kind of toy systems? These tools are great, I’ve used stunned more than a few times to hack things together
It's the laws that we have. Basically, if someone breaches your home, you're under no obligation to back down and if you respond with lethal force you have a lot of the benefit of the doubt, fear is implied in that situation. The police are treating it as if they were breaking in to one of their own homes, because if you or I did that, we'd get shot and killed. The only difference it that they have a legal document that allows it in that case, you have to serve that document though.
I had a coworker that lived on a street like "N 13th Avenue" and I guess there was some sort of crackhouse at "S 13th Avenue" one night the police served a no-know warrant, he was pissed and demanded to know what was going on, they shot his dog and killed his dog, he was shot in the hip and had permanent damage from it, his wife was marched out in cuffs half naked in-front of the neighborhood. When the dust settled the police realized they went to the wrong address. The police reached some sort of settlement with them, it never seemed remotely fair. (Think $700k in the mid-1990s) He was in his 50s when I worked with him, this happened in his late 30s or early 40s. He looked like he was 80 though, walked with a cane. He ultimately passed away at a fairly young age.
reply