TILs - Fueling Curiosity, One Insight at a Time

At Codemancers, we believe every day is an opportunity to grow. This section is where our team shares bite-sized discoveries, technical breakthroughs and fascinating nuggets of wisdom we've stumbled upon in our work.

Published
Author
user-image
Akshay
Rails 5 prevents accidental halting of the callbacks. In order to explicitly halt, we can make use of throw(:abort) in the callback chain.
Published
Author
user-image
Akshay
Sidekiq by default does 25 retries (about 21 days) based on exponential back off formula ie. to retry multiple times with exponential delays. If need be, we can explicitly configure max_retries in sidekiq.yml.
Published
Author
user-image
Harshwardhan
while writing test for a parent component which renders child component based on some state/prop and if your child component is connected, always import unconnected child component and do assertion on that.
/code
import { ChildComponent } from 'path/to/component';

expect(component.find(ChildComponent).length).toBe(1);

//instead of
expect(component.find('ChildComponent').length).toBe(1);
Published
Author
user-image
Akshay
In Rails we can do two modes of locking that is 'Optimistic Locking' and 'Pessimistic locking'. 'Optimistic Locking' assumes that a database transaction conflict is very rare to happen and such locked records can still be read (Shared lock). It uses a version number of the record to track the changes. This can be used by adding a lock_version column to the table and then is handled automatically by Rails.
Whereas 'Pessimistic locking' assumes that database transaction conflict is very likely to happen. It locks the record until the transaction is done (Exclusive lock). This can be done with ActiveRecord::Base#lock! or ActiveRecord::Locking::Pessimistic#with_lock.
Published
Author
user-image
Mrinmoy
a decent spreadsheet writer gem for ruby, https://github.com/felixbuenemann/xlsxtream, ran some rough benchmarks, and this one is the fastest and lowest memory consuming gem. although not feature complete.

Showing 69 to 71 of 82 results

Ready to Build Something Amazing?

Codemancers can bring your vision to life and help you achieve your goals