{"id":1466,"date":"2025-05-31T02:00:56","date_gmt":"2025-05-31T00:00:56","guid":{"rendered":"https:\/\/stuff.tamius.net\/sacred-texts\/?p=1466"},"modified":"2026-03-13T20:35:06","modified_gmt":"2026-03-13T19:35:06","slug":"turns-out-you-do-need-to-harass-users-of-your-app","status":"publish","type":"post","link":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/","title":{"rendered":"Turns Out You DO Need To Harass Users of Your App"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">As is becoming tradition, Amulet D20 \u2014 a fantasy community club I&#8217;m a part of \u2014 has been handed the execution of the mini painting contest on local convention (Na Meji Nevidnega; NMN) for the second year. Because we like public participation, public gets to have a say in who&#8217;s the winner.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In practice, the competition looks like this: you come and sign up for the contest with your mini. Your mini gets put into the display case for the duration of the convention. On the display case, there&#8217;s a QR code that takes you to the voting app<sup class=\"modern-footnotes-footnote modern-footnotes-footnote--expands-on-desktop \" data-mfn=\"1\" data-mfn-post-scope=\"000000000000046a0000000000000000_1466\"><a href=\"javascript:void(0)\"  title=\"which is actually a webpage for very obvious reasons\"  role=\"button\" aria-pressed=\"false\" aria-describedby=\"mfn-content-000000000000046a0000000000000000_1466-1\">1<\/a><\/sup><span id=\"mfn-content-000000000000046a0000000000000000_1466-1\" role=\"tooltip\" class=\"modern-footnotes-footnote__note\" tabindex=\"0\" data-mfn=\"1\">which is actually a webpage for <em>very <\/em>obvious reasons<\/span>.<\/p>\n\n\n\n<figure class=\"wp-block-image alignfull size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"1704\" src=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_3055-scaled.jpg\" alt=\"\" class=\"wp-image-1467\" srcset=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_3055-scaled.jpg 2560w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_3055-300x200.jpg 300w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_3055-1024x682.jpg 1024w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_3055-768x511.jpg 768w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_3055-1536x1023.jpg 1536w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_3055-2048x1363.jpg 2048w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_3055-1140x759.jpg 1140w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><figcaption class=\"wp-element-caption\">Actual photo of the display case.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The idea behind public vote goes like this:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You get three (3) votes per category<\/li>\n\n\n\n<li>You need to cast ALL three votes for your vote to be valid<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The reasoning behind the second point boils down to the following: when the idea of having a voting app for various contests that our club has was first being conceived, someone said something along the lines of &#8220;I heard that <em>this contest <\/em> required everyone to hand out their vote to three participants, so that the public vote doesn&#8217;t go to the person with most friends on facebook.&#8221; I thought the idea was neat, and I was also a fan of <em>ranked choice <\/em>voting, i.e. the ability to give to vote for more than one entry while also indicating some amount preference.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In the initial version of the app, each user was thus given three votes: one worth 3 points, one worth 2, and one worth a single point. After they scanned the QR code, they were met with a scrollable list of contest entries, and a neat &#8216;vote&#8217; button tucked at the bottom of each entry. When they clicked the &#8216;vote&#8217; button a menu popped up, prompting users to select how many points they wanted to award to a given entry.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1130\" height=\"795\" src=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika.png\" alt=\"\" class=\"wp-image-1468\" srcset=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika.png 1130w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-300x211.png 300w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-1024x720.png 1024w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-768x540.png 768w\" sizes=\"auto, (max-width: 1130px) 100vw, 1130px\" \/><figcaption class=\"wp-element-caption\">Vote screen on the initial voting app.<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Concerns<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">This system worked well when the voting app was used for the costume contests on the quarterly thematic evenings organized by our club, which usually saw around 20 contestants. However, when <em>NMN Mini painting contest<\/em> has over 40 entries, you kinda need to scroll <em>a lot <\/em>in order to get to the entries near the bottom of the list. There were also concerns that the likelihood of public voting for a given entry could be affected by their placement on the list (though at casual glance, that doesn&#8217;t seem to be the case).<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"363\" src=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-1-1024x363.png\" alt=\"\" class=\"wp-image-1469\" srcset=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-1-1024x363.png 1024w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-1-300x106.png 300w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-1-768x273.png 768w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-1-1536x545.png 1536w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-1-1140x405.png 1140w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-1.png 1654w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Vertical axis is final placement. Lower is better. There doesn&#8217;t seem to be any noticeable correlation between how many votes a mini got and how far down on the voting list it appeared.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Regardless, there were changes made for this year&#8217;s public voting, as randomizing display order for each participant and making cards smaller wasn&#8217;t that hard. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Another concern that was raised was in the scoring itself. There were some concerns that 3\/2\/1 point ranked vote could be a bit too OP, especially as it only makes the &#8220;person with the most friends&#8221; problem even worse. Thus, we decided that for the 2025 NMN Mini Painting Contest, people will have to tick three minis that they liked the most.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The final interface ended up looking like this:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1132\" height=\"795\" src=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-3.png\" alt=\"\" class=\"wp-image-1471\" srcset=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-3.png 1132w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-3-300x211.png 300w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-3-1024x719.png 1024w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-3-768x539.png 768w\" sizes=\"auto, (max-width: 1132px) 100vw, 1132px\" \/><figcaption class=\"wp-element-caption\">No more menus \u2014 you just tap &#8216;vote&#8217;. Once you hand out all your votes, a confirmation banner appears at the top. The banner at the top is also in response to feedback from last year.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">And the final voting result ended up looking something like this:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"464\" height=\"304\" src=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-4.png\" alt=\"\" class=\"wp-image-1472\" srcset=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-4.png 464w, https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-4-300x197.png 300w\" sizes=\"auto, (max-width: 464px) 100vw, 464px\" \/><figcaption class=\"wp-element-caption\">About a third of all votes were incomplete, i.e. only voting for one of the contestants.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Yikes. <\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Last year, the valid\/incomplete split was more like 180\/30. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Lessons learned<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">So mainly, there&#8217;s two notable things that turned out to be the case. First, if your UI contains more than 3 words, then <em>a shocking amount<\/em> people won&#8217;t bother reading. Which, in retrospect, shouldn&#8217;t really be that shocking \u2014 as someone who spent too much time on \/r\/talesfromtechsupport and \/r\/iiiiiiitttttttttttt, I should have known better.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So what can be done about it?<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>POPUP<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The obvious option is having a &#8220;please vote for two more entries&#8221; popup after user casts the first vote. But popups have some problems of their own. As far as the common wisdom goes \u2014 the literate 66% will find them annoying. The illiterate 33% will find them annoying, won&#8217;t read them, and click whatever button will get the popup out of their face.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Or will they? <\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I guess some A\/B testing is in order the next time I get the chance.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Ranked vote, <\/strong>but with different weights<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Ranked vote has proven to be highly intuitive in terms of getting people to vote for exactly three options, so why don&#8217;t we change the vote weights a bit in order to mitigate the &#8220;mr. popular&#8221; problem? Now, having the three votes be worth 1.1, 1.2, and 1.3 points is much less sexy than 1, 2, and 3 \u2014 but at the end of the day, we don&#8217;t really have to tell people how many points their votes are worth. The actual vote weights could very well be hidden behind non-numerical options such as &#8220;Favourite&#8221;, &#8220;Second favourite&#8221;, and &#8220;third favourite.&#8221; <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In theory, I could even have all three options be worth the same \u2014 although I feel this option is a bit dishonest to the voting public. But then again, it&#8217;s the only way to A\/B test equal-vote and ranked voting without being unfair to the contestants.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n<div class=\"pgc-sgb-cb wp-block-pgcsimplygalleryblock-grid alignwide\" data-gallery-id=\"4c342495\"><div class=\"sgb-preloader\" id=\"pr_4c342495\">\n\t<div class=\"sgb-square\" style=\"background:#d4d4d4\"><\/div>\n\t<div class=\"sgb-square\" style=\"background:#d4d4d4\"><\/div>\n\t<div class=\"sgb-square\" style=\"background:#d4d4d4\"><\/div>\n\t<div class=\"sgb-square\" style=\"background:#d4d4d4\"><\/div><\/div><div class=\"simply-gallery-amp pgc_sgb_slider alignwide\"><noscript><div class=\"sgb-gallery\"><div class=\"sgb-item\"><a href=\"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/dsc_2100\/\" target=\"_blank\"><img decoding=\"async\" alt=\"\" width=\"240\" height=\"300\" loading=\"lazy\" src=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2100-240x300.jpg\" srcset=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2100-240x300.jpg 240w,https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2100-819x1024.jpg 819w,https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2100.jpg 2048w\" sizes=\"auto, 250px\"\/><\/a><\/div><div class=\"sgb-item\"><a href=\"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/dsc_2261\/\" target=\"_blank\"><img decoding=\"async\" alt=\"\" width=\"240\" height=\"300\" loading=\"lazy\" src=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2261-240x300.jpg\" srcset=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2261-240x300.jpg 240w,https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2261-819x1024.jpg 819w,https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2261.jpg 2047w\" sizes=\"auto, 250px\"\/><\/a><\/div><div class=\"sgb-item\"><a href=\"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/dsc_2275\/\" target=\"_blank\"><img decoding=\"async\" alt=\"\" width=\"240\" height=\"300\" loading=\"lazy\" src=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2275-240x300.jpg\" srcset=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2275-240x300.jpg 240w,https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2275-819x1024.jpg 819w,https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2275.jpg 2048w\" sizes=\"auto, 250px\"\/><\/a><\/div><\/div><\/noscript><\/div><script type=\"application\/json\" class=\"sgb-data\">{\"thumbHieghtRation\":1.5,\"galleryType\":\"pgc_sgb_grid\",\"align\":\"wide\",\"galleryId\":\"4c342495\",\"images\":[{\"id\":1474,\"title\":\"DSC_2100\",\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2100.jpg\",\"link\":\"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/dsc_2100\/\",\"alt\":\"\",\"description\":\"\",\"caption\":\"\",\"mime\":\"image\/jpeg\",\"type\":\"image\",\"width\":2048,\"height\":2560,\"sizes\":{\"thumbnail\":{\"height\":150,\"width\":150,\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2100-150x150.jpg\",\"orientation\":\"landscape\"},\"medium\":{\"height\":300,\"width\":240,\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2100-240x300.jpg\",\"orientation\":\"portrait\"},\"large\":{\"height\":1024,\"width\":819,\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2100-819x1024.jpg\",\"orientation\":\"portrait\"},\"full\":{\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2100.jpg\",\"height\":2560,\"width\":2048,\"orientation\":\"portrait\"}},\"imageMeta\":{\"aperture\":\"10\",\"credit\":\"\",\"camera\":\"NIKON Z 50\",\"caption\":\"\",\"created_timestamp\":\"1748083786\",\"copyright\":\"\",\"focal_length\":\"70\",\"iso\":\"400\",\"shutter_speed\":\"0.25\",\"title\":\"\",\"orientation\":\"1\",\"keywords\":[]},\"meta\":false,\"postlink\":\"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/dsc_2100\/\"},{\"id\":1475,\"title\":\"DSC_2261\",\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2261.jpg\",\"link\":\"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/dsc_2261\/\",\"alt\":\"\",\"description\":\"\",\"caption\":\"\",\"mime\":\"image\/jpeg\",\"type\":\"image\",\"width\":2047,\"height\":2560,\"sizes\":{\"thumbnail\":{\"height\":150,\"width\":150,\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2261-150x150.jpg\",\"orientation\":\"landscape\"},\"medium\":{\"height\":300,\"width\":240,\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2261-240x300.jpg\",\"orientation\":\"portrait\"},\"large\":{\"height\":1024,\"width\":819,\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2261-819x1024.jpg\",\"orientation\":\"portrait\"},\"full\":{\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2261.jpg\",\"height\":2560,\"width\":2047,\"orientation\":\"portrait\"}},\"imageMeta\":{\"aperture\":\"11\",\"credit\":\"\",\"camera\":\"NIKON Z 50\",\"caption\":\"\",\"created_timestamp\":\"1748086671\",\"copyright\":\"\",\"focal_length\":\"70\",\"iso\":\"400\",\"shutter_speed\":\"0.33333333333333\",\"title\":\"\",\"orientation\":\"1\",\"keywords\":[]},\"meta\":false,\"postlink\":\"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/dsc_2261\/\"},{\"id\":1476,\"title\":\"DSC_2275\",\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2275.jpg\",\"link\":\"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/dsc_2275\/\",\"alt\":\"\",\"description\":\"\",\"caption\":\"\",\"mime\":\"image\/jpeg\",\"type\":\"image\",\"width\":2048,\"height\":2560,\"sizes\":{\"thumbnail\":{\"height\":150,\"width\":150,\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2275-150x150.jpg\",\"orientation\":\"landscape\"},\"medium\":{\"height\":300,\"width\":240,\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2275-240x300.jpg\",\"orientation\":\"portrait\"},\"large\":{\"height\":1024,\"width\":819,\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2275-819x1024.jpg\",\"orientation\":\"portrait\"},\"full\":{\"url\":\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/DSC_2275.jpg\",\"height\":2560,\"width\":2048,\"orientation\":\"portrait\"}},\"imageMeta\":{\"aperture\":\"11\",\"credit\":\"\",\"camera\":\"NIKON Z 50\",\"caption\":\"\",\"created_timestamp\":\"1748088319\",\"copyright\":\"\",\"focal_length\":\"62\",\"iso\":\"400\",\"shutter_speed\":\"0.33333333333333\",\"title\":\"\",\"orientation\":\"1\",\"keywords\":[]},\"meta\":false,\"postlink\":\"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/dsc_2275\/\"}],\"itemsMetaDataCollection\":[]}<\/script><script>(function(){if(window.PGC_SGB && window.PGC_SGB.searcher){window.PGC_SGB.searcher.initBlocks()}})()<\/script><\/div>\n\n\n<p class=\"has-text-align-center has-text-color has-link-color has-small-font-size wp-elements-69dcdd8d1d5b3fea52244c95bf3cc216 wp-block-paragraph\" style=\"color:#6a635c\">Some random contestants from this year&#8217;s Mini Painting Competition at Na Meji Nevidnega &#8230; no specific purpose, I just want to break the wall of text a bit.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Well, in about a month, I&#8217;m attending Isle of Wonders on Cres \u2014 as is tradition, by official duty. This year, they have decided they want to have public voting on their mini painting contest, which means that in about a month I get a chance to do A\/B testing in prod. Neat.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>As is becoming tradition, Amulet D20 \u2014 a fantasy community club I&#8217;m a part of \u2014 has been handed the execution of the mini painting contest on local convention (Na Meji Nevidnega; NMN) for the second year. Because we like public participation, public gets to have a say in who&#8217;s the winner. In practice, the competition looks like this: you come and sign up<span class=\"more-dots\">&#8230;<\/span> <span class=\"more-tag d-block mt-05\"><a class=\"more-link\" href=\"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/\">Continue Reading...<span class=\"screen-reader-text\"> \"Turns Out You DO Need To Harass Users of Your App\"<\/span><\/a><\/span><!-- .more-tag --><\/p>\n","protected":false},"author":1,"featured_media":1478,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"pgc_sgb_lightbox_settings":"","footnotes":""},"categories":[13,38],"tags":[],"class_list":["post-1466","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-programming","category-projects"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Turns Out You DO Need To Harass Users of Your App - Tamius&#039; sacred texts<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Turns Out You DO Need To Harass Users of Your App - Tamius&#039; sacred texts\" \/>\n<meta property=\"og:description\" content=\"As is becoming tradition, Amulet D20 \u2014 a fantasy community club I&#8217;m a part of \u2014 has been handed the execution of the mini painting contest on local convention (Na Meji Nevidnega; NMN) for the second year. Because we like public participation, public gets to have a say in who&#8217;s the winner. In practice, the competition looks like this: you come and sign up...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/\" \/>\n<meta property=\"og:site_name\" content=\"Tamius&#039; sacred texts\" \/>\n<meta property=\"article:published_time\" content=\"2025-05-31T00:00:56+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-13T19:35:06+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-5-1024x729.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"729\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Tamius Han\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tamius Han\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/2025\\\/05\\\/31\\\/turns-out-you-do-need-to-harass-users-of-your-app\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/2025\\\/05\\\/31\\\/turns-out-you-do-need-to-harass-users-of-your-app\\\/\"},\"author\":{\"name\":\"Tamius Han\",\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/#\\\/schema\\\/person\\\/4677d05a4f45974f27cd21481c561c21\"},\"headline\":\"Turns Out You DO Need To Harass Users of Your App\",\"datePublished\":\"2025-05-31T00:00:56+00:00\",\"dateModified\":\"2026-03-13T19:35:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/2025\\\/05\\\/31\\\/turns-out-you-do-need-to-harass-users-of-your-app\\\/\"},\"wordCount\":1026,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/2025\\\/05\\\/31\\\/turns-out-you-do-need-to-harass-users-of-your-app\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/slika-5.png\",\"articleSection\":[\"Programming\",\"Projects\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/2025\\\/05\\\/31\\\/turns-out-you-do-need-to-harass-users-of-your-app\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/2025\\\/05\\\/31\\\/turns-out-you-do-need-to-harass-users-of-your-app\\\/\",\"url\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/2025\\\/05\\\/31\\\/turns-out-you-do-need-to-harass-users-of-your-app\\\/\",\"name\":\"Turns Out You DO Need To Harass Users of Your App - Tamius&#039; sacred texts\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/2025\\\/05\\\/31\\\/turns-out-you-do-need-to-harass-users-of-your-app\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/2025\\\/05\\\/31\\\/turns-out-you-do-need-to-harass-users-of-your-app\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/slika-5.png\",\"datePublished\":\"2025-05-31T00:00:56+00:00\",\"dateModified\":\"2026-03-13T19:35:06+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/#\\\/schema\\\/person\\\/4677d05a4f45974f27cd21481c561c21\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/2025\\\/05\\\/31\\\/turns-out-you-do-need-to-harass-users-of-your-app\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/2025\\\/05\\\/31\\\/turns-out-you-do-need-to-harass-users-of-your-app\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/2025\\\/05\\\/31\\\/turns-out-you-do-need-to-harass-users-of-your-app\\\/#primaryimage\",\"url\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/slika-5.png\",\"contentUrl\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/slika-5.png\",\"width\":1938,\"height\":1379},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/2025\\\/05\\\/31\\\/turns-out-you-do-need-to-harass-users-of-your-app\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Turns Out You DO Need To Harass Users of Your App\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/#website\",\"url\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/\",\"name\":\"Tamius&#039; sacred texts\",\"description\":\"... containing one of the weirdest mix of pointless topics.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/#\\\/schema\\\/person\\\/4677d05a4f45974f27cd21481c561c21\",\"name\":\"Tamius Han\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1ce12569905c4aff5d48778af8527565f1175c254ad56cc5e5221666ff1e222b?s=96&d=blank&r=pg\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1ce12569905c4aff5d48778af8527565f1175c254ad56cc5e5221666ff1e222b?s=96&d=blank&r=pg\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1ce12569905c4aff5d48778af8527565f1175c254ad56cc5e5221666ff1e222b?s=96&d=blank&r=pg\",\"caption\":\"Tamius Han\"},\"url\":\"https:\\\/\\\/stuff.tamius.net\\\/sacred-texts\\\/author\\\/tamius-han\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Turns Out You DO Need To Harass Users of Your App - Tamius&#039; sacred texts","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/","og_locale":"en_US","og_type":"article","og_title":"Turns Out You DO Need To Harass Users of Your App - Tamius&#039; sacred texts","og_description":"As is becoming tradition, Amulet D20 \u2014 a fantasy community club I&#8217;m a part of \u2014 has been handed the execution of the mini painting contest on local convention (Na Meji Nevidnega; NMN) for the second year. Because we like public participation, public gets to have a say in who&#8217;s the winner. In practice, the competition looks like this: you come and sign up...","og_url":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/","og_site_name":"Tamius&#039; sacred texts","article_published_time":"2025-05-31T00:00:56+00:00","article_modified_time":"2026-03-13T19:35:06+00:00","og_image":[{"width":1024,"height":729,"url":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-5-1024x729.png","type":"image\/png"}],"author":"Tamius Han","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Tamius Han","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/#article","isPartOf":{"@id":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/"},"author":{"name":"Tamius Han","@id":"https:\/\/stuff.tamius.net\/sacred-texts\/#\/schema\/person\/4677d05a4f45974f27cd21481c561c21"},"headline":"Turns Out You DO Need To Harass Users of Your App","datePublished":"2025-05-31T00:00:56+00:00","dateModified":"2026-03-13T19:35:06+00:00","mainEntityOfPage":{"@id":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/"},"wordCount":1026,"commentCount":0,"image":{"@id":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/#primaryimage"},"thumbnailUrl":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-5.png","articleSection":["Programming","Projects"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/","url":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/","name":"Turns Out You DO Need To Harass Users of Your App - Tamius&#039; sacred texts","isPartOf":{"@id":"https:\/\/stuff.tamius.net\/sacred-texts\/#website"},"primaryImageOfPage":{"@id":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/#primaryimage"},"image":{"@id":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/#primaryimage"},"thumbnailUrl":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-5.png","datePublished":"2025-05-31T00:00:56+00:00","dateModified":"2026-03-13T19:35:06+00:00","author":{"@id":"https:\/\/stuff.tamius.net\/sacred-texts\/#\/schema\/person\/4677d05a4f45974f27cd21481c561c21"},"breadcrumb":{"@id":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/#primaryimage","url":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-5.png","contentUrl":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-content\/uploads\/2025\/05\/slika-5.png","width":1938,"height":1379},{"@type":"BreadcrumbList","@id":"https:\/\/stuff.tamius.net\/sacred-texts\/2025\/05\/31\/turns-out-you-do-need-to-harass-users-of-your-app\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/stuff.tamius.net\/sacred-texts\/"},{"@type":"ListItem","position":2,"name":"Turns Out You DO Need To Harass Users of Your App"}]},{"@type":"WebSite","@id":"https:\/\/stuff.tamius.net\/sacred-texts\/#website","url":"https:\/\/stuff.tamius.net\/sacred-texts\/","name":"Tamius&#039; sacred texts","description":"... containing one of the weirdest mix of pointless topics.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/stuff.tamius.net\/sacred-texts\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/stuff.tamius.net\/sacred-texts\/#\/schema\/person\/4677d05a4f45974f27cd21481c561c21","name":"Tamius Han","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/1ce12569905c4aff5d48778af8527565f1175c254ad56cc5e5221666ff1e222b?s=96&d=blank&r=pg","url":"https:\/\/secure.gravatar.com\/avatar\/1ce12569905c4aff5d48778af8527565f1175c254ad56cc5e5221666ff1e222b?s=96&d=blank&r=pg","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1ce12569905c4aff5d48778af8527565f1175c254ad56cc5e5221666ff1e222b?s=96&d=blank&r=pg","caption":"Tamius Han"},"url":"https:\/\/stuff.tamius.net\/sacred-texts\/author\/tamius-han\/"}]}},"_links":{"self":[{"href":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-json\/wp\/v2\/posts\/1466","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-json\/wp\/v2\/comments?post=1466"}],"version-history":[{"count":4,"href":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-json\/wp\/v2\/posts\/1466\/revisions"}],"predecessor-version":[{"id":1703,"href":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-json\/wp\/v2\/posts\/1466\/revisions\/1703"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-json\/wp\/v2\/media\/1478"}],"wp:attachment":[{"href":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-json\/wp\/v2\/media?parent=1466"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-json\/wp\/v2\/categories?post=1466"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/stuff.tamius.net\/sacred-texts\/wp-json\/wp\/v2\/tags?post=1466"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}