“Website handbook and configuration”
How to use and configure settings on Research.ExoticSilicon.com
This page contains various configuration settings for the website.
These can be adjusted to suit user preference as well as to test non-standard and experimental features which are not enabled by default.
You'll also find answers to some common technical questions regarding the website as well as general commentary about how the various features work.
Our pages are designed for best visual rendering in a modern, standards-compliant web-browser.
Results with older and non-compliant browsers will vary, but unless your browser is truly ancient or buggy the site should remain navigable.
We intentionally do not include fallback code to approximate the intended rendering of non-essential and purely artistic layout effects in older browsers that lack support for modern standards. When using such a browser, these effects may be rendered with reduced aesthetics and significant visual differences to what is intended.
Text mode browsers such as Lynx can also be used to display our web content, although users in a non-graphical environment might prefer to access our gemini server where almost all of the material from our websites is also available in gemtext format.
Current settingsAdjustments
✔ Serve webp images
Serve webp (default)
Don't serve webp
✖ Don't serve arith­metic jpeg
Serve arith­metic jpeg
Don't serve arith­metic jpeg (default)
U.S. English
British English
U.S. English
Autoselect (default)
No text cursor
No text cursor (default)
Non-flashing block cursor
Flashing block cursor
Theme: Tropical days
Update settings
Notes on the configuration options above:
Serve webp images
Serving of images in webp format is enabled by default, but if this option is disabled then they will be replaced with equivalent images in jpeg or png format.
This configuration is mostly of historic interest, as virtually all modern browsers in common use now support the webp image format.
It might be useful if you are actually designing your own rendering engine or image format library.
Note that in any case, not all images are served in webp format. It is only used where we deem it to be an improvement over jpeg or png.
Serve arithmetic jpeg
Serving of images in arithmetic jpeg format is disabled by default, but if this option is enabled then all of the images that are in jpeg format will be served as arithmetic jpeg instead of the far more common huffman table jpeg format variant.
Browser support has traditionally been quite weak for the arithmetic jpeg format, but it's about 8% smaller for exactly the same image quality.
Language selection
This is fairly self-explanatory. The default setting depends on the Accept-Language header sent by your browser, but it can be overridden by making a selection here.
Text cursor
The text cursor option defaults to none, but has two other settings - a non-flashing or flashing block cursor.
If either of these non-default options is set then the consoles on the ‘local patchsets’ page will change and an extra line will appear at the bottom of each one, displaying a cursor of the selected type in it.
This option was added to test a certain function of the CMS code during development.
Ten website themes are available. These provide a selection of alternative visual renderings of the website content, featuring different color schemes, fonts, and layouts.
Selecting an appropriate theme allows the user to customise the presentation to suit their own preferences, mood, time of day, room lighting and more.
This configuration option is actually a link to the dedicated theme selector. The theme selector can also be accessed directly from every page, (except itself and any error pages), by using the link in the footer.
Changes made here only apply to our research site, and are separate from any configuration choices made on our commercial site.
Frequently Asked Questions
These are technical FAQs about the website.
For more information about Exotic Silicon as a research organisation, please see the welcome page.
If you are looking for our commercial IT services, please visit www.exoticsilicon.com.
Website FAQ:
Answers to general questions:
What backend content management system does exoticsilicon.com use?
It's our own custom CMS written entirely in C.
Is the source code available?
Why don't you include compatibility code for older browsers?
Because we don't want to encourage the use of outdated, insecure, or non standards-compliant web-browsers, nor do we want to create bloat for users of modern, standards compliant browsers.
The HTML and CSS on this website passes validation tests, so any modern web-browser that renders it incorrectly or incomplete is either buggy or simply lacks full support for the standards.
Unless your browser is several years out of date, the website should still be perfectly navigable.
I just tested one of your pages and it failed validation!
This should never happen. If it does, please let us know about it so that it can be fixed.
Why don't you support the prefers-color-scheme css media query to set a default theme?
Quick answer:
Because it's a badly thought out standard that doesn't meet our requirements.Show in-depth answer
A CSS media query is a stupid way to implement this functionality. Unlike something like window size or display orientation which can and does change dynamically as a user is browsing, the user's preference for light or dark color schemes is usually consistent. Inline CSS media queries require the entire stylesheet source for each possible variation to be sent to and parsed by the browser when rendering the page, whether they are used or not. This increases bloat, but is an acceptable trade-off for something like display orientation, because the user might switch from horizontal to vertical and back again whilst actually reading the already-loaded page. Therefore, it makes sense to have sent both stylesheet variations to the browser. By contrast, (pun intended), sending a light and a dark variation is almost certainly going to result in half of the CSS that is sent never being used.
More significantly, we offer far in excess of just two themes on the exoticsilicon.com websites, to give users an even finer-grained choice of pages that are brightly colored, have muted color, are slightly dark, very dark, monochrome, and more. This can not be implemented with the overly simple and fundamentally limited prefers-color-scheme media query alone. We could, theoretically, create a special theme that incorporated two of our existing themes, a light and a dark one, and use the media query to select between them, and then if the user switched to a specific theme, only serve that one without the media query and it's associated bloat. However, that would still hurt performance for users who are browsing with cookies disabled, as they can't select an alternative theme, and in any case it goes against our principles to support a standard that we think has been badly implemented, thereby encouraging it's further use.
A far more sensible way to have implemented an indication of the user's preference for a light or dark color scheme in a web browser would have been an HTTP header with this information, which could be parsed by the server and allow appropriate content to be delivered. Note that a dark color scheme doesn't just mean inverting the color of the text and the background! To do it correctly may well require any graphical resources on the page to be changed, too. Not a challenge for static graphic content, and in some cases you might even be able to handle that case with semi-transparent dark color overlays, or css filters. This would avoid serving an entire alternative set of images which could easily run into several megabytes of data, although this approach wouldn't allow complete flexibility over the design. The situation is more complicated for video, though. Imagine a live video stream of educational material, divided equally between video of the lecturer and slides or a virtual whiteboard where textual content is being presented. The video of the lecturer would remain unchanged between light and dark versions, but ideally we would like to invert the whiteboard material for the dark color scheme. Handling this entirely on the client side would mean having the client choose one of two possible live streams, as the server has not been informed of the user's preference. If the streaming is customised for the individual connection in other ways, such as adjusting for the client's currently available bandwidth, or adding a unique waterwark to discourage further distribution, this means preparing an entire second video stream on the server which may go unused. By handling everything server-side, this problem doesn't exist.
In summary: the prefers-color-scheme css media query is too limited in scope, and too inefficient for our needs. It suffers from being implemented entirely on the client-side without sending the same information for parsing by the server.