Webserver Back End with Orleans Actor System, Dotnet Core and Server-Side Redux
A radically different web server architecture that turned my twenty years of experience in building websites upside down
A radically different web server architecture that turned my twenty years of experience in building websites upside down
The landscape for learning d3 is rich, vast and sometimes perilous. You may be intimidated by the long list of functions in d3’s API…
HTTP Public Key Pinning is a very powerful standard that allows a host to instruct a browser to only accept certain public keys when communicating with it for a given period of time. Whilst HPKP can offer a lot of protection, it can also cause a lot of harm too.
Recently, I came across a few articles [1, 2, 3] comparing Qt’s modern UI framework – Qt Quick and its own declarative language QML to HTML, with QML coming out as a clear winner in sev…
AMP had just been popularised at the time I was considering rebuilding this site. It sounded like as a great idea. Faster websites are right up my alley. And who doesn’t want an SEO boost? I mean, I still can’t make Get Cryptolocker show up on Google. And no, I don’t want to buy your Wordpress theme, even if it is…
I’ve added a faceted search engine to this blog, powered by PostgreSQL. It supports regular text search (proper search, not just SQL“like” queries), filter by tag, filter by date, filter …
Last week, I gave a presentation by the same name as this article at Tencent Frontend Conference in Shenzhen, China. In this article, I’m adapting its transcript to a format more suitable for Pony Foo. I hope you enjoy it!
A new value of the display property has landed in Chrome Canary and Firefox Nightlies. In the Editor’s Draft of the CSS Display Module Level 3, display: flow-root is defined as: “The element generates a block container box, and lays out its contents using flow layout. It always establishes a new block formatting…
Thoughts on what Redux requires, how Redux is intended to be used, and what is possible with Redux
Welcome to my personal blog! I use it to share what I'm currently learning or thinking about, usually on topics related to technology, business, and health.
A while ago I read John Novaks great rant on how hard and annoying it can be to do something as simple as extending a cross-platform application with the simplest of GUIs. Or as he puts it:
Livecode all the JS things from Smalltalk!
There are lots of edge cases I hadn't considered, and it's very inconsistent between browsers. Here's what I found…
These are solid year-over-year updates — at least as impressive as the iPhone 7 was over the iPhone 6S. If they hadn’t debuted alongside the iPhone X we’d be arguing about whether these are the most impressive new iPhone models since the iPhone 6.
<em>So, what is it you do all day?</em>
Your AMP pages have a higher than usual bounce rate? Don't worry, your data may be wrong. In this article, I explain you why.
We simply must fix the monetization and distribution challenges that publishers face.
A month ago, danluu wrote about [terminal and shell performance](https://danluu.com/term-latency/). In that post, he measured the latency between a key being pressed and the corresponding character appearing in the terminal. Across terminals, median latencies ranged between 5 and 45 milliseconds, with the 99.9th…
Looking at data for some of the most popular websites, we repeat ourselves too much in CSS; using declarations just once is often one solid avenue to avoid repetition; together, we need to put more focus on style sheet optimization.
JavaScripters often complain about the complexity of React. But to ClojureScripters, React is very nice. What's the difference? In this article, we explore 6 mistakes Reacters make, including mutable state everywhere, Lifecycle Methods and, non-reusable components.
Fingerprinting Firefox users with cached intermediate CA certificates (#fiprinca) ...
alexstjohn.com is your first and best source for information about alexstjohn. Here you will also find topics relating to issues of general interest. We hope you find what you are looking for!
Recently, I reported a security issue in the new Firefox Screenshots feature (fixed in Firefox 56). This issue is remarkable for a number of reasons. First of all, the vulnerable code was running within the Web Extensions sandbox, meaning that it didn’t have full privileges like regular Firefox code. This code was…
I've been thinking a lot about the social graph for awhile now: aggregating the graph, decentralization, social network portability, etc.