Pocketpedia Links and iOS 9

September 16th, 2015

In iOS 9 Apple has made opening links from Pocketpedia slightly better but also slightly worse. The good news is that linking to another app now displays a small text button on the top left hand corner of your screen that lets you quickly back track to Pocketpedia without having to go through the home screen or use a multi-touch gesture. So digging deeper into an HTML, IMDb or PDF link from Pocketpedia is faster and more natural and has a quick return.

Peter iPhone Search

Peter iPhone Search

The bad news is Twitter was abusing the ability to open links with other apps to detect what apps were installed on your device and then targeting advertisement based on this information. Apparently the list of apps checked was as big as 2,500 different apps.

Apple makes a fuss about the need to approve and control the App Store to prevent malicious behavior, yet they didn’t simply ban the Twitter app, instead they put the burden on all the other developers. We are now required to list within our app all possible link types that you might want to open.

This new information goes inside the apps info.plist file under the key LSApplicationQueriesSchemes. Luckily there is no restriction on the number of links that can be listed so far. Pocketpedia for iOS 9 has included a smallish list of the most common types that our users use, such as pdf://, epub://, iBooks:// and imdb://. The problem is that our users are a varied bunch and use all kinds of apps. So if you find that a link to your favorite app from Pocketpedia is no longer listed, please drop us a note with the URL scheme to the name of the app and we will be sure to include it in the next release.

A single person using a single app means we have to list that URL scheme in Pocketpedia for all users. If only a small percentage of users are using a unique app, soon our exception list will grow quite large. But as I said, for now there are no limits and hopefully Apple reviewers will not start complaining that we are listing too many URL schemes.

Apps not updated for iOS 9 have a little leeway of being able to ask for 50 random URL schemes. We petitioned Apple to make this the default via an Apple bug report, but it never came to fruition. Each individual user is likely to only use a few favorite apps from Pocketpedia so a lower limit such as 20 random links would have been a perfect solution and it would have solved the abuse issue from Twitter without any code changes required for other third party developers.

Out of Africa

I find it discouraging that an iOS 8 app gets better support and treatment than an app developed for iOS 9. Especially since the technology exists and is implemented to allow a small number of URLs and could have worked beautifully paired with the new exception list. But on the upside, we now get full Spotlight integration, so you can search your media directly in Spotlight.

Welcome to the Media Search Party Spotlight in iOS 9

September 16th, 2015

You have always been able to search your movies, books, albums and games inside Pocketpedia with the integrated search field at the top of the collection view. Now you can also initiate searches directly from the Spotlight search in your dashboard thanks to third-party Spotlight integration in iOS 9.

The Spotlight search will not only list all the matches across multiple apps but also across multiple media inside Pocketpedia. Spotlight even knows the last item you were viewing in Pocketpedia, giving it more relevance in the search results.

Robert Redford

Apple wants to limit the amount of data that it is forced to index so only the main fields are listed with Spotlight. When you need a deep search (for example searching the awards field) you will have to perform that search in Pocketpedia’s regular search bar directly.

Peter iPhone Search

Peter iPhone Search

Searching directly in Spotlight will list a number of results from different sources and three results from an installed app. There is a small “Show more” button that will expand the Pocketpedia results to include all the matches in your media.

Clicking on the results will take you straight into Pocketpedia’s details view. Linking inside Pocketpedia has also been improved so that you can now easily get back to Pocketpedia after opening a link, using the button at the top left of your screen. Moving between apps now feels natural. (Unfortunately links have also become a bit more limited.)

Peter iPhone Search

Peter iPhone Search

Siri does not yet integrate with the third party index so you can’t ask your phone, “Search for The Princess Bride in Pocketpedia” or even more convenient “Do I have The Princess Bride in Pocketpedia?”. Looking forward to this improvement in iOS 10. It would cement iOS as your one and only private assistant.

Pocketpedia 3.3.3: Sorting Sections

July 3rd, 2015

The latest Pocketpedia version, 3.3.3, is now live in the App Store. Among a few bug fixes the biggest change are new section headers for the current sorting selection. These allow you to see what group of the current sort an entry belongs to right away without having to tap deeper into the details. For example the genre sorting on any of the Pedias.


Useful in several other fields as well that will be enabled for the new sorting, such as rated.


Although director/author/artist/platform are visible in the item listing view we still included the section headers as it helps to group all the items visually together. The section headers are simple so that the effect is not too distracting.


Hope you enjoy the new version and let us know what you think!

Pocketpedia 3.3: The iPhone 6 Version

April 24th, 2015

Collections in Pocketpedia iPhone 6

Books in Pocketpedia iPhone 6


The latest version of Pocketpedia is out and includes support for iPhone 6 and iPhone Plus.

We apologize for the delay in getting this update out there for users sporting the new iPhone sizes. It took us only a month to get the iPhone 6 sizes ready and tuned up, but then we also wanted to add a few extra features that we had been working on. Specifically swiping between details and covers views without having to go back to the list view. We ended up having technical issues with the animation but because we felt close to a break through kept delaying the release.

But now we have gone ahead and released the iPhone 6 update and held the swiping and other updates so that we can work on them some more.

Hope you enjoy all the extra space on the new iPhones as well as not having to look at slightly blurry icons that where being upscaled to fit all the real estate on the iPhone Plus.

Update: 3.3.1 is out with a quick fix for a crashing bug on the iPad. Apple granted us an expedited review, so no wait on the review queue.

Discogs’ API Developers

March 25th, 2015

Although the internet is overflowing with deep data most of it is trapped in old APIs that make working with the data complicated. Wikipedia, one of the largest repositories of contributed information in several languages, still relies on an old MediaWiki API that is almost useless at any meaningful search. Sites have sprung up to try to deal with these shortcoming such as DBPedia that tries to wrangle all this information into a standard meaningful API. But how great would it be instead if Wikipedia developers actually created and maintained a powerful API. It would mean giant leaps to the integration and usefulness of Wikipedia. All of the sudden any app would be able to take advantage of all the crowd sourcing done in Wikipedia in a reliable way.

As much as I wish the above for Wikipedia, this blog post is about the developers who have done just that. The Discogs developers have been constantly maintaining their API. Although they had gone down a path I did not approve of recently with adding limits to the number of images that could be downloaded per account as well as requiring OAuth verification, that was complex and cumbersome to implement. They are now fixing those issues while maintaing backwards compatibility. So the good news is that our search plugin for Discogs will continue to work without update. We have already used the Google OAuth framework to implement authentication with our own private account, to make it as easy as possible for users. But new developers wishing to integrate Discogs will have a much easier time using a simple key/secret pair. The 1000 image limit has also been removed and the signed URL provided directly in the downloaded information. This is the kind of simplicity one wishes in all APIs.

I mention Discogs by name only because they are the latest site in adding simple new features to make accessing their data by their users easier. But the truth is many developers have been doing an extraordinary job sharing their data via an API. The TMDB API always comes to the top when I am asked about good API designs, it has been easy to work with and 100% reliable for DVDpedia. The TV Rage and TheTVDB are more complex APIs but work well all the same. In the music world MusicBrainz has been solid. MovieMeter has been moving backwards in features since maintaining the original API required a lot of work for a single developer. BoardGameGeek has an API that is embedded into their system that works but could do with some 2015 technology improvements. But speaking of improvements the API that could really do with some love is the Library of Congress. Although now using a new SRU standard, it’s still based on a system that is decades old. But it seems updating the way libraries share their catalog is a gigantic undertaking. The above list is not extensive as there are many other search sites with APIs that we are thankful exist: OFDB, Open Library, Google Books, Freebase (Bought by Google), Amazon AWS and AbeBooks.

We look forward to a world where standards improve, for example JSON format has been marvelous at making integrating APIs easy and consistent. Some day information on the internet will be truly available to our future computer program overlords that will do all the communicating for us and present the information we want on command. Hopefully they will be able to even update themselves as data improves. In the meantime we hope developers continue the hard work of maintaining all these endpoints and adding more where needed.

Twitter Cards

March 9th, 2015

Great news, both Bruji.com and the Doghouse are fully Twitter Card compatible right now.

What does that mean?

It means you get these nifty cards with the product image and a small summary when you tweet a link from either our Bruji products or a Doghouse item.

The cards will look something like this:


Pretty nifty right?

What can you do with these cards? Conquer the world!

Well, OK, maybe not conquer the world, but lots of other things, how about being a better friend? Everyone wants to be a better friend, right? And what do good friends do? They help each other.

So let’s say you’ve got a friend who is down in the dumps and needs a little joy in their life. Instead of sending them 140 characters of Hallmark text in a tweet you can send them a link to a movie that will lift their spirits and make them whole again. With an awesome Twitter Card from the Doghouse, it’s as easy as sending them the link in your tweet. For example, in order to send my friend Percival Downtrodden the link above to the wonderful Midnight Run movie I’d send him a tweet with this link:


That’s it. Our amazing website technology does the rest and he ends up looking at the card above in his tweeter feed and,hey  presto! his life is instantly better.

But wait, there’s more!

Why settle for sending a mere movie? Why not go full-hog and send him a link to DVDpedia so he can fulfill all his movie-managing fantasies? Surely that will cure his blues right up!

Something like:

“Dear Percival, don’t be downtrodden, get this app and your life will be instantly better: http://bruji.com/dvdpedia/”

And Percival Crestfallen will receive the tweet with this uplifting image:


Instant cure!

So go ahead, tweet away like crazy, secure in the knowledge that you are, finally, making the world a better place.

Labeling Books Properly

January 14th, 2015

See the whole explanation here


So you love comics (who doesn’t) and you want to make sure your collection gets the royal treatment in Bookpedia and Doghouse. Here are a few tips on how to accomplish just that.

The most important thing you can do is label your comic properly so that Doghouse recognizes it as a comic. It’s actually quite simple, all you need to do is set the Format to Comic or Graphic Novel in Bookpedia before submitting it to the Doghouse.

You can also use Genre if you don’t want to set Format to Graphic Novel.

Use the comics field and Doghouse will recognize it as a comic. For example, if you fill out any of these: inker, penciller, letterer, Doghouse will label the entry as a comic because only comics will have these fields.

What if you use Bookpedia in a language other than English? Check the full instructions for details

In Bookpedia create a Smart Collection to quickly locate your comics.

I have a Smart Collection that looks for any of these cases:

Format or Genre contain Comic

Format or Genre contain Graphic Novel

This way I don’t have to worry about anything, just set the Format or Genre and I have all my comics in one place for quick access.


What if I already submitted my comics without these settings?

No problem, we got you covered, simply go into Doghouse and edit them there. In the Doghouse we have 2 buttons for your convenience, the first one is the Comic button, just click to set it to On and voila, your entry is now a comic!

While you’re there, you can also change the Genre or Format to Comic of Graphic Novel, whichever you prefer.

All this is in the Edit Book page.

Anatomy of a Campaign

November 26th, 2014

Anatomy of a Campaign

We here at Bruji love technology, you could say we are filled with Technolust. As such, we’re always on the lookout for software to make our lives, if not easier, than certainly more interesting. This article will examine how we created our Summer Sales campaign with a focus on the technologies used, in the hopes that it can help other folks out there learn about them. This won’t be an in-depth technical article (no code) and we won’t delve too deeply into the apps, just a nice bird’s-eye view.

The software we’ll be taking about here (for the impatient) are the following:

  1. Sketch 3
  2. Sass
  3. CodeKit 2
  4. Rubymine
  5. Macaw
  6. Firefox Developer Edition
  7. Ulysses III
  8. Rdio

The Idea

But it all begins with an idea. I wanted to do a Summer Sale campaign with happy, light colours and a flat look. To me, nothing says Summer quite like the beach, so off I went in search of some good beachy images for inspiration. It helps to be specific so I wanted a shot of the ocean and sand, an umbrella and a simple beach chair. The obvious stops include:

  1. Dribbble
  2. Behance
  3. Google Images

Armed with a good image, the brainstorming started. You’ll find lots of photos in Google like this one, which is very nice, but is not what I wanted at all. I wanted more of an illustration look. Another search netted me a bunch of illustrations like this one or this nice one on Dribble, but none were quite right. So we extrapolate a little, we grab what we like and build from there.

Design Flow

I created first the umbrella, chair, ocean and sand in Sketch. Everything else followed from that design and the colours used. This was my first time with Sketch and I was learning as I went along, which can be very frustrating, but is also an excellent way to learn because you’re tackling a real-world project and not just following along with a tutorial.



It is important to have a cohesive colour palette, you don’t want your design to look like a rainbow unless that’s exactly what you’re shooting for. So based on that first image I created the colour palette for the rest of the elements. It’s got nice warm colours that feel summery and light.


When selecting a colour palette, remember that Black, White and Gray are also colours and they mix well with pretty much everything.

Black can be overpowering so use it sparingly or reduce it’s value (tending more towards dark gray), white can also be overpowering, in which case you can use some off-white value, what the paints industry calls bone-white. Lastly, gray is your friend, don’t leave it behind, if you need more variations of colours in your palette, try mixing an existing colour with gray (in small doses).


Sketch is, in my opinion, the best App out there for Web and iOS design. After using Photoshop and Illustrator for about 20 years, I switched my workflow to Sketch. If you do any design for web or iOS, I encourage you to try it, there’s a 30-day trial available. The export features alone in Sketch are enough to make you want to switch, as are the ease of use and low learning curve compared to Illustrator, and the price is right, especially compared to Adobe’s overpriced offerings. It does have its quirks however so be patient, it is ultimately worthwhile. But, if you do a lot of heavy illustrations for print and not web then Sketch is probably not for you since it doesn’t even recognize CMYK colour values and is lacking some of the more advanced illustration tools you might find in Adobe Illustrator.

Sketch’s layouts revolve around the idea of artboards (though you don’t have to use them if you don’t want to, unlike Illustrator which forces you to create a sized canvas before you can start doing anything with it) and they’re actually very useful. In artboards.png, I have the Desktop and Mobile artboards side by side. It makes it really easy to create your designs for multiple platforms, Sketch comes with a number of ready-made Artboards to take the guessworks out of your designs, from iPhone screen sizes and icons to paper sizes and OS X icons with a number of responsive web page sizes along the way. Inserting a new Artboard is as simple as pressing A on the keyboard and choosing a size.


Exporting in Sketch is a joy. Group elements into a single Layer and create an exportable image from that with a single click. Even better, if you choose to export your image in PNG format, Sketch will ask if you want it to automatically create 1x, 2x and 3x versions of your image and name them appropriately for you, yes please! Click Export, you’re done. If clicking and selecting a size is too much work, simply drag your grouped object to the desktop or any finder window and Sketch will create the image on the fly, nice.

The Bezier curve tool (called the Vector Tool) in Sketch is also the fastest and easiest I’ve ver used.

I don’t want this to turn into a raving review of Sketch, so I’ll just end by saying that object alignment has never been easier. Do yourself and favour and check the app out.


Macaw is an HTML editor with the, sadly unfulfilled, promise of letting you create web sites visually instead of coding. I’ve been pretty critical of Macaw in the past and I stand by what I wrote, I don’t think Macaw is ready for primetime yet. So why am I talking about it here if it’s no good? Well, I think that for web mockups Macaw is excellent. Currently, with version 1.5.9 I would never create a full website with it but for a single-page promo that will be up for, at most, a week, I think it’s fine.

After exporting all my images in SVG from Sketch (more on the SVG format later on) I bring them into Macaw and try to recreate the design in an actual web site and see how it responds. One of the nicer things about Macaw is that it’s very easy to add breakpoints for different screen sizes and devices. I usually add a breakpoint for iPad at 800 pixels (as opposed to the iPad’s actual portrait width of 768px to have a little buffer) then another for iPhone at 320px.

After you have all the elements in Macaw, properly named and properly placed, it’s time to start testing those breakpoints to see how things react and what breaks. Don’t forget to test them on an actual browser as well as Macaw’s built-in browser to make sure things still look good and, most important, make sure that the sizes between breakpoints still work. Macaw does make it easy to move elements around visually when adjusting for different screen sizes. For example, for the iPhone I usually create a very different layout than for Desktop, I don’t like sites where they simply scrunch all the elements into a tiny window where you can’t even read the text.


Macaw would be a lot easier to recommend if it were free (or worked as advertised). I’d say it’s a tool to keep an eye on in the hopes that one day soon they’ll fix all the niggling faults and make it really useful. For now, try the demo but make sure you create a real website and not a tutorial so you can truly evaluate the product. I’m one of the original Kisckstarter backers so I’ll keep using it until they demand more money for a newer version.

Lots of elbow grease

Now it’s time for Rubymine and lots of coding. I know I said that Macaw was fine for a single-page promo, but the truth is I have to integrate it with our existing Bruji site, this means all the different menus and layouts (desktop, iPad and iPhone) and the different scripts we use on our site and this is, unfortunately, not possible to do in Macaw.

Rubymine is an awesome IDE for Ruby coding by the good folks over at Jetbrains. It’s where I spend all day most days (when I’m not designing or fighting with Macaw I’m knee-deep in Rubymine). Both the Doghouse API and the Doghouse Admin are all written in Ruby using Rubymine. If you do any Ruby (or Rails) coding at all, do yourself a big favour and check out Rubymine. If you’ve ever tried it before and wrote it off, give it another try. I remember trying version 5.0 and being less than impressed with it because it was slow and ate up my CPU faster than champions at a pie-eating contest, but I tried version 6 and was hooked immediately, now I can’t live without it, it even has a very good built-in Database editor! I started out coding Ruby in SublimeText, which is an excellent text editor but not an IDE and doesn’t hold a candle to Rubymine. After using Rubymine, I could never got back. Rubymine even has real code refactoring, something that not even Xcode has for Swift (at the moment).

But what does all this Ruby talk have to do with a website written in HTML? you might be asking. Simple: Rubymine also happens to be an extremely good web editor, much better than SublimeText, in my opinion. The autocompletion is great and the way it handles and integrates CSS is superb. I do all my heavy HTML work in Rubymine, in fact, Bruji’s new website was built almost entirely, to great fanfare and general adulation, in Rubymine.

So I integrate the craziness that Macaw wrote and tweak it in Rubymine. If we’re going to reuse any CSS I try to convert it into SASS (or SCSS) for future reuse. This brings us to our next technology:


Sass is a CSS preprocessor. Basically it’s a much better way of writing and using CSS. Let’s face it, CSS is not great. It was fine 15 years ago to style a simple web page without having to use dreaded tables. But these days it’s really lacking and often contradictory, it’s quite a mess really. Enter Sass. Sass is a way to write CSS to make it less painful and much more usable, it includes simple concepts like nesting CSS rules together without repetition (something so basic CSS should be ashamed not to support it) all the way to variables, partials and conditionals. It also integrates well with plain HTML and more complex frameworks like Rails, etc.

Sass makes working with CSS an almost joyful experience.

However, in order to work with Sass, you need some sort of compiler that will turn your fancy Sass code into vanilla CSS that any web browser can understand. For that we turn to Codekit.


Codekit, as their website states, is like steroids for web developers. Basically it allows you to use all sorts of modern frameworks and preprocessors by compiling them all in the background and updating your web site every time you save. This might not sound like a big thing but it’s actually huge. You simply write your Sass, Haml, Slim, Coffeescript, JQuery, etc and Codekit does the rest. CodeKit compiles Less, Sass, Stylus, Jade, Haml, Slim, CoffeeScript, Javascript, TypeScript, Markdown and Compass files automatically each time you save.

It will also alert you of any error you might have in any of those frameworks, very nice.

The best part is there is nothing to install apart from the app, no servers to run or background processes to watch, you don’t need to learn to use yet another editor or anything like that, you work in your preferred Editor like Rubymine or SublimeText and every time you save a file Codekit does its magic behind the scenes.

Check it out.

Firefox Developer Edition

Finally, it’s time to make sure everything works on a real browser, for this I use Firefox Developer Edition. It has all the bells and whistles a developer might need built-in and Firefox’s DOM inspector is the best there is in the world, no contest. I used to use Google Chrome, like everyone else, to test my websites (Safari’s developer tools are the worst) but recently switched to Firefox simply because of its DOM inspector. Firefox has been instrumental in figuring out gnarly CSS problems. Plus it’s free.

Ulysses III

A wonderful writing tool. I write everything in it, I’m currently writing this in Ulysses. It might seem a bit pricey, but if you do any writing it’s quite worth it, especially if you like Markdown.


Last but certainly not least, Rdio. Nothing could be done without Rdio. It’s the finest music streaming service out there (I’ve tried them all) and so much better than iTunes’ Radio. Superb design and great music selection, Rdio is always running on my Mac.


For the Summer Campaign it took a little more than a week to get everything done. This may seem like a long time, but the early stages of any design take a bit of time while you’re figuring out what you like and what you don’t like, what works and what doesn’t work, etc. Also, I was learning to use Sketch so that added quite a bit of time to development, on top of that fighting with Macaw without a manual made things tougher. I was also developing a workflow which I’ve used later for subsequent campaigns and that takes time. I simply mention all this so you don’t get discouraged if coming to grips with new technology is eating up your precious time.

So there you have it, a glimpse into just some of the technologies that Bruji uses. This is just one side of the coin, on the other side we have Xcode and all things iOS-specific, but that’s a different can of worms for another day.

Hopefully you’ll find something interesting here that you might be able to use for your own projects. If you do, let us know in the comments. Also let us know if you enjoy these articles, we have plans to write more technical ones in the future once we can actually find the time 🙂


Flag it!

October 31st, 2014

We’ve implemented yet another new feature in the Doghouse to make your life even easier and your mornings happier. Yes, I know, we keep adding new features just to make you happy, it’s what we do.

The moderators out there may already know about the Flagged Status for an entry, it works like this:

Any entry that you find suspicious or you would like another moderator to check, just set its Status to Flagged. If you’re a Moderator and see the Flagged status, check the entry out for potential problems then fix it, Approve it or delete it as you see fit.

The New Stuff

The more avid moderators among you will have noticed that none of this is really new, it’s been around for a while, so where’s this new feature that’s going to make my coffee for me in the morning?

Automatic Language Detection!

That’s the new feature. We’re attempting to detect the language an entry is in when a new one is inserted or when a Mirror is done.

This is more of an issue than you might think. Often people will have collections in different languages but their Mac’s locale is set to one language in particular and this will create a discrepancy.

So we’ve implemented a system where we try to match the language by looking at the title and the summary of an entry, if the language we detect does not match the incoming Locale Language we flag the entry automatically so a moderator can take a look at it.

I’ve been experimenting with this feature for about 2 weeks and have caught a lot of issues with Books so far.

Note: this feature is not turned on for Albums, just Movies, Books and Games.

How to use it

Just visit the Flagged entries when you get a chance and see what’s there, fix the language or any other discrepancies you find.

More Info

Check out the new Flag It page in our Moderator’s Guide for more info on this, complete with nice pictures.

Doghouse Moderator Guide

October 24th, 2014

The Doghouse keeps growing thanks to all our great users but we also need to make sure that the data we have in there is as accurate as possible. If you’ve signed up to be a Doghouse Moderator you’ll want to visit the Doghouse Moderator’s Guide page often.

We’ve recently updated it with information on handling duplicates with its own section for clarity. We also updated the styles for better readability.

Instead of creating a lengthy entry here in the blog repeating the instructions on the Moderator’s Guide, please refer to the pages directly.

We’ll keep updating this guide and adding new info as regularly as we can so make sure to check it often.