Great visualisation for the efficiency of cursor based pagination from @jessicamauerhan at #ipc#webinale. Did you know that limit-offset pagination has to scan the whole database to figure out what comes next?
That's a long time if you're on the last page of thousands of results. But it doesn't have to be that way - investigate adding cursors to your data sets. With appropriate indices, the time required is constant.
The life of a maintainer (and generally any back-end engineer) - if your existence is acknowledged, something's probably gone wrong! I feel you, @jrf_nl
Thank you to all of the package maintainers out there 💕
#WHO / Famine in Gaza is imminent, with immediate and long-term health consequences
The World Health Organization, along with numerous other humanitarian organizations, are depending on an #IPC report to raise awareness about the pressing issue of an impending famine in Gaza. There are claims by some that the famine is architected by Israel.
The Integrated Food Security Phase Classification (IPC) is a multi-partner initiative that uses a classification and analytical approach to determine the severity and magnitude of acute and chronic food insecurity and malnutrition situations in a country. The goal is to provide decision-makers with evidence-based analysis to inform emergency responses and long-term policies. The IPC was developed in 2004 by FAO's Food Security and Nutrition Analysis Unit (FSNAU) and has since been implemented globally in over 30 countries. It is considered a best practice in the food security field and a model of collaboration.
#WHO / Famine in Gaza is imminent, with immediate and long-term health consequences
The World Health Organization, along with numerous other humanitarian organizations, are depending on an #IPC report to raise awareness about the pressing issue of an impending famine in Gaza. There are claims by some that the famine is architected by Israel.
The Integrated Food Security Phase Classification (IPC) is a multi-partner initiative that uses a classification and analytical approach to determine the severity and magnitude of acute and chronic food insecurity and malnutrition situations in a country. The goal is to provide decision-makers with evidence-based analysis to inform emergency responses and long-term policies. The IPC was developed in 2004 by FAO's Food Security and Nutrition Analysis Unit (FSNAU) and has since been implemented globally in over 30 countries. It is considered a best practice in the food security field and a model of collaboration.
Bharatiya Nyaya Sanhita: Decolonising or Reinforcing Colonial Ideas?
This piece focuses on the BNS, meant to replace the IPC. It analyses how the bill falls short of its stated goal of decolonisation. Anushka Pandey, Preeti Pratishruti Dash, and Mrinal Satish argue that the BNS expands powers of the state and the police, retains offences grounded in archaic morality, and widens the punitive network through broad and vaguely defined offences.
I will refer to IPC only as IPC even after it gets replaced with new law named in Hindi, says Madras High Court judge Anand Venkatesh
The judge tells the lawyers present in his court hall that he does not know Hindi and therefore it would be difficult to pronounce the new names properly.
Reminder that the #programming languages useful for #applications may not be the same as those used for #libraries that the applications use, and this is just fine, e.g. performance often requires that one does not rediscover the wheel by recoding libraries in #clang#cplusplus and #fortran because they are, for whatever reason , resistant to use a proper #ffi (or an #IPC) #api.
The Three Criminal Law Bills: Using Criminal Law to Establish Permanent Extra-Constitutional Emergency Powers
“Don’t give them space to breathe!” Twelve changes to criminal law in the three Bills introduced in parliament in August, 2023 will create a quantum leap in the power of the government, if and when it so wishes, to silence dissent and opposition and shut down public discourse, choking all channels that communicate conflicting news or views to the people.
Parliamentary Panel Defers Adopting Draft Report on Bills to Replace Criminal Laws
Three opposition members filed dissent notes, demanding changes to the Bills that seek to replace the Indian Penal Code and the Code of Criminal Procedure, according to reports.
🎉 Just got back from the International PHP Conference in Munich!
An amazing experience, I even gave a talk (see previous toot)!
🎤 Noted some recurring themes:
1️⃣ Reproducibility is often overlooked or ignored, sadly 🤔
2️⃣ The benefits of functional programming in PHP aren't widely understood 🔄
3️⃣ Docker ≠ Full reproducibility 🐳
Stay tuned! I'm planning to write some articles to delve deeper into these topics.
Only two weeks until the International PHP Conference starts in Munich.
I'm very much looking forward to giving a talk with @sebastian about the new Neos Content Repository which was in the works for so many years. Spoiler: You can use it in any PHP projects without Neos!
For #IPC between programs at work, I use JSON: with std{in,out} (and non-JSON messages in stderr), and additionally supporting Unix domain sockets (replacing stdin and stdout) with syslog (in place of stderr), similarly to CGI and FastCGI, supporting streaming for output (a sequence of JSON objects, until the stream is closed). Using Aeson for that, but it is a heavy and occasionally problematic dependency, and not great for manual invocation.
Back in 2016/2018 I wrote a Haskell library to derive (de)serializations of arbitrary types, using GHC.Generics, in the form similar to regular command line arguments (to be used for input) or DSVs (for output), with automated basic usage strings for --help messages, but have not switched to it: slightly worried that there may be bugs, and the help messages would be better with optparse-generic. Though there is no serialization for optparse-generic in sight, it does not cover program output, adding help messages for it requires introduction of the "Helpful" constructors.
As a side note, later I learned about Python Fire, which is a similar project in Python.
I am still using JSON (and Aeson) for that, and even need to pass JSON as a parameter in some cases (possibly just as a string, to avoid dependency on it in the IPC library), but it still feels awkward and inconvenient for manual invocation (as I do mostly for testing).
Considering how to proceed: keep it as is, update the custom library and try to use it, try to use optparse-generic with custom or manual serialization and something else for output. Or could use actual CGI/FastCGI instead of this, an HTTP server, OpenAPI?Swagger, or even SOAP (not great for manual invocation though, and complicated). Formal specifications are tempting to have, too, so that it would be more suitable for different languages. I wish there was a good option for s-expressions.
What do you use for IPC, in #Haskell or in other languages, why, and are you happy with it?
I kinda have a hard time taking projects referencing #Unix#philosophy seriously.
"Do one job and do it well" is so ill-defined as to be useless. So the typical result is to simplify the program into uselessness by externalizing the complexity onto the user and their environment instead of handling it properly within the program itself because that's "bloat".
And don't get me started on the #serialization hell of unstructured text pipes as your primary #IPC.
The most popular formulation:
> Write programs that do one thing and do it well.
I already mentioned the problems with that one.
> Write programs to work together.
Actually a good idea. Very vague and not in any way specific to unix.
> Write programs to handle text streams, because that is a universal interface
Unstructured text streams is a horrible #IPC primitive, they are only universal if you're not doing anything that would call for structured data, otherwise welcome to serialization hell.
J&K: Principal, teacher booked for thrashing student who wrote ‘Jai Shri Ram’ on school board
The boy has been hospitalised and the police have arrested the teacher. The teacher and the principal have been booked under Sections 323 (voluntarily causing hurt), 342 (wrongful confinement), 504 (intentional insult), 506 (criminal intimidation) of the Indian Penal Code and Section 75 (cruelty to child) of the Juvenile Justice (Care and Protection of Children) Act.
'Against Constitution': Madras Bar Association Objects To Hindi Names For Bills Replacing IPC, CrPC and Evidence Act
The Madras Bar Association has passed a resolution raising objection against the renaming of IPC, Indian Evidence Act and CrPC in Hindi. The Association has taken objection to the names "Bharatiya Nyaya Sanhita Bill", "Bharatiya Nagarik Suraksha Sanhita Bill", "Bharatiya Sakshya Bill", for the Bills which seek to replace the Indian Penal Code, Code of Criminal Procedure and the Indian Evidence Act respectively.
Are the new criminal law bills really anti-colonial? Here’s why experts say no
Home Minister Amit Shah promised that the bills would overhaul our criminal justice system. However, the proposed reforms may be colonial in spirit too.
Women have unleashed "legal terrorism" by misusing Section 498A IPC: Calcutta High Court
Single-judge Justice Subhendu Samanta said that Section 498A was introduced for the welfare of women but the same is now being misused by filing false cases.
Home Minister Amit Shah Says Sedition Is Dead. But Its Replacement Is More Fearsome Than The Colonial Law Ever Was
The proposed Clause 150 meant to replace Section 124A, or sedition, proposes that the government and the nation are the same thing—as God, king and country once were under colonial rule—and the ambiguity, legislative intent and punishment are stronger than the old law. Article14 analysis shows how the problems we faced with sedition will continue if the proposed Clause 150 becomes law.