From 6a690e576eb4a17959ee51f8f6b3219be0d85914 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20P=C3=B6tzinger?= Date: Mon, 7 May 2018 12:35:38 +0200 Subject: [PATCH] resolve wrong updates --- radar/2017-03-01/kubernetes.md | 2 +- radar/2017-03-01/pipeline-as-code.md | 2 +- radar/2017-03-01/port-adapters.md | 6 ------ radar/2017-03-01/vue.md | 2 +- radar/2017-10-01/kubernetes.md | 10 ++++++++++ radar/2017-10-01/pipeline-as-code.md | 12 ++++++++++++ radar/2017-10-01/redux.md | 14 ++++++++++++++ radar/2017-10-01/scala-lang.md | 2 ++ radar/2017-10-01/vue.md | 12 ++++++++++++ radar/2017-10-01/wiremock.md | 15 --------------- 10 files changed, 53 insertions(+), 24 deletions(-) delete mode 100644 radar/2017-03-01/port-adapters.md create mode 100644 radar/2017-10-01/kubernetes.md create mode 100644 radar/2017-10-01/pipeline-as-code.md create mode 100644 radar/2017-10-01/redux.md create mode 100644 radar/2017-10-01/vue.md delete mode 100644 radar/2017-10-01/wiremock.md diff --git a/radar/2017-03-01/kubernetes.md b/radar/2017-03-01/kubernetes.md index e84ae85..6f32bb2 100644 --- a/radar/2017-03-01/kubernetes.md +++ b/radar/2017-03-01/kubernetes.md @@ -1,6 +1,6 @@ --- title: "Kubernetes" -ring: trial +ring: assess quadrant: platforms-and-aoe-services --- diff --git a/radar/2017-03-01/pipeline-as-code.md b/radar/2017-03-01/pipeline-as-code.md index e5d2068..69c4e0e 100644 --- a/radar/2017-03-01/pipeline-as-code.md +++ b/radar/2017-03-01/pipeline-as-code.md @@ -1,6 +1,6 @@ --- title: "Pipeline as Code" -ring: adopt +ring: assess quadrant: methods-and-patterns --- diff --git a/radar/2017-03-01/port-adapters.md b/radar/2017-03-01/port-adapters.md deleted file mode 100644 index 5ce2850..0000000 --- a/radar/2017-03-01/port-adapters.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: "Port and Adapters" -ring: assess -quadrant: methods-and-patterns - ---- \ No newline at end of file diff --git a/radar/2017-03-01/vue.md b/radar/2017-03-01/vue.md index ea3603f..2f0e308 100644 --- a/radar/2017-03-01/vue.md +++ b/radar/2017-03-01/vue.md @@ -1,6 +1,6 @@ --- title: "Vue.js" -ring: trial +ring: assess quadrant: languages-and-frameworks --- diff --git a/radar/2017-10-01/kubernetes.md b/radar/2017-10-01/kubernetes.md new file mode 100644 index 0000000..1ae21fc --- /dev/null +++ b/radar/2017-10-01/kubernetes.md @@ -0,0 +1,10 @@ +--- +title: "Kubernetes" +ring: adopt +quadrant: platforms-and-aoe-services + +--- + +Kubernetes is a container orchestration platform, which supports many different infrastructure providers. It allows you to deploy containers and takes care of running, scaling or self-healing your applications based on configurations you provide. It's based on years of knowledge and experience Google gained by using containers. + +At AOE, we started Kubernetes in a test environment on bare metal to experiment with it. It's currently used for running AOE internal apps such as dashboards as well as running builds in containers. We also started to use it for upcoming projects to run and manage several services. There are Tools to automate the setup of kubernetes in AWS like [Cops](https://kubernetes.io/docs/getting-started-guides/kops/). Another helpful tool is [Minikube](https://github.com/kubernetes/minikube), which allows to test and run kubernetes locally. diff --git a/radar/2017-10-01/pipeline-as-code.md b/radar/2017-10-01/pipeline-as-code.md new file mode 100644 index 0000000..e5d2068 --- /dev/null +++ b/radar/2017-10-01/pipeline-as-code.md @@ -0,0 +1,12 @@ +--- +title: "Pipeline as Code" +ring: adopt +quadrant: methods-and-patterns + +--- + +Continuous Integration and Delivery is a critical part of our development and deployment process at AOE. Using Jenkins for many years the "instructions" how to build, test and deploy applications were scattered between many custom scripts and the pipeline was often maintained by manual maintenance of Jenkins jobs. Soon, we realized that we need a more native way to express the full CI/CD pipeline process in code and manage it in version control. + +Being an important part of each project, the pipeline configuration should be managed as code and rolled out automatically - this also allows us to manage the pipeline itself applying the same standards that apply to application code. + +While some teams started using Jenkins' [JobDSL plugin,](https://wiki.jenkins-ci.org/display/JENKINS/Job+DSL+Plugin) others explored the new [Jenkins Pipeline](https://jenkins.io/doc/book/pipeline/) - in both ways, the build artifacts should be published to an artifact repository such as [Artifactory.](/platforms-and-aoe-services/artifactory.html) diff --git a/radar/2017-10-01/redux.md b/radar/2017-10-01/redux.md new file mode 100644 index 0000000..bfd4e40 --- /dev/null +++ b/radar/2017-10-01/redux.md @@ -0,0 +1,14 @@ +--- +title: "Redux" +ring: trial +quadrant: languages-and-frameworks + +--- + +[Redux](http://redux.js.org/) helps us to maintain state in our frontend applications in a more predictable and clearer way. It is extendable though middleware, it has a great documentation and some awesome [devtools](https://github.com/gaearon/redux-devtools) that are especially helpful when you are new to Redux. + +The functional concepts for updating the state, combined with immutable data, lead to extremely easy and enjoyable [unit tests](http://redux.js.org/docs/recipes/WritingTests.html) - this is maybe the biggest plus for us developers. + +The official [react-redux bindings](https://github.com/reactjs/react-redux) also made it straightforward to weave Redux into our React applications. For asynchronous actions we use [redux-sagas](https://redux-saga.github.io/redux-saga/) which has proven itself as a better alternative for [redux-thunk](https://github.com/gaearon/redux-thunk). + +Currently, we use Redux only in our React projects, but we are evaluating it together with other frameworks such as Angular or Vue.js, as well. diff --git a/radar/2017-10-01/scala-lang.md b/radar/2017-10-01/scala-lang.md index 8a27b7e..524802c 100644 --- a/radar/2017-10-01/scala-lang.md +++ b/radar/2017-10-01/scala-lang.md @@ -5,6 +5,8 @@ quadrant: languages-and-frameworks --- +Scala is used in many projects here at AOE and therefore we moved it into the adopt level. + Besides Java, Scala is the most mature language on the Java Virtual Machine. Its unique blend of object-oriented and functional language features and rich type system with advanced type inference enables one to write concise code. It is fully interoperable with Java but has a big ecosystem of tools and frameworks on its own. diff --git a/radar/2017-10-01/vue.md b/radar/2017-10-01/vue.md new file mode 100644 index 0000000..ea3603f --- /dev/null +++ b/radar/2017-10-01/vue.md @@ -0,0 +1,12 @@ +--- +title: "Vue.js" +ring: trial +quadrant: languages-and-frameworks + +--- + +Vue is a progressive, incrementally adoptable framework for building user interfaces maintained by Evan You. Unlike [other monolithic frameworks](http://vuejs.org/v2/guide/comparison.html), the core library is focused on the view layer only and is very easy to pick up and integrate with other libraries or existing projects. Vue is also perfectly capable of powering sophisticated single-page applications when used in combination with modern tooling and supporting libraries such as [vuex](https://vuex.vuejs.org/en/) and [vue-router](http://router.vuejs.org/en/). + +Vue uses an HTML-based template syntax that allows you to declaratively bind the rendered DOM to the underlying Vue instance’s data. Under the hood, Vue compiles the templates into Virtual DOM render functions. Combined with the [reactivity system](http://vuejs.org/v2/guide/reactivity.html) Vue is able to intelligently figure out the minimal amount of components to re-render and apply the minimal amount of DOM manipulations when the app state changes, which provides for very high performance. + +Applications can be split into [Single File Components](http://vuejs.org/v2/guide/single-file-components.html) - a single file containing the template (HTML), style (CSS) and functionality (JS) - which simplifies maintainability and testability of the code and promotes reusability across other projects. diff --git a/radar/2017-10-01/wiremock.md b/radar/2017-10-01/wiremock.md deleted file mode 100644 index 516e494..0000000 --- a/radar/2017-10-01/wiremock.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "Wiremock" -ring: adopt -quadrant: tools - ---- -**[WireMock](http://wiremock.org/docs/)** is an HTTP mock server - it can be used to mock APIs for testing. - -At its core, it is a web server that can be prepared to serve canned responses to particular requests (stubbing), and that captures incoming requests so that they can be checked later (verification). It also has an assortment of other useful features including record/playback of interactions with other APIs, injection of faults and delays, simulation of stateful behavior.  - -It can be used as a library by any JVM application, or run as a standalone process either on the same host as the system under test or a remote server. All of WireMock's features are accessible via its REST (JSON) interface and its Java API. Additionally, the mock server can be configured via JSON files. - -At AOE, we use WireMock as a standalone server to mock APIs that are outside our system context to get a stable environment for testing and rapid feedback. Besides the decoupled test and development advantages, the mocked APIs can also be used in contract-based tests. We also use embedded WireMock in functional tests to stub external services. The explicit test of faults are especially helpful in building and testing the [resilience of your application](/methods-and-patterns/resilience-thinking.html). - -Because of the features such as flexible deployment, powerful request matching and record/payback interactions, as well as the fact that the server runs stable in our project environments, we classify WireMock as *trial*.