World Programming Society
Write Log in
Home Events Community

Channels

General Discussion Web Development Backend DevOps AI Career & Hiring TypeScript Rust Python Go Cloud AWS Azure GCP C/C++ FPGA Assembly

World Programming Society · 2026 Copyright

Web Development

‘It’s because you’re polite.’

A personal post about helpfulness and politeness.

CSS Wizardry CSS Wizardry · Oct 28, 2013
0
‘It’s because you’re polite.’
Read the original source
CSS Wizardry

Publisher

Originally by Harry Roberts


0 Comments

Log in to join the conversation.

No comments yet. Be the first to share your thoughts.

More in Web Development

Broken Gates: Re-evaluating Web Bot Defenses in the Age of LLM Agents

Broken Gates: Re-evaluating Web Bot Defenses in the Age of LLM Agents

Jul 22 · 2m read

RECEIPT: Deterministic, Reward-Hacking-Resistant Verification for White-Box Agentic XSS Discovery

RECEIPT: Deterministic, Reward-Hacking-Resistant Verification for White-Box Agentic XSS Discovery

Jul 22 · 2m read

Add Microsoft Clarity to Hugo with Cloudflare Zaraz - Without Redeploying

Add Microsoft Clarity to Hugo with Cloudflare Zaraz - Without Redeploying

Jul 22 · 7m read

React useCookie Hook: Cookies as Reactive State (2026)

React useCookie Hook: Cookies as Reactive State (2026)

Jul 22 · 8m read

Can UI Code Read Like the UI Itself?

Can UI Code Read Like the UI Itself?

Jul 22 · 4m read

I built a paint app where the PNG is the canvas (no <canvas> element)
snapDOM is normally stateless — every capture re-clones the live element.

https://snapdom.dev/labs/paint-canvas/

I built a paint app where the PNG is the canvas (no <canvas> element) snapDOM is normally stateless — every capture re-clones the live element. https://snapdom.dev/labs/paint-canvas/

Jul 22 · 1m read

I Call 250 Different AI APIs. This Gateway Gives Me One Endpoint Instead.

I Call 250 Different AI APIs. This Gateway Gives Me One Endpoint Instead.

Jul 22 · 8m read

Scrape any company's job postings — Greenhouse, Lever & Ashby, with one API call

Scrape any company's job postings — Greenhouse, Lever & Ashby, with one API call

Jul 22 · 4m read

Many-to-Many in an ERD Shouldn't Mean Hand-Building the Junction Table

Many-to-Many in an ERD Shouldn't Mean Hand-Building the Junction Table

Jul 22 · 11m read

I built 53 pay-per-call APIs that AI agents can pay for autonomously (x402 + USDC on Base)

I built 53 pay-per-call APIs that AI agents can pay for autonomously (x402 + USDC on Base)

Jul 22 · 2m read

Why Your ERD Export Turns Blurry - and How SVG Export Fixes It

Why Your ERD Export Turns Blurry - and How SVG Export Fixes It

Jul 22 · 7m read

Nuxt vs SvelteKit: What works better?

Nuxt vs SvelteKit: What works better?

Jul 22 · 7m read

Challenges of working on two languages at the same time,ft Go and JS

Challenges of working on two languages at the same time,ft Go and JS

Jul 22 · 6m read

Three site-list UX improvements: instant completion feedback, error highlighting, and auto-deselect

Three site-list UX improvements: instant completion feedback, error highlighting, and auto-deselect

Jul 22 · 4m read

I built the performance engineering resource I wished existed - full stack, real code, 6 levels, no fluff

I built the performance engineering resource I wished existed - full stack, real code, 6 levels, no fluff

Jul 22 · 3m read

GitHub Code Quality goes GA, and the billing meter turns on with it

GitHub Code Quality goes GA, and the billing meter turns on with it

Jul 22 · 4m read

Six open-source pieces, one JavaScript agent stack

Six open-source pieces, one JavaScript agent stack

Jul 22 · 4m read

How to Migrate WordPress to Next.js Without Losing Your SEO

How to Migrate WordPress to Next.js Without Losing Your SEO

Jul 22 · 9m read

301 duplicate IDs in the browser, 0 on the JVM: one real bug, end to end

301 duplicate IDs in the browser, 0 on the JVM: one real bug, end to end

Jul 22 · 6m read

Embedding a talking AI avatar with one script tag — tried NemynAI, here's what's under the hood

Embedding a talking AI avatar with one script tag — tried NemynAI, here's what's under the hood

Jul 21 · 2m read

Open Banking Without an eIDAS Certificate: A Practical Developer's Guide (2026)

Open Banking Without an eIDAS Certificate: A Practical Developer's Guide (2026)

Jul 21 · 9m read

I Taught an Open-Source SEO Tool to Check Whether Your Site Is Readable by AI Agents

I Taught an Open-Source SEO Tool to Check Whether Your Site Is Readable by AI Agents

Jul 21 · 5m read

Nub

Nub

Jul 21 · 1m read

WD

Bringing the modern web to the original iPad mini

Jul 21 · 4m read

Pre-Skill Prompt: Responsive Design Audit with MCP Playwright

Pre-Skill Prompt: Responsive Design Audit with MCP Playwright

Jul 21 · 6m read

Designing an Intermediate Representation That Makes pdfme and ReportLab Draw the Same Report

Designing an Intermediate Representation That Makes pdfme and ReportLab Draw the Same Report

Jul 21 · 8m read

Integrating Claude Code into Your Full-Stack Development Workflow

Integrating Claude Code into Your Full-Stack Development Workflow

Jul 21 · 10m read

LinkedIn News Blocker Extension Fails Due to Dynamic Class Names: Updated Solution Needed

LinkedIn News Blocker Extension Fails Due to Dynamic Class Names: Updated Solution Needed

Jul 21 · 10m read

Why More Web Tools Are Moving Processing to the Browser (And How to Build One)

Why More Web Tools Are Moving Processing to the Browser (And How to Build One)

Jul 21 · 3m read

Why your Clio token stopped working

Why your Clio token stopped working

Jul 21 · 6m read

ACP vs AP2: the two AI-checkout protocols, and what your store actually has to build

ACP vs AP2: the two AI-checkout protocols, and what your store actually has to build

Jul 21 · 4m read

REST vs GraphQL vs gRPC in 2026: An Architect's Decision Matrix

REST vs GraphQL vs gRPC in 2026: An Architect's Decision Matrix

Jul 21 · 7m read

Jump into Junior Engr.: Your Web Development Journey with ReactJS (AI-Augmented Edition)

Jump into Junior Engr.: Your Web Development Journey with ReactJS (AI-Augmented Edition)

Jul 21 · 4m read

Building a Secure Infrastructure Dashboard with React 18, Tailwind v4, and Local Sovereign LLMs

Building a Secure Infrastructure Dashboard with React 18, Tailwind v4, and Local Sovereign LLMs

Jul 21 · 3m read

Why Do APIs Use Bearer <token>? A Beginner-Friendly Explanation 🐻

Why Do APIs Use Bearer <token>? A Beginner-Friendly Explanation 🐻

Jul 21 · 3m read

I Built an Instagram Bot Cleaner in Python Here's the Architecture

I Built an Instagram Bot Cleaner in Python Here's the Architecture

Jul 21 · 7m read

I kept rebuilding the same PDF plumbing — so I turned it into one API

I kept rebuilding the same PDF plumbing — so I turned it into one API

Jul 21 · 3m read

I once watched a fintech app lose money to 0.1 plus 0.2, here is how NestJS stops that nightmare

I once watched a fintech app lose money to 0.1 plus 0.2, here is how NestJS stops that nightmare

Jul 21 · 5m read

Creating Dynamic SVG Gradients with Next.js

Creating Dynamic SVG Gradients with Next.js

Jul 21 · 5m read

Chat-based AI course authoring: why SCORM still matters in 2026

Chat-based AI course authoring: why SCORM still matters in 2026

Jul 21 · 2m read

Processing Millions of Records Through Shopify: Lessons From High-Volume Integrations

Processing Millions of Records Through Shopify: Lessons From High-Volume Integrations

Jul 21 · 5m read

Next.js Server Actions vs tRPC: how to actually choose

Next.js Server Actions vs tRPC: how to actually choose

Jul 21 · 8m read

Grid in Html

Grid in Html

Jul 21 · 2m read

Everything we got wrong caching a multi-tenant SaaS on one domain

Everything we got wrong caching a multi-tenant SaaS on one domain

Jul 21 · 23m read

I Built Pay Splitter to Make Group Expenses Less Awkward

I Built Pay Splitter to Make Group Expenses Less Awkward

Jul 21 · 1m read

HTML, CSS, JavaScript

HTML, CSS, JavaScript

Jul 21 · 8m read

Supercharge Your Algorithmic Trading with CoinQuant PHP: The Ultimate SDK for Laravel and PHP 8.1+

Supercharge Your Algorithmic Trading with CoinQuant PHP: The Ultimate SDK for Laravel and PHP 8.1+

Jul 21 · 6m read

How to Generate Verifiable PDF Certificates in Laravel

How to Generate Verifiable PDF Certificates in Laravel

Jul 21 · 6m read

How We Built an AI-Native Real Estate Platform for Northern Cyprus

How We Built an AI-Native Real Estate Platform for Northern Cyprus

Jul 21 · 11m read

WeasyPrint Alternative: HTML to PDF in Python (When You Need JavaScript)

WeasyPrint Alternative: HTML to PDF in Python (When You Need JavaScript)

Jul 21 · 7m read

Dominando Transações de Banco de Dados: Do Conceito à Prática com Laravel

Dominando Transações de Banco de Dados: Do Conceito à Prática com Laravel

Jul 21 · 5m read

VS Code Shortcuts Every Developer Should Know

VS Code Shortcuts Every Developer Should Know

Jul 21 · 4m read

How to use feature flags effectively

How to use feature flags effectively

Jul 21 · 3m read

Introducing Agent-Up: run multiple agent-built versions of your web app at once

Introducing Agent-Up: run multiple agent-built versions of your web app at once

Jul 21 · 3m read

Além da Teoria: Implementando WCAG no Angular Moderno (v21+)

Além da Teoria: Implementando WCAG no Angular Moderno (v21+)

Jul 21 · 6m read

What’s new: Air gets more agents, local models, and Java/Kotlin code intelligence

What’s new: Air gets more agents, local models, and Java/Kotlin code intelligence

Jul 21 · 5m read

Google Trends ties its data tokens to your IP and it broke my scraper in a way I didn't expect

Google Trends ties its data tokens to your IP and it broke my scraper in a way I didn't expect

Jul 21 · 5m read

Preventing Session Cookie Reuse Across Devices: Addressing Security Concerns with Alternative Solutions

Preventing Session Cookie Reuse Across Devices: Addressing Security Concerns with Alternative Solutions

Jul 21 · 13m read

How I Built an AI Pet Video Generator with TanStack Start and ByteDance Seedance

How I Built an AI Pet Video Generator with TanStack Start and ByteDance Seedance

Jul 21 · 13m read

DrawBook: progress pay apps without the spreadsheet tax

DrawBook: progress pay apps without the spreadsheet tax

Jul 21 · 3m read

Building Enterprise Brain OS: Creating an AI Operating System for Modern Enterprises

Building Enterprise Brain OS: Creating an AI Operating System for Modern Enterprises

Jul 21 · 3m read

Don't Trust the Marketing Page: Score Your Proxy Provider's IP Quality in ~60 Lines of Python

Don't Trust the Marketing Page: Score Your Proxy Provider's IP Quality in ~60 Lines of Python

Jul 21 · 4m read

How I Built a UK-Focused Converter Site with Astro 5, React 19, and Tailwind 4 — Zero JS by Default, 100% Private

How I Built a UK-Focused Converter Site with Astro 5, React 19, and Tailwind 4 — Zero JS by Default, 100% Private

Jul 21 · 3m read

[Boost]

[Boost]

Jul 21 · 1m read

I Wish This Was Better

I Wish This Was Better

Jul 21 · 1m read

How to build interactive experiences with canvases

How to build interactive experiences with canvases

Jul 21 · 5m read

What’s New in PyCharm 2026.2

What’s New in PyCharm 2026.2

Jul 21 · 2m read

How to Use Kimi K3 with Claude Code, Cursor, and Cline

How to Use Kimi K3 with Claude Code, Cursor, and Cline

Jul 21 · 5m read

Building a Production AI Pipeline for a UK FinTech Client at Tittri — What Actually Happened

Building a Production AI Pipeline for a UK FinTech Client at Tittri — What Actually Happened

Jul 21 · 22m read

RSPack 2.0: Performance Gains, Leaner Dependencies and ESM Core

RSPack 2.0: Performance Gains, Leaner Dependencies and ESM Core

Jul 21 · 3m read

Firefox 153 released

Firefox 153 released

Jul 21 · 1m read

Webhooks and on-demand revalidation: keep your headless site fresh without full rebuilds

Webhooks and on-demand revalidation: keep your headless site fresh without full rebuilds

Jul 21 · 6m read

Critical SharePoint RCE CVE-2026-50522 Under Active Exploitation After Public PoC

Critical SharePoint RCE CVE-2026-50522 Under Active Exploitation After Public PoC

Jul 21 · 3m read

StockPulse: 100% Local-First Sales Analytics & Niche Radar Extension for Adobe Stock & Shutterstock

StockPulse: 100% Local-First Sales Analytics & Niche Radar Extension for Adobe Stock & Shutterstock

Jul 21 · 2m read

The Door I Forgot to Lock, How One Missing Check Nearly Exposed Every Resume in My App

The Door I Forgot to Lock, How One Missing Check Nearly Exposed Every Resume in My App

Jul 21 · 7m read

Build a Website Tech Stack Scanner CLI in Go Using Wappalyzergo

Build a Website Tech Stack Scanner CLI in Go Using Wappalyzergo

Jul 21 · 4m read

Is retrieval engineering becoming AI’s next bottleneck?

Is retrieval engineering becoming AI’s next bottleneck?

Jul 21 · 5m read

Introducing JetBrains Context: Repository Intelligence for Coding Agents

Introducing JetBrains Context: Repository Intelligence for Coding Agents

Jul 21 · 5m read

Busy Plugin Developers Newsletter – Q2 2026

Busy Plugin Developers Newsletter – Q2 2026

Jul 21 · 4m read

Why your agent needs access to your documentation

Why your agent needs access to your documentation

Jul 21 · 5m read

Escape IntelliJ: Scala and Kotlin LSPs on Emacs Eglot

Escape IntelliJ: Scala and Kotlin LSPs on Emacs Eglot

Jul 21 · 10m read

Weaponizing And Defending The React Flight Protocol: Deserialization Sinks In RSCs

Weaponizing And Defending The React Flight Protocol: Deserialization Sinks In RSCs

Jul 21 · 29m read

writing-mode

writing-mode

Jul 21 · 4m read

WordPress wp2shell Exploitation Grows as Public Exploit Fuels Mass Scanning

WordPress wp2shell Exploitation Grows as Public Exploit Fuels Mass Scanning

Jul 21 · 4m read

95 reasons for having your own website

95 reasons for having your own website

Jul 21 · 4m read

Monday, July 27, 2026 Security Releases

Monday, July 27, 2026 Security Releases

Jul 21 · 1m read

WD

Some more things about Django I've been enjoying

Jul 21 · 8m read

Python function bundles now include precompiled bytecode

Python function bundles now include precompiled bytecode

Jul 21 · 1m read

Vercel MCP now supports purchases

Vercel MCP now supports purchases

Jul 21 · 1m read

Vercel Connect adds 90+ preset connectors

Vercel Connect adds 90+ preset connectors

Jul 21 · 2m read

Gemini 3.6 Flash and Gemini 3.5 Flash-Lite are now available on AI Gateway

Gemini 3.6 Flash and Gemini 3.5 Flash-Lite are now available on AI Gateway

Jul 21 · 2m read

WD

The coding challenge you don't want to pass

Jul 21 · 4m read

Laravel Time Machine: A Request Lifecycle Profiler

Laravel Time Machine: A Request Lifecycle Profiler

Jul 20 · 3m read

Jelly UI: Soft-body physics for native HTML form controls

Jelly UI: Soft-body physics for native HTML form controls

Jul 20 · 1m read

Type Safe Servant Auth Roles

Type Safe Servant Auth Roles

Jul 20 · 20m read

Beyond performance monitoring: Understand the user experience with Grafana Cloud Frontend Observability

Beyond performance monitoring: Understand the user experience with Grafana Cloud Frontend Observability

Jul 20 · 7m read

DoorDash Uses Envoy and Valkey for a 1.5M RPS Proxy Cache with 99.99999% Availability

DoorDash Uses Envoy and Valkey for a 1.5M RPS Proxy Cache with 99.99999% Availability

Jul 20 · 3m read

WD

July 2026 Security Release

Jul 20 · 1m read

Exploit brokers pay $500k for WordPress RCEs. I found one with GPT5.6 and $25

Exploit brokers pay $500k for WordPress RCEs. I found one with GPT5.6 and $25

Jul 20 · 27m read

Laravel SMS Catcher: A Local Dashboard for SMS Notifications

Laravel SMS Catcher: A Local Dashboard for SMS Notifications

Jul 20 · 3m read

Loading more…