janriemer

@janriemer@floss.social

Software Engineer with an incredible thirst for knowledge, who shares that knowledge with others, so that they can become their best selfs.

Interested in #Rust, #WebAssembly, #TypeScript, #OpenSource, #WebDev, #WebDesign and a lot of other interesting stuff.

Let's have some deep conversations about interesting topics. 🙂

I'm open-minded, but also hold strong opinions.

Dare to think for yourself.

Be kind.

Strive for excellence.

(moved from mastodon.technology - on Mastodon since Feb 2019)

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

janriemer, to random

Modular : Three Paths Forward - by Gregory Terzian ( 2024):

https://yewtu.be/watch?v=EA_1jxzR85M

(or YT: https://www.youtube.com/watch?v=EA_1jxzR85M)

janriemer, to random

Emergend Abilities!

janriemer, (edited ) to microsoft

So here's the thing with 's new feature:
It's not about Microsoft now suddenly spying on you. They can probably already do that if they want in a much easier way without you knowing.

So please be more realistic!

The far more severe concern in the age of work is when person A shares their screen and person B having Recall enabled, thereby "recalling" the other person's screen without person A knowing.

So it is a privacy concern between people!

janriemer, to ArtificialIntelligence

Zed Decoded: Rope & SumTree - by Zed Industries

https://zed.dev/blog/zed-decoded-rope-sumtree

Absolutely fascinating deep-dive into the core data structures the folks at Zed Industries use for their #Zed #editor!

"Currently there are over 20 uses of the SumTree in Zed. [...] The list of files in a project is a SumTree. The information returned by git blame is stored in a SumTree. Messages in the chat channel: SumTree. Diagnostics: SumTree."

Oh, how I love this! ✨

#DataStructure #Algorithm #Rust #RustLang

janriemer, to rust

Practical suggestions for building around borrow errors - by quinedot

https://quinedot.github.io/rust-learning/lifetime-intuition.html

If you're struggling with the borrow checker and lifetimes, this is an excellent resource!

In some past toot I've said that Rust lends itself very well to intuition-based learning...

https://floss.social/@janriemer/109415274612140073

...so this learning resource takes the same line (according to its title)! Nice!

janriemer, to rust

If you're not yet convinced of 's strengths, you should give this talk a watch:

RustConf 2023 - Rust in the Wild: A Factory Control System from Scratch:
https://farside.link/https://www.youtube.com/watch?v=TWTDPilQ8q0
(or YT: https://www.youtube.com/watch?v=TWTDPilQ8q0)

Absolutely amazing presentation! So much ! I love it! ❤️

janriemer, to rust

New release of 1.78 today, whoop! 🎉 :awesome:

Highlights (IMHO):

janriemer, to rust

Tasks are the wrong abstraction - by Yoshua

https://blog.yoshuawuyts.com/tasks-are-the-wrong-abstraction/

"If we are able to bake concurrent and parallel execution directly into [], we no longer have to represent the computation as a type. [...] we would be able to solve the scoped parallel async execution problem directly from the language."

"The success of the Monoio and Glommio runtimes are putting into question whether work-stealing executors are the right fit."

This is what should focus on! Thank you, Yosh!❤️

janriemer, to random
janriemer, (edited ) to Futurology

We, as a society, really need to stop thinking that

popular == good/best

because it is very often simply false.

janriemer, to ai

Don't be fooled by all the headlines that was the main cause of all the recent layoffs in the tech industry.

This is not the main cause!

The main cause is that starts to see the lies of and their mass manipulation of people!

1/2

janriemer, (edited ) to gamedev

Wow, this is awesome! :awesome:

CC0 Textures and 3D Models by sharetextures

https://www.sharetextures.com/

“All of our content is copyright-free. It means, you can use them anywhere you want which includes commercial projects too.”

janriemer, to rust

C++ will be taken over by #Rust.

What will be the Rust-equivalent for #JavaScript?

I mean #TypeScript is a very good first step, but it's basically the C++ for C.

So in short:
C => C++
JavaScript ≈> TypeScript
C++ => #RustLang
JavaScript => ???

I think it will be a looong way to go, but maybe, maybe we'll see more and more #WebAssembly in the #frontend, but not quite sure yet.

#WASM #ProgrammingLanguage #CPlusPlus #C

janriemer, to random

Doomscrolling...

...but in an actual ebook/pdf 📖

janriemer, to rust

Currently reading "Asynchronous Programming in Rust" by Carl Fredrik Samson 📕

https://www.packtpub.com/product/asynchronous-programming-in-rust/9781805128137

I'm 1/3 through and so far I have to say it is really well written! :ferris:

⭐ ⭐ ⭐ ⭐ ⭐

janriemer, to rust

Oh, look! 👀

There is a over at by Packt 🥰

https://www.humblebundle.com/books/rust-mastery-packt-books

It also contains the recently published "Asynchronous Programming in Rust" by Carl Fredrik Samson:

https://www.packtpub.com/product/asynchronous-programming-in-rust/9781805128137

janriemer, to rust

When you read a toot about :

"Have a compiling topic to share...?",

but it actually says

"Have a compelling topic to share...?",

you know that you have fully oxidized at this point. :ferris:

janriemer, (edited ) to art

This is brilliant!

The Art of Being Precise | Frieder Nake in Conversation

https://yewtu.be/watch?v=Z_pOiHX6HYE
(or YT: https://www.youtube.com/watch?v=Z_pOiHX6HYE)

Frieder Nake is a german mathematician, computer scientist, and pioneer of computer #art.

Such a wise person!

https://en.wikipedia.org/wiki/Frieder_Nake

Please see the next two posts for , which I find, one of the best quotes in this conversation...

1/3

#Philosophy #Interview #Wisdom #AI #GenerativeAI #ArtificialIntelligence #FriederNake #Life

janriemer, to random

xzbot - by Anthony Weems

https://github.com/amlweems/xzbot

From their README:

Exploration of the xz backdoor (CVE-2024-3094). Includes the following:

  • honeypot: fake vulnerable server to detect exploit attempts
  • ed448 patch: patch liblzma.so to use our own ED448 public key
  • backdoor format: format of the payload
  • backdoor demo: cli to trigger the RCE assuming knowledge of the ED448 private key

janriemer, to rust

Sometimes, when programming in , I'm wondering whether there is a little Ferris in my computer whispering to all those 0's and 1's to behave correctly. :ferris:

Otherwise I can't describe the following experience:

  1. Rewrite parts of a programming language from to (the parts that are most interleaved with each other => indirect recursion over multiple non-terminals!).
  2. Run all affected tests
  3. See all of them pass on the first try!

1/2

Terminal showing 7 tests pass when parsing ternary expressions. The exact output is: running 7 tests test parsers::ternary_expression::tests::ternary_expr_not_parenthesized_comparison_op ... ok test parsers::ternary_expression::tests::ternary_expr_deep_else ... ok test parsers::ternary_expression::tests::ternary_expr_deep_ifs ... ok test parsers::ternary_expression::tests::ternary_expr_simple ... ok test parsers::ternary_expression::tests::ternary_expr_not_parenthesized_not_variable ... ok test parsers::ternary_expression::tests::ternary_expr_parenthesized ... ok test parsers::ternary_expression::tests::ternary_expr_test_expr_is_parenthesized_ternary_expr ... ok test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 198 filtered out; finished in 3.92s
Terminal showing 8 tests pass when parsing eval_name. The exact output is: running 8 tests test parsers::eval_name::tests::eval_name_qualifier ... ok test parsers::eval_name::tests::eval_name_looks_like_new_but_is_normal_identifier ... ok test parsers::eval_name::tests::eval_name_new ... ok test parsers::eval_name::tests::eval_name_qualifier_dblcolon ... ok test parsers::eval_name::tests::eval_name_std_id ... ok test parsers::eval_name::tests::eval_name_std_id_dblcolon_std_id ... ok test parsers::eval_name::tests::eval_name_super ... ok test parsers::eval_name::tests::eval_name_super_case_insensitive ... ok test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 197 filtered out; finished in 0.43s
Terminal showing 10 tests pass when parsing eval expressions. The exact output is: running 10 tests test parsers::eval::tests::eval_function_args_non ... ok test parsers::eval::tests::eval_new_method_args_simple ... ok test parsers::eval::tests::eval_function_args_simple ... ok test parsers::eval::tests::eval_qualifier_method_chained ... ok test parsers::eval::tests::eval_function_args_nested ... ok test parsers::eval::tests::eval_qualifier_method_args_simple ... ok test parsers::eval::tests::eval_qualifier_with_table_map_method ... ok test parsers::eval::tests::eval_static_method_args_simple ... ok test parsers::eval::tests::eval_qualifier_method_chained_with_args ... ok test parsers::eval::tests::eval_function_args_deeply_nested ... ok test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 195 filtered out; finished in 18.55s

janriemer, to github

Excellent video by Dreams of Code ✨

Why I'm no longer using Copilot - by Dreams of Code

Invidious:
https://farside.link/https://www.youtube.com/watch?v=Wap2tkgaT1Q

(or YT: https://www.youtube.com/watch?v=Wap2tkgaT1Q)

janriemer, to rust

for

https://rust-for-linux.com/coccinelle-for-rust

"Coccinelle is a tool for automatic program matching and transformation that was originally developed for making large scale changes to the Linux kernel source (ie, C code)."

- GritQL is a language for searching, , and modifying code.

https://docs.grit.io/

- A tool for code structural search, lint and rewriting. Written in :ferris:

https://ast-grep.github.io/

janriemer, to rust

Some people: "Rust's syntax is so confusing to me." 🥴

The project: "Let's match that confusion with even more confusing syntax!" :awesome:

🤦

/sarcasm

janriemer, to rust

Many people say that #Rust is very hard to #prototype with or to #refactor. This couldn't be further from the truth! It is the exact opposite!

Let me share with you one of the most profound experiences I had with #RustLang on a casual sunday - a thread 🧵

I'm currently rewriting my #transpiler from #nom to #chumsky and until now everything has turned out great so far, until I've hit the following road block:
Implementing parsers by using #parser functions that have indirect #recursion.

1/11

janriemer, to rust

JSON Patch

https://jsonpatch.com/

"JSON Patch is a format for describing changes to a document. It can be used to avoid sending a whole document when only a part has changed. When used in combination with the PATCH method, it allows partial updates for HTTP in a standards compliant way."

JSON Patch crate:

https://lib.rs/crates/json-patch

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