Let us tell you a story about a pirate captain. She was paranoid and very afraid that his creaw would mutiny. She wish there was a way to keep track of the current mood of every crew member before and after raids, a way to be prepared and know hos to distribute the loot to keep everyone happy, but still keep as much as possible of the gold to herself.
As we all know, if you want something done you need to do it yourself. And as any good technology savy leader the captain set out on a quest to find a solution.
She gathered the best technology savy pirates she could find, put them in a room with loads of beer and food, and locked the door for three days. Now, let’s look at what the team actually created.
This is the team:
Capture Pirates
First and foremost the captain needed a smart, fast and easy way to capture a picture and details about the crew members. You can not rely on pirates to shop up for onboarding, so the captain needed a mobile app that would allow her to take pictures of the pirates as they enter the ship on the way out to seas.
How the app works:
The app is a Canvas App with a camera control on the first screen
When user click the camera control they navigate to the next screen where they will see their picture.
They can go back and take a new picture if they are not happy, or move on to “Piratefy me”.
If user click the “Pratefy me” button a power automate flow is triggered. We pass the image base64 value as a value and store the reply value in a variable.
the Canvas App the user will see the newly created name and their picture Piratified
Automagic
The app captures an image which is then sent to be classified correctly as man/woman/person to counter for the bias of mail pirates in the image training model (Stable diffusion v1.5). Next the classifier input is used when we infuse the captured image with pirate traits, realising the true pirate you as a new photo. To go with the cool pirate you, you need an authentic pirate name matching your new look. This is all achieved via Azure Open AI (PirateGPT – text-davinci-003) which in turn generate proper JSON objects to be sent back to the app.
As the App now has captured your name and look, this is sent over to Dataverse for safe keeping. And we know have good track of a ships crew. And pirate life can be summed up as, raid, get money, be happy, spend money, get broke, become unhappy, then raid some more or you stage a mutiny ridding the ship of the current captain to star over.
This lifestyle is simulated by the PirateGPT mood generator. Every hour the mood per pirate on a ship is re-assessed based on the previous mood, the current loot left on the ship – with a random factor of weather, because as we know, sun is cool, rain and storm is bad.
The mood data is kept for safe keeping in the crew mood Dataverse store, and displayed in the real-time Mutiny PowerBI dashboard allowing the captain to easily plan new raids or not.
Pirate GPT
/getcrewmate
Prompting PirateGPT with sample data and our JSON schema, new information is generated on the fly.
/simulatecrewmood
Prompting PirateGPT describing the mood and loot scale we use on a ship, as well as factors which influence a pirate becoming grumpier and grumpier, or happier – we get authentic sample data to illustrate the day to day operation and workings on a pirate ship.
Stable Diffusion
Running in a local data center in Oslo city center our large image model is ready to respond and iterate out the most amazing pirate shots (most imagery delivered by the bastards is auto image generated based on prompting).
/txt2img
Send in a good prompt and you get something back
/img2img
Send in an image and prompt and they are fused together into something novel
/interrogate
Send in an image and get it described
The mutiny data model
Creating a model to prevent pirates from starting a mutiny requires a model based on pirate infrastructure and processes.
Functional requirements
A captain needs to know how close the crew or an individual priate is to start a mutiny.
In case a captain has a fleet of ships the model handles seceral ships. The ship has a name but most importantly a loot. The loot provides for food, maintenance, drinks and adult entertainment. Low loot results in sinking moral and a drop in mood amongst the pirates.
For a pirate a image is important. You want to look good on the most wanted pictures, and off course create fear amongst enemies and potential victims of a raid. For the captain the knowledge of their mood is important, and their chance for coordinating a mutiny.
Calculating Mutiny score
Based on these basic facts the mutiny score can be calculated. When the ships loot is high the captain can provide for the crew and reduce the chance of a mutiny. But the lower the loot the mood will sink.
The Mutiny score is regularly updated while the loot is reduced. Monitoring the mutiny score the captain is able to plan when a new attack is to be conducted.
Captains Black book
The Captains Black Book is a model driven app that allow for some quick and easy administration of ships, pirates and insights into the Mutiny Scores.
Wavy Seas
The captain is a very visual person and wanted an easy way to get a feeling if the crew is happy or not. The report can be filtered from the top right corner and select the ship to see data for. The boat is a picture of the actual ship for easy recognition and link to the real world.
The blue line at the bottom, looking like water, is actually a line diagram showing the mutiny score over time. If the score is high the Captain will see a rise in sea level, and if it’s low the sea level will be low.
If the score is consistently low the water will be nice and calm, but if the score varies because of unsteady mood in the crew the water will have big waves. If the score is consistently high the boat will look like it’s going under.
Captain’s log
Every captain needs to have resources available at the fingertips. A nice React native app has quick options to check what’s going on at the ship, and also a useful feature to find the real person behind a pirate – reverse imagery of the capture a pirate app. Repo at: https://github.com/TheBastards-ACDC2023/Bastards-NativeApp
Meet Capt’n Clawdius
The ships cat rolls around the best it can, but with flat batteries and Marius Bluetooth to hold his hands, the sensors are not of much use. We think the ship be rat infested prreeeeettty soon!
What we never got around to
The team set out on the quest to create a model for optimal distribution of loot across the crew. We were able to visualize the mood of the crew with the Power BI report, but it doesn’t show the captain how to distribute loot to maintain a low mutiny score. The team simply didn’t prioritise this task because they had too much fun creating the Capture Pirate app and the PirateGPT image generation.
The team members have very different backgrounds going into this quest;
The Captain had some experience creating apps before, and was also responsible for making the graphics and keeping the other team mates in check and on task.
The First Mate is a veteran and has a lifetime of experience in technology – but in the face of endless new possibilities through AI and completely new tools in hand, even the most senior of us will feel the heat of a steep learning curve.
The Boatswain is a rouge sailor that has been in the game for a long time. He suddenly went into his own bouble half-way through the quest never to be seen again. When the quest was done the rest of the team found bits and pieces he had created that magically fit into the rest of the solution as a whole.
The Powder Monkey new technology well, but had never seen these new and shiny tools before in his life. With an impressive patience and “tech me everything” attitude he got promoted from Cabin Boy to Powder Monkey in only three days!
Collectively the team learned a lot. The novice got started, found his way, got amazed and most importantly learned how to learn! The veteran adopted new tools and created the magic dust that makes the whole solution the wonder that it is.
Even though the team didn’t get as far as they wanted to go during the quest they followed their instincts and recognised that it’s the journey that matters the most, not the destination. The Captain did well in creating a great vision that inspired the team and make them pull in the same direction. Somewhere down the line the captain decided that it was far more important to learn new skills and try out new things then to get to the finishline. What was built was a great foundation that can be built upon and enhanced over time.
Most extreme business value
The solution the team created is abviously HR’s wet dream in terms of onboarding, monitoring employer satisfaction and keeping track of the mood of your workforce.
Using this solution will equip the management team with the tools they need to keep up to date and be able to make changes where needed before empoyees leave the company.
Excellent user experience
Imagine this being a manager taking pictures of new employees. We all know that Gen Z are used to looking at themselves with prettifying filters. This way the old middle manager can take pictures of their new employees and let Open AI add the familiar filters so that when the Gen Z employee see their own new profile picture they will actually recognize themselves.
All good brands with some selfrespect has special fonts that is designed to give the user crafted associations. Never underestimate the effect of a good font.
We updated the brand guide based in feedback from our pirates and this is what the new logo looks like:
The color profile:
We asked AI to create a pirate color theme:
Here is a color palette that would work well for a pirate-themed app:
- Deep Sea Blue (#0E4A7E) – This shade of blue represents the vast ocean that pirates roamed and the mysterious depths that lay beneath its surface.
- Sun-kissed Gold (#FFC72C) – Gold is a symbol of pirate wealth and adventure, and this shade of gold has a warm and inviting feel, like the sun shining down on a pirate’s treasure trove.
- Rusty Red (#7B2E16) – This color represents the worn and weathered elements of pirate life, such as old ships and rusted treasure chests.
- Weathered Wood (#6F5F3E) – This color is a nod to the wooden deck of pirate ships and the rough-hewn timbers used to build pirate hideouts.
- Sandy Tan (#D7C3A3) – This color represents the sandy beaches where pirates buried their treasure and the warm, sun-drenched environment of the Caribbean.
- Stormy Gray (#5E5E5E) – This color represents the stormy seas that pirates often had to navigate and the treacherous conditions they faced on their journeys.
These colors work well together to create a cohesive and visually appealing palette that captures the essence of the pirate theme.
Killer app
The canvas app is an end to end solution that is working beautifully and can easilly be implemented as is in any company without much alterations. If taht’s not killer in three days, I don’t know what is.
Rock Solid Geekne
Connecting to our PirateGPT and picture manipulation, connecting to sensors and robots shows how our solution makes use of technology and we use geekness to find creative solutions. The use of hacks and trying to teach new crewmates how to provide help during extreme conditions lifts the whole team.
The future
If the team had more time they would try to evolve this solution further. these are some of the ideas:
The tech crew has worked on possible solutions to provide the captain with intelligence in order to keep morale up. Here is a list from our backlog, but du to sea sickness not they are in the planning state.
Most Wanted
Constant monitoring of FBI most wanted API to check if we are listed and have to sail incognito.
Most valuable victims
Always keep track of where the loot is.
Drinks and adult entertainment
Where is the best and closest lesiure spots
Thank you for an amazing time!