Resetting a PCI device

The Wi-Fi adapter on my VivoBook 17 has been acting up under Ubuntu 18.04 LTS insofar that at a random point in time, possibly accelerated by power saving features, the Wi-Fi will stop working with suspicious syslog entries: ath10k_pci 0000:03:00.0: failed to wake target for read32 at 0x0003a028: -110 The usual tricks (suspend/resume, reload driver, … Continue reading Resetting a PCI device

Fixing random sound drops with Ubuntu; only sound device is “Dummy Output”

The title says it all; at some point Ubuntu 18.04 stops playing sound and the only available sound device is "Dummy Output". Apart from rebooting (which fixes the issue) this command executed from the terminal fixes the issue: pulseaudio -k && sudo alsa force-reload Contributed by user Kim, source:

How to improve conversion rates

I watched Kevin Hale's presentation [1] "how to improve conversion rates" (with your UI) and liked his get-to-the-point style. I highly recommend watching the video and am summarizing the content here. I omitted a few parts of Hale's talk (eg. knowledge point and one push button) which, while encyclopedic and interesting, imho didn't advance the … Continue reading How to improve conversion rates

Azure diaries: can’t access KeyVault

Context: as a tenant administrator you can't inspect KeyVault contents created by other people ("you are unauthorized to view these contents"). Solution: assign yourself appropriate permissions like this: Locate the KeyVault in the Azure portal: go to "Access policies"click "+Add Access Policy"Key permissions: everything under "Key Management Operations" and "Cryptographic Operations"Accordingly for key and certificate … Continue reading Azure diaries: can’t access KeyVault

Tests are not just about testing

Tests in the context of software development have a surprisingly broad field of uses which exceeds "just" testing. Those further uses paint a more colourful picture of tests than just regression keepers. Tests as a component runtime: a test is the workbench on which the component is developed. Instead of constantly restarting an application server … Continue reading Tests are not just about testing

Error handling for failed network requests with service workers

Most service worker code samples show only the happy path where the fetched resource will eventually be available, eg: self.addEventListener('fetch', event => { // Skip cross-origin requests, like those for Google Analytics. if (event.request.url.startsWith(self.location.origin)) { event.respondWith( caches.match(event.request).then(cachedResponse => { if (cachedResponse) { return cachedResponse; } return => { return fetch(event.request).then(response => { // Put … Continue reading Error handling for failed network requests with service workers