fatkodima Profile Banner
Dima Fatko πŸ‡ΊπŸ‡¦ Profile
Dima Fatko πŸ‡ΊπŸ‡¦

@fatkodima

Followers
665
Following
2K
Media
38
Statuses
399

Backend, architecture, ruby, linux, databases. Love to investigate low-level things. Wannabe @github, @gitlab or @Shopify

Ukraine
Joined November 2013
Don't wanna be here? Send us removal request.
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
17 days
Just yesterday it helped me again to identify exact places of performance problems in a long running job 🫰. APM and other tools were useless. Found exact places of N+1s, lines that load too many records, most popular SQL queries, redundant queries, etc. Highly recommend!.
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
1 year
Presenting a new gem for tracing Active Record, I wish existed earlier πŸ˜† Many times I crafted code to get similar reports like in the gem - to profile slow tests, rake tasks, jobs, find the most popular queries etc. I hope you will find it useful too.
0
0
4
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
23 days
Very happy about this change to rubocop Very often I see people use the `&.` operator without giving much thought. That change does a deeper analysis of the code and will help to reduce unneeded `&.`, making code nicer. I found 250 such cases in my app.
Tweet card summary image
github.com
Closes #13835. This cop detects safe navigation as unnecessary if there was some method call on the same receiver in the previous code paths. cc @vlad-pisanov
1
2
15
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
25 days
A nice optimization was merged, which makes Rails batching over whole (or almost whole) tables even faster. πŸŽ‰.
Tweet card summary image
github.com
Motivation / Background Fixes #51242 In ActiveRecord 7.1, a new option was added to ActiveRecord::Batches#in_batches, use_ranges: true, that enables a more efficient way to generate queries from th...
1
3
49
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
3 months
This is probably more costly than changing programming languages, because of existing users, but are there examples where people migrated from GraphQL back to REST API? Or wish to do the migration?. What is your experience with GraphQL so far as an implementer and/or a user?.
3
0
2
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
5 months
It is scary when idiots like musk have so much power and influence. In ideal world, such people must be isolated from society. Or, more likely, he writes such statements purposefully. Sorry, I hate tweeting about politics, but having this idiot on our planet is too much.
@elonmusk
Elon Musk
5 months
Ukraine needs to hold an election. Zelensky would lose by a landslide.
0
0
16
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
6 months
RT @sleepwalkereuro: Sometimes a picture says all…
Tweet media one
0
12K
0
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
6 months
Is it reasonable to require sidekiq as a dependency for this to work? Or active job?. What other tools for large data migrations people use and find useful?.
2
0
1
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
6 months
Does anyone use bg data migrations from my online_migrations gem? Do you find it useful, useless for your use case? Please respond here or in github issues or DM. After testing on a large project, I realised there are some significant flaws in it and going to reimplement it. /1.
3
1
1
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
6 months
Instead of one style of writing blocks, there are now 2. While reading the code, instead of descriptive names, you now need to remember what this meaningless 'it' refers to each time. While this might work for trivial cases, it will be abused for chained calls and be a hell.
@collin_jilbert
Collin
6 months
Happy Friday! Can't wait to see the comments on this little nugget.
Tweet media one
13
0
45
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
7 months
πŸ”₯πŸ”₯πŸ”₯ Puma internals article.
dansvetlov.me
Taking a comprehensive look at how Puma, one of the most popular Ruby web servers, works under the hood.
1
9
59
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
7 months
The future Rails 8.1 will help solve a popular problem many teams have - constant merge conflicts in the structure.sql file at the head of the versions list. You need to provide a custom formatter. If sorting by, e.g., hashes of versions, the conflicts now will be very rare.
Tweet media one
Tweet media two
3
8
66
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
7 months
RT @_byroot: I found a bit of time there and there to write part 3 over the last week, hopefully it isn't too disjointed. .
byroot.github.io
In the previous post, I covered how I reimplemented JSON::Generator::State#configure in Ruby and some other changes. Unfortunately, it didn’t go as well as I initially thought.
0
12
0
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
8 months
RT @maciejmensfeld: @fatkodima's recent PR improved PostgreSQL index retrieval in Rails, reducing query time from 2,500 to 500ms ⚑️ Great w….
0
5
0
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
8 months
RT @rails: Welcome @fatkodima to the Rails Committers team!.
0
4
0
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
8 months
RT @_byroot: I have the pleasure to welcome @fatkodima in the Rails committers team. Dima has been relentlessly fixing reported issues in….
0
11
0
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
8 months
The best type of email. My addiction 🫢
Tweet media one
0
2
13
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
11 months
A large achievement for me - I released my first ruby gem 2.5 years ago, and now I have 1 million downloads across all the gems created since then. Thank you for using them!πŸ₯Ή
Tweet media one
7
2
107
@fatkodima
Dima Fatko πŸ‡ΊπŸ‡¦
1 year
Rails 8 will allow using custom columns when iterating in batches🀌. This is useful when the table's primary key is not sortable (uuid4), to better utilize compound indexes for performance, or you want to iterate in some custom order.
Tweet media one
4
9
67