Code faster by writing your code as an RLW (an acronym standing for read, logic, write) using the RLW template. RLWs are faster to code than other code because they’re faster to test and less coupled.
Interesting and useful! Does this "pattern" go by other names? The closest concept I have been able to track down is pipes and filters in Pattern Oriented Software Architecture.
The closest I've seen is ETL for data pipelines, but ETL is only used for a very limited domain of taking data from an explicit DB, transforming it, and writing it into another.
One of the big ideas behind RLWs is that a large number of programs do the same thing, but with data sources other than DBs. A program that takes for example user input, transforming it, and writes it somewhere, for example a program configuration file.
Thanks for the reply! ETL definitely did not come to mind. Pattern Oriented Software Architecture (Vol 1) talks about data sources, pipes and filters, and data sinks; while it isn't as explicit as RLW and definitely not as clear as this post I think it largely shares the same ideas. My code for small scripts and competitive programming challenges largely fits this template across languages; I will try and consciously apply it now in larger projects thanks to the post.
Couple of unrelated notes:
1. The underscores in the Python code don't seem to be showing up. I'm using Chrome on Ubuntu.
2. The posts are already really good, but I feel it would be nicer if you could point to some external resources at the end of the posts if possible.
Interesting post - seems like it is a step on the way to functional programming, which has additional benefits.
It would be great if you could use a smaller font for code samples so that lines don't wrap - hard to read the code. Syntax highlighting would be nice but less important.
You're completely right about how RLWs are a step towards functional programming, good catch!
I also agree with you that the code could be laid out more clearly, I'll work with the team at Substack to see if there's something I can do to improve the readability.
Interesting and useful! Does this "pattern" go by other names? The closest concept I have been able to track down is pipes and filters in Pattern Oriented Software Architecture.
The closest I've seen is ETL for data pipelines, but ETL is only used for a very limited domain of taking data from an explicit DB, transforming it, and writing it into another.
One of the big ideas behind RLWs is that a large number of programs do the same thing, but with data sources other than DBs. A program that takes for example user input, transforming it, and writes it somewhere, for example a program configuration file.
Thanks for the reply! ETL definitely did not come to mind. Pattern Oriented Software Architecture (Vol 1) talks about data sources, pipes and filters, and data sinks; while it isn't as explicit as RLW and definitely not as clear as this post I think it largely shares the same ideas. My code for small scripts and competitive programming challenges largely fits this template across languages; I will try and consciously apply it now in larger projects thanks to the post.
Couple of unrelated notes:
1. The underscores in the Python code don't seem to be showing up. I'm using Chrome on Ubuntu.
2. The posts are already really good, but I feel it would be nicer if you could point to some external resources at the end of the posts if possible.
Again thanks for the awesome content!
1 - Thanks for pointing out the underscore issue, I'm working with substack to find a solution.
2 - External resources sound good, I'll try some on this week's post. Let me know if they help you
Interesting post - seems like it is a step on the way to functional programming, which has additional benefits.
It would be great if you could use a smaller font for code samples so that lines don't wrap - hard to read the code. Syntax highlighting would be nice but less important.
You're completely right about how RLWs are a step towards functional programming, good catch!
I also agree with you that the code could be laid out more clearly, I'll work with the team at Substack to see if there's something I can do to improve the readability.
Testing