Banner Default Image
< Back to all insights

Ask A Consultant

Author: Gav Patel & Ehab Roufail

Published date: 2018/02

Hello World

Have you ever wanted to ask a technical consultant a question but not known who you can ask?

Ask a Consultant offers you just that opportunity. Your questions are answered by Gav and Ehab, proven Agile experts from Harrington Starr Tech who have been delivering World Class projects for over 20 years. Send your questions to  and follow us on @askaconsultant on Instagram or @_Askaconsultant on Twitter

Here are some of the most popular questions we have had so far…

What is blockchain?

Another follow on question from this weeks topic.

The blockchain is an incorruptible digital ledger of economic transactions that can be programmed to record not just financial transactions but virtually everything of value.

It is a continuously growing list of records, called blocks, which are linked and secured using cryptography.   So while its known use for it digital currencies, other uses include authenticating diamonds and other valuable art work or anything which requires authentication.

What is Bitcoin?

There’s a lot of talk currently about Bitcoin, so we thought we’d answer this question today.

Bitcoin is the original crypto currency.  Bitcoin was born out of the financial crisis by a person who goes by the name of Satoshi Nakamoto.  This person hasn’t come forward yet, so no one knows who he or she is.   Him and a group created an electronic payment system based on mathematical proof.  

The idea was to create a currency independent of central authority, transferable electronically and with low transactions fees.

Once mined they use distributed ledger technology which is a log of where each coin has been and who currently owns it.  When its transferred the ledger is distributed and gets verified across multiple computers to acknowledge the transfer, thus everyone in the network has a log of its movement. 

There are currently roughly 16million bitcoins in existence, and more can be mined, at roughly one new one every ten minutes.  One 21million will be available to be mined, there will be no more available after this around 2040 .    A single bitcoin is divisible into a million pieces.   As Bitcoin gains more acceptance, people have used it to buy everything from Coffee to House Sales, and many companies accept it as a form of payment, from Wordpress, overstock, subway, Microsoft, Expedia and whole foods to name a few. 

At the time of posting its value is around $15,000 per coin with a market cap of $267bn, it will soon be traded on the futures markets.

Many banks have called it a fraud, a pyramid scheme and a vehicle used by criminals.     Time will tell as whether is succeeds as a widely adopted currency for everyday use.   There are another 1,400 other alternative currencies, which we’ll talk about in a later post

What are the benefits adopting Scrum?

Adapting the scrum methodology, some of the benefits include:

  • Better team dynamics
  • Higher productivity
  • Reduced time to market
  • Better-quality products
  • Improved stakeholder satisfaction
  • Happier employees

Although to me, its actually delivering what the customer wants, in small pieces, “minimum viable product” so that something useful is always present, and the customer changing their mind is always an option, so we don’t spend time delivering something different to expectations. Always Scrum, Always Happy!

What is a Task board in Agile?

A task board is a dash board which shows progress of the project.  It can be electronic and use software like Jira or TFS or a physical board with cards. 

The normal swimlanes a board has are

  • Backlog: which has the actual business requirement.
  • To Do: Tasks that can be worked on.
  • In Development: Tasks in progress.
  • To Test: Tasks pending for verification or testing
  • Done: Completed tasks.

Additional sections can be added depending on how you work, with extras such as

  • Peer review
  • UAT
  • Release 

Is pair programming beneficial or a waste of resources?

This is definitely NOT a waste of resources!    Pair programming is a technique in which two programmers works as a team in which one programmer writes the code and other one reviews that code. They both can switch their roles.

The benefits are:

  • Improved code quality: As the second programmer reviews the code simultaneously, it reduces the chances of mistakes.
  • Knowledge transfer is easy: One experienced developer can teach the other about the techniques and practices.
  • There will be fewer defects thus fewer defects raised further along the cycle which reduces cost

Therefore the benefits far outweigh using two resources on one story, as the speed it is delivered with fewer defects and better interpretation and code quality is well worth the effort.

What are your thoughts, is pair programming good or bad?

What is a data lake?

A data lake is a way of storing data within a system in its natural form until it is required.   While a data warehouse is a central store the data is highly transformed and structured.   Only data that is ready to be used is loaded into a the datawarehouse with a pre defined schema with questions we want to ask of the data known beforehand.

With a data lake, all data is loaded from source systems, no data is turned away.

Data lakes support all data types for all user types and the lakes adapt easily to changes and because of this we can have faster insights into reporting than with data warehouses.

Pentaho CTO James Dixon has generally been credited with coining the term “data lake”. He describes a data mart (a subset of a data warehouse) as akin to a bottle of water…”cleansed, packaged and structured for easy consumption” while a data lake is more like a body of water in its natural state. Data flows from the streams (the source systems) to the lake. Users have access to the lake to examine, take samples or dive in.