skysight-inc/HackerNews huggingface dataset:
> The reason I use mocks is not primarily to avoid latency or setting things up, it's because it's the best way to test a permutation space in an isolated fashion.

So I think I've been talking past people on this point and not getting what people mean -- when I think of a "mock" I think of like a completely re-implemented piece of infrastructure. I am totally on board with the idea of mocking out individual methods and/or functions that indicate a certain point in the state permutation space.

What I was trying to disagree with was the idea that people should be maintaining mocks/approximations of pieces of simple infrastructure (ex. Redis) they could just spin up. So in my opinion, never write an in-memory cache component (with redis operations like get/set/...) for a local integration test when you can just run redis. If you want to just test how some piece functions when Cache<Redis>.set(...) fails, then that totally makes sense to just mock out (as in make .set() throw/return an exception/error or whatever).

> Type systems are great and indeed many unit tests are a poor replacement for it, but for any moderately complex piece of logic, types can only make trivial guarantees.
> Also, clever use of types might enforce something nicely, but they can still be really hard to work with. Error messages are often cryptic and don't describe anything semantic about the problem. A properly constructed unit test can easily tell you "You ended up returning a date that was set in the past compared to the expected outcome" which gives you much more information.

Can I introduce you to my friends Haskell and Rust? It really depends on the type system, but to be fair there's also quite a productivity trough early on working with these languages and trying to really take advantage of the expressiveness of their type systems.

In the end you can't model out really complex logic -- but often you can definitely avoid writing the kind of things you would have checked for with units tests, and some integration tests at least. Agreed on the second point, but the languages mentioned above have made great strides in that respect, Rust was well known at the start for it's error message readability and Haskell is pretty decent at it, though the sticky situations you can get into in Haskell are an order of magnitude stickier.

IMO that date question is a really good/easy problem for generated tests -- never producing a date that is in the past is a property that you're trying to maintain, and randomizing input is likely to be more effective in doing the fuzzing for the inputs. To be fair, that's more complexity than a simple unit test would add (especially in terms of simply preventing regression).

>
I might be spoiled, since I started working on Windows using Visual Studio back in 1996. The debugger always seemed a fundamental part of developing (an learning to develop) applications.

10 years later, I was still being spoiled while building Windows CE OS images. There you had KITL to debug (over serial, ethernet or USB) the OS in real time from the IDE.

When none of that worked, I purchased myself a Lauterbach probe (6K USD). The debugger IDE is the ugliest thing ever, but it's the most powerful tool around for embedded.

Some years later I entered into kernel (Linux) building for embedded. When asked the guru what's there to debug the kernel, the answer I got was "printf". Man, I laughed so hard until I saw his "I'm being serious" face. Then I get used to it, but I still hate it.

Again, some years later, I have to build Android images. Again, skimming through thousands of log messages thanks to dmesg and logcat... I still hate it. It seems archaic.

The better moments of my current work is going bare-metal, debugging with an IDE, with my 15 euro JTAG plus OpenOCD and Eclipse. I couldn't be happier.

In fact, for bare-metal embedded, there is no other way around. There is no printf. You can have it with semihosting or a serial port, but it's painful... it messes up with my timings. I need to debug using an IDE. And GDB from the command line... come on... it's 2021. It can be avoided.

Even when I started with Rust for embedded I wanted a full debugging IDE (which I didn't find yet). I want to see how things get arranged in memory (how does a slice or enum look in memory? and, is it possible no one checked this before?) side-to-side with generated assembler.

TL;DR, my opinion is that printf might be fine for some desktop development, but as a "I don't have any else to try" resource.
Prices of fungible commodities are set by supply and demand.
I don't think your comment your comment is a fitting response as I clearly stated this is about the general, theoretical stance, where you can't make assumptions about either the alphabet, nor the text.

As I recognized, introducing assumptions of course opens possibilities for doing things differently.

I was using the DNA example, because bioinformatics is where a lot of people learn about BMA, because the math is easy there and we are not tempted to make assumptions about the text, even tho it's not random. For most bioinfo applications the alphabet is not four letters, but e.g. the amino acid alphabet, or having additional sequence information included.

In bioinfo practice the naive algorithm often performs competitive against BMA if you optimize for hardware assumptions. Branch prediction is a bitch for BMA.
This is a neat find, but it's unfortunate that a RCE/ACE like this is so limited by the Game Boy Color itself. Most of the interesting electronics are in the cartridge, which can already be replaced by something that runs arbitrary code anyways.

It would be neat if this could be used to exploit an emulator or an adapter (e.g. GBA link for GameCube) and get ACE on something more powerful/inaccessible.

Congrats on the WR, though.
SSDB – A Redis compatible NoSQL database stored on disk
Obviously, we won't know if the M1X/M2 has a similar big advantage over the M1 until it ships, but...

You can also look at it this way: The M1 is not the first version. It is (IIRC) an enhanced version of the A14 SoC family, and a clear evolution of the work Apple has been doing on its silicon for the past decade.
Jordan Lamborn recently compiled a guide to to 111 prioritizing schemes. You'll surely find something there of use.

https://productcoalition.com/how-to-prioritize-features-and-...
Came to comment this. Print debugging makes me so fast at work. Unless you give me an easier and better tool I so no reason to change. Works in every language, exactly how I'd expect, and is exceedingly easy to explain to others.
IBM PC was released 40 years ago, in 1981. They sold their PC division in 2004, after 23 years of run, when PCs were on every desktop and every server rack.

If Tesla goes out of business and sells itself to an Asian automaker when EVs have completely conquered the transportation landscape, I'll be OK with that :)
> it's effectively compensation that you don't get.

Agreed. I'm not sure why that's a big deal though?

If you don't drink coffee, are the other employees getting compensation via their free coffee? Coffee can really add up.
We're in a brave new world. The early prognosticators thought the M1 was more a proof of concept (shove it into existing designs to get it out there).

But now we know that it was always intended to be a real player (it's in the iMac and iPad Pro).

So this news is interesting to me because now it seems to cut back the other way that maybe the M1 was designed for a short shelf life.

In a world where Apple is controlling so much of its silo, "normal" design and building deadlines will be upended.
> AWS lambda

Live by the sword, die by the sword.
Memory, ports. That might be more of a product level issue but its a blocker for me.
I had a play around with the Browser SSH terminal a few weeks ago, as well as getting actual hosts setup I managed to get ssh-chat[1] working on there which was fun. (see: https://twitter.com/JoeBanksDev/status/1382836730651410433)

The feature that interests me is the auditable portion of it, MITM recording of SSH & RDP sessions sounds very useful.

From the blog post announcing this [2]:

> Cloudflare Zero Trust Apps will record the screen of any session, batch the recordings in intervals, and send them to a storage location you have configured. We’ll be adding structured command logging and keyboard input to this flow as well.

[1] https://github.com/shazow/ssh-chat
[2] https://blog.cloudflare.com/browser-ssh-terminal-with-auditi...
I agree that knowledge is connected to trust. So what happened, we don't trust our institutions, schools, government, anymore and all of a sudden we believe every dumb thing we see on Facebook?

> a sense of meaning, inclusion and purpose for many

I think you're right, that IS crucial as well. I often feel that I'm so content with how my own life is going that I neither have the time nor interest to marginalize a certain group, hate another, feel superior to immigrants or whatever. No matter how much Fox news or CNN I read or watch (which I don't do much at all).
I know this sounds like evangelism, but I absolutely hated writing unit tests until I learned TDD. Now, I don't always write tests first, but I usually do.

I'll also say that I have seen a lot of time wasted writing useless unit tests. That can contribute significantly to the "I hate unit tests" feeling.
It looks like they switched from .doc to .docx in January, I wonder if the old format was the attack vector
MagicDNA DNA origami design tool
The latest Macbook Pro 16" supports 32GB or 64GB RAM [1]. It's been that way for a few generations. I have the 2018 model and it has 32GB. I think that might have been the first generation where that much RAM was supported.

[1] https://www.apple.com/macbook-pro-16/specs/

edit: oh right, that's not M1 brainfart
They were “researching” how feasible it is to submit insecure code. In other words, if can they slip some vulnerabilities past the maintainers. To me, it’s the same as sabotage. Not only is it unkind, but if it succeeded, many real people depending on that code could be negatively impacted.
TIL that all software that accepts keyboard I/O is now a "keylogger"

wow...
Aren’t both of the problems posed solvable with stock redis? Using an append only file for persistence and enabling virtual memory support so the dataset can grow beyond RAM size.
I enjoyed this essay. It’s interesting to see how media can mold society’s expectations of self.

I believe she could find a partner who loves the journey and is not only looking for the destination.
People who don't understand IRBs are vastly overstating the IRB issue. Yes, they should have sought it in advance, but on the other hand almost nobody in computer science gets human subjects research training. IRBs issue waivers of consent fairly often, particularly if there's extremely low risk to participants and disclosing the research will significantly affect the results (both of which are true here). This particular study would very likely have been granted an apriori waiver of consent without much hassle at all.

Frankly, the study seems to have been fairly responsibly designed. They fixed actual kernel bugs, but included some additional more subtle latent bugs, if the subtle bugs were not detected, they corrected and removed the latent bugs and educated maintainers who accepted them.
Here's how I imagine it: The policy would insure up to a certain dollar amount, say $20 million, and pay directly to the insured in the event of an attack. If the ransom demand is $50 million, the insured can either pay the remaining $30 million on their own or use the $20 million to begin to repair the damage to their systems.
The RAM is limited to 16GB, IIRC the max I/O throughout is also somewhat limited as well, so you have to compromise on number of USB4/10Gb Lan etc
Why isn't print debugging good? Seems good to me.

As pg said, it's like scrubbing dishes with your fingertips: rarely discussed, highly effective.
Wish they would have given an idea of how much this helped improve their AWS bill. Hard to judge the value of this implementation without knowing the $$$ saved.
"delicious-and-then-unbearable sensation" sounds just like before orgasm when you can't have orgasm. Happens simetimes even to those with penis.
There was an article or discussion I believe I read on HN that discussed how kidnapping and ransom insurance reduced violent outcomes and made dealing with the kidnappers more predictable.
Or even just have an option somewhere you can manually toggle per site, to avoid the issue of being bombarded by permission requests.
My region never got access to this app, so I’m curious

For those who have it, did it change your behavior? Did you have contact and it made you avoid crowded spaces? Did you get tested because of contact logs?
With a sufficiently wide lead in energy efficiency, just selling hardware without any follow up lock-in harvest can be attractive even for a company as spoiled as Apple. They'd likely want to make the modules offered sufficiently big to make them unattractive for desktop use or else they'd risk cannibalizing their lock-in market.
It's easy to say that a super generalised version of another person's claim isn't always true. But face recognition in static pictures works pretty well by now, and it would just take a little bit of digging to find examples where a trained model can do it better than a human.
Gangs in the Los Angeles County Sheriff’s Department
Headline seems to be conflating two different kinds of promises. My recollection is that the promise was that Google and the government wouldn't (couldn't) track you with the data. That appears to be generally true. Finding a bug that exposes some data is unfortunate, but it seems the be an unintentional mistake.

tl;dr, they didn't try to do anything evil, they just failed to be 100% perfect.

Also as /u/arsome points out elsewhere, the other apps that can read this data could get better data more easily through another method anyway.
The author muses about this possibility in the last few paragraphs, but seems to dismiss it without further analysis.
And people complain incessantly that they don't really own their iphones because they cannot install their own code on it. You can't win.
yeah but they want that with apple silicon
I've found diving to be the least demanding "action sport" activities that I've tried, and I've done a fair bit of climbing, diving and flying gliders. Careful and well trained open water diving leaves you with plenty of safety margins in all directions. There's (well, almost) no single thing you can really screw up that would be deadly.

But of course, if the whole idea of something going wrong will leave you lying awake the night before, it's probably not worth it :)
Regarding the Star Wars program, perhaps the high cost was part of the motivation? (To saddle the opponent with similar costs)
Good to see the experimental C++23 features[1] starting to get support. Looks like literal suffixes for size_t are first. [2]

[1] http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p059...

[2] https://gcc.gnu.org/gcc-11/changes.html

[3] https://en.wikipedia.org/wiki/C%2B%2B23#cite_note-1
How would that work if the new owner decides to take the site offline?
...I always thought it was for "Mac".

Though the fact that they've just labeled the chip in the latest iPad Pro as such does add a bit of confusion to that.
It’s not for racing. It’s a safety feature that can get you out of a tight spot to avoid a collision. It’s also enjoyable.

Once we get rid of human drivers in all cars then the first part won’t be needed anymore. When that day comes, we will be safer but we will miss the fun acceleration of these days.
It's possible for Tesla and Musk to overtake the likes of VW in volume -- if anyone can, it's them. But it's not certain that they'll be able to do it.

It's not certain they'll want to. Much better to stay a higher end brand and focus on "fun" and exciting high end cars people (and other car makers) aspire to, rather than trying to out compete Toyota and VW in making Corolas and Polos.
That line seems blurry to me. How do you define both and where is the line? I'm not sure that many angry emotional twitter users contemplate any line, I would assume most just think "I strongly disagree with that person's opinion or actions and I must punish them". I think most people would agree that harassment and doxing are bad, but I also think that most people would think that doing bad things to "bad" people is sometimes ok. Mobs of emotional people are not paragons of morality, bad actions by a few quickly spread and the morality of the mob normalizes to that new worse level.
YES -- it's not just me! At first I thought my monitors were somehow broken (which is unfortunate as I paid a bit extra for name brand LG). I suspected something, as each monitor is plugged into an M1 computer (one's a Mac mini M1 and the other a MacBook Air m1). Both exhibit the visual problem you describe on a random basis.
The discussion happening Ars' comment section is both hilarious and savage. People are clearly averse to continuously being monitored in-vehicle by a system they don't control, plus lots of valid fears about data privacy.

Personally I'm looking to purchase a new vehicle now and invasive safety features are unavoidable. I find myself researching which manufacturers have recalls for their 2020 models because the automatic emergency brakes engage at the wrong time (Ford, Volvo, Nissan, Mazda!).
Setting up a debugging environment is painfully difficult and time consuming that even the most pro-efficient devs (testers/qa) on debugging don't even bother wasting time.

This is the only thing that visual studio does better than any IDE on the market... zero-config debug, even some mature IDE's like jetbrains ones still to this day don't have zero-config debug, it always take some external and obscure configuration to get things right.
I was actually about to write the net benefit bit, but decided against for avoiding some knee jerk reaction of the HN crowd, drowning the argument XD
> Any network engineer will tell you that NAT is an illusion of security.

That "illusion" was pretty damn effective at taking Windows, around '00, from "pwned in minutes, no user action required" to "won't get pwned unless you click the wrong thing".
People pay for a bootcamp for a developer job (with a developer salary), not a teacher's aid job (where they are undoubtedly not paying the salaries they also use in their marketing to attract students). Thus they assume that number reflects the career the bootcamp is promising.
A third party I’ve never heard of capturing keystrokes? Suspicious to me.
Fair enough, but I’m not advocating a DDOS attack or anything like that. Just a phone call or email similar to how we might contact our representative.
This is true, there are a number of embedded frameworks that you could use as well and even run it as virtual machine too. In contrast to this we want to make it as seamless as possible by still providing you the Linux-OS-like layers if you need them. The goal is that a previously developed app for Linux should be seamless to port. The OS interfaces in the higher-level language should be the same as you have it on Linux, so no code changes.
It sounds like they didn't pay anything and that you didn't sign anything. If this is true then you owe them nothing. Why haven't you told them to fuck off?

>If I took his offer and not theirs they would see it as me cutting them out and as a betrayal.

If this is the sort of language they used then I would run from these people as fast as I could. Don't let anyone emotionally blackmail you into doing something you don't want to do. If this is how they're acting now imagine how bad it would be if they were actually your business partners and had actual rights as share holders of the business?

>I’m sick to my stomach over it. I can’t get rid of them. I can’t negotiate.

Try to remember that you have no obligation to even speak to these people.

Also, please get yourself a good lawyer before you sign anything with anyone; and especially don't sign anything that people are "strong arming" you into signing.

>The only hope I have (in my mind) is if I can raise a round in the next year and have them bought out. I don’t see any other way.

You can just politely tell them "no thank you, I'm not interested anymore."
Should we Europeans start the new design of the CPU chip?
Political Polarization Is Exaggerated
To make a Mac Pro-scale system with real gains, they would roughly need the equal of 9x the number of performance cores of an M1 (~36 to 48 cores), if they were to scale GPU in the same way (72 core GPU) you are looking at a 72 core GPU with over 23 TFlops (FP32), they could also find room in clock speeds and 5nm+ to get an additional 10 out of it I imagine. In general that would be enough for many but I wouldn't be too surprised to see them do something more exotic with their own GPU.
> The UMN has not said yet whether it will be withdrawn.

Regardless of UMN's decision, perhaps the IEEE should consider withdraw of this paper from their journal regardless, their acceptance criteria reads:

> Discuss steps taken to ensure that participants and others who might have been affected by an experiment were treated ethically and with respect.

> If a paper raises significant ethical and/or legal concerns, it might be rejected based on these concerns.

https://www.ieee-security.org/TC/SP2021/cfpapers.html#Ethica...

In their apology letter, the researchers seem to acknowledge they ran afoul of this requirement:

> As many observers have pointed out to us, we made a mistake by not finding a way to consult with the community and obtain permission before running this study; we did that because we knew we could not ask the maintainers of Linux for permission...
Trekking in Mount Koubru(Manipur)
Not necessarily. The phrase "buy some time" springs to mind. By the time your previous "wins" become "losses" it may not matter anymore.
Yea but that one uses the intel cpu. The problem with M1 is that it only supports up to 16 right now. And no eGPU. :/
No matter how good the debugger is, it still requires learning a new tool and the interface. As long as a debugger has a gdb-like simple CLI, I will often use it because I know it. But I will also still use print statements when I want to scroll through a log of values, rather than press c <enter> For an indefinite number of times.
Yes, I believe ive seen those terminals at applebees and chili's
Dedicated graphic cards doesn't work. No Linux support.
I haev this problem! For me it's a strip about 2 inches wide, down the middle, one pixel higher than the rest of the image. I am using an LG 5k monitor, and I have been unsure if it's a problem with the monitor or the machine. I'd love to know what kind of monitor you are using; this gives me hope that it might be an apple bug that will get fixed eventually.
people wanting more cores, more memory, eGPU support, and I'm here just wanting them to have multiple colours...
Well, speaking for Apple, Apple 99% sells consumer products. So look for big consumer products markets which they haven't entered. Cars would be one of those markets, for example.

AR/VR/more wearables would be another.

Home appliances/electronics would be another.
Since they are using Redis as a simple key-value store, I wonder if they looked into something like LMDB which is disk-backed and has even better performance?