This blog post is an extension to my previous blog posts on tools for good software design and tools for good software design, part II, as such I’m not giving it a full bump in the part number In the previous posts I mentioned six principles: “KISS” principle, and the importance of keeping things simple “Single Responsibility” that really helps […]

Read More →

This is the second part of me putting in ink (well, digital ink) a list of tools/rules/principles I’m utilizing over and over again in my job as a software engineer, designer and architect. In the previous post, I mentioned four principles: the “KISS” principle – and the importance of keeping things simple, the “Single Responsibility” principle […]

Read More →

This blog is about experience, not about actual software tools for design. What I’m actually going to discuss are rules of thumb, principles and approaches, I collected over the years of writing software. At some point, I realized that I have a list of tools/rules/principles I’m utilizing over and over again, so I decided to […]

Read More →

What is Messaging These days we seek new ways to manage complexity, reduce coupling, and improve scalability. Micro-Service though REST services are a good practice to do achieve such goal. In scenarios when request requires several remote calls to other services it’s almost impossible to guarantee quick response time. A good solution to this problem is to use […]

Read More →

Intro In Natural Intelligence we have built a Micro services architecture (MSA), that kind of architecture creates many services that runs independently. This pattern takes SOA benefits but keeps it simple and useable. That is why MSA has many benefits, and the one which stands out the most is making deployment easier (independently services). However, […]

Read More →