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, (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

notgull, to random
@notgull@hachyderm.io avatar

You’ve got to be able to admit when you’re wrong

https://github.com/smol-rs/event-listener/pull/130

janriemer,

@notgull Thank you for maintaining smol!❤️

orhun, to random
@orhun@fosstodon.org avatar

Some of y'all ask how I find cool terminal tools 🤔

🌐 Here is one of my sources: https://terminaltrove.com

🖥️ The $HOME of all things in the terminal.

💖 Also, big shout-out to @terminaltrove for sponsoring me on GitHub!

#terminal #tool #commandline #cli #developertools

janriemer,

@orhun @terminaltrove This looks awesome! Thanks!

Maybe you already know the following list by Wesley Moore, but I think it's also really good (only tools implemented in Rust, though):

One Hundred Rust Binaries (Part 1):
https://www.wezm.net/v2/posts/2020/100-rust-binaries/

Part 2:
https://www.wezm.net/v2/posts/2020/100-rust-binaries/page2/

janriemer, to random

My timeline is a happy place full of creativity, inspiration and interesting things to look into.

I love it!🥰

Thank you Fedi! :fediverse:

jgayfer, to gamedev
@jgayfer@fosstodon.org avatar

I’ve been dipping my toes into the world of this last week, giving a shot (because you know, ).

My goal is to recreate Pac-Man, which has proved to be trickier than excepted.

Making games is hard (at least so far), but it’s been a fun to think about code in a way I haven’t before.

janriemer,

@jgayfer This sounds awesome!

Bevy is probably the most flexible and modular system I've ever come across. It is so well designed! ✨

If someone asked me: "How to build modular software?", I'd refer them to Bevy.

It was how I learned about ECS for the first time. The ECS pattern is mind-blowing to me and such a natural fit for Rust! 🤯

Have fun on your Bevy journey! :awesome: Don't be discouraged, if something doesn't go right the first time. This is how we learn (I'm Bevy newbie, too). 🙂

khalidabuhakmeh, to dotnet
@khalidabuhakmeh@mastodon.social avatar

The community might hang me for this demo.

janriemer,

@nosherwan @khalidabuhakmeh

Looks like the Pyramid of Doom, the 8th Wonder of the World:

https://en.wikipedia.org/wiki/Pyramid_of_doom_(programming)

chrisbiscardi, to rust
@chrisbiscardi@hachyderm.io avatar

meteor explosion particles using bevy_hanabi

asteroids particles

janriemer,

@chrisbiscardi This looks really cool!

That spinning at the end, though... 😄

You should make a shortcut for it: Ctrl + P

The P stands for "Panic".

janriemer, to random

Trust your intuition! It often only whispers and never shouts, but when you listen carefully, you can hear it very clearly.✨

janriemer, to Blog
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 random

Please remember:
Syntax sugar tastes good, but too much of it is bad for your teeth and health.

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,

I was wondering:

  • Have I really saved my files? Yup! ✅
  • Have I really used the new chumsky impl in the tests? Yup! ✅
  • Am I dreaming? 💭 Nope!

Companies, if you need reasons to adopt Rust: this is why you should! 👆 🦀

Having said that: after the refactor, I'm getting exponential parsing time in some scenarios (again! I've had them with nom as well. 😪 ). There is still some left recursion in my grammar, so that's probably why and I had to change one spot where parsing differs.

2/2

janriemer,

Nice, I've solved the exponential parsing times! 🚀

The solution was to not call the parser returning functions directly, but instead pass in callbacks (by using recurse - chumsky doesn't support this natively, I've patched it).

How did I come up with the solution? I don't know... ¯_(ツ)_/¯ Seriously, call it intuition.✨

3/2 (index out of bounds, oopsi)

Shini92, to ArtificialIntelligence
@Shini92@mas.to avatar

For my teacher I once created an application to .

Over the last days I added a new feature to improve the visualization and also completely rewrote it to and

https://shinigami92.github.io/visualised-sorting-algorithm/

janriemer,

@Shini92 Wow, this looks absolutely magical! ✨ 🤩

Just beautiful! 🎨

And all those configurable knobs... :awesome:

baldur, to random
@baldur@toot.cafe avatar

”the biggest threat facing your team, whether you’re a game developer or a tech founder or a CEO, is not what you think | by Doc Burford | Mar, 2024 | Medium”

This essay is well worth your time. https://docseuss.medium.com/the-biggest-threat-facing-your-team-whether-youre-a-game-developer-or-a-tech-founder-or-a-ceo-is-8cd1ad359508

janriemer,

@calisti @baldur

Beautifully accurate summary, Calisti, thank you!❤️ ✨

I think the article could have been written much more concise to get it's point across, but nevertheless it has been an interesting read.

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 CSharp

Implicit index access in C# 13

https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-13#implicit-index-access

Wait...what!? What is this even doing and what is it for?

Urgh... I think I have to stop looking at new language features for some time...

tagesschau, to random German
@tagesschau@ard.social avatar

Hochgeschwindigkeits-U-Bahn soll Geburtenrate in Südkorea steigern

Südkorea hat eine der niedrigsten Geburtenraten der Welt. Nun will die Regierung mit einer neuen U-Bahn für mehr Kinder sorgen. Die 180 km/h schnellen Züge sollen Arbeitswege deutlich verkürzen - und Paaren mehr Zeit für Zweisamkeit ermöglichen.

➡️ https://www.tagesschau.de/ausland/asien/suedkorea-ubahn-geburtenrate-100.html?at_medium=mastodon&at_campaign=tagesschau.de

janriemer,

@tagesschau Hm...der erste April ist eigentlich erst in 3 Tagen... 🤔

simlay, to random
@simlay@hachyderm.io avatar

"With careful optimization, only 14 gajillion messages are necessary." - The Saddest Moment
https://scholar.harvard.edu/files/mickens/files/thesaddestmoment.pdf

janriemer,

@simlay 😄 This is so good!

"JAMES: I announce my desire to go to lunch.

BRYAN: I verify that I heard that you want to go to lunch.

RICH: I also verify that I heard that you want to go to lunch.

CHRIS: YOU DO NOT WANT TO GO TO LUNCH.

JAMES: OH NO. LET ME TELL YOU AGAIN THAT I WANT
TO GO TO LUNCH.

CHRIS: YOU DO NOT WANT TO GO TO LUNCH.

😅 🤣

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,

@smallcircles Oh nice, thank you for the link! 🙂

In the comments there is also an ast-grep maintainer, stating the differences between Grit and ast-grep. Nice! 👍

https://news.ycombinator.com/item?id=39772612

I still have to try out these tools.

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,

Seems like there has already been a bug in the compiler for postfix match 4 days ago.🙄

https://github.com/rust-lang/rust/issues/123064

This is the consequence of adding new features!

Fortunately, it has been fixed very quickly (1 day later!). Kudos to the Rust maintainers for reacting so quickly!

https://github.com/rust-lang/rust/pull/123096

janriemer,

Frequently requested changes | Fundamental changes to 's syntax

https://lang-team.rust-lang.org/frequently-requested-changes.html#fundamental-changes-to-rust-syntax

"[...]These also include proposals to add "alternative" syntaxes, in addition to those that replace the existing syntax."

"[...]The established Rust community with knowledge of existing Rust has a great deal of value, and to be considered, a syntax change proposal would have to be not just better, but so wildly better as to overcome the massive downside of switching."

janriemer,

@mo8it

Yes, but it shows that adding features has a cost, so it should better add substantial value to the language.

"Perfection is reached, not if there is nothing more to add...but when there is nothing more to remove."

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

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