Nicolas Riche is a Software Developer who is very enthusiastic when it comes to writing about high-quality, robust software. He continuously looks to improve his expertise to achieve his goals by learning new state of the art tools and practices different ways of thinking, etc. He was first attracted to the promises of functional programming, then spent his recent years gaining experience and completing training toward Reactive Architecture systems in order to tackle the complexity of other software systems.
- What is the biggest misconception of a reactive architecture system?
Reactive architecture isn’t the same notion as “Reactive programming”. Reactive programming can be included in the set of tools to achieve a Reactive architecture but it isn’t even mandatory.
- What are the advantages of using OSS (open source software)?
- Less lock-in: You and the community have more control over the future. Also because the code is open-source, you have the ability to eventually edit it to export the data the way you need to migrate to another solution.
- License: It depends on the specific license used but generally there is less concern and restrictions on how the software can be used or integrated with of software
- Transparency/Trust: The code and any changes to the code are public. This is important in terms of security and privacy.
- More support options: With closed source software, only the software editor has the capacity to provide a full support service (because he has the read and write access to the code, not only the public documentation).
- What would you say is the number 1 business value gain from moving to a reactive architecture?
It forces us to think about how to handle failures. Failures will most likely happen, because of external causes but also our software itself is never perfect! Delivering reliable software isn’t just focusing on the happy path, handling failures, and recovering from them is an equally important part of it.
- What would you say are your top 5 benefits of an agile environment?
- Shorter delivery-feedback loops are a major benefit.
- Easier changes along the way: Software development is a field that benefits particularly from an Agile environment from its nature. The changes are easier, or at least perceived as easier (no/less hardware involved for example), and consequently the software changes often.
- Better interaction with the Business owner(s): Things rarely happen as planned, an Agile environment allows us to discuss priorities, compromises more effectively.
- Better motivation.
- The short sprints tend to help to detect problems or blockers and talk-up about them more quickly / early.
- What is one thing you are most excited about in the tech industry for the near future?
The movement to make software accountable. The COVID app from the government is a good example I think, I like how the way the system works is explained technically, in terms of privacy, etc. They give the right amount of details that the user should know while keeping that understandable for a non-expert.
- What do you like about working at YoppWorks?
I like the openness mentality and trust in each other. I like how YoppWorks has a work structure to reward employees doing a good job and we’d love what we do!