Xihelm | London, UK | Computer Vision Engineer | ONSITE
Xihelm is reinventing how city infrastructure is managed using our Artificial Intelligence and Computer Vision platform. We now improve maps using the visual world. And that's just the beginning.
Xihelm has received substantial investment from Entrepreneur First and others. We were invited to pitch at Facebook and at the Home Office. Other achievements include winning a Greater London Authority competition for smart cities and having real enterprise customers.
We are starting to tackle interesting research projects in the field of deep learning. Do you love machine learning as much as we do? Like to implement state-of-the art research papers? Think creatively? Like challenges?
We work woth Python, C++, SQL, Theano, Tensorflow, Keras ... and you can be employee #2.
In the late 90s, I started a cloud-type hosting provider, with an angel round $100k+, dropping out of university. The dotcom crash happened and raising more money became near impossible. I was inexperienced and tried to do everything myself, and hired the wrong people.
I morphed it in to a web development business that did OK, then worked out it was easier working for someone else (got my life-work balance better) - in a VC-backed startup that ultimately got acquired.
I left to finish my degree. Got confused for a year and did a bit of sales. Then another startup that I couldn't get off the ground (services marketplace) - perhaps insanely ambitious.
Then I trained as a teacher (forgot that), teaching inner city kids how to add up.
I now work at Google in partnerships, where I am largely happy, married, get to travel a lot - and occasionally still 'get the itch' ...
I think that for complex sites you have a good point on letting anyone publish tags. Fortunately, it's possible to allow users just to view and edit tags - and not publish them. This leaves the testing and publishing to IT - our testing interface is pretty good - perhaps you could test it :)
The speed up is really around asynchronous firing of tags and for that it may not matter where code is hosted. This should help in situations with either synchronous or poorly designed code (in some situations it may not lead to a measurable improvement).
You've got a good point - we've got more work to do explaining this topic. Thanks for the feedback!
Just wanted to say that the landing page could do a better job explaining what this tool is. It took me almost 30 minutes before I figured out what this new product did. I didn't know what these "tags" were that kept getting mentioned.
It's a fair concern - we recommend using just Google Tag Manager (synchronous and lightweight) code to fire all your other tags asynchronously. So in most cases, where you call more than one remote code snippet, it could speed it up.
I think the initial implementation can be tricky (we'd recommend a Google Analytics Certified Partner to help), though once that is done, our initial experience is that adding tags is not too difficult.
We can help with updating tags (please reach out to your Account Manager), or please reach out to me in my profile.
I manage this product here at Google (for the USA).
We think that it should speed up site loading (in most cases) by asynchronously wrapping your other synchronous and asynchronous JavaScript tags.
We've included built in templates for our own tags at first though we will be introducing easier support for third-party tags soon (templating). At the moment you can do this by adding custom img or Javascript tags in the interface.
This product has most impact where you want to add/remove multiple affiliate tracking or remarketing tags (for instance), across your whole site quickly and easily.
Ha, this product is very clever. You are effectively bootstrapping yourself into arbitrary page execution environments, and giving (non-technical) users the ability to parameterize and manipulate that environment.
The joys of indirection.
In trade for building the tooling around managing that parameterization, Google gets...eyes. Eyes that need to manipulate tags are eyes that need to buy tags, consume the information those tags have generated. But even if that market doesn't pan out, it extends Google's knowledge of who is reading what, where, which of course is the flip side of search: not just spidering content and seeing how it relates to itself via links, but observing users and seeing how they relate to content. This is valuable data, and whatever you spend on "free" tooling is probably justified.
Under the Google Tag Manager Terms of Service, the account holder owns the data. We don't do anything with that data without your consent and Google Tag Manager collects very little data itself - it's cookie-less. I hope that helps!
Then I guess I'm confused as to what Google's angle is here. I presume there's at least a small team of 6-figure salaried programmers behind this, so what justifies the expense?
To compete in the growing Tag Management Market. Adobe offers a Tag Management service and there are many other paid premium versions. Tag Management is a tool for digital marketers to deploy agile javascript code in a technical environment where site builds are not agile.
Question for your JS folks: How are they going to handle document.write calls in third party or even 1st party tags ? Those are blocking by nature and trying to load them up asynchronously will ruin the page. I know there are a few document.write overrides but I'm interested in seeing how they would approach this :)
I'm the founder of UberTags, which is a similar solution. We automatically transform doc.writes to appends to handle async. I'm assuming GTM does something similar.
Also good, but the last line doesn't work (in my opinion): to get from 0x1 to 1 you need to undo the x0, i.e. dividing by 0. Which is undefined ... Zero, confusing 10 year olds for centuries!
True. If you approach it from a standpoint of extrapolation from known values, you have a division by zero one way or the other.
What I'd intended was that the value of 1 was reached by applying the same algorithm that was applied to arrive at the other values: start with 1, multiply by the base once per instance of the exponent. No division involved.
It's still incorrect if we want to be strict, of course. That algorithm is not quite the definition of exponentiation, because that algorithm can't really be extended to work outside rational exponents. Exponentiation is defined across complex numbers (ignoring 0^0 for the moment). I think this is acceptable because I'm only shooting for an explanation, which doesn't need to be strict.
Xihelm is reinventing how city infrastructure is managed using our Artificial Intelligence and Computer Vision platform. We now improve maps using the visual world. And that's just the beginning.
Xihelm has received substantial investment from Entrepreneur First and others. We were invited to pitch at Facebook and at the Home Office. Other achievements include winning a Greater London Authority competition for smart cities and having real enterprise customers.
We are starting to tackle interesting research projects in the field of deep learning. Do you love machine learning as much as we do? Like to implement state-of-the art research papers? Think creatively? Like challenges?
We work woth Python, C++, SQL, Theano, Tensorflow, Keras ... and you can be employee #2.
If you think you fit, please reach out via https://angel.co/xihelm/jobs/181032-deep-learning-engineer - or jamesofkent [at] gmail