~/talk

Application Performance Optimisation in Practice

Talkat NDC London 2026 · 2026-01-26..01-30· [web-performance, devops-and-delivery]
slides:none on file

Parses and sanitises SQL statements for OpenTelemetry, then iteratively targets hotspots using dotTrace, dotMemory and BenchmarkDotNet. Replaces expanding StringBuilders with ArrayPool + Span-based parser, switches per-call state to a stack-only refstruct, introduces small reusable buffers and a concurrent generic cache, removes substring allocations, and reruns unit tests and benchmarks after each change. Results show ~86% reduction in allocations and roughly 50% reduction in execution time in the demo, validated by profilers and benchmarks.

AI-written summary · about

  1. 0:00Introduction
  2. 0:53Why performance matters
  3. 1:57Premature vs reactive optimization
  4. 3:40Performance engineering
  5. 5:47Performance impact dimensions
  6. 8:15Optimization triggers
  7. 15:56Optimization loop
  8. 21:51Demo setup and SQL processor
  9. 26:00CPU profiling hotspots
  10. 31:13Memory profiling allocations
  11. 38:33Benchmarks and baselines
  12. 41:44First optimization string builder
  13. 43:31Reusing string builders
  14. 45:16HashTable to ConcurrentDictionary
  15. 48:02Span API substring
  16. 49:08ArrayPool and ref struct refactor
  17. 52:19Input comparison sanitization
  18. 54:04GitHub Copilot optimization
  19. 56:49Focus optimization efforts
  20. 58:32Stop optimizing validate
  21. 1:00:16Sustainable performance
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.