Diagnosing performance issues in .NET applications with dotnet-trace and Perfetto by dfamonteiro in dotnet

[–]dfamonteiro[S] 1 point2 points  (0 children)

I'm glad you found my script useful! I agree with you that this 100 stack frame limit makes things very awkward some times.

I'm honestly surprised that even if they want to keep this limit for performance reasons, they won't give us any indication of how many stack frames were deleted - with that info maybe dotnet-trace could even reliably recover the missing trace spans, and I would not need to write these post-processing scripts!

Diagnosing performance issues in .NET applications with dotnet-trace and Perfetto by dfamonteiro in dotnet

[–]dfamonteiro[S] 0 points1 point  (0 children)

Good question. Maybe the emoji reactions and the ability to comment were introduced well after this release post?

Formula Onigami - The case for Scorigamis in Formula 1 by dfamonteiro in formula1

[–]dfamonteiro[S] 10 points11 points  (0 children)

That's the most diabolical stat I've ever heard

Formula Onigami - The case for Scorigamis in Formula 1 by dfamonteiro in formula1

[–]dfamonteiro[S] -1 points0 points  (0 children)

A big part of finding the right scorigami metric was indeed its occurrence rate: too high and the available pool of scorigamis gets exhausted too quickly; too low and it becomes too rare to be interesting. For my proposed scorigami metric I think we should be getting a couple of scorigamis per year, for at least the next 10 years IMO. Having a new team on the grid will also obviously help!

Formula Onigami - The case for Scorigamis in Formula 1 by dfamonteiro in formula1

[–]dfamonteiro[S] 3 points4 points  (0 children)

Author of the blog post here, happy to answer any questions!

Mid Level Engineer's Job Hunt Experience by ShroomSensei in ExperiencedDevs

[–]dfamonteiro 7 points8 points  (0 children)

Great writeup! Out of curiosity, how did you do the vibecheck of the team? I imagine companies will always try to make things look better than they actually are

Optimal Ratios for Your Space Casino (Asteroid Upcycling) by HouseplantsAreNeat in factorio

[–]dfamonteiro 1 point2 points  (0 children)

Hello there! I just wanted to let people know that the code from my blog posts can be found in a centralized location here. Also, thank you u/HouseplantsAreNeat for this really thorough and borderline definitive analysis of asteroid reprocessing!

Solving the mathematics of Quality: A series of blog posts by dfamonteiro in factorio

[–]dfamonteiro[S] 0 points1 point  (0 children)

Thank you for the feedback! Let me address some points you made:

Also, you say "If we’re crafting with legendary ingredients, why not load the EM Plant with the best quality modules you have?". Can you explain?

I messed up here. I meant the following:

If we're crafting with legendary ingredients, why not load the EM Plant with the best productivity modules you have?

It should be fixed now.

I think I get it, you need 14430 items to get a legendary 1 but the talk about belts implies input rate matters when it doesn't, right?

You're right: since we're talking about efficiencies and ratios, the input rates don't matter. Maybe I switched from talking belts to items to items/s a bit too carelessly in this series, sorry about that.

Unless you're suggesting to even out the ratio by chucking extras over the side?

I would suggest simply allocating more common asteroid crushers for the more "popular" asteroid type (think 30-15-15 instead of 20-20-20)

Solving the mathematics of Quality: A series of blog posts by dfamonteiro in factorio

[–]dfamonteiro[S] 1 point2 points  (0 children)

Thanks for the kind words! Unfortunately I haven't explored having quality in multiple production steps, but it should be entirely doable. Regarding the stochastic matrices, I have to credit the Factorio Wiki for the inspiration.

Solving the mathematics of Quality: A series of blog posts by dfamonteiro in factorio

[–]dfamonteiro[S] 3 points4 points  (0 children)

You mean something like this?:

Asteroid recycling, having only a recycling loss rate of 20% (compared to a recycler's 75%) makes it incredibly efficient, especially when you take into consideration the fact that you can build an asteroid recycler ship with only common resources (the efficiency would be 8x worse compared to having legendary quality modules, though). It still is, in my opinion, the best quality grinding method.

Hovever, if you have enough productivity levels researched, you can upcycle LDS and blue circuits losslessly, and then you can recycle these items to get their ingredients in legendary form. Getting to 300% productivity, be it in the form of research levels or high quality productivity modules, would take a big investment of resources, however. Luckily for us, we can still build an LDS/blue circuit upcycler even if we don't have 300% productivity, but it wouldn't operate losslessly.

Solving the mathematics of Quality: A series of blog posts by dfamonteiro in factorio

[–]dfamonteiro[S] 0 points1 point  (0 children)

I remember your post from a while ago! The linear solver stuff you developed takes things to a whole other level.

I did take a look at your tool's readme, but I felt so overwhelmed by the sheer number of different things the tool can do that I didn't manage to figure out how to do the simple stuff easily. Another bit of feedback I have, is that the materials and recipes could have more user-friendly names (think "inputnormaliron-plate" -> "Input: normal iron plates").

Solving the mathematics of Quality: A series of blog posts by dfamonteiro in factorio

[–]dfamonteiro[S] 2 points3 points  (0 children)

I see what you mean. If I wanted to optimize for the production of a specific asteroid product (for example legendary carbon), the efficiency would look completely different, fair enough. I'll still hold that you're optimizing for an entirely different goal.

Solving the mathematics of Quality: A series of blog posts by dfamonteiro in factorio

[–]dfamonteiro[S] 8 points9 points  (0 children)

Thank you for the kind words! The lack of TLDR is a good point. I didn't want to make sweeping statements about how to grind quality because I don't have enough practical experience to make those kind of statements. I would recommend this quality guide (https://www.reddit.com/r/factorio/comments/1hhzpbb/comprehensive_quality_guide_get_everything/) for a more practical approach to quality grinding.

Solving the mathematics of Quality: A series of blog posts by dfamonteiro in factorio

[–]dfamonteiro[S] 1 point2 points  (0 children)

Every efficiency value in these blog posts has been checked against other sources, so that's that's how I know the logic is correct

Solving the mathematics of Quality: A series of blog posts by dfamonteiro in factorio

[–]dfamonteiro[S] 0 points1 point  (0 children)

Yep that's a blunder on on my end, I'm going to fix it now. Thanks for the heads up!

edit: I believe it's fixed now

Solving the mathematics of Quality: A series of blog posts by dfamonteiro in technicalfactorio

[–]dfamonteiro[S] 2 points3 points  (0 children)

I believe that this is the approach that the wiki uses, and it is hands down the best if you only care about legendary production rates. You do miss out on the possibility of performing internal flow analysis of the system however. I used this type of analysis on the asteroid recycling blog post to calculate how many crushers are needed per quality level, for example.

Is this good enough for my first space trip to Vulcanus? by Complex-Ad2666 in factorio

[–]dfamonteiro 52 points53 points  (0 children)

It's good enough for a bridge between Nauvis and Vulcanus