Hexagonal/Cockburn Architecture

My 2 years of experiences in software development, I found the big challenge is to write program that don’t break business logic of application, since the application code is so coupled with framework classes as well as database. Changing in database, requires the business logic to change according to database changes. Furthermore, If the framework’s … Continue reading Hexagonal/Cockburn Architecture

Dependencies Injection In Scala

Inspired By: Scala Central [Dave Gurnell] talk. In software engineering, dependencies injection is the techniques of passing dependent objects or functions to the class, module or function for which they wanted to use. Dependencies injection inverse the flow of control of the program. It provides loose coupling and unit testing become easier since dependent objects can be … Continue reading Dependencies Injection In Scala

Clojure and Concurrency

When learning Clojure, I created a repository on My GitHub, This helped in understand the power of Clojure as I am new and inexperienced Clojure programmer. It was difficult for me to adopt best practices provided by Clojure. Clojure is dialect of lisp programming language. It is homoiconic language meaning the abstract syntax tree is same … Continue reading Clojure and Concurrency

Category Theory and Programming

Category theory is providing the abstract of the mathematics. Category theory formalize mathematics structure. Category theory is used to develop common language between mathematics. In category theory, object and arrows (or morphisms) between objects. For each object there is a identity morphism and object arrows/functions/morphisms can be composed in associative fashion For example: A — f() … Continue reading Category Theory and Programming

Illuxplain Project

Online screen drawing screen application with JSON instantly and with low bandwidth has possible. Illuxplain, uses XMPP which is for chat messaging protocol. The screen is shared through tracing the drawing users x,y coordinates and storing temporary in memory, after the user finishes drawing the coordinates are send to connected users, they receives the message … Continue reading Illuxplain Project