General

RSS Feed


12th March 2019

Laurie Voss, a Co-founder and Chief Data Office of NPM(A package manager for JavaScript, and a huge database of public and private JavaScript packages), had an interesting story to tell on Twitter:

My first reaction was something akin to "How the hell do you do this by mistake?". Surely publishing a package to NPM has just enough friction that you don’t publish private IP to a public repository.

You have to also keep in mind thatNPM have supported private repositories since 2014, and also offer a full enterprise solution already, NPM Enterprise.

11th March 2019

So, there’s been a ton of new information shared about the upcoming Harry Potter AR game, Wizards Unite. And it’s certainly shaping up to be an incredible game!

Here’s the back story:

A calamity has befallen the wizarding world, causing artefacts, creatures, people, and even memories to mysteriously appear in the Muggle world. Witches and wizards from across the globe must come together to solve the mystery of The Calamity, overcome the confounding chaotic magic that surrounds these “Foundables,” and return them to their rightful place, keeping them safe from Muggle eyes.

Your journey begins as a new recruit of the Statute of Secrecy Task Force, established by the Ministry of Magic and the International Confederation of Wizards for the purpose of investigating and containing The Calamity.

From the story alone, there’s a massive scope for what the game could turn out to be. On one side of the scale, it could have been a simple rip-off of Pokémon GO, but essentially a hide-and-seek game with a Harry Potter theme. But instead, what we’re getting is a much more all-rounded role-playing game!

Image

Of course, at it’s an AR game, one of the key mechanics will be exploring the world, finding some of the “Foundables”, casting spells, and also Portkeys that offer a full 360 AR experience out in the real wold. That already feels to me a more immersive experience than Pokémon GO (And I’m a big Pokémon GO player!).

Where I think the richness of the game will come from, is the things like potion making, challenging other wizards and foes in Wizarding Challenges, and developing your Wizarding skills while specialising in certain professions.

It sounds like a game with many ways to play. You can simply explore the world, while finding “Foundables”, Portkeys, potion ingredients, etc. You can compete with other players by battling with them at Fortresses, but you can also team up with them and compete Wizard Challenges together. And at the same time as all of that, you’re developing your own character, gaining new skills, and just taking your own route through the game.

One thing I’m unsure about though, is the “Spell Energy”. I’ve never found a mobile game that has some kind of perishable energy source to be that great. As there’s usually long waits to refill, mostly with the aim for players to spend money on in-app purchases. You can find food and drinks at “Inns”, which will be in certain places around the world, and will replenish your Spell Energy. Hopefully there’s enough of them so it doesn’t inhibit gameplay.

My other worry is that the game will be too rich. Sure, I wrote earlier that it’s one of the reasons why I like the sound of this game, but maybe other people won’t appreciate it. As not everyone is as well versed in the Harry Potter universe as others (me), and a steep learning curve for a mobile game may not work out well.

But despite how anyone else finds it, I can already tell I’m going to be really addicted to this game.


You can find out more about Wizards Unite on the website, and also find more of the details I mentioned on their blog.

1st March 2019

There are loads of apps that track your Macs CPU usage. But only one of them uses a running cat to visualise it.

ezgif.com-video-to-gif.gif

RunCat is a free Mac menu bar app that features a running cat that adapts to your CPU speed. If it’s running relatively slow, then the cat will just be running at a leisurely pace, but if it’s running really high (try building a huge Xcode project), then the cat will go crazy!

It’s really fun!

Runners

It’s not just a cat either, you get to choose from 21 different “runners” for free – Cat α, Cat β, Cat γ, Cat Tail, Mock Nyan Cat, Parrot, Human, Push-Up, Sit-Up, Rubber Duck, City, Sausage, Dots, Dinosaur, Terrier, Hedgehog, Horse, Penguin 2, Hamster Wheel, Octopus, and Steam Train.

There’s also another 21 runners if you want to pay for them – Cheetah, Dog, Puppy, Rabbit, Frog, Bird, Penguin, Dolphin, Dragon, Owl, Cogwheel, Bonfire, Drop, Rocket, Pendulum, Newtons Cradle, Sine Curve, Pulse, Coffee, Reindeer & Sleigh, and Snowman.

And if you really want to personalise RunCat, there’s a paid option to unlock the “Self-Made Runner”, which will let you create your own animation to track your CPU usage.

Options

There are a few options in RunCat to change the way it works:

  • Show CPU Usage – This puts the CPU usage percentage as text next to the runner.
  • Invert Speed – This means the runner will be running fast when your CPU speed is low, and vice versa. Sounds weird to me.
  • Flipped Horizontally – This flips your runner, so it will run in the opposite direction.
  • Launch at Login – I shouldn’t need to explain this.

Download

Check out the RunCat website, and download RunCat for free from the Mac App Store.

25th February 2019

Back in August last year, I shared some information about the minimum threshold, in regard to getting payments from the iTunes Affiliate program. The issue back then, was that as the app program was ending, any money sitting in currencies that were below the minimum threshold, would be forever stuck in limbo.

I was worried about this, so I asked the Affiliate Program team. They responded with some good news:

Regarding App Store commissions, we will waive the payment threshold requirement after the program change takes place in October. These payments will be available to you approximately 60 days thereafter with our regularly scheduled invoice cycle. You will be able to release these payments once they have been received by Performance Horizon and processed.

So the threshold would be lifted, and they also informed me that the payments should be all be released by mid-December. Perfect.

However, on Friday I decided to query them about this again. As I heard from yet another person saying that the threshold still seems to be there, and they cannot release any payments. Even though I’ve had some released myself, that would have previously been below the minimum.

This time, they came back with a very clear statement. Which I presume is directed towards the balances left in my own account:

At this time, all available currencies are below the absolute minimum 2 GBP threshold and cannot be released.

While they’re not saying that all money will be paid. I think it’s reasonably understandable that 2 GBP is a hard-limit. I can’t imagine after converting currencies, and then adding on fees for the actual payments, that it would be beneficial for anyone.

At least this case should now be closed.

20th February 2019

tl;dr it’s not a thing

What It Is

Combined Emoji: 🏳️‍🌈⃠

Modifier: ⃠

Image Example:

It’s a unicode character (U+20E0 COMBINING ENCLOSING CIRCLE BACKSLASH) that acts as a modifier. Emojipedia included it in a post titled “Fun Emoji Hacks” back in September 2016.

Based on the platform, and font being used, it may appear differently. But the idea is that it appears over the previous emoji.

Here are some examples:

(These may appear differently depending on what you’re viewing this on)

  • 😀⃠
  • 🤯⃠
  • 💩⃠
  • 👍🏻⃠
  • 🐸⃠
  • 🌕⃠
  • 🥩⃠
  • 🏈⃠

Does this mean Apple is “anti” poo, frogs, or American football? No.

What People Have Been Reporting

They’ve basically followed the rhetoric that it’s a problem. Some report it as a glitch, others a separate emoji, and it seems they’re trying to create a problem out of nothing.

The Independent – “ANTI-LGBT EMOJI SPARKS OUTRAGE ON SOCIAL MEDIA”:

A new emoji with a clear anti-LGBT message has sparked outrage on social media.

Pink News – “People are mad at Apple about this new anti-LGBT emoji”:

…the arresting image seems to be a glitch in the software.

Out – “There’s a New Anti-LGBTQ+ Emoji and We Have Questions”:

Several people took to Twitter to question the emoji’s origin, since it is not an official emoji, but rather seems to be an aberration or glitch.

Instinct Magazine – “A New Anti-LGBTQ Emoji Has Taken Social Media By Storm”:

A new anti-LGBTQ emoji is popping up on social media.

Heavy – “Pride Flag Emoji Appears to Be Homophobic”:

An LGBTQ pride flag with a strikethrough symbol layered across it has appeared on Twitter.

Paper Magazine – “WTF Is This ‘No Homo’ Emoji?”:

Late last night, the “no homo” emoji — a struck-through pride flag — began popping up around Twitter.

Twitter Moment: @VIKTORIOUS – “Newly Discovered Flaw in Unicode Leads to Homophobic Tweets”:

This flaw was unexpectedly discovered by twitter user @mioog and jokingly posted it.

19th February 2019

I had an interesting day at work today, as I was configuring a new project work with our CI server, and have things like Unit/UI Tests in a readable format, and also convert the code coverage into something that could be stored along with the build artefacts.

Just for some background, we use Bamboo as a server, and I’m pretty limited with what I can actually configure myself, without getting someone with higher privileges. So I try to work within my limitations, and see what I can come up with.

I use Fastlane as the main solution to manage the whole process. And that means I can use the scan and slather commands to do the heavy lifting for the testing/code coverage. The way I had to integrate it in our CI server was reasonably simple. The test results were handled by setting the output type to junit, and then adding a simple JUnit Parser task on Bamboo. The code coverage was slightly more complex, as it needed me to run a python package that converts it into a “Clover” format that Bamboo could understand.

What was more tricky, was getting this data nicely formatted when it was sent to our Slack room. The previous build plans all had notifications handled form Bamboo, and it just gave a short message with the number of tests that passed/failed. I wanted more insight this time though, as I knew the test data was available, and also that I had code coverage being generated. I decided that the simplest (maybe it wasn’t in the end) solution was to just find a way to read the information from the .xml files, and send a custom message to Slack as part of the Fastlane process.

What I ended up with is a kind of monstrous-masterpiece. In Fastlane I had the Slack command being called with some basic information about the build, such as the branch, project name, and whether it passed/failed. But to get the results of the Unit/UI tests, I thought I’d use grep to find the line in the junit file that had text like “tests=100 failures=0”, I then used sed to clean up the surrounding text, and had the final output as “Passed: 100, Failed: 0”. The code coverage was slightly harder. I used grep and sed again in the same way to find the total code coverage, but it was formatted like “1.00000000”, and I wanted a percentage. So I piped that through bc with a small calculation, and they’re not formatted as a percentage with two decimal spaces.

Then with some magic of environment variables, I added two build-specific URLs to the message payload. One for the build details, and the other which linked directly to the code coverage report.

What I ended up with was something like this:

  • iOS App
  • Tests Passed: 100, Failed: 0
  • Code Coverage 100.00%
  • Coverage URL https://build.com/coverage/IOS_BUILD_99
  • Build URL https://build.com/IOS_BUILD_99/something
  • Result Success
  • Git Branch master

I’m not sure if all of that is relevant for each build, or if I’ll have to include some other things I’ve forgotten about. But what I can say, is that it was really fun to come with all of these little scripts that come together with something so simple at the end. And it’s quite likely that no-one else seeing the messages will have any idea the lengths I went to to make everything appear so simple.

11th February 2019

(Image credit: BBC Earth)

If you’re interested in nature documentaries, then the BBC have quite the announcement for you. In two news articles (linked at the bottom), they announced 8 new television series about natural history.

The five main shows are:

  • Perfect Planet
  • Frozen Planet II
  • Planet Earth III
  • One Planet: Seven Worlds
  • Green Planet

And they also announced three extra shows:

  • The Mating Game
  • Primates
  • Earth’s Paradise Islands

That’s such a massive commitment from them, and I’m already super excited.

Perfect Planet

In the five-part series, we’ll see how the entire planet which is seemingly “perfect”, operates. It will show how the weather, ocean currents, solar energy, and volcanoes all play their part in supporting Earth’s diverse biological population. We’ll also get to see how certain animals are well-suited to their environments, such as the Vampire Finches in the Galapagos, which are part of the diverse group, known as Darwin’s Finches.

Episodes: 5 x 60 mins

Transmission: 2020

Frozen Planet II

Ten years after Frozen Planet first aired, the second series is being released. As the name suggests, it focusses on the quarter of the earth that is entirely frozen. Animals such as the Siberian tiger, snow monkeys, penguins, and polar bears all thrive in cold conditions. But as temperatures rise, they might not be able to cope as easily.

Episodes: 6 x 60 mins

Transmission: 2021

Planet Earth III

Following on from the second series, that aired only back in late 2016, is coming back for a whopping eight-episode series. As usual, improvements to technology, such as robotic cameras, better submersibles, and stabilised rigs, will only help us see the planet in more detail.

Episodes: 8 x 60 mins

Transmission: 2022

One Planet: Seven Worlds

This series will be split into seven episodes, one for each of the continents (Well actually Eurasia is one continent, but people treat it as two). We’ll see how distinct each continent is from each other, and how they have shaped the life that’s found there.

Episodes: 7 x 60 mins

Transmission: 2019

Green Planet

Something that sometimes gets ignored on tv documentaries, is plant-life. Usually, the focus is on the animals living in specific habitats, but this series will focus on the surprisingly intricate life of plants.

I’ve read a lot on how trees communicate, using electrical signals through their roots (that are connected by fungi), so I hope this gets shown in more detail.

Episodes: 5 x 60 mins

Transmission: 2021

The Mating Game

Okay, so nearly every species on the planet needs to find some kind of partner to mate with. This series will show how various species have completely different ideas of what’s the best method of finding one. Some fight, others sing songs, and some dance. This sounds like it could provide a very interesting insight into unknown behaviours of animals. And there’s a technological bonus with this series, it’s being filmed in 8K!

Episodes: 5 x 60 mins

Transmission: 2021

Primates

There are a huge number of species of primates. Including apes, lemurs, and monkeys. They’re found all over the planet, in vastly different habitats from one another. And there’s one writing this very blog post. We’ll get to see new sides to these animals, how they use tools, solve problems, and also have a glance into their politics.

Episodes: 3 x 60 mins

Transmission: 2020

Earth’s Paradise Islands

Madagascar, Borneo, and Hawaii, are all exotic and remote islands. And in each of them, there’s fascinating animal species, and human cultures. So it sounds like it will be two sides to each story.

Episodes: 3 x 60 mins

Transmission: Unknown


Sources:

24th January 2019

Quick Look, the infinitely valuable tool on the Mac that lets you near-enough instantly preview a file. It’s really impressive the number of file formats it supports, but there are always going to be a few things it doesn’t. And that’s where plugins come into it.

One great one that I discovered via twitter today is QuickLookJSON. I’m sure you’ve already guessed what it does. But anyway, I may as well show you as well.

It not only displays JSON files though, it indents them properly, applies a colour scheme, and also lets you expand and collapse any of the data. That last one alone makes it super easy to navigate through a big JSON file.

To install QuickLookJSON, you can either install it manually or do it via Homebrew. The only command you’ll need to run is:

brew cask install quicklook-json

There’s a bunch of other plugins that add further support to Quick Look, like adding syntax highlighting to code, rendering Markdown, and even allowing navigation through a .zip archive in the preview. You can find all of these on one page on GitHub, thanks to Sindre Sorhus.

17th January 2019

I ran into a situation at work today, where I was already using a UILabel to display text, but it was styled in a way that really needed some padding.

UILabel doesn’t directly support this, and the most common way to get around it is to embed the UILabel inside a UIView, and control the constraints that way. I didn’t really want to do that for what I was doing, and I also wanted to just make my own label that could handle padding.

It didn’t take long and was a lot more straightforward than I thought. I subclasses UIClass, added a UIEdgeInsets variable, and then made sure that intrinsicContentSize, sizeThatFits(_ size: CGSize), and drawText(in rect: CGRect) took that into consideration. So it still works perfectly with AutoLayout.

It’s certainly not a major open source project or anything, but it could be a quick way to add padding support to a UILabel!