Spooky Support for Macmillan


The Synetec team love an opportunity for cake…and dress up. How better to indulge with spooky cakes and Halloween costumes in aid of supporting Macmillan Cancer Support.  Macmillan provide enormous levels of support for people living with cancer and through their efforts, patients can benefit from lifestyle and social encouragement to get through a difficult time for them and their families. We aim to support charities that can make a difference. You can support too.

Well done to the team for a great effort.

Make a donation to Macmillan Cancer Support


Sentiment Analysis for Business Growth

Knowing how your customers truly feel when they interact with your business is vital, but how can you collect this data?

In our previous articles, we have been discussing the benefits of using data analysis tools that use NLP (Natural Language Processing) and ML (Machine Learning) technology to ‘read’ and flag key information from the conversations you have with customers.  We stated that there are three vital components to get truly beneficial, valuable insights that can improve your growth and operations.  The first two components we discussed were Topic Identification (which you can read here) and Behaviour Identification (our last article, here).  Now we are on to the third and final component, Sentiment Analysis.

Sentiment analysis involves using ML to identify and catalogue communication based on the tones conveyed within.  They will rate the sentiment identified as either positive, negative or neutral with an overall score.  There are also tools on the market that can rate and tag the emotions identified, such as joy and sadness.  In our research here at Synetec, we reviewed IBM Watson Natural Language Understanding (NLU), Amazon Comprehend and Google’s Natural Language API.  As with all data analysis tools, the sentiment ratings across each one varied and we determined that a combination of systems and techniques would provide the best accuracy and most meaningful insight.  It is important to note that these tools can be trained, learning to associate certain meanings to specific keywords.  This is highly beneficial, because the language used by customers for one business may vary wildly from the language used with another business, industry, or country / culture and it is important to keep your data analysis in context.

Another important consideration is that sentiment analysis can involve reading and rating an entire conversation, but the result is likely to be less accurate or useful, since you cannot pinpoint what sentiment is related to which topic.  Therefore, when you want to identify how your customers are feeling, you need to pinpoint the specific communication that contains relevant topics and behaviours, then use these more specific pieces of communication for sentiment analysis.  For example, below is a string of conversation that we used in our research.

Sales person: “I would like one of our service people to stop by so that you can take advantage of our free inspection and cleaning. Is Wednesday afternoon at 2:00 p.m. a convenient time for you?”

Customer: “You know, I really don’t want to spend time or money on this now.“

Sales person: “I completely understand. <COMPANY NAME>is known for delivering efficient and affordable solutions for heating.“

Customer: “My burner seems to be working just fine.”

Sales person: “<CUSTOMER NAME> do you remember how cold it was last winter? …With our free annual inspections, you never have to worry about breakdowns during those fierce cold spells.”

Customer: “Okay, well, I suppose I could see you Wednesday.”

As a team, we processed the communication first manually, meaning we read it and decided what sentiment was present in the conversation.  We quickly discovered we all had differing opinions on the answer!  Because it is a long conversation, with a variety of answers and agreement for a follow-up call, depending on our personal viewpoints we chose neutral or positive.  Unfortunately, this does not tell us whether the customer was happy that they had been contacted, or whether they simply agreed to a follow-up call because they did not want to continue a conversation at that current moment.  The same applies to the tools, context is key.  Using the sentiment analysis tools in our research, we identified that the customer’s overall sentiment was negative, the first response is negative, but the final response was positive / neutral.  Below you can see the final ratings the tools gave us, which we scored out of 3 depending on their result.

As you can see, there are many factors involved in producing sentiment analysis results that are accurate and relevant to your business activities.  We would recommend that you use a combination of sentiment analysis tools and test them with pre-processed conversations to determine what works best for your business.  Decide on acceptable benchmarks for accuracy and actively train your systems so they learn what words are most important to your business.  For the most relevant results, use sentiment analysis in combination with topic and behaviour identification so you can identify exactly what conversations you should be analysing.  Flagging the different topics and behaviours your customers are exhibiting – in relation to specific business activities – ensures that the text analysed is small, so you can get the most valuable information without being lost in a tidal wave of data.

The data collected from daily business activities is incredibly valuable, the key lies in extracting the right data and then actively using the information where it is most impactful for your business

If you are interested in sentiment analysis or would like further advice on how machine learning and data analysis can be used in your business, please contact us.



Synetec is an Agile solutions provider with expertise in diverse development technologies, such as Angular, the .Net Framework, SQL Server and other cloud friendly data stores. We are certified and have successfully delivered projects across different cloud technology stacks such as Microsoft Azure and AWS, delivering integration and development solutions since 2000.

We work with a number of the UK’s most respected financial institutions to deliver a range of innovative solutions. We have expertise in working with both established businesses as well as start-ups and extreme growth businesses.

The World of Blockchain

Synetec Blockchain

Blockchain has captured the attention of the business and technology world as a way to streamline business processes, verify transactions and reduce the potential for fraud. This article introduces Blockchain as a Service (BaaS) in Microsoft Azure, showing how it can be used to build a secured data structure and create a distributed transactional digital ledger.

There’s plenty of literature on the Internet about blockchain and how it started as a digital ledger for Bitcoin.


Blockchain is a secure, shared, distributed ledger that can be public, private or consortium (that is, restricted to named members only). It’s secure because it uses cryptography to create transactions that are difficult (if not impossible with current computing technology) with which to tamper. Shared among all nodes or peers in the chain is a data store and, as you’ll see shortly, business logic in the form of contracts. A blockchain value is indeed directly linked to the number of entities that participate in them. Critically, blockchain data and contracts are distributed, which means that there are many replicas of the database. And the more replicas there are, the more authentic it becomes. And finally, blockchain is a digital ledger, a transactional database that appends only immutable records of every transaction that occurs.

I’d like to reinforce this point about block chain being a distributed ledger. Traditional ledgers are centralized and use third-party systems, or middlemen, to approve and record transactions. Think of credit cards, banks, identity management systems and the like. This approach creates a challenge of trust and scale. Do you trust your middleman agent to act as a broker for all your transactions? Can the agent become a single point of failure? Can it be compromised?

In a blockchain, ledgers are distributed across the entire network, and there’s no need for any third-party system to be in the middle of a transaction. The technology maintains multiple replicas of data, as in a peer-to-peer file-sharing system, as each peer obtains a copy of the entire dataset. No one owns the entire thing, but everyone possesses a copy of it. Figure 1 depicts this arrangement.

The first blockchain, Bitcoin, emerged in 2009, with distinct limits. As a digital ledger, it simply records transactions and doesn’t keep track of digital asset account balances. Ownership of bit coins is verified by links to previous transactions, following the immutable history of blocks in the chain of recorded transactions. Also, Bitcoin doesn’t define any specific logic on how to handle a transaction and the conditions, for example, that the two involved parties must agree upon in a cryptocurrency exchange.

Blockchain technology evolved with the addition of smart contracts, which are small pieces of code that add logic to transactions. Think of smart contracts as a computer code representation of legal terms in a contract for goods or services. New blockchain ledgers emerged in the market, the most popular being Ethereum ( and Hyperledger Fabric (, to add smart contract capability to the network. In these (let’s call them Blockchain 2.0) digital ledgers, smart contracts are now stored in a block and are distributed to all nodes along with related data.

Blockchain 3.0

Bitcoin’s blockchain is often referred to as Blockchain 1.0. It’s a simple ledger that records transactions in sequence and represents the state of the network at any given moment. Think of it simply as a distributed database.

But just as databases have evolved over time by adding logic execution capability—in the form of stored procedures, for example—­blockchain has introduced smart contracts to handle the logic tier. However, smart contracts can operate on data only contained in the block where they’re stored. They can’t access external data or systems, as calling a service outside of the blockchain breaks the “circle of trust” that blockchain provides for cryptographic security and immutability of transactions. CRM, ERP and payroll systems all represent external entities that aren’t part of a blockchain, but may be involved in the exchange of data within a transaction. Blockchains need a way to securely receive external data, as well as access to secure execution of off-chain code.

To address this requirement, Microsoft introduced cryptlets as part of “Blockchain 3.0,” the blockchain of data, logic and cloud services. Figure 2 shows the progression of features.

Figure 2 Evolution of Blockchain

Cryptlets are off-chain code modules written in any language that can execute within a secure, isolated, trusted container and can communicate over secure channels. Cryptlets extend smart contracts to the outside world by providing services like encryption, time and date events, external data access, and identity authentication. Microsoft introduced cryptlets as part of its open source project code-named “Bletchley”, which has evolved into the Azure Blockchain Workbench product revealed at the Microsoft Build developer conference in May.


Bletchley is an architectural approach to building an enterprise consortium blockchain ecosystem. To be clear, this is not a blockchain stack. It’s Microsoft’s approach to bringing distributed ledger (blockchain) platforms into the enterprise and building real solutions addressing real business problems, while keeping the platform open.

Blockchain as a Service

Blockchain consists of:

  • Single-node ledgers to simulate production for multiple divisions within a single organization.
  • Multi-node ledgers to simulate production for multiple divisions within multiple organizations.
  • Tools for development of decentralized applications distributed on a blockchain.

Decentralized applications (dApps) are applications that run on a peer-to-peer network of computers rather than a single computer. In blockchain context, think of a dApp as a client application that communicates to a smart contract for interacting with the blockchain network. A good introduction to dApps can be found on BlockchainHub.

The key characteristics of building a blockchain infrastructure in Azure are:

  • Establish a secure environment that exposes protected endpoints. This can be done via Azure Virtual Networks, Azure App Services VNet Integration or Network Security Groups.
  • Develop smart contracts, using any of the available development tools, such as Block stack Core, Ethereum Studio or Truffle.
  • Automate deployment of participant components, both virtual machines and Platform-as-a-Service components. This can be enabled by Azure Resource Manager and PowerShell scripts.
  • Protect access to data and logic, with user-level authentication and authorization, by implementing Azure AD to secure apps and APIs.
  • In general, build architecture for enterprise solution integration with a blockchain ledger, leveraging Azure enterprise capabilities and worldwide distribution.

Azure BaaS, in a nutshell, represents not just a public cloud hosting provider for distributed ledgers, but an organic and integrated platform for building and delivering decentralized applications that run on a blockchain technology.




509 The Print Rooms
164-180 Union Street
London, SE1 0LH
Phone: 0208 1444 206


Important: The information contained in this website is for general information purposes only. Any reliance you place on such information is therefore strictly at your own risk. Synetec Ltd endeavour to keep it up to date and correct.
All images are copyrighted to their respective owners.