Start Searching Today!

Type a URL to search registration information about any website

ekioh Sign Up Information

Last Updated:
Site Encrypted:
Site Category:
Email Verified:
Data Held

Email Address


Your Address


Post-Registration Data

We are still gathering data about this website


This site did not show evidence of storing passwords in plaintext.

This site does allow secured connections (https)

This site did show a clear way to unsubscribe from their emails

This site does verify your email address.

Membership Emails

Below is a sample of the emails you can expect to receive when signed up to ekioh.

View this email in your browser

Fixed point vs floating point

I had an interesting problem with one of the sites I tried loading a while ago. was using jQuery (version 1.7.2) which tries to detect browser features, and decided Flow was actually Internet Explorer. It later tried to use IE-specific filters rather than CSS opacity, so no fades worked. I tracked this down to jQuery's startup code setting opacity to 0.55 and then getting it back out again. Since we converted 0.55 into 16.16 fixed point too early, it was retrieving it as 0.549988. That wasn't equal to 0.55, and so jQuery decided Flow didn't support opacity and therefore must be Internet Explorer.

Browsers use fixed point maths internally for storing the results of many calculations. Often 26.6 bits, which gives 64 positions between (CSS) pixels, or 24.8 bits to give 256 levels of anti-aliasing in graphics.

Our initial design for CSS style tried to use the most applicable value possible, so for the width property we would store the parsed value as 26.6 precision but SVG values would often use 16.16 precision (the SVG Tiny 1.2 spec suggests this).

This made sense when we were targeting CPUs without floating point with our SVG Engine, but nowadays everything that is expected to run in a modern browser has hardware floating point support - especially if they come with OpenGL ES. Various web platform tests check the calculated results of properties in ways that require us to store them using floating point - at the very least, it's a reasonable assumption to expect that getting a value from JavaScript would return the value you set in the first place.

Switching to floats, instead of storing values in three different precisions, simplified most of our style getters and removed lots of legacy code. For a few properties, it may be trivially slower, but the precision gains for compatibility with JavaScript libraries, meant it was necessary and probably sensible anyway.

Different sites and JavaScript libraries use many different methods for browser detection. This version of jQuery is pretty ancient, but it's a useful demonstration of incorrect assumptions that can be made from one function call that can cause strange behaviour later.

Copyright © 2019 Ekioh Ltd., All rights reserved.
You are receiving this email because you are on Ekioh's DevBlog mailing list. We maintain separate mailing lists for each category of information, enabling you to tailor the information we send you by subscribing or unsubscribing from each category.

Our mailing address is:
Ekioh Ltd.
17B Sturton St
Cambridge, CB1 2SN
United Kingdom

Add us to your address book

Want to change how you receive these emails?
You can update your preferences or unsubscribe from this list.

Email Marketing Powered by Mailchimp
Please let us know what type of blogs you are interested in:
Select All
Product & market blogs
Data Name Data Type Options
Name*   Text Box
Email   Text Box
  checklist Please let us know what type of blogs you are interested in:
  checklist Select All
  checklist Product & market blogs

Comments about ekioh

No Comments
Comment by: admin
Comment on: 01/09/2020