Archive for September, 2017

#Car #Registration #API in #Chile launched today


Chile, a nation of 17.91 Million people, and 4.26 million cars (Source: WHO), has now been added to our rapidly growing list of support for international vehicle APIs. With this API, you can determine the make, model, age, and even the owner’s name and RUT (Rol Único Tributario) number.

You can sign up to the API here;

Car registration plates in Chile use the /CheckChile endpoint and return the following information:

  • Make & Model
  • Age
  • Owner information
  • Representative image

Sample Registration Number:


Sample Json:

 “Description”: “BMW 116 M 1.6”,
 “RegistrationYear”: “2012”,
 “CarMake”: {
   “CurrentTextValue”: “BMW”
 “CarModel”: {
   “CurrentTextValue”: “116 M 1.6”
 “MakeDescription”: {
   “CurrentTextValue”: “BMW”
 “ModelDescription”: {
   “CurrentTextValue”: “116 M 1.6”
 “ImageUrl”: “http:\/\/\/image.aspx\/@Qk1XIDExNiBNIDEuNg==”,
 “DriverRut”: “18145092-4”,
 “DriverName”: “LUIS EDUARDO SALINAS FARR\u00c1N”,
 “ValidSince”: “2015-04-01”,
 “Expiry”: “2016-03-31”,
 “VehicleType”: “AUTOMOVIL”

Categories: Uncategorized

#Car #Registration #API in #Argentina just launched

trinity-buenos-aires-skyline is an API that allows developers determine the make, model, age and region from a Argentinian number plate. It is the latest country to be added to our growing global coverage, and the first south american country to be supported.

Argentina has a population of 43 million people, and a driving percentage of 31.5%, giving a total volume of 13.8 million vehicles registered in Argentina.

To try out the API, head over to the website, and create a free account, then call the web service using the /CheckArgentina endpoint to return the following information:

  • Make & Model
  • Age
  • Region
  • Representative image

Sample Registration Number:


Sample Json:

 “Description”: “FIAT PALIO ATTRACTIVE 1.4 5 P “,
 “RegistrationYear”: “2014”,
 “CarMake”: {
   “CurrentTextValue”: “FIAT”
 “CarModel”: {
   “CurrentTextValue”: “PALIO ATTRACTIVE 1.4 5 P “
 “MakeDescription”: {
   “CurrentTextValue”: “FIAT”
 “ModelDescription”: {
   “CurrentTextValue”: “PALIO ATTRACTIVE 1.4 5 P “
 “Region”: “Ciudad de Buenos Aires”,
 “ImageUrl”: “http:\/\/\/image.aspx\/@RklBVCBQQUxJTyBBVFRSQUNUSVZFIDEuNCA1IFAg”

Categories: Uncategorized

госномер.com #API now includes #SovietUnion registration numbers


госномер.com is an API that returns data on Russian-registered cars, and is designed primarily for current Russian vehicles. However, thanks to a partnership with, the API now includes Soviet Union registered vehicles, which are pre-1991.

The format of the data returned for a Soviet Union Registered car is much reduced, but the image returned is of the car itself, rather than being representative.

Here is a sample response;

“Description”:“Izh 412ИЭ-028”,

Categories: Uncategorized

#jQuery.ScrollTo broken in #Chrome 61


If you use the jQuery.scrollTo, or a plugin dependant on it, such as

* SmoothScroll
* This helper script created by Copyright 2013
* Dual-licensed under the GPL and MIT licenses.
* All individual scripts remain property of their copyrighters.
* Date: 10-Sep-2013
* Version: 1.0.1

* jQuery.ScrollTo – Easy element scrolling using jQuery.
* Copyright (c) 2007-2013 Ariel Flesler – aflesler(at)gmail(dot)com |
* Dual licensed under MIT and GPL.
* @author Ariel Flesler
* @version

Then you may find on Chrome 61, the page refuses to scroll.

The solution, I found was to use these CSS classes for HTML and BODY

html {
    overflow: hidden;
    height: 100%;
body {
    height: 100%;
    overflow: auto;
Categories: Uncategorized

#Popcorntime remote for #iOS @popcorntimetv @giacomocerquone


Getting off your sofa is far too much exercise some days, and if you have popcorn time running on the mac, and just slightly out of reach, you really need something to remotely control it.

I found an app on the Android app store to control it, but I didn’t find an equivalent on the IOS. So I decided to write my own.

Which you can download here:


So, first, pairing. The easiest way to do this is to go to Settings > Show Advanced Settings > Remote Control, Create Pairing QR code. this generates a code like this


To Save you running a QR scanner on that, it decodes to {“ip”:”″,”port”:”8008″,”user”:”popcorn”,”pass”:”popcorn”} – obviously the IP is dependant on your network.

Then I downloaded a Javascript library by Giacomo Cerquone, called Butter_remote.js

And wrote a little HTML like this;


function init()
username: “popcorn”,
password: “popcorn”,
ip: “”,
port: “8008”,
debug: “false”
$(“#btnPlayPause”).bind(“click”,function playPause(){
$(“#btnForward”).bind(“click”,function playPause(){
$(“#btnBack”).bind(“click”,function playPause(){


Then just to wrap that in a Cordova/Phonegap app, and install it on my phone 🙂

Categories: Uncategorized

OLE DB provider “SQLNCLI10” for linked server returned message “No transaction is active.”

Harnessing Linked Servers_1

When you set up a linked server environment between two SQL servers, that are not on the same network, and you try to run a transaction that includes a reference to a linked server; by running a SQL statement like


and you get an error message like

OLE DB provider “SQLNCLI10” for linked server “myserver” returned message “No transaction is active.”.

Msg 7391, Level 16, State 2, Line 2
The operation could not be performed because OLE DB provider “SQLNCLI10” for linked server “myserver” was unable to begin a distributed transaction.

Then the solution turned out to be – after two days of head-scratching – to : put the Net BIOS name (computer name) for each server involved in the transaction into the hosts file at both sides of the transaction.

The hosts file is in c:\Windows\System32\Drivers\etc\hosts – and you’ll need administrator access to change it.


Categories: Uncategorized

Our new #JobSearch #App, powered by @reedcouk #API

392x696bb (1)

Thanks to @reedcouk ‘s API we’ve just relaunched our Job Searcher App on iOS with a new version. 

It’s a £0.99 download, and well worth it, if it helps land your next job !

Categories: Uncategorized

Book Searcher App for #IOS, new version released


A new version of our app for iOS “Book Searcher”, has just been released at

It’s a $0.99 cent download, but allows access to thousands of books 🙂


Categories: Uncategorized

#Visual #Transliteration from Russian in C#


Transliteration is where you convert one alphabet into another while maintaining the phonetics in as much as possible.

Visual Transliteration is much more niche, and it about maintaining the visual representation of one alphabet in another, for example  “Н” in Russian is pronounced “N”, but looks visually identical to a Latin “H”.

This code is for VISUAL transliteration, and NOT audible transliteration.

private static string VisualTransliterate(string russian)
var map = new Dictionary<string, string>
{“а”, “a”},
{“б”, “b”},
{“в”, “B”},
{“г”, “r”},
{“д”, “A”},
{“е”, “e”},
{“ё”, “e”},
{“ж”, “x”},
{“з”, “3”},
{“и”, “N”},
{“й”, “N”},
{“к”, “k”},
{“л”, “n”},
{“м”, “M”},
{“н”, “H”},
{“о”, “o”},
{“п”, “n”},
{“р”, “p”},
{“с”, “c”},
{“т”, “T”},
{“у”, “y”},
{“ф”, “o”},
{“х”, “x”},
{“ц”, “u”},
{“ч”, “u”},
{“ш”, “w”},
{“щ”, “w”},
{“ъ”, “b”},
{“ы”, “b”},
{“ь”, “b”},
{“э”, “3”},
{“ю”, “H”},
{“я”, “R”},
{“А”, “A”},
{“Б”, “B”},
{“В”, “B”},
{“Г”, “R”},
{“Д”, “A”},
{“Е”, “E”},
{“Ё”, “E”},
{“Ж”, “X”},
{“З”, “3”},
{“И”, “N”},
{“Й”, “N”},
{“К”, “K”},
{“Л”, “N”},
{“М”, “M”},
{“Н”, “H”},
{“О”, “O”},
{“П”, “N”},
{“Р”, “P”},
{“С”, “C”},
{“Т”, “T”},
{“У”, “Y”},
{“Ф”, “O”},
{“Х”, “X”},
{“Ц”, “U”},
{“Ч”, “Y”},
{“Ш”, “W”},
{“Щ”, “W”},
{“Ъ”, “b”},
{“Ы”, “b”},
{“Ь”, “b”},
{“Э”, “3”},
{“Ю”, “H”},
{“Я”, “R”}
var strOutput = “”;
foreach (var c in russian)
if (map.ContainsKey(c.ToString()))
strOutput += map[c.ToString()];
strOutput += c.ToString();
return strOutput;

Categories: Uncategorized

#SMTP JS now supports non standard ports


SMTP.JS is a script that allows you send email from Javascript

By default, the SMTP connection is secure (STARTTLS) and over port 25. If you
need to use an SMTP server that does not accepts secure connections, or in on a non-standart port, like 587, then use the button “Encrypt your SMTP Credentials” to store advanced configuration.



Categories: Uncategorized
%d bloggers like this: