Hacker Newsnew | past | comments | ask | show | jobs | submit | SomeoneOnTheWeb's commentslogin

Side question : what font are you using in your screenshots? I find it really nice looking


Commit Mono apparently: https://kau.sh/blog/commit-mono/


I strongly disagree.

* The performance difference can be pretty massive depending on scenarios. Sure, most programs don't need it, but still * Rust has not only memory safety but full safety around it. For instance, in Java if you iterate over a list while mutating it you'll get a runtime error. In Rust, it won't compile, preventing you from a possible bug later on * The time you spend learning Rust is so much time saved afterwards because the language is specifically designed to reduce the risk of programming errors. Many things like the absence of a `null` value like we have in Java is an immense time saver when your program gets bigger


Why do you take it for granted that I can't just iterate and mutate and it works just fine?


It could work, if iteration is using indices. But honestly I prefer it to be an error, as this is often the sign of a bug.


I mean plain iteration uses function calls. Iterators are a more advanced concept that needs wrapper objects and function calls.

> as this is often the sign of a bug.

Why? I've just written that yesterday, I had never a problem with that. For example after deleting an element from an array I need to commit this change, by adjusting the size, etc. Why is it so unexpected that I also need to adjust the index? The index needs to be modified anyway.

Where is the notion coming from that this is less preferable than the workarounds, like marking some elements for deletion and then iterating a second time or by making a second container and moving everything that shouldn't be deleted (.filter) ?


Exactly. You need to adjust the index, and if you don't you have a bug. But how to adjust the index depends on what you're doing.

And sometimes it's a simple bug where you never meant to modify the collection.


But I need to adjust indices for a container when modifying anyways, regardless whether it occurs in a loop. It's not different than doing not doing it in the loop. Also I'm also modifying the loop index anyways, since I want to iterate, not always touch the same object.

> And sometimes it's a simple bug where you never meant to modify the collection.

How do you accidentally modify an array, which would be different from any other variable?


But the index is not yours. The iterator keeps it.

> How do you accidentally modify an array, which would be different from any other variable?

Like you cause any other simple bug. When there are tons of things and it's not a simple variable. Or even just a typo. That also happens.


If the iterator abstracts the iteration away, it should also abstract over the modification.

> Like you cause any other simple bug.

Yes, but we don't forbid modifying other things, just because you could modify them by accident, because you want to modify them some of the time. Why does a[i] = ... needs to be prevented, but a = ... is fine?


> If the iterator abstracts the iteration away, it should also abstract over the modification.

That's no longer a simple iterator; it's a collection wrapper that represents in-iteration collection. It can be useful, and it is possible to write! But I don't think this is what programming languages should offer as their default iterator. Also, how do you solve the problem of mutation done through the collection without involving the iterator?

> Yes, but we don't forbid modifying other things, just because you could modify them by accident, because you want to modify them some of the time. Why does a[i] = ... needs to be prevented, but a = ... is fine?

I agree, this is not a strong reason on its own, but it strengthen the main reason.


> That's no longer a simple iterator; it's a collection wrapper that represents in-iteration collection.

I am not using a language with iterators in daily work, but that doesn't sound like a real problem to me. The iterator is already provided by the container type and the container already supports removing things:

    iter<T>::drop_current () {
        this->container.remove_at (this->index);
        this->index--;
    }
> Also, how do you solve the problem of mutation done through the collection without involving the iterator

Same like you solve mutation done to the container while the iterator exists, when the iterator doesn't allow mutating. That problem already exists.

I fail to see how mutating a container while iterating is more likely to be a bug, than mutating any other thing.


s/I mean plain iteration uses function calls/I mean plain iteration uses indices/


> The time you spend learning Rust is so much time saved afterwards because the language is specifically designed to reduce the risk of programming errors

[Citation needed]


What? Where can you find an entire computer with builtin SSD, RAM and keyboard for $50?


A recycling center.

The amount of waste that happens constantly is mind-boggling.


Yup, and you will get mainline linux kernel support and UEFI too. No mincing around with specially blessed SD card images and non-standard boot procedures.


I was actually curious to see if this actually exists, originally I thought a pi 1 with a cheap keyboard and ssd, but of course the pi 1 doesn't support ssd's anyway. In the end I found an old thinkpad on ebay that technically meets the spec (E-50, i3, 8gb ram and 128gb ssd), though preowned is kind of cheating. New I think you might be right, even without the keyboard.

To be clear I think the price of the pi 500+ is pretty much fine for what it is, I was just curious.


What's crazy to me is why they didn't go for that kind of implementation. This works well, ensures privacy, can be audited easily, and doesn't need a f*cking app on my phone.


If you read the guidelines they actually want to implement a double-blind approach with ZKPs, which imo is significantly better than a challenge-response pub key system in term of privacy.

If you're not familiar this would mean the verifier doesn't learns anything except a statement about attributes (age, license, etc); and the EU doesn't learn what attributes have been tried to verify or by who.


Not asking to troll or be a jerk. Promise.

What would need to happen in the United States to implement a reliable ZKP age verification system - and how long would it take to roll it out?

Asking because it feels like the Titanic has sunk, and we're eschewing a floating door because the coast guard has regulation conformant life rafts that would work better.


> United States to implement a reliable ZKP age verification system (my emphesis)

Realistically at least 3-4 years, assuming they want to keep the same goals as eIDAS. I think the (software) implementation will be the least costly part, time-wise; but it takes a long time before everyone adopts a new social system. Especially in the US where there has been no precedent for digital identification. Even with full control of your own ID & and solid implementation details, there will be push-back just for suggesting that people/companies should adopt it.


If I work for Aylo (pornhub, etc) I'm telling every fintech and click-and-mortar bank who wants more customers to do this yesterday!

"Hey third fifth of Oregon! Do you want to triple your customer base in Oregon for the cost of a small dev team and 1 month of work?!"

> f*cking app on my phone

I need another app on my phone like I need another hole in my head...


Most people's TV show ads nowadays, be it Samsung or a competitor. The thing is, people don't care about ads. They just deal with it. Hence how Samsung gets away with this sh*t.


The fact that this is true feels like we as a society just shrugged and gave up about something like, say, ubiquitous lice or ticks. "Yeah, everyone just has those, all the time."


Hey, so remember COVID?


What about it? That's not something that "everyone had all the time" and just accepted it, like ads.

We only saw that attitude towards COVID because it affected people for a relatively short amount of time, and majority of them suffered relatively minor symptoms.

People not caring about others isn't exactly noteworthy. People not caring about themselves is different.


They care but not enough for "the free market" to generate an ad free competitor that can be trusted to never show ads for the lifetime of the product. Especially because they'd have to charge more for that product.

Government regulation is the only way to stop this.


I've got a fridge that I trust to not show ads for the lifetime of the product, because it doesn't have a screen like that. It's pretty new, too, and fairly nice.

So such competitors exist. I can't imagine that they will cease to exist.


I've been thinking the same. Our GE fridge is just... a refrigerator/freezer. No screen, no internet connection. We went looking for that.

Our Miele dishwasher... no internet connection.

Our GE range / stove wants an internet connection and a phone app to use it's broiler features (I think). They're actually gated behind internet connectivity. We do without it.

Our home thermostat was installed with wi-fi everything... Which we promptly disconnected when the installers left. The same for the irrigation system. We want to use the device to control it, not have to connect to some server on the internet to manage our heat, A/C, or watering schedule.

Don't get me started on looking for "dumb phones" for our child.


> an ad free competitor that can be trusted to never show ads for the lifetime of the product

There is no such thing, every big corporation adds greedier and greedier practices over time.


I mean, to be fair, most people’s TVs have shown ads since forever. Granted, those ads were distributed by the broadcaster rather than the TV manufacturers, but the association between TV and ads goes back far enough that it’s just sort of part of the cultural consciousness. I’m not sure that means that people “don’t care about ads”, especially when they are appearing in their homes through channels other than television. It may be that people who normally wouldn’t accept having ads on their devices have a blind spot for TV ads, just because that’s how TV has always been.


This means your system doesn't have enough airflow if it throttles this quickly.

But I agree this should not be a problem in the first place.


For the same price you have the Minisforum UM760 Slim which should be 100% compatible and provide VASTLY superior performances. Or you can check cheaper models that would have the same level of performance as the A5.

Geekom make nice products but they are usually both very expensive and very noisy compared to competitors. Their selling point is mainly their top-notch design, but I find these to be function-over-form most of the time.


I guess the lack of a built-in SD card slot might make the Minisforum options less attractive


Right, if you specifically want to use an SD card and not USB, and don't want to add an adapter either, sure the A5 is the way to go.


Yeah, definitely boils down to how much of a factor the aesthetics of the 'tiny carts' is for you in the whole experience. I can imagine some creative modding that would make a collection of themed USBs just as appealing, if not more :)


It's (1) but ICE is making their job to intimidate people so they don't face consequences.


Minisforum 790S7/795S7, mini-ITX desktop.

16 cores, 32 threads, only a bit less powerful than a desktop Ryzen 7950X or a 14900K, but with a comparatively low power usage.

About 500€ barebones, then you add your own SSD and SO-DIMM RAM.


How is the cooling system on that Minisforum?

Is it noisy? Does it keep up with the 7950X?


What the hell is that with OP being so rude?

And following FastMail's reply

> Hello Andrew! Can you please contact our support team so we can look into this for you? fastmail.com/support

They say:

> Don't have time. Consider my tweet the bug report.

Sorry but this asshole behavior. Bugs happen. No need to do public shaming and being rude to the company for that.


I disgree. Other people were saying it's broken too. Reasonable company behavior here would be 1 tweet "we'll look into it", and then either "we reproduced and are working on a fix" or "looks good to us please contact support so we can investigate your particular issue". But there's no reason to initially make users jump through hoops.


It's in their status page and it's tagged as a partial outage: https://fastmailstatus.com/cme1fq7ej002dh0iu6z8pey4f

Personally I don't really use their web interface, but I tried it now and it all works just fine (on both prod and beta).


When I experienced this issue it was not on their status page, so I assume it wasn't for the original tooter either.


That response is probably standard support procedure. I think it’s pretty reasonable behavior. Could it be better? Sure. Is the person handling Twitter interactions doing their job? Also sure.


Not wasting time on someone else's process isn't being anything negative. Expecting other people's time for free is indeed being an arse.


Last time I checked fastmail was a paid service. OP has every right to expect it to be working.


Sure but Fastmail's failure doesn't give people license to be assholes.

There is far too much assholery in the world. It's never OK.


This comment section's been illuminating to see who has probably never worked public-facing support or service industry.

There's no amount of money you can pay to make this behavior not shitty. Shitty behavior is never a good look, but sometimes it's understandable. If you refrain from being shitty, you won't have to worry about whether or not it's understandable.

Also, the only reason that someone can be shitty and get results is because other people aren't. (In this case, "submitting" a bug report via Twitter and still getting a resolution is possible because other people reported it through the proper channels.)


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: