Tobias Pfeiffer
Likes people. Teamplayer, Open Source Enthusiast, Software Developer, Benchmarker, TDDer, Speaker. Elixir, Ruby, JavaScript. Loves green.
- [Not loaded yet]
- sadly very true... I feel similar about veggie food. Sometimes you get the same thing, just in place of a high quality medium rare piece of beef you get a slab of tofu. Same price pls!
- [Not loaded yet]
-
View full thread
- Dang didn't have your blue sky, fixed now!
- [Not loaded yet]
- LOOK WHO IS SPOTTED 💚💚💚💚💚💚💚💚💚 HELLO VITTORIA!
- [Not loaded yet]
- [Not loaded yet]
- 💯
- If we went bouldering at a London climbing as a Gleam social would you be interested? Super chill vibes! No competition. I'm a total beginner myself. :)
- Another opportunity for @pablocostass.bsky.social to drag me climbing and then 3rd time climbing in a third country.... ;)
- (no plans to be in London though, sorry)
- [Not loaded yet]
- [Not loaded yet]
- I'm sure @alchemyconf.com is probably happy to help :) I didn't use the discord much (don't usually have discord on my phone), there was a WhatsApp group for speakers though which was really helpful. That said, if I hadn't had that I'd have probably gotten discord on the phone :)
- [Not loaded yet]
- Nice congrats!
- [Not loaded yet]
- [Not loaded yet]
- nono rlang sounds exactly the same, I think you're onto something! rlang lixir I dig it!
- Own OSS responsibilities: * tackle some benchee issues * evaluate a new feature for benchee to maybe make it into an elixirconf talk * prepare a keynote about benchee due in less than a month Thought: "...or I _could_ help the lovely @gleam.run community and my beloved hexpm in one fell swoop..."
- Any Elixir Phoenix folks up for adding this feature to the Hex API? It would be super useful for the Gleam team! github.com/hexpm/hexpm/...
- ... and by doing that learn something from the hexpm code base and get a code review from excellent chaps!
- I finally want to get a logo for benchee - it looks so sad without a logo compared to other popular libraries. Any great ideas how to go about this? What I basically would love: * logo for the top of the README * icon for the gthug org #Elixir #OpenSource #Logo
- [Not loaded yet]
- Ahaha thank you, I was so proud of myself but no one ever brought it up! 😆💚
- "How hard can statistics be?" "In their paper from 1996 they discussed 9 different methods to estimate percentiles, 3 were deemed acceptable" Almost forgot that I went into that some years back and now I'm back 😅
- yes yes... github not gthug I can't type. githug sounds like a great product though!
- I know I could AI generate something, but I'd rather not right now. As for logo there's probably 2 ways: The most idiomatic/easy to grasp is a stop watch or something, as measuring time is the most popular use case. With a nice elixir-ish purple.
- The actual name inspiration though came from the warcraft 3 unit Banshee which also happens to be purple: classic.battle.net/war3/undead/... So, having a reference in there would be fun to me but I'm not sure if anyone would get it/like it 😁
- [Not loaded yet]
-
View full threadi.e. from my rudimentary understanding of the ask you could run benchee in loop: for input <- inputs do Benchee.run(jobs, inputs: input, save: input_name) end Benchee.report(load: "some-pattern*.benchee") ---> spit it out as csv to then make your 3D scatter plot Hope that helps? 😅
- More hopefully throughout the (long-) weekend (I planned to work on benchee anyhow, got a keynote to prepare). If you need something sooner shoot me a signal 👀 Also, if you opened an issue at benchee, even rudimentary, we can make sure I don't forget 😁
- [Not loaded yet]
- 😬 First: Amazing! Second: Probably too complex to answer inbetween work 🤣 Third: I suppose you can work around this (for now) by looping over benchee by using save and load: github.com/bencheeorg/b...
- To conclude the citizen journalism: my friends got electricity back during the night. Often later than reported, but its back 🙌
- I wrote about something very close to my heart: how to make ALL the tests async in @elixir-lang.org. Enjoy! 🏎️ andrealeopardi.com/posts/async-...
-
View full threadAbsolutely! Although some times when I did that I wished I had done actual mocking (I know a module that returned canned respones based on inputs, it got very complex). But yeah, benchee also DIs modules at test run time and those then basically send messages about what they'd do to the process :)
- I think the way I see it, if I already have mocking setup I can use it - if I don't and it's not much work another approach may work well. Or if the other approach has some advantages (i.e. implementing a stub mailbox as you said has other advantages as well)
- All my friends from Spain/Portugal be like: "Tobi, random question - do you have electricity?" There's a massive power outage across Spain/Portugal and parts of France allegedly.
- As the explicit wish from a single person, I'd like everyone to know that even my friends from the US are asking me about this 😉
- [Not loaded yet]
- @chastell.net and you would get along splendidly!
- I mean, to me that's practically a different implementation of the same concept and both are valid :) I do think that a unit test for another part doesn't need to retest the email sending functionality - just that it was invoked if that is crucial/important to that module.
- As in, test your own functionality and collaborations except for when in unit tests. There's a great chapter in Practical Object Oriented Design in Ruby by @sandimetz.bsky.social that has shaped my view on this quite significantly.
- (I still do have electricity over here)
- [Not loaded yet]
- Depends on the use case right? I often use expect, esp. if it's something with a side effect. I.e. sending an email. Also sometimes the point of mocking for me is not to re-test something that's been unit tested in another module so I'm like "I make sure you call this, this is already tested"
- [Not loaded yet]
- It's a me, I speak zeee Jermän
- OMG, I love this Credo check so much. github.com/cheerfulstoi...
- ♻️ Reduce, Reuse… Refactor! Brian Underwood walks through how to write cleaner Elixir code by rethinking Enum.reduce and using a custom Credo check to suggest simpler alternatives. 🔗 bit.ly/ReduceReuseR...
- as someone who loves to eliminate uses of Enum.reduce and is successful 95% of the time, I love this :D
- #elixir community! I’m trying to write a blog post and need some sources/data. Could you please run "mix test" on one or more of your @elixir-lang.org codebases and report results? I’m looking for: 1. # of tests 2. # of async tests 3. Total time sync 4. Total time async
- Benchee: 1. 329 2. 302 3. 2.8s sync 4. 7.8s async Finished in 10.6 seconds (7.8s async, 2.8s sync) 138 doctests, 334 tests, 0 failures, 4 excluded, 1 skipped
- phoenix db heavy application that the previous maintainer didn't care about async tests at all (you can turn it on in most tests and it does just work) 1. 372 2. 53 3. 55.5s sync 4. 1.7s async Finished in 57.3 seconds (1.7s async, 55.5s sync) 5 doctests, 378 tests, 0 failures, 5 skipped
- [Not loaded yet]
- Amazing, thanks, didn't know you could filter by async but makes sense! Will post numbers later!
- [Not loaded yet]
- wait what's a good way to get the number of tests that are async? I could grep for test files with `async: true` but actual tests? 🤔 I think I'm missing something easy? 👀 @whatyouhi.de
- I cannot stress how impactful the ideas in this talk have been for my productivity. Really do check this out.
- My talk on snapshot testing is out! It’s my absolute favourite way of writing tests, it was great fun talking about it at @codebeam.bsky.social youtu.be/DpakV96jeRk?...
- One day I'll learn to type correctly.
- Wait I thought you knew all about types? (I'll show myself out)
- I really love about the @elixir-lang.org community how appreciated documentation contributions are (I think having documentation be a first class language citizen helps here) and I'm continuously impressed by how fast PRs get reviewed often times! Thanks! github.com/elixir-ecto/...
- More dark mode, nice! #ElixirLang
- Released benchee 1.4.0! 🚀🚀🚀 Nothing too big, pre_check: :all_same is great when benchmarking alternative implementations of deterministic functions! Otherwise, some fixes for compatibility with OTP 28 and Windows 11 (or in general more resilient system gathering). github.com/bencheeorg/b...
- [Not loaded yet]
- [Not loaded yet]
- The pressure! ❤️💚💛💜💙❤️
- I see, no more bunny pics for you 😉
- Honestly, the rational of NimblePool is just a joy to read. I really wish more libraries would lay out their reason for existence, when to use them and when to reach for an alternative as clearly! Kudos @elixir-lang.org @josevalim.bsky.social @dashbit.bsky.social hexdocs.pm/nimble_pool/...
- [Not loaded yet]
- 💯 fascinating!
- [Not loaded yet]
- Get well, drink a lot, sleep a lot, inhale, take some medicine to make the mucus flow better, take some nasal spray
- TIL on erlang OTP 28 regexes in module attributes will no longer work, @elixir-lang.org is working around it but will emit warnings when it's done github.com/elixir-lang/... Shoutout to Thijs for fixing it for benchee and alerting me to this! github.com/bencheeorg/b...
- [Not loaded yet]
-
View full threadit annoying with 4 pictures per post limit :D
- I'd love to post the group shot but I'm not sure if everyone is cool with it!
- [Not loaded yet]
- One the Todo! 😁 Truth be told, I'll probably come even if I don't make it as a speaker. I'm yearning for community conferences, so I both wanna go and wanna support and I love Sweden. So... hard to pass :)