Captain’s log – data at your hook-tip

The captain log business value is that he has an app with all the tools he needs at the tip of his hook.

A new feature:

Behold the “Reveal your true face feature”

Revealing the true face

Some pirates find their interest in hiding away, and then it is handy to have an app to show the true face and spot if this is a know fellow shipmate or a rivalling pirate that deserves to be keel hauled.

The service uses a mobile or tablet camera to take a picture of the person in-question and then posts it to mutiny services for identification and face recognition in order to find who this person is.

Claiming the ACDC Craftsman since it is created using actual code with some best practices in react development: https://github.com/TheBastards-ACDC2023/Bastards-NativeApp

Final Delivery from The Bastards

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:

  1. Deep Sea Blue (#0E4A7E) – This shade of blue represents the vast ocean that pirates roamed and the mysterious depths that lay beneath its surface.
  2. 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.
  3. Rusty Red (#7B2E16) – This color represents the worn and weathered elements of pirate life, such as old ships and rusted treasure chests.
  4. 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.
  5. Sandy Tan (#D7C3A3) – This color represents the sandy beaches where pirates buried their treasure and the warm, sun-drenched environment of the Caribbean.
  6. 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!

Meet Capt’n Clawdius

Every pirate ship has to have a cat to ensure rodents are effectively ridden off the ship. Our trusty old LEGO EV3 seems to the job with sensors to ensure he paws around where suitable.

Then again, he likely cannot kill the rodents as the batteries ran out, and his trusted running mate, Marius Bluetooth, had to walk the plank, so we cannot seem to make him spin much 🙁

Badges

Embedding numbnut – Any ship cat is an integrated member of the ship

Retro – EV3 is a decade old, almost a lifetime in tech

Visualizing the Mutiny Score

With this blog post we claim

The captain is a very visual person and wanted an easy way to get a feeling if the crew is happy or not.

We created a Power BI report that show mutiny score over time for each ship.

You can filter the report in the top right corner and select the ship you want to see data for.

The boat is a picture of the ship.

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 you 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.

Naming the bastards!

Our solution is using Power Automate and HTTP trigger to accept new pirates

And put into a workflow used by our Pirate onboarding app.

Badges

Dataminer – The great database of LLM allows us to mine for awesome pirate names and visual traits for our crew.

Hipster – LLM are so hot, it will be a while until they are not. A multi-billion tech, via Azure Open AI studio cannot be beaten!

Existential Risk – It’s mining, it’s a huge learned model, living on the edge! Sure, we didn’t spend the billions training the model, but that’s hard to do on a pirate’s salary in 2023.

PirateGPT explained – Simulating mood swings

Travelling the seven seas is great fun and pirates can get as moody as anyone else. The ships current loot holding will continue to diminish in between raids and weather sickness can strike at any time. The below input is what we use to simulate mood swings, also output as logic in code.

Of course, we have no idea if this is the actual code or not, as we ask to get schematized JSON – sanitized for input into the dataverse. With mood data available we can start tracking if a mutiny is far away or close at bay.

We’re thinking the following badges apply:

The Existential Risk – text-davinci-003 has never looked better

ACDC Craftsman – documenting verbatim logic for the logical heads out there just makes sense, ensuring everyone can consume and understand the logic at hand independent of their skillset.

Dataminer – LLM are nothing but a huge heap of external data baby! We’re thinking Babels tower in blob.

From The Bastards to The Orange Bandits with love <3

We are not claiming any badge or points with this blog post. This is simply the easiest way for us to share this with our fellow pirates over by the window.

Logo

The total package

Colors

Primary Color: #f08a5d – use this on headings and text that you want to stand out.

Dark Background: #333333 – Use for backgrounds with white or orange text or on white backgrounds for normal body text.

Contrast

Orange on grey background:

Grey text on white background:

Font

This font is also available out of the box in Canvas Apps.

https://fonts.google.com/specimen/Patrick+Hand?query=patrick+hand

The Bastards Brand Guide

Claiming Glossy Pictures:

We asked AI to create a pirate color theme:

Here is a color palette that would work well for a pirate-themed app:

  1. Deep Sea Blue (#0E4A7E) – This shade of blue represents the vast ocean that pirates roamed and the mysterious depths that lay beneath its surface.
  2. 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.
  3. Rusty Red (#7B2E16) – This color represents the worn and weathered elements of pirate life, such as old ships and rusted treasure chests.
  4. 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.
  5. Sandy Tan (#D7C3A3) – This color represents the sandy beaches where pirates buried their treasure and the warm, sun-drenched environment of the Caribbean.
  6. 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.

Based on the colors we drew a logo free hand using Microsoft Whiteboard and added the colors from the color profile.

The logo should appear everywhere to create cohesive branding.

UPDATE!

We updated the brand guide based in feedback from our pirates and this is what the new logo looks like:

Font

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 use two fonts in our designs.

Headers and body text we use Lato Hairline in Canvas Apps and Lato Thin wherever this font is too thin.

Lato on Google Fonts:
https://fonts.google.com/specimen/Lato

For decorative contrast we use the font “Dancing Script”.

Dancing Scripts on Google Fonts:
https://fonts.google.com/specimen/Dancing+Script

Color contrast

OF course we also checked that having that dark grey background with white text is accessible, and it is.

We used these graphics in our app that capture new pirates into our system:

Tap the chest to reveal your new pirate self.