StemCode ?

According to the Cambridge English Dictionary :

stem :
a central part of something
from which other parts can develop or grow
or which forms a support

a system of words, letters or signs
used to represent a message in secret form
… so that it can only be understood
by the person who is meant to receive it

The name ‘StemCode’ came from the idea that application coding always springs from existing code, built by other passionate coders, who also used code built by others etc…

Further more, ‘StemCode’, in analogy with Genetics, suggests that coding also has something in common with the following concepts:

stem cell :
a type of cell that is able to divide to produce more cells
or to develop into a cell that has a particular purpose

framework :
a supporting structure
around which something can be built

Application Frameworks should allow the coder to go from a base, made of languages and libraries, to a set of useful functionalities, through a process of gradual differentiation.

As an example of this differentiation process, a ‘Yeoman’ generator is comparable to the genetic process called ‘transcription’, by which genes are ‘expressed’, meaning that they actually produce vital proteins.

That base, made of languages and libraries is composed of several existing software parts : in turn, these parts are relying on each other and often described as follows :

stack :
a pile of things
arranged one on top of another

‘On top of another’? Not literally, but because they depend on each other in order to produce the usability of the application functionalities they support : (1) the GUI needs some – (2) Server Api to manage data from a – (3) Persistent Storage.

In a nutshell, the stack I propose to work with here is the following :

(1) Polymer & Redux
(2) Node with Express & Swagger
(3) Arangodb

It is illustrated here. And I will explain it in more detail in the coming up episodes of this blog.

So stay tuned, and I will see you next time.

François De Grandi

Welcome to StemCode…

This is a full stack JavaScript development blog, STILL UNDER CONSTRUCTION !

Yes, I spent the last 18 months or so, digging into several JS frameworks (Angular, Vue, Sails, Node-Express), database models (key-value, document, graph), libraries (Polymer, Redux), and dev-ops strategies (docker, dockerhub, dockercloud, digital ocean, now)…

So I gathered a lot of useful approaches. I focused on the best documented solutions and came up with the following full stack and dev-ops :

  • Database : Arangodb : multi-model with the JS framework Foxx for data-driven microservices
  • Server : Node
  • Api : Express and Swagger
  • Frontend : Polymer, Redux
  • Scaffolding : Yeoman, Polymer-cli
  • CD & CI : Docker, Now

Here, during the next few months, I will publish the chronicles of the development I am starting now : a web application for an art museum, with integrated cms functionalities…

I am very much looking forward to sharing this experience with you, and hope to engage in productive conversations with you, dear reader!

So stay tuned, and I will see you next time.

François De Grandi