“code pattern” – my point of view

Today I want to focus on a interesting question I got:  “Why does IBM call something a code pattern and not just sample?” The question was related to my last blog.

Here is my personal point of view

First, there is no existing definition of the word pattern in combination with usage of the word code.

  • Based on the given definition, here is my free interpretation of the word pattern :
    “A pattern is something you can reproduce in different areas, and this interpretation is more less always comparable to a sample.  “
  • The main difference between sample and pattern from my point of view is: 
    “A pattern is always created to reproduce something which worked and will work again and this is not the case with a sample.”

Sure, a code pattern is NO design pattern  😉 . The combination of the words design and pattern has an official definition.

From my understanding, IBM uses the word pattern in combination with code, with the intention of showing you that you can reuse the code in the way you want.

A code pattern does NOT need to be related to IBM products or IBM services, but it should be related to one or more technologies and should contain code, which a developer is able to reuse under an apache license.

Structure of the code pattern

A code pattern should always contain:

  • Clear definition of the used technologies
  • Should contain code which can be used to instantiate an application
  • Should contain the possible deployment models (cloud, local, and so on) of the application

A code pattern should always have the following high level structure:

  • Summary (main objective),
  • Description (what it does)
  • Flow (how it works)
  • Instructions (how to instantiate)
  • … and for sure the code, which is available on github

This was my personal perspective on the definition of a code pattern, based on my experience with code patterns so far.

I hope this was helpful for you and feel free to provide feedback 😉

Let’s see what’s next?

Greetings,

Thomas

PS: By the way, you can use the IBM Cloud for free, if you simply create an IBM Lite account. Here you only need an e-mail address.

Information resources for IBM Cloud

Why should I blog about this topic? You can just “google” and find the resources by your own. I write this blog post, because I want to share briefly my experience with you and I hope you can save time, when you get started with IBM Cloud development.
This blog post is about following major IBM Cloud information resources:

The work of a developer has a wide range, and can be very different, by starting from addressing user needs, to what is the right architecture and technology, including method and the tooling. In other words developers wearing different hats of roles at the same time even when the role is not directly assigned to them.

Let’s start this blog post with my definition for information resources:

“Finding the right information, depends on your expectation”

This is a simple and obvious statement, but from my perspective simple knowledge must be repeated, to get the right attention.
Following my own statement I first define my expectations, before I will write about the resources.

What are my expectations on information resources?

When I searching for development topics, I have mainly two different high-level  categories in mind, the “content” and the “consumability”.

A little bit more about the category “content”.
These are my three major topics:

  1. Getting executable code
    Is there sample executable source code? It would be perfect, if I directly find matches to my technical or use case problem.
  2. Wanting the right method/tools
    Which development processes is out of the box supported, to support my daily “development” work, to organize myself? Today agile is the usual way.
  3. Searching for the right architecture
    How to get help to choose the right architecture approach inside IBM Cloud.“Which components do I need to implement my application in IBM Cloud?”

A small spoiler: the first expectation is fulfilled in each the of given IBM Cloud information resources. Each of them pointing to sample code in github.

Continue reading