Wieder was gelernt

Apache2 Proxying

2024-02-28 (Wednesday)
Tags: web apache reverse proxy gunicorn

<Location /demo> RequestHeader set X-Forwarded-Proto expr=%{REQUEST_SCHEME} RequestHeader set X-Forwarded-SSL expr=%{HTTPS} ProxyPass unix:/usr/local/www/example/data/demo.socket|http://example.com/demo ProxyPassReverse unix:/usr/local/www/example/data/demo.socket|http://example.com/demo </Location> The combination of the RequestHeader settings and the http://example.com/demo pseudo url passes all the necessary information to the backend so that request.url in a flask application shows up correctly as https://example.com/demo…

An Empirical Study & Evaluation of Modern CAPTCHAs

2023-08-20 (Sunday)
Tags: web captcha study

An Empirical Study & Evaluation of Modern CAPTCHAs

Wordpress Snippets

2022-11-15 (Tuesday)
Tags: web wordpress php

Menus functions.php after_setup_theme: register_nav_menu('footerLocationTwo', 'Footer Location Two'); footer.php: <?php wp_nav_menu(array('theme_location' => 'footerLocationTwo')); ?>

Python Web Framework Cheat Sheet

2022-11-01 (Tuesday)
Tags: Flask FastAPI Django Web Python Programming Reference

Feature Flask FastAPI Django Variable rules in routes <type:variable> [R] Return HTTP error abort(code) [R] Statt dem Code kann man auch ein Response-Objekt angeben, z.B. abort( make_response( jsonify(message="Post not found"), 404 ) ) raise HTTPException(status_code=, detail=, headers=) [R] return HttpResponse(status_code=404) . For some status codes there are also predefined subclasses, so for 404, we can use return HttpResponseNotFound() or even raise Http404()

Cookie Banner

2022-09-11 (Sunday)
Tags: web cookies cookie banner obey

Worst CAPTCHA Ever

2022-09-01 (Thursday)
Tags: CAPTCHA Web

Worst CAPTCHA Ever

Minimum Static Site Setup with Sass

2022-03-09 (Wednesday)
Tags: sass web npm autorefresh

Minimum Static Site Setup with Sass Minimal setup which watches the source, rebuilds sass, copies html, and refreshes the view in the browser. Via Kevin Powell: Stop using an extension to compile Sass)

mailto: URLs

2022-02-05 (Saturday)
Tags: web email mua

Aktuell: RFC 6068 Erstmals erwähnt in RFC 1738, §3.5, Parameter in RFC 2368. Als Parameter kann prinzipiell jeder Header-Name verwendet werden (der MUA darf allerdings Mails mit unsicheren Headern filtern oder ganz ablehnen) und zusätzlich der „Pseudo-Header“ body. Letzterer kann nicht-ASCII-Zeichen enthalten (eventuell %-kodiert). Die richtigen Header müssen RFC-2047-kodiert werden. Erweiterungen: Thunderbird akzeptiert html-body. Es gibt hier allerdings ein paar Unterschiede: %0A wird durch <br> ersetzt style-Elemente und -Paramerer werden ignoriert.

How to Favicon in 2022: Six files that fit most needs

2022-02-04 (Friday)
Tags: web favicon

How to Favicon in 2022: Six files that fit most needs

Nice Fonts

2021-09-04 (Saturday)
Tags: typography fonts web

https://fonts.google.com/specimen/Nunito very clean sans serif font, looks a bit like Normschrift, multiple weights. rounded ends. https://fonts.google.com/specimen/Quicksand https://fonts.google.com/specimen/Titillium+Web Sort of angular Sans Nice black weight https://fonts.google.com/specimen/Josefin+Sans long ascenders https://fonts.google.com/specimen/Patrick+Hand clean hand-printed look, kind of comicy https://fonts.google.com/specimen/Righteous Rounded, heavy, not for body text, a bit like Bauhaus https://fonts.google.com/specimen/Orbitron Square, science-fiction, like Eurostile https://fonts.google.com/specimen/Montserrat Nice gothic font. Lots of different weights. Example: https://euroconstruct-demo.wifo.ac.at/ https://fonts.google.com/specimen/Montserrat+Alternates See Righteous https://fonts.google.com/specimen/Economica Condensed https://fonts.google.com/specimen/Philosopher Sans with different line widths

Notes from Kevin Powell's Youtube Channel

2021-08-24 (Tuesday)
Tags: CSS Web Youtube

Improve your CSS by taking HSL and Custom Props to the next level Aug 24, 2021 Custom properties are just text replacement, so you can use and fragment of a property, e.g. :root { --hue: 204; --saturation: 100%; --lighntess: 30%; } .card { background: hsl(var(--hue) var(--saturation) var(--lightness) / 0.9) } New color syntax (no commas, slash): hsl(204 100% 30% / 0.9) Custom properties are cascaded like all properties. [min(), max(), and clamp() are CSS magic!

Sign-in form best practice

2021-02-18 (Thursday)
Tags: web UX

Sign-in form best practice

Flutter Web: A Fractal of Bad Design

2020-11-03 (Tuesday)
Tags: flutter web framework accessibility rant

Flutter Web: A Fractal of Bad Design

XXX-rated: Amtsblatt der Wiener Zeitung

2020-10-25 (Sunday)
Tags: web Wiener Zeitung XXX blocker quintessenz 1998

Gernsback Machine

2020-10-05 (Monday)
Tags: museum classification multidimensional web

The Gernsback Machine: Towards a Museum of Possible Futures and Probable Pasts

TwinSpark.js

2020-09-12 (Saturday)
Tags: TwinSpark JavaScript Web server-rendering framework

TwinSpark.js Github page

Intercooler.js

2020-09-12 (Saturday)
Tags: Intercooler.js JavaScript Web server-rendering framework

Intercooler.js

A tale of webpage speed, or throwing away React

2020-09-12 (Saturday)
Tags: React TwinSpark Intercooler.js JavaScript Web server-rendering framework

A tale of webpage speed, or throwing away React

Roy Fielding's Misappropriatted REST Dissertation

2020-07-03 (Friday)
Tags: rest history http web

https://twobithistory.org/2020/06/28/rest.html: This is why, rather than saying that nobody understands REST, we should just think of the term “REST” as having been misappropriated. The modern notion of a REST API has historical links to Fielding’s REST architecture, but really the two things are separate.

REST vs RPC

2020-07-01 (Wednesday)
Tags: programming API web REST RPC gRPC OpenAPI terminology

API design: Understanding gRPC, OpenAPI and REST and when to use them: the Remote Procedure Call (RPC) model, in which the addressable entities are procedures, and the data is hidden behind the procedures. In [REST], the addressable entities are “data entities” (called “resources” in the HTTP specifications), and the behaviors are hidden behind the data—the behavior of the system results from creating, modifying, and deleting resources. also: A signature characteristic of [REST] is that clients do not construct URLs from other information—they just use the URLs that are passed out by the server as-is.

Accessibility Checkers

2020-06-25 (Thursday)
Tags: accessibility web tools

WAVE - web accessibility evaluation tool AChecker

Async Python is not faster

2020-06-17 (Wednesday)
Tags: Python Web Performance

Under realistic conditions (see below) asynchronous web frameworks are slightly worse throughput (requests/second) and much worse latency variance. Async Python is not faster