Any situation when mobile internet cannot be used. That is not only protests, but also legal gatherings, i.e. street concerts, or places where mobile coverage is poor in general.
That depends on where your live (and when), but: Protest is the cornerstone of democracy and in general you shouldn't need permission to organize a demonstration.
I prefer voting. I find protests annoying. They're a good way for people to let off steam, hang out with friends, get photos for the international press etc. but they're not the right mechanism for finding out what the people want.
They're definitely effective when most of the country wants the government out, but by that point a vote would certainly do just as well, and with fewer flying bricks.
Protests can serve as an implied threat if the government is gaming the election process. They're certainly preferable to a riot or a coup attempt in that scenario.
They also serve to draw attention to issues that aren't showing up on the ballot for whatever reason. The system doesn't always work in an ideal way. To that end protests are supposed to be annoying to those who don't care.
Everyone prefers voting.. But to be able to vote, a vote must be happening. Protests are sometimes the only way to make a vote happen in the first place.
They are also a good communication tool for the world to see what the people are struggling with.
Name three currently existing democracies. USA is out (protests illegal), Europe is out (protests require registration which is denied for anything that has a risk of effecting change), the Middle East and Asia are out for obvious reasons. Maybe there's a democracy somewhere in Africa?
but the internet is for talking to people across the globe. and the app presents itself as an alternative for internet based apps. the reality is however that in any place where i can't use the internet, this app does not really solve that problem. it is only useful in situations where in most cases the alternative is talking face to face. it's not any situation where the internet can't be used, but just some of them. there certainly are good use cases for local communication, cases where face to face is just out of reach and many of these use cases are currently served with internet based apps too. but it's not an alternative to internet based apps per se.
The Internet is _not_ for talking to people across the globe. The Internet allows that, but not only that - one can have a Whatsapp chat with someone in the same bus, this is both legal and technically possible.
The bitchat app serves the niche where talking face to face is not an option and talking across the globe is not needed. And the app explicitly states "infrastructure independence" as one of its design goals: "the network remains functional during internet outages", which cannot be served by internet-based apps by design.
The Internet is _not_ for talking to people across the globe. The Internet allows that, but not only that - one can have a Whatsapp chat with someone in the same bus, this is both legal and technically possible.
technically possible but rather redundant and in most cases pointless. (yes, there are exceptions)
so i rather strongly disagree. 99% of my use of the internet is to talk to people across the globe. it's its primary use case. the example you mention is a fringe application, useful to a tiny minority.
"the network remains functional during internet outages"
that strongly implies that i can use this app to replace other apps that use the internet. but i can't, because it does not allow long distance communication the way internet based apps do.
so for 99% of my needs this app is not helping me. it does not make me independent of the internet. i have been in places where the internet was cut off due to political turmoil. and i have friends who have that happen to them. in all cases the main challenge was the lack of long distance communication. local communication was barely affected.
sms and phone still worked, and in fact the app that would have helped is one that can route data connections via sms and phone calls. like old acoustic modems.
infrastructure independence at a local level is nice, but much less serious or critical than independence for long distance communication. and long distance already starts at a few km.
I believe bitchat can also use the wider internet to exchange messages. So it is an app that can use either the internet or various other more local options. That seems like a desirable improvement to me.
What is conceptually different between prompts and code? Code is also not always what the computer will do, declarative programming languages are an example here. The only difference I see is that special precaution should be taken to get deterministic output from AI, but that's doable.
A prompt is for the AI to follow. C is for the computer to follow. I don't want to play games with definitions anymore, so I am no longer going to reply if you continue to drill down and nitpick about exact definitions.
If you don't want to argue about definitions, then I'd recommend you don't start arguments about definitions.
"AI" is not special-sauce. LLMs are transformations that map an input (a prompt) to some output (in this case the implementation of a specification used as a prompt). Likewise, a C compiler is a transformation that maps an input (C code) to some output (an executable program). Currently the big difference between the two is that LLMs are usually probabilistic and non-deterministic. Their output for the same prompt can change wildly in-between invocations. C compilers on the other hand usually have the property that their output is deterministic, or at least functionally equivalent for independent invocation with the same input. This might be the most important property that a compiler has to have, together with "the generated program does what the code told it to do".
Now, if multiple invocations of a LLM were to reliably produce functionally equivalent implementations of a specification as long as the specification doesn't change (and assuming that this generated implementation does actually implement the specification), then how does the LLM differ from a compiler? If it does not fundamentally differ from a compiler, then why should the specification not be called code?
It's commonplace for a compiler on one computer to read C code created on a second computer and output (if successfully parsed) machine code for a third computer.
China has built their Great Firewall over many years gradually, and they have a lot of resources inside, so almost everything from the "western" Internet has a Chinese analog.
Russian government simply does not give a flying fuck about people and economy on either side of the border, so they can just pull the plug completely if they see it necessary from the political point of view.
So these countries are hardly reference points for what UK can achieve (although Russia is closer than China).
(I may be wrong here but) under the hood Docker on macOS runs a small Linux VM where all containers live, exactly because containers are basically Linux namespaces on steroids so not portable 1:1 to anywhere.
You very much _can_ run unsigned software on Apple silicon. At work my department has a bit less than 50 engineers with Macs (M1 to M4) and nobody complained that they can't build and run our product (using GCC from Homebrew, not Clang from Apple). But it involves some jumping through hoops, yes.
As mentioned above you have to approve the binary two times (at least), being careful the first time because the dialog popup offers to remove the binary. Also since our product has some networking to do one has to mingle with firewall settings to allow the binary to do the networking.
To check I did this: removed the signature (LC_CODE_SIGNATURE section) using lief Python package (no affiliation, just looked suitable for the task), checked by otool that the section is indeed gone, started the binary - it worked. The spctl said that the binary is "rejected", but it says so about every non-Apple binary I checked on my machine so not informative. The codesign tool shows "is not signed at all" on the binary with stripped signature.
I'm not too well-versed in OSX system/dev tools, so if there is a more correct/precise method of checking the signatures I'd very much like to know.
Nope, 15.7.2. Maybe there are some settings, unknown to me, that are configured by MDM and that allow for such behaviour - our Macbooks are managed by the employer and are intended for development, so would be logical to set them up this way.
_A Mac with Apple silicon doesn’t permit native arm64 code to execute unless a valid signature is attached. This signature can be as simple as an ad hoc code signature (cf. codesign(1)) that doesn’t bear any actual identity from the secret half of an asymmetric key pair (it’s simply an unauthenticated measurement of the binary)._
_For binary compatibility, translated x86_64 code is permitted to execute through Rosetta with no signature information at all. No specific identity is conveyed to this code through the device-specific Secure Enclave signing procedure, and it executes with precisely the same limitations as native unsigned code executing on an Intel-based Mac._
The authentication part does not look much different from password authentication (key ≈ password), and the "Configurable TTL" bit is somewhat confusing, the first part of the sentence assigns the TTL to API keys but the second part says it applies to IPs being whitelisted. I would expect that TTL for a key means that after the TTL expires the key itself becomes unusable.
I often wonder how such teams build their devices - I assume it requires quite a few pieces of equipment that can't be bought at a nearby shop. Are such devices ordered from some manufacturer or are they built in-house somehow?
There are specialized companies selling components, what you cannot get you manufacture yourself. Assembling the device for prototypes like this is usually done in house.
Established labs often have a specialised section that cultivates all the little tricks how to do these things.
Knowledge is transferred by hiring postdocs that have the skills you need or by sending a phd student over to be trained.
As a scientist, if you do this for a while you end up with insane skills, but there is no place for them on the job market.
Everybody else is living 15 years in the past from your perspective.
University researches in general? The boss always knows a small company that can make one, and staples a bidding notice to campus notice board for formality as the device is getting made and delivered. Isn't that how they do anywhere it might be?
reply