Scientist: A Ruby library for carefully refactoring critical paths
1–10 of 17 posts
Re: Scientist: A Ruby library for carefully refactoring critical paths
#2Re: Scientist: A Ruby library for carefully refactoring critical paths
#3Re: Scientist: A Ruby library for carefully refactoring critical paths
#4This is fantastic! Do folks do this manually in other languages or are there proven packages folks use?
Re: Scientist: A Ruby library for carefully refactoring critical paths
#5This is pretty cool, but in my experience critical path code generally has side effects and most code is not idempotent. That is to say it may not be safe or feasible to run the old and new code in parallel, without some special considerations. Think bidding on a auction item or transferring a bank balance.
Example in the transferring a bank balance, you have some storage DB you interact with, but that is an abstraction and when you run the dry run of the new code you can have an implementation that just does verification on the data from the real implementation.
Anyways, it does take discipline and effort, but you can still safely make changes in this manner.
Re: Scientist: A Ruby library for carefully refactoring critical paths
#6Re: Scientist: A Ruby library for carefully refactoring critical paths
#7Re: Scientist: A Ruby library for carefully refactoring critical paths
#8Re: Scientist: A Ruby library for carefully refactoring critical paths
#9Re: Scientist: A Ruby library for carefully refactoring critical paths
#10This is pretty cool, but in my experience critical path code generally has side effects and most code is not idempotent. That is to say it may not be safe or feasible to run the old and new code in parallel, without some special considerations. Think bidding on a auction item or transferring a bank balance.