CINXE.COM
KDE | exit's /dev/urandom blog
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>KDE | exit's /dev/urandom blog</title> <link rel="profile" href="http://gmpg.org/xfn/11" /> <link rel="pingback" href="https://ascending.wordpress.com/xmlrpc.php" /> <meta name='robots' content='max-image-preview:large' /> <link rel='dns-prefetch' href='//s1.wp.com' /> <link rel='dns-prefetch' href='//s0.wp.com' /> <link rel='dns-prefetch' href='//s2.wp.com' /> <link rel='dns-prefetch' href='//s.pubmine.com' /> <link rel='dns-prefetch' href='//x.bidswitch.net' /> <link rel='dns-prefetch' href='//static.criteo.net' /> <link rel='dns-prefetch' href='//ib.adnxs.com' /> <link rel='dns-prefetch' href='//aax.amazon-adsystem.com' /> <link rel='dns-prefetch' href='//bidder.criteo.com' /> <link rel='dns-prefetch' href='//cas.criteo.com' /> <link rel='dns-prefetch' href='//gum.criteo.com' /> <link rel='dns-prefetch' href='//ads.pubmatic.com' /> <link rel='dns-prefetch' href='//gads.pubmatic.com' /> <link rel='dns-prefetch' href='//tpc.googlesyndication.com' /> <link rel='dns-prefetch' href='//ad.doubleclick.net' /> <link rel='dns-prefetch' href='//googleads.g.doubleclick.net' /> <link rel='dns-prefetch' href='//www.googletagservices.com' /> <link rel='dns-prefetch' href='//cdn.switchadhub.com' /> <link rel='dns-prefetch' href='//delivery.g.switchadhub.com' /> <link rel='dns-prefetch' href='//delivery.swid.switchadhub.com' /> <link rel='dns-prefetch' href='//a.teads.tv' /> <link rel='dns-prefetch' href='//prebid.media.net' /> <link rel='dns-prefetch' href='//adserver-us.adtech.advertising.com' /> <link rel='dns-prefetch' href='//fastlane.rubiconproject.com' /> <link rel='dns-prefetch' href='//prebid-server.rubiconproject.com' /> <link rel='dns-prefetch' href='//hb-api.omnitagjs.com' /> <link rel='dns-prefetch' href='//mtrx.go.sonobi.com' /> <link rel='dns-prefetch' href='//apex.go.sonobi.com' /> <link rel='dns-prefetch' href='//u.openx.net' /> <link rel="alternate" type="application/rss+xml" title="exit's /dev/urandom blog » Feed" href="https://ascending.wordpress.com/feed/" /> <link rel="alternate" type="application/rss+xml" title="exit's /dev/urandom blog » Comments Feed" href="https://ascending.wordpress.com/comments/feed/" /> <link rel="alternate" type="application/rss+xml" title="exit's /dev/urandom blog » KDE Category Feed" href="https://ascending.wordpress.com/category/kde/feed/" /> <script type="text/javascript"> /* <![CDATA[ */ function addLoadEvent(func) { var oldonload = window.onload; if (typeof window.onload != 'function') { window.onload = func; } else { window.onload = function () { oldonload(); func(); } } } /* ]]> */ </script> <script type="text/javascript"> /* <![CDATA[ */ window._wpemojiSettings = {"baseUrl":"https:\/\/s0.wp.com\/wp-content\/mu-plugins\/wpcom-smileys\/twemoji\/2\/72x72\/","ext":".png","svgUrl":"https:\/\/s0.wp.com\/wp-content\/mu-plugins\/wpcom-smileys\/twemoji\/2\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/s2.wp.com\/wp-includes\/js\/wp-emoji-release.min.js?m=1719498190i&ver=6.8-alpha-59438"}}; /*! This file is auto-generated */ !function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83d\udc26\u200d\u2b1b","\ud83d\udc26\u200b\u2b1b")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings); /* ]]> */ </script> <link crossorigin='anonymous' rel='stylesheet' id='all-css-0-1' href='https://s1.wp.com/_static/??-eJyFkF0KwjAQhC9kXBoR6YN4lrRdY9rND9mNpbe3FauIUB9n55sZWBiTamMQDAINRasSFesCwxhzZzoGS7ExtG+Zd/CPfZo+ibrrn4AvH9x1FoUBy+zGwaEiM8KSJCPIwDIRbi96kwcUF6xqTIYZ/b5srfcoybTDSwOXAD52heZhF64uOEHFbY5Eq5626lYG5IZ+7kilef9hyV38uTrp+qjrQ6X7Bx7eigU=&cssminify=yes' type='text/css' media='all' /> <style id='wp-emoji-styles-inline-css'> img.wp-smiley, img.emoji { display: inline !important; border: none !important; box-shadow: none !important; height: 1em !important; width: 1em !important; margin: 0 0.07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; } </style> <link crossorigin='anonymous' rel='stylesheet' id='all-css-2-1' href='https://s0.wp.com/_static/??-eJydzMsOwiAQheEXEibEXtKF8VmATggVgcwMNby91U13LlyenHw/vKryJQtmgZpaiJkhtGM6pHA8hLCbRU96ANdiWsGl4h8qRUeWOrD0hNozX+Bn6KsYNpRqP9z20kQFiuu/CbISc+CT3583M1/NMg6zGbc3O1tP4A==&cssminify=yes' type='text/css' media='all' /> <style id='wp-block-library-inline-css'> .has-text-align-justify { text-align:justify; } .has-text-align-justify{text-align:justify;} </style> <link crossorigin='anonymous' rel='stylesheet' id='all-css-4-1' href='https://s2.wp.com/_static/??-eJzTLy/QzcxLzilNSS3WzyrWz01NyUxMzUnNTc0rQeEU5CRWphbp5qSmJyZX6uVm5uklFxfr6OPTDpRD5sM02efaGpoZmFkYGRuZGmQBAHPvL0Y=&cssminify=yes' type='text/css' media='all' /> <style id='jetpack-sharing-buttons-style-inline-css'> .jetpack-sharing-buttons__services-list{display:flex;flex-direction:row;flex-wrap:wrap;gap:0;list-style-type:none;margin:5px;padding:0}.jetpack-sharing-buttons__services-list.has-small-icon-size{font-size:12px}.jetpack-sharing-buttons__services-list.has-normal-icon-size{font-size:16px}.jetpack-sharing-buttons__services-list.has-large-icon-size{font-size:24px}.jetpack-sharing-buttons__services-list.has-huge-icon-size{font-size:36px}@media print{.jetpack-sharing-buttons__services-list{display:none!important}}.editor-styles-wrapper .wp-block-jetpack-sharing-buttons{gap:0;padding-inline-start:0}ul.jetpack-sharing-buttons__services-list.has-background{padding:1.25em 2.375em} </style> <link crossorigin='anonymous' rel='stylesheet' id='all-css-6-1' href='https://s2.wp.com/wp-content/plugins/coblocks/2.18.1-simple-rev.4/dist/coblocks-style.css?m=1681832297i&cssminify=yes' type='text/css' media='all' /> <style id='classic-theme-styles-inline-css'> /*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} </style> <link crossorigin='anonymous' rel='stylesheet' id='all-css-8-1' href='https://s2.wp.com/_static/??-eJx9jcEKg0AMRH+oaVhorR7Eb9E16IpZg8min2889FZ6GYbhPQYPgbhlo2zIBWQtU8qKcdvJd5be0AmmMfW0Ejv2jKoP/K0daZzIXNdvB6PzvyJ+A8MgO6mCJ6fCYLN/6e113IZXU9WfUL/DcgHSTkDo&cssminify=yes' type='text/css' media='all' /> <style id='global-styles-inline-css'> :root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--font-family--albert-sans: 'Albert Sans', sans-serif;--wp--preset--font-family--alegreya: Alegreya, serif;--wp--preset--font-family--arvo: Arvo, serif;--wp--preset--font-family--bodoni-moda: 'Bodoni Moda', serif;--wp--preset--font-family--bricolage-grotesque: 'Bricolage Grotesque', sans-serif;--wp--preset--font-family--cabin: Cabin, sans-serif;--wp--preset--font-family--chivo: Chivo, sans-serif;--wp--preset--font-family--commissioner: Commissioner, sans-serif;--wp--preset--font-family--cormorant: Cormorant, serif;--wp--preset--font-family--courier-prime: 'Courier Prime', monospace;--wp--preset--font-family--crimson-pro: 'Crimson Pro', serif;--wp--preset--font-family--dm-mono: 'DM Mono', monospace;--wp--preset--font-family--dm-sans: 'DM Sans', sans-serif;--wp--preset--font-family--dm-serif-display: 'DM Serif Display', serif;--wp--preset--font-family--domine: Domine, serif;--wp--preset--font-family--eb-garamond: 'EB Garamond', serif;--wp--preset--font-family--epilogue: Epilogue, sans-serif;--wp--preset--font-family--fahkwang: Fahkwang, sans-serif;--wp--preset--font-family--figtree: Figtree, sans-serif;--wp--preset--font-family--fira-sans: 'Fira Sans', sans-serif;--wp--preset--font-family--fjalla-one: 'Fjalla One', sans-serif;--wp--preset--font-family--fraunces: Fraunces, serif;--wp--preset--font-family--gabarito: Gabarito, system-ui;--wp--preset--font-family--ibm-plex-mono: 'IBM Plex Mono', monospace;--wp--preset--font-family--ibm-plex-sans: 'IBM Plex Sans', sans-serif;--wp--preset--font-family--ibarra-real-nova: 'Ibarra Real Nova', serif;--wp--preset--font-family--instrument-serif: 'Instrument Serif', serif;--wp--preset--font-family--inter: Inter, sans-serif;--wp--preset--font-family--josefin-sans: 'Josefin Sans', sans-serif;--wp--preset--font-family--jost: Jost, sans-serif;--wp--preset--font-family--libre-baskerville: 'Libre Baskerville', serif;--wp--preset--font-family--libre-franklin: 'Libre Franklin', sans-serif;--wp--preset--font-family--literata: Literata, serif;--wp--preset--font-family--lora: Lora, serif;--wp--preset--font-family--merriweather: Merriweather, serif;--wp--preset--font-family--montserrat: Montserrat, sans-serif;--wp--preset--font-family--newsreader: Newsreader, serif;--wp--preset--font-family--noto-sans-mono: 'Noto Sans Mono', sans-serif;--wp--preset--font-family--nunito: Nunito, sans-serif;--wp--preset--font-family--open-sans: 'Open Sans', sans-serif;--wp--preset--font-family--overpass: Overpass, sans-serif;--wp--preset--font-family--pt-serif: 'PT Serif', serif;--wp--preset--font-family--petrona: Petrona, serif;--wp--preset--font-family--piazzolla: Piazzolla, serif;--wp--preset--font-family--playfair-display: 'Playfair Display', serif;--wp--preset--font-family--plus-jakarta-sans: 'Plus Jakarta Sans', sans-serif;--wp--preset--font-family--poppins: Poppins, sans-serif;--wp--preset--font-family--raleway: Raleway, sans-serif;--wp--preset--font-family--roboto: Roboto, sans-serif;--wp--preset--font-family--roboto-slab: 'Roboto Slab', serif;--wp--preset--font-family--rubik: Rubik, sans-serif;--wp--preset--font-family--rufina: Rufina, serif;--wp--preset--font-family--sora: Sora, sans-serif;--wp--preset--font-family--source-sans-3: 'Source Sans 3', sans-serif;--wp--preset--font-family--source-serif-4: 'Source Serif 4', serif;--wp--preset--font-family--space-mono: 'Space Mono', monospace;--wp--preset--font-family--syne: Syne, sans-serif;--wp--preset--font-family--texturina: Texturina, serif;--wp--preset--font-family--urbanist: Urbanist, sans-serif;--wp--preset--font-family--work-sans: 'Work Sans', sans-serif;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.has-albert-sans-font-family{font-family: var(--wp--preset--font-family--albert-sans) !important;}.has-alegreya-font-family{font-family: var(--wp--preset--font-family--alegreya) !important;}.has-arvo-font-family{font-family: var(--wp--preset--font-family--arvo) !important;}.has-bodoni-moda-font-family{font-family: var(--wp--preset--font-family--bodoni-moda) !important;}.has-bricolage-grotesque-font-family{font-family: var(--wp--preset--font-family--bricolage-grotesque) !important;}.has-cabin-font-family{font-family: var(--wp--preset--font-family--cabin) !important;}.has-chivo-font-family{font-family: var(--wp--preset--font-family--chivo) !important;}.has-commissioner-font-family{font-family: var(--wp--preset--font-family--commissioner) !important;}.has-cormorant-font-family{font-family: var(--wp--preset--font-family--cormorant) !important;}.has-courier-prime-font-family{font-family: var(--wp--preset--font-family--courier-prime) !important;}.has-crimson-pro-font-family{font-family: var(--wp--preset--font-family--crimson-pro) !important;}.has-dm-mono-font-family{font-family: var(--wp--preset--font-family--dm-mono) !important;}.has-dm-sans-font-family{font-family: var(--wp--preset--font-family--dm-sans) !important;}.has-dm-serif-display-font-family{font-family: var(--wp--preset--font-family--dm-serif-display) !important;}.has-domine-font-family{font-family: var(--wp--preset--font-family--domine) !important;}.has-eb-garamond-font-family{font-family: var(--wp--preset--font-family--eb-garamond) !important;}.has-epilogue-font-family{font-family: var(--wp--preset--font-family--epilogue) !important;}.has-fahkwang-font-family{font-family: var(--wp--preset--font-family--fahkwang) !important;}.has-figtree-font-family{font-family: var(--wp--preset--font-family--figtree) !important;}.has-fira-sans-font-family{font-family: var(--wp--preset--font-family--fira-sans) !important;}.has-fjalla-one-font-family{font-family: var(--wp--preset--font-family--fjalla-one) !important;}.has-fraunces-font-family{font-family: var(--wp--preset--font-family--fraunces) !important;}.has-gabarito-font-family{font-family: var(--wp--preset--font-family--gabarito) !important;}.has-ibm-plex-mono-font-family{font-family: var(--wp--preset--font-family--ibm-plex-mono) !important;}.has-ibm-plex-sans-font-family{font-family: var(--wp--preset--font-family--ibm-plex-sans) !important;}.has-ibarra-real-nova-font-family{font-family: var(--wp--preset--font-family--ibarra-real-nova) !important;}.has-instrument-serif-font-family{font-family: var(--wp--preset--font-family--instrument-serif) !important;}.has-inter-font-family{font-family: var(--wp--preset--font-family--inter) !important;}.has-josefin-sans-font-family{font-family: var(--wp--preset--font-family--josefin-sans) !important;}.has-jost-font-family{font-family: var(--wp--preset--font-family--jost) !important;}.has-libre-baskerville-font-family{font-family: var(--wp--preset--font-family--libre-baskerville) !important;}.has-libre-franklin-font-family{font-family: var(--wp--preset--font-family--libre-franklin) !important;}.has-literata-font-family{font-family: var(--wp--preset--font-family--literata) !important;}.has-lora-font-family{font-family: var(--wp--preset--font-family--lora) !important;}.has-merriweather-font-family{font-family: var(--wp--preset--font-family--merriweather) !important;}.has-montserrat-font-family{font-family: var(--wp--preset--font-family--montserrat) !important;}.has-newsreader-font-family{font-family: var(--wp--preset--font-family--newsreader) !important;}.has-noto-sans-mono-font-family{font-family: var(--wp--preset--font-family--noto-sans-mono) !important;}.has-nunito-font-family{font-family: var(--wp--preset--font-family--nunito) !important;}.has-open-sans-font-family{font-family: var(--wp--preset--font-family--open-sans) !important;}.has-overpass-font-family{font-family: var(--wp--preset--font-family--overpass) !important;}.has-pt-serif-font-family{font-family: var(--wp--preset--font-family--pt-serif) !important;}.has-petrona-font-family{font-family: var(--wp--preset--font-family--petrona) !important;}.has-piazzolla-font-family{font-family: var(--wp--preset--font-family--piazzolla) !important;}.has-playfair-display-font-family{font-family: var(--wp--preset--font-family--playfair-display) !important;}.has-plus-jakarta-sans-font-family{font-family: var(--wp--preset--font-family--plus-jakarta-sans) !important;}.has-poppins-font-family{font-family: var(--wp--preset--font-family--poppins) !important;}.has-raleway-font-family{font-family: var(--wp--preset--font-family--raleway) !important;}.has-roboto-font-family{font-family: var(--wp--preset--font-family--roboto) !important;}.has-roboto-slab-font-family{font-family: var(--wp--preset--font-family--roboto-slab) !important;}.has-rubik-font-family{font-family: var(--wp--preset--font-family--rubik) !important;}.has-rufina-font-family{font-family: var(--wp--preset--font-family--rufina) !important;}.has-sora-font-family{font-family: var(--wp--preset--font-family--sora) !important;}.has-source-sans-3-font-family{font-family: var(--wp--preset--font-family--source-sans-3) !important;}.has-source-serif-4-font-family{font-family: var(--wp--preset--font-family--source-serif-4) !important;}.has-space-mono-font-family{font-family: var(--wp--preset--font-family--space-mono) !important;}.has-syne-font-family{font-family: var(--wp--preset--font-family--syne) !important;}.has-texturina-font-family{font-family: var(--wp--preset--font-family--texturina) !important;}.has-urbanist-font-family{font-family: var(--wp--preset--font-family--urbanist) !important;}.has-work-sans-font-family{font-family: var(--wp--preset--font-family--work-sans) !important;} :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} :root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} </style> <link crossorigin='anonymous' rel='stylesheet' id='all-css-10-1' href='https://s1.wp.com/_static/??-eJx9i0EKhDAMRS80nSBU1IV4Fi2xVtKmmBSZ24+60o27/z7vwZ6N46SYFHTBiAK5THBdMSuI/gi/TuQDNzMWk6n4kAQ2nIj9MT0c1g3fIo9siN2ogdMDzExj2M50iH1l687atqns+gfTiT2v&cssminify=yes' type='text/css' media='all' /> <link crossorigin='anonymous' rel='stylesheet' id='print-css-11-1' href='https://s1.wp.com/wp-content/mu-plugins/global-print/global-print.css?m=1465851035i&cssminify=yes' type='text/css' media='print' /> <style id='jetpack-global-styles-frontend-style-inline-css'> :root { --font-headings: unset; --font-base: unset; --font-headings-default: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif; --font-base-default: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;} </style> <link crossorigin='anonymous' rel='stylesheet' id='all-css-14-1' href='https://s2.wp.com/wp-content/themes/h4/global.css?m=1420737423i&cssminify=yes' type='text/css' media='all' /> <script type="text/javascript" id="wpcom-actionbar-placeholder-js-extra"> /* <![CDATA[ */ var actionbardata = {"siteID":"641345","postID":"0","siteURL":"http:\/\/ascending.wordpress.com","xhrURL":"https:\/\/ascending.wordpress.com\/wp-admin\/admin-ajax.php","nonce":"cdfed27b3c","isLoggedIn":"","statusMessage":"","subsEmailDefault":"instantly","proxyScriptUrl":"https:\/\/s0.wp.com\/wp-content\/js\/wpcom-proxy-request.js?ver=20211021","i18n":{"followedText":"New posts from this site will now appear in your <a href=\"https:\/\/wordpress.com\/read\">Reader<\/a>","foldBar":"Collapse this bar","unfoldBar":"Expand this bar"}}; /* ]]> */ </script> <script type="text/javascript" id="jetpack-mu-wpcom-settings-js-before"> /* <![CDATA[ */ var JETPACK_MU_WPCOM_SETTINGS = {"assetsUrl":"https:\/\/s1.wp.com\/wp-content\/mu-plugins\/jetpack-mu-wpcom-plugin\/sun\/vendor\/automattic\/jetpack-mu-wpcom\/src\/build\/"}; /* ]]> */ </script> <script crossorigin='anonymous' type='text/javascript' src='https://s1.wp.com/_static/??/wp-content/js/rlt-proxy.js,/wp-content/blog-plugins/wordads-classes/js/cmp/v2/cmp-non-gdpr.js?m=1720530689j'></script> <script type="text/javascript" id="rlt-proxy-js-after"> /* <![CDATA[ */ rltInitialize( {"token":null,"iframeOrigins":["https:\/\/widgets.wp.com"]} ); /* ]]> */ </script> <link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://ascending.wordpress.com/xmlrpc.php?rsd" /> <meta name="generator" content="WordPress.com" /> <!-- Jetpack Open Graph Tags --> <meta property="og:type" content="website" /> <meta property="og:title" content="KDE – exit’s /dev/urandom blog" /> <meta property="og:url" content="https://ascending.wordpress.com/category/kde/" /> <meta property="og:description" content="The Ultimate Free Software Desktop" /> <meta property="og:site_name" content="exit's /dev/urandom blog" /> <meta property="og:image" content="https://s0.wp.com/i/blank.jpg" /> <meta property="og:image:alt" content="" /> <meta property="og:locale" content="en_US" /> <meta property="fb:app_id" content="249643311490" /> <!-- End Jetpack Open Graph Tags --> <link rel="shortcut icon" type="image/x-icon" href="https://s1.wp.com/i/favicon.ico" sizes="16x16 24x24 32x32 48x48" /> <link rel="icon" type="image/x-icon" href="https://s1.wp.com/i/favicon.ico" sizes="16x16 24x24 32x32 48x48" /> <link rel="apple-touch-icon" href="https://s2.wp.com/i/webclip.png" /> <link rel='openid.server' href='https://ascending.wordpress.com/?openidserver=1' /> <link rel='openid.delegate' href='https://ascending.wordpress.com/' /> <link rel="search" type="application/opensearchdescription+xml" href="https://ascending.wordpress.com/osd.xml" title="exit's /dev/urandom blog" /> <link rel="search" type="application/opensearchdescription+xml" href="https://s1.wp.com/opensearch.xml" title="WordPress.com" /> <meta name="application-name" content="exit's /dev/urandom blog" /><meta name="msapplication-window" content="width=device-width;height=device-height" /><meta name="msapplication-tooltip" content=" birds came flying from the underground" /><meta name="description" content="The Ultimate Free Software Desktop" /> <style type="text/css"> #headerimg{ background: url(https://ascending.wordpress.com/wp-content/uploads/2009/01/headnin21.jpg) no-repeat; } #header h1 a, .description { color:#214f82; } </style> <script type="text/javascript"> /* <![CDATA[ */ var wa_smart = { 'network_id': 3905, 'site_id': 474853, 'page_id': 1572546, 'blog_id': 641345, 'post_id': null, 'theme': 'pub/contempt', 'target': 'wp_blog_id=641345;language=en', '_': { 'title': 'Advertisement', 'privacy_settings': 'Privacy Settings' }, 'top': { 'enabled': false, 'adflow_enabled': true, 'format_id': 135099 }, 'inline': { 'enabled': false, 'adflow_enabled': true, 'format_id': 110354, 'max_slots': 20, 'max_blaze_slots': 20 }, 'belowpost': { 'enabled': false, 'adflow_enabled': true, 'format_id': 134071 }, 'bottom_sticky': { 'enabled': false, 'adflow_enabled': true, 'format_id': 117571 }, 'sidebar': { 'enabled': false, 'adflow_enabled': true, 'format_id': 134686 }, 'sidebar_sticky_right': { 'enabled': false, 'adflow_enabled': true, 'format_id': 135281 }, 'gutenberg_rectangle': { 'enabled': false, 'adflow_enabled': true, 'format_id': 134788 }, 'gutenberg_leaderboard': { 'enabled': false, 'adflow_enabled': true, 'format_id': 135073 }, 'gutenberg_mobile_leaderboard': { 'enabled': false, 'adflow_enabled': true, 'format_id': 135098 }, 'gutenberg_skyscraper': { 'enabled': false, 'adflow_enabled': true, 'format_id': 135088 } }; wa_smart.cmd = []; /* ]]> */ </script> <script type="text/javascript"> function __ATA_CC() {var v = document.cookie.match('(^|;) ?personalized-ads-consent=([^;]*)(;|$)');return v ? 1 : 0;} var __ATA_PP = { 'pt': 3, 'ht': 0, 'tn': 'contempt', 'uloggedin': 0, 'amp': false, 'consent': __ATA_CC(), 'gdpr_applies': false, 'ad': { 'label': { 'text': 'Advertisements' }, 'reportAd': { 'text': 'Report this ad' } }, 'disabled_slot_formats': [], 'siteid': 8982, 'blogid': 641345 }; var __ATA = __ATA || {}; __ATA.cmd = __ATA.cmd || []; __ATA.criteo = __ATA.criteo || {}; __ATA.criteo.cmd = __ATA.criteo.cmd || []; </script> <script type="text/javascript"> (function(){var g=Date.now||function(){return+new Date};function h(a,b){a:{for(var c=a.length,d="string"==typeof a?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a)){b=e;break a}b=-1}return 0>b?null:"string"==typeof a?a.charAt(b):a[b]};function k(a,b,c){c=null!=c?"="+encodeURIComponent(String(c)):"";if(b+=c){c=a.indexOf("#");0>c&&(c=a.length);var d=a.indexOf("?");if(0>d||d>c){d=c;var e=""}else e=a.substring(d+1,c);a=[a.substr(0,d),e,a.substr(c)];c=a[1];a[1]=b?c?c+"&"+b:b:c;a=a[0]+(a[1]?"?"+a[1]:"")+a[2]}return a};var l=0;function m(a,b){var c=document.createElement("script");c.src=a;c.onload=function(){b&&b(void 0)};c.onerror=function(){b&&b("error")};a=document.getElementsByTagName("head");var d;a&&0!==a.length?d=a[0]:d=document.documentElement;d.appendChild(c)}function n(a){var b=void 0===b?document.cookie:b;return(b=h(b.split("; "),function(c){return-1!=c.indexOf(a+"=")}))?b.split("=")[1]:""}function p(a){return"string"==typeof a&&0<a.length} function r(a,b,c){b=void 0===b?"":b;c=void 0===c?".":c;var d=[];Object.keys(a).forEach(function(e){var f=a[e],q=typeof f;"object"==q&&null!=f||"function"==q?d.push(r(f,b+e+c)):null!==f&&void 0!==f&&(e=encodeURIComponent(b+e),d.push(e+"="+encodeURIComponent(f)))});return d.filter(p).join("&")}function t(a,b){a||((window.__ATA||{}).config=b.c,m(b.url))}var u=Math.floor(1E13*Math.random()),v=window.__ATA||{};window.__ATA=v;window.__ATA.cmd=v.cmd||[];v.rid=u;v.createdAt=g();var w=window.__ATA||{},x="s.pubmine.com"; w&&w.serverDomain&&(x=w.serverDomain);var y="//"+x+"/conf",z=window.top===window,A=window.__ATA_PP&&window.__ATA_PP.gdpr_applies,B="boolean"===typeof A?Number(A):null,C=window.__ATA_PP||null,D=z?document.referrer?document.referrer:null:null,E=z?window.location.href:document.referrer?document.referrer:null,F,G=n("__ATA_tuuid");F=G?G:null;var H=window.innerWidth+"x"+window.innerHeight,I=n("usprivacy"),J=r({gdpr:B,pp:C,rid:u,src:D,ref:E,tuuid:F,vp:H,us_privacy:I?I:null},"","."); (function(a){var b=void 0===b?"cb":b;l++;var c="callback__"+g().toString(36)+"_"+l.toString(36);a=k(a,b,c);window[c]=function(d){t(void 0,d)};m(a,function(d){d&&t(d)})})(y+"?"+J);}).call(this); </script> <script> var sas_fallback = sas_fallback || []; sas_fallback.push( { tag: "<div id="atatags-26942-{{unique_id}}"></div><script>__ATA.cmd.push(function() {__ATA.initDynamicSlot({id: \'atatags-26942-{{unique_id}}\',location: 120,formFactor: \'001\',label: {text: \'Advertisements\',},creative: {reportAd: {text: \'Report this ad\',},privacySettings: {text: \'Privacy\',}}});});</script>", type: 'belowpost' }, { tag: "<div id="atatags-26942-{{unique_id}}"></div><script>__ATA.cmd.push(function() {__ATA.initDynamicSlot({id: \'atatags-26942-{{unique_id}}\',location: 310,formFactor: \'001\',label: {text: \'Advertisements\',},creative: {reportAd: {text: \'Report this ad\',},privacySettings: {text: \'Privacy\',}}});});</script>", type: 'inline' }, { tag: "<div id="atatags-26942-{{unique_id}}"></div><script>__ATA.cmd.push(function() {__ATA.initDynamicSlot({id: \'atatags-26942-{{unique_id}}\',location: 140,formFactor: \'003\',label: {text: \'Advertisements\',},creative: {reportAd: {text: \'Report this ad\',},privacySettings: {text: \'Privacy\',}}});});</script>", type: 'sidebar' }, { tag: "<div id="atatags-26942-{{unique_id}}"></div><script>__ATA.cmd.push(function() {__ATA.initDynamicSlot({id: \'atatags-26942-{{unique_id}}\',location: 110,formFactor: \'002\',label: {text: \'Advertisements\',},creative: {reportAd: {text: \'Report this ad\',},privacySettings: {text: \'Privacy\',}}});});</script>", type: 'top' } ); </script> <script type="text/javascript"> window.doNotSellCallback = function() { var linkElements = [ 'a[href="https://wordpress.com/?ref=footer_blog"]', 'a[href="https://wordpress.com/?ref=footer_website"]', 'a[href="https://wordpress.com/?ref=vertical_footer"]', 'a[href^="https://wordpress.com/?ref=footer_segment_"]', ].join(','); var dnsLink = document.createElement( 'a' ); dnsLink.href = 'https://wordpress.com/advertising-program-optout/'; dnsLink.classList.add( 'do-not-sell-link' ); dnsLink.rel = 'nofollow'; dnsLink.style.marginLeft = '0.5em'; dnsLink.textContent = 'Do Not Sell or Share My Personal Information'; var creditLinks = document.querySelectorAll( linkElements ); if ( 0 === creditLinks.length ) { return false; } Array.prototype.forEach.call( creditLinks, function( el ) { el.insertAdjacentElement( 'afterend', dnsLink ); }); return true; }; </script> <script type="text/javascript"> window.google_analytics_uacct = "UA-52447-2"; </script> <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-52447-2']); _gaq.push(['_gat._anonymizeIp']); _gaq.push(['_setDomainName', 'wordpress.com']); _gaq.push(['_initData']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(ga); })(); </script> </head> <body class="archive category category-kde category-804 customizer-styles-applied jetpack-reblog-enabled has-marketing-bar has-marketing-bar-theme-contempt"> <div id="page"> <div id="header"> <div id="headerimg" onclick="location.href='https://ascending.wordpress.com';" style="cursor: pointer;"> <h1><a href="https://ascending.wordpress.com/">exit’s /dev/urandom blog</a></h1> <div class="description"> birds came flying from the underground</div> </div> </div> <ul id="pagebar" class="menu pagebar"><li ><a href="https://ascending.wordpress.com/">Home</a></li><li class="page_item page-item-2"><a href="https://ascending.wordpress.com/about/">About</a></li> <li class="page_item page-item-20"><a href="https://ascending.wordpress.com/code/">Code</a></li> <li class="page_item page-item-98"><a href="https://ascending.wordpress.com/movies/">Movies</a></li> </ul> <div id="grad" style="height: 65px; width: 100%; background: url(https://s2.wp.com/wp-content/themes/pub/contempt/images/blue_flower/topgrad.jpg);"> </div> <div id="content"> <div class="post-543 post type-post status-publish format-standard hentry category-kde category-linux category-money category-programming category-technology category-thoughts tag-amarok tag-api tag-bug tag-business tag-copyright tag-development tag-industry tag-license tag-licensing tag-lyric tag-lyrics tag-lyricwiki tag-mediawiki tag-music-industry tag-open tag-open-source tag-planetkde tag-record-companies tag-riaa tag-stupidity tag-wiki tag-wikipedia tag-wrong tag-wtf" id="post-543"> <h2><a href="https://ascending.wordpress.com/2009/08/09/why-open-source-rocks-and-the-music-industry-does-not/" rel="bookmark">Why Open Source Rocks (and the music industry does not)</a></h2> <small>August 9, 2009</small><br /> <div class="entry"> <p style="text-align:justify;">If you ever looked for song lyrics online, you know how most lyrics sites are. Plenty of ads, popups, silly scrolling flash gadgets, bad punctuation, and no easy way to send in corrections. Why not apply to lyrics the same community-driven editing model that has made Wikipedia so successful?</p> <p style="text-align:justify;">LyricWiki.org has done exactly that, and more. They have provided an API, making it easy for media players to query the database and fetch the lyrics for a specific song. To get an idea of this project’s success, check out <a href="http://meta.wikimedia.org/wiki/List_of_largest_wikis#List_of_largest_MediaWiki_wikis">these stats</a>. At the time of this writing, LyricWiki is the fifth largest MediaWiki in existence, and the largest wiki that is not a Wikipedia or Wiktionary. What an inspiring example of a community built around the ideals of improving content and making information available. What could go wrong?</p> <p style="text-align:justify;"> <a href="https://ascending.wordpress.com/2009/08/09/why-open-source-rocks-and-the-music-industry-does-not/#more-543" class="more-link">Read the rest of this entry »</a></p> <div id="atatags-26942-6742dcd1637b6"></div> <script> __ATA.cmd.push(function() { __ATA.initDynamicSlot({ id: 'atatags-26942-6742dcd1637b6', location: 120, formFactor: '001', label: { text: 'Advertisements', }, creative: { reportAd: { text: 'Report this ad', }, privacySettings: { text: 'Privacy', } } }); }); </script> </div> <p class="postmetadata"> <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/speech_bubble.gif" alt="" /> <a href="https://ascending.wordpress.com/2009/08/09/why-open-source-rocks-and-the-music-industry-does-not/#comments">12 Comments</a> | <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/documents.gif" alt="" /> <a href="https://ascending.wordpress.com/category/kde/" rel="category tag">KDE</a>, <a href="https://ascending.wordpress.com/category/linux/" rel="category tag">Linux</a>, <a href="https://ascending.wordpress.com/category/money/" rel="category tag">Money</a>, <a href="https://ascending.wordpress.com/category/programming/" rel="category tag">Programming</a>, <a href="https://ascending.wordpress.com/category/technology/" rel="category tag">Technology</a>, <a href="https://ascending.wordpress.com/category/thoughts/" rel="category tag">Thoughts</a> | Tagged: <a href="https://ascending.wordpress.com/tag/amarok/" rel="tag">amarok</a>, <a href="https://ascending.wordpress.com/tag/api/" rel="tag">api</a>, <a href="https://ascending.wordpress.com/tag/bug/" rel="tag">bug</a>, <a href="https://ascending.wordpress.com/tag/business/" rel="tag">business</a>, <a href="https://ascending.wordpress.com/tag/copyright/" rel="tag">copyright</a>, <a href="https://ascending.wordpress.com/tag/development/" rel="tag">development</a>, <a href="https://ascending.wordpress.com/tag/industry/" rel="tag">industry</a>, <a href="https://ascending.wordpress.com/tag/license/" rel="tag">license</a>, <a href="https://ascending.wordpress.com/tag/licensing/" rel="tag">licensing</a>, <a href="https://ascending.wordpress.com/tag/lyric/" rel="tag">lyric</a>, <a href="https://ascending.wordpress.com/tag/lyrics/" rel="tag">lyrics</a>, <a href="https://ascending.wordpress.com/tag/lyricwiki/" rel="tag">lyricwiki</a>, <a href="https://ascending.wordpress.com/tag/mediawiki/" rel="tag">mediawiki</a>, <a href="https://ascending.wordpress.com/tag/music-industry/" rel="tag">music industry</a>, <a href="https://ascending.wordpress.com/tag/open/" rel="tag">open</a>, <a href="https://ascending.wordpress.com/tag/open-source/" rel="tag">open source</a>, <a href="https://ascending.wordpress.com/tag/planetkde/" rel="tag">planetkde</a>, <a href="https://ascending.wordpress.com/tag/record-companies/" rel="tag">record companies</a>, <a href="https://ascending.wordpress.com/tag/riaa/" rel="tag">riaa</a>, <a href="https://ascending.wordpress.com/tag/stupidity/" rel="tag">stupidity</a>, <a href="https://ascending.wordpress.com/tag/wiki/" rel="tag">wiki</a>, <a href="https://ascending.wordpress.com/tag/wikipedia/" rel="tag">wikipedia</a>, <a href="https://ascending.wordpress.com/tag/wrong/" rel="tag">wrong</a>, <a href="https://ascending.wordpress.com/tag/wtf/" rel="tag">wtf</a> | <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/permalink.gif" alt="" /> <a href="https://ascending.wordpress.com/2009/08/09/why-open-source-rocks-and-the-music-industry-does-not/" rel="bookmark" title="Permanent Link to Why Open Source Rocks (and the music industry does not)">Permalink</a> <br /><img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/figure_ver1.gif" alt="" /> Posted by Constantin </p> </div> <hr /> <div class="post-509 post type-post status-publish format-standard hentry category-kde category-linux tag-acceleration tag-intel tag-kde tag-kubuntu tag-linux tag-plasma tag-slow tag-ubuntu tag-uxa tag-x11" id="post-509"> <h2><a href="https://ascending.wordpress.com/2009/06/25/slow-kde-plasma-on-intel-integrated-graphics/" rel="bookmark">Slow KDE / Plasma on Intel Integrated Graphics?</a></h2> <small>June 25, 2009</small><br /> <div class="entry"> <p style="text-align:justify;">Got a laptop with an Intel GMA? Is Alt+Tab slower than you would like? Does Plasma take forever to move or resize an applet? Maybe you didn’t think it could get better?</p> <p style="text-align:justify;">Try playing with the options in <code>xorg.conf</code>. <a href="http://userbase.kde.org/GPU-Performance">This</a> is a good starting place.</p> <p style="text-align:justify;">In my case <code>lspci</code> shows <em>‘Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller [8086:2a42]’</em>, and putting</p> <blockquote><p>Option聽 “AccelMethod”聽聽 “UXA”</p></blockquote> <p style="text-align:justify;">in <code>/etc/X11/xorg.conf</code> has improved things significantly. UXA acceleration has been <a href="https://wiki.ubuntu.com/X/UxaTesting">disabled by default in Ubuntu</a> because it caused problems for some people, but in my case enabling it has made everything snappier, and also gotten rid of the drawing artifacts I used to see.</p> <p style="text-align:justify;">It also caused suspend to stop working (assert in X upon waking), but a <a href="https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/347587/comments/21">recent fix</a> to <code>xserver-xorg-video-intel</code> takes care of that. Distros might have released an update by now, but if you’re using Kubuntu and can’t wait, you can grab the packages from <a href="http://ppa.launchpad.net/xorg-edgers/">this ppa</a>.</p> <p style="text-align:justify;">Snappy plasma, working suspend, happy user.</p> <p style="text-align:justify;"><strong>Update:</strong> Here is <a href="http://kdemonkey.blogspot.com/2009/05/konsole-under-jaunty.html">a post with another trick</a>, using the <code>-graphicssystem raster</code> option of Qt programs. It makes switching tabs in Konsole faster, and it does wonders for long lines in Kate!</p> <div id="atatags-370373-6742dcd164742"> <script type="text/javascript"> __ATA.cmd.push(function() { __ATA.initVideoSlot('atatags-370373-6742dcd164742', { sectionId: '370373', format: 'inread' }); }); </script> </div> </div> <p class="postmetadata"> <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/speech_bubble.gif" alt="" /> <a href="https://ascending.wordpress.com/2009/06/25/slow-kde-plasma-on-intel-integrated-graphics/#comments">1 Comment</a> | <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/documents.gif" alt="" /> <a href="https://ascending.wordpress.com/category/kde/" rel="category tag">KDE</a>, <a href="https://ascending.wordpress.com/category/linux/" rel="category tag">Linux</a> | Tagged: <a href="https://ascending.wordpress.com/tag/acceleration/" rel="tag">acceleration</a>, <a href="https://ascending.wordpress.com/tag/intel/" rel="tag">intel</a>, <a href="https://ascending.wordpress.com/tag/kde/" rel="tag">KDE</a>, <a href="https://ascending.wordpress.com/tag/kubuntu/" rel="tag">kubuntu</a>, <a href="https://ascending.wordpress.com/tag/linux/" rel="tag">Linux</a>, <a href="https://ascending.wordpress.com/tag/plasma/" rel="tag">plasma</a>, <a href="https://ascending.wordpress.com/tag/slow/" rel="tag">slow</a>, <a href="https://ascending.wordpress.com/tag/ubuntu/" rel="tag">ubuntu</a>, <a href="https://ascending.wordpress.com/tag/uxa/" rel="tag">uxa</a>, <a href="https://ascending.wordpress.com/tag/x11/" rel="tag">x11</a> | <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/permalink.gif" alt="" /> <a href="https://ascending.wordpress.com/2009/06/25/slow-kde-plasma-on-intel-integrated-graphics/" rel="bookmark" title="Permanent Link to Slow KDE / Plasma on Intel Integrated Graphics?">Permalink</a> <br /><img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/figure_ver1.gif" alt="" /> Posted by Constantin </p> </div> <hr /> <div class="post-398 post type-post status-publish format-standard hentry category-blogging category-blogroll category-kde category-life category-programming category-random tag-away tag-code tag-coding tag-domain tag-hosting tag-magic tag-news tag-theme tag-update" id="post-398"> <h2><a href="https://ascending.wordpress.com/2008/05/07/disorder/" rel="bookmark">Disorder</a></h2> <small>May 7, 2008</small><br /> <div class="entry"> <p>Sorry about the mess I currently made of this blog. I updated the <a href="https://ascending.wordpress.com/code/">Code section</a> (aka. Magic) and had to create a separate post for every config file that was listed there. The news here is:</p> <ul> <li>I’ve become maintainer of the KCharSelect widget/utility app in KDE. I haven’t done much besides bragging yet, but I have some bug fixes (before <a href="http://techbase.kde.org/Schedules/KDE4/4.1_Release_Schedule">4.1</a>) and features in mind.</li> <li>With a little luck (and a lot of free time if I find it), I will begin porting <a href="http://www.methylblue.com/filelight/">Filelight</a> to KDE 4.</li> </ul> <p>In other weakly related news:</p> <ul> <li>Theme change. Opinions?</li> <li>Blogroll updated. Forget common sense.</li> <li>I won’t be home until Monday. I’m going to make an ass of myself <em>again</em> in front of the unbeatable Romanian contestants at the <a href="http://campion.edu.ro/index.php">.Campion</a> final round <img src="https://i0.wp.com/faq.wordpress.com/wp-includes/images/smilies/icon_eek.gif" alt="" /></li> <li>I’ve been pondering whether I should finally get my own domain + paid hosting soon. I decided that it’s not yet the time, since except for a few gotchas (can only upload certain file types, can’t change CSS), I’ve been really happy with the WordPress.com service.</li> </ul> <p>Now, if this post is not random, than I don’t know what is! <img src="https://i0.wp.com/faq.wordpress.com/wp-includes/images/smilies/icon_wink.gif" alt="" /></p> </div> <p class="postmetadata"> <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/speech_bubble.gif" alt="" /> <a href="https://ascending.wordpress.com/2008/05/07/disorder/#comments">1 Comment</a> | <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/documents.gif" alt="" /> <a href="https://ascending.wordpress.com/category/blogging/" rel="category tag">Blogging</a>, <a href="https://ascending.wordpress.com/category/blogroll/" rel="category tag">Blogroll</a>, <a href="https://ascending.wordpress.com/category/kde/" rel="category tag">KDE</a>, <a href="https://ascending.wordpress.com/category/life/" rel="category tag">Life</a>, <a href="https://ascending.wordpress.com/category/programming/" rel="category tag">Programming</a>, <a href="https://ascending.wordpress.com/category/random/" rel="category tag">Random</a> | Tagged: <a href="https://ascending.wordpress.com/tag/away/" rel="tag">away</a>, <a href="https://ascending.wordpress.com/tag/code/" rel="tag">code</a>, <a href="https://ascending.wordpress.com/tag/coding/" rel="tag">coding</a>, <a href="https://ascending.wordpress.com/tag/domain/" rel="tag">domain</a>, <a href="https://ascending.wordpress.com/tag/hosting/" rel="tag">hosting</a>, <a href="https://ascending.wordpress.com/tag/magic/" rel="tag">magic</a>, <a href="https://ascending.wordpress.com/tag/news/" rel="tag">news</a>, <a href="https://ascending.wordpress.com/tag/theme/" rel="tag">theme</a>, <a href="https://ascending.wordpress.com/tag/update/" rel="tag">update</a> | <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/permalink.gif" alt="" /> <a href="https://ascending.wordpress.com/2008/05/07/disorder/" rel="bookmark" title="Permanent Link to Disorder">Permalink</a> <br /><img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/figure_ver1.gif" alt="" /> Posted by Constantin </p> </div> <hr /> <div class="post-379 post type-post status-publish format-standard hentry category-kde category-linux category-programming category-technology tag-audio tag-audio-books tag-code tag-conversion tag-gpl tag-konvert2ogg tag-mp3 tag-ogg tag-ogg-vorbis tag-open-source tag-project tag-qt tag-software tag-sound" id="post-379"> <h2><a href="https://ascending.wordpress.com/2008/03/21/konvert2ogg-02-is-here/" rel="bookmark">Konvert2Ogg 0.2 is here</a></h2> <small>March 21, 2008</small><br /> <div class="entry"> <p>Finally,</p> <p>after a complete redesign,</p> <p>and a complete code rewrite,</p> <p>released under a full moon,</p> <p>feature-complete and usable,</p> <p>[drum roll],</p> <p>[fireworks],</p> <p><a href="https://sourceforge.net/project/showfiles.php?group_id=198617&package_id=235869&release_id=586052">Konvert2Ogg 0.2</a> is here.</p> <p align="right"><a href="http://konvert2ogg.sourceforge.net/">(updated) Home page</a><br /> <a href="https://sourceforge.net/projects/konvert2ogg/">SourceForge.net project page</a><br /> <a href="http://www.kde-apps.org/content/show.php?content=77365">KDE-Apps.org page</a></p> <p>I am especially thrilled about what I’ve learned while developing this project:</p> <ul> <li>How to implement a factory in C++, so that when I want to add a new class, I don’t need to add references to it all over the place.</li> <li>As a bonus, make that factory a singleton ;)</li> <li>Lots of things about Qt, KDE, and even svn, XHTML and CSS, that I could only learn hands-on. (too many to list)</li> <li>I even fixed some bugs / made some improvements to kdelibs while working on K2O!</li> <li>Probably a bunch of other stuff I am forgetting right now.</li> </ul> <p>Although the program now works and does what I want, this is no way the end of the journey. There are many more cool things in the can :D</p> </div> <p class="postmetadata"> <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/speech_bubble.gif" alt="" /> <span>Comments Off<span class="screen-reader-text"> on Konvert2Ogg 0.2 is here</span></span> | <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/documents.gif" alt="" /> <a href="https://ascending.wordpress.com/category/kde/" rel="category tag">KDE</a>, <a href="https://ascending.wordpress.com/category/linux/" rel="category tag">Linux</a>, <a href="https://ascending.wordpress.com/category/programming/" rel="category tag">Programming</a>, <a href="https://ascending.wordpress.com/category/technology/" rel="category tag">Technology</a> | Tagged: <a href="https://ascending.wordpress.com/tag/audio/" rel="tag">audio</a>, <a href="https://ascending.wordpress.com/tag/audio-books/" rel="tag">audio books</a>, <a href="https://ascending.wordpress.com/tag/code/" rel="tag">code</a>, <a href="https://ascending.wordpress.com/tag/conversion/" rel="tag">conversion</a>, <a href="https://ascending.wordpress.com/tag/gpl/" rel="tag">gpl</a>, <a href="https://ascending.wordpress.com/tag/konvert2ogg/" rel="tag">konvert2ogg</a>, <a href="https://ascending.wordpress.com/tag/mp3/" rel="tag">mp3</a>, <a href="https://ascending.wordpress.com/tag/ogg/" rel="tag">ogg</a>, <a href="https://ascending.wordpress.com/tag/ogg-vorbis/" rel="tag">ogg vorbis</a>, <a href="https://ascending.wordpress.com/tag/open-source/" rel="tag">open source</a>, <a href="https://ascending.wordpress.com/tag/project/" rel="tag">project</a>, <a href="https://ascending.wordpress.com/tag/qt/" rel="tag">qt</a>, <a href="https://ascending.wordpress.com/tag/software/" rel="tag">software</a>, <a href="https://ascending.wordpress.com/tag/sound/" rel="tag">sound</a> | <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/permalink.gif" alt="" /> <a href="https://ascending.wordpress.com/2008/03/21/konvert2ogg-02-is-here/" rel="bookmark" title="Permanent Link to Konvert2Ogg 0.2 is here">Permalink</a> <br /><img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/figure_ver1.gif" alt="" /> Posted by Constantin </p> </div> <hr /> <div class="post-368 post type-post status-publish format-standard hentry category-kde category-learning category-linux category-programming category-random category-screenshots tag-qt tag-school" id="post-368"> <h2><a href="https://ascending.wordpress.com/2008/02/29/people-born-today-age-four-times-slower/" rel="bookmark">People born today age four times slower.</a></h2> <small>February 29, 2008</small><br /> <div class="entry"> <p>In other completely random news:</p> <ul> <li>School’s out for a week!</li> <li>Konvert2Ogg, the KDE project I’m working on, has a new mission statement and code and GUI design. I am especially satisfied with the way the singleton / object factory (as taught by <a href="http://www.informit.com/store/product.aspx?isbn=0201704315">Alexandrescu</a>) has turned out. With the factory and the base classes in place, adding support for Oggenc took only a few minutes.<br /> <a href="https://ascending.wordpress.com/wp-content/uploads/2008/02/k2o-for-blog.png" title="k2o-for-blog.png"><img src="https://ascending.wordpress.com/wp-content/uploads/2008/02/k2o-for-blog.thumbnail.png?w=450" alt="k2o-for-blog.png" /></a><br /> Wait for version 0.2 sometime in the next few weeks.</li> </ul> </div> <p class="postmetadata"> <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/speech_bubble.gif" alt="" /> <a href="https://ascending.wordpress.com/2008/02/29/people-born-today-age-four-times-slower/#comments">1 Comment</a> | <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/documents.gif" alt="" /> <a href="https://ascending.wordpress.com/category/kde/" rel="category tag">KDE</a>, <a href="https://ascending.wordpress.com/category/learning/" rel="category tag">Learning</a>, <a href="https://ascending.wordpress.com/category/linux/" rel="category tag">Linux</a>, <a href="https://ascending.wordpress.com/category/programming/" rel="category tag">Programming</a>, <a href="https://ascending.wordpress.com/category/random/" rel="category tag">Random</a>, <a href="https://ascending.wordpress.com/category/screenshots/" rel="category tag">Screenshots</a> | Tagged: <a href="https://ascending.wordpress.com/tag/qt/" rel="tag">qt</a>, <a href="https://ascending.wordpress.com/tag/school/" rel="tag">School</a> | <img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/permalink.gif" alt="" /> <a href="https://ascending.wordpress.com/2008/02/29/people-born-today-age-four-times-slower/" rel="bookmark" title="Permanent Link to People born today age four times slower.">Permalink</a> <br /><img src="https://s2.wp.com/wp-content/themes/pub/contempt/images/blog/figure_ver1.gif" alt="" /> Posted by Constantin </p> </div> <hr /> <div class="navigation"> <div class="alignleft"><a href="https://ascending.wordpress.com/category/kde/page/2/" >« Previous Entries</a></div> <div class="alignright"></div> </div> </div> <div id="sidebar"> <ul> <li> <p>You are currently browsing the archives for the KDE category.</p> </li> <li id="text-324368362" class="widget widget_text"><h2 class="widgettitle">Blog Archived</h2> <div class="textwidget">I have moved to <a href="http://thirld.com/blog/">thirld.com/blog</a>.</div> </li> <li id="tag_cloud-2" class="widget widget_tag_cloud"><h2 class="widgettitle">ingredients</h2> <div style="overflow: hidden;"><a href="https://ascending.wordpress.com/category/blogging/" style="font-size: 116.23711340206%; padding: 1px; margin: 1px;" title="Blogging (25)">Blogging</a> <a href="https://ascending.wordpress.com/category/books/" style="font-size: 172.16494845361%; padding: 1px; margin: 1px;" title="Books (56)">Books</a> <a href="https://ascending.wordpress.com/category/funny/" style="font-size: 119.84536082474%; padding: 1px; margin: 1px;" title="Funny (27)">Funny</a> <a href="https://ascending.wordpress.com/category/kde/" style="font-size: 110.82474226804%; padding: 1px; margin: 1px;" title="KDE (22)">KDE</a> <a href="https://ascending.wordpress.com/category/learning/" style="font-size: 128.86597938144%; padding: 1px; margin: 1px;" title="Learning (32)">Learning</a> <a href="https://ascending.wordpress.com/category/life/" style="font-size: 204.63917525773%; padding: 1px; margin: 1px;" title="Life (74)">Life</a> <a href="https://ascending.wordpress.com/category/linux/" style="font-size: 172.16494845361%; padding: 1px; margin: 1px;" title="Linux (56)">Linux</a> <a href="https://ascending.wordpress.com/category/moldova/" style="font-size: 121.64948453608%; padding: 1px; margin: 1px;" title="Moldova (28)">Moldova</a> <a href="https://ascending.wordpress.com/category/poetry/" style="font-size: 109.0206185567%; padding: 1px; margin: 1px;" title="Poetry (21)">Poetry</a> <a href="https://ascending.wordpress.com/category/programming/" style="font-size: 148.71134020619%; padding: 1px; margin: 1px;" title="Programming (43)">Programming</a> <a href="https://ascending.wordpress.com/category/random/" style="font-size: 275%; padding: 1px; margin: 1px;" title="Random (113)">Random</a> <a href="https://ascending.wordpress.com/category/romanian/" style="font-size: 119.84536082474%; padding: 1px; margin: 1px;" title="Romanian (27)">Romanian</a> <a href="https://ascending.wordpress.com/category/shell/" style="font-size: 109.0206185567%; padding: 1px; margin: 1px;" title="Shell (21)">Shell</a> <a href="https://ascending.wordpress.com/category/technology/" style="font-size: 100%; padding: 1px; margin: 1px;" title="Technology (16)">Technology</a> <a href="https://ascending.wordpress.com/tag/thoughts/" style="font-size: 244.32989690722%; padding: 1px; margin: 1px;" title="Thoughts (96)">Thoughts</a> <a href="https://ascending.wordpress.com/category/writing/" style="font-size: 145.10309278351%; padding: 1px; margin: 1px;" title="Writing (41)">Writing</a> </div></li> <li id="text-324368361" class="widget widget_text"><h2 class="widgettitle">alter egos</h2> <div class="textwidget"><ul style="margin:0;padding:0;"><li><a href="http://www.last.fm/user/exit3219/">Last.fm</a></li> <li><a href="http://www.librarything.com/catalog/ascending">LibraryThing</a></li> <li><a href="http://www.flickr.com/photos/bacovia/">Flickr</a></li> </ul></div> </li> <li id="linkcat-1356" class="widget widget_links"><h2 class="widgettitle">Blogroll</h2> <ul class='xoxo blogroll'> <li><a href="http://liquidat.wordpress.com/" title="Mostly KDE and Linux">/home/liquidat</a></li> <li><a href="http://railean.net/" title="Here be raliens">Area51</a></li> <li><a href="http://indigested.wordpress.com/" title="卯n “dig” este “d”">INDIGESTED</a></li> <li><a href="http://lifeinstillmode.blogspot.com/" title="photos… taken the way they are, as they are, un-manufactured, un-adulterated, un-modified, un-interrupted">Life In Still Mode</a></li> <li><a href="http://ilovemint.wordpress.com/" title="I like to shock people.">Lose Your Dreams and You Will Lose Your Mind</a></li> <li><a href="http://postsecret.blogspot.com/">PostSecret</a></li> <li><a href="http://randomvandal.wordpress.com/" title="What people take out of these images is purely in the eye of the beholder.">Random Vandal</a></li> </ul> </li> <li id="archives-2" class="widget widget_archive"><h2 class="widgettitle">archives</h2> <ul> <li><a href='https://ascending.wordpress.com/2011/08/'>August 2011</a></li> <li><a href='https://ascending.wordpress.com/2011/02/'>February 2011</a></li> <li><a href='https://ascending.wordpress.com/2010/01/'>January 2010</a></li> <li><a href='https://ascending.wordpress.com/2009/12/'>December 2009</a></li> <li><a href='https://ascending.wordpress.com/2009/09/'>September 2009</a></li> <li><a href='https://ascending.wordpress.com/2009/08/'>August 2009</a></li> <li><a href='https://ascending.wordpress.com/2009/06/'>June 2009</a></li> <li><a href='https://ascending.wordpress.com/2009/05/'>May 2009</a></li> <li><a href='https://ascending.wordpress.com/2009/03/'>March 2009</a></li> <li><a href='https://ascending.wordpress.com/2009/02/'>February 2009</a></li> <li><a href='https://ascending.wordpress.com/2009/01/'>January 2009</a></li> <li><a href='https://ascending.wordpress.com/2008/12/'>December 2008</a></li> <li><a href='https://ascending.wordpress.com/2008/10/'>October 2008</a></li> <li><a href='https://ascending.wordpress.com/2008/09/'>September 2008</a></li> <li><a href='https://ascending.wordpress.com/2008/08/'>August 2008</a></li> <li><a href='https://ascending.wordpress.com/2008/07/'>July 2008</a></li> <li><a href='https://ascending.wordpress.com/2008/06/'>June 2008</a></li> <li><a href='https://ascending.wordpress.com/2008/05/'>May 2008</a></li> <li><a href='https://ascending.wordpress.com/2008/04/'>April 2008</a></li> <li><a href='https://ascending.wordpress.com/2008/03/'>March 2008</a></li> <li><a href='https://ascending.wordpress.com/2008/02/'>February 2008</a></li> <li><a href='https://ascending.wordpress.com/2008/01/'>January 2008</a></li> <li><a href='https://ascending.wordpress.com/2007/12/'>December 2007</a></li> <li><a href='https://ascending.wordpress.com/2007/11/'>November 2007</a></li> <li><a href='https://ascending.wordpress.com/2007/10/'>October 2007</a></li> <li><a href='https://ascending.wordpress.com/2007/09/'>September 2007</a></li> <li><a href='https://ascending.wordpress.com/2007/08/'>August 2007</a></li> <li><a href='https://ascending.wordpress.com/2007/07/'>July 2007</a></li> <li><a href='https://ascending.wordpress.com/2007/06/'>June 2007</a></li> <li><a href='https://ascending.wordpress.com/2007/05/'>May 2007</a></li> <li><a href='https://ascending.wordpress.com/2007/04/'>April 2007</a></li> <li><a href='https://ascending.wordpress.com/2007/03/'>March 2007</a></li> <li><a href='https://ascending.wordpress.com/2007/02/'>February 2007</a></li> <li><a href='https://ascending.wordpress.com/2007/01/'>January 2007</a></li> <li><a href='https://ascending.wordpress.com/2006/12/'>December 2006</a></li> </ul> </li> <li id="search-2" class="widget widget_search"><form method="get" id="searchform" action="https://ascending.wordpress.com/"> <div><label for="s" class="search-label">Search</label><input type="text" value="" name="s" id="s" /> <input type="submit" id="searchsubmit" value="Search" /> </div> </form></li> <li id="text-2" class="widget widget_text"><h2 class="widgettitle"> </h2> <div class="textwidget"><div style="text-align:center;"><a href='http://www.catb.org/hacker-emblem/'> <img src='https://i0.wp.com/www.catb.org/hacker-emblem/glider.png' alt='hacker emblem' /></a></div> </div> </li> <div id="atatags-286348-6742dcd16c0b4"></div> <script> __ATA.cmd.push(function() { __ATA.initDynamicSlot({ id: 'atatags-286348-6742dcd16c0b4', location: 140, formFactor: '003', label: { text: 'Advertisements', }, creative: { reportAd: { text: 'Report this ad', }, privacySettings: { text: 'Privacy', } } }); }); </script> </ul> </div> <div id="footer"> <p> <br /> <a href="https://wordpress.com/?ref=footer_blog" rel="nofollow">Blog at WordPress.com.</a> </p> </div> </div> <script type="text/javascript"> var infiniteScroll = {"settings":{"id":"content","ajaxurl":"https:\/\/ascending.wordpress.com\/?infinity=scrolling","type":"scroll","wrapper":true,"wrapper_class":"infinite-wrap","footer":true,"click_handle":"1","text":"Older posts","totop":"Scroll back to top","currentday":"29.02.08","order":"DESC","scripts":[],"styles":[],"google_analytics":false,"offset":1,"history":{"host":"ascending.wordpress.com","path":"\/category\/kde\/page\/%d\/","use_trailing_slashes":true,"parameters":""},"query_args":{"category_name":"kde","error":"","m":"","p":0,"post_parent":"","subpost":"","subpost_id":"","attachment":"","attachment_id":0,"name":"","pagename":"","page_id":0,"second":"","minute":"","hour":"","day":0,"monthnum":0,"year":0,"w":0,"tag":"","cat":804,"tag_id":"","author":"","author_name":"","feed":"","tb":"","paged":0,"meta_key":"","meta_value":"","preview":"","s":"","sentence":"","title":"","fields":"","menu_order":"","embed":"","category__in":[],"category__not_in":[],"category__and":[],"post__in":[],"post__not_in":[],"post_name__in":[],"tag__in":[],"tag__not_in":[],"tag__and":[],"tag_slug__in":[],"tag_slug__and":[],"post_parent__in":[],"post_parent__not_in":[],"author__in":[],"author__not_in":[],"search_columns":[],"lazy_load_term_meta":false,"posts_per_page":5,"ignore_sticky_posts":false,"suppress_filters":false,"cache_results":true,"update_post_term_cache":true,"update_menu_item_cache":false,"update_post_meta_cache":true,"post_type":"","nopaging":false,"comments_per_page":"50","no_found_rows":false,"order":"DESC"},"query_before":"2024-11-24 02:59:13","last_post_date":"2008-02-29 20:57:44","body_class":"infinite-scroll neverending","loading_text":"Loading new page","stats":"blog=641345&v=wpcom&tz=-5&user_id=0&subd=ascending&x_pagetype=infinite"}}; </script> <!-- --> <script type="text/javascript" src="//0.gravatar.com/js/hovercards/hovercards.min.js?ver=2024474048849247f5660a2d05b85c6fc286379897f30a1061ad46e7f037e059ed7fe7" id="grofiles-cards-js"></script> <script type="text/javascript" id="wpgroho-js-extra"> /* <![CDATA[ */ var WPGroHo = {"my_hash":""}; /* ]]> */ </script> <script crossorigin='anonymous' type='text/javascript' src='https://s2.wp.com/wp-content/mu-plugins/gravatar-hovercards/wpgroho.js?m=1610363240i'></script> <script> // Initialize and attach hovercards to all gravatars ( function() { function init() { if ( typeof Gravatar === 'undefined' ) { return; } if ( typeof Gravatar.init !== 'function' ) { return; } Gravatar.profile_cb = function ( hash, id ) { WPGroHo.syncProfileData( hash, id ); }; Gravatar.my_hash = WPGroHo.my_hash; Gravatar.init( 'body', '#wp-admin-bar-my-account', { i18n: { 'Edit your profile': 'Edit your profile', 'View profile': 'View profile', 'Sorry, we are unable to load this Gravatar profile.': 'Sorry, we are unable to load this Gravatar profile.', 'Profile not found.': 'Profile not found.', 'Too Many Requests.': 'Too Many Requests.', 'Internal Server Error.': 'Internal Server Error.', }, } ); } if ( document.readyState !== 'loading' ) { init(); } else { document.addEventListener( 'DOMContentLoaded', init ); } } )(); </script> <div style="display:none"> </div> <div id="infinite-footer"> <div class="container"> <div class="blog-info"> <a id="infinity-blog-title" href="https://ascending.wordpress.com/" rel="home"> exit’s /dev/urandom blog </a> </div> <div class="blog-credits"> <a href="https://wordpress.com/?ref=footer_website" rel="nofollow">Create a free website or blog at WordPress.com.</a> </div> </div> </div><!-- #infinite-footer --> <script type="text/javascript"> ( function() { function init() { document.body.addEventListener( 'is.post-load', function() { if ( typeof __ATA.insertInlineAds === 'function' ) { __ATA.insertInlineAds(); } } ); } if ( document.readyState !== 'loading' ) { init(); } else { document.addEventListener( 'DOMContentLoaded', init ); } } )(); </script> <!-- CCPA [start] --> <script type="text/javascript"> ( function () { var setupPrivacy = function() { // Minimal Mozilla Cookie library // https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie/Simple_document.cookie_framework var cookieLib = window.cookieLib = {getItem:function(e){return e&&decodeURIComponent(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*"+encodeURIComponent(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"))||null},setItem:function(e,o,n,t,r,i){if(!e||/^(?:expires|max\-age|path|domain|secure)$/i.test(e))return!1;var c="";if(n)switch(n.constructor){case Number:c=n===1/0?"; expires=Fri, 31 Dec 9999 23:59:59 GMT":"; max-age="+n;break;case String:c="; expires="+n;break;case Date:c="; expires="+n.toUTCString()}return"rootDomain"!==r&&".rootDomain"!==r||(r=(".rootDomain"===r?".":"")+document.location.hostname.split(".").slice(-2).join(".")),document.cookie=encodeURIComponent(e)+"="+encodeURIComponent(o)+c+(r?"; domain="+r:"")+(t?"; path="+t:"")+(i?"; secure":""),!0}}; // Implement IAB USP API. window.__uspapi = function( command, version, callback ) { // Validate callback. if ( typeof callback !== 'function' ) { return; } // Validate the given command. if ( command !== 'getUSPData' || version !== 1 ) { callback( null, false ); return; } // Check for GPC. If set, override any stored cookie. if ( navigator.globalPrivacyControl ) { callback( { version: 1, uspString: '1YYN' }, true ); return; } // Check for cookie. var consent = cookieLib.getItem( 'usprivacy' ); // Invalid cookie. if ( null === consent ) { callback( null, false ); return; } // Everything checks out. Fire the provided callback with the consent data. callback( { version: 1, uspString: consent }, true ); }; // Initialization. document.addEventListener( 'DOMContentLoaded', function() { // Internal functions. var setDefaultOptInCookie = function() { var value = '1YNN'; var domain = '.wordpress.com' === location.hostname.slice( -14 ) ? '.rootDomain' : location.hostname; cookieLib.setItem( 'usprivacy', value, 365 * 24 * 60 * 60, '/', domain ); }; var setDefaultOptOutCookie = function() { var value = '1YYN'; var domain = '.wordpress.com' === location.hostname.slice( -14 ) ? '.rootDomain' : location.hostname; cookieLib.setItem( 'usprivacy', value, 24 * 60 * 60, '/', domain ); }; var setDefaultNotApplicableCookie = function() { var value = '1---'; var domain = '.wordpress.com' === location.hostname.slice( -14 ) ? '.rootDomain' : location.hostname; cookieLib.setItem( 'usprivacy', value, 24 * 60 * 60, '/', domain ); }; var setCcpaAppliesCookie = function( applies ) { var domain = '.wordpress.com' === location.hostname.slice( -14 ) ? '.rootDomain' : location.hostname; cookieLib.setItem( 'ccpa_applies', applies, 24 * 60 * 60, '/', domain ); } var maybeCallDoNotSellCallback = function() { if ( 'function' === typeof window.doNotSellCallback ) { return window.doNotSellCallback(); } return false; } // Look for usprivacy cookie first. var usprivacyCookie = cookieLib.getItem( 'usprivacy' ); // Found a usprivacy cookie. if ( null !== usprivacyCookie ) { // If the cookie indicates that CCPA does not apply, then bail. if ( '1---' === usprivacyCookie ) { return; } // CCPA applies, so call our callback to add Do Not Sell link to the page. maybeCallDoNotSellCallback(); // We're all done, no more processing needed. return; } // We don't have a usprivacy cookie, so check to see if we have a CCPA applies cookie. var ccpaCookie = cookieLib.getItem( 'ccpa_applies' ); // No CCPA applies cookie found, so we'll need to geolocate if this visitor is from California. // This needs to happen client side because we do not have region geo data in our $SERVER headers, // only country data -- therefore we can't vary cache on the region. if ( null === ccpaCookie ) { var request = new XMLHttpRequest(); request.open( 'GET', 'https://public-api.wordpress.com/geo/', true ); request.onreadystatechange = function () { if ( 4 === this.readyState ) { if ( 200 === this.status ) { // Got a geo response. Parse out the region data. var data = JSON.parse( this.response ); var region = data.region ? data.region.toLowerCase() : ''; var ccpa_applies = ['california', 'colorado', 'connecticut', 'delaware', 'indiana', 'iowa', 'montana', 'new jersey', 'oregon', 'tennessee', 'texas', 'utah', 'virginia'].indexOf( region ) > -1; // Set CCPA applies cookie. This keeps us from having to make a geo request too frequently. setCcpaAppliesCookie( ccpa_applies ); // Check if CCPA applies to set the proper usprivacy cookie. if ( ccpa_applies ) { if ( maybeCallDoNotSellCallback() ) { // Do Not Sell link added, so set default opt-in. setDefaultOptInCookie(); } else { // Failed showing Do Not Sell link as required, so default to opt-OUT just to be safe. setDefaultOptOutCookie(); } } else { // CCPA does not apply. setDefaultNotApplicableCookie(); } } else { // Could not geo, so let's assume for now that CCPA applies to be safe. setCcpaAppliesCookie( true ); if ( maybeCallDoNotSellCallback() ) { // Do Not Sell link added, so set default opt-in. setDefaultOptInCookie(); } else { // Failed showing Do Not Sell link as required, so default to opt-OUT just to be safe. setDefaultOptOutCookie(); } } } }; // Send the geo request. request.send(); } else { // We found a CCPA applies cookie. if ( ccpaCookie === 'true' ) { if ( maybeCallDoNotSellCallback() ) { // Do Not Sell link added, so set default opt-in. setDefaultOptInCookie(); } else { // Failed showing Do Not Sell link as required, so default to opt-OUT just to be safe. setDefaultOptOutCookie(); } } else { // CCPA does not apply. setDefaultNotApplicableCookie(); } } } ); }; // Kickoff initialization. if ( window.defQueue && defQueue.isLOHP && defQueue.isLOHP === 2020 ) { defQueue.items.push( setupPrivacy ); } else { setupPrivacy(); } } )(); </script> <!-- CCPA [end] --> <div class="widget widget_eu_cookie_law_widget"> <div class="hide-on-button ads-active" data-hide-timeout="30" data-consent-expiration="180" id="eu-cookie-law" style="display: none" > <form method="post"> <input type="submit" value="Close and accept" class="accept" /> Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use. <br /> To find out more, including how to control cookies, see here: <a href="https://automattic.com/cookies/" rel="nofollow"> Cookie Policy </a> </form> </div> </div> <div id="actionbar" style="display: none;" class="actnbr-pub-contempt actnbr-has-follow"> <ul> <li class="actnbr-btn actnbr-hidden"> <a class="actnbr-action actnbr-actn-follow " href=""> <svg class="gridicon" height="20" width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path clip-rule="evenodd" d="m4 4.5h12v6.5h1.5v-6.5-1.5h-1.5-12-1.5v1.5 10.5c0 1.1046.89543 2 2 2h7v-1.5h-7c-.27614 0-.5-.2239-.5-.5zm10.5 2h-9v1.5h9zm-5 3h-4v1.5h4zm3.5 1.5h-1v1h1zm-1-1.5h-1.5v1.5 1 1.5h1.5 1 1.5v-1.5-1-1.5h-1.5zm-2.5 2.5h-4v1.5h4zm6.5 1.25h1.5v2.25h2.25v1.5h-2.25v2.25h-1.5v-2.25h-2.25v-1.5h2.25z" fill-rule="evenodd"></path></svg> <span>Subscribe</span> </a> <a class="actnbr-action actnbr-actn-following no-display" href=""> <svg class="gridicon" height="20" width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="M16 4.5H4V15C4 15.2761 4.22386 15.5 4.5 15.5H11.5V17H4.5C3.39543 17 2.5 16.1046 2.5 15V4.5V3H4H16H17.5V4.5V12.5H16V4.5ZM5.5 6.5H14.5V8H5.5V6.5ZM5.5 9.5H9.5V11H5.5V9.5ZM12 11H13V12H12V11ZM10.5 9.5H12H13H14.5V11V12V13.5H13H12H10.5V12V11V9.5ZM5.5 12H9.5V13.5H5.5V12Z" fill="#008A20"></path><path class="following-icon-tick" d="M13.5 16L15.5 18L19 14.5" stroke="#008A20" stroke-width="1.5"></path></svg> <span>Subscribed</span> </a> <div class="actnbr-popover tip tip-top-left actnbr-notice" id="follow-bubble"> <div class="tip-arrow"></div> <div class="tip-inner actnbr-follow-bubble"> <ul> <li class="actnbr-sitename"> <a href="https://ascending.wordpress.com"> <img loading='lazy' alt='' src='https://s2.wp.com/i/logo/wpcom-gray-white.png' srcset='https://s2.wp.com/i/logo/wpcom-gray-white.png 1x' class='avatar avatar-50' height='50' width='50' /> exit's /dev/urandom blog </a> </li> <div class="actnbr-message no-display"></div> <form method="post" action="https://subscribe.wordpress.com" accept-charset="utf-8" style="display: none;"> <div class="actnbr-follow-count">Join 28 other subscribers</div> <div> <input type="email" name="email" placeholder="Enter your email address" class="actnbr-email-field" aria-label="Enter your email address" /> </div> <input type="hidden" name="action" value="subscribe" /> <input type="hidden" name="blog_id" value="641345" /> <input type="hidden" name="source" value="https://ascending.wordpress.com/category/kde/" /> <input type="hidden" name="sub-type" value="actionbar-follow" /> <input type="hidden" id="_wpnonce" name="_wpnonce" value="646b8a0e03" /> <div class="actnbr-button-wrap"> <button type="submit" value="Sign me up"> Sign me up </button> </div> </form> <li class="actnbr-login-nudge"> <div> Already have a WordPress.com account? <a href="https://wordpress.com/log-in?redirect_to=https%3A%2F%2Fascending.wordpress.com%2F2009%2F08%2F09%2Fwhy-open-source-rocks-and-the-music-industry-does-not%2F&signup_flow=account">Log in now.</a> </div> </li> </ul> </div> </div> </li> <li class="actnbr-ellipsis actnbr-hidden"> <svg class="gridicon gridicons-ellipsis" height="24" width="24" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g><path d="M7 12c0 1.104-.896 2-2 2s-2-.896-2-2 .896-2 2-2 2 .896 2 2zm12-2c-1.104 0-2 .896-2 2s.896 2 2 2 2-.896 2-2-.896-2-2-2zm-7 0c-1.104 0-2 .896-2 2s.896 2 2 2 2-.896 2-2-.896-2-2-2z"/></g></svg> <div class="actnbr-popover tip tip-top-left actnbr-more"> <div class="tip-arrow"></div> <div class="tip-inner"> <ul> <li class="actnbr-sitename"> <a href="https://ascending.wordpress.com"> <img loading='lazy' alt='' src='https://s2.wp.com/i/logo/wpcom-gray-white.png' srcset='https://s2.wp.com/i/logo/wpcom-gray-white.png 1x' class='avatar avatar-50' height='50' width='50' /> exit's /dev/urandom blog </a> </li> <li class="actnbr-folded-customize"> <a href="https://ascending.wordpress.com/wp-admin/customize.php?url=https%3A%2F%2Fascending.wordpress.com%2Fcategory%2Fkde%2F"> <svg class="gridicon gridicons-customize" height="20" width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g><path d="M2 6c0-1.505.78-3.08 2-4 0 .845.69 2 2 2 1.657 0 3 1.343 3 3 0 .386-.08.752-.212 1.09.74.594 1.476 1.19 2.19 1.81L8.9 11.98c-.62-.716-1.214-1.454-1.807-2.192C6.753 9.92 6.387 10 6 10c-2.21 0-4-1.79-4-4zm12.152 6.848l1.34-1.34c.607.304 1.283.492 2.008.492 2.485 0 4.5-2.015 4.5-4.5 0-.725-.188-1.4-.493-2.007L18 9l-2-2 3.507-3.507C18.9 3.188 18.225 3 17.5 3 15.015 3 13 5.015 13 7.5c0 .725.188 1.4.493 2.007L3 20l2 2 6.848-6.848c1.885 1.928 3.874 3.753 5.977 5.45l1.425 1.148 1.5-1.5-1.15-1.425c-1.695-2.103-3.52-4.092-5.448-5.977z"/></g></svg> <span>Customize</span> </a> </li> <li class="actnbr-folded-follow"> <a class="actnbr-action actnbr-actn-follow " href=""> <svg class="gridicon" height="20" width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path clip-rule="evenodd" d="m4 4.5h12v6.5h1.5v-6.5-1.5h-1.5-12-1.5v1.5 10.5c0 1.1046.89543 2 2 2h7v-1.5h-7c-.27614 0-.5-.2239-.5-.5zm10.5 2h-9v1.5h9zm-5 3h-4v1.5h4zm3.5 1.5h-1v1h1zm-1-1.5h-1.5v1.5 1 1.5h1.5 1 1.5v-1.5-1-1.5h-1.5zm-2.5 2.5h-4v1.5h4zm6.5 1.25h1.5v2.25h2.25v1.5h-2.25v2.25h-1.5v-2.25h-2.25v-1.5h2.25z" fill-rule="evenodd"></path></svg> <span>Subscribe</span> </a> <a class="actnbr-action actnbr-actn-following no-display" href=""> <svg class="gridicon" height="20" width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="M16 4.5H4V15C4 15.2761 4.22386 15.5 4.5 15.5H11.5V17H4.5C3.39543 17 2.5 16.1046 2.5 15V4.5V3H4H16H17.5V4.5V12.5H16V4.5ZM5.5 6.5H14.5V8H5.5V6.5ZM5.5 9.5H9.5V11H5.5V9.5ZM12 11H13V12H12V11ZM10.5 9.5H12H13H14.5V11V12V13.5H13H12H10.5V12V11V9.5ZM5.5 12H9.5V13.5H5.5V12Z" fill="#008A20"></path><path class="following-icon-tick" d="M13.5 16L15.5 18L19 14.5" stroke="#008A20" stroke-width="1.5"></path></svg> <span>Subscribed</span> </a> </li> <li class="actnbr-signup"><a href="https://wordpress.com/start/">Sign up</a></li> <li class="actnbr-login"><a href="https://wordpress.com/log-in?redirect_to=https%3A%2F%2Fascending.wordpress.com%2F2009%2F08%2F09%2Fwhy-open-source-rocks-and-the-music-industry-does-not%2F&signup_flow=account">Log in</a></li> <li class="flb-report"> <a href="https://wordpress.com/abuse/?report_url=https://ascending.wordpress.com" target="_blank" rel="noopener noreferrer"> Report this content </a> </li> <li class="actnbr-reader"> <a href="https://wordpress.com/read/feeds/186841"> View site in Reader </a> </li> <li class="actnbr-subs"> <a href="https://subscribe.wordpress.com/">Manage subscriptions</a> </li> <li class="actnbr-fold"><a href="">Collapse this bar</a></li> </ul> </div> </div> </li> </ul> </div> <script> window.addEventListener( "load", function( event ) { var link = document.createElement( "link" ); link.href = "https://s0.wp.com/wp-content/mu-plugins/actionbar/actionbar.css?v=20241015"; link.type = "text/css"; link.rel = "stylesheet"; document.head.appendChild( link ); var script = document.createElement( "script" ); script.src = "https://s0.wp.com/wp-content/mu-plugins/actionbar/actionbar.js?v=20231122"; script.defer = true; document.body.appendChild( script ); } ); </script> <div id="jp-carousel-loading-overlay"> <div id="jp-carousel-loading-wrapper"> <span id="jp-carousel-library-loading"> </span> </div> </div> <div class="jp-carousel-overlay" style="display: none;"> <div class="jp-carousel-container"> <!-- The Carousel Swiper --> <div class="jp-carousel-wrap swiper-container jp-carousel-swiper-container jp-carousel-transitions" itemscope itemtype="https://schema.org/ImageGallery"> <div class="jp-carousel swiper-wrapper"></div> <div class="jp-swiper-button-prev swiper-button-prev"> <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <mask id="maskPrev" mask-type="alpha" maskUnits="userSpaceOnUse" x="8" y="6" width="9" height="12"> <path d="M16.2072 16.59L11.6496 12L16.2072 7.41L14.8041 6L8.8335 12L14.8041 18L16.2072 16.59Z" fill="white"/> </mask> <g mask="url(#maskPrev)"> <rect x="0.579102" width="23.8823" height="24" fill="#FFFFFF"/> </g> </svg> </div> <div class="jp-swiper-button-next swiper-button-next"> <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <mask id="maskNext" mask-type="alpha" maskUnits="userSpaceOnUse" x="8" y="6" width="8" height="12"> <path d="M8.59814 16.59L13.1557 12L8.59814 7.41L10.0012 6L15.9718 12L10.0012 18L8.59814 16.59Z" fill="white"/> </mask> <g mask="url(#maskNext)"> <rect x="0.34375" width="23.8822" height="24" fill="#FFFFFF"/> </g> </svg> </div> </div> <!-- The main close buton --> <div class="jp-carousel-close-hint"> <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <mask id="maskClose" mask-type="alpha" maskUnits="userSpaceOnUse" x="5" y="5" width="15" height="14"> <path d="M19.3166 6.41L17.9135 5L12.3509 10.59L6.78834 5L5.38525 6.41L10.9478 12L5.38525 17.59L6.78834 19L12.3509 13.41L17.9135 19L19.3166 17.59L13.754 12L19.3166 6.41Z" fill="white"/> </mask> <g mask="url(#maskClose)"> <rect x="0.409668" width="23.8823" height="24" fill="#FFFFFF"/> </g> </svg> </div> <!-- Image info, comments and meta --> <div class="jp-carousel-info"> <div class="jp-carousel-info-footer"> <div class="jp-carousel-pagination-container"> <div class="jp-swiper-pagination swiper-pagination"></div> <div class="jp-carousel-pagination"></div> </div> <div class="jp-carousel-photo-title-container"> <h2 class="jp-carousel-photo-caption"></h2> </div> <div class="jp-carousel-photo-icons-container"> <a href="#" class="jp-carousel-icon-btn jp-carousel-icon-info" aria-label="Toggle photo metadata visibility"> <span class="jp-carousel-icon"> <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <mask id="maskInfo" mask-type="alpha" maskUnits="userSpaceOnUse" x="2" y="2" width="21" height="20"> <path fill-rule="evenodd" clip-rule="evenodd" d="M12.7537 2C7.26076 2 2.80273 6.48 2.80273 12C2.80273 17.52 7.26076 22 12.7537 22C18.2466 22 22.7046 17.52 22.7046 12C22.7046 6.48 18.2466 2 12.7537 2ZM11.7586 7V9H13.7488V7H11.7586ZM11.7586 11V17H13.7488V11H11.7586ZM4.79292 12C4.79292 16.41 8.36531 20 12.7537 20C17.142 20 20.7144 16.41 20.7144 12C20.7144 7.59 17.142 4 12.7537 4C8.36531 4 4.79292 7.59 4.79292 12Z" fill="white"/> </mask> <g mask="url(#maskInfo)"> <rect x="0.8125" width="23.8823" height="24" fill="#FFFFFF"/> </g> </svg> </span> </a> <a href="#" class="jp-carousel-icon-btn jp-carousel-icon-comments" aria-label="Toggle photo comments visibility"> <span class="jp-carousel-icon"> <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <mask id="maskComments" mask-type="alpha" maskUnits="userSpaceOnUse" x="2" y="2" width="21" height="20"> <path fill-rule="evenodd" clip-rule="evenodd" d="M4.3271 2H20.2486C21.3432 2 22.2388 2.9 22.2388 4V16C22.2388 17.1 21.3432 18 20.2486 18H6.31729L2.33691 22V4C2.33691 2.9 3.2325 2 4.3271 2ZM6.31729 16H20.2486V4H4.3271V18L6.31729 16Z" fill="white"/> </mask> <g mask="url(#maskComments)"> <rect x="0.34668" width="23.8823" height="24" fill="#FFFFFF"/> </g> </svg> <span class="jp-carousel-has-comments-indicator" aria-label="This image has comments."></span> </span> </a> </div> </div> <div class="jp-carousel-info-extra"> <div class="jp-carousel-info-content-wrapper"> <div class="jp-carousel-photo-title-container"> <h2 class="jp-carousel-photo-title"></h2> </div> <div class="jp-carousel-comments-wrapper"> <div id="jp-carousel-comments-loading"> <span>Loading Comments...</span> </div> <div class="jp-carousel-comments"></div> <div id="jp-carousel-comment-form-container"> <span id="jp-carousel-comment-form-spinner"> </span> <div id="jp-carousel-comment-post-results"></div> <form id="jp-carousel-comment-form"> <label for="jp-carousel-comment-form-comment-field" class="screen-reader-text">Write a Comment...</label> <textarea name="comment" class="jp-carousel-comment-form-field jp-carousel-comment-form-textarea" id="jp-carousel-comment-form-comment-field" placeholder="Write a Comment..." ></textarea> <div id="jp-carousel-comment-form-submit-and-info-wrapper"> <div id="jp-carousel-comment-form-commenting-as"> <fieldset> <label for="jp-carousel-comment-form-email-field">Email (Required)</label> <input type="text" name="email" class="jp-carousel-comment-form-field jp-carousel-comment-form-text-field" id="jp-carousel-comment-form-email-field" /> </fieldset> <fieldset> <label for="jp-carousel-comment-form-author-field">Name (Required)</label> <input type="text" name="author" class="jp-carousel-comment-form-field jp-carousel-comment-form-text-field" id="jp-carousel-comment-form-author-field" /> </fieldset> <fieldset> <label for="jp-carousel-comment-form-url-field">Website</label> <input type="text" name="url" class="jp-carousel-comment-form-field jp-carousel-comment-form-text-field" id="jp-carousel-comment-form-url-field" /> </fieldset> </div> <input type="submit" name="submit" class="jp-carousel-comment-form-button" id="jp-carousel-comment-form-button-submit" value="Post Comment" /> </div> </form> </div> </div> <div class="jp-carousel-image-meta"> <div class="jp-carousel-title-and-caption"> <div class="jp-carousel-photo-info"> <h3 class="jp-carousel-caption" itemprop="caption description"></h3> </div> <div class="jp-carousel-photo-description"></div> </div> <ul class="jp-carousel-image-exif" style="display: none;"></ul> <a class="jp-carousel-image-download" href="#" target="_blank" style="display: none;"> <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="3" y="3" width="19" height="18"> <path fill-rule="evenodd" clip-rule="evenodd" d="M5.84615 5V19H19.7775V12H21.7677V19C21.7677 20.1 20.8721 21 19.7775 21H5.84615C4.74159 21 3.85596 20.1 3.85596 19V5C3.85596 3.9 4.74159 3 5.84615 3H12.8118V5H5.84615ZM14.802 5V3H21.7677V10H19.7775V6.41L9.99569 16.24L8.59261 14.83L18.3744 5H14.802Z" fill="white"/> </mask> <g mask="url(#mask0)"> <rect x="0.870605" width="23.8823" height="24" fill="#FFFFFF"/> </g> </svg> <span class="jp-carousel-download-text"></span> </a> <div class="jp-carousel-image-map" style="display: none;"></div> </div> </div> </div> </div> </div> </div> <link crossorigin='anonymous' rel='stylesheet' id='all-css-0-2' href='https://s2.wp.com/_static/??-eJydzEEKwyAQheEL1Q5JocFFyFmsDkEzjuI4hNy+FJptFln+j8cHezW+cEfukNVU0jWyQMJend/+DaIMuQQlFPCuFRUkkD1WbOajHAifXuQB97Hzcw43vR4Jg1kdEbbjqn7+kufhbUc7vYZxSl9CS2RI&cssminify=yes' type='text/css' media='all' /> <script type="text/javascript" id="jetpack-carousel-js-extra"> /* <![CDATA[ */ var jetpackSwiperLibraryPath = {"url":"https:\/\/s2.wp.com\/wp-content\/mu-plugins\/jetpack-plugin\/sun\/_inc\/build\/carousel\/swiper-bundle.min.js"}; var jetpackCarouselStrings = {"widths":[370,700,1000,1200,1400,2000],"is_logged_in":"","lang":"en","ajaxurl":"https:\/\/ascending.wordpress.com\/wp-admin\/admin-ajax.php","nonce":"3d03984bd7","display_exif":"1","display_comments":"1","single_image_gallery":"1","single_image_gallery_media_file":"","background_color":"black","comment":"Comment","post_comment":"Post Comment","write_comment":"Write a Comment...","loading_comments":"Loading Comments...","image_label":"Open image in full-screen.","download_original":"View full size <span class=\"photo-size\">{0}<span class=\"photo-size-times\">\u00d7<\/span>{1}<\/span>","no_comment_text":"Please be sure to submit some text with your comment.","no_comment_email":"Please provide an email address to comment.","no_comment_author":"Please provide your name to comment.","comment_post_error":"Sorry, but there was an error posting your comment. Please try again later.","comment_approved":"Your comment was approved.","comment_unapproved":"Your comment is in moderation.","camera":"Camera","aperture":"Aperture","shutter_speed":"Shutter Speed","focal_length":"Focal Length","copyright":"Copyright","comment_registration":"0","require_name_email":"1","login_url":"https:\/\/ascending.wordpress.com\/wp-login.php?redirect_to=https%3A%2F%2Fascending.wordpress.com%2F2008%2F02%2F29%2Fpeople-born-today-age-four-times-slower%2F","blog_id":"641345","meta_data":["camera","aperture","shutter_speed","focal_length","copyright"],"stats_query_args":"blog=641345&v=wpcom&tz=-5&user_id=0&subd=ascending","is_public":"1"}; /* ]]> */ </script> <script crossorigin='anonymous' type='text/javascript' src='https://s1.wp.com/_static/??-eJylUNFqAzEM+6GlXrmWsoexTxm5xA2+OnGIE0L/fhn0unEPLWyPkiVZCHo2TlLFVGFRiDITo2mKxYbBGUpn2S36Ar90M0swmVugpNCleOvVOLaqqN8h3VbeemL7cZAPWBWwjatcCA3bDhVjZltxwz/IWbBm6y43DNoSfFJyMDdiD6M4Japo1BVhXvF1Fyn9OdTZImMbvstW4l+pdUzuTbDMWK6P0JMvaxnTs5O4gcP3Ed/3p2l/mF6n49vyBZBAvf0='></script> <script type="text/javascript"> (function () { var wpcom_reblog = { source: 'toolbar', toggle_reblog_box_flair: function (obj_id, post_id) { // Go to site selector. This will redirect to their blog if they only have one. const postEndpoint = `https://wordpress.com/post`; // Ideally we would use the permalink here, but fortunately this will be replaced with the // post permalink in the editor. const originalURL = `${ document.location.href }?page_id=${ post_id }`; const url = postEndpoint + '?url=' + encodeURIComponent( originalURL ) + '&is_post_share=true' + '&v=5'; const redirect = function () { if ( ! window.open( url, '_blank' ) ) { location.href = url; } }; if ( /Firefox/.test( navigator.userAgent ) ) { setTimeout( redirect, 0 ); } else { redirect(); } }, }; window.wpcom_reblog = wpcom_reblog; })(); </script> <script type="text/javascript"> // <![CDATA[ (function() { try{ if ( window.external &&'msIsSiteMode' in window.external) { if (window.external.msIsSiteMode()) { var jl = document.createElement('script'); jl.type='text/javascript'; jl.async=true; jl.src='/wp-content/plugins/ie-sitemode/custom-jumplist.php'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(jl, s); } } }catch(e){} })(); // ]]> </script> <script type="text/javascript"> (function() { var extend = function(out) { out = out || {}; for (var i = 1; i < arguments.length; i++) { if (!arguments[i]) continue; for (var key in arguments[i]) { if (arguments[i].hasOwnProperty(key)) out[key] = arguments[i][key]; } } return out; }; extend( window.infiniteScroll.settings.scripts, ["jetpack-mu-wpcom-settings","rlt-proxy","cmp-script-stub","wpcom-actionbar-placeholder","grofiles-cards","wpgroho","mobile-useragent-info","wordads-smart","eu-cookie-law-script","the-neverending-homepage","jetpack-carousel","tiled-gallery","carousel-wpcom"] ); extend( window.infiniteScroll.settings.styles, ["wordads-global","wordads-contempt","eu-cookie-law-style","free-site-marketing-bar","the-neverending-homepage","infinity-contempt","wp-block-library","jetpack-layout-grid","jetpack-ratings","mediaelement","wp-mediaelement","coblocks-frontend","wpcom-core-compat-playlist-styles","wpcom-text-widget-styles","wpcom-bbpress2-staff-css","contempt","reblogging","geo-location-flair","a8c-global-print","h4-global","wp-emoji-styles","videopress-video-style","jetpack-sharing-buttons-style","classic-theme-styles","global-styles","jetpack-global-styles-frontend-style","jetpack-carousel-swiper-css","jetpack-carousel","tiled-gallery","core-block-supports-duotone"] ); })(); </script> <span id="infinite-aria" aria-live="polite"></span> <script src="//stats.wp.com/w.js?67" defer></script> <script type="text/javascript"> _tkq = window._tkq || []; _stq = window._stq || []; _tkq.push(['storeContext', {'blog_id':'641345','blog_tz':'-5','user_lang':'en','blog_lang':'en','user_id':'0'}]); _stq.push(['view', {'blog':'641345','v':'wpcom','tz':'-5','user_id':'0','subd':'ascending'}]); _stq.push(['extra', {'crypt':'UE5XaGUuOTlwaD85flAmcm1mcmZsaDhkV11YdWFnNncxc1tjZG9XVXhRZmhSYUFEMXVJdlp1Q2dGaT0lXXxFb1QrX1VxRFQlWD9zRENIT2NienJTRlZ1VFhzeHhUOXxpL3U2JnhoSz9TemR6Qj1zQXpXRmFwVkVWcCVrSFdyW0VhdDVLOU1LN340WndoJS5dMD0xVUp5dG15c341SVtFUGMxa3hhakVpMyswZEIvWE5pUkVWdGIxc0g4ZHZdV2csP2FjVy1ycTRIbUloMHwuUEoyX0tONEpqZHREbi94WTJNMF0lazYwWVgtSy5kcTBSQzdFJUhmSzR4c3pYN3gzRnNNQWJVL3x3R2lzSWhMLTkzcGtIZVlEdnEl'}]); _stq.push([ 'clickTrackerInit', '641345', '0' ]); </script> <noscript><img src="https://pixel.wp.com/b.gif?v=noscript" style="height:1px;width:1px;overflow:hidden;position:absolute;bottom:1px;" alt="" /></noscript> <script defer id="bilmur" data-customproperties="{"logged_in":"0","wptheme":"pub\/contempt","wptheme_is_block":"0"}" data-provider="wordpress.com" data-service="simple" src="/wp-content/js/bilmur.min.js?i=12&m=202447"></script><script defer id="bilmur" data-customproperties="{"logged_in":"0","wptheme":"pub\/contempt","wptheme_is_block":"0"}" data-provider="wordpress.com" data-service="simple" src="/wp-content/js/bilmur-4.min.js?i=12&m=202447"></script><div id="marketingbar" class="marketing-bar noskim "><div class="marketing-bar-text">Design a site like this with WordPress.com</div><a class="marketing-bar-button" href="https://wordpress.com/start/?ref=marketing_bar">Get started</a><a class="marketing-bar-link" tabindex="-1" aria-label="Create your website at WordPress.com" href="https://wordpress.com/start/?ref=marketing_bar"></a></div> <script type="text/javascript"> window._tkq = window._tkq || []; window._tkq.push( [ 'recordEvent', 'wpcom_marketing_bar_impression', {"is_current_user_blog_owner":false} ] ); document.querySelectorAll( '#marketingbar > a' ).forEach( link => { link.addEventListener( 'click', ( e ) => { window._tkq.push( [ 'recordEvent', 'wpcom_marketing_bar_cta_click', {"is_current_user_blog_owner":false} ] ); } ); }); </script><script> ( function() { function getMobileUserAgentInfo() { if ( typeof wpcom_mobile_user_agent_info === 'object' ) { wpcom_mobile_user_agent_info.init(); var mobileStatsQueryString = ''; if ( wpcom_mobile_user_agent_info.matchedPlatformName !== false ) { mobileStatsQueryString += '&x_' + 'mobile_platforms' + '=' + wpcom_mobile_user_agent_info.matchedPlatformName; } if ( wpcom_mobile_user_agent_info.matchedUserAgentName !== false ) { mobileStatsQueryString += '&x_' + 'mobile_devices' + '=' + wpcom_mobile_user_agent_info.matchedUserAgentName; } if ( wpcom_mobile_user_agent_info.isIPad() ) { mobileStatsQueryString += '&x_' + 'ipad_views' + '=' + 'views'; } if ( mobileStatsQueryString != '' ) { new Image().src = document.location.protocol + '//pixel.wp.com/g.gif?v=wpcom-no-pv' + mobileStatsQueryString + '&baba=' + Math.random(); } } } document.addEventListener( 'DOMContentLoaded', getMobileUserAgentInfo ); } )(); </script> </body> </html>