skysight-inc/HackerNews huggingface dataset:
That's incorrect, I just tried it on iOS.

When you open it, it defaults to the "Photos" tab which has a message (not a dialog) asking for all photos access. But if you switch to any other tab (like Search or Library) you've got access to all of your photos in the cloud.

On the one hand you wouldn't realize that if you never tried tapping another tab. But on the other hand, the main "Photos" tab is designed to access all of your local photos and show whether or not they're backed up. Most (although not all) people are probably using Google Photos for this (to save local photos to the cloud), so it at least makes some sense for it to be the main tab with a prominent request.
I used to use Delphi/Pascal as my main language. In the last decade or two I have been on a bit of a journey looking for a language that feels right to me. I used Haxe for quite a while but I felt Haxe fell into the trap of 'There's a Macro for that' (Macros can do anything, but ultimately enough macros make everyone programming in their own macro augmented language). JavaScript developed decent improvements (but could still use more) and I do a lot of stuff there now.

A year or three ago I was writing some 8-bit AVR code and I gave FreePascal another go. I found it extremely enjoyable. I got to use the newer features and it felt like a truly modern language. Part of what made it so enjoyable was that because I was coding for a tiny space I was not using most of the standard library and just building custom specific code as I went. This meant I did not have the layers of backwards compatible namespace clutter that FreePascal has accumulated over many years (TList, TFPList, TFPGList, TFPGObjectList etc. My main pain point was that the compiler did not allow constant floating point expressions on a target without an FPU(or emulation). Since these could be done at compile time it would have been nice.

Having worked in other spaces, I do now find the inability to define variables mid function to be restrictive, being able to have sub-function scoping is nice too. Begin End vs { } doesn't really bother me. I think I now prefer case sensitive languages and would rather not have letter prefixes on types. I think this is more due to the advancements in editors than anything. Syntax highlighting and active linting can remove text clutter by moving information into separate domains.

I would probably be quite enthusiastic for a descendant language of FreePascal that had a clean slate approach. A new standard library that used the newest features as first class citizens. Maybe when I retire I'll have a go at it.
Do you have any examples from your experience about making that distinction? Sometimes I struggle with the boundary between good maintainable code and meeting deadlines.
I don't think that has really been a change in the past 15 years. Well, maybe there was just a lull in people caring about correctness and robustness... But it's not like before 15 years ago everyone was using dynamically typed languages and static analysers didn't exist.

I guess you could say the world went through a dynamically typed loosy goosy phase and then realised that wasn't so great.

I think one thing that actually has changed is that SMT solvers have massively advanced in the last 20 years to the point that formal verification is practical. Ish anyway. It still seems to require a PhD to do software formal verification. Hardware formal verification is easy though.
good article. There are also smaller programs maybe worth mentioning like Linode rise. They give you much less credits though.
Vimeo’s New AI-Powered Editor Promises to Simplify Video Creation
I genuinely feel that these two books, and the audiobooks even more so, are full blown genius.

The character has been steeping in his own mythology and metatext for decades, and these books use that to such a wonderful effect. I think they hold up as amazing comedy in their own right, but having the character describe events we’ve seen in previous formats but through a warped narrative is a wonderful and uncommon device, and the intentional bad writing is so joyous.
Question: would you rather talk to a GPT-4 chatbot or a human?

Answer: human.

Question: would you rather talk to a GPT-4 chatbot RIGHT NOW or a human after holding for 30 minutes

Answer: chatbot!
As far as I understand that, since there is no explicit clause prohibiting an extension after 6 months. I think it is safe to assume that it can be extended by another 6 months provided the suspicion persists (i.e. a judge can be convinced).

I'm not french myself, so take it with a grain of salt.
One aspect of SSRIs and other such drugs that mess around with your serotonin is that fluctuating serotonin levels are dangerous for gut health. I believe it's about 90% of the body's serotonin is found and utilized in the GI tract, not in the brain. So it was utterly ignorant and/or deceptive for the drug companies to market several classes of drugs which muck around with "neurotransmitter" levels, when said neurotransmitter is, in fact, extremely important for digestion and autoimmune function as well.
this is what i don't understand about browser fingerprinting. why would you design a browser to allow fingerprinting in the first place? there's no legitimate reason for a website to know what plugins or fonts i have installed, etc.
If you subscribe to Apple One you can add 2TB of iCloud+ to that for a total of 4TB. I agree that there should be a better way to do this though.

> https://support.apple.com/en-us/HT211784
I have worked as a solar scientist researcher for some time, have coauthored 3 papers in Michael Graetzel[1]'s laboratory and I have some experience in both Graetzel cells and perovskite solutions like the one mentioned in this article.

Long story short: scientific researchers, especially those in well funded laboratories are incentivized by the wrong metrics (in all fields, not unique to solar) and in this field the only metric that matters is efficiency. It doesn't matter if your cell decays by 50% in a day, it reached some great potential in a new way, here's the way for a high impact publication.

Want to work on the other problem though? Lifetime, resiliency? Cheap and affordable and non-toxic materials?

Good luck getting proper funding and exposure. Why? Because scientific papers are a closed mafia, where a set of the most influential scientists (doesn't matter how many scientists the planet has, the moment you start entering a niche the number of people is very low) in their field review the submitted papers. Don't have high efficiency or you're not breaking science? Forget a high-impact journal. You're back at B-tier, C-tier papers, but those won't get you funding and status. Not great for your career.

So what do you do? You play fool and focus your efforts and many many millions of euros to get the next perovskite cell that can reach high 20%s with some twist at least or go for the 30%+ ones.

Just to express how sad and toxic the world of scientific research is (not even mentioning the insane amount of fake data that gets published every day, the politics, etc): instead of being a researcher I now prefer being a web developer writing forms list and tables.

[1] https://en.wikipedia.org/wiki/Michael_Gr%C3%A4tzel
Dazzle Paint Ship Camouflage Designs
I was teaching programming with Pascal until three years ago, and I think the pedagogical argument might have made sense in the past, but not in 2023 (or 10 years ago for that matter).

The syntax is rigid in all the wrong places. For example, not being able to declare variables anywhere doesn't really help students, this isn't something that typically leads them to errors.

What does lead to lots of errors? Dereferencing uninitialized pointers or going out of bounds in arrays, for example. And the language and compiler won't help you one bit there. Same opaque segmentation faults as with C, same unpredictable behavior as with C, but with worse tooling for debugging.

Compilation time is not an issue in 2023 - well, maybe it is if you compare with C++, but C++ is about the worst non-joke language I can think of for learning (and it was my first language!). C, Java, Python, etc. are fast enough.

Pascal had its time but I don't think there is much reason to use it now, outside of pure curiosity or wanting to try a historical language.
https://ghostarchive.org/archive/oClyJ
>> If your senior management doesn't understand how your team, as a large unit working together, impacts revenue, then that's kind of the fault of that management.

Let's be more blunt. Then that management needs to go. Repeat at each level all the way up.
I read other comments of people claiming the code generated by the LLVM backend was less than factor 1.5 faster than the one generated by the original backend, which is not worth the effort (and the humongous overhead and additional dependencies) from my point of view; but I'm still trying to find information about the specific optimizations done in the current FP compiler.
Yes.

Except sometimes you don’t have to use libraries because the language just does the right thing out of the box, e.g. go with channels, selects and goroutines. This is what Python’s ‘there should be only one way to do it’ is really about.
Hopefully as LLMs get smarter, you'll need less prompt engineering and stuff will "just work" across models.
and how did it work out for NATO in Syria?

for different factions of rebels backed by Pentagon/CIA/etc/etc
recently did a conversion of a Delphi program to Java with some C++ and this is a strange argument to use. pressing F9 at any point in Delphi and having your program run a second later is incredible, that plus catching the vast majority of errors compile time certainly does not slow you down.

Speed wise on this last conversion project with the same first level optimizations GCC is a good 50% faster, the Java parts feel about the same or a bit slower though, Disclaimer I never go to extreme optimization settings on compilers, was bitten several years back and happy to not go cutting edge.

Also Pascal is much less toxic community for noobs I got to the point about ten years back I would rather not ask the question on-line for GCC due to the fact I would be branded stupid for not knowing some obscure linker setting or such like.

end of my career now, happy Pascal was part of it, especially in the early Turbo Pascal DOS days, I doubt I would have carried on at the time if I was forced to use C (I later did and it wasnt that bad but I had to scratch my head at the time how people thought it better)
From the (archived) article:

> In the new work published in Energy & Environmental Science, researchers at Cambridge University harnessed algae’s ability to produce electricity during photosynthesis. They put blue-green algae, also called cyanobacteria, into a see-through case made of plastic and aluminum. Then they placed it on a windowsill and connected it to the microprocessor, which they had programmed to run for cycles of 45 minutes followed by 15 minutes of rest.

"Powering a microprocessor by photosynthesis" (2022) https://pubs.rsc.org/en/content/articlelanding/2022/ee/d2ee0... :

> Abstract: Sustainable, affordable and decentralised sources of electrical energy are required to power the network of electronic devices known as the Internet of Things. Power consumption for a single Internet of Things device is modest, ranging from μW to mW, but the number of Internet of Things devices has already reached many billions and is expected to grow to one trillion by 2035, requiring a vast number of portable energy sources (e.g., a battery or an energy harvester). Batteries rely largely on expensive and unsustainable materials (e.g., rare earth elements) and their charge eventually runs out. Existing energy harvesters (e.g., solar, temperature, vibration) are longer lasting but may have adverse effects on the environment (e.g., hazardous materials are used in the production of photovoltaics). Here, we describe a bio-photovoltaic energy harvester system using photosynthetic microorganisms on an aluminium anode that can power an Arm Cortex M0+, a microprocessor widely used in Internet of Things applications. The proposed energy harvester has operated the Arm Cortex M0+ for over six months in a domestic environment under ambient light. It is comparable in size to an AA battery, and is built using common, durable, inexpensive and largely recyclable materials.

How many wh/kg/cm3?
Check out Bret Fishers courses and content - https://www.bretfisher.com/
The thing is Wasm already provides sandboxing, so you don't really need any additional KVM sandboxing, unless your hostile code threat model goes beyond even what typical cloud providers face. The Linux host for most wasm environments is only a single instance, often already running on bare metal, so there is no significant benefit to stripping it down to a unikernel.
Most are generic anons but in general it seems like there's a culture of keeping your account and not just creating throwaways for single posts. There are some advantages of that for the user, like being able to flag and downvote, not being filtered (posts from new accounts that sign up and post immediately have a higher chance of getting killed), and in some minds the credibility that comes from a long standing high karma account. And having people want to keep their accounts encourages better behavior because you don't want the account banned. I think all this does have an effect that makes the discussions better than they would be in forum with more ephemeral accounts.
I would expect Python to follow a similar language split. People were disappointed at how few breaking changes occurred in 2->3. If there was going to be a 3->4 migration, will be a large number of proposals to correct other deficiencies in the language.
Been trying to find one through Twitter but haven't had any luck, would super appreciate an invite!
I see degradation numbers between -0.1%/year and -1.1%/year.

This translates to about

* 0.999^25 = 97.5% to 0.989^25 = 75.8% output after 25 years.

* 0.999^50 = 95% to 0.989^50 = 57.5% output after 50 years.
If you were protesting a speeding ticket, I suspect the defense of “the guy next to me was going even faster” wouldn’t go very well.
I would be curious to see references that claims that dynamic and static typing are orthogonal with strongly typed systems, as “strongly type” is rather ambiguous and the only reason I used the term was because that was how Pascal was promoted back in the day (or at least how was taught to me)

From Wikipedia: In 1974, Liskov and S. Zilles defined a strongly-typed language as one in which "whenever an object is passed from a calling function to a called function, its type must be compatible with the type declared in the called function."

Note that the definition refers to type declaration, both being optional in Python and Common Lisp, so I wouldn’t use either as an example of strongly type languages.
Multiprocessing in Python isn't exactly like forking on other languages. There's no shared Python memory, it's just a new interpreter instance, and then you have to use sharing mechanisms (shared arrays/values, pipes, queues) to transfer data explicitly.
Your answer amounts to "Yes, both those things exist to the detriment of the user, but they were requested for the benefit of corporate app writers, so it's okay that the device the user supposedly owns obeys someone else."
That's the one indeed!
Maybe I am off base here, but big migration efforts feel like they would be significantly easier in a compiled language. Potentially not a fair comparison when the tooling can automatically push so much code without errors.
The gentle art of making patches easier to review
I unsubscribed from Lenovo at their Superfish debacle. Intercepting HTTPS communication with their own certificate? Now ain't that somethin'.

And the next up was when they had a special place in the laptop for their bundled bullshit, so that they persist EVEN IF you reinstall Windows on the lappy.

https://en.wikipedia.org/wiki/Lenovo#Security_and_privacy_in...
Is there a legal recourse? As in, breach of contract or whatever for being stranded?
I run Linux on it, it works but you need a non mainline kernel (github.com/steev x13s branches iirc) and a dtb in the EFI partition
You can always put more/stronger glass on top to protect them more.

But I would bet it is cheaper to buy insurance for such infrequent events.
Correct. Low-level, you start at APS1 and APS6 is the top of the ‘not an executive’ ladder.
> is not a thing anymore

Isn’t this very recent?
So no complete 100% ban on crypto then?

Seems like this petition to ban crypto has failed. Completely. [0]

[0] https://petition.parliament.uk/petitions/601629
I'm sure there are a lot of hacky extensions out there (particularly hiding in proprietary codebases), but letting the entire future of Python be held hostage to the poor SWE choices of third parties who almost certainly contribute nothing back is not a sustainable path.
This is the plague of hiring senior engineers, and one of the reasons we needed a new code test/challenge to get fewer bool flippers in our senior engineer hiring process. If you make them do something complicated/complex you get a lot more signal than if the test is bool flipping/a simple project from scratch
This sounds like one of those wonderfully insane ideas. Either the company has a need for a role or it doesn't. It's up to the leadership to figure it out. Pitting the workforce against themselves is avoiding the responsibility of making hard decisions while making a reality show out of the situation. It reminds me of this weird management nugget, I personally heard once, where the idea was to have multiple devs within the team solve the same problem and pick the best solution. It's as-if turning the office into a moshpit would suddenly optimally solve real world problems.
Deploying HackMD with GitHub Auth Using Podman, PostgreSQL, Nginx, and Certbot
> Begin End vs { } doesn't really bother me.

but they don't really mean the same thing - {} defines a local scope, begin...end doesn't.
A clear example of why it is a pro is the index of a for loop. Why would it be more maintainable to declare all for loop indexes at the beginning of a function? They are basically bound variables that are only meaningful within their loop, and they are usually not even worth commenting.
According to that site htmx is used on 7,188 "currently live" websites, which is 0.008% of jQuery's installed base, and around half the number who've starred it on GitHub. So yes, htmx is winning.
Oh, it was very very nice. I still miss it today sometimes. Here are a few highlights:

- Pressing F1 gave you reliably context sensitive help and the help content was really well put together.

- The debugger was great and was basically what we now know from Eclipse or IntelliJ and completely not like gdb. It had the same keyboard shortcuts for stepping as IntelliJ still has today.

- Computers in the 90s really did not support more than one display, but there was a weird trick that allowed you to connect one color and one monochrome monitor. Turbo Pascal fully supported that and could display the app on the color display while you saw the debugger on the monochrome one. This was before Windows and GUIs, everything was fullscreen. Without that there was no way to see debugger and app at the same time.

- The editor was so good that I preferred it over a word processor even for writing prose.
Back when Python 3 was initially concieved, the language just wasn’t that widely used, and mostly by enthusiasts. Some breakage wasn’t considered a big deal - it was expected users would easily update their code.

But during the time it took to design and deliver Python 3, the language exploded in popularity and reached a much wider audience and 3rd party libraries like numpy became crucial. So when Python 3 was ready it was a completely different ecosystem which was much harder to migrate. But I dont think the core team really relized that before it was too late.
It defines a new infix data constructor. So if `it` and `ct` are values of type `ITerm` and `CTerm` respectively, `it :@: ct` is a value of type `ITerm`. (It could have been written using a prefix operator like `ITerm`'s other data constructors.)
I'd say it's a pretty good analogy, the details aren't perfect, but it gets the point across.

https://www.youtube.com/watch?v=FfEX6GUxfZM

Here's an example of an arguably good builder who had one team install a in-wall tank toilet, then another team drills right through the tank causing a leak. The repair work essentially meant ripping out everything and doing it over, even though there should have been mitigations in place to prevent it and having the plans/documentation available to everyone.

While construction has more standardization, planning, and inspections, it still relies on implementation and is going to have failures.
It's a constructor defined with infix syntax. You can make constructors with custom infix names by starting the name with the : character. Alternatively, you could call that constructor App or something and have the same effect:

data ITerm
= Ann CTerm Type
| Bound Int
| Free Name
| App ITerm CTerm
deriving (Show, Eq)
No shot that kubernetes is 10-15x more complicated than cloud offerings.
Trying to simplifyy the pricing as much as possible is a step in the right direction.
However as we both know, it's extremely hard to dilute pricing into a simple equation like $x/months because sometimes there are multiple variable parts.
The complexity level of this pricing challenge is no different than the pricing enigmas for services by cloud providers.
What can help though is if you give pricing examples in simpler terms that your users can understand, similarly to how google does for their Firebase product here (https://firebase.google.com/docs/firestore/billing-example). This would definitely help.
Why doesn’t Europe just ban any Chinese vehicles which contain the metals gallium and germanium that China is refusing to export? Seems justifiable.
Well, I'm retired, so I don't do much emails or zoom anymore. I do serious stuff now, like Cyberpunk, MFS and Hogwarts. So I need serious hardware, updated often. And I'm constantly on the move too, so serious hardware needs to fit into my backpack. Sorry, snowflake millennial applebooks not up for the task.
>> You can value yourself all you want, if the market doesn't value your skills, your domain within your job sector, or your job sector in general, it's meaningless.

People who actually value themselves don't sit rotting away in a position like that.
It's the language itself; I currently build a parser for FP 3.2.2 and I need more look-ahead than LL(1) in different parts of the syntax. And it has features which require more than one pass.
Oh Pascal!, oh the nostalgia. I saved up the princely sum of $80-$100 back in TRS-80 Model III days to buy the Pascal 80 package, the New Classics version, which was basically a proto-IDE, and a pretty sweet one at the time. http://www.trs-80.org/pascal-80/
I recall it being a huge step up from the M-III BASIC dev environment and the games and utilities I wrote ran well enough in the 48K of RAM that was available. I wonder what became of the Pascal-80 codebase? Not that it would be any better than the modern tools available for retro hardware, probably far worse. Oh yeah, "Oh Pascal!" was the book from which I learned the language, and I doubt there were many other options, as this predated Pascal's commercial use by quite a few years.
Sequence in question starts at 4m40: https://www.youtube.com/watch?v=2qLuerYx2IA&t=280s
Data I’ve see doesn’t show output dropping continuously at a constant rate. Also some panels did show modest improvement for a few years.
> Be aware that BIPOC is often used as a euphemism to avoid saying Black and as
a virtue signal to seem inclusive without actually being inclusive.

Lucid observation.

> digital Blackface - Non-Black peoples’ use of images, emojis, and memes featuring Black people online

Damn, should I delete all the people of African descent in my meme folder? This... doesn't feel right.