So, we have come into the year 2020 with some big expectations and goals. Saying ‘I do’ to the one we love in front of all our family and friends, partying the night away and finally going on that dream honeymoon. Then it hits. COVID-19. Something that didn’t even cross our minds! Government restrictions mean that we have to put these events on the back burner or sacrifice some of the privileges… privileges like having more than 30 people attend!
I know, it’s hard but I’m positive that everyone who has had their event postponed this year will have an even better event in the future! And just to help you wedding planners out there, we have released a skill to the Alexa Skill Store to give your wedding a personal touch and much laughter. This skill provides your guests with their seating arrangements, plays music and provide a custom experience programmed by you! Not only can this reduce crowding by directing guests faster to their table but it can also be a fun, automated, contact-free experience for your guests to stay safe. Yay!
All you will need is one of the Amazon Alexa Devices and an internet connection (No WIFI? Hotspot to your phone – that’s what I did at my wedding!). There are various devices you can purchase from the cheaper Alexa Dot, Alexa Echo or even the Alexa Show ranging from as little as £29.99 to £100 depending on your choice.
Once you have your Alexa Device you can visit the Alexa Skill store to enable and install the skill on your device
You can then use the awake word followed by the skills invocation name to start interacting with the skill for example “Alexa, Find my table”. We haven’t set anything up yet though, so she will respond with a message saying that we need to visit the configuration page to set up our skill and customize the responses for each of our guests. Click Here to navigate to the skill configurator page. It’s designed to be simple to setup.
It’s quite easy to get started, we don’t need to register a new account on the configuration page, we can simply sign in with our Amazon account which will link the configuration we set up with the Alexa Skill.
We are presented by three tabs used to configure our skill and give it that personalised touch. The first section is the intro page. When we first invoke the skill an intro message will be announced to welcome guests using this skill.
You can customise this as you see fit for any occasion birthdays, weddings or even meetings but seeing as we are focusing on weddings in this blog post I will write “Welcome to the Duxbury wedding”.
On the next tab, we assume you are going to have somewhere to seat your guests. In this example, we have used table names but you could keep it simple and use numbers if you prefer. It completely depends oh your table setup but these controls give us the flexibility to customise it how we see fit. As you can see I’ve named my table based on the Disney theme and I’ve called my first table “Aladdin and Jasmine”. In the Audio Reference field, I’ve added a link to an audio file that is hosted on my personal website it’s an MP3 audio file of a short soundtrack from the Disney film Aladdin called a whole new world.
We can complete the setup and associate our guests with the tables we just created. I’ve added three guests to my example
Now if we go back to our Alexa device we can invoke the skill again by saying “Alexa, Find my table” but this time she will respond with the configured responses we set up in the portal.
Example, welcome to the duxbury wedding
Example, found a table for Victoria
Okay can I get any extras? You have fallen in love with our skill, who wouldn’t? You have just made some funny personal messages for your guests attending your wedding. Hey, you even got that music to play for your friends who just love some 80’s music! But you don’t like the look of having an Alexa device ruining your entrance looking all basic. Well next we can look at customising the style of your Alexa Device for under £19.99 we can select from some premade designs or even make our own!
We hope this skill brings to your wedding some organsiation getting people to their seats, good laughter in those personal messages you setup and great memories when you recall you tried out something new at your wedding.
Click here and follow us on our Facebook Page for updates as we continue to add more features you will love and enjoy and don’t forget to tag us in your videos, comments and reviews!
All the best,
The Alexa Wedding Planner Team
The blockchain, known for the architecture behind the creation of Bitcoin and seen by most as the next big bang in technology since the invention of the internet. But what is the blockchain you might be asking? I’m hoping by the end of this blog post you will have a great understanding of exactly what the Blockchain is and why it might be useful to your organisation along with how you might create your first successful blockchain.
What is the Blockchain?
The Blockchain is described as a shared, distributed ledger. The blockchain within one organisation is useless. Only when multiple organisations use the power of the blockchain to create a decentralised ledger, can the true potential of the blockchain technology start to be seen.
Shared – The more organizations or companies that participate in the blockchain the more valuable the Blockchain becomes. Data becomes vastly visible, accessible and immutable.
Distributed – There are many replicas of the blockchain database. The more replicas there are, the more authentic it becomes.
Ledger – The database is a read/write only database. Therefore, it is an immutable audit trail of every transaction that has happened.
Blockchain truly is a mechanism to bring everyone to the highest degree of accountability. No more missed transactions, human or machine errors. Even an exchange that was not done with the consent of the parties involved. – Ian Khan
The above quote by Ian Khan gives a good description of Blockchain technology. I see a technology that allows us to create transactions that are impervious to fraud and establishes a shared truth.
No one owns the blockchain and therefore the responsibility of the blockchain is shared between all organisations using the network. This is beneficial so let’s take Facebook as a good example: I upload a picture to Facebook and tell Facebook which friends should be able to see it and I expect Facebook to do roughly what I think it will do. Ultimately though, and ignoring some legal and ethical aspects, Facebook controls my data and can unilaterally evolve it (add to it, delete it, modify it) and I am unable to do anything about it. Of course, I feel that I have control, but ultimately it is still Facebook who owns and controls my data. On a Blockchain, this data cannot be manipulated by any one individual depending on the rules that govern the Blockchain.
Distributed ledgers are governed and controlled by rules
A distributed ledger has a set of rules that specify what new information is considered valid or not, and how participants should react to it. This set of rules could be thought of as a constitution.
Sometimes called the blockchain rules, network rules, or the rules of the ledger, these are pre-agreed technical rules about how new data is handled. Participants are subject to this constitution of rules when they create or join a distributed ledger network.
For example in bitcoin, one rule is the limit to the amount of data in one block of transactions. Another is the rule to submit a hash with a specific pattern, in order to create a valid block. A third is you can’t spend a bitcoin that you don’t have.
In a private distributed ledger network, one rule could be that no transaction is valid unless a minimum of three participants approves it with their digital signatures; or for certain assets to be signed every transaction. A participant in a private network may also have legal contractual commitments to the other participants, such as service-level agreements.
The key point is that the evolution of data in a distributed ledger network is that at a technical level; there are rules about how data is handled. Before distributed ledgers, single entities had total control over their data and commitments were made only at the legal contractual / terms-of-service level.
Are there any disadvantages of the Blockchain?
In Marley Gray’s presentation, found in the recommended content of this blog, he outlined that Bitcoin only computes 7 transactions a second. This demonstrates the computing power needed to operate a blockchain ledger. It is extremely slow in comparison to other databases out there for obvious reasons. As an example, just a single bitcoin transaction has been calculated to devour as much energy as what powers 1.57 US households for a day – roughly 5,000 times more energy-hungry than a typical credit card payment. Would you prefer to pay by cash, credit or planet-wide blackout?
Data within the Blockchain has to be deterministic. A block on the chain is propagated between nodes to verify its authenticity. If we have values that aren’t deterministic, then while this block propagates between thousands of nodes the value could change causing the chain to see the new block as fraudulent and prevent it from entering the chain.
Blockchain technology is expensive. I created a private blockchain on Azure and because of the infrastructure required it spun up five virtual machines which totalled £100 per month. This was only for a trial and if we wanted to do this on an industrial level you would incur a much bigger cost. On the public Blockchain, Bitcoin miners are picking up blocks (transactions) within 10 minutes for $0.44 a block. Cost can be reduced or increased based on the cost you assign to the block. If you don’t mind the transaction speed, you can place a lower transaction cost on the block or alternatively a higher cost.
What are the avantages?
We can have a peer to peer exchange to dramatically reduce settlement time. For example, imagine we are developers for cancer research and we are sending medical advice to a testing company. On the blockchain, we would have a live update on the progress of how the medical advice affects the patient. We don’t have to call around or attempt to obtain information because we are both sharing the same ledger. Data becomes instantly available to both parties allows us to build faster data analytics and we can all instantly become more responsive.
Allows separate organisations to share a standard organised ledger. This allows for decentralization and promotes shared control which encourages data sharing:
• (1) Leads to more data, and therefore better models.
• (2) Allows for shared control of AI training data & models.
Competitors (say, banks or music labels) traditionally would never share their data. But it would be straightforward to show how, with combined data from several banks, one could make better models for credit card fraud prevention.
Who uses Blockchain?
There are a lot of companies that use the blockchain but to pull out and observe one we can look at supermarkets. Little known to the public, Walmart supermarket has implemented the blockchain chain technology to track and manage the process of food distribution. The corporate giants have improved efficiency and trust involved in the process of tracking the meat and poultry that they sell. The blockchain technology tracks information (through QR code scanning) at all steps of the process from the farmer, to the broker, distributor, retailer and everything in between.
The initiative for this was down to a Salmonella outbreak within the supply chain which took months to correct due to complicated documenting and IT that they were using. With the Blockchain, all of this data could be retrieved in seconds with AI technology.
Centralised vs. decentralised?
Even if some organizations decide to share, they could share without needing blockchain technology. For example, they could simply pool it into an S3 instance and expose the API among themselves. But in some cases, decentralisation gives new benefits. First is the literal sharing of infrastructure, so that one organisation in the sharing consortium doesn’t control all the “shared data” by themselves. (This was a key stumbling block a few years back when the music labels tried to work together for a common registry). Another benefit is that it’s easier to turn the data & models into assets, which can then be licensed externally for profit. I elaborate on this below. (Thanks to Adam Drake for drawing extra-attention to the hoard-vs-share tension).
CRUD vs CRAB
CRUD stands for Create-Read-Update-Delete. These are the basic operations of persistent storage. These actions don’t apply to the blockchain as you can’t delete or update transactions. Instead, operations on blockchain can be described as CRAB: Create-Retrieve-Append-Burn. The create and Retrieve relate to CRUD which is pretty self-explanatory. Append is appending to the transaction. Burn refers to assigning a completely random public key to the block and therefore rendering all operations as unauthorised to everyone (essentially like forgetting your key).
Bring me onto GDPR
An important aspect of GDPR on Blockchain is the fact that personal data is not to leave the EU. This is a major problem with public Blockchains, since there is no control on who hosts a node. This is less an issue when it comes to private or permissioned blockchains.
There is also a separate section — Art. 17 — on ‘Right to be Forgotten’. This concept is clearly an important one regarding ‘erasure of data’. However, not anywhere in the document, not even in the definitions part — Art. 4 — is there any explanation of what the term erasure of data actually means.
The GDPR initiative probably had only CRUD in mind (“you are always able to Delete information”) when dealing with basic operations on persistent storage. The fact that this doesn’t match with blockchain technology creates some friction. Now, because there is no definition in GDPR of “erasure of data” at this point, you probably need to interpret this as strict, which means that throwing away your encryption keys which encrypts personal data in a blockchain technology is not acceptable as ‘erasure of data’ according to GDPR.
Of course, this has consequences on what we can store on a blockchain. Storing personal data on a blockchain is not an option anymore according to GDPR. A popular option to get around this problem is a very simple one: You store the personal data off-chain and store the reference to this data, along with a hash of this data and other metadata (like claims and permissions about this data), on the blockchain.
How does Blockchain ledger compare to relational databases?
The Blockchain is not controlled by any single entity.
The Blockchain has no single point of failure.
Experts of science have developed a great understanding of the brain and through scientific study have determined that the brain is a goal-seeking organism. Whatever goal you give your subconscious mind, it will work night and day to achieve it.
Throughout our lives, some goals might take longer than others and some might just not be possible to achieve in the near future due to funds, health or whatever reasons that may be. This is why it is very important to have multiple goals in your life. Why? You might ask. Well, because the more goals we give ourselves, the more we are enabled to gain a higher percentage rate of completed goals by the end of our lives.
We are humans, and by being so, we automatically have a strong will to succeed creating the rush we feel every time we check off those goals will inspire you to want to accomplish even more. For every goal you accomplish, your mind and body are going to crave stronger challenges.
So with that being said I would like to share my current goals which I started in 2017:
I will travel to the following places:
Rio de Janeiro, Brazil
Buenos Aires, Argentina
Singapore, Thailand and Malaysia
Vacation on a Greek Island
I will visit and see the following sights:
The Eiffel Tower
The Great Wall of China
The Taj Mahal
The Great Pyramids
Climb on a Glacier in Alaska
Go on a safari in Africa
Become a certified scuba diver
Snorkel in Hawaii
Learn to sail
Ride in a hot air balloon
Go on a river-rafting trip
Attend Thai boxing camp in Thailand
Fly in a glider
Dive in a submarine
Learn to windsurf
Learn to ski
Ski black diamond level
Ski in Europe
Explore all 5 of Hawaii’s islands
Swim with the dolphins
Go horse riding
Go to the Olympics
Take one of my future children to the Olympics
Do the Three Peaks
Attempt climbing Mount Everest
Appear on TV and attempt acting
Make one million pounds
Run a 10k race
Run 14 miles in less than 3 hours
Build or buy my dream house
Own a vacation home in Hawaii
Get A University Masters Degree
Get A PhD Degree
Produce a YouTube tutorial on programming
Write a children’s educational game
Produce a large open source programme
See my future children graduate College/University
Learn to speak another language fluently
Master 5 magic tricks
Learn to sing and play 10 popular songs on the Guitar
Win over a £100 in a casino
Give a talk to an audience of over 100 people
Learn how to take world-class photographs
Type 50 words a minute
Weigh 82 Kilogrammes (13 stone)
Bench press 200 pounds
Run a mile under 6 minutes
Do a fire walk
Complete Iron man Triathalon
Take more guitar lessons
Take more piano lessons
Take more pilot/flying lessons
Have an incredible 50th birthday party
Achieve something spectacular as part of a team
Live to be 100+ years old
Visit the Achawara tribe and work with a shaman in the rain forest
Read The Soul of Money by Lynn Twist
Develop leadership skills
So if you’re like me, you love going to the classes available at your local Gym. Problem is, most people wait up till midnight in order to secure their precious class for the following week. Below you can see a Http request which I was able to book me into my Virtual RPM class!
This can then be turned into a command line application and scheduled each week.
Amazing time here, free Pizza, food and shelter.. What else do keen programmers need to get enthusiastic about hacking some code? People travel from all over the world to attend these events so I couldn’t not put an application in to become a Mentor at this event.
Personally, I can’t recommend these events enough, the Hackathons are very well run and put together to embrace a creative environment. If you are at university thinking about attending your first student hack or coming to share your knowledge as a mentor you are guaranteed to be impressed with the exceptional minds that end up hacking together.
From the 10th – 12th of March in 2017 I got to experience my first Hackathon as a Mentor.
Here is a short list of some of the projects the students who attended where hacking.
Leap Motion Gaming
The Google leap motion is super fun to play around with, one of the students used the sensor capability in a game. The sensor projected the users hand in the game and enabled you to pick up virtual objects. You had to use these objects to deflect on coming projectiles coming towards you.
This is a mug which you could send a message or picture to via an API. It was powered by the heat of the coffee in the mug and a programmer at the Hackathon programmed it to get the latest BBC news headline when a coffee or hot water was poured into it.
A little robot shaped like the mars rover, having four wheels and programmable. The robot was programmed to move around the room to specific coordinates programmed beforehand simulating some of the features the Mars Rover would be using while exploring Mars.
Hand Controlled Hover Craft (Drones)
Controlling the movement and altitude of a drone using nothing but leap motion.
Today while taking a break, browsing my Facebook feed, I saw a sponsored add. At first, I was reluctant thinking here we go another money grabbing scheme which will ask you to register and require money for continuous play. A game which isn’t challenging or aimed for younger less experienced developers, oh boy was I wrong.
Once signed up I played some puzzles and AI tasks which took me about an hour to complete. I had to think about programming coordinates to move a game character to reach a goal.
Just when you think things couldn’t get any better there are achievements, leader boards and community challenges!
The above screen shot was a group game where five other developers joined to see who could complete the task in the fasted time, I failed to beat KnittingDev but I aim to get better and seek my revenge! Participates can also choose there own choice of language to make this as easy or as hard as you like depending on your knowledge of a programming language.
This was an unexpected turn to the day where I found another great excitement in coding. I honestly can’t rate this game any higher in my eyes. I think it’s a wonderful way to seek challenges as as developer. I rate this game 10 out of 10 and I hope other developers will take this up and join the leader boards of developers!
The idea here is to send over commands from a artificial intelligence communication bot we call HUBOT, this bot will be listening in a work based chat room for certain terminology.
When the bot picks up a phrase “Hubot please make a brew” it will send the commands to the coffee maker which will start processing the coffee. I intend to complete this project and allow my work colleagues and I to send it commands from either the app or the Hubot chat room.
This will have to be deactivated at certain time intervals to prevent hacking the device which I’ve found to be possible here.
This is going to be an exciting experiment and I’ll keep you posted as I go along!
I’ve recently took it upon myself to take part in a Microsoft exam. Throughout this blog I will be constantly updating it with revision material I found useful when revising for the exam.
A brief 45 minutes video well worth watching which explains what to expect when participating the exam, this is well worth a watch and I recommend starting here to get a overall look at the exam. Christopher Harrison also demonstrates some none exam questions to challenge you.
These videos staring Jeremy Foster and Micheal Palermo are both free to the public and give in great examples in detail on each aspect of possible exam questions. There is a lot of hours of content to get through but depending on your experience you can speed up the videos and skip a lot of what you know
I’d also like to point out that some people in the comments didn’t pass the exam from watching these videos alone, so to enhance your possibility of passing you should also give yourself practical projects to accompany them.
This objective may include but is not limited to: choose the appropriate controls based on requirements; implement HTML input types (for example, , , ) and content attributes (for example, required) to collect user input