Posts

This profile is from a federated server and may be incomplete. Browse more on the original instance.

chrisg, to microsoft
@chrisg@fosstodon.org avatar

to "invest" $3.2bn in in , "drawing on the country's green energy"

When you read that "AI consumes as much energy as a small country", that country is now Sweden.

And this basically means the country's public power infrastructure is being sold out to private interests.

Shit like this makes me livid.

https://fortune.com/europe/2024/06/03/microsoft-invest-3-2-billion-swedish-ai/

numeredevs,
@numeredevs@fosstodon.org avatar

@chrisg I'm talking especially about the users, but yeah, money is a reasonable argument.

metin,
@metin@graphics.social avatar

@chrisg This might be of interest to @jerry1970 and @gmc

chrisg, to linux
@chrisg@fosstodon.org avatar

As the sole developer of , I need to choose if I'll support platforms without support or drop uring support altogether.

The small experiment with CSV import showed me that I can't maintain two I/O stacks.

Plus, I started Glowdust in part because I wanted to play around with uring.

Hmm. Let's be honest - no one but me cares about Glowdust. And I only run .

And that's how, in the space of a single toot, I decided to do only io_uring.

Thank you for following along.

slink,
@slink@fosstodon.org avatar

@chrisg i wrote a thin layer on top of io_uring with its paradigm and then implemented that also for solaris aio and threads. was not too hard in my case https://gitlab.com/uplex/varnish/slash/-/blob/master/src/fellow_io_backend.h?ref_type=heads

chrisg, to random
@chrisg@fosstodon.org avatar

Microsoft's Brad Smith: In 2020, we unveiled what we called our carbon moonshot. That was before the explosion in artificial intelligence,

Translation: "In 2020 we unveiled what we thought was a greenwashing boost to our bottom line. That was before we saw the boost from AI."

As soon as we realize that everything a company says is a lie, it becomes much easier to see through.

chrisg, to random
@chrisg@fosstodon.org avatar

Remember kids - you can work yourself sick, but you cannot work yourself rich.

chrisg, to random
@chrisg@fosstodon.org avatar

Wait, JDBC does not have a Transaction class?

You can only do commit()/rollback() on the Connection object?

I guess it's really been a while since I last used a DBMS from Java.

chrisg, to random
@chrisg@fosstodon.org avatar

As a DBMS implementor, I have always assumed that a DB transaction should not be bound to a server side construct (a thread or a client connection, but instead should be an identifier that is transparent and transferrable between clients (subject to auth, of course).

So client thread A can start a tx, get a txId, that can be moved to client thread B which can use it to continue the tx.

Is that something useful for users of DBMSs? It's not hard to do, and I don't see many systems doing it.

chrisg,
@chrisg@fosstodon.org avatar
mykhaylo,
@mykhaylo@fosstodon.org avatar

@chrisg cool. I’m a big fan of Datalog though, and would rather get the data out asap, and then play with it in my language. You probably thought of cool ways to debug the db-based functions though. Anyway, I’m not smart enough to have an opinion about dbms systems :)

chrisg, to rust
@chrisg@fosstodon.org avatar

I spent the whole day chasing a weird benchmark result - I would get twice the performance changing things that seemed unrelated.

It turns out that I hit upon a case where code alignment costs half the performance

(AMD Ryzen 9 3900, Rust 1.79 nightly 04-02)

This code

vector[index];  
vector[0..index].iter().any(|x| *x == needle)  

Is twice as fast (according to criterion.rs) as omitting the first line. You'll note the first line does nothing.

#rust #rustlang

kornel,
@kornel@mastodon.social avatar

@chrisg In this specific example there's no difference:

https://rust.godbolt.org/z/aP9bK9GE8

However, [index] in Rust is a different operation than in C or C++. It does perform an operation: checks whether the index is in bounds.

If you have a loop with [i] later, it won't need to repeat bounds checking if the earlier code has already proven it's always in bounds.

if index >= vec.len() { return }

would have worked too, without a potential panic.

chrisg, to random
@chrisg@fosstodon.org avatar

StabilityAI looks like is going under, and if the numbers in this article are any indication, it gives a good idea of how massively (and therefore unsustainably) "AI" is subsidised

https://www.theregister.com/2024/04/03/stability_ai_bills/

chrisg, to rust
@chrisg@fosstodon.org avatar

Wrote a quick and dirty utility that extracts all Glowdust snippets from the markdown files of the documentation and runs them.

It runs as an integration test, so if I make a mistake in the docs, normal cargo test will let me know.

Also supports tags to skip examples that don't compile on purpose.

Helped me catch a few issues immediately, and I now know that my documentation is up to data with the actual implementation.

For the curious:

https://codeberg.org/glowdust/glowdust/src/branch/master/tests/book/check_book.rs

chrisg, to Redis
@chrisg@fosstodon.org avatar

There goes Redis:

https://redis.com/blog/redis-adopts-dual-source-available-licensing/

This is such a mess, it is hard not to feel angry.

Briefly - the cloud providers are definitely a huge issue. They are the vampires of the software community and the root cause of many of our problems.

But redis didn't go against them. They went against the community that made them grow. Same like Mongo, Neo4j.

And as @jenniferplusplus said - don't sign CLAs. They are a big part that let moves like these happen.

jer,
@jer@hachyderm.io avatar

@chrisg @dragnucs @jenniferplusplus I should stop posting :D

I haven't used Redis in production in like 6 years, so I'm not the best person to say anything about alternatives.

dragnucs,
@dragnucs@touha.me avatar
chrisg, to random
@chrisg@fosstodon.org avatar

@drewdevault Thank you for creating this community.

Signed up and started posting,

https://discourse.writefreesoftware.org/t/do-we-need-product-managers/84

PS: Hey @prma 👋

chrisg, to random
@chrisg@fosstodon.org avatar

"The most melons chopped in half on somebody's stomach (with a samurai sword while they lay on a bed of nails)"

is a Guinness record I didn't know existed and an amazing sentence that just keeps on giving.

chrisg, to rust
@chrisg@fosstodon.org avatar

Sweet, just added native functions to so now I can write arbitrary functions in and still call them as if they were defined in the function store.

Small but welcome quality of life improvement. Plus I learned about phf crate and static maps, not a bad day.

chrisg, to fediverse
@chrisg@fosstodon.org avatar

There, I wasted my morning successfully, but at least I have to show something for it

chrisg, to random
@chrisg@fosstodon.org avatar

New features dropped today:

  1. Return is finally a statement, which means you can have it outside of blocks in queries

  2. Statement blocks, so you can have updates from your queries and still have them make sense, which is always good

  3. An experimental !! operator, that makes an atom out of a statement block, which is weird but sort of useful (this will probably go away soon)

Enjoy: https://codeberg.org/glowdust/glowdust/src/branch/master/README.md#statement-blocks-and-the-operator-temporary_feature

chrisg,
@chrisg@fosstodon.org avatar
alper,
@alper@rls.social avatar

@chrisg Ah, that's what I mean. The bold text made me stop reading.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • mdbf
  • ngwrru68w68
  • modclub
  • magazineikmin
  • thenastyranch
  • rosin
  • khanakhh
  • InstantRegret
  • Youngstown
  • slotface
  • Durango
  • kavyap
  • DreamBathrooms
  • JUstTest
  • normalnudes
  • osvaldo12
  • tester
  • GTA5RPClips
  • cubers
  • everett
  • tacticalgear
  • ethstaker
  • provamag3
  • anitta
  • Leos
  • cisconetworking
  • lostlight
  • All magazines