Skip to content

Latest commit

 

History

History
76 lines (50 loc) · 3.07 KB

File metadata and controls

76 lines (50 loc) · 3.07 KB

fullstack-web-developer-transformation

This is repository Full Stack Web Developer transformation project of mine - and yes, thats enterprisey talk, and means I'm trying to learn a new skill.

Motivation

I've seen last years exciting movement of using web as platform and javascript as implementation language for end-to-end, or full stack, application development - for experienced java developer this is clearly a call for some rethinking.

Some other trends I'm feeling important are

  • Microservices and self contained systems
  • Domain Driven Design
  • Functional programming
  • Reactive programming
  • Event Stream Processing & Big Data
  • Single page applications
  • Native & hybrid mobile apps
  • Responsive & Reactive UI's
  • Cloud Computing & IaaS & PaaS
  • Serverless apps & FaaS & Web API's
  • Agile & Lean & ATDD & CI & ..

Never mind if I miss some - there's lot of things which drive JS as language and JSON and REST as integration technologies forward and enable small and coherent systems to be implemented fast & effective.

Target & Principles

While learning I need to define guiding principles behind technological choices, which allows me to concentrate to essence.

  • Programming style: Functional
  • Programming model: Reactive
  • User interface design: Responsive
  • User interface architecture: SPA? MV..?

My current mantra is: Functional Reactive apps, which have responsive layout - but this leaves still lot open.

Technologies

It's essential question which technologies work together to allow me to develop elegant, easy to maintain and easy to extend web applications.

My current guesses for match are

  • Javascript 'dialect': ES6 (with Babel or Traceur) or TypeScript
  • CSS 'dialect' : CSS3 with SASS in SCSS format
  • Frameworks: Angular? React? Elm? -- still open, depends on development teams history / preferences
  • Reactive libraries: RxJs seems de facto standard
  • Layouts: Bootsrap with SASS / SCSS format
  • Testing: Jasmine? -- still open
  • Mobile: Ionic? NativeScript? React Native? PWA? -- still open, depends on rquirements of project

It is useful to aligh with [ThoughtWorks Technology Radar] (https://www.thoughtworks.com/de/radar) and let it guide me.

Execution

I decided to formalize my learning effort around MOOC course, and found one from [Coursera] (https://www.coursera.org/specializations/full-stack)

In addition I did go thru needed introductory and intermediate courses from [Sitepoint Premium] (https://www.sitepoint.com)

Course & Video material alone wouldn't be enought, so I've decided to harvest some resources which get me forward. I prefer having some books in addtion to online references.

References

Books

and some meap's from Manning plus RxJs book from Pragmatic programmers.

Tools

  • Sourcetree for Git
  • Brackets for html, css, js

Links