www-home/blog/index.html

83 lines
5.4 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/png" href="/favicon.ico">
<link rel="canonical" href="https://www.mcmillen.dev/https://mcmillen.dev/blog/">
<link rel="alternate" type="application/atom+xml" href="https://www.mcmillen.dev/feed.atom" title="Colin McMillen's Blog - Atom">
<title>Colin McMillen's Blog</title>
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Quicksand:wght@500;700&display=block" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Fira+Mono:500&display=block" rel="stylesheet">
<link rel="stylesheet" href="/pygments.css">
<link rel="stylesheet" href="/style.css">
<meta name="twitter:card" content="summary">
<meta name="twitter:site" content="@mcmillen">
<meta name="twitter:title" content="Colin McMillen's Blog">
<meta name="twitter:description" content="Colin McMillen's Blog">
</head>
<script>
function fixEmails() {
const mailtoArray = [
'm', 'a', 'i', 'l', 't', 'o', ':',
'c', 'o', 'l', 'i', 'n', '@',
'm', 'c', 'm', 'i', 'l', 'l', 'e', 'n',
'.', 'd', 'e', 'v'];
const mailtoLink = mailtoArray.join('');
const anchors = document.getElementsByTagName('a');
for (let i = 0; i < anchors.length; i++) {
const anchor = anchors[i];
if (anchor.href == 'mailto:email@example.com') {
anchor.href = mailtoLink;
if (anchor.innerText == 'colin at mcmillen dot dev') {
anchor.innerText = mailtoLink.substring(7);
}
}
}
}
</script>
<body onload="fixEmails()">
<div id="page-container">
<div id="content-wrap">
<div id="header">
<div class="content">
<a href="/" class="undecorated">Colin McMillen</a>
<span style="float: right;"><a href="/feed.atom"><img src="/img/rss.svg" alt="Atom feed" style="width: 17px; height: 17px; margin-bottom: 1px;"></a></span>
<span style="float: right;"><a href="https://twitter.com/mcmillen"><img src="/img/twitter.svg" alt="@mcmillen"></a></span>
</div>
</div>
<div class="content">
<h1 id="mcmillens-blog">mcmillen&rsquo;s blog</h1>
<p>Don&rsquo;t forget to follow with your favorite <a href="https://mcmillen.dev/feed.atom">RSS reader</a>!</p>
<h3 id="goodbye-twitter-hello-blog-2022-11-07"><a href="20221107-goodbye-twitter.html">Goodbye Twitter, Hello Blog!</a> (2022-11-07)</h3>
<p>Its quickly become clear that the acquisition of Twitter by Elon Musk means the end of the site as Ive known it since 2008. Instead Im going to collect all the stuff I would have tweeted about &amp; post it to this blog roughly once a week. If you have an RSS reader you can follow along there. Ive also created a subreddit where Ill link to each post, so that folks can follow via Reddit if they prefer, and also comment on what Ive written. Id also appreciate comments over email! My goal is to post fewer things, more thoughtfully, to a smaller audience for a while, and see how that goes.</p>
<h3 id="downvotes-dislikes-considered-harmful-2021-07-21"><a href="20210721-downvotes-considered-harmful.html">Downvotes &amp; Dislikes Considered Harmful</a> (2021-07-21)</h3>
<p>If youre letting users rank content, you probably dont need and dont want downvotes. Heres why. (This post inspired by news that Twitter is considering adding “Dislikes” to Tweets.)</p>
<h3 id="a-new-year-a-sneaky-new-project-2020-02-09"><a href="20200209-sneak.html">A new year &amp; a sneaky new project</a> (2020-02-09)</h3>
<p>I cant believe its here so quickly, but: today marks a year since my last day at Google. That seemed like a good occasion to dust off this newsletter &amp; let you know what Ive been up to: making a videogame! Im working on a stealth-based 2D platformer where you dont have to kill anyone unless you want to. Itll be possible to get through every level by sneaking and misdirection, but itll require you to be careful and tactical to do so… and of course if that doesnt work out, you can always draw your swords and go in fighting! So far Ive given it “Sneak” as a codename, but thats definitely a placeholder until I can flesh out more of the world.</p>
<h3 id="my-first-paper-in-10-years-2019-04-03"><a href="20190403-update.html">My first paper in 10 years?!</a> (2019-04-03)</h3>
<p>Its been nearly two months since my last day at Google, so I guess I should finally make use of this newsletter :) I wrote a paper which was published on April 1st as part of SIGBOVIK 2019: “93% of Paint Splatters are Valid Perl Programs”. In this paper, I answer a long-standing open problem in the programming languages community: is it possible to smear paint on the wall without creating valid Perl?</p>
<h3 id="93-of-paint-splatters-are-valid-perl-programs-2019-04-01"><a href="https://www.mcmillen.dev/sigbovik/">93% of Paint Splatters are Valid Perl Programs</a> (2019-04-01)</h3>
<p>TLDR: read the paper and view the gallery of pretty Perl programs. In this paper, we aim to answer a long-standing open problem in the programming languages community: is it possible to smear paint on the wall without creating valid Perl?</p>
</div>
</div>
<div id="footer">
<div class="content">
&copy; 2022 <a href="/" class="undecorated">Colin McMillen</a>. No cookies, no tracking.
</div>
</div>
</div>
</body>
</html>