Functional programming helps avoiding the so called ball of mud a project can become, where complexity goes trough the roof. I develop with functional programming disciplines. Functions should only know their input, and should only communicate with their output. Functions should be written once and be reused by composition. Default compositions should be proposed to the *other* developer via common use cases adjacent to the library. Interpreters should expose a way to make new compositions easy and intuitive to the *other* developer. I specialize in Scala|Akka. ----- I make code that avoids complexity by applying discipline. ----- Disciplines enumeration: 1. Code that is transparent to read by a bussiness analyst or a product owner. This is achieved by applying DomainDrivenDesign. 2. Code that avoids mutation and secondary effects when possible, and if not making them explicit. This is achieved by applying FunctionalProgramming. - pure functions -- secondary effect avoidance - monads (Future, Option, etc) -- secondary effect made explicit 3. Code that is cohesive and decoupled. This is achieved by applying ObjectOrientedProgramming -- read UncleBobMartin/CleanCode - SOLID - HEXAGONAL Architecture 4. Code that survives crashes, is elastic, and fast - REACTIVE MANIFIESTO -- read Akka Actor Model - ES/CQRS
This represents your current experience. It calculates by analyzing your connected repositories. By measuring your skills by your code, we are creating the ranking, so you can know how good are you comparing to another developers and what you have to improve to be better
Information on how to increase score and ranking details you can find in this blog post.
0 activities in the last year