<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/rss-style.xsl" type="text/xsl"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	    xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	     xmlns:dc="http://purl.org/dc/elements/1.1/"
	   xmlns:atom="http://www.w3.org/2005/Atom"
	     xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	  xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>
<channel>
	<title>Satire (Probably) &#8211; Terence Eden’s Blog</title>
	<atom:link href="https://shkspr.mobi/blog/tag/satire-probably/feed/" rel="self" type="application/rss+xml" />
	<link>https://shkspr.mobi/blog</link>
	<description>Regular nonsense about tech and its effects 🙃</description>
	<lastBuildDate>Sat, 11 Apr 2026 06:53:47 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://shkspr.mobi/blog/wp-content/uploads/2023/07/cropped-avatar-32x32.jpeg</url>
	<title>Satire (Probably) &#8211; Terence Eden’s Blog</title>
	<link>https://shkspr.mobi/blog</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title><![CDATA[FobCam '25 - All my MFA tokens on one page]]></title>
		<link>https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/</link>
					<comments>https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Fri, 11 Apr 2025 11:34:34 +0000</pubDate>
				<category><![CDATA[/etc/]]></category>
		<category><![CDATA[2fa]]></category>
		<category><![CDATA[CyberSecurity]]></category>
		<category><![CDATA[MFA]]></category>
		<category><![CDATA[Satire (Probably)]]></category>
		<category><![CDATA[security]]></category>
		<guid isPermaLink="false">https://shkspr.mobi/blog/?p=59334</guid>

					<description><![CDATA[Some ideas are timeless. Back in 2004, an anonymous genius set up &#34;FobCam&#34;. Tired of having to carry around an RSA SecurID token everywhere, our hero simply left the fob at home with an early webcam pointing at it. And then left the page open for all to see.    Security expert Bruce Schneier approved of this trade-off between security and usability - saying what we&#039;re all thinking:  Here’s a guy w…]]></description>
										<content:encoded><![CDATA[<p>Some ideas are timeless. Back in 2004, an anonymous genius set up "<a href="https://web.archive.org/web/20060215092922/http://fob.webhop.net/">FobCam</a>". Tired of having to carry around an RSA SecurID token everywhere, our hero simply left the fob at home with an early webcam pointing at it. And then left the page open for all to see.</p>

<img src="https://shkspr.mobi/blog/wp-content/uploads/2025/04/FobCam-fs8.png" alt="Website with a grainy webcam photo of a SecurID fob." width="512" class="aligncenter size-full wp-image-59341">

<p>Security expert Bruce Schneier approved<sup id="fnref:🫠"><a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fn:🫠" class="footnote-ref" title="🫠" role="doc-noteref">0</a></sup> of this trade-off between security and usability - saying what we're all thinking:</p>

<blockquote><p>Here’s a guy who has a webcam pointing at his SecurID token, so he doesn’t have to remember to carry it around. Here’s the strange thing: unless you know who the webpage belongs to, it’s still good security.
<a href="https://www.schneier.com/crypto-gram/archives/2004/0815.html#:~:text=webcam">Crypto-Gram - August 15, 2004</a></p></blockquote>

<p>Nowadays, we have to carry dozens of these tokens with us. Although, unlike the poor schmucks of 2004, we have an app for that. But I don't always have access to my phone. Sometimes I'm in a secure location where I can't access my electronics. Sometimes my phone gets stolen, and I need to log into Facebook to whinge about it. Sometimes I just can't be bothered to remember which fingerprint unlocks my phone<sup id="fnref:🖕"><a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fn:🖕" class="footnote-ref" title="🖕" role="doc-noteref">1</a></sup>.</p>

<p>Using the <a href="https://shkspr.mobi/blog/2025/03/using-the-web-crypto-api-to-generate-totp-codes-in-javascript-without-3rd-party-libraries/">Web Crypto API, it is easy to Generate TOTP Codes in JavaScript directly in the browser</a>.  So here are all my important MFA tokens. If I ever need to log in somewhere, I can just visit this page and grab the code I need<sup id="fnref:🙃"><a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fn:🙃" class="footnote-ref" title="🙃" role="doc-noteref">2</a></sup>.</p>

<h2 id="all-my-important-codes"><a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#all-my-important-codes">All My Important Codes</a></h2>

<table>
<tbody><tr><td><img src="https://edent.github.io/SuperTinyIcons/images/svg/github.svg" width="100" title="Github"></td><td id="otp0"></td></tr>
<tr><td><img src="https://edent.github.io/SuperTinyIcons/images/svg/bitwarden.svg" width="100" title="BitWarden"></td><td id="otp1"></td></tr>
<tr><td><img src="https://edent.github.io/SuperTinyIcons/images/svg/apple.svg" width="100" title="Apple"></td><td id="otp2"></td></tr>
<tr><td><img src="https://edent.github.io/SuperTinyIcons/images/svg/ebay.svg" width="100" title="ebay"></td><td id="otp3"></td></tr>
<tr><td><img src="https://edent.github.io/SuperTinyIcons/images/svg/amazon.svg" width="100" title="Amazon"></td><td id="otp4"></td></tr>
<tr><td><img src="https://edent.github.io/SuperTinyIcons/images/svg/npm.svg" width="100" title="NPM"></td><td id="otp5"></td></tr>
<tr><td><img src="https://edent.github.io/SuperTinyIcons/images/svg/paypal.svg" width="100" title="PayPal"></td><td id="otp6"></td></tr>
<tr><td><img src="https://edent.github.io/SuperTinyIcons/images/svg/facebook.svg" width="100" title="Facebook"></td><td id="otp7"></td></tr>
<tr><td><img src="https://edent.github.io/SuperTinyIcons/images/svg/zoom.svg" width="100" title="Zoom"></td><td id="otp8"></td></tr>
<tr><td><img src="https://edent.github.io/SuperTinyIcons/images/svg/linkedin.svg" width="100" title="LinkedIn"></td><td id="otp9"></td></tr>
</tbody></table>

<h2 id="what-the-actual-fuck"><a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#what-the-actual-fuck">What The <em>Actual</em> Fuck?</a></h2>

<p>A 2007 paper called <a href="https://cups.cs.cmu.edu/soups/2007/proceedings/p64_bauer.pdf">Lessons learned from the deployment of a smartphone-based access-control system</a> looked at whether fobs met the needs of their users:</p>

<blockquote><p>However, we observed that end users tend to be most concerned about how convenient [fobs] are to use. There are many examples of end users of widely used access-control technologies readily sacrificing security for convenience. For example, it is well known that users often write their passwords on post-it notes and stick them to their computer monitors. Other users are more inventive: a good example is the user who pointed a webcam at his fob and published the image online so he would not have to carry the fob around.</p></blockquote>

<p>As for Schneier's suggestion that anonymity added protection, a contemporary report noted that <a href="https://www.schneier.com/crypto-gram/archives/2004/0915.html#:~:text=Fobcam">the owner of the FobCam site was trivial to identify</a><sup id="fnref:dox"><a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fn:dox" class="footnote-ref" title="The neologism &quot;doxing&quot; hadn't yet been invented." role="doc-noteref">3</a></sup>.</p>

<p>Every security system involves trade-offs. I have a password manager, but with over a thousand passwords in it, the process of navigating and maintaining becomes a burden. <a href="https://shkspr.mobi/blog/2020/08/i-have-4-2fa-coverage/">The number of 2FA tokens I have is also rising</a>. All of these security factors need backing up. Those back-ups need testing<sup id="fnref:back"><a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fn:back" class="footnote-ref" title="As was written by the prophets: &quot;Only wimps use tape backup: real men just upload their important stuff on ftp, and let the rest of the world mirror it&quot;" role="doc-noteref">4</a></sup>. It is an endless cycle of drudgery.</p>

<p>What's a rational user supposed to do<sup id="fnref:rat"><a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fn:rat" class="footnote-ref" title="I in no way imply that I am rational." role="doc-noteref">5</a></sup>? I suppose I could buy a couple of hardware keys, keep one in an off-site location, but somehow keep both in sync, and hope that a firmware-update doesn't brick them.</p>

<p>Should I just upload all of my passwords, tokens, secrets, recovery codes, passkeys, and biometrics<sup id="fnref:bro"><a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fn:bro" class="footnote-ref" title="Just one more factor, that'll fix security, just gotta add one more factor bro." role="doc-noteref">6</a></sup> into the cloud?</p>

<p>The cloud is just someone else's computer. This website is <em>my</em> computer. So I'm going to upload all my factors here. What's the worst that could happen<sup id="fnref:🤯"><a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fn:🤯" class="footnote-ref" title="This is left as an exercise for the reader." role="doc-noteref">7</a></sup>.</p>

<script>async function generateTOTP( 
    base32Secret = "QWERTY", 
    interval = 30, 
    length = 6, 
    algorithm = "SHA-1" ) {
    
    //  Decode the secret
    //  The Base32 Alphabet is specified at https://datatracker.ietf.org/doc/html/rfc4648#section-6
    const alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567";
    let bits = "";
    
    //  Some secrets are padded with the `=` character. Remove padding.
    //  https://datatracker.ietf.org/doc/html/rfc3548#section-2.2
    base32Secret = base32Secret.replace( /=+$/, "" )

    //  Loop through the trimmed secret
    for ( let char of base32Secret ) {
        //  Ensure the secret's characters are upper case
        const value = alphabet.indexOf( char.toUpperCase() );

        //  If the character doesn't appear in the alphabet.
        if (value === -1) throw new Error( "Invalid Base32 character" );
        
        //  Binary representation of where the character is in the alphabet
        bits += value.toString( 2 ).padStart( 5, "0" );
    }

    //  Turn the bits into bytes
    let bytes = [];
    //  Loop through the bits, eight at a time
    for ( let i = 0; i < bits.length; i += 8 ) {
        if ( bits.length - i >= 8 ) {
                bytes.push( parseInt( bits.substring( i, i + 8 ), 2 ) );
        }
    }

    //  Turn those bytes into an array
    const decodedSecret = new Uint8Array( bytes );
    
    //  Number of seconds since Unix Epoch
    const timeStamp = Date.now() / 1000; 

    //  Number of intervals since Unix Epoch
    //  https://datatracker.ietf.org/doc/html/rfc6238#section-4.2
    const timeCounter = Math.floor( timeStamp / interval );

    //  Number of intervals in hexadecimal
    const timeHex = timeCounter.toString( 16 );

    //  Left-Pad with 0
    const paddedHex = timeHex.padStart( 16, "0" );

    //  Set up a buffer to hold the data
    const timeBuffer = new ArrayBuffer( 8 );
    const timeView   = new DataView( timeBuffer );
    
    //  Take the hex string, split it into 2-character chunks 
    const timeBytes = paddedHex.match( /.{1,2}/g ).map(
        //  Convert to bytes
        byte => parseInt( byte, 16 )
    );

    //  Write each byte into timeBuffer.
    for ( let i = 0; i < 8; i++ ) {
         timeView.setUint8(i, timeBytes[i]);
    }
    
    //  Use Web Crypto API to generate the HMAC key
    //  https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey
    const key = await crypto.subtle.importKey(
        "raw",
        decodedSecret,
        { 
            name: "HMAC", 
            hash: algorithm 
        },
        false,
        ["sign"]
    );

    //  Sign the timeBuffer with the generated HMAC key
    //  https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/sign
    const signature = await crypto.subtle.sign( "HMAC", key, timeBuffer );
    
    //  Get HMAC as bytes
    const hmac = new Uint8Array( signature );

    //  https://datatracker.ietf.org/doc/html/rfc4226#section-5.4
    //  Use the last byte to generate the offset
    const offset = hmac[ hmac.length - 1 ] & 0x0f;

    //  Bit Twiddling operations
    const binaryCode = 
        ( ( hmac[ offset     ] & 0x7f ) << 24 ) |
        ( ( hmac[ offset + 1 ] & 0xff ) << 16 ) |
        ( ( hmac[ offset + 2 ] & 0xff ) <<  8 ) |
        ( ( hmac[ offset + 3 ] & 0xff ) );

    //  Turn the binary code into a decimal string
    const stringOTP = binaryCode.toString();

    //  Count backwards from the last character for the length of the code
    let otp = stringOTP.slice( -length)

    //  Pad with 0 to full length
    otp = otp.padStart( length, "0" );

    //  All done!
    return otp;
}
//  Placeholder for OTPs
var otps = [];

//  Do you really think these are my genuine codes? At least one of them is. But which?
var otpData = 
    [
        {
            "algorithm"  : "SHA1",
            "digits"     :  6,
            "period"     : 15,
            "secret"     : "IPT5TRO7VFK66M6SHUJ7XZNM2U6IZZ4L"
        },
        {
            "algorithm"  : "SHA1",
            "digits"     :  6,
            "period"     : 15,
            "secret"     : "EXGKOX26KMDSTL6KM3BYMPXXDDKNQEYM"
        },
        {
            "algorithm"  : "SHA1",
            "digits"     :  6,
            "period"     : 15,
            "secret"     : "UGVGXRQFHY62OWI5SGSTZLIQUMXTTVME"
        },
        {
            "algorithm"  : "SHA1",
            "digits"     :  6,
            "period"     : 15,
            "secret"     : "Y4UHVLFIZZZK7ENDYZ4O3ZZI2QWUJI37"
        },
        {
            "algorithm"  : "SHA1",
            "digits"     :  6,
            "period"     : 15,
            "secret"     : "Z2KDRL4ELOCDALT3OSNUK65Z2KPOWGUL"
        },
        {
            "algorithm"  : "SHA1",
            "digits"     :  6,
            "period"     : 15,
            "secret"     : "OWRQKSCBLRUZXYXLXIDATUK6UTG3CPVV"
        },
        {
            "algorithm"  : "SHA1",
            "digits"     :  6,
            "period"     : 15,
            "secret"     : "XQLSEGNYPBMVK35ZMDTVN5GFOZB46WJJ"
        },
        {
            "algorithm"  : "SHA1",
            "digits"     :  6,
            "period"     : 15,
            "secret"     : "M3KVKGRB2WVWOZXN437EMF2MS36G75IR",
            "Comment"    : "This is genuinely my Twitter TOTP secret - although the period should be 30. But what's the password? There's a clue somewhere in this source code!",
        },
        {
            "algorithm"  : "SHA1",
            "digits"     :  6,
            "period"     : 15,
            "secret"     : "3EMER2B6YXIFMMAY5XBYLNF4NSEGJXCU"
        },
        {
            "algorithm"  : "SHA1",
            "digits"     :  6,
            "period"     : 15,
            "secret"     : "ZML6O5K7QSVFE5QIWNFFT7BIZI7PBHNV"
        }
    ]


var i = 0;

otpData.forEach (
    item => {
        //  Add OTP
        otps[i] = item;
        i++;
    }
);

//  Generate TOTP codes
async function update() {
    for (var i = 0; i < otps.length; i++){
            //  Convert the algorithm
            //  The algorithm name is different for TOTP and Web Crypto(!)
            algorithm = "SHA-1";
            
            document.getElementById( "otp" + i).innerHTML = await generateTOTP( 
                otps[i]["secret"], 
                otps[i]["period"], 
                otps[i]["digits"], 
                algorithm
            );
    }
}
//  Update every second
setInterval(update, 1000);

</script>

<div id="footnotes" role="doc-endnotes">
<hr>
<ol start="0">

<li id="fn:🫠">
<p>🫠&nbsp;<a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fnref:🫠" class="footnote-backref" role="doc-backlink">↩︎</a></p>
</li>

<li id="fn:🖕">
<p>🖕&nbsp;<a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fnref:🖕" class="footnote-backref" role="doc-backlink">↩︎</a></p>
</li>

<li id="fn:🙃">
<p>🙃&nbsp;<a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fnref:🙃" class="footnote-backref" role="doc-backlink">↩︎</a></p>
</li>

<li id="fn:dox">
<p>The neologism "doxing" hadn't yet been invented.&nbsp;<a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fnref:dox" class="footnote-backref" role="doc-backlink">↩︎</a></p>
</li>

<li id="fn:back">
<p>As was written by the prophets: "<a href="https://lkml.iu.edu/hypermail/linux/kernel/9607.2/0292.html">Only wimps use tape backup: <em>real</em> men just upload their important stuff on ftp, and let the rest of the world mirror it</a>"&nbsp;<a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fnref:back" class="footnote-backref" role="doc-backlink">↩︎</a></p>
</li>

<li id="fn:rat">
<p>I in no way imply that I am rational.&nbsp;<a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fnref:rat" class="footnote-backref" role="doc-backlink">↩︎</a></p>
</li>

<li id="fn:bro">
<p>Just one more factor, that'll fix security, just gotta add one more factor bro.&nbsp;<a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fnref:bro" class="footnote-backref" role="doc-backlink">↩︎</a></p>
</li>

<li id="fn:🤯">
<p>This is left as an exercise for the reader.&nbsp;<a href="https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/#fnref:🤯" class="footnote-backref" role="doc-backlink">↩︎</a></p>
</li>

</ol>
</div>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=59334&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2025/04/fobcam-25-all-my-mfa-tokens-on-one-page/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title><![CDATA[A list of incredible BlockChain innovations which I would like funding for please]]></title>
		<link>https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/</link>
					<comments>https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Wed, 13 Dec 2023 12:34:24 +0000</pubDate>
				<category><![CDATA[/etc/]]></category>
		<category><![CDATA[blockchain]]></category>
		<category><![CDATA[crypto]]></category>
		<category><![CDATA[Satire (Probably)]]></category>
		<guid isPermaLink="false">https://shkspr.mobi/blog/?p=48796</guid>

					<description><![CDATA[Dear the venture capitalists. I am a very charming white man and am prepared to drop out of university if you&#039;ll invest in these ideas.  In the future, all your clothes are an NFT.  &#34;Wow! I love your blouse.&#34;  &#34;Thanks, here&#039;s a smart contract showing where I purchased it from. If you buy one, I get 10% of the sale price back in WoolworthsCoin.&#34;  Applause Tokens™.  A smart monitor under your t…]]></description>
										<content:encoded><![CDATA[<p>Dear the venture capitalists. I am a very charming white man and am prepared to drop out of university if you'll invest in these ideas.</p>

<h3 id="in-the-future-all-your-clothes-are-an-nft"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#in-the-future-all-your-clothes-are-an-nft">In the future, all your clothes are an NFT.</a></h3>

<p>"Wow! I love your blouse."</p>

<p>"Thanks, here's a smart contract showing where I purchased it from. If you buy one, I get 10% of the sale price back in WoolworthsCoin."</p>

<h3 id="applause-tokens"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#applause-tokens">Applause Tokens™.</a></h3>

<p>A smart monitor under your theatre seat detects how long (and how loud) you applaud for.</p>

<p>Remember, the more enthusiastic you are about this middle-school production of Annie, the more tokens you earn!</p>

<h3 id="geneticoin"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#geneticoin">Geneticoin</a></h3>

<p>By storing your frozen sperm or eggs in our BYOG-Bank®, you're investing in your future!</p>

<p>Anyone who has a child using your genetic material signs an irrevocable smart contract which entitles you to 1% of the progeny's lifetime earnings.</p>

<p>More donations means more money!</p>

<h3 id="kindlecoin"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#kindlecoin">KindleCoin</a></h3>

<p>With KindleCoin, a Basic-Attention-Token derivative, you only pay for <em>good</em> books. Didn't finish reading the latest Dan Brown novel? Only pay for the pages you enjoy!</p>

<p>WARNING! Leaving your eReader unlocked could result in an attacker flipping through Dostoevsky; costing £££</p>

<h3 id="book-nft"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#book-nft">Book-NFT</a></h3>

<p>With this new Literature-based NFT, you can bring your most beloved characters into your favourite books!</p>

<p>Unlocked Willy Wonka by buying some Roald Dahl? Wonka can now appear in Game of Thrones!</p>

<h3 id="datecoin"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#datecoin">DateCoin©</a></h3>

<p>Welcome to a REVOLUTION in online dating.</p>

<p>Before meeting up on a date, both parties sign a smart contract. If either bails on the date, or doesn't look like their profile photo, or fails to put out, their stake is forfeited to the other party.</p>

<h3 id="boomboombucks"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#boomboombucks">BoomBoomBucks</a></h3>

<p>By placing noise monitors in every house, we are democratising annoyance.</p>

<p>Want to play some banging techno at 3AM? No worries!</p>

<p>Your neighbours can set a price on being annoyed and automatically charge you for waking them up.</p>

<h3 id="%e2%9a%a1%ef%b8%8fcoin"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#%e2%9a%a1%ef%b8%8fcoin">⚡️coin</a></h3>

<p>Let's embed a tiny Blockchain processor in all your electronics. Want to charge the battery in your PS5 controller? It's FREE this weekend!</p>

<p>(As long as the ⚡️coin chain doesn't detect you charging an Xbox controller. In which case the price is doubled.)</p>

<h3 id="no-more-train-delays"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#no-more-train-delays">No More Train Delays</a></h3>

<p>Train delayed on the way to work? Not a problem!</p>

<p>Your employer can bid on prioritising your train based on the economic value your delay is costing them.</p>

<p>By automatically monitoring your movements at all times, ChooChooCoin incentivises faster repairs to the train network.</p>

<h3 id="prevent-diamond-theft"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#prevent-diamond-theft">Prevent diamond theft</a></h3>

<p>Stolen a bag full of diamonds from an highly protected safe in a daring raid involving lasers, an electronics expert, and an old lag looking for one last score?</p>

<p>Joke's on you! Those diamonds are associated with an NFT which you didn't steal!</p>

<p>Enjoy your sparky stones, idiots!</p>

<h3 id="trafiquetokens"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#trafiquetokens">TrafiqueTokens</a></h3>

<p>No more waiting at 🚦! Your Tesla will automatically bid up to your specified limit to override a red light.</p>

<p>Remember, the value of TrafiqueTokens may enter negative territory and you could be stuck behind a Skoda for the next 6 hours.</p>

<h3 id="prayerpoints"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#prayerpoints">PrayerPoints</a></h3>

<p>An exciting new soul-bound token which you can earn for acts of worship and devotion. The more spiritual you are, the more the points accumulate.</p>

<p>You can exchange these points to get out of minor sins.</p>

<p>A group of friends can pool their points to redeem against a major sin!</p>

<h3 id="dietary-dinar"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#dietary-dinar">Dietary Dinar.</a></h3>

<p>Imagine you're a vegetarian who has a craving for steak. Collateralise all your veggie-pesos to exchange with someone's carnivore-bolívars.</p>

<p>You eat their steak, they eat your salad. Karma neutral! Sadly the coin exchange takes a few hundred kWh, so not <em>carbon</em>-neutral.</p>

<h3 id="voice-coinz"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#voice-coinz">Voice Coinz</a></h3>

<p>This means an <em>end</em> to spam calls!</p>

<p>Set a smart contract price on calls and texts to your phone number. If a legitimate call comes through, waive the charges. If it's spam - make 'em pay!</p>

<p>(Huh, that might actually be a good one...)</p>

<h3 id="no-you-shut-up"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#no-you-shut-up">NO YOU SHUT UP</a></h3>

<p>MeetingCoin. A non-rivalrous smart-attention coin which ensures that Gavin from accounts doesn't speak over Michelle who actually knows what the meeting is all about.</p>

<p>Probably sends electric shocks if you waffle on too long. Voltage based on number of votes.</p>

<h3 id="pest-control-smart-contracts"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#pest-control-smart-contracts">Pest Control Smart Contracts</a></h3>

<p>We have a pretty huge pest control problem. Imagine if exterminators could be paid exclusively in crypto for every vermin they destroy?</p>

<p>For every snake head you present to us, we will mine you one RajCoin.</p>

<p>No, I've never read a history book. Why do you ask?</p>

<h3 id="basic-love-token"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#basic-love-token">Basic Love Token</a></h3>

<p>If every marriage was a smart contract, your could rent out your spouse to other people who wanted them.</p>

<p>Imaging being able to seamlessly transfer marriage obligations as simply as you rent a DVD from Netflix.</p>

<p>All of the advantages, none of the obligations!</p>

<h3 id="%f0%9f%90%bc%f0%9f%aa%99"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#%f0%9f%90%bc%f0%9f%aa%99">🐼🪙</a></h3>

<p>There are only 1,800 pandas left in the wild 😢</p>

<p>We have minted a unique "Hunting Permit NFT" for each of them. The coins are pegged to the price of ETH.</p>

<p>If conservationists want to save these cute bears, they can chose to outbid the hunters.</p>

<p>Distributed Proof Of Kill.</p>

<h3 id="bugcoin"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#bugcoin">BugCoin</a></h3>

<p>Annoyed by bugs in your code?</p>

<p>Blockchain solves this.</p>

<p>A smart contract will prevent you from  committing anything which crashes by determining whether or not your program will eventually halt.</p>

<h2 id="and-so-on"><a href="https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/#and-so-on">And so on</a></h2>

<p>If you have any other billion dollar ideas - please leave a comment. We'll split the profits 50:50.</p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=48796&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2023/12/a-list-of-incredible-blockchain-innovations-which-i-would-like-funding-for-please/feed/</wfw:commentRss>
			<slash:comments>8</slash:comments>
		
		
			</item>
		<item>
		<title><![CDATA[The Future of the Web is VNC]]></title>
		<link>https://shkspr.mobi/blog/2023/07/the-future-of-the-web-is-vnc/</link>
					<comments>https://shkspr.mobi/blog/2023/07/the-future-of-the-web-is-vnc/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Mon, 31 Jul 2023 11:34:52 +0000</pubDate>
				<category><![CDATA[/etc/]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[Satire (Probably)]]></category>
		<category><![CDATA[web]]></category>
		<guid isPermaLink="false">https://shkspr.mobi/blog/?p=46412</guid>

					<description><![CDATA[Many gallons of digital ink spilled at Google&#039;s plans for &#34;Web Environment Integrity&#34; which - depending on who you believe - is either an entirely reasonable proposal to protect users or a devious plan to add DRM to the entire web.  (It&#039;s the latter, obviously.)  We&#039;ll never know exactly whether users want this because Google is pathologically adverse to performing or publishing user research. …]]></description>
										<content:encoded><![CDATA[<p>Many gallons of digital ink spilled at Google's plans for "Web Environment Integrity" which - depending on who you believe - is either an entirely reasonable proposal to protect users or a devious plan to add DRM to the entire web.</p>

<p>(It's the latter, obviously.)</p>

<p>We'll never know exactly whether users want this <a href="https://github.com/RupertBenWiser/Web-Environment-Integrity/issues/46">because Google is pathologically adverse to performing or publishing user research</a>.</p>

<p>Anyway, I have a solution to all of Google's problems.  Forget this notion of untrusted "user agents" executing code on untrustworthy computers. I have a foolproof way of getting pixel-perfect rendering on every device. It also stops scraping. And, as a little side effect, completely defeats ad blocking.</p>

<p>It's <a href="https://en.wikipedia.org/wiki/Virtual_Network_Computing">VNC</a>.</p>

<p>This takes "Server Side Rendering" to the extreme. Render exactly how you want the page to look and then stream it over a remote framebuffer protocol. Users get to see <em>exactly</em> what you want them to see - ads included!</p>

<p>Just imagine the possibilities. No more worrying about which browser is being used - render everything through Chrome and stream to everyone!</p>

<p>Users simply can't alter the content they see - which keeps them safe from hackers, and protects your advertising revenue.</p>

<p>Low bandwidth? VNC will simply degrade the quality of what you see. Look, do you really want poor people viewing your expensive website?</p>

<p>Those naughty hackers won't be able to copy and paste your content - the trusted VNC viewer simply won't let them.</p>

<p>Want to track users across multiple sites? Might be tricky.  Just route all your content through Google's <del>AMP</del> VNC service!</p>

<p>...ugh... I've reinvented <a href="https://blogs.opera.com/news/2015/04/opera-mini-history-new-version-android/">Opera Mini</a> and given myself a sad.</p>

<p>There are <em>so</em> many decent people working at Google. And all the good they're trying to do is being drowned out by mediocre and mendacious crap like this.  Google desperately needs to be broken up. It's simply untenable to have the largest browser in the hands of the largest web advertising firm. Android isn't safe with a firm which priorities their advertisers' needs over their customers' needs.</p>

<p>The thing is, this is coming. There is literally nothing you can do to stop it. Your protests are meaningless next to the desire for some people at Google to sanitise the web.</p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=46412&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2023/07/the-future-of-the-web-is-vnc/feed/</wfw:commentRss>
			<slash:comments>11</slash:comments>
		
		
			</item>
		<item>
		<title><![CDATA[What does it mean to run your own servers?]]></title>
		<link>https://shkspr.mobi/blog/2022/02/what-does-it-mean-to-run-your-own-servers/</link>
					<comments>https://shkspr.mobi/blog/2022/02/what-does-it-mean-to-run-your-own-servers/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Fri, 25 Feb 2022 12:34:33 +0000</pubDate>
				<category><![CDATA[/etc/]]></category>
		<category><![CDATA[computer]]></category>
		<category><![CDATA[Satire (Probably)]]></category>
		<category><![CDATA[server]]></category>
		<guid isPermaLink="false">https://shkspr.mobi/blog/?p=42010</guid>

					<description><![CDATA[I used to be a member of social media sites like Twitter, Facebook, TikTok, Flickr, etc. But I felt guilty because I didn&#039;t run my own servers. OK, I could host content with them. But I had a severely limited way of curating what I saw and how much I could customise what people saw of me.  So I signed up to a cloud provider and installed Mastodon and Pixelfed. Neat! But I didn&#039;t really run that…]]></description>
										<content:encoded><![CDATA[<p>I used to be a member of social media sites like Twitter, Facebook, TikTok, Flickr, etc. But I felt guilty because I didn't run my own servers. OK, I could host content with them. But I had a severely limited way of curating what I saw and how much I could customise what people saw of me.</p>

<p>So I signed up to a cloud provider and installed <a href="https://docs.joinmastodon.org/admin/install/">Mastodon</a> and <a href="https://pixelfed.org/">Pixelfed</a>. Neat! But I didn't really run that server. Sure, I could install software - but I didn't have root. It was all managed by someone else.</p>

<p>Next, I got a dedicated machine in a rack somewhere. Great! I had root and was able to mess around with the system as much as I liked. I mean, I could always roll back. Wait… I did set up backups, right? But it was never really <em>my</em> server. If I wanted to install more RAM or a bigger disk, I had to ask a technician to do that for me. And those technicians were able to power off my machine at any moment without warning.</p>

<p>Fine! I bought a dedicated fibre connection at home with a static IP address. I bought a couple of servers, a load balancer, and a hardware firewall - then set up a domain name to point to it all. I also bought a UPS to deal with power cuts. Then I installed a security system to prevent burglars or spies coming in to mess with it.</p>

<p>Of course, I want to make sure I know exactly what's running on my machine; not your code, not your server. That means I make sure to read all the diffs to the source before I run <code>apt upgrade</code>. But reading that many changes to Linux, Apache, and WordPress is complicated.</p>

<p>So I've not been able to post much on social since I started studying for a Phd in Computer Science.</p>

<hr>

<p>Heavily inspired by this masterpiece:</p>

<blockquote><p>I thought using loops was cheating, so I programmed my own using samples. I then thought using samples was cheating, so I recorded real drums. I then thought that programming it was cheating, so I learned to play drums for real. I then thought using bought drums was cheating, so I learned to make my own. I then thought using premade skins was cheating, so I killed a goat and skinned it. I then thought that that was cheating too, so I grew my own goat from a baby goat. I also think that is cheating, but I'm not sure where to go from here. I haven't made any music lately, what with the goat farming and all.</p>

<p><a href="https://www.mnml.nl/phpBB3/viewtopic.php?f=17&amp;t=62658&amp;hilit=goat&amp;start=16">MagpieIndustries - 2010-09-03</a></p></blockquote>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=42010&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2022/02/what-does-it-mean-to-run-your-own-servers/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title><![CDATA[Second Hand Books Are Theft]]></title>
		<link>https://shkspr.mobi/blog/2021/03/second-hand-books-are-theft/</link>
					<comments>https://shkspr.mobi/blog/2021/03/second-hand-books-are-theft/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Wed, 17 Mar 2021 12:52:03 +0000</pubDate>
				<category><![CDATA[/etc/]]></category>
		<category><![CDATA[economics]]></category>
		<category><![CDATA[Satire (Probably)]]></category>
		<guid isPermaLink="false">https://shkspr.mobi/blog/?p=38316</guid>

					<description><![CDATA[Whenever you buy a second-hand book, you are stealing revenue from the author and publisher. It makes no difference whether you buy from a charity shop or a for-profit store.  All the money goes to the seller of the book, and none of it flows back to the copyright holders.  (The situation is slightly different if you borrow a book from a library. In the UK, authors earn money every time a book is …]]></description>
										<content:encoded><![CDATA[<p>Whenever you buy a second-hand book, you are stealing revenue from the author and publisher. It makes no difference whether you buy from a charity shop or a for-profit store.  All the money goes to the seller of the book, and none of it flows back to the copyright holders.</p>

<p>(The situation is slightly different if you borrow a book from a library. In the UK, <a href="https://www.bl.uk/plr/">authors earn money every time a book is borrowed</a>.)</p>

<p>Is it fair that authors' works can be sold like this without any recompense?</p>

<p>It isn't just about the money. Publishers don't receive any data on second-hand sales. That means they can't even tell if an author is popular.  An author could be a best-seller without even knowing it.</p>

<p>Apologists for second-hand book shops point to some nebulous "benefits". A reader <em>might</em> pick up the first book in a series and then go on to buy legitimate copies of the rest.  But there's no way to stop readers from buying sequels second-hand.</p>

<p>Not everyone can afford new books. I don't think that gives people a right to just take copyrighted works without fair compensation.</p>

<p>Charities make the bulk of their money from these sales. I'm sympathetic to that - but surely authors should be able to opt-out of any charity which doesn't match the author's values?</p>

<p>It is more environmental to share books. Again, true, but the paper from the book can easily be recycled without copyright theft.</p>

<p>What should we do about this?</p>

<blockquote><p>Dame Antonia Byatt has called for new rules to protect novelists using a system known as <i>droit de suite</i>, which guarantees artists a payment for each subsequent sale of their work.<br>“<i>Droit de suite</i> is a very good way to protect us,” she said. “I hope they do something because earnings for an author can be absolutely pitiful.” 
</p><p><cite><a href="https://www.thetimes.co.uk/article/authors-want-cut-of-second-hand-sales-zm6g3qq3ckm/">Authors want cut of second hand sales</a> - The Times <time datetime="2005-01-29T00:00:00.000Z"></time></cite>
</p></blockquote>

<p>The UK has a concept of <a href="https://www.gov.uk/guidance/artists-resale-right">Artists Resale Right</a> which ensures that artists get compensated when their art is resold. Authors are artists.</p>

<p>We have the technology to do this. Every modern book has a barcode on the back. Every modern book sold online has an ISBN. Collect up the ISBNs and the price paid, then give the copyright holder a percentage of that sale.</p>

<p>Can't be done, you say? Back in 2014, <a href="https://www.thebookseller.com/news/bookbarn-pay-author-royalties-used-book-sales">Bookbarn announced it was to pay author royalties for used book sales</a>.</p>

<p>It is time for us to take a stand and recognise that selling second-hand books are theft.</p>

<p>No. Wait. Sorry.  Not books. Video Games. That's right - <a href="https://www.gamesindustry.biz/articles/2012-03-27-pre-owned-increases-cost-of-games-cannibalizes-industry-says-dyack">reselling Video Games is killing the industry</a>.</p>

<p>Dammit. What was I thinking. I meant Blu Rays. Every time someone sells a used movie disc, the <a href="https://www.filmstories.co.uk/features/the-quiet-reasons-why-more-companies-may-be-shying-away-from-releasing-blu-rays/">patent holders are being stolen from</a>.</p>

<p>This madness must stop!</p>

<p>We're still unable to re-sell digital goods. This is because most people recognise that it is impossible to know if a digital file has been copied and retained by the seller.  It is time-consuming and impractical to photo-copy an entire book. So we assume that when someone sells the physical item, they are depriving themselves of an asset.</p>

<p>It is impossible to prove you have deprived yourself of a digital asset.</p>

<p>We also know that digital files can be reproduced infinitely with close to zero cost.</p>

<p>Any digital good is worthless on the resale market.</p>

<p>This has been a rather long-winded way of saying that we shouldn't treat digital art as though it were a stock to be traded.</p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=38316&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2021/03/second-hand-books-are-theft/feed/</wfw:commentRss>
			<slash:comments>11</slash:comments>
		
		
			</item>
		<item>
		<title><![CDATA[Utilizing Quantum BlockChain for 6th Generation Neural Networks]]></title>
		<link>https://shkspr.mobi/blog/2020/12/utilizing-quantum-blockchain-for-6th-generation-neural-networks/</link>
					<comments>https://shkspr.mobi/blog/2020/12/utilizing-quantum-blockchain-for-6th-generation-neural-networks/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Fri, 25 Dec 2020 12:52:58 +0000</pubDate>
				<category><![CDATA[/etc/]]></category>
		<category><![CDATA[Satire (Probably)]]></category>
		<category><![CDATA[xmas]]></category>
		<guid isPermaLink="false">https://shkspr.mobi/blog/?p=37583</guid>

					<description><![CDATA[This pre-release whitepaper is a multidisciplinary approach to the challenges associated with using Quantum BlockChain technology to improve the performance of 6th Generation data networks for their performance with neural objects.  By reconceptualising the way the nano-structures of 5th Generation (5G) networks interface with the OSI stack of traditional networks, we have found a way to perform…]]></description>
										<content:encoded><![CDATA[<p>This pre-release whitepaper is a multidisciplinary approach to the challenges associated with using Quantum BlockChain technology to improve the performance of 6th Generation data networks for their performance with neural objects.</p>

<p>By reconceptualising the way the nano-structures of 5th Generation (5G) networks interface with the OSI stack of traditional networks, we have found a way to perform novel temporal manipulation of the bitstream to deliver data at super-luminal speeds.</p>

<p>Quantum BlockChain will accelerate the way Distributed Ledger Technology (DLT) is revolutionising the world. As Quantum BlockChain harnesses the superior AI performance of Neural Networks, we conceive a <em>factorial</em> growth in data interchange speeds. This leads to a position where the Internet of Things becomes the Internet of <em>Emotions</em>.</p>

<p>Through the use of React Native, the acceleration of Ethereum contracts will make obsolete any previous BlockChain. This will allow us to replace BitCoin with a tiny Crystal called Gerald. We believe Gerald will usher in a new realm of digital progress. Crystals have natural healing properties, and Gerald vibrates at the same cosmic frequency as the Internet. Quantum Crystals will BlockChain the Neural AI.</p>

<p>Why is is that every snake-oil startup sounds like this?</p>

<p>No. I've had a few drinks, but I wouldn't say I'm <em>drunk</em>.</p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=37583&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2020/12/utilizing-quantum-blockchain-for-6th-generation-neural-networks/feed/</wfw:commentRss>
			<slash:comments>8</slash:comments>
		
		
			</item>
		<item>
		<title><![CDATA[Is Synthetarianism Compatible With Veganism?]]></title>
		<link>https://shkspr.mobi/blog/2020/12/is-synthetarianism-compatible-with-veganism/</link>
					<comments>https://shkspr.mobi/blog/2020/12/is-synthetarianism-compatible-with-veganism/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Mon, 07 Dec 2020 12:48:34 +0000</pubDate>
				<category><![CDATA[/etc/]]></category>
		<category><![CDATA[Modest Proposal]]></category>
		<category><![CDATA[Satire (Probably)]]></category>
		<category><![CDATA[vegan]]></category>
		<category><![CDATA[vegetarian]]></category>
		<guid isPermaLink="false">https://shkspr.mobi/blog/?p=37493</guid>

					<description><![CDATA[Lab grown meat is nearly here.    To be fair, it has been &#34;nearly&#34; here for a long long long long long time.  But with the imminent arrival of lab-grown meat, it is time to investigate Synthetarianism. A diet of Synthetic food.  I haven&#039;t eaten meat for... oh... 20 years now. I live with a carnivore but, despite her amazing cooking, I&#039;ve no real desire to eat animal flesh. I&#039;m sure it tastes nice …]]></description>
										<content:encoded><![CDATA[<p><a href="https://www.bbc.com/news/business-55155741">Lab grown meat is <em>nearly</em> here</a>.</p>

<p><a href="https://www.bbc.com/news/business-55155741"><img src="https://shkspr.mobi/blog/wp-content/uploads/2020/12/Screenshot_2020-12-07-Singapore-approves-lab-grown-chicken-meat.png" alt="BBC News article about lab-grown chicken meat being approved in Singapore." width="626" height="432" class="aligncenter size-full wp-image-37504"></a></p>

<p>To be fair, it has been "nearly" here for a <a href="http://www.bbc.co.uk/news/av/technology-40496863/lab-grown-meat-the-future-of-food">long</a> <a href="https://theecologist.org/2010/apr/06/lab-grown-meat-low-fat-low-carbon-cruelty-free-future">long</a> <a href="https://www.nytimes.com/2005/12/11/magazine/in-vitro-meat.html">long</a> <a href="https://leonardo.info/isast/articles/catts.zurr.pdf">long</a> <a href="https://patents.google.com/patent/US6835390B1/en">long</a> time.</p>

<p>But with the imminent arrival of lab-grown meat, it is time to investigate <a href="https://shkspr.mobi/blog/2018/04/synthetarianism/">Synthetarianism</a>. A diet of Synthetic food.</p>

<p>I haven't eaten meat for... oh... 20 years now. I live with a carnivore but, despite her amazing cooking, I've no real desire to eat animal flesh. I'm sure it tastes nice to you, but my (smug) morals just don't allow it.</p>

<p>But is it morally OK to eat synthetic meat? I don't mean the mycoprotein based sausages and burgers that are ubiquitous nowadays. I mean steaks grown from animal cells.</p>

<p>One of the perils of the modern individualistic world, is that we don't have many moral leaders telling us what is and isn't acceptable. There is no High Priest of Veganism. So we're left to our own devices to determine what's acceptable to us.</p>

<p>It seems obvious to me that Synthetarianism is compatible with Vegetarianism. Taking milk from a cow or an egg from a chicken seems equivalent to taking a cell culture from a creature. Yes, it's nicer if the chicken is free-range, and the cow lives on a pleasant farm. But the animal probably still gets slaughtered at some point. Vegetarians (like me) are hypocrites.</p>

<p>But is it vegan?</p>

<p>There was <a href="http://vegansociety.today/honey.html">a schism in veganism about whether honey is vegan</a>. You should read the history - but I think it comes down to whether you feel the bees are exploited by the humans. Personally, I don't.  I think we're in a symbiotic relationship with them, which is complicated. And we should probably stop colony collapse. But I don't think I have a problem with taking their honey.</p>

<p>A non-sentient animal can't make a choice about whether to donate cells. But suppose we could clone a chicken breast from, say, a discarded feather?  That doesn't seem like much of a problem. Does it?</p>

<p>Which, of course, brings me on to cannibalism.</p>

<p>Would you eat <em>human</em> flesh grown this way? Someone inevitably will, once the tech gets cheap enough. Tweenage girls will clamour for a spare rib of their latest celebrity crush. Then the fad will go mainstream, as it always does. Curse you tweenage girls!</p>

<p>If it's consensual, where's the harm?</p>

<p>I suppose because it is hard to know whether it is <em>truly</em> consensual. Selling your body is often seen as problematic. It's also hard to determine provenance.  Someone could be selling "Premium Blackpink Mince" when really it's offcuts of Nickelback.  Poor old Nickelback, forced to sell their cloned flesh in order to pay back a dodgy record contract which has left them impoverished.</p>

<p>What if someone picks up one of <em>your</em> discarded snotty handkerchiefs, clones your body, and then eats "your" flesh?  That doesn't sound consensual at all. So why should it be any different if it is an animal who is being cloned from discards?</p>

<p>You can't ever <em>really</em> know the reason whether someone else has freely entered into a contract.</p>

<p>Therefore, the only way Synthetarianism is compatible with Veganism, is via Autocannibalism.</p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=37493&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2020/12/is-synthetarianism-compatible-with-veganism/feed/</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
			</item>
		<item>
		<title><![CDATA[Living the Stochastic Life]]></title>
		<link>https://shkspr.mobi/blog/2020/11/living-the-stochastic-life/</link>
					<comments>https://shkspr.mobi/blog/2020/11/living-the-stochastic-life/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Sun, 22 Nov 2020 12:20:15 +0000</pubDate>
				<category><![CDATA[/etc/]]></category>
		<category><![CDATA[NaBloPoMo]]></category>
		<category><![CDATA[Satire (Probably)]]></category>
		<guid isPermaLink="false">https://shkspr.mobi/blog/?p=37174</guid>

					<description><![CDATA[When I become Emperor Of The World, I will implement my favourite method of electing officials.  The Single Stochastic Vote.  It&#039;s a cheap, simple, and quick way of electing people.  It retains the best features of First Past The Post and Proportional Representation.  Here&#039;s how it works:   Everyone in the constituency votes for their most favoured candidate by marking an ☒ next to the c…]]></description>
										<content:encoded><![CDATA[<p>When I become Emperor Of The World, I will implement my <em>favourite</em> method of electing officials.  The Single Stochastic Vote.</p>

<p>It's a cheap, simple, and quick way of electing people.  It retains the best features of First Past The Post and Proportional Representation.  Here's how it works:</p>

<ul>
<li>Everyone in the constituency votes for their most favoured candidate by marking an ☒ next to the candidate's name.</li>
<li>All the votes are placed into a ballot box.</li>
<li>The ballot box is shaken <em>and</em> stirred.</li>
<li>A single ballot paper is drawn from the ballot box.</li>
<li>Whoever's name has an ☒ next to it, is elected.</li>
</ul>

<p>On average this will fairly reflect the will of the people. There is a <a href="https://www.jstor.org/stable/796258?origin=crossref&amp;seq=1">bunch of research</a> about why this is an excellent - but not perfect - system.</p>

<p>What other aspect of our lives would we give over to raw statistics?</p>

<p>If you were taken to court, we could dispense with a trial. We know the conviction rates for various crimes - so let's roll a couple of dice to see if you're found guilty. That would save a lot of time and money on court cases and - on average - would be just as fair as the traditional system.</p>

<p>Similarly, stochastism is a good way to eliminate the gender pay gap. Rather than messing around with work based performance assessments, collective bargaining, and individual negotiation - a company could randomly distribute its wage bill across the employees. Set a minimum and maximum amount an employee can receive, and then each month randomly allocate them a portion of that month's payout. Some months you'll get CEO level pay, other months receptionist pay. But, again, on average it will reduce discrimination on grounds or race or gender.</p>

<p>The benefits of the stochastic life are clear. It is quicker and cheaper than almost any other system. The results are guaranteed to be fair (across the population). And it is impossible to cheat or influence.</p>

<p>What's not to like?</p>

<img src="https://shkspr.mobi/blog/wp-content/uploads/2020/11/cube-2031511_640.jpg" alt="Many coloured dice in a row." width="640" height="218" class="aligncenter size-full wp-image-37246">
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=37174&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2020/11/living-the-stochastic-life/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title><![CDATA[USB Cables, Lightning Ports, and Foreskins]]></title>
		<link>https://shkspr.mobi/blog/2014/04/usb-cables-lightning-ports-and-foreskins/</link>
					<comments>https://shkspr.mobi/blog/2014/04/usb-cables-lightning-ports-and-foreskins/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Tue, 01 Apr 2014 07:34:38 +0000</pubDate>
				<category><![CDATA[usability]]></category>
		<category><![CDATA[Satire (Probably)]]></category>
		<category><![CDATA[USB]]></category>
		<guid isPermaLink="false">http://shkspr.mobi/blog/?p=9427</guid>

					<description><![CDATA[What does the design of cables tell us about the men who invented them?  Computer designers often strictly gender the components they create. The most obvious example is the motherboard - the central hub of the computer from which all electronic life descends.  As well as circuit boards (often called daughter-boards) - cables are also subject to strict gender rules.  The convention is that the…]]></description>
										<content:encoded><![CDATA[<p>What does the design of cables tell us about the men who invented them?</p>

<p>Computer designers often strictly gender the components they create. The most obvious example is the <strong>mother</strong>board - the central hub of the computer from which all electronic life descends.</p>

<p>As well as circuit boards (often called <strong>daughter</strong>-boards) - cables are also subject to strict gender rules.</p>

<p>The convention is that the part with the most obvious protrusion is assigned as "male" - it then slots tightly into the "female" port. Thus consummated, a meaningful exchange of data can be conducted. Once in a while, a complicated relationship between machines and cables necessitates the use of "<a href="http://en.wikipedia.org/wiki/Gender_changer">Gender Changers</a>" to allow a cable to masquerade as its opposite half.</p>

<p>Originally, many of the sockets on a computer were of mixed gender. A male serial port nestled next to a female VGA port.</p>

<p style="text-align: center;"><a title="By Duncan Lithgow (Own work) [Public domain], via Wikimedia Commons" href="http://commons.wikimedia.org/wiki/File%3ASerial_port.jpg"><img class="" alt="Serial port" src="https://upload.wikimedia.org/wikipedia/commons/e/ea/Serial_port.jpg" width="128" height="96"></a><a title="By Duncan Lithgow (Own work) [Public domain], via Wikimedia Commons" href="http://commons.wikimedia.org/wiki/File%3ASVGA_port.jpg"><img class="" alt="SVGA port" src="https://upload.wikimedia.org/wikipedia/commons/9/92/SVGA_port.jpg" width="128" height="96"></a></p>

<p>However, in most modern machines, <em>all</em> the ports are female. Sitting helplessly until their void is filled with a male cable - Ethernet, audio in and out, SATA for disks, VGA or HDMI for display - all female connectors allowing a vast pantheon of male cables penetrative access to the motherboard.</p>

<p>The most common cable/port pairing by any measure is USB. The ubiquitous connector continues the phallic metaphor by including a <em>preputial sheath</em> - or foreskin.</p>

<p><a title="By André Karwath aka Aka (Own work) [CC-BY-SA-2.5 (http://creativecommons.org/licenses/by-sa/2.5)], via Wikimedia Commons" href="http://commons.wikimedia.org/wiki/File%3AUSB_Male_Plug_Type_A.jpg"><img class="aligncenter" alt="USB Male Plug Type A" src="//upload.wikimedia.org/wikipedia/commons/2/27/USB_Male_Plug_Type_A.jpg" width="512" height="512"></a></p>

<p>USB's "shield" is not designed to be electrically connected or to transmit data - its presence is solely to protect the delicate electronic head from damage - just as the animal foreskin protects the glans of the penis.</p>

<p>It's an ingenious design, and mimics the evolutionary nature of the mammal to great effect.</p>

<p>All of which brings us on to Apple's new proprietary cable - <a href="http://en.wikipedia.org/wiki/Lightning_%28connector%29">Lightning</a>.</p>

<p><a title="By Domaina (Own work) [CC-BY-SA-3.0 (http://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons" href="http://commons.wikimedia.org/wiki/File%3ALightning_connector.svg"><img alt="Lightning connector" src="https://upload.wikimedia.org/wikipedia/commons/3/35/Lightning_connector.svg" width="256"></a></p>

<p>Despite the presence of fine and fragile electronics, the head of the cable is <em>completely</em> exposed!</p>

<p>If we compare the lightning male cable to a selection of USB standards, the difference becomes apparent.
<a title="By Algr [GFDL (http://www.gnu.org/copyleft/fdl.html) or CC-BY-SA-3.0 (http://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons" href="http://commons.wikimedia.org/wiki/File%3ALighting%2C_Mini%2C_Micro%2C_%26_USB_3.0_plugs.jpg">&lt;img alt="Lighting, Mini, Micro, &amp; USB 3.0 plugs" src=</a><a href="https://upload.wikimedia.org/wikipedia/commons/thumb/0/07/Lighting%2C_Mini%2C_Micro%2C_%26_USB_3.0_plugs.jpg/1280px-Lighting%2C_Mini%2C_Micro%2C_%26_USB_3.0_plugs">https://upload.wikimedia.org/wikipedia/commons/thumb/0/07/Lighting%2C_Mini%2C_Micro%2C_%26_USB_3.0_plugs.jpg/1280px-Lighting%2C_Mini%2C_Micro%2C_%26_USB_3.0_plugs</a>.jpg" width="512" /&gt;
The USB cables take the natural approach of giving protection to the male part - whereas Lightning can only be described as circumcised. Each contact subject to the harsh and unforgiving environment.</p>

<p>Why is this the case?</p>

<p>The man chiefly responsible for the USB spec - <a href="http://en.wikipedia.org/wiki/Ajay_Bhatt">Ajay Bhatt</a> - was born in India where <a href="https://en.wikipedia.org/wiki/Prevalence_of_circumcision#Less_than_20.25_3">rates of male genital mutilation are low</a>. It is only natural, therefore, that his impression of how the masculine part should look would reflect his own anatomy.</p>

<p>Contrast this with Lightning. Although Apple refuses to share the name of the man who invented it, it is well known that <a href="https://en.wikipedia.org/wiki/Prevalence_of_circumcision#United_States">circumcision is the most common procedures performed during hospital stays in the U.S.</a> with over 2/3rds of men being surgically altered.</p>

<p>Apple's love of American design combined with the prevalence of cosmetically altered penises in America, is almost certainly the driving force behind the "naked" appearance of the Lightning connector.</p>

<p>The fact that the Lightning connector can be inserted either way up inside a female port perhaps also speaks to the popularity of certain sexual positions in that country. But such matters are far beyond the scope of this blog post.</p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=9427&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2014/04/usb-cables-lightning-ports-and-foreskins/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
	</channel>
</rss>
