Thursday, June 20, 2019

MaaS Scotland Annual Conference 2019

Today I attended the MaaS Scotland annual conference event in Edinburgh. Which brought together representatives from across Scotland, the UK and Europe to discuss recent developments and projects in the area of Mobility as a Service.


There were many interesting presentations, including those from Eric Mink from the Dutch Ministry of Infrastructure and Water Management (who mentioned the Dutch API Blueprint for MaaS)
And also Michael Matheson MSP, who is the Cabinet Secretary for Transport, Infrastructure and Connectivity. Plus also there was more information about the MaaS Investment Fund from Transport Scotland.

Thursday, June 6, 2019

Config versus Code - what's the difference?

I have worked on a few projects lately where the the conversation typically went as follows:
"We aren't coding anything, we are simply changing the configuration within the product"
or "We don't need to deploy our changes to Subversion/CVS/BitBucket/GitHUb as it is config not actual code" (and sometimes the word "actual" is stressed).

Sound familiar?

So I thought I would define what I thought are the traits and differences between config and and code:

Config is:

  1. Customisation of mature code, without affecting that code
  2. Held in a source control system, wherever possible
  3. Setting and changing parameters via simple instructions
  4. Carried out using a visual tool or interface
  5. Limited in scope (to what the developer wanted to expose)
  6. Best suited to making changes to SaaS (Software-as-a-service) products

Code is:
  1. Scripted or compiled
  2. Always held in a source control system
  3. Carried out using an IDE (Integrated Developer Environment) such as Visual Studio or Eclipse
  4. Far less limiting in scope (to what the developer wants to do)
  5. Where repeatable functionality is held
  6. Best suited to the creation of bespoke applications

Or put another way:
If you need a developer to make a code deployment once a configuration change has been made (to implement that config).... it is not config!