↩︎
  • A tweet of mine from 2017:

    ↩︎
  • \").", "snippet": "\n", "url": "/changes/2023/07/05/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2023-07-01-inflection-ai-pi", "type": "posts", "title": "Inflection AI Pi - feedback and sharing", "author": "Daniel Griffin", "date": "2023-07-01 01:34:37 -0700", "category": "", "tags": "[feedback interface, Inflection AI Pi, conversational AI, sharing interface]", "content": "\n\n\nInflection AI PI feedback interface\nThis is in Google Forms.\n\nScreenshot taken with [GoFullPage](https://gofullpage.com/) (distortions possible) at: 2023-07-01 08:18:06 \n\n\n\nInflection AI PI sharing interface\n(via an example query-prompt)\n\n\nInflection AI Pi\n[\nHow can I share these conversations with others?\n]\n\n\nScreenshot taken with Shift+Command+4 (on MacOS) at: 2023-07-01 23:39:14 \n\n\n\nScreenshot taken with Shift+Command+4 (on MacOS) at: 2023-07-01 23:39:34 \n\n\n\nScreenshot taken with Shift+Command+4 (on MacOS) at: 2023-07-01 23:39:53 \n\n\n\nScreenshot taken with Shift+Command+4 (on MacOS) at: 2023-07-01 23:40:04 \n\n\n\nScreenshot taken with Shift+Command+4 (on MacOS) at: 2023-07-01 23:40:26 \n\n\nFrom the \"feedback\" form / survey questions:\n\n> What do you find most difficult about finding information on the Web?\n\nThis question is striking to me for two reasons: (1) given the presentation of Pi is not largely toward \"finding information\" but \"conversation\" (or guided self- reflection/writing?) and (2) I'd love to read and discuss what people say in response to this question.\n\n\n\nThe \"conversational\" aim of the company appears to produce a mismatch in the feedback form——from the anthropomorphized first-person wrapping of the survey instrument (\"Hey! This is Pi. I'd love to hear your thoughts on how I'm doing...\") to the survey questions themselves presenting a sort of _illeism_—\"referring to oneself in the third person instead of first person[^wiki]—perhaps (\"What do you wish for from Pi?\").\n\n\n\n\n\n\n[^wiki]: [https://en.wikipedia.org/wiki/Illeism](https://en.wikipedia.org/wiki/Illeism)", "snippet": "\n", "url": "/2023/07/01/inflection-ai-pi/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "weblinks-2023-06-30-the-text-prompt-is-a-poor-ui", "type": "posts", "title": ""the text prompt is a poor UI"", "author": "Daniel Griffin", "date": "2023-06-30 08:38:46 -0700", "category": "", "tags": "[text-interface]", "content": "\n\nThis tweet is a reply—from the same author—to the tweet in: [very few worthwhile tasks? (weblink)](/weblinks/2023/06/29/very-few-worthwhile-tasks).\n\n\n\n\n\n[highlighting added]\n\n\n\\@benedictevans\nIn other words, I think the text prompt is a poor UI, quite separate to the capability of the model itself.On Twitter Jun 29, 2023\n\nPoor? Incomplete? We'll see!\n", "snippet": "\n", "url": "/weblinks/2023/06/30/the-text-prompt-is-a-poor-ui/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2023-06-30-very-few-2-3-sentence-descriptions", "type": "posts", "title": "very few 2-3 sentence descriptions connect", "author": "Daniel Griffin", "date": "2023-06-30 00:00:00 -0700", "category": "", "tags": "[queries-and-prompts, search seeds]", "content": "\n\nA follow-up to: [very few worthwhile tasks? (weblink)](/weblinks/2023/06/29/very-few-worthwhile-tasks), with the subject tweet shared below.\n\n\n\nAs I thought more about the [\\@benedictevans tweet](https://twitter.com/benedictevans/status/1674413748272939009) (at bottom) from yesterday, I hit on another, and perhaps clearer, connection to a core discussion in [my dissertation](/diss).\n\nOne struggle people have with finding effective uses (or developing fruitful practices) for ChatGPT, etc., is _not_ that \"very few worthwhile tasks can be described in 2-3 sentences typed in or spoken in one go\". The struggle is that very few 2-3 sentence prompts/queries, in particular contexts, can effectively describe the imagined referent worthwhile tasks.\n\nThe problem here is not that worthwhile tasks cannot be described in 2-3 sentences. The problem is finding some of those, perhaps very few, 2-3 sentences, for particular task contexts, that connect the searcher with their next steps in relation to their worthwhile task.\n \n\n\nThe data engineers I interviewed were particularly successful, in part, because their work was organized in such a way that they could grow their queries out of [seeds in the code or text or conversations](/diss/extending_searching#search-seeds) they were working with.\n\nSo, perhaps \"in one go\" is apt and we need to think about how to see and seed how to construct effective queries/prompts.\n\n\n\nHere is the tweet in [very few worthwhile tasks?](/2023/06/29/very-few-worthwhile-tasks.html) (weblink post):\n\n\n\n[highlighting added]\n\n\n\\@benedictevans\nThe more I look at chatGPT, the more I think that the fact NLP didn’t work very well until recently blinded us to the fact that very few worthwhile tasks can be described in 2-3 sentences typed in or spoken in one go. It's the same class of error as pen computing.On Twitter Jun 29, 2023\n\n", "snippet": "\n", "url": "/2023/06/30/very-few-2-3-sentence-descriptions/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2023-06-30-til-git-alias", "type": "posts", "title": "TIL git alias", "author": "Daniel Griffin", "date": "2023-06-30 00:00:00 -0700", "category": "", "tags": "[TIL, You.com, Perplexity AI, Phind]", "content": "**Problem:** When I make changes to core files in my Jekyll website and look at the `git status` I am mired in modifications to `_site`.\n\n**Current Solution:** A grep on the output of `git status --short` with a .git alias.\n\n**TIL:** [`git status --short`](https://git-scm.com/docs/git-status#Documentation/git-status.txt---short), and the ability to set an alias for use w/ `git` in `.gitconfig` (re my alias search, I was only looking for some hand-holding to recall how to do it in zsh)\n\n**Searches:**\n\n\n\nI'm just quickly demonstrating some different tools below (and working on how to do that). Any of these (and non-generative tools) likely could have helped me to a workable solution.\n\nNotice each of these tools (You.com, Perplexity AI, and Phind) allow me to share my results (see the link in the search queries).\n\n\n\n\nFruitful reply but then 'confused' by how I asked about preserving color.\n\nNote: I narrowed the viewing window so the right-column of search results collapsed in this screenshot.\nYou.com\n[\ncan you type somthing like \"git status -\\_site\" to get status of everydhing but the \\_site domain?\n]\n\n\n\n\nScreenshot taken with [GoFullPage](https://gofullpage.com/) (distortions possible) at: 2023-06-30 10:20:33 \n\n\n\n\n\n\n\n\n\nPerplexity AI \n \n\nare there nicer ways to get output like this?\ngit status | grep -v '\\_site'\n\n \n\n\n\n\n\n\n\nScreenshot taken with [GoFullPage](https://gofullpage.com/) (distortions possible) at: 2023-06-30 10:19:59 \n\n\n\n\n\nPhind\n[\nI want to make a alias for `git status --short | grep -v '_site'`\n]\n\n\n\n\nScreenshot taken with [GoFullPage](https://gofullpage.com/) (distortions possible) at: 2023-06-30 10:19:26 \n\n\n", "snippet": "\n", "url": "/2023/06/30/til-git-alias/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-06-30", "type": "posts", "title": "change notes 2023-06-30", "author": "Daniel Griffin", "date": "2023-06-30 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Added formatting for `search-query-block`, see in [TIL git alias (weblog)](/2023/06/30/til-git-alias).\n- Added practice of Twitter SVG to use superscripts to link to tweets containing referenced text, see in [very few 2-3 sentence descriptions connect (weblog)](/2023/06/30/very-few-2-3-sentence-descriptions)\n- Changed [Posts](/posts) to show posts of all categories, with category labels.\n - Changed the back-to for those category pages to Posts, from Browse.\n- Per Lighthouse Accessibility concerns: \"Background and foreground colors do not have a sufficient contrast ratio.\"\n - Changed `` link colors from Bootstrap default to blue and purple.\n - Changed `` to `#990011`\n- Modified the display of `bibtex`.", "snippet": "\n", "url": "/changes/2023/06/30/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "papers-zamfirescu-pereira2023johnny", "type": "posts", "title": "“Why Johnny Can’t Prompt”", "author": "Daniel Griffin", "date": "2023-06-29 23:05:12 -0700", "category": "", "tags": "[queries-and-prompts, prompt engineering]", "content": "\n\nstatus: unread (2023-06-30 17:06:56)\n\n\nWhy Johnny Can’t Prompt: How Non-AI Experts Try (and Fail) to Design LLM Prompts\n\n```bibtex\n@inproceedings{zamfirescu-pereira2023johnny,\n author = {Zamfirescu-Pereira, J.D. and Wong, Richmond Y. and Hartmann, Bjoern and Yang, Qian},\n title = {Why Johnny Can’t Prompt: How Non-AI Experts Try (and Fail) to Design LLM Prompts},\n year = {2023},\n isbn = {9781450394215},\n publisher = {Association for Computing Machinery},\n address = {New York, NY, USA},\n url = {https://doi.org/10.1145/3544548.3581388},\n doi = {10.1145/3544548.3581388},\n abstract = {Pre-trained large language models (“LLMs”) like GPT-3 can engage in fluent, multi-turn instruction-taking out-of-the-box, making them attractive materials for designing natural language interactions. Using natural language to steer LLM outputs (“prompting”) has emerged as an important design technique potentially accessible to non-AI-experts. Crafting effective prompts can be challenging, however, and prompt-based interactions are brittle. Here, we explore whether non-AI-experts can successfully engage in “end-user prompt engineering” using a design probe—a prototype LLM-based chatbot design tool supporting development and systematic evaluation of prompting strategies. Ultimately, our probe participants explored prompt designs opportunistically, not systematically, and struggled in ways echoing end-user programming systems and interactive machine learning systems. Expectations stemming from human-to-human instructional experiences, and a tendency to overgeneralize, were barriers to effective prompt design. These findings have implications for non-AI-expert-facing LLM-based tool design and for improving LLM-and-prompt literacy among programmers and the public, and present opportunities for further research.},\n booktitle = {Proceedings of the 2023 CHI Conference on Human Factors in Computing Systems},\n articleno = {437},\n numpages = {21},\n keywords = {end-users, design tools, language models},\n location = {Hamburg, Germany},\n series = {CHI '23}\n}\n```\nbibtext from [doi](https://doi.org/10.1145/3544548.3581388)>\n\n\n\n", "snippet": "\n", "url": "/papers/zamfirescu-pereira2023johnny/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "weblinks-2023-06-29-very-few-worthwhile-tasks", "type": "posts", "title": "very few worthwhile tasks?", "author": "Daniel Griffin", "date": "2023-06-29 16:05:12 -0700", "category": "", "tags": "[decontextualized, queries-and-prompts, extending searching]", "content": "\n\nFollow-up: [very few 2-3 sentence descriptions connect (weblog)](/2023/06/30/very-few-2-3-sentence-descriptions.html).\n\n\n\n\n\nWhat is a \"worthwhile task\"?\n\n[highlighting added]\n\n\n\\@benedictevans\nThe more I look at chatGPT, the more I think that the fact NLP didn’t work very well until recently blinded us to the fact that very few worthwhile tasks can be described in 2-3 sentences typed in or spoken in one go. It's the same class of error as pen computing.On Twitter Jun 29, 2023\n\n\nWhere to start? I think this tweet sort of treats sentences/information **and** \"tasks\" as overly atomic, decontextualized (and perhaps relies too heavily on \"in one go\").\n\n\nMy [dissertation](/diss) is about how data engineers heavily (and effectively?) rely on general-purpose search engines to do worthwhile tasks for their jobs. For decades they—and many other sorts of professionals—have navigated their work and the web through incantations much shorter than 2-3 sentences:\n\n> > [Probably 90% of my job is Googling things](/diss/introduction.html)\n\nThose practices were not handed to them, but developed over time and are woven through their tools, organizational processes, and discourse:\n\n> [the occupational, professional, and technical components supply a significant amount of context, or structure, as scaffolding for query selection and search evaluation.](/diss/extending_searching.html#discussion-missing-search-knowledge)\"\n\n\n\nThis tweet seems to position people as previously (effectively) believing something about language and tasks that is akin to superficial pronouncements/readings of \"_just_ google it\". With some reflection we recognize that the 'just' is very context/audience/subject-dependent, indexical, and that communication requires real work[^1]. (Perhaps it is like telling someone embarking on a rigorous trail ultramarathon] to just put one foot in front of another...)\n\nAnd it also reminds me of \"google knows everything until you have an assignment 😂\" — general-purpose web search has worked very well for tasks scaffolded within our environment and lives, but when we are thrust into something new new, there may be more work to do (jarring as that can be).\n\n\nOr maybe I take issue with \"can be described\"? Is that what a search query or prompt is? A description?\n\n\n\n\n[^1]: @reddy1979conduit:\n\n > Human communication will almost always go astray unless real energy is expended.", "snippet": "\n", "url": "/weblinks/2023/06/29/very-few-worthwhile-tasks/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "weblinks-2023-06-29-all-you-need-is-cody", "type": "posts", "title": "all you need is Sourcegraph's Cody?", "author": "Daniel Griffin", "date": "2023-06-29 16:05:12 -0700", "category": "", "tags": "[CGT, Sourcegraph]", "content": "\n\nDownloaded.\n\n> You’re all set\n> \n> Once embeddings are finished being generated, you can specify Cody’s context and start asking questions in the Cody Chat.\n\nCurrent status: \"Generating repositories embeddings\"\n\n\\@steve_yegge\n[https://about.sourcegraph.com/blog/all-you-need-is-cody](https://about.sourcegraph.com/blog/all-you-need-is-cody)\n\nI'm excited to announce that Cody is here for everyone. Cody can explain, diagnose, and fix your code like an expert, right in your IDE. No code base is too challenging for Cody.\n\nIt's like having your own personal team of senior engineers. Try it out!Tweet Jun 28, 2023\n\n\n\n\nAdded: 2023-06-30 16:18:08\n\n\n\nCurrent status: \"Generating repositories embeddings\"\n\n\n\\@tonofcrates\nLooking forward to it! If the tool is in beta, I might consider saying that more prominently. Neither Steve's post nor the Sourcegraph website make that clear. I only just found \"Cody AI is in beta\" as a sentence in the VSCode plugin README.Tweet Jun 29, 2023\n\n", "snippet": "\n", "url": "/weblinks/2023/06/29/all-you-need-is-cody/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "weblinks-2023-06-29-prompt-engineering-evolving-and-shapeshifting", "type": "posts", "title": "definitions of prompt engineering evolving and shapeshifting", "author": "Daniel Griffin", "date": "2023-06-29 09:48:25 -0700", "category": "", "tags": "[prompt engineering]", "content": "\nthe definition(s) and use(s) of \"prompt engineering\" will continue to evolve, shapeshift, fragment and become even more _multiple_ and context-dependent. But still a useful handle?\n\n\n[highlighting added]\n\n\n\\@yoavgo\n\n\ni didnt look in details yet but this is roughly what i'd imagine a chaining tool api to look like (ahm langchain, ahm).\nits interesting how the definition of \"prompt engineering\" evolves and shapeshifts all the time.\n\n\n\n\n\\@jxnlco\nWhy prompt engineer \\@openai with strings? \nDon't even make it string, or a dag, make it a pipeline. \nSingle level of abstraction:\nTool and Prompt and Context and Technique? its the same thing, it a description of what I want.\nThe code is the prompt. None of this shit\"\\{\\}\\{\\{\\}\\} \\{\\}\\}\".format\\{\"\\{\\}\\{\\}\"\nPR in the next tweet.\n\nTweet Jun 29, 2023\n\n\nTweet Jun 29, 2023\n", "snippet": "\n", "url": "/weblinks/2023/06/29/prompt-engineering-evolving-and-shapeshifting/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-06-29", "type": "posts", "title": "change notes 2023-06-29", "author": "Daniel Griffin", "date": "2023-06-29 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Increased the padding for the top container divs to improve the mobile experience.\n- Learned how to implement Boostrap tooltips.\n - Removed the text from search-bar-links (now only showing the Bootstrap SVG icons, w/ tooltips): \n - Converted the text from query labels (i.e. , , ) in search suggestions to Bootstrap SVG icons\n- Converted the hand-curated autocomplete search suggestions on the landing page to be static on initial page load.\n- Converted the display of search suggestions to be a list of Bootstrap.css cards.\n - In the process I broke the hover and keyboard interaction with the suggestions.\n- Wrote a userscript for Tampermonkey to extract a json from a tweet and compile into a Bootstrap.css card per the template I'm using in [Shared weblinks](/weblinks).\n- Temporarily removed 'facets' from the search results while I iron out the functioning.", "snippet": "\n", "url": "/changes/2023/06/29/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2023-06-28-i-want-to-buy-a-new-suv-which-brand-is-best", "type": "posts", "title": "[I want to buy a new SUV which brand is best?]", "author": "Daniel Griffin", "date": "2023-06-28 00:00:00 -0700", "category": "", "tags": "[comparing-results, evaluating-results-meta]", "content": "\n\nThis is a follow-up to [Perplexity, Ads, and SUVs (weblink)](/weblinks/2023/06/27/perplexity-ads-and-sUVs.html). The screenshots below are made with GoFullPage (which seems to be struggling with the ChatGPT page).\n\n\n\nHere are the initial/top results from various generative search tools for the query: [\nI want to buy a new SUV which brand is best?\n]\n\n\nReminders: \nIt is very difficult to compare SERPs outside of contexts-of-use. \nWe cannot pretend that one-SERP-fits-all. \nIt is difficult to compare initial responses in a query that is inclined towards reformulation and interaction (i.e. sometimes the initial limitations of results are more problematic than others—like:[\nHad a seizure Now what?\n] as compared to the initial steps of a more methodical and less time-sensitive search like the topic of this post).\n\nAccuracy across all claims may not be the key concern in this particular query type (as compared to 'reading ease' (word choice?) or 'quality of advice'[^advice], but on the topic of accuracy, do please recall @lurie2021searching_facctrec discussing how \"some inaccurate results likely trigger further information seeking rather than belief in an inaccurate answer\" (because they \"clearly signal a failed search or an ambiguous answer\") and \"inaccuracy\" cannot be equated with \"likely to mislead\".\n\n\n- @grimmelmann2014speech\n\n\n\n[^advice]: For more on advice and search, see @grimmelmann2014speech [p. 950]:\n\n > [A good search engine advises its users, helping them to become active listeners, and enabling them to act autonomously.](/excerpts/2023/07/31/a-good-search-engine.html)\n\n\n\n\n\nBard\n[\nI want to buy a new SUV which brand is best?\n]\n\n\n\n\nScreenshot taken at: 2023-06-28 10:11:44 \n\n\n\n\n\n\n\nChatGPT.GPT-4\n[\nI want to buy a new SUV which brand is best?\n]\n\n\n\n\nScreenshot taken at: 2023-06-28 10:14:11 \n\n\n\n\n\n\n\nGoogle.SGE\n[\nI want to buy a new SUV which brand is best?\n]\n\n\n\n\nScreenshot taken at: 2023-06-28 10:14:58 \n\n\n\n\n\n\n\nAndi\n[\nI want to buy a new SUV which brand is best?\n]\n\n\n\n\nScreenshot taken at: 2023-06-28 10:15:17 \n\n\n\n\n\n\n\nBing\n[\nI want to buy a new SUV which brand is best?\n]\n\n\n\n\nScreenshot taken at: 2023-06-28 10:15:31 \n\n\n\n\n\n\n\nYou.com\n[\nI want to buy a new SUV which brand is best?\n]\n\n\n\n\nScreenshot taken at: 2023-06-28 10:12:38 \n\n\n\n\n\n\n\nYou.com.GPT-4\n[\nI want to buy a new SUV which brand is best?\n]\n\n\n\n\nScreenshot taken at: 2023-06-28 10:17:38 \n\n\n\n\n\n\n\n\nI skipped the interactive flow in Perplexity AI's Copilot, which may have changed the results.\n\n\n\n\n\nPerplexity AI.Copilot\n[\nI want to buy a new SUV which brand is best?\n]\n\n\n\n\nScreenshot taken at: 2023-06-28 14:53:18 \n\n", "snippet": "\n", "url": "/2023/06/28/i-want-to-buy-a-new-suv-which-brand-is-best/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-06-28", "type": "posts", "title": "change notes 2023-06-28", "author": "Daniel Griffin", "date": "2023-06-28 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Learned how to add a carousel lightbox modal in Bootstrap. The interplay with `_layouts` and `_includes` in Jekyll was a bit complicated. It appeared to not work if the modal HTML was added in the post itself, so I ended up creating a new `_includes/carousels/` and then a YAML line in the post `carousel: true` and then some liquid in the `post.html` to match the post.id to a carousel HTML if `page.carousel` was `true`. In the end, the carousel and the images on the post were made from a template with input data processed by a new little Python script: `screens_to_cards.py`. (I initially tried using [Lightbox for Bootstrap 5](https://trvswgnr.github.io/bs5-lightbox/) but couldn't control the display and interactions adequately.) See finished carousel in: [\\[I want to buy a new SUV which brand is best?\\]](/2023/06/28/i-want-to-buy-a-new-suv-which-brand-is-best.html).\n- Renamed Sitemap to [Browse](/browse)\n- Some light Lighthouse auditing led to some significant refactoring:\n - converted Font Awesome icons to Bootstrap SVG \"icons\"\n - made `search-bar-links` always visible\n - removed hero elements from landing page\n - removed landing page delay on autocomplete\n - deferred some scripts\n - compression with `jekyll-gzip`", "snippet": "\n", "url": "/changes/2023/06/28/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "weblinks-2023-06-27-imagining-opengoogle", "type": "posts", "title": "imagining OpenGoogle?", "author": "Daniel Griffin", "date": "2023-06-27 02:27:51 -0700", "category": "", "tags": "[speculative-design]", "content": "\n\n\\@generativist via Twitter on Jun 26, 2023 \n \n \n\ni imagine there’s no alpha left in adding the word “open” to various names anymore, right?\n\nMy first thought in response to this was that someone should write a speculative_design on a transformation of old Google to \"OpenGoogle\".\n\n\n", "snippet": "\n", "url": "/weblinks/2023/06/27/imagining-opengoogle/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "weblinks-2023-06-27-perplexity-ads-and-suvs", "type": "posts", "title": "Perplexity, Ads, and SUVs", "author": "Daniel Griffin", "date": "2023-06-27 00:00:00 -0700", "category": "", "tags": "[ads, Perplexity-AI]", "content": "\n\nFollow-up: [\\[I want to buy a new SUV which brand is best?\\]](/2023/06/28/i-want-to-buy-a-new-suv-which-brand-is-best.html).\n\n\n\n\n\nI don't think ads[1] are necessarily wrong to have in search results (despite the misgivings in @brin1998anatomy), but people are _definitely_ not happy with how the dominant search engine has done ads.\n\n___\n\n1. relevant, clearly labelled, and fair (as in not unfair in the FTC sense)\n\n\n\n\nIt is pretty striking to me how text-heavy Perplexity AI's SERP is for this query: \"highly-rated\" x10?\n\nMy experience has generally been much better, but I'm not normally doing queries like this.\n\n\nHere's a link to the same query as that in the screenshot below (which, is likely not using their Copilot):\n\nPerplexity AI\n[\n I want to buy a new SUV which brand is best?\n\n]\n\n- note also the generated follow-on prompts under Related\n\n\n\n\n\\@jowyang\nSeven reasons why perplexity.ai is better than Google search:\n\nNo ads.\nAll the content in one place.\nNo ads.\nYou can chat with it and get additional details.\nNo ads.\nSources are provided with URLs.\nNo ads.\n\nHere's a screenshot of car reviews, as just one of infinite examples. Perplexity is focused on being the search tool in the age of AI.\nI saw a demo from \\@AravSrinivas at the Synthedia conference hosted by \\@bretkinsella. I'll have closing remarks.\n\nOn Twitter Jun 27, 2023\n\n", "snippet": "\n", "url": "/weblinks/2023/06/27/perplexity-ads-and-sUVs/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-06-27", "type": "posts", "title": "change notes 2023-06-27", "author": "Daniel Griffin", "date": "2023-06-27 00:00:00 -0700", "category": "", "tags": "[]", "content": "- removed authorship and location data from page_header\n- added [Shared weblinks](/weblinks) category page, template, and utility script.\n- converted change notes from a single file to post-style updates, compiled in [Change notes](/changes)", "snippet": "\n", "url": "/changes/2023/06/27/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-06-26", "type": "posts", "title": "change notes 2023-06-26", "author": "Daniel Griffin", "date": "2023-06-26 00:00:00 -0700", "category": "", "tags": "[Perplexity-AI]", "content": "In order to explore search interfaces and generative search experiences (by playing with the underlying technologies and interactions), I developed a new 'search-centric' format and functionality for my website.\n\nThis is actively being developed. Neither a designer nor developer, I am not presenting these search experiences as 'the answer', but using them to think & write with.\n\n- Made the search bar the main focus on the landing page and in a revised header.s\n - Removed nav-bar and left-sidebar.\n- Added search functionality built around Lunr.js.\n - Added search-links across the top of the search-bar\n - Added search/about page to discuss how the search tool is made.\n - Added search/guide page.\n - Added sitemap page.\n - Added feedback page.\n - atop search results:\n - Added simplistic facet counts & links to reformulation\n - Added count of search results (with link to comment re \"Exactly [#] results in search/about that is critical of Google's deception/misinformation re the same).\n - in search results:\n - Added tags.\n - Added both hand-curated and generated snippets (currently w/ ), and snippet labels (with contextual link to explanation)\n - Added search-suggestions.\n - including both hand-curated and dynamic suggestions (with labels).\n - Added \"!bangs\" (functioning also akin to go/links).\n - Added exact phrase matching (not supported by base Lunr).\n- Added special tagged posts: changes, updates, tweets. These posts do not appear in the posts list, but in corresponding pages.\n - Slowly converting annotated tweets to posts (backdated to the date of the tweet(s), annotations will be identified by date).\n- Added tag pages (and simplified presentation of tag links atop pages and at bottom of search results)\n- Added pposts page (listing \"possible posts, potential posts, plausible posts, planned posts, partial posts, or perfect posts?\" via a Jekyll collection)\n - key initial planned posts: a series on generative search.\n- Added background image to all pages (w/ alt and caption).\n- A note on a citation technique: To include a pandoc citation in a page's bibliography without in-text citation with `jekyll-pandoc` (the standard `nocite` in the YAML appears not to work) you can just add the citations to a div and add a `style=\"display: none;\"`. Example in the [postcolonial localization in search](/2019/08/25/postcolonial-localization-in-search.html) post.\n- Added website header to the diss pages for consistency.\n- Added title and subtitle to landing page.\n- Added [hire-me] page (includes link to a recent LinkedIn post describing some of what I'm looking for, resume, and CV).\n- Added differentiation in about pages: about (about me), site, and search/about. In the latter two, in addition to text description, I also link to both pre-processing and online scripts in /scripts and /js. site now includes [a tool heading](/site/#tools) that discusses the tools I'm using: For this last round of changes I've explored several tools, including OpenAI's ChatGPT and APIs, Google's Bard, SGE, and Code Tips, Perplexity AI, You.com's YouChat, Phind, GitHub Copilot in VS Code, and Tabnine in Sublime Text. I also explored using search on TikTok to quickly refresh my understanding of options with CSS.\n- Heavily refactored with Bootstrap.\n- 2023-06-26 16:51:29 Removed the background image due to difficulties making it responsive.", "snippet": "\n", "url": "/changes/2023/06/26/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2023-06-05-the-end-of-computer-programming-as-we-know-it-again", "type": "posts", "title": "The End of Computer Programming as We Know It - Again", "author": "Daniel Griffin", "date": "2023-06-05 00:00:00 -0700", "category": "", "tags": "[CGT, diss]", "content": "One thought re @manjoo2023end—[It’s the End of Computer Programming as We Know It. (And I Feel Fine.)](https://www.nytimes.com/2023/06/02/opinion/ai-coding.html):\n\nI cite to @ensmenger2010computer's history of computing and technical expertise in my [Appendix III. Code Generation Tools and Search](../diss/appendix_cgt_and_search) musings on the potential impact of these new technologies, and then write (p. 133):\n\n> The programming languages used by my research participants are far simpler to use and understand than even the “automatic programming” languages of the past, like FORTRAN and COBOL. The hard problems remain, how to use a tool to do something you or someone else wants.\n\n\nRelatedly: @arawjo2023history_twitter, [on Twitter](https://twitter.com/ianarawjo/status/1665515419895988226): \n\n> The history of programming is the history of reducing the effort required to communicate a design to a machine.\n\n", "snippet": "\n", "url": "/2023/06/05/the-end-of-computer-programming-as-we-know-it-again/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-06-05", "type": "posts", "title": "change notes 2023-06-05", "author": "Daniel Griffin", "date": "2023-06-05 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Added a [search/transparency](search/transparency) page to share briefly re 'How does search work on this website?'\n - Rearranged some files to make [scripts](/scripts) more accessible.\n - Added: `timestamp_of_lunr_index`\n - Added: `list_of_lunr_noindex`\n- Added a summary to my [diss/](/diss/) page.\n- Added two posts:\n - [activities in dialogue and success in software development](/2023/06/05/activities-in-dialogue-and-success-in-software-development.html)\n - [The End of Computer Programming as We Know It - Again](/2023/06/05/the-end-of-computer-programming-as-we-know-it-again.html)\n- Added a script: `newpost.py`", "snippet": "\n", "url": "/changes/2023/06/05/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2023-06-05-activities-in-dialogue-and-success-in-software-development", "type": "posts", "title": "activities in dialogue and success in software development", "author": "Daniel Griffin", "date": "2023-06-05 00:00:00 -0700", "category": "", "tags": "[CGT, diss]", "content": "I'm flagging two excerpts from a recent Google Research blogpost [@maniatis2023large]: [Large sequence models for software development activities](https://ai.googleblog.com/2023/05/large-sequence-models-for-software.html) \n\n## Software engineering isn’t an isolated process\n\nThey rightfully note some of the sociotechnical interactions already taking place in engineering work:\n\n> Software isn’t created in one dramatic step. It improves bit by bit, one little step at a time — editing, running unit tests, fixing build errors, addressing code reviews, editing some more, appeasing linters, and fixing more errors — until finally it becomes good enough to merge into a code repository. Software engineering isn’t an isolated process, but a dialogue among human developers, code reviewers, bug reporters, software architects and tools, such as compilers, unit tests, linters and static analyzers.\n\n## the ultimate test of usefulness\n\nI struggled some with defining success—of web searching—in my dissertation, this seems close to what I went with[^1]:\n\n> We see this as the ultimate test of usefulness: do professional developers, who are often experts on the code base and who have carefully honed workflows, leverage the tools to improve their productivity?\n\n\n[^1]: @griffin2022situating [p. 1]:\n\n > I seek to learn from successful searchers how they make search work. So, I look to data engineers. I closely examine the use of web search in the work practices of data engineering, a highly technical, competitive, and fast changing area. Data engineers are heavily reliant on general-purpose web search. They use it all the time and it seems to work for them. The practical success I report is not determined by some solid ‘gold standard’ metrics or objective standpoint, but by how they have embraced web search and present it as useful and more importantly essential to their work. It is success for their purposes: in gradations, located in practice, and relative to alternatives.\n\n\nHT: @khlaaf2023lot, [on Twitter](https://twitter.com/HeidyKhlaaf/status/1665675004686524417)): \n\n> A lot of ML-based code synthesis products fail to understand complexities of SW development pipeline, but I really enjoyed reading this well-informed post on integrating ML into it. Not surprised to find many have a code analysis and repair background!\n", "snippet": "\n", "url": "/2023/06/05/activities-in-dialogue-and-success-in-software-development/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-06-03", "type": "posts", "title": "change notes 2023-06-03", "author": "Daniel Griffin", "date": "2023-06-03 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Various formatting repairs for the HTML rendering of chapters in [/diss](/diss).\n- Removed malfunctioning JavaScript to just use an `#end` anchor in the footer to repair the `scroll-to-bottom` arrow in the `nav-bar`.\n- Introduced a search feature, with Lunr.js, initially building off CloudCannon's [tutorial](https://learn.cloudcannon.com/jekyll/jekyll-search-using-lunr-js/) and old git [commit](https://github.com/CloudCannon/bakery-store-jekyll-template/commit/71614d58907e17df0241944297207ad24391be20). I [updated the code for the new version of Lunr.js](https://lunrjs.com/guides/upgrading.html) and [setup a pre-built index](https://lunrjs.com/guides/index_prebuilding.html) because the client side performance significantly deteriorated once I added my diss chapters.", "snippet": "\n", "url": "/changes/2023/06/03/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-06-02", "type": "posts", "title": "change notes 2023-06-02", "author": "Daniel Griffin", "date": "2023-06-02 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Adapted my dissertation to HTML, splitting into chapters, and loaded to [/diss](/diss)\n - Added text noting availability of my dissertation in HTML on [/index](/index).\n - Various styling changes to support the above.", "snippet": "\n", "url": "/changes/2023/06/02/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-05-31", "type": "posts", "title": "change notes 2023-05-31", "author": "Daniel Griffin", "date": "2023-05-31 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Fixed a bug in the `circleborder` link in `left-sidebar` that created a phantom rectangle.\n- Removed some solid background colors to move towards a more line-based design.\n- Removed the `tagline` for now to avoid empty language.\n- Adjusted the language in the `special-box note` re looking for work and the main text in [index](/) to improve clarity.\n- Changed the background color of `tags` from `#f47174` to `#ffead5` for improved readability, added `white-space:nowrap;` to keep the tags from being split by newlines.\n- Added a `paper-image` of griffin2022search_accepted in [Updates!](/index.html#updates).", "snippet": "\n", "url": "/changes/2023/05/31/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-05-26", "type": "posts", "title": "change notes 2023-05-26", "author": "Daniel Griffin", "date": "2023-05-26 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Fixed a bug in [understanding change in web search](/courses/s2023-LB322B) that caused some of the text to overflow the page: an extra ``.", "snippet": "\n", "url": "/changes/2023/05/26/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-05-25", "type": "posts", "title": "change notes 2023-05-25", "author": "Daniel Griffin", "date": "2023-05-25 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Added a page on [Courses](/courses)\n - Added a page on my recent course at Michigan State University: [understanding change in web search](/courses/s2023-LB322B) course (and a page on [the course readings](/courses/s2023-LB322B.readings)).\n - Added to [Updates!](/index.html#updates)\n- Uploaded my latest [CV](/cv).\n- Added `special-box back-to` to pages under courses, publications, and posts.\n- Added `special-box update` styling to updates in [Updates!](/index.html#updates)\n- Added `paper_image`s to [Updates!](/index.html#updates)", "snippet": "\n", "url": "/changes/2023/05/25/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2023-05-24-still-searching-for-gorillas", "type": "posts", "title": "still searching for gorillas", "author": "Daniel Griffin", "date": "2023-05-24 00:00:00 -0700", "category": "", "tags": "[repairing-searching]", "content": "An article yesterday in the New York Times, from Nico Grant and Kashmir Hill, following up on the racist image labeling in Google's Photos app from 2015 (mentioned in class): [Google’s Photo App Still Can’t Find Gorillas. And Neither Can Apple’s.](https://www.nytimes.com/2023/05/22/technology/ai-photo-labels-google-apple.html) [-@grant2023google]\n\n**Original case:** Jacky Alciné's tweet complaints about Google Photos labeling photos of him and his friend as containing 'gorillas' (original tweets have since been deleted; but widely reported, of public interest, and available on Archive.org). Google's response was to disallow such labeling/searching in the tool.\n\nThe article recounts an evaluation of Google Photos, Apple Photos, photo search in Microsoft OneDrive, and Amazon Photos for searches for [gorillas], and other primates ([baboons], [chimpanzees], [orangutans], [monkeys], [lemurs]) and other animals more broadly, inc. [cats] and [kangaroos]).[^singular] The key claim is that while Google and Apple tools work well for many animals, they do not return any images for primates (except for lemurs). (This is distinct also from the performance on, say, Google Images, for similar searches.)\n\n[^singular]: N.b. They do not indicate whether they also searched the singular form(s). This is probably not of importance, but something I always like to note.\n\n\n**(1)** \n\n> Consumers may not need to frequently perform such a search\n\n- Questions:\n - Why limit the concern to \"consumers\"[^consumers]? Students? Researchers?[^speciality_tools]\n - \"may not\"? How might we learn this?\n - Why limit the concern to \"need\"?\n\n[^speciality_tools]: Perhaps there are specialty tools available to conservationists and others?\n\n**(2)** Grant & Hill appear to have interviewed Alciné (\"dismayed to learn that Google has still not fully solved the problem and said society puts too much trust in technology\"). Did they also reach out to Yonatan Zunger (now no longer at Google), given his—widely reported—prominent role in the initial response from Google?\n\n[^consumers]: This reminds me of the language of ['consumer search'](/2023/05/23/consumer-search.html) that Neeva used when reporting their recent pivot.\n\n**(3)** Grant & Hill quote a Google spokesperson by name and other company responses. Consider the _function_ of those comments, recalling perhaps the discussion of the Google Search Liaison in @griffin2022search.\n\n**(4)** Why did Google fail earlier?\n\n> In the gorilla incident, two former Google employees who worked on this technology said **the problem** was that the company had not put enough photos of Black people in the image collection that it used to train its A.I. system. [emphasis added]\n\n- Compare that to the analysis from @noble2018algorithms (of different but related search failures) of poor *engineering* training and racist exclusion.\n\n**(5)** \n\n> The Fix?\n> \n> While Google worked behind the scenes to improve the technology, it never allowed users to judge those efforts.\n\n- Another interesting (and somewhat vague) line, highlighting for me the missing discussion of whether aiming for inclusion (here or in general) might 'improve' the technology.\n\n\n\n\n**(6)** \n\n> the poisoned needle in a haystack\n\n- Note how this language (quoted from M. Mitchell) may function rhetorically quite similarly to \"data void\" or \"evil unicorn\", though situated differently here.\n\n### See also\n\n#### Further discussion of the case\n\n- @seaver2018should\n- @shen2021everyday\n\n#### Related\n\n- @noble2018algorithms [p. 82][^mislabel]: \"What we know about Google’s responses to racial stereotyping in its products is that it typically denies responsibility or intent to harm, but then it is able to “tweak” or “fix” these aberrations or “glitches” in its systems.\"\n- @sundin2021relevance [p. 4]: \"Throughout the years, Google has had to deal with various instances in which its search results were criticized for advancing racist, sexist, anti-Semitic, or otherwise offensive values. The impression is that Google employs a haphazard whack-a-mole approach. It only reacts in response to media reports and only if these are publicized widely enough to constitute a problem for their brand. The specific issue is addressed—but only after a delay where the problem is explained away and blamed on users.\" [internal endnote omitted]\n- @raji2022fallacy\n\n\n#### Earlier reporting\n\n- @machkovech2015google\n- @simonite2018gorillas (cited to w/in, re Google Lens[^glens] also failing in such searches)\n\n[^glens]: Related post: [more than a party trick?](/2023/05/24/more-than-a-party-trick.html)\n\n#### Comments elsewhere\n\n- On Twitter:\n - [Nico Grant](https://twitter.com/nicoagrant/status/1660695821539594240) (author): \"raises broader questions about the underlying AI, computer vision, which has permeated throughout our world\"\n - [Kashmir Hill](https://twitter.com/kashhill/status/1660611707771781120) (author): \"raises questions about other unfixed, or unfixable, flaws lurking in services that rely on AI\"\n - [J. Khadijah Abdurahman](https://twitter.com/UpFromTheCracks/status/1661053012792557576): \"google search and the apps reliant on its api, collective inability to remedy the *canonical* example of digital information science ecosystems being structured by antiblackness, except via a manual override indicates there’s larger socio-technical issue at play\"\n - [M. Mitchell](https://twitter.com/mmitchell_ai/status/1660726109582020609): \"I was a 'proponent' of removing the 'gorilla' label for photo tagging.\"\n\n[^mislabel]: Noble includes a screenshot from Alciné's tweet (p. 7), but incorrectly identifies it as a Google Images search result. The larger analysis from Noble is very applicable to this situation.)", "snippet": "\n", "url": "/2023/05/24/still-searching-for-gorillas/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2023-05-24-more-than-a-party-trick", "type": "posts", "title": "more than a party trick?", "author": "Daniel Griffin", "date": "2023-05-24 00:00:00 -0700", "category": "", "tags": "[]", "content": "## \"My favorite party trick?\"\n\n[A tweet yesterday from Prabhakar Raghavan](https://twitter.com/WittedNote/status/1661074512472047616), [\"a Senior Vice President at Google\"](https://research.google/people/PrabhakarRaghavan/):\n\n> My favorite party trick? Showing someone Lens who has never used it before. It usually goes like… 👀🔍🤯🤩😍 Lens is so helpful that people now use it for 12B visual searches a month — a 4x increase in just 2 years\n\n- How do we know that it is \"so helpful\"?\n - Do the metrics suggest that?\n- What would \"so helpful\" mean?\n- What constitutes a search?\n - Does this include \"reformulated searches\"—alternate angles? better focus? a live camera scanning across a piece of printed text?\n- How should we contextualize 12 billion searches a month?\n\nLily Ray, [\"a prominent SEO (search engine optimization) professional\"](https://lilyray.nyc/professional-seo-services/), comments on a surprise that hints at the tool—as situated—not being as helpful as it could be?:\n\n> Surprised more people don’t search with Lens yet but I think most people still don’t know how/where to access it. Especially iPhone users\n\nRay has tweeted something like this before, [here in December](https://twitter.com/lilyraynyc/status/1602746672366243840)[^be_the_biggest_transformation]:\n\n> I strongly believe Google Lens will be the biggest transformation we see in how people use search in the next 2-3 years. \n> \n> That is, assuming Google figures out how to get the rest of the non-nerd world to know it exists 😅\n\n\nTo the recent comment from Ray, the Google Search Liaison (GSL; for an analysis of the function of this role, see @griffin2022search) engaged, [in reply](https://twitter.com/searchliaison/status/1661113494060539921)[^pertinent] and [in quote-tweet, here](https://twitter.com/searchliaison/status/1661106259179741199): \n\n> How have you used Lens to find something visually?\n\nReplies suggested:\n\n- translation\n- identifying clothing in public\n- identifying birds, plants, bugs\n- learn about a panting\n\n\n[^pertinent]: Pertinent to Ray's comments, the link shared by the GSL—[lens.google.com](https://lens.google/)—appears to add friction by encouraging mobile app downloads and does not give direct access to the browser-based interface\n\n If you scroll down you will see small text on the lower left: \"\\*Lens is available in Google Images\".\n\n \n Image 1. Screenshot from the Google Lens page. In small font below a depiction of an image search on a laptop: '*Lens is available in Google Images'\n \n \n\n Lens is available through the browser via [images.google.com](https://images.google.com/) (clicking the camera icon will present an interface for inputting an image to \"Search any image with Google Lens\"). See also [Google Search Help > Search with an image on Google](https://support.google.com/websearch/answer/1325808).\n\n\n## More than a party trick\n\nI have shared about Google Lens as a sort of party trick, but the greatest benefit for me has been how its unclear potential is a great opportunity to then raise questions about what other modalities or purposes of searching we might develop (with of course, risks and benefits to consider).\n\nHere, from a footnote in my dissertation [@griffin2022situating]:\n\n> While search engines are designed around digitized text, there are other modalities available for search, all materially bound. Voice-based search transformed audio into text. Some people may recognize digital images as search seeds, with reverse image search. Some search engines and other search tools also support searching from a photograph. There is also some support for searching with music or even humming. @chen2022bmsi demonstrate search queries from electroencephalogram (EEG) signals. As web search expands in these directions it may be necessary pursue new approaches to showing which pictures, sounds, smells, or thoughts might effectively link questions and answers.\n\n[^be_the_biggest_transformation]: While search generation has been the excitement of late, I don't think it unreasonable to imagine that searching from images may have a significant transformative effect in the coming years. You can find additional tweets from Ray via Twitter[from:lilyraynyc (\"google lens\" OR multisearch)] _(N.b. Twitter search functionality increasingly demands the user to manually click or press enter after following search links.)_\n\n\n\n\nRelated post: [still searching for gorillas](/2023/05/24/still-searching-for-gorillas.html)\n\nSearches:\n\n- Wikipedia[\"Google Lens\"]\n- Reddit[\"Google Lens\"]\n- Twitter[\"Google Lens\"]\n- SemanticScholar[\"Google Lens\"]\n\n\nCompare and contrast with:\n\n- [iNaturalist](https://www.inaturalist.org/)\n- [Reddit's r/whatisthisthing](https://www.reddit.com/r/whatisthisthing/), etc.\n- reverse image search\n- [Wikipdia: Jelly (app)](https://en.wikipedia.org/wiki/Jelly_(app))\n- [Google Images: About this image](https://blog.google/products/search/about-this-image-google-search/); cc: [Mike Caulfield](https://twitter.com/holden/status/1656515306448388100)\n", "snippet": "\n", "url": "/2023/05/24/more-than-a-party-trick/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2023-05-24-consumer-search", "type": "posts", "title": "consumer search?", "author": "Daniel Griffin", "date": "2023-05-24 00:00:00 -0700", "category": "", "tags": "[repairing-searching]", "content": "Neeva announced last weekend that it is pivoting away from \"consumer search\".\n\nNeeva, [on Twitter](https://twitter.com/Neeva/status/1659973937982496770):\n\n> While **consumer** search is ending, the search and LLM journey continues in the enterprise space.\n\nSridhar Ramaswamy (co-founder), [on Twitter](https://twitter.com/RamaswmySridhar/status/1659980249734713344):\n\n> We are going to be shutting down the **consumer** product and focusing on enterprise use cases of LLMs and search.\n\nSridhar Ramaswamy & Vivek Raghunathan (co-founders), [on Neeva's Blog](https://neeva.com/blog/may-announcement):\n\n> ... there is no longer a path towards creating a sustainable business in **consumer** search. As a result, over the next few weeks, we will be shutting down neeva.com and our **consumer** search product, and shifting to a new area of focus.\n\nIn an early response I wrote, [on Twitter](https://twitter.com/danielsgriffin/status/1660074619985100800):\n\n> “Consumer search” is an interesting framing. I often used the phrase “general-purpose web search”. Enterprise search is often framed as *intranet* search (and distinct from site search or enterprise-serving web search, right?). Might they continue to crawl widely?\n\n\nHave they long used this phrase? It is so much more consumption-oriented than their branding. Perhaps they are positioning this in comparison to \"enterprise search\", but the naming still strikes me. It is often unmarked, just \"search\" or \"search engine\", though sometimes \"web\" or \"internet\" is pre-pended. There are other names:\n\n- *commercial*:\n - commercial search engines [@brin1998anatomy]\n - commercial search / non-commercial [@noble2018algorithms]\n- *Search engines like Google* [@diaz2008through]\n- *Internet*/*Web* [@vancouvering2008history]\n- TK", "snippet": "\n", "url": "/2023/05/24/consumer-search/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-05-24", "type": "posts", "title": "change notes 2023-05-24", "author": "Daniel Griffin", "date": "2023-05-24 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Added top-level link in left-sidebar to \"[Repairing Searching](/rs)\", to follow a tag for posts related to the class I taught last semester.\n- Added three posts:\n - [still searching for gorillas (or not?)](/2023/05/24/still-searching-for-gorillas.html)\n - [What does 'consumer search' mean?](/2023/05/24/consumer-search.html)\n - [more than a party trick?](/2023/05/24/more-than-a-party-trick.html)\n- Added tags for posts, so far only: repairing-searching.\n- Modified `tagline`, from \"I work to defamiliarize and reimagine web search.\" to \"I work to defamiliarize and reimagine search engines and practices towards [repairing searching](/rs).\"\n- Modified the `meta` spans at the top of posts to draw from YAML headmatter, added author, tags, and switched to ordinalized date.\n - Updated posts YAML for this.\n- Added uses of `special-box note` to \"Posts\", \"Publications\", and \"Repairing Searching\"\n- Added link-citations, clunkily, with an `add_link-citations.py` script (I couldn't get the Pandoc `link-citations` functionality working with [jekyll-pandoc](https://rubygems.org/gems/jekyll-pandoc/versions/2.0.1))\n- Updated [my funding disclosure](/disclosures) re my last semester of graduate school.\n- Added `screenshot` and `search-query` formatting.\n- Changed the case of \"understanding change in web search\" to title case: \"[Understanding Change in Web Search](/courses/s2023-LB322B)\"", "snippet": "\n", "url": "/changes/2023/05/24/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-05-22", "type": "posts", "title": "change notes 2023-05-22", "author": "Daniel Griffin", "date": "2023-05-22 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Formatting updates to improve performance on mobile (largely shifting some widths to using [Em/em](https://en.wikipedia.org/wiki/Em_(typography)) and adding dynamic changes with `@media screen and (min-width: 500px)` in the CSS). Also learned how to 'Toggle device toolbar' in Chrome DevTools.\n- Added [a `update_changes_link.py` script](https://gist.github.com/danielsgriffin/af815a03a4d1acdf3788d2d78de06558) to automatically updated the changes link in my footer.", "snippet": "\n", "url": "/changes/2023/05/22/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2023-05-19-limited-to-retrieving-pre-existing-webpages", "type": "posts", "title": "conventional search engines are limited to retrieving pre-existing webpages?", "author": "Daniel Griffin", "date": "2023-05-19 00:00:00 -0700", "category": "", "tags": "[]", "content": "\n\nThis is a short post about Liu et al.'s \"Evaluating Verifiability in Generative Search Engines\" (2023).\n https://doi.org/10.48550/arXiv.2304.09848\n [liu2023evaluating].\n\n\n\nIs it true that \"conventional search engines are limited to retrieving pre-existing webpages\"[^1]?\n\nWhile this is a minor comment in a much larger paper, we can benefit from discussing conventional search engines—these massive sociotechnical systems—as extending far beyond a single moment in time and, explicitly, as incorporating the actions of others. (This is particularly so as we describe these systems alongside appraisals of alternative approaches to web searching.) The substance of responses to information needs by conventional search engines, like Google, are constantly in flux, both internally, and in being reshaped by external participants motivated to be found (and so responding to various incentives).\n\nSaying that \"conventional search engines are limited to retrieving pre-existing webpages\" dismisses the key ways that search engines shape the existence of those web pages (and new ones) in the first place. Since Introna and Nissenbaum's early critique [-@introna2000shaping], we've seen that the various indexing and ranking choices (including moderation), page design choices, and articulations from the major search engines, along with the development of their business models, shape the searching practices of searches, the behavior of advertisers, the tactics and strategies of search engine optimizers, and the individual and market-driven choices underlying the production and availability of content and experiences on the web. Ignoring the temporal arrangements in the web search ecosystem may lead us to both (1) ignore the vast role that the dominant conventional search engine plays in the webpages that exist at any particular point in time, _the shape of the web_, and (2) develop a 'blinkered' perspective on the choices and actions of other participants ready (or not) to perform for (or against) these new approaches to search.\n\n\nThere are also direct elements provided on the search engine results pages (SERPs) that are not limited to the retrieval of \"pre-existing webpages\". Conventional search engines have long presented features on their SERPs that are extracted and aggregated from those pre-existing webpages or databases not available on the web (in the Knowledge Panels, for instance, and other \"rich features\" like image galleries). Google's \"Featured snippets\" also selectively extract from existing websites (and clearly motivated the creation of content aimed to be found as such) have themselves featured information that has been identified numerous times as being misleading.[^raji2022]\n\n[^raji2022]: See re seizures [@griffin2022search; @raji2022fallacy], re voting information [@lurie2021searching_facctrec], etc.\n\n\nGoogle has additionally, since as early as 2012[^2012], dynamically edited/generated (Google now says: \"automatically determine[d]\") both the \"Text link\" (title of a search result) and the \"snippet\" (or page summary)[^2]. This practice has not always been appreciated by the SEO community (see multiple responses from Google[^sullivan2021], leading to the feedback (on the generated titles) including comments saying in some situations it \"[seems to be misleading for the user](https://support.google.com/webmasters/thread/122879386?hl=en&msgid=125245100)\", and calling it: \n\n- \"[incorrect and misrepresenting](https://support.google.com/webmasters/thread/122879386?hl=en&msgid=122888634)\"\n- \"[entirely misleading](https://support.google.com/webmasters/thread/122879386?hl=en&msgid=123218764)\"\n- \"[very misleading](https://support.google.com/webmasters/thread/122879386?hl=en&msgid=123689358)\"\n- \"[completely wrong](https://support.google.com/webmasters/thread/122879386?hl=en&msgid=134024128)\".\n\nAs well as issuing complaints like: \"[what they are changing is information supplied by others, that represents others, that may be damaging the income of others, and/or potentially putting others at risk (regulatory requirements etc.).](https://twitter.com/darth_na/status/1431977361742913542)\"\n\nAnother feature of conventional SERPs are suggested searches, whether in the autocomplete dropdown while typing a query, in suggesting a revision for an alternate spelling, to reformulate the query to put quotation marks around a particular word, or in various elements interspersed on the search page. Google currently provides a \"People also ask\" or \"Others want to know\" section and a \"Related searches\" section.\n\nIn additional to generating rich features and the text descriptions of the web pages, conventional search engines respond to queries by providing a ranking (itself treated as information) of selected search results that shape the perceptions of the results by the different searchers and dynamically insert sponsored links (with text links and snippets and only a small text label it indicate it is paid for). All of this is generated on a SERP with particular fonts, colors, sizing, and placement. These various aspects of the SERP are together factors in whether the searchers are satisfied, left wanting, or are effectively misled.[^mislead]\n\n\n[^mislead]: A key question, though not the only one, when considering seemingly false or unfounded information on a SERP is whether it is \"likely to mislead\". Such information \"may not be misleading searchers of the results of search as some inaccurate results likely trigger further information seeking rather than belief in an inaccurate answer\" [@lurie2021searching_facctrec]. That said, time costs are still relevant.\n\n\n[^1]: @liu2023evaluating's opening line: \"Generative search engines fulfill user information needs by directly generating responses to input queries, along with in-line citations.\", footnotes to: \"In contrast, conventional search engines are limited to retrieving pre-existing webpages.\" (This is all I've read of the paper so far, beyond the abstract.)\n\n[^2]: \"[A]utomatically determine\" language is found in @google_titlelink\nand @google_snippet. \"Text link\" and \"snippet\" are preferred terms from @google_visual.\n\n[^sullivan2021]: [@sullivan2021update; @sullivan2021more]\n\n[^2012]: @far2012better: \"we have algorithms that generate alternative titles to make it easier for our users to recognize relevant pages\"", "snippet": "\n", "url": "/2023/05/19/limited-to-retrieving-pre-existing-webpages/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2023-05-19", "type": "posts", "title": "change notes 2023-05-19", "author": "Daniel Griffin", "date": "2023-05-19 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Updated my `special-box note` (at the top of my homepage) about actively seeking research opportunities in both industry and academia.\n- Various formatting updates (distributed links from `footer` to `left-sidebar` and [a `contact-me` section](about#contact-me) in [About](/about/); developed `right-sidebar` with floating header links (w/ [jekyll-toc](https://github.com/allejo/jekyll-toc)); and automatic bibliographies (w/ [jekyll-pandoc](https://rubygems.org/gems/jekyll-pandoc/versions/2.0.1) and [apa.csl](https://github.com/citation-style-language/styles/blob/master/apa.csl))).\n- Added redirect to [CV](\\cv) (w/ [jekyll-redirect-from](https://github.com/jekyll/jekyll-redirect-from))\n- Added [my commencement speech](https://medium.com/berkeleyischool/graduate-speaker-likens-ph-d-to-a-trail-ultramarathon-691ac42472a4) to [Updates!](/index.html#updates)\n- Added a post: [conventional search engines are limited to retrieving pre-existing webpages?](2023/05/19/limited-to-retrieving-pre-existing-webpages.html)", "snippet": "\n", "url": "/changes/2023/05/19/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "updates-2023-05-15-commencement", "type": "posts", "title": "Commencement", "author": "Daniel Griffin", "date": "2023-05-15 00:00:00 -0700", "category": "", "tags": "[running]", "content": "\n \n \n \n {% assign d = page.date | date: \"%-d\" %}\n {{ page.date | date: \"%B\" }} {% case d %}{% when '1' or '21' or '31' %}{{ d }}st{% when '2' or '22' %}{{ d }}nd{% when '3' or '23' %}{{ d }}rd{% else %}{{ d }}th{% endcase %}, {{ page.date | date: \"%Y\" }}: {{ page.title }}\n \n {% assign content = page.snippet | strip %}\n {% if content != '' %}\n {{ content | markdownify }}\n {% endif %}\n \n \n \n {% if page.snippet_image_class contains 'paper_image' %}\n \n {% endif %}\n {% if page.snippet_image_class contains 'circle' %}\n \n {% endif %}\n \n \n", "snippet": "

    🎓 I was the Ph.D. speaker at the I School commencement, discussing how doing a Ph.D. is less like a marathon than a trail ultramarathon. See the text of my speech here.

    \n", "url": "/updates/2023/05/15/commencement/", "snippet_image": "commencement-speech.png", "snippet_image_alt": "Daniel Griffin speaking at I School Commencement, May 19th 2022. Photo credit: UC Berkeley School of Information", "snippet_image_class": "circle" } , { "id": "updates-2023-05-09-finished-course-at-msu", "type": "posts", "title": "Finished course at Michigan State University", "author": "Daniel Griffin", "date": "2023-05-09 00:00:00 -0700", "category": "", "tags": "[]", "content": "\n \n \n \n {% assign d = page.date | date: \"%-d\" %}\n {{ page.date | date: \"%B\" }} {% case d %}{% when '1' or '21' or '31' %}{{ d }}st{% when '2' or '22' %}{{ d }}nd{% when '3' or '23' %}{{ d }}rd{% else %}{{ d }}th{% endcase %}, {{ page.date | date: \"%Y\" }}: {{ page.title }}\n \n {% assign content = page.snippet | strip %}\n {% if content != '' %}\n {{ content | markdownify }}\n {% endif %}\n \n \n \n {% if page.snippet_image_class contains 'paper_image' %}\n \n {% endif %}\n {% if page.snippet_image_class contains 'circle' %}\n \n {% endif %}\n \n \n", "snippet": "

    I wrapped up teaching a spring course at Michigan State University that I designed: Understanding Change in Web Search. I’m sharing reflections and follow-ups through posts tagged repairing-searching.

    \n", "url": "/updates/2023/05/09/finished-course-at-msu/", "snippet_image": "msu_logo.png", "snippet_image_alt": "MSU Logo - wordmark/helmet combination stacked", "snippet_image_class": "circle" } , { "id": "changes-2023-01-06", "type": "posts", "title": "change notes 2023-01-06", "author": "Daniel Griffin", "date": "2023-01-06 00:00:00 -0800", "category": "", "tags": "[]", "content": "- Added publication: [griffin2022situating](/assets/griffin2022situating.pdf)\n- Added publication to [Updates!](/index.html#updates)\n- Added a shortcut page: [griffin2022search](shortcuts/griffin2022situating)\n- Added publication (dissertation) and completion of Ph.D. to: [CV](/assets/Daniel_Griffin_CV_2023-01-05.pdf)\n- Updated [About](/about/) page re completion of Ph.D.", "snippet": "\n", "url": "/changes/2023/01/06/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "updates-2022-12-16-filled-my-dissertation", "type": "posts", "title": "Filed my dissertation", "author": "Daniel Griffin", "date": "2022-12-16 00:00:00 -0800", "category": "", "tags": "[]", "content": "\n \n \n \n {% assign d = page.date | date: \"%-d\" %}\n {{ page.date | date: \"%B\" }} {% case d %}{% when '1' or '21' or '31' %}{{ d }}st{% when '2' or '22' %}{{ d }}nd{% when '3' or '23' %}{{ d }}rd{% else %}{{ d }}th{% endcase %}, {{ page.date | date: \"%Y\" }}: {{ page.title }}\n \n {% assign content = page.snippet | strip %}\n {% if content != '' %}\n {{ content | markdownify }}\n {% endif %}\n \n \n \n {% if page.snippet_image_class contains 'paper_image' %}\n \n {% endif %}\n {% if page.snippet_image_class contains 'circle' %}\n \n {% endif %}\n \n \n", "snippet": "

    📁 Filed my dissertation: Griffin D. (2022) Situating Web Searching in Data Engineering: Admissions, Extensions, Repairs, and Ownership. Ph.D. dissertation. Advisors: Deirdre K. Mulligan and Steven Weber. University of California, Berkeley. 2022. [griffin2022situating]

    \n", "url": "/updates/2022/12/16/filled-my-dissertation/", "snippet_image": "griffin2022situating.png", "snippet_image_alt": "image of griffin2022situating paper", "snippet_image_class": "paper_image" } , { "id": "updates-2022-11-25-griffin2022search-published", "type": "posts", "title": "My paper with Emma Lurie was published", "author": "Daniel Griffin", "date": "2022-11-25 00:00:00 -0800", "category": "", "tags": "[]", "content": "\n \n \n \n {% assign d = page.date | date: \"%-d\" %}\n {{ page.date | date: \"%B\" }} {% case d %}{% when '1' or '21' or '31' %}{{ d }}st{% when '2' or '22' %}{{ d }}nd{% when '3' or '23' %}{{ d }}rd{% else %}{{ d }}th{% endcase %}, {{ page.date | date: \"%Y\" }}: {{ page.title }}\n \n {% assign content = page.snippet | strip %}\n {% if content != '' %}\n {{ content | markdownify }}\n {% endif %}\n \n \n \n {% if page.snippet_image_class contains 'paper_image' %}\n \n {% endif %}\n {% if page.snippet_image_class contains 'circle' %}\n \n {% endif %}\n \n \n", "snippet": "

    📄 My paper with Emma Lurie (equally co-authored) was published: Griffin, D., & Lurie, E. (2022). Search quality complaints and imaginary repair: Control in articulations of Google Search. New Media & Society, Ahead of Print. https://doi.org/10.1177/14614448221136505 [griffin2022search]

    \n", "url": "/updates/2022/11/25/griffin2022search-published/", "snippet_image": "griffin2022search.png", "snippet_image_alt": "image of griffin2022search paper", "snippet_image_class": "paper_image" } , { "id": "changes-2022-11-25", "type": "posts", "title": "change notes 2022-11-25", "author": "Daniel Griffin", "date": "2022-11-25 00:00:00 -0800", "category": "", "tags": "[]", "content": "- Added publication: [griffin2022search](shortcuts/griffin2022search)\n- Added publication to [Updates!](/index.html#updates)\n- Added a shortcut page: [griffin2022search](shortcuts/griffin2022search)\n- Added publication to: [CV](/assets/Daniel_Griffin_CV_2022-11-25.pdf)", "snippet": "\n", "url": "/changes/2022/11/25/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2022-11-11", "type": "posts", "title": "change notes 2022-11-11", "author": "Daniel Griffin", "date": "2022-11-11 00:00:00 -0800", "category": "", "tags": "[]", "content": "- Edited a post: Added [line from Sundin & Carlsson (2016)](2022/11/10/search-automation-bias.html#sundin2016outsourcing) to [search automation bias (SAB)](2022/11/10/search-automation-bias.html)", "snippet": "\n", "url": "/changes/2022/11/11/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2022-11-10-search-automation-bias", "type": "posts", "title": "search automation bias (SAB)", "author": "Daniel Griffin", "date": "2022-11-10 00:00:00 -0800", "category": "", "tags": "[automation bias]", "content": "*The below is from a short Twitter thread of mine from [`2017-05-23`](https://twitter.com/danielsgriffin/status/867181835586895872)*:\n\n> Is there a term to refer to the seeming authoritativeness of algorithmic expertise of a list of organic and inorganic search results?\n> \n> The clean aesthetic of search results that reduces the cost and shortcuts the processing requirements when reading Google answer boxes?\n> \n> Or stopping at the first result?\n> \n> Our performed unwillingness to do the costly contextualization of the results of a given query with how we know - if asked - it works?\n> \n> How do we reference the difficulty in disentangling what \"Google says\" from what a page, which Google says the web values, says?\n> \n> What do we call the production of epistemic automaticity from Google's algorithms' automated search results?\n\n**2022-11-10 Notes:**\n\nSearch automation bias (SAB) is one possible term (though my questions above point to ideas probably worth disentangling, for instance, my larger questions are broader than [\"position bias\"](#position_bias)—pointing also to the \"clean aesthetic\", thinking past the context and construction of search, and differentiating the search engine's claimed credencing from the whole experience of query => \"*search media*\"[^metaxa2019search] => reading the page[^results_of_search]).\n\n[^results_of_search]: Distinguishing the search results from the complete search, including \"the complex impact a page of results can have on users\" (Metaxa et al. 2019)[^metaxa2019search]. Alternately worded, in Mulligan & Griffin (2018, 567)[^mulligan2018rescripting]:\n\n > results-of-search (the results of the entire query-to-conception experience of conducting a search and interpreting search results)\n\nI put some remarks from others' research below. I'd love to hear more of other terms or ways of thinking through this (or of doing search differently), newly proposed by you or in literature/practice that I've missed or failed to recall. SAB seems increasingly common in the the Google Web Search paradigm—with instant answers, rich components, and featured snippets—though perhaps less so where people perceive/believe spam to have clouded the results[^dying]. I think the risks from SAB are likely lower for some types of searches or searches within particular contexts (like what I study in my dissertation: data engineers searching for work) and perhaps higher in others (see, for example, a working paper from Lurie & Mulligan[^lurie2021searching_draft] and their section on defining the search results that are \"likely to mislead\") or searches with representational harms (Noble 2018)[^noble2018algorithms]).\n\n[^dying]: Are the claims of Google dying (Brereton 2022)[^brereton2022google] showing up in research on the use of Google?\n\n Chayka (2022):[^chayka2022google]\n\n > Brereton’s post–which ended “Google is dead. Long live Google + ‘site:reddit.com’ ”—became the No. 10 [most upvoted link ever on the tech-industry discussion board Hacker News](https://hn.algolia.com/?dateRange=all&page=0&prefix=false&query=&sort=byPopularity&type=story). No. 11 is a complaint about Google’s search results looking too similar to its ads, while No. 12 is a link to an alternative, indie search engine. Clearly, others share Brereton’s sense of search-engine discontentment. [Algolia link not in the original]\n\n[^brereton2022google]: [Brereton](https://dkb.io/)'s [Google Search Is Dying](https://dkb.io/post/google-search-is-dying) (2022), from DKB. [brereton2022google]\n\n\nI wrote the 2017 thread above while working on Mulligan & Griffin (2018)[^mulligan2018rescripting]—re Google returning Holocaust-denier search pages at the top of the search results for the query [did the holocaust happen] \\(Cadwalladr 2016)[^cadwalladr2016googleb].\n\n\n\n**See also:**\n\nVaidhyanathan (2011, 15)[^vaidhyanathan2011googlization]\n\n> our habits (trust, inertia, impatience) keep us from clicking past the first page of search results\n\n\n\n\nSundin & Carlsson (2016)[^sundin2016outsourcing]\n\n> ... and if you put trust in _Google’s_ relevance criteria, as a consequence you outsource critical assessment of information to the information infrastructure and, more precisely, to the algorithms of the search engines\n\nNoble (2018, 116)[^noble2018algorithms]\n\n> ...search results belie any ability to intercede in the framing of a question itself. [ . . . ] What we find in search engines about people and culture is important. They oversimplify complex phenomena. They obscure any struggle over understanding, and they can mask history. **Search results can reframe our thinking** and deny us the ability to engage deeply with essential information and knowledge we need, knowledge that has traditionally been learned through teachers, books, history, and experience. [em added]\n\nHaider & Sundin (2019, 24)[^haider2019invisible]\n\n> shifting the locus of trust from people and institutions to a technology that aims at merging and relocating it\n\n\n\nHaider & Sundin (2019, 33-34)[^haider2019invisible] — see the full paragraph (which pulls together White (2016, p. 65)[^white2016interactions] on \"position bias\" (White: \"also referred to as ‘trust’ bias or ‘presentation bias’”); Pan et al. 2007[^pan2007google]; Schultheiß et al. 2018's[^schulthei2018still]; and Höchstötter & Lewandowski 2009[^hochstotter2009users]), starting with:\n\n> Another line of research investigates what people choose from the search engine results page – often referred to as SERP – and why they choose as they do. This work convincingly shows that how people choose links is primarily based on where these links are located on the search engine results page.\n\n\nTripodi (2022, 116)[^tripodi2022propagandists]:\n\n> ...conflates the explorative search processes——searches that embody learning and investigating——with queries focused on fact retrieval and verification.[40] Further, as Google has worked to \"oversimplify complex phenomena\" and to prioritize profits over societal engagement with complicated ideas, the tech giant has transformed itself from an exploratory platform into one designed around verification...[41]\n> \n> ___\n> \n> Fn40. [Marchionini 2006][^marchionini2006exploratory]\n>\n> Fn41. [Noble 2018[^noble2018algorithms]; Haider & Sundin 2019[^haider2019invisible]]\n\nNarayanan and De Cremer (2022, 2)[^narayanan2022google]: \n\n> users of search engines act as if search engine algorithms are providers of testimony, and acquire or alter beliefs on the basis of this apparent testimony\n\n---\n\n*2022-11-11 Edit:* Added [line from Sundin & Carlsson (2016)](#sundin2016outsourcing)[^sundin2016outsourcing]\n\n---\n\n### Notes and References\n\n[^chayka2022google]: [Chayka](https://www.kylechayka.com/)'s [What Google Search Isn’t Showing You](https://www.newyorker.com/culture/infinite-scroll/what-google-search-isnt-showing-you) (2022), from The New Yorker. [chayka2022google]\n\n[^haider2019invisible]: [Haider](https://www.hb.se/en/research/research-portal/researchers/JUHA/) & [Sundin](https://www.kultur.lu.se/en/person/OlofSundin/)'s [Invisible Search and Online Search Engines: The ubiquity of search in everyday life](https://doi.org/10.4324/9780429448546) \\(2019), from Routledge. [**open access book**] doi:10.4324/9780429448546 [haider2019invisible]\n\n[^mulligan2018rescripting]: [Mulligan](https://www.ischool.berkeley.edu/people/deirdre-mulligan) & Griffin's [Rescripting Search to Respect the Right to Truth](https://georgetownlawtechreview.org/rescripting-search-to-respect-the-right-to-truth/GLTR-07-2018/) (2018), in The Georgetown Law Technology Review. [[direct PDF link](https://georgetownlawtechreview.org/wp-content/uploads/2018/07/2.2-Mulligan-Griffin-pp-557-84.pdf)] [[mulligan2018rescripting]](/shortcuts/mulligan2018rescripting.html)\n\n[^narayanan2022google]: [Narayanan](https://www.deveshnarayanan.com/) & [De Cremer](https://www.daviddecremer.com/)'s [\"Google Told Me So!\" On the Bent Testimony of Search Engine Algorithms](https://doi.org/10.1007/s13347-022-00521-7) (2022), in Philosophy & Technology. doi:10.1007/s13347-022-00521-7 [🚨 paywalled, email author for a copy] [narayanan2022google]\n\n[^noble2018algorithms]: [Noble](https://safiyaunoble.com/)'s [Algorithms of Oppression How Search Engines Reinforce Racism](https://nyupress.org/9781479837243/algorithms-of-oppression/) (2018), from New York University Press. [[book](https://en.wikipedia.org/wiki/Special:BookSources?isbn=9781479837243)] [noble2018algorithms]\n\n[^marchionini2006exploratory]: [Marchionini](https://ils.unc.edu/~march/)'s [Exploratory search: From Finding to Understanding](https://doi.org/10.1145/1121949.1121979) (2006), in Commun. ACM. doi:10.1145/1121949.1121979 [🚨 paywalled, author copy at [ResearchGate](https://www.researchgate.net/publication/220422328_Marchionini_G_Exploratory_search_from_finding_to_understanding_Comm_ACM_494_41-46)] [marchionini2006exploratory]\n\n[^tripodi2022propagandists]: [Tripodi](https://ftripodi.com/)'s [The Propagandists' Playbook: How Conservative Elites Manipulate Search and Threaten Democracy](https://yalebooks.yale.edu/book/9780300248944/the-propagandists-playbook/) (2022), from Yale University Press. [[book](https://en.wikipedia.org/wiki/Special:BookSources?isbn=9780300248944)] [tripodi2022propagandists]\n\n[^vaidhyanathan2011googlization]: [Vaidhyanathan](https://mediastudies.as.virginia.edu/people/profile/sv2r)'s [The Googlization of everything:(and why we should worry)](https://doi.org/10.1525/9780520948693) (2011), from University of California Press. [[book](https://en.wikipedia.org/wiki/Special:BookSources?isbn=9780520258822)] doi:10.1525/9780520948693 [vaidhyanathan2011googlization]\n\n[^cadwalladr2016googleb]: [Cadwalladr](https://twitter.com/carolecadwalla)'s [Google is not ‘just’ a platform. It frames, shapes and distorts how we see the world](https://www.theguardian.com/commentisfree/2016/dec/11/google-frames-shapes-and-distorts-how-we-see-world) (2016), in The Guardian. [cadwalladr2016googleb]\n\n[^white2016interactions]: [White](https://ryenwhite.com/)'s [Interactions with Search Systems](https://doi.org/10.1017/CBO9781139525305) (2016), from Cambridge University Press. [[book](https://en.wikipedia.org/wiki/Special:BookSources?isbn=9781139525305); author copy at ] DOI: 10.1017/CBO9781139525305 [white2016interactions]\n\n[^pan2007google]: [Pan](https://sites.psu.edu/bingpan/) et al.'s [In Google we trust: Users’ decisions on rank, position, and relevance](https://doi.org/10.1111/j.1083-6101.2007.00351.x) (2007), in Journal of computer-mediated communication. doi:10.1111/j.1083-6101.2007.00351.x [pan2007google]\n\n[^hochstotter2009users]: Höchstötter & [Lewandowski](https://searchstudies.org/team/dirk-lewandowski/)'s [What users see -- Structures in search engine results pages](https://doi.org/10.1016/j.ins.2009.01.028) (2009), in Information Sciences. doi:10.1016/j.ins.2009.01.028 [pre-print](https://arxiv.org/pdf/1511.05802.pdf) [höchstötter2009users]\n\n[^schulthei2018still]: [Schultheiß](https://searchstudies.org/team/schultheiss/), [Sünkler](https://searchstudies.org/team/sebastian-suenkler/), & [Lewandowski](https://searchstudies.org/team/dirk-lewandowski/)'s [We still trust Google, but less than 10 years ago: An eye-tracking study](http://informationr.net/ir/23-3/paper799.html) (2018), in Information Research. [schultheiß2018still]\n\n[^lurie2021searching_draft]: [Lurie](https://emmalurie.github.io/) & [Mulligan](https://www.ischool.berkeley.edu/people/deirdre-mulligan)'s [Searching for Representation: A sociotechnical audit of googling for members of U.S. Congress [DRAFT]](https://emmalurie.github.io/docs/preprint-searching.pdf) (2021) [lurie2021searching_draft]\n\n[^metaxa2019search]: [Metaxa](https://metaxa.net/), [Park](http://www.joonsungpark.com/), [Landay](https://www.landay.org/), & [Hancock](https://pacscenter.stanford.edu/person/jeff-hancock/)'s [Search Media and Elections: A Longitudinal Investigation of Political Search Results in the 2018 U.S. Elections](https://doi.org/10.1145/3359231) (2019), in Proc. ACM Hum.-Comput. Interact.. doi:10.1145/3359231 [🚨 paywalled, author copy at [Stanford's Social Media Lab](https://sml.stanford.edu/publications/2019/search-media-and-elections-longitudinal-investigation-political-search-results)] [metaxa2019search]\n\n[^sundin2016outsourcing]: [Sundin](https://www.kultur.lu.se/en/person/OlofSundin/) & [Carlsson](https://portal.research.lu.se/en/persons/hanna-carlsson)'s [Outsourcing trust to the information infrastructure in schools](http://doi.org/10.1108/JD-12-2015-0148) (2016), in JD. doi:10.1108/JD-12-2015-0148 [🚨 paywalled, author copy available at [Lund University's Research Portal](https://portal.research.lu.se/en/publications/outsourcing-trust-to-the-information-infrastructure-in-schools-ho)] [sundin2016outsourcing]", "snippet": "\n", "url": "/2022/11/10/search-automation-bias/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2022-11-10", "type": "posts", "title": "change notes 2022-11-10", "author": "Daniel Griffin", "date": "2022-11-10 00:00:00 -0800", "category": "", "tags": "[]", "content": "- Added a post: [search automation bias (SAB)](2022/11/10/search-automation-bias.html)\n- Edited a post: [\"I wish there was a way to turn off snippets.\"](2022/10/30/turn-off-featured-snippets) => Added The Markup's [Simple Search](https://themarkup.org/google-the-giant/2020/11/10/introducing-simple-search) to [browser extensions](2022/10/30/turn-off-featured-snippets#option1) that remove featured snippets.", "snippet": "\n", "url": "/changes/2022/11/10/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2022-11-06-harmful-and-empowering-uses-twitter-search", "type": "posts", "title": "Looking at harmful & empowering uses of Twitter Search (prospectus)", "author": "Daniel Griffin", "date": "2022-11-06 00:00:00 -0700", "category": "", "tags": "[]", "content": "Here is text of my prospectus for applying to the [2021 Information Operations Fellowship with Twitter's Trust & Safety Team](https://web.archive.org/web/20210616005800/https://careers.twitter.com/en/work-for-twitter/202106/932f29ab-0ba3-4251-919b-13b82dce45d5/380cdbab-b641-49ff-aa11-c919f9ffb992.html/2021-information-operations-fellowship.html). (edited for a missing citation, modified & expanded presentation of citations, links to personal websites added, [footnote re META](#meta) added)\n\nI recalled this while thinking through the approach to full text search taken by Mastodon. See my post from 2022-11-05: [Searching Mastodon?](/2022/11/05/searching-mastodon)\n\nIn light of Elon Musk's recent tweet, analysis and discussion of how Twitter search might be used for harassment (and how search might be resisted or friction added to searching) is needed even more: [`2022-11-05 15:31`](https://twitter.com/elonmusk/status/1589022495189127169)\n\n> Search within Twitter reminds me of Infoseek in ‘98! That will also get a lot better pronto.\n\nWho is left to build guardrails to direct the use of Twitter search? Who is left to monitor and mitigate the harms?\n\nSee the conversation under Taylor Lorenz's ([@taylorlorenz@mastodon.social](https://mastodon.social/@taylorlorenz])) [recent comment](https://mastodon.social/@taylorlorenz/109292370405648875) re search and discovery on Mastodon. The desire to be able to find what one wants seems to propel one to bowl right over what appears to be deliberately established community protocols and norms that consider also the desires of those wanting to be found (or not).\n\n[I'll confess I made some lighthearted comments about Infoseek - [1](https://twitter.com/danielsgriffin/status/1589052740105572352), [2](https://twitter.com/danielsgriffin/status/1589124647379165184)]\n\n---\n\n### Instructions\n\n> Applicants should submit a 1-2 page prospectus along with standard application materials that lays out the scope and objectives of a proposed investigative project or projects. The prospectus should include:\n> \n> - A short description of the proposed project and motivations behind it\n> - Project objectives and optimal outcomes for the applicant\n> - Expectations around materials, resources and data access needed to complete the work\n> - Demonstration of any preparation or pre-work already completed in relation to the project or projects\n\n--- \n### Short Description\n\nThis project will examine behaviors around Twitter Search that may be related to harmful or empowering uses of the tool. Using a two-pronged approach this project will explore both mentions of searching Twitter in tweets and search behavior on Twitter Search. Mentions of searching Twitter in tweets will be inductively coded to better understand how Twitter Search is used (and resisted) to enable or mitigate harmful behavior. Twitter Search log data will be analyzed for particular subsets of users in order to connect patterns of search behavior with other platform behavior.\n\n### Motivations\n\nIn a 2019 Twitter conversation-interview, Jack Dorsey told Kara Swisher that search was one of the four spaces where abuse happens the most on Twitter.[^1]\n\n[^1]: Kara Swisher ([@karaswisher@twitter.com](https://twitter.com/karaswisher)): [`2019-02-12 14:15`](https://twitter.com/karaswisher/status/1095446310247907328)\n\n > Ok but I really want to drill down on HOW. How much downside are you willing to tolerate to balance the good that Twitter can provide? Be specific. #KaraJack\n\n Jack Dorsey ([@jack@twitter.com](https://twitter.com/jack)): [`2019-02-12 14:19`](https://twitter.com/jack/status/1095447340809220097)\n\n > This is exactly the balance we have to think deeply about. But in doing so, we have to look at how the product works. And where abuse happens the most: replies, mentions, search, and trends. Those are the shared spaces people take advantage of #karajack\n\nExamining the use and mentions of Twitter Search may be one avenue to explore where harmful activity may be disrupted and where legitimate user control may be expanded. Examining the use of Twitter Search may suggest design or documentation changes that may \"improve the integrity, relevancy, and authenticity of the public conversation\".[^2] That line is taken from Jutta Williams's[^new] thread announcing [Dr. Sarah Roberts](https://illusionofvolition.com/)'s consulting at Twitter. When Williams announced that Roberts would be consulting at Twitter this summer, she shared that Roberts would \"research the role of user agency in algorithmic decision making and how communities might be best benefited by more choice.\"[^new2] That aim resonated with research I've previously conducted with colleagues about control on Twitter (discussed below).\n\n[^2]: Jutta Williams ([@williams_jutta@twitter.com](https://twitter.com/williams_jutta)): [`2021-06-23 09:36`](https://twitter.com/williams_jutta/status/1407739276759080965)\n\n > By giving people more choice, we aim to improve the integrity, relevancy, and authenticity of the public conversation. This is the driving hypothesis we shared in April that I’m really excited to start exploring alongside [@ubiquity75](https://twitter.com/ubiquity75) [Sarah Roberts]. More to come!\n\n\n[^new2]: Jutta Williams ([@williams_jutta@twitter.com](https://twitter.com/williams_jutta)): [`2021-06-23 09:35`](https://twitter.com/williams_jutta/status/1407739108328411137)\n\n > She’ll research the role of user agency in algorithmic decision making and how communities might be best benefited by more choice. She’ll work with people on Twitter, researchers, regulators, consumer advocates, and our team to help us figure out where to focus our work.\n\n\n[^new]: [Added footnote on 2022-11-05: Williams was at the time the Staff Product Manager for Twitter's META (ML Ethics, Transparency & Accountability) team. The team, founded by Ari Font and led by [Rumman Chowdhury](https://www.rummanchowdhury.com/), was profiled on the same day as the tweet above (June 23rd, 2021) by Anna Kramer in Protocol: [\"How Twitter hired tech's biggest critics to build ethical AI\"](https://www.protocol.com/workplace/twitter-ethical-ai-meta). All but one member of META was laid off on November 4th, 2022 (ref: [Luca Belli](https://twitter.com/__lucab/status/1588544122507259904)). Prior to its then instantiation, Ayşe Naz Erkan and Luca Belli created its initial version. (refs: [Ariadna Font Llitjós](https://twitter.com/quicola/status/1463666405291835393), [Meg Young](https://twitter.com/megyoung0/status/1588574105661452288), [Nick Matheson](https://twitter.com/willplayforfood/status/1588655823404007424), [Kristian Lum](https://twitter.com/KLdivergence/status/1588612486093107200))]\n\nBeyond the choice of what to tweet, the search tool on Twitter is probably the aspect of the interface that presents the most expansive set of possible choices to people. The tool can be used to learn various things, connect with others, and facilitate harmful or empowering behavior.\n\n[Dr. Sarita Schoenebeck](https://yardi.people.si.umich.edu/) and [Lindsay Blackwell](http://www.lindsayblackwell.net/) have an article forthcoming in the Yale Journal of Law & Technology that \"propose[s] several key shifts for social media governance to better recognize and repair harm\". One suggestion is that a shift of focus from content to behavior \"will allow social media platforms to become more proactive in their governance, implementing interventions that discourage harmful behaviors before they manifest on the platform.\"[^3]\n\n[^3]: Schoenebeck & Blackwell's \"Reimagining Social Media Governance: Harm, Accountability, and Repair\" (2021), in Yale Journal of Law & Technology. [link](https://law.yale.edu/sites/default/files/area/center/justice/reimagining_social_media_governance_harm_accountability_and_repair.pdf) [schoenebeck2021reimagining]\n\nClosely exploring discussions around and practices of Twitter search in relation to both empowerment and harm may reveal paths towards concrete interventions.\n\nThis project intersects with two of the Twitter Trust & Safety focus areas for 2021:\n\n> 1. Developing understanding of emergent harm networks on Twitter - driving signals development and approaches to addressing them through policy and enforcement\n\n- Looking at prior and present harm networks as population subsets for analysis of discussion and search practices.\n\n> 4. Technical analysis to better understand how our products are abused and exploited by coordinated actor groups.\n\n- Technical analysis may reveal patterns of abuse similar to that pursued through Twitter Search but supported through link sharing or misuse of the Twitter API or partners.\n\nThe project also broadens the scope beyond looking at those causing the harm, spam, manipulation, and abuse to also look at how users of Twitter take action on their own or in community to counteract those actors. \n\n### Objectives\n\n- Identify distinctive Twitter Search practices of harmful actors (for improving identification or mitigation).\n- Identify aspects of Twitter Search to reveal or restrict or capabilities to add.\n- Document a repeatable approach to continue to learn about search discussion and search practices relevant to promoting healthy conversation and reducing harm before it happens.\n\n### Optimal Outcomes\n\nFamiliarity with the operations of a company exploring these questions will greatly improve my ability to conduct academic research in the public interest and advocate for effective design or policy changes. It would also help me better prepare my students for similar work in industry or government.\n\n\n### Support Expectations\n\n- access to Twitter employees working on researching, designing, and engineering Twitter Search\n- access to tweets (could instead apply for Twitter API access through the Academic Research product track)\n- access to tools to permit privacy-protecting exploration of Twitter Search log data\n\n\n### Preparation\n\nMy PhD research has looked at tradeoffs in assignments of responsibility related to the use of algorithmic tools, particularly search. My co-authored 2018 law review article looked at the Holocaust denial search results on Google—revealing differences in interpretations of the search results.[^4] We argued that Google had an obligation to respect the right to truth regarding gross violations of human rights. In conclusion, we showed that close examination of how people use search reveals space for action that don't run contrary to the company's longstanding values and engineering commitments. Google could act in the seams to equip people to search more responsibly.\n\n[^4]: Mulligan & Griffin's \"Rescripting Search to Respect the Right to Truth\" (2018), in The Georgetown Law Technology Review. [link](https://georgetownlawstechreview.org/rescripting-search-to-respect-the-right-to-truth/GLTR-07-2018/) [[mulligan2018rescripting]](/shortcuts/mulligan2018rescripting)\n\nMy co-authored 2019 paper looked at how people discussed the \"Twitter algorithm\" on Twitter (using the Twitter API to collect tweets with that phrase or variants).[^5] We focused on one theme we identified: the value and utility of control according to platform users. Users discussed many ways in which they exercised control against or with \"the algorithm\" to improve their experience on the platform. In the end, like the announcement from Williams mentioned above, \"We argue[d] for the need [ . . . ] to consider support for users who wish to enact their own collective choices.\"\n\n[^5]: Burrell, et al.'s \"When Users Control the Algorithms: Values Expressed in Practices on Twitter\" (2019), at CSCW [https://doi.org/10.1145/3359240](https://doi.org/10.1145/3359240) [[burrell2019control](/shortcuts/burrell2019control)]\n\nThough it was not the focus of the study, we noted elements related to the use of Twitter Search:\n\n- people searching directly for accounts as a way to repair what they saw as a loss of control caused by algorithmic shaping of their feed.\n- using screenshots or \"Voldemorting\"[^6] to evade searchability from others\n\n[^6]: van der Nagel's \"'Networks that work too well': intervening in algorithmic connections\" (2018), in Media International Australia. [https://doi.org/10.1177/1329878X18783002](https://doi.org/10.1177/1329878X18783002) [nagel2018networks]\n\nFinally, my dissertation research that I am currently conducting looks at the use of web search by data engineers at work. The core connection between that and this proposal, beyond questions around how responsibility is assigned in relation to search and people's understanding of platform ecosystems, is that both are premised on the belief that there may be value in looking closely at beliefs and behaviors implicated in uses of search tools. I suggest exploring search practices as a lens or lever to explore or shape the broader experience.\n\n---\n", "snippet": "\n", "url": "/2022/11/06/harmful-and-empowering-uses-twitter-search/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2022-11-06", "type": "posts", "title": "change notes 2022-11-06", "author": "Daniel Griffin", "date": "2022-11-06 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Added a post: [Looking at harmful & empowering uses of Twitter Search (prospectus)](2022/11/06/harmful-and-empowering-uses-twitter-search.html)", "snippet": "\n", "url": "/changes/2022/11/06/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2022-11-05-searching-mastodon", "type": "posts", "title": "Searching Mastodon?", "author": "Daniel Griffin", "date": "2022-11-05 00:00:00 -0700", "category": "", "tags": "[]", "content": "After seeing some stray remarks about the lack of full text search on Mastodon, I’ve been curious (and distracted while finishing my dissertation) with how they've imagined and constructed #search / #discovery. I'd love to learn more about the technical decisions and the social constructions of search and discovery in these communities (and how these ideas may be helpfully put to practice elsewhere).\n\nI decided to toss the links I've found up here after seeing a post from Taylor Lorenz ([@taylorlorenz@mastodon.social](https://mastodon.social/@taylorlorenz])) [`2022-11-05 10:27`](https://mastodon.social/@taylorlorenz/109292370405648875).\n\n[Mastodon docs](https://docs.joinmastodon.org/admin/optional/elasticsearch/):\n\n> Mastodon’s full-text search allows logged in users to find results from their own toots, their favourites, and their mentions. It deliberately does not allow searching for arbitrary strings in the entire database.\n\nAn GitHub issue on the [W3C ActivityPub repo: “Controlling availability to search”](https://github.com/w3c/activitypub/issues/221) (from 2017-05-03):\n\n> Earlier today someone released a search engine for mastodon and the response included several concerns.”\n\nThe above issue links to another, on the [W3C Social Web Incubator Community Group repo: “Socially Acceptable Search”](https://github.com/swicg/general/issues/3):\n\nThis includes a link to minutes from a 2017-05-19 W3C meeting that mentions limits to technical countermeasures and the importance of social mechanisms and trust. Mentions also the risk of a “harassment-centric search engine” operated outside the approval of the community. \n\nThe discussion includes mentions of “context collapse” (Marwick & boyd, 2011).\n\n\n---\n\nSome of this connects with a (failed) proposal I made in a fellowship application (actually, [Twitter's Information Operations Fellowship](https://web.archive.org/web/20210616005800/https://careers.twitter.com/en/work-for-twitter/202106/932f29ab-0ba3-4251-919b-13b82dce45d5/380cdbab-b641-49ff-aa11-c919f9ffb992.html/2021-information-operations-fellowship.html)) in the summer of 2021, to study the search practices of harassers——a proposal I wish was informed in writing the proposal by an understanding of what Mastodon is doing. [I'll see about posting a version of that here.]\n\nAdded 2022-11-06: Here is the text of the proposal: [Looking at harmful & empowering uses of Twitter Search (prospectus)](/2022/11/06/harmful-and-empowering-uses-twitter-search)\n\n---\n\n### Citations\n\nMarwick & boyd's \"I tweet honestly, I tweet passionately: Twitter users, context collapse, and the imagined audience\" (2011), in New Media & Society. [https://doi.org/10.1177/1461444810365313](https://doi.org/10.1177/1461444810365313) [marwick2011tweet]", "snippet": "\n", "url": "/2022/11/05/searching-mastodon/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2022-11-05", "type": "posts", "title": "change notes 2022-11-05", "author": "Daniel Griffin", "date": "2022-11-05 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Added a post: [Searching Mastodon?](2022/11/05/searching-mastodon)", "snippet": "\n", "url": "/changes/2022/11/05/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2022-11-04", "type": "posts", "title": "change notes 2022-11-04", "author": "Daniel Griffin", "date": "2022-11-04 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Added to [goldenfein2022platforming](shortcuts/goldenfein2022platforming): [commentary](shortcuts/goldenfein2022platforming#commentary) section", "snippet": "\n", "url": "/changes/2022/11/04/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2022-11-03", "type": "posts", "title": "change notes 2022-11-03", "author": "Daniel Griffin", "date": "2022-11-03 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Edited a post: [Regina Bateson is not a politician, Google](2022/10/31/regina-bateson-is-not-a-politician) => At 5:27pm PT on 2022-11-02, Dr. Bateson tweeted: [Omg, it’s officially gone!! Google no longer says I’m a politician!!!](2022/10/31/regina-bateson-is-not-a-politician#omg).", "snippet": "\n", "url": "/changes/2022/11/03/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2022-11-02-fear-of-gs-abandonment", "type": "posts", "title": "fear of Google abandoning Google Scholar", "author": "Daniel Griffin", "date": "2022-11-02 00:00:00 -0700", "category": "", "tags": "[]", "content": "I think Google abandoning Google Scholar in the near term is unlikely, particularly if there is not a viable public alternative or it is not transformed into one. This is not a full argument to that effect, but there are likely many benefits that accrue to Google by offering Google Scholar to the public. Some of that is discussed in our [paper](/shortcuts/goldenfein2022platforming) -- in a section on \"FREE\" (also a critique of the charity framing). See also [these comments on Quora from Kynan Eng](https://www.quora.com/Which-is-the-business-model-behind-Google-Scholar-or-is-it-a-byproduct-from-indexing-scientific-articles/answer/Kynan-Eng) ([HT](https://twitter.com/kynan_eng/status/1587569433215750147)). Also, see our paper for why this fear should be balanced against concerns about the status quo--which I touch on in [this tweet](https://twitter.com/danielsgriffin/status/1587454378222686212).\n\nBut, here are a few tweets mentioning such a fear (and see the ranging discussions w/in):\n\nWith Google Reader gone, is Google Scholar next? http://t.co/BMb1MHOKY8— Scholarly Kitchen (@scholarlykitchn) March 25, 2013 \n\n\nThis apparently is effective April 29th. Had I gone down that road, I would have effectively had a couple of months to figure out how to migrate .5 PB of data to a new solution on top of the grant deadline I need to make.God help us if Google decides to kill Google Scholar.— Bryan William Jones (@BWJones) February 7, 2022 \n\n\nOne of these days, google is going to decide that it's not interested in google scholar anymore, and this app will go bananas.— Duane Watson (@duane_g_watson) June 8, 2022 \n\n\nI'd argue that Google Scholar plays a critical role in modern research. It is free, and it absolutely crushes every other scholarly search engine, including specialized ones 👇Though it is a bit scary that it seems to be a tiny team & it exists only by the charity of Google... pic.twitter.com/kNFJMVZ52F— Ethan Mollick (@emollick) November 1, 2022 \n\n\nHT: Antoine Blanchard for linking the @emollick, @duane_g_watson, and @BWJones together: [here](https://twitter.com/Enroweb/status/1587575719705677824) and [here](https://twitter.com/Enroweb/status/1535104147980165120).", "snippet": "\n", "url": "/2022/11/02/fear-of-gs-abandonment/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2022-11-02", "type": "posts", "title": "change notes 2022-11-02", "author": "Daniel Griffin", "date": "2022-11-02 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Added a tagline to [/posts](/posts): Trying to be—just a tiny bit—publicly vulnerable about my work, my ignorance and my questions.\n- Added a post: [fear of Google abandoning Google Scholar](2022/11/02/fear-of-gs-abandonment)\n- Added a post: [Tweets that make me think of bridging technology gaps](2022/11/02/bridging-gaps-tweets)\n- Edited a post: [\"I wish there was a way to turn off snippets.\"](2022/10/30/turn-off-featured-snippets) => Added Startpage to [search engines without featured snippets](2022/10/30/turn-off-featured-snippets#option5).\n- Added [a disclosure](/disclosures#twitter_widgets_js) re my use of Twitter's widgets.js\n- Added [direct PDF link] links to the three shortcuts: [goldenfein2022platforming](shortcuts/goldenfein2022platforming), [burrell2019control](shortcuts/burrell2019control), and [mulligan2018rescripting](shortcuts/mulligan2018rescripting).", "snippet": "\n", "url": "/changes/2022/11/02/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2022-11-02-bridging-gaps-tweets", "type": "posts", "title": "Tweets that make me think of bridging technology gaps", "author": "Daniel Griffin", "date": "2022-11-02 00:00:00 -0700", "category": "", "tags": "[]", "content": "### ngrams\n\ntechnology interdependence, technology gap, gap encounters, coordination, bridges/bridging, affordance, imbrication, routines, pipes, tooling\n\n### articles\n\n- Bailey, Leonardi, & Chong's \"Minding the Gaps: Understanding Technology Interdependence and Coordination in Knowledge Work\" (2010), in Organization Science. [https://doi.org/10.1287/orsc.1090.0473](https://doi.org/10.1287/orsc.1090.0473) [bailey2010minding]\n - I mentioned this paper in [this thread](https://twitter.com/danielsgriffin/status/1494750734541156352).\n- Leonardi's \"When Flexible Routines Meet Flexible Technologies: Affordance, Constraint, and the Imbrication of Human and Material Agencies\" (2011), in MIS Quarterly. [http://www.jstor.org/stable/23043493](https://doi.org/10.1287/orsc.1090.0473) [leonardi2011flexible]\n- Bailey & Leonardi's \"Technology choices: Why occupations differ in their embrace of new technology\" (2015), from MIT Press. [http://www.jstor.org/stable/j.ctt17kk9d4](http://www.jstor.org/stable/j.ctt17kk9d4) [bailey2015technology]\n\n### Tweets\n\nWhy don't developers write more personal GUI tooling? I mean, besides the obvious reason that GUI libraries kinda suck and are much more oriented towards making consumer apps than personal tooling, and also because there are no good GUI tooling exemplars, and...— Hillel (@hillelogram) November 1, 2022 \n\n\nI remember the first time I used a Unix pipe to chain tools together. It was my first encounter with the Unix philosophy and it completely changed the way I approach solving problems.Now I break things down into smaller chunks and use the best tool for each unit of work.— Kelsey Hightower (@kelseyhightower) March 18, 2022 \n\n\n\n\n", "snippet": "\n", "url": "/2022/11/02/bridging-gaps-tweets/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2022-11-01", "type": "posts", "title": "change notes 2022-11-01", "author": "Daniel Griffin", "date": "2022-11-01 00:00:00 -0700", "category": "", "tags": "[]", "content": "- Added a post: [Regina Bateson is not a politician, Google](2022/10/31/regina-bateson-is-not-a-politician.html)", "snippet": "\n", "url": "/changes/2022/11/01/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2022-10-31-regina-bateson-is-not-a-politician", "type": "posts", "title": "Regina Bateson is not a politician, Google", "author": "Daniel Griffin", "date": "2022-10-31 00:00:00 -0700", "category": "", "tags": "[]", "content": "\nEdit: Added Twitter commentary\nEdit: At 5:27pm PT on 2022-11-02, Dr. Bateson tweeted: Omg, it’s officially gone!! Google no longer says I’m a politician!!!.\n\n\nGoogle’s knowledge\nYet again someone is compelled to take to Twitter to issue a complaint to Google about incorrect information about them in search results and to appeal for correction.1\nThis time it is Regina Bateson, an assistant professor at the Graduate School of Public & International Affairs at the University of Ottawa.\nGoogle is calling her a politician. She isn’t one. She, rightfully, wants it corrected.\n\nGoogle search: [Regina Bateson], the knowledge panel data labeling her as a “Politician”, and the top result: Her website, with the following snippetI am a comparative political scientist interested in violence, the rule of law, and threats to rights and democracy. · While I have particular expertise in Latin … [Red markings indicate the politician label is incorrect.]\n\nThis short blog post is partially an attempt to provide “web evidence” to aid their appeal for correction. It is also important to make note of these failures—not just the incorrect information but the work required to correct them. Just yesterday I had a conversation with someone who offhandedly passed on conventional wisdom, the searching-sublime,2 about how easy it was to search for everything. It is important to puncture perceptions of Google omniscience, to add friction to the automation bias and the granting of authority to whatever shows up at the top of Google search results.3 Perhaps reflecting on these will help us stop ‘just googling’ and reimagine what just–reasonable, responsive, responsible–search engines might be.\n\nThe Web’s evidence\nRegina Bateson is not a politician. Dr. Bateson (Ph.D. in Political Science, Yale) is a political scientist and professor at the University of Ottawa. This is documented throughout the web: her faculty page at the University of Ottawa, her personal website, her ORCiD, The Conversation, WBUR (Boston’s NPR news station), etc. In 2014, MIT News also identified her as a political scientist. Though she ran for office once she is not, by most any definition, a politician. The Google-provided label is incorrect, deceptive, and non-representative. Why doesn’t Google correct their search results? Or why does it take so much work and time for corrections to happen?\nHere is @regina_bateson on Twitter (Bateson, 2022):\n\nHey @Google, quick FYI: I am not a politician. I ran for office ONCE in 2017-2018, but I’m actually a political scientist, author, etc.\nOn Sept. 27 your team agreed to remove the term “politician” from my Knowledge Panel–but it’s still there. Why? How can I change this? HELP!!!\n\n\n\nAddenda\n\nTwitter commentary\nQuote-tweet from Vivek Krishnamurthy (law professor at University of Ottawa and director of the Samuelson-Glushko Canadian Internet Policy and Public Interest Clinic (CIPPIC)), of a quote-tweet from Regina Bateson, asks about how this, “Google’s failure to correct a false, AI-generated”Knowledge Panel\" description of a person\", interacts with new and proposed laws:\n\n\nHey #lawtwitter: does Google's failure to correct a false, AI-generated “Knowledge Panel” description of a person violate PIPEDA? If not, shouldn't we make sure that this sort of thing is actionable under C-27? These kinds of false descriptions can cause folks real harm. https://t.co/3hkAC8vZBD\n\n— Vivek Krishnamurthy ((???)) November 1, 2022\n\n\nAnother account mentioned an earlier case where a privacy expert apparently had to go to great lengths, and get media attention, to get Google to correct a knowledge panel that put his photo on a description of someone else with the same name: Leo Kelion (2019) “Google faces winged-monkey privacy protest” in the BBC.\n\n\n“Omg, it’s officially gone!! Google no longer says I’m a politician!!!”\n\n\nOmg, it’s officially gone!! Google no longer says I’m a politician!!!It took 4 YEARS but I am v glad to finally have accurate search results.THANK YOU (???) (???) (???) (???) (???) (???) & all who helped in this effort! 🎉🎉🎉 pic.twitter.com/dZAku7KDCi\n\n— Regina Bateson ((???)) November 3, 2022\n\n\nShe also tweeted: “I suspect (though can’t prove) this label made my path back into academia harder than it would’ve been otherwise.”\n\nWell, it was understandable when I was running for office & maybe for a couple months or a yr after. But years 2,3 & 4 were just unnecessary. I suspect (though can’t prove) this label made my path back into academia harder than it would’ve been otherwise. VERY GLAD it’s gone!! 😊\n\nIt has been, she tweeted in September, “years of trying to get it changed”.\n\n\n\n\nBateson, R. (2022). Hey @google, quick fyi: I am not a politician. I ran for office once in 2017-2018, but i’m actually a political scientist, author, etc. On sept. 27 your team agreed to remove the term \"politician\" from my knowledge panel–but it’s still there. Why? How can i change this? HELP!!! https://twitter.com/regina_bateson/status/1585995090480476160.\n\n\n\n\n\nThis post is shaped by, but not about, thinking and writing with Emma Lurie for a paper, recently accepted at New Media & Society: “Search quality complaints and imaginary repair: Control in articulations of Google Search” (initially presented at a Data & Society workshop in early 2022: The Social Life of Algorithmic Harms)↩︎\nThis loose treatment of Google as all-knowing sits in ironic tension with contemporaneous searching-disappointed from perceptions of increasing capture of Google results by spam and commercialization. Like these semi-viral tweets here:\n\n\nEvery week Google search becomes worse and worse and we’re so used to it nobody even talks about it anymore.\n\n— SwiftOnSecurity ((???)) April 24, 2020\n\n\n\n\nFor many classes of topics/questions Google Search has become super SEO'd, surfacing very low quality often ad-heavy/paginated content. I find myself appending “reddit” to a lot of queries and often getting much better results.\n\n— Andrej Karpathy ((???)) March 7, 2021\n\n\n\n\nthe best thing about saying “google it” much like “it’s not my job to educate you, google is for free’ is that when you google anything nowadays the first 3 or 4 pages are SEO’d out marketing garbage\n\n— Tales from the Crypto.com Arena ((???)) January 14, 2022\n\n\n\n\nGoogle search is becoming one of those dying malls. You still go there out of habit, but once you get there, none of it is what you want. You can remember when it was a useful place to visit, but now it's weirdly hollow and you leave without getting what you came for\n\n— Emily Velasco ((???)) October 25, 2022\n\n\n↩︎\nA tweet of mine from 2017:\n\n\nWhat do we call the production of epistemic automaticity from Google's algorithms' automated search results?\n\n— Daniel Griffin ((???)) May 24, 2017\n\n\n\n↩︎\n\n\n", "snippet": "\n", "url": "/2022/10/31/regina-bateson-is-not-a-politician/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2022-10-30-turn-off-featured-snippets", "type": "posts", "title": ""I wish there was a way to turn off snippets."", "author": "Daniel Griffin", "date": "2022-10-30 00:00:00 -0700", "category": "", "tags": "[]", "content": "I recently saw someone tweet: “I wish there was a way to turn off snippets.”\nThey were referring to turning off snippets on Google SERPs (search engine results pages) to improve the searcher’s searching experience, particularly to avoid being led astray by the summarization performed by Google.\nThese snippets, featured at the top of the results, are sometimes very flawed. I found the above tweet in reply to a semi-viral tweet about one problematic featured snippet (see Background, below). (The poster may have been referring to rich snippets (link to a very Google-focused and incomplete Wikipedia page) generally (also called “rich elements”), but I’m focused below on featured snippets.)\nIt looks like there are maybe five options for avoiding featured snippets, as a searcher:\n\n1. A browser extension\n2. a SERP emulator (wc?1)\n3. searching via the URL\n4. convince Google to provide an option, or\n5. use another search engine.\n\nThere are probably many variations of the first two options.\n\n\nOption 1.\nI’ll discuss here two approaches to using browser extensions to block featured snippets: one content blocking browser extension, uBlock Origin, and one, more general-purpose, userscript manager, Tampermonkey.\nuBlock Origin\nThe first page of results when searching [is there a way to turn off google featured snippets?] on Google2 gave me several results for webpage owners (who can choose to stop Google from making snippets of their content)3 and one for searchers: A Reddit post in r/uBlockOrigin from 2019:\n\n\nThe provided filter for use with the uBlock Origin extension (for Firefox or Chromium browsers) still works today4, though I slightly modified5 it to make the block more complete:\n\n\nTampermonkey\nOne tweet suggested, in reply to the original tweet wishing to turn off snippets, finding a Greasemonkey (for Firefox only) or Tampermonkey (Chromium-based browsers and others), script.\n\n\nThere might be if you use grease monkey or tamper monkey, they might have scripts or you can make one to disable snippets\n\n— Taibhse Designs ((???)) October 28, 2022\n\n\nI found and tested this script, which works—though I don’t know JavaScript well enough to do more than a cursory examination (there are probably tools that could help confirm it is only filtering?): Google Search Result Clean6\nEither approach probably will not work, though, if you are concerned about students searching on Chromebooks (as discussed in the thread with the question for this post; see Background, below) that likely have onerous restrictions on browser extensions.\n\n\nThe Markup’s Simple Search\nYou could also try The Markup’s Simple Search extension (which still works as of today, exactly two years after being published). The search experience, in a popup, is perhaps off-putting and may be best thought of as a demonstration or provocation, a speculative design: a reimagining. (added 2022-11-10)\n\n\nOption 2.\nYou can try a sort of SERP “emulator” or proxy that does not include featured snippets, like this one of what Google was like in 20009: https://oldgoogle.neocities.org/2009/\nI cannot vouch for the privacy of such searches.\n\n\nOption 3.\nAdd a &num=9 parameter to the URL for the query.\nExample:\nhttps://www.google.com/search?q=what+are+featured+snippets\nhttps://www.google.com/search?q=what+are+featured+snippets&num=9\n\nvia this page directed at SEOs wanting to not be featured in snippets (from Vlado Pavlik), which credits Kevin Richard on Twitter:\n\n\n\nhere is the explanation: you force the number of results per page to be lower than 10 (it also works with num=8, num=7, etc). And featured snippets are triggered only for serps of 10+ results.So the “featured snippet layer” is disabled, so the non-snippet rankings are shown.\n\n— Kеvіn Rіchаrd ((???)) January 23, 2020\n\n\nThis might only be useful if you have scripts that open queries via the URL7.\n\n\nOption 4.\nConvince Google to provide searchers with the option to turn of the snippets?\n\n\nOption 5.\nUse a different search engine that does not have featured snippets.\nI don’t know of a list of search engines that do not at all use featured snippets or other machine summarizing for some queries. (Here is a general list of search engines, on Wikipedia.) These look like likely candidates:\n\nMojeek (it does at times return Wikipedia content and news results in the sidebar)\nMillion Short8\nsearch.marginalia.nu9\nStartpage: “Unlike Google, Startpage doesn’t offer”featured snippets“, which are answers extracted directly from relevant websites. In contrast, Startpage’s”Instant Answers\" only get information from a dozen websites.41\" (Wikipedia) => “enabled by default, but you can disable them on the settings page”\n\nRHT: Janet Vertesi’s Google-Free Living (it’s better here)\n\n\n\n\nBackground\n\n\nDoing any research projects with my 7-9s had me screaming, begging, and pleading with them to fucking click the links and read the actual article. I wish there was a way to turn off snippets.\n\n— Verso Book Reader™ ((???)) October 26, 2022\n\n\nI found the above wish in the replies to a recent complaint about Google’s Featured snippets—showing how a snippet distorts the message of a website addressing myths10 about pouring liquid cooking oil down the drain:\n\n\nwhen will google realize that Featured Snippets are an abject failure? pic.twitter.com/lcVew7Rlhv\n\n— ◤◢◤◢◤◢◤◢ ((???)) October 26, 2022\n\n\nThere are two screenshots in the tweet:\n\nOf the featured snippet:\n\nIt’s okay to pour liquid oils down the drain.\nLiquid cooking oils float on water and easily adhere to sewer pipes. The oily film can collect food particles and other solids that will create a blockage.\n\nA portion of the snippeted website: An image captioned “Grease-clogged Pipe (photo courtesy Arlington County DES)” and the following text:\n\nMyths\nIt’s okay to pour grease down the drain if I run hot water with it.\nThis only moves the grease further down the sewer line. Eventually the water will cool and the grease will begin to solidify and coat the pipes.\nIt’s okay to pour liquid oils down the drain.\nLiquid cooking oils float on water and easily adhere to sewer pipes. The oily film can collect food particles and other solids that will create a blockage.`\n\n\nAddendum\nThis makes me curious whether non-Google researchers have studied folks searching with featured snippets blocked with an extension, like that in Option 1 above. I’ll have to look…\n\n2022-11-02 Edit: Added Startpage to search engines without featured snippets.\n2022-11-10 Edit: Added The Markup’s Simple Search to browser extensions.\n\n\n\n\nThere is probably a better word than emulator or proxy to refer to these.↩︎\nQuickly doing the same search on Bing, DuckDuckGo, Neeva, and You.com seems to return only results for webpage owners in the top results. Perhaps the query could be easily reformulated to clarify intent.↩︎\nThe first result at the time of my search, a featured snippet, actually includes, in passing, the tip shown in option 3.↩︎\nI tested by searching g[what are featured snippets?], which at least presently includes a featured snippet, with the filter and extension both enabled and disabled.↩︎\nmodified (hopefully not too aggressively) to:\ngoogle.*##.xpdopen:has-text(Featured snippet):nth-ancestor(6)↩︎\nRelevant to my dissertation research, broadly, commented-out code for the Google Search Result Clean userscript contains instructions for also removing “naive and annoying websites” from Google search results, including: ‘www.w3schools.com’, ‘www.asciitable.com’, ‘www.dba-oracle.com’, ‘www.geeksforgeeks.org’, ‘www.tutorialspoint.com’ (these are websites that I’ve seen people complain about on Twitter with regard to doing programming related web searching, and one of the few examples I found of people programmatically modifying their web search tools). See numerous tweets on the topic by searching, for example, t[google w3schools hide]. A comment in the code suggests, instead, using uBlacklist to block those sites from search results.\n // Remove naive and annoying websites.\n // Comment this out, use uBlacklist instead\n↩︎\nFor example, I wrote a clunky plugin for myself for Sublime that takes a simple notation (the search tool code followed by the query in square brackets) and with a hotkey opens a browser tab with the search. So I can write g[search this] or bmail[search this] in my notes and my hotkey will open a tab in my browser to the Google or Berkeley Gmail, respectively, search for [search this].↩︎\nMillion Short and search.marginalia.nu are not currently listed on the Wikipedia list of search engines. :/↩︎\nMillion Short and search.marginalia.nu are not currently listed on the Wikipedia list of search engines. :/↩︎\nThis pattern, failing to process a website addressing a myth or “things you should never do”, appeared also in Google’s seizure search failure from October 2021.\n\n\nThe Google search summary vs the actual page pic.twitter.com/OJxt1FrBqh\n\n— soft! ((???)) October 16, 2021\n\n\nThere are two screenshots in the tweet:\n\nThe snippet for a “People also ask” prompted search: [Had a seizure Now what?]: “Hold the person down or try to stop their movements. Put something in the person’s mouth (this can cause tooth or jaw injuries) Administer CPR or other mouth-to- mouth breathing during the seizure. Give the person food or water until they are alert again.”\nA portion of the snippeted website:\n\nDo not:\n\nHold the person down or try to stop their movements\nPut something in the person’s mouth (this can cause tooth or jaw injuries)\nAdminister CPR or other mouth-to-mouth breathing during the seizure\nGive the person food or water until they are alert again\n\n\n\n↩︎\n\n\n", "snippet": "\n", "url": "/2022/10/30/turn-off-featured-snippets/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2022-10-30", "type": "posts", "title": "change notes 2022-10-30", "author": "Daniel Griffin", "date": "2022-10-30 00:00:00 -0700", "category": "", "tags": "[]", "content": "\nAdded a post: “I wish there was a way to turn off snippets.”\n\n", "snippet": "\n", "url": "/changes/2022/10/30/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "changes-2022-10-27", "type": "posts", "title": "change notes 2022-10-27", "author": "Daniel Griffin", "date": "2022-10-27 00:00:00 -0700", "category": "", "tags": "[]", "content": "\nAdded /scholar_profiles page (linked in Footer)\nAdded to goldenfein2022platforming\n\nsection IDs w/ links across top of page\nrelated work section\n\nAdded Mastodon to contact div in Footer\n\n", "snippet": "\n", "url": "/changes/2022/10/27/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2022-10-19-trace-watery-biases", "type": "posts", "title": "trace-watery-biases", "author": "Daniel Griffin", "date": "2022-10-19 00:00:00 -0700", "category": "", "tags": "[]", "content": "Looking at a recent paper from Jill Walker Rettberg1—discussing a method of “algorithmic failure”, which “uses the mispredictions of machine learning to identify cases that are of interest for qualitative research”—reminded me of a card in my notes: trace-watery-biases. The use by Rettberg is very distinct, but reminds me to re-frame search “failures” and failed searches as opportunities to better understand articulations, constructions, and expectations of search.\nThe card was prompted back in 2018 by a line from Heather M. Roff2, highlighted on Twitter by Suresh Venkatasubramanian3\n\nAll AIs can do is to bring into relief existing tensions in our everyday lives that we tend to assume away.\n\nAround the same time a stray bit from a line from Julia Powles and Helen Nissenbaum jumped out at me4:\n\nThe tales of bias are legion: online ads that show men higher-paying jobs; delivery services that skip poor neighborhoods; facial recognition systems that fail people of color; recruitment tools that invisibly filter out women. A problematic self-righteousness surrounds these reports: Through quantification, of course we see the world we already inhabit. Yet each time, there is a sense of shock and awe and a detachment from affected communities in the discovery that systems driven by data about our world replicate and amplify racial, gender, and class inequality. [links omitted, emphasis added]\n\nThe “we see the world we already inhabit”, (though of course some already see and feel that world) made me recall the joke about the fish and water, here it is as told by David Foster Wallace:\n\nThere are these two young fish swimming along and they happen to meet an older fish swimming the other way, who nods at them and says, “Morning, boys. How’s the water?” And the two young fish swim on for a bit, and then eventually one of them looks over at the other and goes, “What the hell is water?”\n\nAnd I recalled, at the time, a fascinating 2016 paper by Lucian Leahu5 that looks at “failures” of neural networks as opportunities for tracing relations and for “ontological surprise”, seeing new sorts of categories and ways of being:\n\nOther networks, however, surprised the engineers conducting these experiments. One such example is that of a network trained to detect dumbbells. Indeed, the images output by the neural net contained dumbbells, however they also depicted human arms operating them—see Figure 3. In other words, from the network’s perspective the essential characteristics of a dumbbell include human arms.\n[ . . . ]\nThe network encodes a central aspect pertaining to dumbbells: the fact that they can be operated in particular ways by arms. My interpretation is rooted in a relational worldview. From this perspective, what characterizes an entity is not the attributes of that entity but the relations that perform the object as such: the relations through which an object’s identity is performed—a weight emerges as a dumbbell by being used as a training weight, typically by lifting it with one’s arms. In sum, the network in this experiment can be thought to encode a relation between dumbbells and arms; indeed, a constitutive relation. Viewed from a relational point of view, then, this experiment is a success and motivates a further analysis on how we may use neural networks beyond identifying objects.\n\n+\n\nThe dumbbells experiment surprised the engineers with the presence of human arms in the output images. Although this particular relation (dumbbells-arms) is not particularly surprising, this experiment suggests that it might be possible for machine learning technologies to surprise us by tracing unexpected, indeed emerging, relations between entities. Such tracings may shift ontologies, the ways we understand and categorize the world. This would require us to be open to ontological surprises: e.g., relations and/or categories that 1) are native to specific configurations of machine learning technologies, the contexts in which they are applied, and the human labor necessary to operate the technologies and interpret their results and 2) might be different than what we expect.\n\n\n\n\n\nRettberg’s “Algorithmic failure as a humanities methodology: Machine learning’s mispredictions identify rich cases for qualitative analysis” (2022), in Big Data & Society. https://doi.org/10.1177/20539517221131290 [rettberg2022algorithmic]\n\nHT:\n\n\n\nWhen I read (???) (???) & (???)'s paper on anthropological AI, I was thrilled. They propose using AI's MISPREDICTIONS for qualitative research. I tested their method on our dataset & it worked wonderfully! My paper on it came out today! https://t.co/u43Jjscrcz\n\n— Jill Walker Rettberg ((???)) October 19, 2022\n\n\n\nI replied in-thread:\n\n\n\nVery neat!It isn't explicitly oriented towards “algorithmic failure” to “identify rich cases for qualitative analysis”, but as soon as I saw your tweet I thought of Leahu (2016) using surprise/“failure” to “shift ontologies”, from seeing entities to relations and new categories.\n\n— Daniel Griffin ((???)) October 19, 2022\n\n\n\nI particularly appreciated “§ Using machine learning against the grain”.\n\nRettberg highlights and builds on Munk et al.’s “The Thick Machine: Anthropological AI between explanation and explication” (2022), in Big Data & Society. https://doi.org/10.1177/20539517211069891 [munk2022thick]↩︎\nRoff’s “The folly of trolleys: Ethical challenges and autonomous vehicles” (2018), from Brookings. https://www.brookings.edu/research/the-folly-of-trolleys-ethical-challenges-and-autonomous-vehicles/ [roff2018folly]↩︎\n\n\n“All AIs can do is to bring into relief existing tensions in our everyday lives that we tend to assume away.” An EXCELLENT article on getting away from what the author calls “the folly of trolleys” in self-driving cars. Also see (???) on ‘car wars’. https://t.co/TcaIBS3cuK\n\n— Suresh Venkatasubramanian ((???)) December 17, 2018\n\n\n↩︎\nPowles & Nissenbaum’s “The Seductive Diversion of ‘Solving’ Bias in Artificial Intelligence” (2018), from OneZero. https://onezero.medium.com/the-seductive-diversion-of-solving-bias-in-artificial-intelligence-890df5e5ef53 [powles2018seductive]\n\nI previously shared about this piece contemporaneously:\n\n\n\nA winter solstice pairing:1️⃣ Selbst, boyd, Friedler, Venkatasubramanian, & Vertesi's “Fairness and Abstraction in Sociotechnical Systems” (excerpt left)2️⃣ Powles & Nissenbaum's “The Seductive Diversion of ‘Solving’ Bias in Artificial Intelligence” (excerpt right) pic.twitter.com/bEdUwVBpOC\n\n— Daniel Griffin ((???)) December 21, 2018\n\n\n↩︎\nLeahu’s “Ontological Surprises: A Relational Perspective on Machine Learning” (2016), in Proceedings of the 2016 ACM Conference on Designing Interactive Systems. https://doi.org/10.1145/2901790.2901840 [leahu2016ontological]↩︎\n\n\n", "snippet": "\n", "url": "/2022/10/19/trace-watery-biases/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tweets-2022-10-19-end-of-line-hyphenation", "type": "posts", "title": "end-of-line hyphenation", "author": "Daniel Griffin", "date": "2022-10-19 00:00:00 -0700", "category": "", "tags": "[]", "content": "\n\nAre you searching for [aslkfja- stowerk;asndf] or [aslkfjastowerk;asndf]?\n\n\n@danielsgriffin via Twitter on Oct 19, 2022 \n\nSearching for [aslkfja- stowerk;asndf] on Google, Bing, DuckDuckGo, Yandex, @Neeva, @YouSearchEngine, @mojeek Query parsing choices made by Google make it the only search engine providing no reference to the use of the term (rendered as such) by Golebiewski & boyd (2018).\n\n\n\nGranted, the “-” appears to be an artifact of end-of-line hyphenation retained when copying from the PDF. In their 2019 follow-up report on data voids Golebiewski & boyd render the term “aslkfjastowerk;asndf”, for which Google does return results.\n\n\n\nGolebiewski & boyd (2018)\nGolebiewski & boyd (2019)\n\n\n\n\nThis page was published on 2022-10-19.\n\nSee a related post: ad z’njinz’tum\n\nUpdated on 2023-07-10: updated tweet display to cards.\n\n\n\n\nGolebiewski, M., & boyd, danah. (2018). Data voids: Where missing data can easily be exploited. Data & Society. https://datasociety.net/library/data-voids-where-missing-data-can-easily-be-exploited/\n\n\nGolebiewski, M., & boyd, danah. (2019). Data voids: Where missing data can easily be exploited. Data & Society. https://datasociety.net/library/data-voids/\n\n\n", "snippet": "\n", "url": "/tweets/2022/10/19/end-of-line-hyphenation/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2022-10-18-low-code-search", "type": "posts", "title": "low-code search?", "author": "Daniel Griffin", "date": "2022-10-18 00:00:00 -0700", "category": "", "tags": "[]", "content": "Musings on seeing the below tweet: How might the experience searching (for solutions or fixes) when building with low-code tools differ from the more code-centric (wc?) tools (like Python or Bash)? Scripting languages have large (though not always welcoming) communities with existing solutions and support. How do those building low-code tools consider how they might prepare documentation, exception handling, and naming? Can low-code tools be examined as a still higher-level programming language? (Akin to how some have suggested we view prompt engineering with code generation tools?)\n\n\n\n @GergelyOrosz via Twitter on Oct 17, 2022 \n\n\nThe explosion of low-code tools to build internal-facing tools is incredible.\nRetool being the best-known one, and Appsmith, Bubble, Budibase, Internal .io, Softr, Superblocks, Tooljet and so many more show that there’s a big shift in how companies want to build internal tools.\n\n\n\n\n\n\n\n@GergelyOrosz via Twitter on Oct 17, 2022 \n\nThe explosion of low-code tools to build internal-facing tools is incredible.\nRetool being the best-known one, and Appsmith, Bubble, Budibase, Internal .io, Softr, Superblocks, Tooljet and so many more show that there’s a big shift in how companies want to build internal tools.\n\n\n\n", "snippet": "\n", "url": "/2022/10/18/low-code-search/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "updates-2022-10-17-griffin2022search-accepted", "type": "posts", "title": "My paper with Emma Lurie was accepted", "author": "Daniel Griffin", "date": "2022-10-17 00:00:00 -0700", "category": "", "tags": "[]", "content": "\n \n \n \n \n October 17th, 2022: My paper with Emma Lurie was accepted\n \n \n \n 🎉 My paper with Emma Lurie was accepted at New Media & Society (initially presented at a Data & Society workshop in early 2022: The Social Life of Algorithmic Harms)\n\n \n \n \n \n \n \n \n \n \n \n\n\n", "snippet": "

    🎉 My paper with Emma Lurie was accepted at New Media & Society (initially presented at a Data & Society workshop in early 2022: The Social Life of Algorithmic Harms)

    \n", "url": "/updates/2022/10/17/griffin2022search-accepted/", "snippet_image": "griffin2022search_accepted.png", "snippet_image_alt": "image of griffin2022search_accepted paper", "snippet_image_class": "paper_image" } , { "id": "2022-10-16-laughing-at-searches", "type": "posts", "title": "laughing at searches", "author": "Daniel Griffin", "date": "2022-10-16 00:00:00 -0700", "category": "", "tags": "[]", "content": "*My PhD dissertation looks at jokes made about searching. Shared self- & group-directed joking among data engineers construct an appropriate reliance on web searching at work for work.\nThey tell the jokes to connect, test and re-see rather than stigmatize the searching practices.\nhttps://web.archive.org/web/20221017122833/https://twitter.com/JurassicArse/status/1581321601013886978\nBut they generally keep their web searches private so people don’t laugh at them or otherwise judge and treat them poorly. While searching is accepted, individual searches are recognized as too intimate to share. Could it be otherwise?\nWhat if instead we could find ways to share some of our searches, our curiosity, with others in ways that drive new wonderings—letting our questions spread (and challenge what searching the web might look like)? The replies to this child’s searches shows some of what is possible.\nSo can we use search jokes as “entry points” (Burrell 2009) to defamiliarize (Bell et al. 2005) and join as people “make, unmake and remake the search engine” (Sundin et al. 2017) & “imagine search with a variety of other possibilities” (Noble 2018).\n\n\ncitations:\n\nBell et al.’s “Making by making strange: Defamiliarization and the design of domestic technologies” (2005), in ACM Transactions on Computer-Human Interaction (TOCHI). https://doi.org/10.1145/1067860.1067862 [bell2005making]\nBurrell’s “The Field Site as a Network: A Strategy for Locating Ethnographic Research” (2009), in Field Methods. https://doi.org/10.1177/1525822X08329699 [burrell2009field]\nNoble’s “Algorithms of Oppression How Search Engines Reinforce Racism” (2018), from New York University Press. [noble2018algorithms]\nSundin et al.’s “The search-ification of everyday life and the mundane-ification of search” (2017), in Journal of Documentation. https://doi.org/10.1108/JD-06-2016-0081 [sundin2017search]\n\n\n\n*This post is drawn from a short Twitter thread.\n", "snippet": "\n", "url": "/2022/10/16/laughing-at-searches/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "updates-2022-09-29-goldenfein2022platforming-published", "type": "posts", "title": "My paper with Jake Goldenfein was published", "author": "Daniel Griffin", "date": "2022-09-29 00:00:00 -0700", "category": "", "tags": "[]", "content": "\n \n \n \n \n September 29th, 2022: My paper with Jake Goldenfein was published\n \n \n \n 📄 My paper with Jake Goldenfein was published: Goldenfein, J. & Griffin, D. (2022). Google Scholar – Platforming the scholarly economy. Internet Policy Review, 11(3). https://doi.org/10.14763/2022.3.1671 [goldenfein2022platforming]\n\n \n \n \n \n \n \n \n \n \n \n", "snippet": "

    📄 My paper with Jake Goldenfein was published: Goldenfein, J. & Griffin, D. (2022). Google Scholar – Platforming the scholarly economy. Internet Policy Review, 11(3). https://doi.org/10.14763/2022.3.1671 [goldenfein2022platforming]

    \n", "url": "/updates/2022/09/29/goldenfein2022platforming-published/", "snippet_image": "goldenfein2022platforming.png", "snippet_image_alt": "image of goldenfein2022platforming paper", "snippet_image_class": "paper_image" } , { "id": "tweets-2022-08-15-imagining-a-beneficent-search-engine", "type": "posts", "title": "Imagining a beneficent search engine", "author": "Daniel Griffin", "date": "2022-08-15 00:00:00 -0700", "category": "", "tags": "[speculative-design, null-results]", "content": "\n\n@danielsgriffin via Twitter on Aug 15, 2022 \n\n“Imagining a beneficent search engine: Content advisories and what-if Google were powerful & brave”\nHT: now-deleted Twitter account’s thread: “Google is so powerful that it “hides” other search systems from us. We just don’t know the existence of most of them. Here’s a list…\"\n\n\n\n\n\nText of image:\n\nscreenshot: A mock Google search page: Query: [insert query here]\nIt looks like there aren’t many great matches for your search in our index!\nWant help reformulating your query? Check out these free external guides for domain-specific advice from community-experts on identifying and revising queries for your searches.\nNeed help choosing other search systems? Here is a community-managed open source table for selecting search systems: [insert filterable list of search engines with distinct indexes or filtering/interaction features (inc. Internet Archive, government and library web-based search systems, competitor search engines, experimental search engines), links to and community-written guides to question-asking & exploratory browsing on forums and other social media platforms (inc. expert comments on safety, privacy, & transparency reports like links to Ranking Digital Rights, etc.), links to locale-specific librarian desk reference services, collaboration with Wikimedia: ‘how to search Wikimedia’. [include permalink to this table]]\nWant to learn more about this content advisory? Click here to read this last month’s community ombudsperson’s public audit of ‘query-match content advisories’. This includes statistics from our systems and feedback from searchers, representatives of these other search systems, and community stakeholders.\n\n\n\nCurrently: Google [cetaxisd] “It looks like there aren’t many great matches for your search Try using words that might appear on the page you’re looking for. For example,”cake recipes\" instead of “how to make a cake.” Need help? Check out other tips for searching on Google.\"\n\n\n\n\nMy mockup of a beneficent search engine is not meant to be a suggestion, but a speculation. What if the dominant search engine were such that it would admit such a resource? What if we were such that it would willingly do so? What might we learn from its absence?\n\n\n\nNote: “content advisory” is language from a recent Google post. Here is a link to that post (1: see: “Expanding content advisories for information gaps”) & an earlier one re the feature (2). [links are not endorsements]\n\n\n\nhttps://blog.google/products/search/information-literacy/\n\n\nhttps://www.blog.google/products/search/getting-great-matches-google-search/\n\n\n\n\nInspiration for what-if:\n\n\n@danielsgriffin via Twitter on Aug 14, 2022 \n\nThis thread helps me imagine a what-if:\nImagine a beneficent Google that, instead of its OK/patronizing/apologia “content advisories” with “It looks like there aren’t any great matches for your search”, pointed users to other search systems.\n\n\n\n@A_Daneshzadeh via Twitter on Aug 14, 2022 \n\nGoogle is so powerful that it “hides” other search systems from us. We just don’t know the existence of most of them. Here’s a list of sites you may have never heard of, it’s how we overcome the madness:\n\n\n\nThe quoted-tweet is now deleted, but replies and quote-tweets are still available.The original tweet is also available at Archive.org\n\n\n\n\n\n\nThis page was published on 2023-06-27.\nUpdated on 2023-07-11: updated tweet display to cards.\n\n\n", "snippet": "\n", "url": "/tweets/2022/08/15/imagining-a-beneficent-search-engine/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tweets-2022-02-01-to-paste-type-immediately", "type": "posts", "title": "to paste/type immediately", "author": "Daniel Griffin", "date": "2022-02-01 00:00:00 -0800", "category": "", "tags": "[micro interactions in search]", "content": "\n\n@danielsgriffin via Twitter on Feb 1, 2022 \n\n\nLoading a page to search I aim to paste/type immediately, which needs the cursor in the search box.\nworks: B, DDG, Ecosia, G, Neeva, SS, You, etc. web.​archive.​org WorldCat\ndoes NOT work*: lib.​berkeley.​edu (?!) openlibrary.​org archive.​org\n\n\n\nGithub​.com doesn’t paste, and doesn’t show a blinking cursor, but it does put typed characters (after using the ‘s’ shortcut**) into the search box. Stack Overflow doesn’t have the cursor in the box, and also forces (those not logged in) into a CAPTCHA flow.***\n\n\n\n___ * These each do use OpenSearch Query Syntax(?) that enables search from the address bar. ** I stumbled on this, tapping frustrated, then confirmed. *** You must “Enable keyboard shortcuts” with a profile via settings to enable ‘s’ to focus on the search box in Stack Overflow.\n\n\n\n", "snippet": "\n", "url": "/tweets/2022/02/01/to-paste-type-immediately/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2019-09-14-advertising-information-retrieval-interests", "type": "posts", "title": "advertising information retrieval interests", "author": "Daniel Griffin", "date": "2019-09-14 00:00:00 -0700", "category": "", "tags": "[]", "content": "I wrote some initial rambling musings on finding new running routes a few months ago: learn how to google trail routes\nAnother way to find new running routes (or, say in the case of my PhD research, stories of searching) is to present oneself to others as interested in hearing about them. Other people can be “human search intermediaries”1. I love hearing stories about searching troubles, successes, and surprises.\nI don’t always love getting targeted advertising, but that is another manifestation of this general idea. This morning Reddit showed me an ad, a promoted tweet, with a San Francisco running routes guide. I’m assuming this is because I’m located in the Bay Area and have joined the r/Ultramarathon and r/AdvancedRunning subreddits. (I actually don’t know how targeted advertising works on Reddit.)\n\nPromoted post in Reddit\n\nAside: If you go to the actual promoted post, text on the bottom says: “These routes were subjectively pulled form the most popular routes in SF by unique user counts.” Then it provides, as internal reference perhaps, a link to UnderArmour’s Atlassian Wiki Space for Data Science that doesn’t seem to be publicly accessible.\n\n\n\n\nI draw this phrase from a sentence in O’Day and Jeffries:\n\nTo understand information delivery requirements, we conducted a study of how library clients deal with the information they get back from human intermediaries. [emphasis added]\n\nO’Day, V. L., & Jeffries, R. (1993, May). Orienteering in an information landscape: how information seekers get from here to there. In Proceedings of the INTERACT’93 and CHI’93 conference on Human factors in computing systems (pp. 438-445). ACM.\nWriting this post now, I note that the exact phrase, “human search intermediaries” appears in the information retrieval literature throughout the 1980s and 1990s.↩︎\n\n\n", "snippet": "\n", "url": "/2019/09/14/advertising-information-retrieval-interests/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tweets-2019-08-25-postcolonial-localization-in-search", "type": "posts", "title": "postcolonial localization in search", "author": "Daniel Griffin", "date": "2019-08-25 00:00:00 -0700", "category": "", "tags": "[localization technologies]", "content": "\n\n@danielsgriffin via Twitter on Aug 25, 2019 \n\nImagined Postcolonial Emendations in Searching Q: How might we imagine Google, its cultural searching assumptions, and its “localization” in search suggestions through a postcolonial discourse?\n\n\n\n\nI tweeted out the above question, pointing to an earlier thread, in this quoted tweet on a critical incident regarding #NoMeCuidanMeViolan and Google search suggestions.\n\n\n@danielsgriffin via Twitter on Aug 23, 2019 \n\nFn11. In addition to forthcoming work 🤞, see: @mindyjiang’s “Search concentration, bias, and parochialism” (2014): “When searchers are bounded by “the local,” including its political arrangement, cultural content, and ideological outlook,…\n\n\n\n…the diffusion of information, knowledge, and ideas globally through borderless search drifts further away.\" https://doi.org/10.1111/jcom.12126\n\n\n\n\n“postcolonial discourse – that is, a discourse centered on the questions of power, authority, legitimacy, participation, and intelligibility in the contexts of cultural encounter, particularly in the context of contemporary globalization.” - Irani et al. (2010)\n\n\n\nOriginal: “Defined by Irani et al.’s (2010) framework of postcolonial computing, ‘‘a project of understanding how all design research and practice is culturally located and power laden,’’ we sought to critically examine the cultural assumptions of blocking technologies…”\n\n\nThe above is a quotation from Jonas & Burrell (2019).\n\n\n\nEmended: “Defined by Irani et al.’s (2010) framework of postcolonial computing, ‘‘a project of understanding how all design research and practice is culturally located and power laden,’’ we sought to critically examine the cultural assumptions of [\"localization\"] technologies…”\n\n\n\nJonas & Burrell (2019)\nIrani et al. (2010)\n\n\n\n\nFootnotes omitted.\n\n\nThis page was published on 2019-09-09.\nUpdated on 2023-07-11: updated tweet display to cards.\n\n\n\n\nIrani, L., Vertesi, J., Dourish, P., Philip, K., & Grinter, R. E. (2010). Postcolonial computing: A lens on design and development. Proceedings of the 28th International Conference on Human Factors in Computing Systems - Chi ’10, 1311. https://doi.org/10.1145/1753326.1753522\n\n\nJonas, A., & Burrell, J. (2019). Friction, snake oil, and weird countries: Cybersecurity systems could deepen global inequality through regional blocking. Big Data & Society, 6(1), 2053951719835238. https://doi.org/10.1177/2053951719835238\n\n\n", "snippet": "\n", "url": "/tweets/2019/08/25/postcolonial-localization-in-search/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tweets-2019-08-20-searching-temporally", "type": "posts", "title": "Searching Temporally?", "author": "Daniel Griffin", "date": "2019-08-20 00:00:00 -0700", "category": "", "tags": "[temporal searching, micro interactions in search]", "content": "\n\nCurrently only a small portion of this tweet is recorded here, see the thread at the link.\n\n\n@danielsgriffin via Twitter on Feb 1, 2022 \n\n*Searching Temporally?* [Disclaimer: This (the choices and effects of availability/affordance of temporal search operators) isn’t my research focus. But I’d love to read work on it!]\n\n[ . . . ]\n\n\n\n[ . . . ] indicates omission added.\n\n\n", "snippet": "\n", "url": "/tweets/2019/08/20/searching-temporally/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tweets-2019-08-20-pressing-enter-in-an-empty-search-box", "type": "posts", "title": "pressing enter in an empty search box", "author": "Daniel Griffin", "date": "2019-08-20 00:00:00 -0700", "category": "", "tags": "[micro interactions in search]", "content": "\n\n@danielsgriffin via Twitter on Feb 1, 2022 \n\nBonus: @StackOverflow also has a nifty feature whereby pressing enter in an empty search box sends you to a Search page with a handy and clear link to “Advanced Search Tips” (though the screenshot re searching dates above is from a further link to their Help pages).\n\n\n Screenshot collected from the linked-tweet.\n\n\n@GitHub does respond to the user action and provide something useful though slightly shaming? (helpful links also provided)\n\n Screenshot collected from the linked-tweet.\n\n\nGmail and Twitter simply ignore the user’s attempt. (Though perhaps they are actually logging such unexpected behavior to better inform their advertising models…)\n\n\n\n", "snippet": "\n", "url": "/tweets/2019/08/20/pressing-enter-in-an-empty-search-box/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2019-05-30-learn-how-to-google-trail-routes", "type": "posts", "title": "learn how to google trail routes", "author": "Daniel Griffin", "date": "2019-05-30 00:00:00 -0700", "category": "", "tags": "[running]", "content": "Initial tentative rambling musings on this perfect intersection of my trail running & PhD obsessions:\n\n\nBased on messages I get to all my social media accounts y’all need to learn how to google trail routes for when you’re on vacation. Also, check out caltopo for mapping your own routes and Gaia - a great phone app. Wish I had time to research all your runs for you but I don’t!\n\n— Candice Burt ((???)) May 29, 2019\n\n\nMy attention to searching related comments is rapt. Sometimes I feel like I everywhere see confessions of lack of skill or experience (or a magic touch), demands for others to trust or not trust a certain search engine or search approach, and comments on the cost to some from an apparent tendency of others to not search (ex. ghost towns, pantene, the google medical degree meme, proximal social search sharing, the search sublime, did the hol, [Michael Albert Quinn Kaiser], search engine filtering, searchworms, as well as the gamut of LMGTFY mockery and confessions of googling). I’m very interesting not only in how the tools function (and the shifts and tradeoffs in handoffs from people to tools or one tool to new tool), but in how we participate in and talk about how they function.\nAnd I’m also a bit of a trail runner—I love getting lost in Tilden/Wildcat or Marin and have tried my feet & heart at several trail ultramarathons—including finishing the San Diego 100, Rocky Raccoon 100, and Orcas Island 100 (and failing and learning from truly searching experiences at the Headlands 100 and Kodiak 100). There is something special about running on trails and something special about the trail running community that has attracted my interest these last few years.\nThis particular example fit well enough within my twin interests—and those larger ethical questions of the design/use of tools and/or/versus humans—that I figured I’d play it out some here.\nQuestions\nThese questions, then, are adapted from those I’ve been thinking about for my dissertation research. They are oriented towards this community and their questions.\n\nWhen do we reach out to, and perhaps burden, trusted human authorities because we mistrust (or perhaps miscredit) ourselves, search engines (and other search tools), or search results?\nHow do we scaffold our & others ability to search better?\nWhat is the role of considering our own/others time? What is the role of human relationships forged or fractured?\nOne distinctive feature of trail ultras are the little ribbons set as trail “blazes” (perhaps called dragons (1,2)). We blaze the trails but how do we better trail blaze to share our discovery path? How do we let our light shine?\n\nResources: People and Tools\nMentioned by Candice in that tweet: Gaia GPS & CalTopo\nIn replies: Trail Run Project, Strava segments, AllTrails, Suunto heatmaps, UltraRunnerHQ\nAll the above does require an awareness of the platforms and time, ability, and inclination to use it for one’s purposes.\nGoogling how to [learn how to google trail routes]\nA quick Google search of [finding new running routes] — and an initial scan:\n\nMolly Hurford’s “How to Find a Running Route When You’re Traveling” (2017) on MapMyRun’s blog suggests a heavy reliance on a tool ranking routes by popularity—any acknowledgment of associated risks?\nBryon Powell’s “How to Find Running Trails” (2011) on iRunFar does suggest asking human search intermediaries (in addition to other resources).\nThe discussion in a forum post on Singletrack (“Finding new (running) routes – strava? Or something else” (2017)) reveals potential for privacy harms in some of the more app-intensive suggestions.\n\nRecall Matt Burgess’s article in Wired from January 2018: “Strava’s data lets anyone see the names (and heart rates) of people exercising on military bases”\n\nCheckout this discussion of other applications: David Webster’s “Use of Strava Heatmaps in Search and Rescue” (2018)\nI’m not sure what to make of government use of the “Strava Metro” data. It makes me think of a 2017 CTSP project: Assessing Race and Income Disparities in Crowdsourced Safety Data Collection that informed UC Berkeley’s SafeTREC’s StreetStory.\n\n\n\nOne response to Candice’s tweet revealed the safety-consciousness that some must maintain while looking for runs:\n\n\nThis is ridiculous. I search for Strava segments near where I’m going then check out the routes that the segment is part of. Also helps me see whether women run there early morning or in the evening.\n\n— Jacqui Haggland ((???)) May 30, 2019\n\n\nSee also Rosie Spinks’s “Using a fitness app taught me the scary truth about why privacy settings are a feminist issue” in Quartz (2017) and Lucia Deng’s ““I’m Here For The Waffles”\" (2016).\nFurther resources?\nI’m intrigued with what people identify (in the links below) as a resource or tactic and the amount of explication or exemplification they provide, whether they imagine varying situations, goals, and abilities or not. I’m thinking about where the people (and the community and environment) are in these searching stories: what are they doing? what is happening to them? what futures are they calling into being? what worlds are they assuming/anticipating/asking exist?\nHere is a tweet—from one year ago—with dozens of suggestions in reply (not constrained to trails)—including asking human search intermediaries (locals, hotel staff, local running stores, social media):\n\n\nQ5: If you're in a new location, who or what do you consult for suggestions and recommendations for places to run? #BibChat pic.twitter.com/wpObcbBhG0\n\n— BibRave ((???)) May 30, 2018\n\n\nTwo years ago:\n\n\nQ3: When running on trips/vacation, how do you find your routes? #RunChat pic.twitter.com/X7F9pvA57L\n\n— #RunChat 🏃 ((???)) August 14, 2017\n\n\nHere’s a question from the r/AdvancedRunning subreddit: “Where do people go to find good running routes and/or tracks when travelling?”—the range of resources used, and information scents suggested, are fascinating. The affordances of these various paths of searching are varied. The goals and constraints of the many runners are also different—from “finding the local gems” to any place to get a workout in or to simply explore.\nPart of the problem raised by Candice is that different people are going to be able to respond to queries from different people (with varying goals) with different facility and different costs & benefits to themselves and the group. Are people asking for advice on how to find any new routes in some random place or asking for a favorite route at a particular location? Candice sells her services in route finding and planning (and branding, food, first aid, and search & rescue) via her unimaginable races. She also broadcasts training runs on social media—giving to the community by providing some of the content they might be googling for (I for one, learned about Gaia GPS & CalTopo from her running manuals). Many of the mentioned human intermediaries in the threads above may have a different calculus. Employees of running stores may have a mix of incentives. A concierge or cab driver may have other costs or capabilities. What is the manual that ultramarathoners can turn to when told, essentially(?), to RTFM?\nIt also makes me think about how sometimes the query itself is secondary. Some people may ask a question of a person not because they cannot themselves google trail routes but in order to develop or maintain a relationship or for external social reward. As one respondent to Candice wrote: > running a custom route by (???) probably comes with better bragging rights…\nWhile most of my new trail runs are speculative and simply hoping for serendipity (and water sources), two of my “runs” were the outcome of a single social media-found human search intermediary. A slogging snow-training run/scramble up Castle Peak (near Donner Pass up by Tahoe): route, pictures.\nSometimes while traveling in cities I’ve just drawn big circles on a map (Paris, London — pace in those is clearly grossly miscalculated), hoped for the best, and set out (adapting as I get lost, hungry, or obstructed). One of my city-exploration runs was a 20-mile route through Baltimore with a local runner as guide (I’d asked family (human search intermediary) for route suggestions and my aunt set me up w/ a distance runner from her running group—I now know that this route was in the “white L”, a racial divide visible even on the global public Strava Heatmap). This raises again questions about what is/isn’t (made) (in)visible on those privilege- and company-curated digital traces of runs.\nI can perhaps be a human search intermediary. As a start:\n\n\nMy personal Strava Heatmap if anyone is looking for trails in the Bay Area—but note that Strava only shows here the trails followed, not the trails loved or hated, the roads I was reckless to run on, or the best trails to enjoy a summer storm—PageRank for routes, popularity only: pic.twitter.com/dcfAR6rSnO\n\n— Daniel Griffin ((???)) May 30, 2019\n\n\nI should note that multiple times I’ve responded to queries about trails in the Bay Area with my heatmap above. But it has been more, perhaps, to provide hope and to signal some legitimacy? Intended as the start of a conversation and not the end. (Too often, perhaps, we finish searches when they should’ve only just begun.)\nI’ve only asked Candice to plan a route once: the Bigfoot 200\nCandice followed up her tweet yesterday with a post today on Instagram: > I use running as a way of exploring and experiencing the world, to push myself to learn more about any place I am traveling to whether it be city of mountain. I use running to get away from civilization and back to nature, to get to know where I live in a deeper and more meaningful way. Who else uses running to explore the areas you live in/travel to?\nIn addition to providing pointers to resources in that tweet, Candice has previously provided straightforward search guidance—a searching blaze: > How do I find trails in new towns? Drive toward the best looking Mountains 🏃⛰🌞🌻🌸\n \n\n2019-05-31: This post is referenced in this thread:\n\n\nI was reminded of this when looking through old tweets and thinking about how we mark trails (w/ blazes or dragons)[1] and might mark (or trace) search paths[2].The remarks from Grudin remind me of this more recent tweet and replies:https://t.co/69Wklr9lbO\n\n— Daniel Griffin ((???)) May 31, 2019\n\n\n", "snippet": "\n", "url": "/2019/05/30/learn-how-to-google-trail-routes/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tweets-2019-05-28-searching-entangled-and-enfolded", "type": "posts", "title": "searching entangled and enfolded", "author": "Daniel Griffin", "date": "2019-05-28 00:00:00 -0700", "category": "", "tags": "[automation bias]", "content": "\n\n@danielsgriffin via Twitter on May 28, 2019 \n\nEx.: searching entangled & enfoldedHow does Google Search account for its inflation of any top-ranked results’ later PageRank metric? How do we account for the authority imbued throughout the top results? For the Matthew Effect on the plutocratic web?\n\n\n\n@pdgoldman via Twitter on May 28, 2019 \n\nWhat’s the phrase to describe when an algorithm doesn’t take into effect it’s own influence on an outcome?\n\n\n\n\n\nMy thread, at link, below that tweet is a surface engagement with:\n\nOrlikowski’s “Sociomaterial Practices: Exploring Technology at Work” (2007)\nIntrona’s “Maintaining the reversibility of foldings: Making the ethics (politics) of information technology visible” (2007)\nHayles’s “Unthought: The Power of the Cognitive Nonconscious” (2017) and handy hammers and trowels.\n\nBut it also reminded me of some of my earliest deep engagement with search/ing:\n\n\n@danielsgriffin via Twitter on May 23, 2017 \n\nWhat do we call the production of epistemic automaticity from Google’s algorithms’ automated search results?\n\n\n\nSee also search automation bias (SAB).\n\n\n\nAnd this bit from earlier this spring (April 5th, 2019):\n\n\n@danielsgriffin via Twitter on Feb 1, 2022 \n\nInteresting convo at “Governing Machines” re CYA notices re a machine “not meant to be used as a sole source of information” versus “automation bias” documented in practice (where a sort of epistemic automaticity foregoes reflection or seeking additional sources of information?).\n\n\n\n\n\n\nOrlikowski (2007)\nIntrona (2007)\nHayles (2017)\n\n\n\nThis page was published on 2019-05-30. Updated on 2023-07-10: updated tweet display to cards.\n\n\n\n\nHayles, N. K. (2017). Unthought: The power of the cognitive nonconscious. University of Chicago Press.\n\n\nIntrona, L. D. (2007). Maintaining the reversibility of foldings: Making the ethics (politics) of information technology visible. Ethics Inf Technol, 9(1), 11–25. https://doi.org/10.1007/s10676-006-9133-z\n\n\nOrlikowski, W. J. (2007). Sociomaterial practices: Exploring technology at work. Organization Studies, 28(9), 1435–1448. https://doi.org/10.1177/0170840607081138\n\n\n", "snippet": "\n", "url": "/tweets/2019/05/28/searching-entangled-and-enfolded/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tweets-2018-04-04-ad-z-njinz-tum", "type": "posts", "title": "ad z'njinz'tum", "author": "Daniel Griffin", "date": "2018-04-04 00:00:00 -0700", "category": "", "tags": "[]", "content": "\n\n@danielsgriffin via Twitter on Apr 4, 2018 \n\nwhen OCR copying errors generate art\n\n\nThis beautiful Futurese: “ad z’njinz’tum”\n\n\nFar more arresting than boring Latin: “ad infinitum”\n\n\n\n\n\nA quick Google search for the exact phrase (“ad z’njinz’tum”) returns Walter Lippmann’s “The Phantom Public” (my source for the above) and leads me to Hans Vaihinger’s \"The Philosophy of ‘As if’*. ______ * Relevant to our Info218 discussion tomorrow on information and truth.\n\nA quick DuckDuckGo search for the exact phrase (“ad z’njinz’tum”) returns nothing.\n\nA quick Bing search for the exact phrase (“ad z’njinz’tum”) returns a morass.\n\n\n\n\n\nGoogle [ “ad z’njinz’tum” ]\n\n\n Screenshot taken manually at: 2019-05-30 19:20:49 \n\n\n\n\n\nDuckDuckGo [ “ad z’njinz’tum” ]\n\n\n Screenshot taken manually at: 2019-05-30 19:23:28 \n\n\n\n\n\nBing [ “ad z’njinz’tum” ]\n\n\n Screenshot taken manually at: 2019-05-30 19:22:27 \n\n\n\n\nThis page was published on 2019-05-30.\nUpdated on 2022-10-19:\n\nSee a related post: end-of-line hyphenation\n\nUpdated on 2023-07-10: updated tweet display to cards.\n\n\n", "snippet": "\n", "url": "/tweets/2018/04/04/ad-z'njinz'tum/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2017-08-19-the-bigfoot-proof", "type": "posts", "title": "the bigfoot proof", "author": "Daniel Griffin", "date": "2017-08-19 00:00:00 -0700", "category": "", "tags": "[running]", "content": "An account of my Bigfoot 200.\nAcknowledgments\nAt the start of this writing I must acknowledge my father who was there for me at the start of the race, there well before the start, and there at all the key points along the way. He has long supported me in my wandering adventures. My dad is a bit of a dreamer. I’ve got a lot of that too. But we don’t just dream. We also attempt to live out our adventures. Particularly dear to my heart was his first time crewing me in my first one-hundred back in June 2015 at the San Diego 100. There he helped nurse me back from the pits of dehydration and despair and provided the perfect mix of compelling and comforting encouragement.\nI was ecstatic when he told me prior to this race that he would be completely available for me throughout the long weekend. From merely a logistical standpoint his presence would remove any requirement for me to deal with the stress and complexity of planning and prepping drop bags for the various aid stations. Then he drove me the hours to the pre-race festivities, a big pre-race meal in Vancouver, and to the start the next day. Once the race started he shuttled bags of gear to every single crew-accessible aid station, separated by hours of cautious driving on winding and often washed-out mountain roads. As I arrived at an aid station he would have my gear at hand, ready to help change my socks, refill my water and gummy bear baggies, replace batteries for and test my headlamp, and coordinate the support from the wonderful aid station volunteers. While I attempted to sleep fitfully in the back of his vehicle, he forewent sleep in the front—constantly sacrificing his comforts for mine. While I had hot food prepped for me at the aid stations, he had cold food from his car. He faced the same dirty heat and wet cold that I did but without the fanfare.\nAll this and more that I don’t know he did for me for more than four days. While much of the race, for me, was spent alone in the woods or along the ridge lines, some of the most key points were the actions in the aid stations. He helped ensure that I cleaned my feet and put them up and that I ate and drank properly at each station. Then he helped see me off. That decision to leave for another leg was never borne lightly. When I was off enjoying the trails, he was busying gathering intel from other runners, crews, and aid station volunteers about the next leg and then helping me plan to adapt to the changing environment and our changing understanding of it and my condition. In the thick of the race he was still dreaming, scheming with me how we could do bigger and better next time. Hopefully for next time we’ll find a trail race to run together.\nI thank my mother for what I do earnestly believe is an abundance of prudence that I brought to the running of this race. I thank also my family and friends who, whether they believed in me or not, never questioned my sincerity in attempting this run. I’m glad my baby brother and his friend came to support me on the first day. I hope his friends at school no longer think my doing a 200-mile race is a tall tale. I must acknowledge the amazing volunteers at the aid stations who were inspiring in many ways, the Donovan family for their inspiration and support for my crew, and the race director and her team for putting together such a wild adventure. I’m grateful for my fellow runners and am excited to follow their future adventures. I especially thank Emily for being there with me on my failure at the Kodiak 100 last year and talking me through that to a return and the adventurous success, with her crewing, at the Orcas Island 100.\n\nStatistics\n\nDistance: 206.5 miles\nElevation gain: +42,506’\nElevation loss: -43,906’\nFinish time: 96:20:18\nStarters: 107\nFinishers: 78 (72%)\n\nResults from UltraSignup.com\n\nReflections\n\nQ.E.D.\n\nWhen I finished the race I posted a picture of my belt buckle and the letters Q.E.D. Actively imagining what it would be like to finish I had settled on that quick short post early in the race. If we think back to the hazy days of high school geometry proofs we might recall it stands for quod erat demonstrandum or “what was to be demonstrated.” I figured it was a way for me to say, “See, I did it!” Over the miles and days the meaning changed for me. I still accomplished something. But now it was as though the schoolmaster was saying Q.E.D. after leading us through a particularly difficult problem. This Q.E.D. was an acknowledgment of working through the problem posed by the race director. Now I’ve got to see if I’ve learned anything from it.\nA researcher studying the post-eruption succession of the ecology around Mount St. Helens has said it is a “a wonderful living laboratory” and that is just what this race was itself. This was a chance to observe myself challenge myself, observe myself amidst the heat, cold, pain, and tedium, and observe myself observing others.\nOn the drive to the start my face was grinning and my arms and legs were trembling—gleeful terror. All that physically manifested fear evaporated as I set about doing. I thought often of the extreme of that fear during the race. While I was still nervous when hearing sounds in the dark or when on wobbly legs over deep cliffs, I never had that same fear. Something about the starting removed it or covered it over. I’m still reflecting on the role of fear in preparing me for the race and in my life.\nMy goal for this race was to finish. To finish healthy. I had not put in any sleep deprivation testing or training and decided right off that I was not inclined to test out hallucinations on the sheer inclines the race director gave us.\nI never confronted the sort of doubts that I lost to in the Headlands 100 or the Kodiak 100 or even those that I barely tearfully bested in the Rocky Raccoon 100 (or survived only with aid station assistance and a volunteered bag of gummy bears at the San Diego 100). Instead I dealt with the nagging concerns about hurting myself. I’m not normally one to shy away from pain. However the distance here meant that it would be all too easy to seriously aggravate minor injuries. Most every step was taken with some small circumspection—looking for anything sharp, slippery, slanted, or that might snag. Even in the lightest moments I was aware that mind over matter had its limits and the race was not entirely in my hands.\nOne of the great things about ultra running is the other runners. Whether by words or by deed they are always inspiring. I am often humbled by my fellow runners. What is particularly humbling is not that anyone is faster than me, but how easy it is to judge another. This race was a renewed reminder that I don’t know the journey that brings someone into my life, what they are going through, or what dreams they have. I will endeavor to bring that lesson into my life. The selfless support from the aid station volunteers and the crews were also a shining example of what I hope I can do as I cross paths with people in my daily life. While some ran without pacers and others ran without crew, no one ran without the support of their fellow runners or the aid stations volunteers and race staff. That is a lesson I hope to live and share with others.\nWhen passing a runner moving slowly on a leg deep into the race I asked how he was doing and I believe he told no lie when he responded, “Never better.” There was pain and frustration for all the runners throughout the race, but there was also adventure and becoming. While his body surely had seen and will see better times and climes, on that climb he had the presence of mind to acknowledge and choose his intentions and attentions.\nAnother refrain from runners was the cheery and chary, “Have fun!” This often seemed to be said with the sincerest sarcasm. While runners may not have set out to have fun and some seriousness may have rightfully consumed their quest, the pumping of one’s legs and lungs through such beautiful and beastly terrain has a way of producing a grim smile if not some moments of unquenchable joy.\nI have more lessons I’m working through still. Lessons of cowardice. Lessons from Melville pried from and plied to the run. More lessons on confidence markers. I hope also to review and reflect on my prior race reports and see what I missed or am missing.\nI am not done with the Bigfoot 200 and it is not done with me. That is not merely clichéd language about a dreamt-of return in 2018 but an acknowledgment of the persistence of the race. Even as I ran that race with memories of my past, I will rerun this race many times to come. As the schoolmaster says in vain and the race director needn’t ever say: you will use this in your life.\n\nLeg by Leg\nWhile one stills runs a race of this distance step by step, leg by leg seems to be a productive way to break it down, both as a runner confronting it and in reflection.\n \nA minimally-detailed map of the course: starting at the bottom of the map south of Mount St. Helens and ending at the top of the map in Randle, WA. The full map of the 2017 course is publicly provided by Destination Trail for the Bigfoot 200 at CalTopo and linked to from the Runner’s Manual.\nMarble Mountain to Blue Lake: 12.2 miles +3,280’ -2,743’\nDay 1: Starting at 0900 (temporally) and 5:40 (spatially with respect to Mount St. Helens) on Friday morning, 106 of us squeezed onto the trails and I fell into a relaxing, though perhaps too quick, pace. We snaked through the trees and then over boulders before winding back down to Blue Lake—completing our first leg clockwise around the mountain.\n \nA bit of the boulders and me (Howie Stern & Scott Rokis Photography).\nBlue Lake (~8 o’clock spatially) to Windy Ridge (~1 o’clock): 18.1 miles +4428’ -3166’\n \nA view of Mount St. Helens through the trees.\nThe heat started to bear down as we gradually moved out of the trees onto the desolated pumice plain created from the pyroclastic flow 37 years ago. We ascended into and out of small canyons with fixed ropes and trudged through varying arid and exposed terrain, over silt-ridden rivers and along sandy hillsides.\n \nImage of my leaping over a small stream in the small canyon in tore into the pumice plain (Howie Stern & Scott Rokis Photography).\nThen a long slog up a gravel road on Windy Ridge to the second aid station. I had stopped for water at a river in the trees, and then a silty river and pure spring on the plain and was clearly suffering a bit from the heat but was generally focused though not quite upbeat. This was a non-crew aid station so I didn’t spend much time and turned back around to head out onto the short and minimal elevation change third leg.\nWindy Ridge to Johnston Ridge: 9.6 miles +1567’ -1487’\n \nThe view of the crater.\nMy attitude quickly turned as heading out I realized I had some cell service so sent a couple messages, started listening to an audiobook of Melville’s Moby Dick, and saw the tremendous crater before me as we went back down the ridge. The book starts right off with some words grasping at why people seek out the sea or other bodies of water and I was reminded of why I run. The biggest grin returned to my face. I was seeking that “the ungraspable phantom of life”.\n \nHeading away from Mount St. Helens, a view of Spirit Lake.\n \nImage from Johnston Ridge of myself running and the crater dominating the background (Howie Stern & Scott Rokis Photography).\nAs evening slowly fell, still struggling from the earlier heat, I moved counterclockwise now farther from the mountain and towards a point just short of the observatory. My father met me and we changed out my socks, cleaned my feet, and I set off again.\nJohnston Ridge to Coldwater Lake: 6.6 miles +412’ -2099’\nI gratefully turned back after ten feet to grab my hiking poles, which I nearly forgot. Darkness fell and we dropped down to the lake on an easy trail. I came into the next station well ahead of schedule. Met my dad for a change of short, shirts, and socks and, with an abundance of prudence and the race director’s words about the next long leg (“Best views of the course, recommend running in daylight if possible.”), I bedded down for several hours. I was only 46.5 miles in but I tossed and turned in the provided tent, attempting to adjust for my sore legs, the cold, and mosquitoes. Without really any solid sleep I began again at 3am.\nColdwater Lake to Norway Pass: 18.7 miles +5105’ -3909’\nDay 2: I set out in the dark along the lake, horribly frightened at one point by a loud splash from some large animal dropping into the water from just off the trail. This route gradually turned to rough and heavily overgrown switch backs up to the ridges. I held up my hiking poles to clear the vegetation from my face and plunged through.\n \nThe depths from which we climbed.\nThe trail came out on some breathtaking views.\n \nAnother view of the crater.\nI happened upon service again and shared some smiley selfies.\n \nA view of the crater and my face.\n \nStunning views as the sun rose.\nI again used poles to help traverse patches of snow.\n \nA view of the crater from Mount Margaret.\nAfter the short but steep Mount Margaret out-and-back, the trail looped around, heavily exposed, down to the next aid station. This is where the heat really started to bring about some chafing in my nether region. I will not be delicate about this because it was not delicate to me. I was horribly hobbled and perplexed as I hadn’t struggled with anything of the sort since my first marathon nine years ago. But, I’ll get back to this. Mount Margaret was the high point of the course and so the race director lied to us in the runner’s manual: “it’s all downhill from here!” I did enjoy sitting for a bit at this aid station, especially the frozen popsicle provided by the volunteers.\nNorway Pass to Elk Pass: 11.1 miles +2037’ -1558’\nThis shouldn’t have been too bad, but the heat was increasing along with the pain in my groin and my fear of being unable to adequately cope. I’d read race reports from years prior of runners finding themselves with significant chafing-induced injuries that built up over the scores of miles and was already seeing its effect on me throughout this leg. I climbed over and around logs from the still recovering blast area and then wound through forested areas that provided some safety from the sun. This next aid station I changed shorts again, and tried my third type of remedy, desperate for some reprieve. With my father’s help I headed out onto the next section.\nElk Pass to Road 9327: 15 miles +2543’ -3144’\nThis segment seemed interminably long as I recklessly played with my gait to adjust for the pain, but the views were incredible.\n \nA clear view of Mount Rainier.\n \nA view of Mount Rainier—“the most prominent and glaciated peak in the contiguous United States”.\nNight fell again and I arrived at the next aid station hopeful that significant rest might alleviate the concern that was foremost in my mind. I ate some food and tucked myself into the back of my dad’s vehicle. I knew I had to resolve the chafing. My pain-induced pace change would not but barely get me across the finish line (I was only 91.3 miles in) and even then I wondered at what the pain or injury might become after two more days. I slept sloppily aslant in the rear of the vehicle constantly sliding onto the pained pads of my feet. When the alarm went off it was pouring down rain. Normally I don’t fear rain but I knew it might wreak havoc on my injury so I attempted sleep for another hour and set off at 5am.\nRoad 9327 to Spencer Butte: 11.2 miles +2817’ -2860’\nDay 3: It was only a slight drizzle as I moved through thick woods. Aggrieved that the chafing remained I held a hand on my groin and was relieved at the relief in the pain. I ran five miles like that, finally resuming a decent pace. I was overjoyed. Grinning. I had the solution, I gleamed, as I comfortably jogged along through woods that felt like home with one hand holding my two hiking poles and the other my shorts. Somehow I had the thought to adjust my shorts by rolling up the waistband to give myself a bit of a self-induced wedgie. With everything held securely in place, I stopped pretending to be Kilian Jornet at Hardrock (which he won with a dislocated shoulder) and resumed the more proper use of both arms. I share those chafing details because it was my reality and such seemingly minor frictions are the reality of runners attempting to cover this distance. I arrived at the next aid station quite pleased with my situation. Though cheerfully corrected the volunteers when they pretended to me that I was over halfway. While I had traversed the most ground I ever had in my life, the 102.5 miles was still shy of halfway because the deceptively named Bigfoot 200 would cover 206.5 miles.\nSpencer Butte to Lewis River: 9.6 miles +1282’ -2852’\n \nA view of falls on Lewis River.\nJogged down the road then gingerly moved down steep trails to the river before heading back up along it, with gorgeous views of falls. Arrived at this station and refueled. The next section was a long one so I ate plenty—noodles and a burger.\nLewis River to Council Bluff: 18.9 miles +5472’ -3315’\nThis section never ended. I’m still running it in my head. Along a creek. Serpentine. Up and down. Then just up as though no one knew what switchbacks were. But ah, the blueberries. At first I stopped to collect and consume but then tried to snag them as I lunged uphill. The blueberries were a mixed blessing. They - and my searches for them - were a tasty distraction but that distraction also forced attention away from my footing. I recklessly encountered more near ankle twists and uncomfortably sharp landings as I’d step on a rough stick or slightly trip over a snagging branch. Generally I had a sharp lookout on the trail. I’d sneak quick glances at the scenery but always pause before appreciating the real vistas. I’d wait for clear trail before taking a sip of water or stop entirely before fishing out a little baggie of gummy bears. After pain increased in the pads of my feet I tried to keep my eyes and hands from the blueberries. The trail suddenly crested and swung around and then down to the next station. Throughout the course the volunteers catered to our needs and dreams. Cooking up hot food to order. Here Richard Kresser, the winner of last year’s race, enthusiastically reassured me that the incredible views described in the runner’s manual were real. That, and the quickly falling light, pushed me out of that aid station much earlier and more optimistically than I’d planned or expected after the prior long leg.\nCouncil Bluff to Chain of Lakes: 9.8 miles +1740’ -1487’\nThe darkness fell much faster than I expected, or I was slower than I’d hoped, but despite missing the views of Adams at sunset I was still more than happy to have pushed through that aid station without much fuss. One of the hardest parts of the race was always the decision to leave the last aid station. I wasn’t considering dropping, but taking it too easy with too much time at the stations would result in the same. Once on a leg the task was clear: one sure step at a time. Time and steps would pass together. I made it into the next station well after dark after a long wide-open mountain road section with the stars exposed far above. I slept again in the back of my dad’s rig. My best and most real sleep of the weekend.\nChain of Lakes to Klickitat: 17.3 miles +3927’ -3900’\nDay 4: Only 65.7 miles to go - in four legs. A quick bit of hot food and fresh socks doubled up with some waterproof socks and, after being reminded about my headlamp strapped unnecessarily atop my head, I stepped out into the early morning light. I was excited about those wet feet river crossings the manual threatened. I was grateful for the safety line and my poles as I wobbly crossed one of the rivers with the current nearly knocking me off my feet.\n \nA view of the mountain through the trees.\nAfter the rivers the trail opened and headed back to higher elevation. I was disappointed that it became more exposed apace with the rising sun but again the views were sustaining.\n \nA view of the mountain above the trees.\n \nA view of the mountain beyond the trees.\nI was aware there was a peak to climb to in another out-and-back and for a half-second assured myself what sat in front of me wasn’t it. Then of course it was. I very slowly stepped up the steep and gravelly trail to Elk Peak and briefly took in the view below the beating sun. Then cautiously moved back down to the trail and then down switchbacks to the next aid station. Here I dried my feet at a campfire, the rivers having been too deep for the waterproof socks to make a difference.\nKlickitat to Twin Sisters: 19.4 miles +4919’ -4987’\nThis leg stands particularly long in my memory in part because once it was over I knew the rest would finally feel fathomable. The route was incredibly well marked so while the trail faded here and there it was easy to stay on track. With this section we started to see scores of fallen logs, simply intentionally left to ensure that we stretched our legs a bit. In the pre-race brief the race director had dryly suggested we bring a step ladder.\n \nA view of a mountain lake.\n \nA view of mountain flowers.\nWhile I love running on soft trails through dark Washington woods the limited line of sight produced a painful monotony and feeling of no progress. It was nice to have the fallen trees to break things up a bit. The marker indicating the start of the out-and-back to the next aid station finally appeared. 2.8 miles to go. Seeing other runners heading back out from the station was heart warming. Darkness fell quickly in those dark woods and I carefully placed each step, wary of the steep sloping sides down out of my sight. Finally pulled into the aid station. I ate plenty of food. My father helped me carefully replace or refill the necessary gear—water, socks, batteries, salt pills, baggies of gummy bears. Then I attempted to get 90 minutes of sleep. I was mighty restless but was raring to go when the alarm when off. I had only 29 miles left. 29 miles. Ha. Too easy.\nTwin Sisters to Owen’s Creek: 16 miles +2592’ -4760’\nDay 5: I set off at 0030. The elevation profile for this leg looks like it is a gentle downhill lope. This is a deception. There was the 2.8 mile largely uphill return to the main trail. Then I rolled through a trail densely overgrown with dew from the bushes reaching over it numbing my legs. After that the final out-and-back up a gnarled and rocky incline to Pompey Peak. I switched off my headlamp and stood there soaking in the view of Mount Rainier silhouetted by the countless stars with the snow reflecting the moonlight. I took my time returning from the peak, fully aware of the steep cliff sides. Then made my way through and over the trees down to an abandoned gravel road graciously covered in moss. In my excitement, and after at one point hearing a heavy rustling in the bushes nearby, I picked up my pace through to the final aid station. I was full of cheer and Geoff Quick at the aid station ensured I was fully of food and gratitude for the opportunity. I handed off most of the emergency gear stuffed in my bag: rain coat, rain pants, headlamp, spare flashlight, and batteries.\nOwen’s Creek to White Pass High School: 13 miles +385’ -1639’\nThen I jogged down the gravel road and, grinning ear to ear, came out on the road to see the morning sun beaming on the farms below. In phases I ran and then barely walked as I excitedly or with forbearance fearing injury approached the finish. I turned into the parking lot and then onto the track. I foolishly fought back tears as I ran three-quarters of the track and was glad I still had my sunglasses on as I crossed the finish line.\n \nImage of my grinning finish with tearwelled eyes obscured from view by sunglasses (Howie Stern & Scott Rokis Photography).\n ## Gear * Vest: Nathan VaporCloud 2-Liter Hydration Vest. I did not use the bladder, but stuffed the back with emergency warm and wet weather gear and sundry other items. * Water: 2x CamelBak Podium Chill 21 oz Insulated Water Bottles in the front of my vest & SteriPEN Adventurer Opti. * Hiking Poles: Black Diamond Alpine Carbon Cork. These were used for many purposes. I used them the entire run. I used them for stability on downhills or near steep edges, sometimes for leverage on uphills but my thighs were generally fine (or it was a sign I was exerting too much). The most common use was to brush back all the brush and branches that crept over the trail. They were also consciously my last resort were I to encounter bigfoot herself. * Shoes: Altra Men’s Superior 2.0 Running Shoe. I alternated through three pairs that my father cleaned and dried for me. * Socks: Injinji 2.0 Men’s Run Original Weight Mini Crew Toesocks. By the last half of the race I was doubling up the socks. * Waterproof socks: RANDY SUN Unisex Waterproof & Breathable Hiking/Trekking/Ski Socks. These are heavy and hot, but suitable for most water protection. The river crossings were too deep for the socks to be of much benefit in this case except for extra padding. * Nipple protection: Large transparent bandages. * Fuel: HARIBO GOLD-BEARS gummy bears. Each 5oz bag was split into two baggies and enough baggies were carried on each leg to get an influx of ~250 calories every hour between aid stations.\n\nRunning and Training Lessons\nI should test out thicker shoes and thicker socks. My toes and feet were generally fine, one small blister on that was no bother, but the pads of my feet ailed me considerably. I have never confronted such a chafing problem before. I will need to closely examine my shorts and the creams I use and put it all through the wringer by intentionally wetting them prior to long runs. Before running risk of hallucinations I do want to do practice runs to see my sleep deprivation limits. Generally I felt well-enough trained, despite not following through on much of my planned training. I had massively increased the amount of cross-training I did. I started doing hot yoga. I think this helped my breathing considerably (which I used to control myself) and my balance and alignment in my running postures. I also started walking a long route to school with a weighted vest. I think that as well as basic body strength exercises well-prepared me for carrying my vest with water and gear all those miles. Seeing the sores produced on the backs, necks, and shoulders of others, I was very grateful I’d well-tested my vest with race-like weight. Also, the unforgettable Mount Baker Ultra Marathon in June was fantastic training for sticking to even when you cannot move as quickly as you might like.\n\nA Bigfoot-Griffin Tussle\n \nA view of a griffin and bigfoot locked in a tussle.\nThe race director requires entrants to mail a Bigfoot (“can be a live specimen, a picture, stuffed animal, sticker, statue, clothing…just needs to be a Bigfoot”) within one month of acceptance into the race. The items are then used in the award ceremony after the race. We also had to report what animal best represented us and why. I said griffin and claimed it was the sworn enemy of the bigfoot. For my item, I commissioned an artist on Etsy to draw “a sketch of a griffin crushing a bigfoot”. At the award ceremony the runner with the best hallucination story, Jean Beaumont (3rd place woman; 75:54:28), won a framed version of this picture. I no longer think of it as a griffin crushing a bigfoot but rather as a tussle that will continue.\nAll photos by me unless indicated otherwise.\n", "snippet": "\n", "url": "/2017/08/19/the-bigfoot-proof/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "2015-06-11-orange-ribbons", "type": "posts", "title": "orange ribbons", "author": "Daniel Griffin", "date": "2015-06-11 00:00:00 -0700", "category": "", "tags": "[]", "content": "Running the San Diego 100 last weekend provided me hours and hours to reflect on running and life. One particular reflection dealt with signals. The course, one hundred point two miles of trail, much of it rock strewn and technical, went on and off a number of different routes. An hour east of San Diego, it covered ground in Mt Laguna Recreational Area, on the Pacific Crest Trail, Noble Canyon and Indian Creek Trails, Rancho Cuyamaca State Park, and around Lake Cuyamaca. The various twists and turns were largely marked with orange surveyor ribbon. Markers were clustered at intersections of the trail to indicate turns and were also placed along the trail every few hundred yards as confirmation signals that the runner was still on track. Since the course was new to me, I paid special attention to these markings.\nNearly halfway through the race, I was trudging along alone and found myself on a wide dirt access road. Most of the route was on fire trails or single tracks so I paid close attention as the markings indicated a turn onto the dirt road. A few moments later I realized I hadn’t seen an orange marking in awhile and was quite worried I’d taken the wrong turn and would have to turn around - something I was not looking forward to. Instead, I of course increased my pace, frantically searching the trees and bushes along the road for little orange ribbons. I would crane my head to try to spy around a bend as soon as I approached it.\nFinally I did see an orange ribbon and, as often was the case during the race, the orange ribbon provided a special bolstering to my step. Smiling, I focused back on the path I was on and saw etched in the soft dirt before me hundreds of footprints clearly from the runners ahead of me. For the next several miles, until I returned to rocky ground and night fell, I had only to look down and spot the treads before me to be assured I was on my path.[1] We so often focus on only looking for the most official of signals. As we forage for information in search of answers, searching for indicators from these formal signals often dominates the locus of our attention. This can be quite a distraction from the actual goal and can keep us from seeing information we already have ready at hand.\nThis reminded me of an experience in overseas where, attempting to confirm whether an individual encountered on a mission was or was not a person of interest, we frantically searched again and again through our files and databases to see if we had biometric data on this target. If so, having the soldiers on the ground conduct an iris scan would have been simple.\nFrustrated that there was not a clear answer whether we had biometrics or not, I tried checking again the similarity between the photograph of the man on the ground and what we had of our target. They clearly looked similar. Then I noticed the height of the particular person of interest listed on our card. It was quite distinctive and upon radioing down that information it was quickly evident that we did not have our man. So enamored were we with high tech gizmos and formal signals that we had wasted considerable time.\nBut, identifying indicators in advance can be incredibly useful. I’m not sure what to do with these two stories. I do appreciate them, though, and in additional to being amusing, I hope they might encourage me to practice a little more intellectual humility and perhaps some creativity and reasoning from first principles.\n____________________ 1. During the night I discovered a new signal. Urine marks all along the trail from the well-hydrated runners ahead of me were clearly visible by my headlamp on the rocky trails. These runners might never have guessed the joy their expedient urinating brought me.\n\n2019-05-31: I reference these orange ribbons in a recent post: learn how to google trail routes. In the process of writing that post I discovered that Candice has called the clothespin + surveyor ribbon assemblage a “dragon”. Here is another piece, from Dustin Smith, writing about dragons and their role in navigation.\n\nA full write-up from the run—my first 100-miler: \n", "snippet": "\n", "url": "/2015/06/11/orange-ribbons/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } ]; var pages = [ { "id": "tags-1990s-search", "type": "pages" , "date": "", "title": "1990s-search tag" , "tags": "", "content": "{% assign tag_name = \"1990s-search\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"1990s-search\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"1990s-search\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/1990s-search/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-a-quick-search", "type": "pages" , "date": "", "title": "a-quick-search tag" , "tags": "", "content": "{% assign tag_name = \"a-quick-search\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"a-quick-search\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"a-quick-search\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/a-quick-search/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "search-about", "type": "pages" , "date": "2023-06-14 23:22:54 +0000", "title": "search/About" , "tags": "", "content": "\n\nThis page is about search and searching on this website.\n\n\n A seedful and seamful search interface\nMy goal here is to provide interfaces to my website that explore [\"search seeds\"](/search/?q=\"search+seeds\") [@griffin2022situating] and _seamfulness_ [@eslami2016first]. I will try to expose points of interactions, talking explicitly about keywords and queries, suggesting search operators and keyboard shortcuts, and noting how search tools shape questions and content. I will try to see even results-of-search [@mulligan2018rescripting] as seeds for future querying. I will consider how to engage with [null results](\\search\\?q=sklf) and endeavor to support sharing and repairing searches and search. I will situate the searching and search tools.\n\n\n\n## How to search on this website?\n\nSee [search/Guide](/search/guide).\n\n## How does search work on this website?\n\nSearch on this website is partially an experiment/exercise/exploration in using, filling, and explaining gaps in an outdated JavaScript client-side search library: [Lunr.js](https://lunrjs.com/) ([GitHub](https://github.com/olivernn/lunr.js/)).\nThis search function currently ~~only~~ largely provides 'site search', it only searches the pages of this website (except for that content not indexed, indicated below). It does not currently search the content of PDFs hosted on this website.\n\n\n\nAdded {{ \"2023-08-31 11:12:31 -0700\" | date: \"%B %d, %Y %I:%M %p (%Z)\" }}\nNote: There is some minimal support for external searches, see [\"External results\"](#external-results) (below)\n\n\n\nAdded {{ \"2023-10-16 09:49:46 -0700\" | date: \"%B %d, %Y %I:%M %p (%Z)\" }}\nNote: There is also a minimal working example of [FlexSearch](https://github.com/nextapps-de/flexsearch) running: [FlexSearch Working Example](https://danielsgriffin.com/ppost/2023/09/12/flexsearch-working-example.html)\n\n\n\n\n### [Lunr.js](https://lunrjs.com/)\n\n- client-side search\n - The JavaScript files that run this are available for your review:\n - [`js/vendor/lunr.js`](/js/vendor/lunr.js) (the search library)\n - [`js/search/`](/js/search/) (scripts to serve the results)\n- pre-built index: the index is built prior to publishing the website (see [the guide from Lunr.js](https://lunrjs.com/guides/index_prebuilding.html))\n - The JavaScript file for that is available here:\n - [`build_lunr_index.js`](../scripts/build_lunr_index.js)\n - This takes a JSON index of posts and pages ([`item_index.json`](../assets/item_index.json)) to output the Lunr index itself, available here: [`lunr_index.json`](../assets/lunr_index.json)\n\n{% include lunr/timestamp_of_lunr_index.html %}\n\n#### [Lunrish](https://lunrjs.com/)\n\nSee: [/changes/2023/12/11/notes/](/changes/2023/12/11/notes/)\n\n#### noindex\n\n{% include lunr/list_of_lunr_noindex.html %}\n\n#### stopwords\n\nWords not indexed by Lunr.js. These words are not distinguishing when in a query unless it is an exact phrase search (see below).\n\n{% include lunr/list_of_lunr_stopwords.html %}\n\n\n### Exact phrase searching\n\nLunr.js does not directly support exact phrase searching where spaces appear between search terms. Such searching is minimally made possible in an additional function (`exactSearch`) in [`js/search/results.js`](../js/search/results.js) that conducts a simple `includes` check across the documents in [`item_index.json`](../assets/item_index.json).\n\n\n### Sorting\n\nLunr.js does not directly support sorting. It is added in simple bespoke code in [`js/search/results.js`](../js/search/results.js) and [`js/search/serp.js`](../js/search/serp.js). See more at [`sort:` in search/Guide/](/search/guide/#sort-section)\n\n### Autocomplete\n\nThis is written in vanilla JavaScript in several scripts, including: [`'autocomplete.js`](../js/search/autocomplete.js) and [`'suggestions.js`](../js/search/suggestions.js). These scripts manage the autocomplete `suggestions-list`.\n\n#### hand-curated-queries\n\nHand-curated queries () are drawn from Jekyll `site.data.hand_curated_queries` (and include also `hand_curated_query_snippets`). This is accessed in the JavaScript through Liquid syntax. These queries appear as soon as the search bar is in focus.\n\n#### dynamic results\n\nDynamic results () are drawn from searching the Lunr.js index while the query is being formulated. These results appear as soon as one character has been typed in the search bar.\n\n### SERP (search engine results page)\n\n#### \"Exactly # results\"\n\n\nNotice this says \"Exactly\". This is a commentary on the confusion introduced by how Google reports the number of search results. The count of results by Google in its SERP—as interpreted by many searchers—is inaccurate. See [Randall Munroe for an explication on the XKCD blog: Trochee Chart](https://blog.xkcd.com/2011/02/04/trochee-chart/). See also [a longer explanation from Danny Sullivan from 2010](https://searchengineland.com/why-google-cant-count-results-properly-53559)—including Google's suggested justification for no disclaimer—where he shares Matt Cutts saying \"We’ve talked about the fact that results estimates are just estimates for years\" (Note: there is no contextual help to the searcher on the Google SERP that this is the case, despite what [Google's People + AI Guidebook](https://pair.withgoogle.com/) might say about Explainability + Trust).\n\n\n#### hand-curated snippets\n\nThis label indicates snippets (for search results) that are manually written by the author. (These snippets are written directly into the page YAML.)\n\n#### generated snippets\n\n**These snippets may be inaccurate.** Generated snippets are marked with \n \n \n \n \n \n, include a tooltip explainer, and link here.\n\nThese snippets appear in the search results and in the hamburger list dropdown menu (\n \n) on the top left of each page.\n\nI am implementing these to (loosely) explore the processes to develop and maintain them. This label indicates snippets in the search results that are generated by feeding strings of items in the [`item_index.json`](../assets/item_index.json) to OpenAI's 'gpt-3.5-turbo' model with a simple prompt (full code TK, slight modification of prompt for documents that were longer than the context window and so chunked):\n\n> \\# Task\n> \n> Write a search snippet that briefly summarizes the following document.\n> \n> \\# Content\n> {text}\n\nExample of an **inaccurate** snippet, for [search/Guide](guide):\n\n> This document is the official searching guide from Lunr.js and provides syntax for OR, AND, and NOT searches, as well as searching across specific fields. It also includes information on exact phrase searching, !bangs, wildcards, and boosts. generated snippet\n\n#### External results\n\nI'm experimenting with serving some external results, see\n[\ntype:external\n]. If you own the result and do not wish to be included in my index, please tell me.\n\n\n### Similarity\n\nLunr.js does not directly support similarity searching. Similarity is determined here by running [cosine_similarity (from sklearn)](https://scikit-learn.org/stable/modules/generated/sklearn.metrics.pairwise.cosine_similarity.html) on embeddings of the pages across the website (in `scripts/update_similars.py`). The SERP will display the 30 \"most similar\" pages to the page queried. See more at [`similar:` in search/Guide/](/search/guide/#similar-section).\n\n\"Similar\" pages are also listed in the hamburger list dropdown menu (\n \n) on the top left of each page (via `js/similars.js`). Currently the five \"most similar\" pages are listed.", "snippet": "\n", "url": "/search/about/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "about", "type": "pages" , "date": "2023-06-17", "title": "About" , "tags": "", "content": "\n\n\nThis page is about Daniel S. Griffin.\n\n\n\nFor information about this website, see [/Site](/site).\n\n\n\n\n# Brief Bio\n\nDaniel S. Griffin has a PhD in Information Science from the UC Berkeley School of Information. His dissertation, [Situating Web Searching in Data Engineering: Admissions, Extensions, Repairs, and Ownership](/diss), explored the use of web search by data engineers. He was an assistant professor at Michigan State University in Spring 2023. While there he developed and taught a course on [Understanding Change in Web Search](courses/s2023-LB322B). While at UC Berkeley, Daniel co-directed UC Berkeley’s [Center for Technology, Society & Policy](https://ctsp.berkeley.edu) from July 2017 to August 2019. He also worked with both the [Algorithmic Fairness and Opacity Group](https://afog.berkeley.edu/)—where he co-organized [The Refusal Conference](https://afog.berkeley.edu/programs/the-refusal-conference) and shared research on [the interaction between searcher's perception of Google and Google's obligation to respect human rights](/shortcuts/mulligan2018rescripting)—and the [Center for Long-Term Cybersecurity](https://cltc.berkeley.edu/)—where he contributed to [Cybersecurity Futures 2020](https://cltc.berkeley.edu/publication/cybersecurity-futures-2020/), a set of _scenario thinking_ scenarios, and presented them in [a keynote at the 2017 Forum International de la Cybersécurité](https://www.youtube.com/watch?v=NEchfsIGtz4). He completed the Master of Information Management and Systems (MIMS) program at the I School in 2016.\n\n\nPrior to graduate school he was an intelligence analyst in the U.S. Army's 82nd Airborne Division. As an undergraduate, he studied philosophy at Whitworth University. In his free time, Daniel enjoys [trail running].\n\n## Focus\nAdded {{ \"2023-10-04 11:59:25 -0700\" | date: \"%B %d, %Y %I:%M %p (%Z)\" }}\n\n_I love curiosity. I love questions. I love working through ignorance._\n\nI am an advocate for those who search.\nI'm passionate about delving deep into search practices and supporting their evolution.\nI explore the dynamics of our searches, from their initial inspiration to their formulation as queries, buffeted or beset by the search system and those around us. \nI promote a diverse search landscape. One where user context, voice, and choice take center stage.\n\nI remain critical of unfounded claims and distracting hyperbole. Nonetheless, I am deeply interested in how generative search and search-like systems have ignited the imaginations of many.\nI believe we can turn this disruption into something better.\nMy interdisciplinary expertise in situating searching positions me to evaluate, critique, and support the evolution of search systems.\nI aim to ensure search systems can be freely learned, critiqued, shared, repaired, and extended.\n\nWe can find better ways to search than the status quo.\n\n## Contact Daniel\n\nI am available for consulting work and discuss searching with reporters (see here for [media mentions](/media)).\n\nI am available to conduct scoreless peer review of scientific research on topics related to web search practices, search engines, and search-like uses of LLM-based systems, with a particular focus on user perceptions, corporate articulations, societal implications, and ethical considerations.\n\n \ndaniel.griffin@berkeley.edu\nhe/him\n/scholar_profiles | \nGitHub | \nTwitter | \nMastodon | \nLinkedIn\n", "snippet": "

    This is the website of Daniel S. Griffin. Daniel S. Griffin has a PhD in Information Science from the UC Berkeley School of Information.

    \n", "url": "/about/", "snippet_image": "shoulder.jpg", "snippet_image_alt": "Picture of Daniel S. Griffin, Ph.D. holding a toddler on his shoulder.", "snippet_image_class": "circle" } , { "id": "diss-abstract", "type": "diss" , "date": "2022-12-16", "title": "Abstract" , "tags": "[diss]", "content": "When does web search work? There is a significant amount of research showing where and how web search seems to fail. Researchers identify various contributing causes of web search breakdowns: the for-profit orientation of advertising driven companies, racial capitalism, the agonistic playing field with search engine optimizers and others trying to game the algorithm, or perhaps ‘user error’. Suggestions for making web search work for more people more of the time include: regulations aimed at competition or the design of the search interface; changing the conception of, metrics for, and evaluation of relevance; allowing subjects of search queries some space of their own on the results pages to speak back; proposals for public search engines; and better-informed users of search.\nI take a different tack. Rather than focusing on identifying and remediating points of failure, I seek to learn from successful searchers how they make search work. So, I look to data engineers. I closely examine the use of web search in the work practices of data engineering, a highly technical, competitive, and fast changing area. Data engineers are heavily reliant on general-purpose web search. They use it all the time and it seems to work for them. The practical success I report is not determined by some solid ‘gold standard’ metrics or objective standpoint, but by how they have embraced web search and present it as useful and more importantly essential to their work. It is success for their purposes: in gradations, located in practice, and relative to alternatives.\nThrough interviews and document analysis informed by digital ethnography, I use theories from situated learning and sociotechnical systems to explore how and why search works for data engineers. I draw from feminist science and technology studies, the sociology of expertise, situated learning theory, and organizational sociology to explore and position my four core findings.\nFirst, I find that personal knowledge of the technical mechanisms of search plays a limited role in data engineers successful searching. Exploring why and how web search works for data engineers allowed me to probe the role of knowledge about the mechanisms of search. Contrary to dominant literature that views individual ignorance of search mechanisms as contributing to failed searches and search literacy as a necessary, if independently insufficient, path towards mitigating search failures and the harms to which they contribute, I find little evidence that data engineers’ personal knowledge of the mechanisms of search contributes to their successful use of it.\nData engineers receive little formal on-the-job training or mentoring on how to use web search successfully. Data engineers describe web search as a solitary exercise in which they receive little formal guidance. Moreover, data engineers describe web search as a solitary practice. The absence of formal training is surprising given the professions’ admitted heavy reliance on web search. In addition to the absence of formal training, data engineers report little discussion about search practices or collaboration in searching and some discomfort with their heavy reliance. However, I find one form of talk about search, what I call “search confessions”—statements, often hyperbolic, about one’s reliance on web search—to be pervasive and a key way in which the community of data engineers legitimate their heavy reliance on web search and develop and express shared norms about how to use search well.\nSecond, rather than personal knowledge, I find that occupational, professional, and technical components of their work practices contribute to their successful use of search. Expertise embedded in these components of data engineers’ web search practices improve two key search processes: query generation and results evaluation. The work practices of data engineers also decouples the immediate effects of searching from organizational action.\nTo extend the description of successful web search practices, I address how data engineers confront search failure. I look at how they turn to ask colleagues questions when web searching fails and find them performing repair. These sites of coordination and collaboration post-search failure also provide opportunities for broader knowledge sharing and a space to legitimate their work and expertise, both individually and as a profession.\nIf it is normal and acceptable to rely so heavily on search, it may be a surprise that there is so little talk about searching. Data engineers regularly present search as an individual responsibility—they search by themselves or on their own and desire to keep their searching private. This individual responsibility exemplifies the extent to which the firms employing data engineers do not use data from web search activity to better know and control the search practices. My findings did not reveal technology-enabled management of web search practices. I analyze the absence of firm management of search and the solitary and secretive search practices as a product of organizational reliance on data engineers to flexibly learn on the fly. The privacy of search generally protects the resources (time, attention, and reputation) of individual data engineers to pursue the distributed searching and learning on the fly they are tasked with.\nIn the conclusion, I advance two further arguments before developing provocations grounded in the key takeaways. While web searching for data engineering is generally put to successful use, I show how the effective use of web search is supported by and limited to a dependence on the knowledge of others and how uneven access to community norms and knowledge limit who is effective. They key takeaways center on how web search in data engineering is continually re-legitimated; extended beyond the search box and the search results page; did not hinge on personal knowledge of the technical mechanisms of web search; is entangled with notions of responsibility, credit and blame, for knowledge; and the intentional application of technique to influence search activity, did not make an appearance.\nBeing ‘better-informed search users’ for data engineers means being situated in practices around search with embedded expertise and reinforced values that support their uses of web search. For the data engineers I talked with, organizational and occupational factors including the structures of the technology, workplace interactions, and norms—all well outside of and stretching well before and after the moments of typing a query into a search box or reviewing a search results page—make search work.", "snippet": "\n", "url": "/diss/abstract/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-academic-search", "type": "pages" , "date": "", "title": "academic-search tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"academic-search\" tag.\n \n\n\n{% assign tag_name = \"academic-search\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"academic-search\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"academic-search\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/academic-search/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "diss-acknowledgements", "type": "diss" , "date": "2022-12-16", "title": "Acknowledgements" , "tags": "[diss]", "content": "I would like to thank my committee for their support throughout this process and for seeing me through to the finish. Thank you to Deirdre Mulligan for inviting me to look at web search back in 2016. Now I cannot stop looking. I am extremely grateful for your support for my curiosity and for your example of how to do research that impacts society and mentor new scholars to do the same. I deeply appreciate you reading through so many rough drafts, engaging with my ideas in their formative stages, and for showing me I could do better. Thank you, Deirdre, for shepherding me over the finish line. Thank you to Steve Weber for so many rich conversations as I started my PhD and for helping me formulate my questions and consider why they matter. I still regularly go back to meeting notes from years ago. Thank you Jenna Burrell for your guidance in methods, especially for letting me participate in the Twitter paper research, and for your constant enthusiastic encouragement. Thank you Marion Fourcade for joining me on this journey. Thank you for your close attention and for the many suggestions to connect with the literature, both the old and brand new.\nThank you to my research participants who willingly talked so much about this thing that people are hesitant to talk about. Please consider this dissertation an offer to talk again. Thank you also to the many friends and classmates who helped connect me with people to talk to.\nI’m grateful for the feedback and support over the years in the Doctoral Research and Theory Workshop. I received feedback in 2019 on an initial sketch of this research in a prototype idea session and then later a draft proposal at (which at the time I called “Shaping the shop floor: characterizing coder (re)search labor within cognitive assemblages”)1. Thanks to Coye Cheshire for showing us how to practice with care to our work and care for each other.\nThank you to Jake Goldenfein for keeping our paper going across the years and around the world, and thank you Sebastian Benthall for connecting us (and for our conversations).\nSpecial credit for so much of this research and my development as a researcher goes to Anne Jonas, Richmond Wong, Elizabeth Resor, and Emma Lurie. You’ve helped me think through and write through so many questions and dilemmas, across Slack, Zoom, and Twitter direct messages. The requests for help with a search or a citation were always met with more than just an answer, but connection and support. Thank you Anne and Elizabeth for the weekly calls. I’m glad they will continue. Thank you Richmond for always appreciating my speculations and for helping me explore new literatures. Thank you Emma for taking a chance on the side project, it was incredibly enriching to work with you and generative for this dissertation.\nThank you to the rest of the folks at the School of Information who have made this adventure so rewarding. Thank you to the other faculty members. Thank you to Anno Saxenian for your example of scholarship and service. I’m grateful for Marti Hearst’s foundational work on web search. Particularly grateful to Paul Duguid for his deep engagement with scholarship and all of us students, particularly his mentorship in Classics and such supportive feedback on papers and chapters. His published work was also always a constant guide and inspiration.2Thank you Bob Glushko for all your personal encouragement. A big thank you to the staff at the School of Information, especially Catherine Cronquist Browning, Inessa Gelfenboym Lee, Kevin Heard, Gary Lum, and Jonathan Henke. Thank you Caitlin Appert for the retweets. I’m grateful for the chance to participate in the Center for Long-Term Cybersecurity, the Algorithmic Fairness and Opacity Group, and the Center for Technology, Society & Policy.\nI’ve been at the school too long to name everyone who has played a role in shaping my journey and this research but I’m so grateful for the community, and particularly the reflexive and intentional approach of the PhD students who came before and have come after. Thank you to Nick Doty for his constant example. Thank you also to Galen Panger, Noura Howell, Elaine Sedenberg, Jen King, Nick Merrill, Sarah Van Wart, and Andy Brooks for showing the way. Thank you to the cohort ahead of me for your friendship and your example of mutual support—Anne Jonas, Max Curran, and Shazeda Ahmed. Thank you Andrew Chong, Jon Gillick, Nitin Kohli, Guanghua Chi, Jeremy Gordon, Zoe Kahn, Doris Lee, Ji Su Yoo, and Sijia Xiao for the conversations and companionship. (Thank you to Mike Berger for conversations over runs that encouraged me to see myself applying to the PhD program.) Thank you also to the many other students and classmates over the last several years who I cannot wait to thank in person, especially to Vijay, Andy, Nikhil, and Anand.\nI must also thank the National Science Foundation for supporting Grant #1650589 which funded some of my studies, along with the GI Bill (which I will take this opportunity to note was racist in design and effects (Katznelson, 2005)).\nAs you will see in the dissertation itself, searching and asking questions is a massively collaborative project, with much collaboration of the sort that sadly escapes notice. I cannot possibly name all those scholars I’ve interacted with on social media and who have been so welcoming. I’m so thankful for the interactions with and examples set by Safiya Noble, Francesca Tripodi, and Jutta Haider. Online and off, I’m grateful to the many people who have provided search terms, provided the inspiration and impetus to search, asked why these questions mattered, and helped evaluate what I was finding from my own searches. I’m sure I am forgetting others who deserve credit. I must take the blame, though I hope you’ll take away something about blame from this dissertation.\nThank you to my friends and family for your constant encouragement and for entertaining my constant questions about how you searched the web. Thank you Andrew Reifers for being there and for talking with me about my fascination with search. Thank you Rhonda Griffin for showing a willingness to ask questions and always supporting my curiosity.\nMost of all, I’d like to thank Emily Witt for such tremendous support. This would not have been possible without your help. Encouraging me and talking me through every stage of this research, teaching me so much about how to ask questions and listen, and always a model of a thoughtful champion of careful purposeful research and our shared responsibilities. You shaped my questions and conclusions. Thank you for all the proofreading and brainstorming these last several weeks. And thank you for taking over more than your share of bath times, bed times, diaper times, and dishes these last few months. You inspire me and make me better. Thank you Wilder for your curiosity and Otis for joining me in the baby carrier for late night writing sessions.\n\n Bibliography\n\n\n\nElish, M. C., & Watkins, E. A. (2019).Algorithms on the shop floor: Data-driven technologies in organizational context. https://datasociety.net/library/algorithms-on-the-shop-floor/ \n\n\n\nKatznelson, I. (2005).When affirmative action was white: An untold history of racial inequality in twentieth-century america. W.W. Norton & Company.\n\n\nLave, J., & Wenger, E. (1991).Situated learning: Legitimate peripheral participation. Cambridge university press. https://www.cambridge.org/highereducation/books/situated-learning/6915ABD21C8E4619F750A4D4ACA616CD#overview \n\n\n\n\n\n\n\nI had directed the proposal towards a call for papers for Data & Society’s Algorithms on the Shop Floor Workshop (Elish & Watkins, 2019). I was not selected as a research participant—sharing this as praxis—but am grateful for how the call shaped my research and for the papers workshopped that I have cited below. ↩︎ \n\n\n\n I cannot help but note Paul’s name in the Acknowledgements of Lave & Wenger (1991)—“that rare colleague whose editorial involvement became akin to coauthorship” (p. 26)—, a central building block for this dissertation. ↩︎ \n\n\n\n", "snippet": "\n", "url": "/diss/acknowledgements/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-actual-use", "type": "pages" , "date": "", "title": "actual-use tag" , "tags": "", "content": "{% assign tag_name = \"actual-use\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"actual-use\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"actual-use\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/actual-use/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-admitting-searching", "type": "pages" , "date": "", "title": "admitting-searching tag" , "tags": "", "content": "{% assign tag_name = \"admitting-searching\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"admitting-searching\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"admitting-searching\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/admitting-searching/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "diss-admitting-searching", "type": "diss" , "date": "2022-12-16", "title": "3. Admitting searching" , "tags": "[diss]", "content": "\n Now scientists everywhere use the air pump, say, or the electrophoresis gel without thinking about it. They look through the instrument the way one looks through a telescope, without getting caught up in battles already won over whether and how it does the job. The instrument and all of its supporting protocols (norms about how and where one uses it, but also standards like units of measure) have become self-evident as the result of social processes that attend both laboratory practice and scientific publication. (Gitelman, 2006, p. 5) \n\n\n\n Sometimes I just wonder, like, who taught them how to search? (Victor) \n\n“To be frank I’ve like really never thought about it myself even though it’s kind of like 90% of my job to just like look up things.” That is what Amar told me at the start of our interview. To a certain extent the data engineers use web search without thinking about it. “It is kinda like breathing” (Phillip), “something that people maybe take for granted” (Lauren). So how then do they learn to search at work?\nThere is very little explicit instruction on web search practices in the data engineering workplace. Despite it constituting a significant portion of their work, not only are data engineers not taught how to search the web, they are also not evaluated directly on their search performance. While there are a range of onboarding processing and mentorship models, generally only in the earliest stages of their careers are new data engineers offered any direct advice about how to search or told how more experienced data engineers do so. Even at this early stage, advice and insight is sparse. Furthermore, data engineers rarely discuss their search queries, search result evaluation processes, or how they reformulate queries or follow threads in pursuit of an answer, what I call “search talk”.\nThere is little opportunity for data engineers to directly observe or participate in other data engineers’ searching. Its form–a small box on a terminal designed for individual use–affirms search as a solo act. In the absence of formal training, limited professional discussion, and a form factor that limits observation, one might predict that web search for data engineering, like learning to program a VCR, may be difficult to learn, as compared to “a fundamentally social practice” like learning to drive a car (Brown & Duguid, 1996, p. 51).\nThe analytic of legitimate peripheral participation (LPP), however, helps identify where data engineers are provided opportunities to participate and learn what it means to effectively use web search as a data engineer. Modifying Beane (2019) ’s concept of shadow learning, “a set of practices in the shadows outside the legitimate peripheral participation typical of the literature on communities of practice” (p. 91) I locate participation and legitimacy in how search is admitted: “search confessions”—the self-deprecating or hyperbolic remarks data engineers make about their extensive reliance on web search and their web searching practices (the topic of this chapter) and the occupational, professional, and technical forces that explicitly and implicitly structure search practices (discussed in chapters 4 and 5).\nIn the absence of formal training or apprenticeship, “search talk”, or even visibility into the successful search practices of other data engineers, data engineers collectively wrestle with and affirm the appropriateness of their reliance on web search through “search confessions”. At face value “search confessions” appear to be jocular, off-the-cuff jabs at the profession’s reliance on search. However, in practice they affirm reliance on search—acting as informal search approbations. In conjunction with “search confessions”, the absence of “search talk” further affirms the implicit acceptance of such heavy reliance on web search while also marking searching practices as private and generally and appropriately free from remark and appropriately protected from direct scrutiny. Search confessions are a site of legitimate peripheral participation, by exposing new data engineers to the constant process through which reliance on search and norms about its use are constantly negotiated, re-made and affirmed. While data engineers do not directly engage each other in the moment of searching, their web searching is informed by this confessional talk about search. Rather than being directly taught how to form and reform queries or how to evaluate and course correct, I find that through confessions about and around search and silences about exactly how to do it (“search talk”) data engineers learn how to search.\nThe reliance on search confessions to normalize the use of search and, to some extent, train and educate data engineers about effective and legitimate use of web search in work practice comes at a cost. It presents barriers to those marginalized in technology work today (discussed in chapter 6).\nThe next section looks closer at the LPP literature, focusing on learning in the shadows. This is followed by a presentation of my empirical findings and analysis. Then I discuss implications for our understanding of LPP and re-situate this chapter within the dissertation.\n The LPP analytic\n \n\nLave & Wenger (1991) claim that: “Learning viewed as situated activity has as its central defining characteristic a process that we calllegitimate peripheral participation ”44 (p. 29). This concept is the outgrowth of their desire to write about apprenticeship and their phrasing highlights that learners “inevitably participate in communities of practitioners” and success in learning requires learners to “move toward full participation” (p. 29).\n\n\nThey propose the concept of legitimate peripheral participation to describe “engagement in social practice that entails learning as an integral constituent” (p. 35) The “central preoccupation” of their book “is to translate this into a specific analytic approach to learning” (p. 35). Cautioning against decomposing the concept into three components, they write that it is “to be taken as a whole.” (p. 35) That is, there is not an illegitimate peripheral participant that learns and so challenges the theory, but rather the sort of legitimacy of participation will shape what is learned. Similarly, peripherality is about the “ways of being located in the fields of participation defined by a community” (p. 36). They suggest these “ambiguous potentialities” provide “access to a nexus of relations otherwise not perceived as connected” (p. 36) offering a new and distinct “analytical perspective”.\nOver the last 30 years LPP has been widely applied. John Seely Brown and Paul Duguid popularized it, also in 1991 (see Contu & Willmott (2003) , p. 283). Other work on LPP includes Brown & Duguid (1991) , Orr (1996) , Brown & Duguid (1996) , Brown & Duguid (2001) , Contu & Willmott (2003) , Bechky (2006b) (referring to both Bechky (2003) and Bechky (2006a) ), Duguid (2008) , Takhteyev (2012) , and Gasson & Purcelle (2018).\n Learning to be a googling data engineer\n \nThe LPP analytic lens helps direct attention to interactions between data engineers, to learning opportunities and participation. While direct participation in the moment of searching is rare (the data engineers rarely “pair search”, even though some may pair program), participation in data engineering work practices provides opportunities for participation in the larger search practices. Data engineers do not have formal training in search. They do not collaborate at the search box or on the SERP. So I considered talk.\nTalk is a key element of participation. Partly through talk, stories and jokes, people construct shared understandings of the work and their identity. This is seen in Orr (1996). Orr finds that “[n]arrative forms a primary element” of the practice of photocopy repair technicians [p. 2]. Talk is “instrumental”, stories and conversations circulate knowledge of machines, customers, and the task of diagnosing and fixing problems. It also shapes identity, the technicians “tell tales to establish their membership in the community” [p. 142].\n Search talk?\n \nFirst, data engineers say they don’t talk about it.\n Don’t talk about it\n \nThere is limited explicit instruction. In the interview with Ross, after we talked about the various sorts of places he would search at work, he said the following in talking about on-boarding a new hire:\n\n I probably had a brief conversation with them. That was, you know, five sentences that summarized what we’ve already talked about. ’You go to the web for this kind of stuff. Go to the wiki for this kind of stuff, and Slack for this kind of stuff. \n\nAmar had recently started on-boarding for a new job after several years at a previous company. He had been successful there, rising to a technical leadership role within his team.\nMidway through the interview I asked Amar: “Are you talking with your team about the searches you’re doing? When they join your team are you saying: ‘Here’s my process for searching. This is what you should do.’ Or?”\n\n Um, I think, that’s an interesting question. [pausing and proceeding slowly at first] I don’t believe I’ve ever done that except for… except with one engineer and the reason why I did that with that engineer is that was an intern and they were not very— That person was an intern who joined [the company] full-time but they didn’t have a lot of professional work experience outside of internships. \n So they were a fresh grad, fresh out of undergrad. For them, because they didn’t have a dedicated process—and it wasn’t me going out of the way, because I’d never prescribe that this is how you should do it—But they kind of were ‘Hey, every time I have a problem I have to like, like do a couple of Google searches and if I can’t find anything I have to come to you and then you, even if you don’t have an answer immediately you pretty much find it, find resources pretty quickly, how? So what do you do?’ \n And then that’s when, that’s the only time I kinda said, hey this is my process and this works for me [emphasis from interviewee] but outside of that engineers don’t really—at least in my experience or at least within my team—will not explicitly discuss their process. \n\nFollowing up, saying:\n\n I don’t think I’ve actually talked with the team, but maybe I should, as like a personal note. [ . . . ] it is just part of the job that usually not very apparent unless its like very very inexperienced engineers. \n\nPair programming (working together on the same code at the same time either next to each other or remotely) might be a place where searching is talked about. While the data engineers I talked to generally did not practice pair programming45 , those that did generally reported searches being hidden and not discussed.\nChristina said there is less pair programming in data engineering than elsewhere, but said, “If I were pair programming with someone and I was sharing my screen I would have a tendencies to pull up my search on a separate screen.”\nLikewise, Megan said:\n\n I’ll notice people turn off sharing when they switch to searching, and then they’ll find something and turn sharing back on. …a lot of stuff people are really interested in collaborating on, but search is very private. It is something you go do and then you come back and share the results of your search… \n\nRoss said that if he were doing a screenshare with a colleague on one of his screens and had to look something up he’d open a new tab in the other screen, not shared, and do his search, saying “I don’t think I’m the only one like that.”\n Submerging of web search\n \nSecond, there is asubmerging of web search itself in talk nominally about web search. Even interactions that interviewees would describe as being about searching the web were not directly so.\nHere is a response from Sameer, as we were talking about mentoring interns or new college graduates, when I asked him for an example of “politely suggesting googling”:\n\n I’ve realized that schools, depending on which program you go to, computer science majors, have a lot of theoretical knowledge. Graduates will have knowledge about distributed systems, algorithms, data structures, but then actually coming to a company and writing code is different. So there’s a lot of guidance and mentorship around that. And obviously if the intern or new college graduate does not have experience in industry then sometimes I do think we need to, politely, point them to search—‘Hey, have you tried googling it? Because it seems like a very simple thing you can find yourself.’ \n But I think sometimes people, when they are stuck in that rabbit hole it is a very thick forest. When you are googling things you can hit one web page and be like ‘oh, I don’t know what this means’ and then go to a second line and “oh I don’t know this is either!” and suddenly you’re learning about quantum physics, right? [laughter] So, so, very far away from what you started out with. So you kinda need to understand what to Google, where to stop, and where to just ask someone for help. \n\nI asked a follow-up: Can you recall any of those conversations or times when you politely suggested googling?\n\n So the way I do this is by, one of the easiest ways to do this, is just to send someone a Stack Overflow link and go, ‘oh hey, someone already answered this question. Here you go.’ And I hope they read between the lines, ‘I should be googling this.’ \n If I don’t send a Stack Overflow link and I’m just solving the problem for them then I will definitely have a one-on-one and have a conversation, ‘OK, this is how you should be solving it.’ I totally get that this [answer to the question asked] is not common knowledge. But I hope that the intern or new college graduate can read between the lines. I don’t want to have a conversation with anyone saying ‘did you try googling this yet?’ It’s not very polite, I feel. \n And most people pick it up. It is very rare that someone would bother me with something easily queryable again and again. \n\nSameer presented this story of sharing a link (that he had found by searching) as an example of politely suggesting googling. He made no mention of googling or web search in his description of what he explicitly communicated to his colleague. The use of the web search tool itself is kept below the surface.\nThe coworkers in this example avoid mention of web search. This sort “tactful inattention” (Goffman, 1956, p. 147) reproduces boundaries or norms around whether or how the tool is mentioned itself.\n Speculating on how junior engineers learned to search\n \nThird, there is speculation about how junior engineers learned to search. This demonstrates further the lack of formal instruction on search.\nVictor, one of the data engineers who reported their team regularly pair programmed, described working with a junior colleague:\n\n One thing that I find like when I pair program with more junior engineers is the way they do the query searches is very different than I would approach it. So, they’ll just ask me, they’re like: ‘Um, how do I run this command in docker.’ It’s like, I don’t know. What— Like let’s— I don’t know. Like do you think I just memorize it? No. Let’s, let’s Google it. And their search: [docker [command]] \n Do you think that search is going to get the answer you want? How does that even happen? ‘Well, what would you search?’ Let’s just repeat the question you asked me and type that into Google. Sometimes I just wonder, like, who taught them how to search? I remember being in like 5th or 6th grade and having a class about how to do web searches. I guess that’s something not everyone does anymore \n\nThis speculation highlight the lack of visible formal search education in the workplace—made visible here in a collision of generational perspectives, perhaps. Sundin (2020) studied how older youth in Sweden use general-purpose search engines. He found that “search engines almost never seem to have been a visible information infrastructure for the current generation of teenagers” (Sundin, 2020, p. 378).\n Talk about search\n \nMore broadly, these comments and stories from interviewees point to how search is multiply and complexly hidden. Search talk is absent partially because search has, for many interviewees, become infrastructure—habit and routine, “like breathing.” It is also avoided because of the sensitivity developed from what it might reveal or suggest about one’s own or another’s knowledge, or lack thereof (the secrecy covered in the final analytical chapter, Owning searching ). But, it may also be a tacit “action-centered skill” (Zuboff, 1988, p. 186) , knowledge or knowing that “cannot be put into words” (Polanyi, 1967, p. 4).46\nZuboff (1988) writes of how a richly textured tacit skill, is “deeply embedded in crisscrossing relationships, and too continuous to be captured in a verbal description” (p. 187). It is likely, Zuboff writes, that “attempts at explication of such tacit knowledge must always be incomplete. The knowledge is too layered and subtle to be fully articulated. That is why action-centered skill has always been learned through experience (on-the-job-training, apprenticeships, sports practice, and so forth)” (p. 188). Even if it were that explication of tacit knowledge about search activity is always incomplete and could not be fully articulated, that does not mean explication couldn’t be useful and wouldn’t be tried. But the difficulty of communicating tacit knowledge may multiply the sensitivity in talking about searching. If attempts to discuss it themselves seem to indicate some lack of self-awareness or inability to communicate. But in this case it isn’t just that the data engineers don’tverbally share their search activity, they don’tmaterially orexperientially share their search activity either. The data engineers do not join together in the action in the search bar or on the search results page.\nThe search activity itself seems relegated to (or reserved for) the backstage. As Goffman (1956) writes (p. 69):\n\n A back region or backstage may be defined as a place, relative to a given performance, where the impression fostered by the performance is knowingly contradicted as a matter of course. There are, of course, many characteristic functions of such places. It is here that the capacity of a performance to express something beyond itself may be painstakingly fabricated; it is here that illusions and impressions are openly constructed. \n\nCertain impressions of an individual’s knowledge or knowing, impressions necessary for data engineers to engage as experts in workplaces that conceive of knowledge as something possessed by and the responsibility of individuals, are developed in a protected backstage.\nBut they do talkabout search —spotting examples of such talk led to my interest in studying this site. Even though they do not engage in “search talk”—discussions about what they input into a search box or how to parse the results pages—they talk about search. They discuss searching and the motivations behind searches although the searches themselves go unmentioned or are only subtly implied. This talk about search shapes their understanding of acceptable use of search. Here I will focus on confessions data engineers make about their use of web search. Repairing searching , the fifth chapter, discusses another space where data engineers talk about search, sharing about and fixing failed searches.\n Search confessions\n \nData engineers profess to making extensive use of web search at work. I expected such professing given my initial experience leading to this research. I did not expect, though, the forcefulness and apparent hyperbole and overgeneralization in these statements from the data engineers.\nAt the start of our conversation Amar laughed as he said, as though revealing some embarrassing secret, “it’s kind of like 90% of my job to just look things up.” Christina chuckled, saying “probably 90% of my job is Googling things.” Ross, likewise, said, “it’s a large part of my job.” Over email while scheduling the interview, Vivek wrote: “Web Search is a part of everything I do.” Noah said, “I consider it a core of doing my job.”\nI call these search confessions. Search confessions are, often self-deprecating or hyperbolic, statements about one’s reliance on web search. Many of these confessions are delivered as though admitting something somewhat shameful, of something that others may find wrong or weak. Sometimes the confessions accompany a statement that there is nothing to be shameful about. Search confessions are statements that individually admit of a reliance on web searching and collectively admit the practice of searching for work into the work practices of data engineering.\nThese statements mirrored those that started my research, both the initial tweets and the subsequent blog, forum posts, tweets, and TikToks I later found. A key difference being that the above examples were directed to me and not to a general audience of peers or fellow community members.\nMegan, talking of how people will admit to searching but not share the searching itself, shared:\n\n People who are all on board for ‘do your work in public’, ‘show your mistakes’, will still keep hidden the specific process of searching. That is something that they’re not as eager to share. There are a number of people who say searching isn’t bad, we all do it all the time. But it still feels somewhat shameful. I don’t know what that is about. [ . . . ] Um, um, and they’re not, they’re not even like hiding it necessarily. They’re like, they’ll say like, oh, I’m just going to look this up real quick and pop it in, but they still do it in a separate window. See even if they’re not trying to like, deceive about the fact that they’re searching, they don’t want the process of searching to be visible. Which I think is interesting. I don’t know. \n\nChristina is a data engineer working as a consultant helping external clients with her company’s enterprise software tools. I asked about her initial reaction to hearing about the research topic and she said, “That probably 90% of my job is Googling things,” and chuckled. She laughed when I told her that I wanted to know why everyone says 90%. She said, “because it’s the majority, and it’s not just the majority. I wouldn’t go 50%, 60%, its like I can barely think of other things I do.” Then, through laughter: “Meetings. And meetings. But I multitask so even while I’m in a meeting.”\nAt the close of the interview I asked for any final reflections. Christina said:\n\n It was interesting because I hadn’t connected the way I search day-to-day with our whole company initiative for developer experience. [ . . . ] So it makes a lot of sense, that while I am not often searching, googling, company-specific things, I wish I could but the answers aren’t there. \n I guess my 90% I said at the beginning is actually pretty wrong because I probably spend a lot more time asking people questions than asking the internet questions. \n\nIn a follow-up member check interview I told Christina how I had identified and described search confessions. She said, “Yeah, yeah. This is completely coincidental,” and went on to share that her IP address (working from home) had recently been blocked by Stack Overflow.\n\n I screenshotted the other day that Stack Overflow blocked my IP address because I sent too many requests. I screenshotted it and sent it to our team Slack channel. So it was kind of an acknowledgement of ‘oh, look, this is kind of embarrassing I’ve asked too many questions.’ My team is three people. We all know we ask a lot of questions, so it’s not shameful.47\n\n\nAt the close of the follow-up with Christina, I apologized for running so long over our planned meeting time and she replied, laughing: “No, that’s OK. I’ve needed a break from searching.”\nComments and jokes about Stack Overflow offer another means of confession. Recall Noah, who said he wasn’t “the greatest googler of all time”, and that if he found out that some of his coworkers were searching the web a lot less than him, he would “actually wonder if they weren’t doing their job as effectively as they could.” When I asked him about Stack Overflow memes he shared that he has a laptop sticker that says “Copying & Pasting from Stack Overflow”. He mentioned the sticker again a year later in our follow-up member check.\nJane, an analyst working with data engineers at a prominent social media company, shared that the IP address at her company was blocked intermittently by Stack Overflow for a couple months. When it was blocked, engineers would gather on a page explicitly for memes and jokes, asking facetiously who was using it too much or joking that it must have been their individual fault for searching too much while trying to fix a bug. She mentioned Stack Overflow being blocked at her company to her friends, telling them not to have imposter syndrome because nobody knows what they are doing.\nJillian shared a story of joking among colleagues about surveillance productivity software:\n\n One time we were joking about these different productivity surveillance tools that some companies use, for working from home environments specifically. They might take a screenshot of what you’re looking at on your monitor. \n And I was like, “oh, I would hate that because I’d be working but it would show that I’m like googling ‘what is a computer’ or like something rudimentary.” \n And then, but we, everyone on my team was kind of joking about things like that, you know, just like talking about looking up, you know, this page for ‘explain it to a kindergartner’, whatever. \n\nThese search confessions serve multiple learning purposes. The confessions ritualistically provide a space for community members to affirm their commitment or conviction to this way of being an expert. Search confessions at once open up web search practices to challenge and create iterative openings for the community to foreclose potential threats to professional identity used by this general purpose tool through collective affirmation. Posted on blogs, forums, or Twitter, search confessions like the “Copying and Pasting from Stack Overflow” sticker on Noah’s laptop or the “I HAVE NO IDEA WHAT I’M DOING” dog meme48 , both mock and validate the data engineering community’s reliance and dependence on web search. Confessions acknowledge and celebrate the difficulty of their work, constantly at the edge of the field or juggling far more (constantly changing) information than might seem possible.\nParticipating in these confessions is part of the ritual of these search-reliant fields. The rituals introduce and admit new members to the community and facilitate interactions between members. Borrowing from (Goffman, 1956, p. 121) , we can identify search confession is “unofficial communication” that “provides a way in which one [data engineer] can extend a definite but compromising invitation to the other”, through this sort of “‘putting out feelers’”, a “guarded disclosure.” The confessions legitimate web searching and allow data engineers recognize each other’s shared orientation towards search and drop pretense. Goffman goes on to write:\n\n By means of statements that are carefully ambiguous or that have a secret meaning to the initiate, a performer is able to discover, without dropping his defensive stand, whether or not it is safe to dispense with the current definition of the situation. [ . . . ] it is common for colleagues to develop secret signs which seem innocuous to non-colleagues while at the same time they convey to the initiate that he is among his own and can relax the pose he maintains toward the public. \n\nThese search confessions are a sort of secret sign. LPP identifies learning not as absorbing facts, but “deploying through practice the resources [ . . . ] available to you to participate in society, a process [ . . . ] inseparable from the development of a social identity” (Duguid, 2008, p. 3).\nConfessions are not admissions of deviance, though they acknowledge a felt-deviance. They are ritual acts designed to elicit assurance and renew the shared conviction to the norm of reliance on web search. It affirms that this search work—‘just’ turning to a general-purpose search engine, which seemingly anyone could do—is the work of the field. These confessions thus legitimize search work and the status of the searching worker as a data engineer. They are little openings for the field to reiterate and maybe rearticulate not only what their work is, but also jurisdictional claims.\n Discussion: Opportunities and challenges in confessions\n \nIn the place of search talk we find search confessions. The LPP analytic makes search confessions visible, making it possible to see constituent elements of learning, shared and accepted practice. Though recurrently achieved & reproduced, these confessions are informal. The informality with which this community approaches learning to search presents opportunities and poses challenges.\n Searching for opportunities\n \nFirst, the informality and ambiguity of admitting search through search confessions keeps open space for maneuverability—the uses of web search engines are kept open to be adjusted as changing circumstances may dictate. As a general strategy, web search is used in data engineering in order to manage uncertainty. This is discussed at length in the fourth analytical chapter, Owning searching , but the fundamental point is that firms have delegated responsibility to individuals to “keep up” (Kotamraju, 2002) and engage in intensive self-learning (Avnoon, 2021). These confessions are not moves of “rhetorical closure,” their confessional frame isprobative, serving to test or try, notdispositive, serving to close or finish. The form of legitimation, a confession, keeps open some “debate and controversy” ( The Social Construction of Technological Systems, 1993, p. 111) about the use of the tool itself.\nPulling in the language of Handoff, the widespread and ritualized confessionsengage individual data engineers to perceive that relying on web search is acceptable and encouraged. The perceptions of affordance are not guaranteed. We could consider alternative modes of admitting search into the professional work of data engineers that may provide more closure, but that would also do more to stabilize the search practices and make them potentially brittle as technologies and problems in the firm’s context change. Firms could record and rate searches, building in explicit incentive structures or technologies to manage or motivate web searching in the workplace. Imagining how these modes might engage data engineers, with force or potentially leading to exaggerated perceptions of constraint and affordance, highlights the flexibility of the search confessions.\nSecond, the confessions bring attention to norms and remind data engineers, especially those full-fledged members, that here searching is appropriate. Even though searching is solitary and secretive it is admitted as appropriate for data engineers in the confessions. Rather than norm-constrained or norm-defying, the norms of search use are reproduced and improvised as the occupational community makes jurisdictional moves (and distinguishes their norms from the faulty reliance on search decried by critics in school settings or elsewhere in society). The confessions acknowledge a felt-deviance of searching in the shadows but assert their searching is different and necessary. The search confessions perform part of what Orr (1996) discussed of stories and narrative. The confessions, sometimes humble-like, can also be hedging practices, a way to protect themselves from being judged for not knowing something on the spot. And confessions can be used, much like Orr’s technicians’ stories, for pointing to the sheer difficulty and variety of things they must think about and understand, even if the data engineers don’t hold all this knowledge immediately in their head.\nTo see the benefit of the confessions, compare “shadow learning” that is not confessed. In his doctoral research at the MIT Sloan School of Management, Matt Beane studied the learning of and use of surgical robots ( (2017) ) under the supervision of Wanda Orlikowski (with Katherine Kellogg and John Van Maanen on his committee)49 . He explored “productive deviance”, where “norm- and policy-challenging practices that are tolerated because they produce superior outcomes in the work processes governed by those norms and policies”. He was particularly focused on the deviance amidst “significant technical reconfiguration of surgical work”.\nBeane’s dissertation reviewed deviance in organizations, the history of productive deviance in the surgical profession, and then turned to two empirical studies on robotic surgery. The first will be discussed here. The study looks at how few surgical residents became confident and competent in the robotic surgery methods. He focuses on the barriers to such learning and shows how those who did learn did so through norm-challenging practices that he calls “shadow learning.”50\n\n\nBeane (2019) presented shadow learning as norm-challenging practices that work around constraints of efficiency and liability pressures. The work of learning to be a web searching data engineer, often done in the shadows, is a distinct type of shadow learning. Efficiency pressures in data engineering have the effect of increasing reliance on the use of the web search tools, in the shadows and seemingly by individuals isolated from others. Liability pressures in the data engineering organizations appear to produce a distinctly different effect than that found by Beane. Beane found hospital concerns about liability keeping trainees from realistic training. Rather than liability pressures removing training opportunities, liability pressures in data engineering encourage various responses that surround and manage the contributions of new trainees.\nThe liability pressures, the regulatory or contractual constraints and incentives engaging other components within the systems of the data engineering organization, ground the structuring of the data engineering work practices generally, and so also the web search activity. When veteran data engineers write code it is generally reviewed in some manner and tested before production. Code from new entrants goes through the same processes of review and controlled deployment. Systems established for addressing liability in data engineering allow junior data engineers to participate deeply in many aspects of the work. The data engineering work is organized in such a way that many errors made by individuals are caught and repaired in the normal functioning of the system. This includes errors potentially introduced from web searches.\n Finding challenges\n \nFirst, the search confessions are not discriminating. They do not identify the sorts of web searching put to successful use within data engineering. The web search practices of the data engineers are refined or adapted for searches related to the data engineers’ core work tasks. There is an operating envelope for such searching, “a range of adaptive behavior” (Woods, 2018, p. 435). Data engineer’s use of web search for other sorts of tasks may not work so well, even for work-relevant searches if they fall outside the operating envelope. As the next chapter shows, occupational, professional, and technical components structure the selection of inputs and the evaluation of search results. This structuring is particularly well-directed towards concerns central to the responsibilities of the data engineer and aligned with the core interests of their firm or profession.\nSituated in and shaped by larger and longer data engineering work practices, these practices for web search generally recede from view and avoid explicit attention. Web search, as an information infrastructure, is often transparent or invisible (Haider & Sundin, 2019).51 The invisibility or ‘taken-for-grantedness’ of search reflected by my research participants is a key feature of infrastructures.52 The occupational, professional, and technical components of the work of data engineers come together to form an infrastructure for search that generally escapes their notice. The data engineers acknowledged they had “never really thought about it” or that searching was “kinda like breathing.” This role of the structuring and liability pressures are themselves taken-for-granted. They are absorbed within the larger infrastructure of data engineering work, becoming transparent. Search confessions do not distinguish those searches that are likely supported or not, thus there is a risk in encouraging uncritical searching outside the firm’s “sensing routines” (Carlo et al., 2012, p. 870).\nSecond, with the appropriateness of search constantly questioned and affirmed only informally, those more on the periphery—marginalized within technology work or newcomers—are left with few signals about the appropriateness of search. These confessions are honest, if not a full accounting of data engineer web searching. But they are also humorous and so by design could be misread by those not fully included. In her ethnography of Debian developers, Coleman (2012) writes that humor “gets us closer to the most palpable tension in the hacker world—that between individualism and collectivism” (p. 92). She discusses humor in-depth in one chapter53 , defining it as “a play with form whose social force lies in its ability to accentuate the performer, and which at times can work to delineate in-group membership” (pp. 103-104).\nMisreadings of the search confessions may lead to a misaligned under-reliance on search or over-reliance on search alone (rather than searching facilitated by conversation with others about questions and failures). Those who are already fully participating may actually find it easier to search, and may search more and more effectively because they do have more domain knowledge and are more fully situated within organizations and the field so as to better inform their search queries and evaluation. This may slow or reduce learning opportunities for those already on the periphery and, at the extreme, exclude them.\nI’ll expand on these challenges from “searching in the shadows” by looking at the “consequences” Beane identified as resulting from “shadow learning” in robotic surgery. Beane (2019) noted that barriers to traditional modes of LPP had “problematic implications” (p. 102). “The routine enactment of shadow learning [ . . . ] led to [ . . . ] outcomes that were quite problematic for shadow learners, their cohort, and their profession: hyperspecialization, fewer learning opportunities for less-skilled residents, and limited learning.” (p. 111).\nThe implications, or consequences, that Beane identified were (1) a reliance on robotic surgery in cases without clear benefit, (2) a “Matthew effect” where only the most skilled received more opportunities to practice (reducing the supply of qualified surgeons), and (3) that the silence of the shadow learning stopgaps kept attention away from how little was learned in the few opportunities for participation. On that third implication, Beane wrote (p. 113):\n\n a lack of broader, more open discourse on the failures of [providing] legitimate peripheral participation and the effectiveness of shadow learning for robotic surgical technique essentially prevented the profession from learning \n\nThese implications are related to the challenges from “searching in the shadows”: the potential reliance on searching out of scope and questions about whose learning is best supported. Beane found that trainees that engaged in shadow learning became “hyperspecialized”, and “faced strong pressures to perform robotic surgery on their patients, even when it was unclear whether robotic surgery was the best course of treatment” (p. 112). The contextual factors driving over-reliance on robotic surgery where not appropriate do not mirror the factors surrounding potential over-reliance on web search in data engineering. My argument above was that the risk of over-reliance on web search results results from its informal legitimation making the operating envelope, the ability to search with support from the broader data engineering work practices serving as search infrastructure, even harder to see. This can contribute to a sort of hyperspecialization in two senses: underdevelopment of other sensemaking or discovery techniques and web search skills practiced principally within the operating envelope of data engineering-supported searching (rather thangeneral-purpose ). The other two implications are more directly related to the second challenge. The silence around the searching activity and the informality of the search confessions contribute to a Matthew Effect for data engineers searching, those who are most adept at searching like a data engineer are more supported in searching more, with little attention giving to improving opportunities for participation for others. These challenges, or concerns, are raised in the following chapters.\n Conclusion: Condoning or celebrating searching?\n \nConfessions, filling in for the absence of search talk, present opportunities and challenges. The discursive and humorous mode of the search confessions, as a way of engaging with other actors, constructs searching as a flexible tool. The confessions assuage the felt-deviance. But the search confessions do not help the data engineers identify if a search is within the operating envelope of their work. The search confessions do not describe the limits of such searching, to be discussed more in the next chapter. And due to its informality, the legitimating purpose of search confessions may not be clear enough to newcomers and those kept on the outside to encourage successful searching. Even for practiced data engineers, it is not clear if the search confessions are merely condoning or fully celebrating searching.\nThis chapter examined part of how data engineers learn to search as data engineers. Legitimate peripheral participation in data engineering web search work occurs in (1) search confessions, the focus of this chapter, and (2) the structuring of search practices through occupational, professional, and technical forces, the focus of the next two chapters. Search confessions acknowledge and legitimate searching the web for work. Engaging with others or taking on the role of confessor oneself, is a form of participation in web searching for the data engineer. The confessions do not generally include the search inputs themselves or the search results, but are part of the social practice and social construction of web searching. This chapter describes the work of affirming that it is common, acceptable, and necessary for data engineers to rely heavily on web search. The search confessions do not only normalize, they reproduce the data engineer web search practices. The legitimacy granted the data engineers, partially through search confessions, give them access to the resources structuring search, discussed in the next chapter. Their peripherality is shaped by the material design of search and the larger culture’s identification of search as a solitary and intimate performance (see the Repairing searching and Owning searching chapters for a larger exploration of this).\n\n Bibliography\n\n\n\nAvnoon, N. (2021). Data scientists’ identity work: Omnivorous symbolic boundaries in skills acquisition.Work, Employment and Society,0 (0), 0950017020977306. https://doi.org/10.1177/0950017020977306 \n\n\n\nBeane, M. (2017).Operating in the shadows: The productive deviance needed to make robotic surgery work [PhD thesis]. MIT.\n\n\nBeane, M. (2019). Shadow learning: Building robotic surgical skill when approved means fail.Administrative Science Quarterly,64 (1), 87–123. https://doi.org/10.1177/0001839217751692 \n\n\n\nBechky, B. A. (2003). Object lessons: Workplace artifacts as representations of occupational jurisdiction.American Journal of Sociology,109 (3), 720–752.\n\n\nBechky, B. A. (2006a). Gaffers, gofers, and grips: Role-based coordination in temporary organizations.Organization Science,17 (1), 3–21.\n\n\nBechky, B. A. (2006b). Talking about machines, thick description, and knowledge work.Organization Studies,27 (12), 1757–1768. https://doi.org/10.1177/0170840606071894 \n\n\n\nBowker, G. C., Baker, K., Millerand, F., & Ribes, D. (2010). Toward information infrastructure studies: Ways of knowing in a networked environment. In J. Hunsinger, L. Klastrup, & M. Allen (Eds.),International handbook of internet research (pp. 97–117). Springer Netherlands. https://doi.org/10.1007/978-1-4020-9789-8_5 \n\n\n\nBowker, G. C., & Star, S. L. (2000).Sorting things out: Classification and its consequences. MIT press. https://mitpress.mit.edu/books/sorting-things-out \n\n\n\nBrown, J., & Duguid, P. (2001). Knowledge and organization: A social-practice perspective.Organization Science,12, 198–213.\n\n\nBrown, J. S., & Duguid, P. (1991). Organizational learning and communities-of-practice: Toward a unified view of working, learning, and innovation.Organization Science,2 (1), 40–57. http://www.jstor.org/stable/2634938 \n\n\n\nBrown, J. S., & Duguid, P. (1996).Situated learning perspectives (H. McLellen, Ed.). Educational Technology Publications. https://www.johnseelybrown.com/StolenKnowledge.pdf \n\n\n\nBucciarelli, L. L. L. (1996).Designing engineers (Paperback, p. 230). MIT Press. https://mitpress.mit.edu/books/designing-engineers \n\n\n\nCambrosio, A., & Keating, P. (1995).Exquisite specificity: The monoclonal antibody revolution. Oxford University Press.\n\n\nCarlo, J. L., Lyytinen, K., & Rose, G. M. (2012). A knowledge-based model of radical innovation in small software firms.MIS Quarterly,36 (3), 865–895. http://www.jstor.org/stable/41703484 \n\n\n\nColeman, E. G. (2012).Coding freedom: The ethics and aesthetics of hacking. Princeton University Press. https://gabriellacoleman.org/Coleman-Coding-Freedom.pdf \n\n\n\nContu, A., & Willmott, H. (2003). Re-embedding situatedness: The importance of power relations in learning theory.Organization Science,14 (3), 283–296.\n\n\nDuguid, P. (2008).Community, economic creativity, and organization (A. Amin & J. Roberts, Eds.). Oxford University Press. https://oxford.universitypressscholarship.com/view/10.1093/acprof:oso/9780199545490.001.0001/acprof-9780199545490-chapter-1 \n\n\n\nGasson, S., & Purcelle, M. (2018). A participation architecture to support user peripheral participation in a hybrid foss community.Trans. Soc. Comput.,1 (4). https://doi.org/10.1145/3290837 \n\n\n\nGitelman, L. (2006).Always already new: Media, history, and the data of culture. MIT Press. https://direct.mit.edu/books/book/4377/Always-Already-NewMedia-History-and-the-Data-of \n\n\n\nGoffman, E. (1956).The presentation of self in everyday life. University of Edinburgh.\n\n\nHaider, J., & Sundin, O. (2019).Invisible search and online search engines: The ubiquity of search in everyday life. Routledge. https://doi.org/https://doi.org/10.4324/9780429448546 \n\n\n\nHochstein, L. (2021).I have no idea what i’m doing. https://surfingcomplexity.blog/2021/11/28/i-have-no-idea-what-im-doing/ \n\n\n\nKotamraju, N. P. (2002). Keeping up: Web design skill and the reinvented worker.Information, Communication & Society,5 (1), 1–26. https://doi.org/10.1080/13691180110117631 \n\n\n\nLave, J., & Wenger, E. (1991).Situated learning: Legitimate peripheral participation. Cambridge university press. https://www.cambridge.org/highereducation/books/situated-learning/6915ABD21C8E4619F750A4D4ACA616CD#overview \n\n\n\nOrr, J. E. (1996).Talking about machines: An ethnography of a modern job. ILR Press.\n\n\nPolanyi, M. (1967).The tacit dimension. Doubleday & Co.\n\n\nStar, S. L. (1999). The ethnography of infrastructure.American Behavioral Scientist,43 (3), 377–391.\n\n\nStar, S. L., & Ruhleder, K. (1996). Steps toward an ecology of infrastructure: Design and access for large information spaces.Information Systems Research,7 (1), 111–134. https://doi.org/10.1287/isre.7.1.111 \n\n\n\nSundin, O. (2020). Where is search in information literacy? A theoretical note on infrastructure and community of practice. InSustainable digital communities (pp. 373–379). Springer International Publishing. https://doi.org/10.1007/978-3-030-43687-2_29 \n\n\n\nTakhteyev, Y. (2012).Coding places: Software practice in a south american city. The MIT Press.\n\n\n\n The social construction of technological systems. (1993). MIT Press.\n\n\nWoods, D. D. (2018). The theory of graceful extensibility: Basic rules that govern adaptive systems.Environ Syst Decis,38 (4), 433–457. https://doi.org/10.1007/s10669-018-9708-3 \n\n\n\nZuboff, S. (1988).In the age of the smart machine. Basic books.\n\n\n\n\n\n\n I cleave to the label legitimate peripheral participation rather than shifting to language of “communities of practice” or “situated learning” in order to retain analytical purchase. This—“Taking into account the learner’s perspective”—is the central focus of the theory and “has often been ignored” (Duguid, 2008, p. 3) . ↩︎ \n\n\n\n Several research participants did some pair programming, only a few indicated it was a consistent part of their work. ↩︎ \n\n\n\n See Cambrosio & Keating (1995, pp. 49–50) for a discussion of how “the unsaid” tacit knowledge can be “formally transmitted” and “articulated”. ↩︎ \n\n\n\n The “feels somewhat shameful” mentioned by Megan is regarding openly sharing the search process, distinct from admitting reliance on web search to others in a team of three. ↩︎ \n\n\n\n This meme was the center of a flurry of introspection in the online engineering community in November 2021. Comments on search confessions sometimes punctuate the everyday routine and elicit considerable discussion. I will only highlight a response from Lorin Hochstein (2021) , a software engineer at Netflix, expert on resilience engineering, and regular commentator on the field. He wrote a blog post reflecting on discussion around a post from David Heinemeier Hansson, creator of Ruby on Rails and sometime tech influencer, which centered on the claim that “In the valiant effort to combat imposter syndrome and gatekeeping, the programming world has taken a bad turn down a blind alley by celebrating incompetence.” Hansson wrote, “You can’t become the I HAVE NO IDEA WHAT I’M DOING dog as a professional identity. Don’t embrace being a copy-pasta programmer whose chief skill is looking up shit on the internet.” While many saw this as a critique of a reliance on web search, and provided apologias for searching, Hochstein focuses at a slightly higher frame, arguing (with citation to Bucciarelli (1996) ) that the meme isn’t focused on search so much as the conditions of the work that necessitate solutions such as search and that it joins other jokes and stories that shape affective orientations towards search. He writes, the dog meme: \n\n uses humor to help us deal with the fact that, no matter how skilled we become in our profession as software engineers, we will always encounter problems that extend beyond our area of expertise to understand. \n To put it another way: the dog meme is a coping mechanism for professionals in dealing with a domain that will always throw problems at them that push them beyond their local knowledge. It doesn’t indicate a lack of professionalism. Instead, it calls attention to the ironies of professionalism in software engineering. Even the best software engineers still get relegated to Googling incomprehensible error messages. \n\n↩︎ \n\n\n I make note of these influences because it may helpfully explain his trajectory in his engagement with LPP, not focalized, as I do here, through Lave & Wenger (1991) . While he cites to Lave & Wenger (1991) , he does not lean on their language or note on their engagements with some of the research he mentions (which I will note below). Takhteyev (2012) remarks on “substantial currency” of the notion of “communities of practice” in the “organizational studies and business literature” (p. 25), citing to Duguid (2008) ’s review of community of practice noted it was “rapidly domesticated” (p. 7). (I learned of Yuri Takhteyev’s research through a personal conversation with Paul Duguid.) ↩︎ \n\n\n\n\n Beane (2019, p. 91) : \n\n Successful trainees engaged extensively in three practices: ‘‘premature specialization’’ in robotic surgical technique at the expense of generalist training; ‘‘abstract rehearsal’’ before and during their surgical rotations when concrete, empirically faithful rehearsal was prized; and ‘‘undersupervised struggle,’’ in which they performed robotic surgical work close to the edge of their capacity with little expert supervision—when norms and policy dictated such supervision. \n\n↩︎ \n\n\n Throughout, but see particularly the section titled “Search as information infrastructure” (pp. 54-55). ↩︎ \n\n\n\n The invisibility or ‘taken-for-grantedness’ of infrastructure is widely remarked on in infrastructure studies (Bowker et al., 2010) . You can, for instance, follow citations from Haider & Sundin (2019) through Star (1999) (“The taken-for-grantedness of artifacts and organizational arrangements is a sine qua non of membership in a community of practice” (p. 381)) and Star & Ruhleder (1996) (“Strangers and outsiders encounter infrastructure as a target object to be learned about. New participants acquire a naturalized familiarity with its objects as they become members” (p. 113)) to Bowker & Star (2000) and Lave & Wenger (1991) , all discussing the taken-for-grantedness of infrastructures and particularly how infrastructures are visible to newcomers to a practice or community, but shift out of view as they become full members. (Whether web search is generally visible to newcomers is questioned, though, in Sundin (2020) , who finds “search engines almost never seem to have been a visible information infrastructure for the current generation of teenagers” (p. 378).) The references to Lave & Wenger (1991) are to the book as a whole, but a direct discussion can be found on pp. 101-102. Bowker & Star (2000) cite to Cambrosio & Keating (1995) , who discuss both infrastructures taken for granted and how “[w]idely distributed know-how,” or tacit knowledge, can be taken for granted. ↩︎ \n\n\n\n Ch. 3: The Craft and Craftiness of Hacking ↩︎ \n\n\n\n", "snippet": "\n", "url": "/diss/admitting_searching/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-ads", "type": "pages" , "date": "", "title": "ads tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"ads\" tag.\n \n\n\n{% assign tag_name = \"ads\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"ads\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"ads\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/ads/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-advertising-in-search", "type": "pages" , "date": "", "title": "advertising-in-search tag" , "tags": "", "content": "{% assign tag_name = \"advertising-in-search\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"advertising-in-search\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"advertising-in-search\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/advertising-in-search/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-alternative-search-engines", "type": "pages" , "date": "", "title": "alternative-search-engines tag" , "tags": "", "content": "{% assign tag_name = \"alternative-search-engines\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"alternative-search-engines\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"alternative-search-engines\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/alternative-search-engines/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-ambiguity", "type": "pages" , "date": "", "title": "ambiguity tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"ambiguity\" tag.\n \n\n\n{% assign tag_name = \"ambiguity\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"ambiguity\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"ambiguity\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/ambiguity/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-andi", "type": "pages" , "date": "", "title": "Andi tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"Andi\" tag.\n \n\n\n{% assign tag_name = \"Andi\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"Andi\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"Andi\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/andi/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-anthropic-claude", "type": "pages" , "date": "", "title": "Anthropic-Claude tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"Anthropic-Claude\" tag.\n \n\n\n{% assign tag_name = \"Anthropic-Claude\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"Anthropic-Claude\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"Anthropic-Claude\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/anthropic-claude/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "diss-appendices", "type": "diss" , "date": "2022-12-16", "title": "8. Appendices" , "tags": "[diss]", "content": "\nAppendix I. Research Participants\n\nAppendix II. Annotated Interview Guide\n\nAppendix III. Code Generation Tools and Search\n [note: opens new page]\n\n Appendix I. Research Participants\n\n\n\n Participant Table\n \n\n\n\n\n\n\n\n\n Participant \n role \n industry \ngender identity \n\n\n\n\n Shreyan \n Data Software Engineer \n enterprise software \nman \n\n\n Shawn \n Developer Advocate, former data engineer \n open source data software \nman \n\n\n Noah \n Senior Data Engineer \n media streaming \nman \n\n\n Sameer \n Senior Software Engineer \n computing technology \nman \n\n\n Raha \n Senior Data Engineer \n media, entertainment \nwoman \n\n\n Aditya \n Senior Engineering Manager \n enterprise software \nman \n\n\n John \n Data Scientist \n apparel \nman \n\n\n Amar \n Software Engineering Manager \n enterprise software \nman \n\n\n Ajit \n Senior Data Engineer \n retail \nman \n\n\n Kari \n Data Platform Engineer \n apparel \nwoman \n\n\n Vivek \n Senior Data Scientist \n social media \nman \n\n\n Jillian \n Data Engineer \n fitness software \nwoman \n\n\n Charles \n Data Scientist \n online marketplace \nman \n\n\n Phillip \n Data Engineer \n enterprise software \nman \n\n\n Devin \n Data Platform Software Engineer \n healthcare \nman \n\n\n Arjun \n Principal Software Engineer \n enterprise software \nman \n\n\n Christina \n Senior Technical Consultant \n enterprise software \nwoman \n\n\n Michael \n Data Engineer \n financial services \nman \n\n\n Jamie \n Senior Data Engineer \n web publishing \nwoman \n\n\n Ross \n Senior Site Reliability Engineer \n web analytics \nman \n\n\n Victor \n Senior Data Engineer \n web analytics \nman \n\n\n Nicole \n Executive \n data analysis software \nwoman \n\n\n Patrick* \n Data Engineer \n enterprise software \nman \n\n\n Nisha \n Director Of Data Services \n enterprise software \nwoman \n\n\n Lauren \n Machine Learning Engineer \n online marketplace \nwoman \n\n\n Jane \n Analyst \n social media \nwoman \n\n\n Logan \n Analyst \n nonprofit \nman \n\n\n Amy \n Data Platform Engineer \n financial services \nwoman \n\n\n Megan \n Senior Data Engineer \n business intelligence \nwoman \n\n\n Zayn \n Data Engineer \n real estate \nman \n\n\n\n\n Note: Currently listed are the roles and title at the time of interview. * indicates role/industry change since initial interview; changed companies around time of interview and was onboarding at a new company, we discussed their prior role, which is listed; ** two interviewees who spoke of experiences prior to transitions away from that work.). The last five individuals were new participant member checks.\n\n\n Appendix II. Annotated Interview Guide\n\n\n The questions in my interview guide were initially built around these five research questions developed for my prospectus:\n\n\n\n how and why is search used\n \n\n how is it imagined as useful for the purpose its enlisted\n \n\n what limitations are identified and addressed (or not)\n \n\n how do conceptions & practices of web search reconfigure work practices\n \n\n how are reconfigurations both shaped by and reshaping responsibility/accountability for work processes across individual professionals and organizations\n \n\n\n Most of my interviews were conducted with the principal guide on-hand being a list of topics (pasted at top of a document with extensive annotations though rarely referenced during interviews):\n\n\n\n initial reaction question (IRQ)\n \n After finding it quite useful when interviewees shared their initial reactions, I added this as my starting question. \n\n\n\n role\n \n\n team\n \n\n search\n \n\n talk about search?\n \n LMGTFY \n\n\n\n search fails/struggles\n \n\n ask people?\n \n\n support channels?\n \n\n documentation/intranet/enterprise search?\n \n\n feedback & code review\n \n\n notes & cheatsheets\n \n\n mentorship\n \n\n on-boarding\n \n\n any questions for me & reflections on the interview\n \n these two questions were also quite useful in eliciting open-ended and unanticipated responses. \n\n\n\n\n I also had a list of interviewing reminders (though not hard and fast rules) for myself that grew throughout the first several interviews:\n\n\n\n CONCRETE examples\n \n\n pauses are good\n \n\n don’t talk too much\n \n\n “say more” & push\n \n\n one question at a time\n \n\n do not interrupt\n \n\n note/probe laughter & annoyance/frustration\n \n\n\n Appendix III. Code Generation Tools and Search\n\nThis appendix is prepared on a separate page: Appendix III. Code Generation Tools and Search", "snippet": "\n", "url": "/diss/appendices/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "diss-appendix-cgt-and-search", "type": "diss" , "date": "2022-12-16", "title": "Appendix III. Code Generation Tools and Search" , "tags": "[diss]", "content": "\n The latest generation of plugins for IDEs that some people121\n suggest might replace web search are those that support code generation directly from comments written within the code. This is a variant of a larger class of tools, called code generation tools.122\n One such plugin is GitHub’s Copilot, based on the OpenAI Codex model, itself based on the Generative Pre-trained Transformer (GPT) models from OpenAI. My interview research did not generally directly address GitHub’s Copilot.123\n The data engineers I asked about it had not used it. I will not go into the technical mechanisms of these systems, other than note that they are designed to take a prompt and predict the most likely text strings to follow. If I type “Mary had a” into the OpenAI GPT-3 Playground124\n , the system completes the nursery rhyme.\n\n\n GitHub Copilot, free to GitHub verified students, teachers, and maintainers of popular open source projects125\n , is trained on portions of the significant amount of code uploaded to GitHub, which raises legal, ethical, and security concerns.126\n can It perhaps be imagined as an advanced autocomplete. Rather than suggesting the completion of a function name or command in your code, the plugin will suggest an entire block of code, perhaps the entire function. When the user types a comment or a line of code, the plugin will suggest a completion. Some users appear to have been satisfied with these suggestions. GitHub wrote a blog post in July 2022 reporting on a survey of Copilot users combined with data on their shown and accepted Copilot suggestions\n \n (Ziegler, 2022)\n\n . They claim “[u]sing GitHub Copilot correlates with improved developer productivity”. GitHub continues to publish reports along this line\n \n (Kalliamvakou, 2022)\n\n , while there is also intense interest from external researching on the use and effects of GitHub Copilot.\n\n\n External researchers are particularly examining security vulnerabilities (some in a manner similar to that of\n \n Fischer et al. (2017)\n\n and others mentioned in\n \n Extending searching\n \n ). A team from NYU and the University of Calgary examined code suggested by GitHub copilot scenarios developed relevant to MITRE’s “Top 25” Common Weakness Enumeration (a regularly updated list of significant software vulnerabilities). Across the 89 scenarios they had Copilot produce over 1,500 programs of which they found approximately 40% to be vulnerable\n \n (Pearce et al., 2021)\n\n . They recommend that Copilot “should be paired with appropriate security-aware tooling during both training and generation to minimize the risk of introducing security vulnerabilities.”\n\n\n Security concerns, and such precautions, are also acknowledged by GitHub127\n :\n\n\n\n You should take the same precautions as you would with any code you write that uses material you did not independently originate. These include rigorous testing, IP scanning, and checking for security vulnerabilities. You should make sure your IDE or editor does not automatically compile or run generated code before you review it.\n \n\n\n These suggested responses to vulnerabilities in Copilot mirror some of what I discussed in\n \n Extending searching\n \n around the evaluation of search results and the decoupling from search.\n\n\n The plugins for IDEs, and the voice-search, free-text, as in the OpenAI GPT-3 Playground128\n and chat-based, ex. ChatGPT129\n , language interfaces are user interface components that, in the language of Handoff, provide distinct engagements for interactions. One of the benefits of using a general-purpose search engine is the contestability and interrogatability, perhaps not of the ranking of the websites on the SERP, but of the results. Data engineer searchers can look at the websites where they find information to gain clues as to its provenance and trustworthiness. GitHub Copilot and ChatGPT are black boxed and do not currently provide access for that, though GitHub has announced future product changes that will allow some interrogation130\n , beyond directly engaging with the system for alternatives.\n\n\n The tool designers will likely continue to improve the tool, and IDEs and companies may adapt practices to pull in such untested code in way primed for effective testing. OpenAI and others continue to do research looking into the hazards posed by such tools\n \n (Khlaaf et al., 2022)\n\n . Copilot does and will likely continue to replace some subset of searching done by some data engineers. And also just like promises of automatic programming in the past\n \n (Ensmenger, 2010)\n\n , if it does lower the cost of programming it will likely only increase the demand for more programmers. The programming languages used by my research participants are far simpler to use and understand than even the “automatic programming” languages of the past, like FORTRAN and COBOL. The hard problems remain, how to use a tool to do something you or someone else wants.\n\n\n A web search engine provides some means to find what others, not only the search engine, say about top ranking search results, in addition to viewing the source website. This is a capacity of the configuration of web search that is leveraged in misinformation research. Some search engines provide interface options to learn general information about a website, to, for instance, see if the website presenting itself as a news organization is identified by Google as one. Mike Caulfield’s SIFT model for basic fact-checking practices has four moves: Stop, Investigate the source, find better coverage, trace the original context\n \n (Caulfield, 2019b)\n\n . Those moves are not supported by the Copilot configuration itself. Users of Copilot and other such tools will still find it helpful to refer to web search, and turn to sources of search repair, for learning things they do not already know.131\n GitHub’s investments in Copilot come alongside a significant redesign of their search platform, for searching for code within GitHub\n \n (GitHub, 2022)\n\n132\n , suggesting a recognition from the creators of the tool that search will not be fully replaced.\n\n\n Bibliography\n\n\n\n\n\n\n\n\n\n\nAvgustinov, P. (2021).Improving github code search | the github blog. https://github.blog/2021-12-08-improving-github-code-search/ .\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nCaulfield, M. (2019b).SIFT (the four moves) | hapgood. https://hapgood.us/2019/06/19/sift-the-four-moves/ .\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nEnsmenger, N. (2010).The computer boys take over: Computers, programmers, and the politics of technical expertise. The MIT Press.\n\n\n\n\n\n\n\n\nFischer, F., Böttinger, K., Xiao, H., Stransky, C., Acar, Y., Backes, M., & Fahl, S. (2017). Stack overflow considered harmful? The impact of copy&paste on android application security.2017 Ieee Symposium on Security and Privacy (Sp), 121–136.\n\n\n\n\n\n\n\n\n\n\n\n\n\nGitHub. (2022).Introducing an all-new code search and code browsing experience | github changelog. https://github.blog/changelog/2022-11-09-introducing-an-all-new-code-search-and-code-browsing-experience/ .\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nKalliamvakou, E. (2022).Research: Quantifying github copilot’s impact on developer productivity and happiness | the github blog. https://github.blog/2022-09-07-research-quantifying-github-copilots-impact-on-developer-productivity-and-happiness/ .\n\n\n\n\nKhlaaf, H., Mishkin, P., Achiam, J., Krueger, G., & Brundage, M. (2022).A hazard analysis framework for code synthesis large language models. arXiv. https://doi.org/10.48550/ARXIV.2207.14157 \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nMetaphor. (2021).Today we’re releasing wanderer 2Metaphor. https://twitter.com/metaphorsystems/status/1428793313663111170 .\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nPearce, H. A., Ahmad, B., Tan, B., Dolan-Gavitt, B., & Karri, R. (2021). An empirical cybersecurity evaluation of github copilot’s code contributions.ArXiv,abs/2108.09293.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nSalva, R. J. (2022).Preview: Referencing public code in github copilot | the github blog. https://github.blog/2022-11-01-preview-referencing-public-code-in-github-copilot/ .\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nZiegler, A. (2022).Research: How github copilot helps improve developer productivity | the github blog. https://github.blog/2022-07-14-research-how-github-copilot-helps-improve-developer-productivity/ .\n\n\n\n\n\n\n\n\n I am referring to popular commentary on Twitter from software developers and data engineers. ↩︎ \n\n\n\n I have used an older tool, TabNine, based on an earlier generation of OpenAI’s GPT, since the summer of 2019. It is installed in my text editor, Sublime Text, which I use for all of my writing and python coding (until early 2022 when I started using PyCharm from JetBrains to gain familiarity with the sorts of integrated development environments available to my interviewees). I have used it in my Python coding and in any writing that I’ve done. It runs locally on my machine and provides a several predictions to suggest an autocomplete for most any string that I type. In my prose writing it is particularly helpful for spelling suggestions and remembering the shorthand for inserting a citation. It has not replaced a significant part of my web searching. ↩︎ \n\n\n\n The first technical preview of Copilot was available in the summer of 2021, with the subscription service starting in the summer of 2022. ↩︎ \n\n\n\n https://beta.openai.com/playground ↩︎ \n\n\n\n I signed up for a free trial and started paying $100.00/year in September 2022. (While I am notionally a student, the GitHUb verification process does not recognize UC Berkeley’s filing fee status.) I have found it at times both very frustrating and very useful. The coding I do is very different from that of data engineers coding within their company codebase and systems. My use gives me only limited insight and I rely mostly on the findings from my interviews on the larger practices of the data engineers and external commentary and research on Copilot. ↩︎ \n\n\n\n I will not address the legal concerns and ethical concerns here except to note the broad sort of concerns and that they have some (but not total) similarity to early conversations and legal suits regarding web search. The concerns include questions about the copyright protection for and licenses of the uploaded code as well as GitHub’s terms of service, the power imbalance between GitHub, now owned my Microsoft, and many developers who have uploaded code, and the absence of profit sharing. ↩︎ \n\n\n\n https://github.com/features/copilot ↩︎ \n\n\n\n https://beta.openai.com/playground ↩︎ \n\n\n\n OpenAI released their GPT-driven ChatGPT for public beta testing on November 30th 2022. One of my interviewees sent me a screenshot of them using it, asking the chatbot “How do data engineers use google search for their job?” \n\n Data engineers can use Google Search to find information and resources related to data engineering. This can include finding tutorials, documentation, and other resources that can help them with their work. For example, a data engineer might use Google Search to look up the syntax for a particular SQL query, find a tutorial on how to use a certain data analysis tool, or search for information on best practices for data engineering. \n Additionally, data engineers can use Google Search to stay-to-date on the latest developments and trends in the… \n\n↩︎ \n\n\n GitHub announced plans in November, 2022 to identify public repositories of code that contain matching code, of a particular character count (Salva, 2022) . ↩︎ \n\n\n\n Google and other search engines already use large language models, such as BERT, as components in their search engine. These components generally are used to support the same configurations in the user interface of the SERP, a list of links with some rich features. Some search engines, like metaphor.systems a large language model trained on Hacker News posts (Metaphor, 2021) , have adapted the search box to be a longer freetext field, but still provide a list of results. Another, Andi, operates as a chatbot that also provides a list of results. Other general-purpose search engines and search tools have also introduced distinct plugins on the SERP making use of generative AI. You.com, a general-purpose web search engine, has applications that provide generative AI tooling for code writing, short prose, and image generation from prompts directly within the search bar. ↩︎ \n\n\n\n Significant investments into GitHub’s code search were announced in December 2021 (Avgustinov, 2021) . While my research participants reported searching GitHub, they were generally searching for particular issues posted to repositories for debugging. ↩︎ \n\n\n\n", "snippet": "\n", "url": "/diss/appendix_cgt_and_search/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-articulation", "type": "pages" , "date": "", "title": "articulation tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"articulation\" tag.\n \n\n\n{% assign tag_name = \"articulation\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"articulation\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"articulation\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/articulation/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-articulations", "type": "pages" , "date": "", "title": "articulations tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"articulations\" tag.\n \n\n\n{% assign tag_name = \"articulations\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"articulations\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"articulations\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/articulations/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-artificial-intelligence", "type": "pages" , "date": "", "title": "artificial intelligence tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"artificial intelligence\" tag.\n \n\n\n{% assign tag_name = \"artificial intelligence\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"artificial intelligence\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"artificial intelligence\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/artificial-intelligence/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-arxiv", "type": "pages" , "date": "", "title": "arXiv tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"arXiv\" tag.\n \n\n\n{% assign tag_name = \"arXiv\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"arXiv\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"arXiv\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/arxiv/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-autocomplete-in-web-search", "type": "pages" , "date": "", "title": "autocomplete-in-web-search tag" , "tags": "", "content": "{% assign tag_name = \"autocomplete-in-web-search\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"autocomplete-in-web-search\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"autocomplete-in-web-search\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/autocomplete-in-web-search/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "js-search-autocomplete-js", "type": "pages" , "date": "", "title": "search/autocomplate.js" , "tags": "", "content": "// This script provides autocomplete functionality for a website search tool, based on Lunr.js\n\nfunction modifyDynamicSearchTerm(searchTerm) {\n // This function allows you to modify the search term before it is used to search the index\n // For example, you could use this to implement a \"Did you mean?\" feature\n // strip hyphens from `tags:` searches (e.g. `tags:foo-bar` becomes `tags:foobar`, `frankly -tags:honesty-stuff` becomes `frankly -tags:honestystuff`)\n searchTerm = searchTerm.replace(/tags:([^\\s-]+)/g, function (match, p1) {\n return 'tags:' + p1.replace(/-/g, '');\n });\n return searchTerm;\n}\n\nasync function generateNewCombinedSuggestions(searchFrom = \"server\") {\n var searchTerm = searchBox.value.toLowerCase();\n sessionStorage.setItem('searchTerm', searchTerm);\n searchTerm = modifyDynamicSearchTerm(searchTerm);\n dynamicSearchTerm = searchTerm + '* ' + searchTerm;\n // Toggle to test client-side search\n // searchFrom = \"client\"\n let results;\n try {\n if (searchFrom === \"client\") {\n // console.log(\"Attempting client-side search\");\n if (!window.idx || !window.itemsIndex) {\n await fetchIndexes();\n }\n const idx = window.idx;\n const itemsIndex = window.itemsIndex;\n // console.log(\"idx:\", idx);\n // console.log(\"itemsIndex:\", itemsIndex);\n // Perform the client-side search\n const clientResults = idx.search(dynamicSearchTerm); // search the client-side Lunr index\n results = clientResults;\n } else {\n // console.log(\"Attempting server-side search\");\n const serverResults = await searchLunrish(dynamicSearchTerm);\n // If the results[\"documents\"] is empty, error out and try client-side search\n\n results = serverResults[\"documents\"];\n } \n } catch (error) {\n // ****** \n console.log(\"Error:\", error);\n // Print all local variables and their values\n console.log(\"searchTerm:\", searchTerm);\n console.log(\"dynamicSearchTerm:\", dynamicSearchTerm);\n console.log(\"results:\", results);\n // ****** \n\n if (error.name === 'QueryParseError' && (error.message.includes(\"unrecognised field 'sort'\") || error.message.includes(\"unrecognised field 'similar'\") || error.message.includes(\"unrecognised field 'cat'\"))) {\n // This is not an exception — sort is handled in bespoke code elsewhere.\n // Perform some alternative action or display fallback results\n results = [];\n // Check if the searcher paused at a hyphen: autocomplete.js:43 Uncaught TypeError: Cannot read properties of undefined (reading '_index')\n } else if (error.name === 'TypeError' && error.message.includes(\"Cannot read properties of undefined (reading '_index')\") && searchTerm.endsWith('-')) {\n results = [];\n // Check if the searcher paused at tags: and is about to type a tag name\n // e.QueryParseError {name: 'QueryParseError', message: 'expecting term, found nothing', start\n } else if (error.name === 'QueryParseError' && error.message.includes(\"expecting term, found nothing\") && searchTerm.endsWith('tags:')) {\n results = [];\n // Check if it is a `tag:` search when is should be a `tags:` search issue.\n } else if (error.name === 'QueryParseError' && error.message.includes(\"unrecognised field 'tag'\")) {\n // Update the search term to use the correct field name\n \n searchTerm = searchTerm.replace('tag:', 'tags:');\n // Update in the search box \n searchBox.value = searchTerm;\n // Tell the user what happened\n var message = document.createElement('div');\n message.classList.add('alert', 'alert-warning', 'alert-dismissible', 'fade', 'show');\n message.setAttribute('role', 'alert');\n message.innerHTML = 'Warning! Your search term was modified to use the tags field (instead of `tag`). ';\n } else {\n console.error(\"Server-side search failed:\", error);\n console.log(\"Attempting client-side search\");\n // Perform the client-side search\n return await generateNewCombinedSuggestions(searchFrom = \"client\")\n }\n }\n\n // Generate the new search suggestions, combining dynamic results and hand-curated suggestions\n var dynamicResults = results.map(function (result) {\n if (searchFrom === \"client\") {\n return {\n title: itemsIndex[result.ref].title,\n url: itemsIndex[result.ref].url,\n tags: itemsIndex[result.ref].tags,\n date: itemsIndex[result.ref].date\n };\n } else {\n result = result.docData;\n return {\n title: result.title,\n url: result.url,\n tags: result.tags,\n date: result.date\n };\n }\n }).slice(0, 10); // limit to the top 10 dynamic results\n\n // Helper function to slugify a string\n // function slugify(str) {\n // return str.toLowerCase().replace(/\\s+/g, '-');\n // }\n function slugify(str) {\n return str && typeof str === 'string' ? str.toLowerCase().replace(/\\s+/g, '-') : '';\n }\n\n var searchTermSlugified = slugify(searchTerm);\n\n var exactMatches = dynamicResults.filter(function (result) {\n var titleSlugified = slugify(result.title);\n var urlLastSegment = result.url.substring(result.url.lastIndexOf('/') + 1).split('.')[0]; // Get last segment of URL\n var urlSlugified = slugify(urlLastSegment);\n return titleSlugified === searchTermSlugified || urlSlugified === searchTermSlugified;\n });\n\n var filteredSuggestions = handCuratedSuggestions.filter(function (suggestion) {\n return suggestion.toLowerCase().includes(searchTerm);\n });\n\n // Create a Set with exactMatches\n var exactMatchesSet = new Set(exactMatches);\n\n var remainingResults = dynamicResults.filter(function (result) {\n return !exactMatchesSet.has(result);\n });\n\n var combinedSuggestions = [...exactMatches, ...filteredSuggestions, ...remainingResults];\n\n return combinedSuggestions\n}\n\ndocument.addEventListener(\"DOMContentLoaded\", function () {\n // Search state\n var lastDynamicSuggestions = [];\n var activeSuggestionIndex = -1; // Keeping track of active suggestion.\n \n\n let debounceTimeout; // Use 'let' for block scope\n // Event listener for handling input in the search box\n searchBox.addEventListener(\"input\", function () {\n console.log(\"Input event triggered\"); // Log when input event is triggered\n clearTimeout(debounceTimeout); // Clear existing timeout\n console.log(\"Existing debounce timeout cleared\"); // Log debounce timeout clearance\n\n debounceTimeout = setTimeout(async function () {\n console.log(\"Debounce timeout completed, processing input\"); // Log when debounce period ends\n\n // Check if the search box is empty\n if (!searchBox.value) {\n console.log(\"Search box is empty, showing hand-curated suggestions\"); // Log when input is empty\n showSuggestions(handCuratedSuggestions);\n return;\n } else {\n console.log(\"Search box has value, showing last dynamic suggestions\"); // Log when input has value\n showSuggestions(lastDynamicSuggestions);\n }\n\n try {\n // Generate new combined suggestions based on the input\n console.log(\"Generating new combined suggestions\"); // Log before generating new suggestions\n const combinedSuggestions = await generateNewCombinedSuggestions();\n lastDynamicSuggestions = combinedSuggestions; // Update with new suggestions\n console.log(\"New combined suggestions generated\", combinedSuggestions); // Log new suggestions\n showSuggestions(combinedSuggestions); // Display the updated suggestions\n } catch (error) {\n console.error('Error generating suggestions:', error);\n // Log error handling\n console.log(\"An error occurred, handling the error\");\n // Implement additional error handling or fallback logic here if necessary\n }\n\n // Reset the active suggestion index to default\n activeSuggestionIndex = -1;\n console.log(\"Reset active suggestion index to -1\"); // Log resetting of active suggestion index\n }, 300); // Set a 300ms delay for debounce\n\n console.log(\"Debounce timeout set for 300ms\"); // Log setting of new debounce timeout\n });\n\n\n\n \n\n document.addEventListener('click', function (e) {\n // Check if clicked element is not inside suggestionsList or searchBarLinks\n if (!suggestionsList.contains(e.target) && !searchBarLinks.contains(e.target) && !searchBox.contains(e.target) && !searchPlusSuggestionsBottom.contains(e.target)) {\n // console.log('Clicked outside suggestionsList, searchBarLinks, and searchBox');\n clearSuggestions();\n } else if (e.target.textContent.startsWith('!')) {\n e.preventDefault();\n var form = document.querySelector('form') \n // If the suggestion starts with a bang, update the form value and use handleBangs\n form.q.value = e.target.textContent\n return handleBangs(form)\n } else if (suggestionsList.contains(e.target)) { \n // console.log('Clicked inside suggestionsList');\n } else {\n \n // console.log('Clicked inside suggestionsList, searchBarLinks, or searchBox');\n // console.log(e.target.textContent);\n // console.log(e.target.href);\n }\n });\n searchBox.addEventListener(\"keydown\", function (e) {\n var suggestions = Array.from(suggestionsList.children);\n switch (e.key) {\n case \"Escape\":\n clearSuggestions();\n break;\n case \"ArrowDown\":\n activeSuggestionIndex = (activeSuggestionIndex + 1) % suggestions.length;\n break;\n case \"ArrowUp\":\n activeSuggestionIndex = (activeSuggestionIndex - 1 + suggestions.length) % suggestions.length;\n break;\n case \"Enter\":\n if (activeSuggestionIndex !== -1) {\n e.preventDefault();\n if (suggestions[activeSuggestionIndex].querySelector('a.autocomplete-title').textContent.startsWith('!')) {\n // If the suggestion starts with a bang, update the form value and use handleBangs\n var form = document.querySelector('form') \n form.q.value = suggestions[activeSuggestionIndex].querySelector('a.autocomplete-title').textContent\n return handleBangs(form)\n } else {\n window.location.href = suggestions[activeSuggestionIndex].querySelector('a.autocomplete-title').href;\n }\n }\n }\n\n removeHighlight();\n\n if (!isNaN(activeSuggestionIndex) && activeSuggestionIndex !== -1) {\n suggestions[activeSuggestionIndex].classList.add(\"hover\");\n suggestions[activeSuggestionIndex].scrollIntoView({ block: 'nearest' });\n }\n });\n\n function clearSuggestions() {\n suggestionsList.innerHTML = \"\";\n searchPlusSuggestionsBottom.classList.add('d-none');\n navigate_suggestions_hint.classList.add(\"d-none\");\n close_suggestions_hint.classList.add(\"d-none\");\n if (!searchBox.value && searchBox !== document.activeElement) {\n searchPlusSuggestionsTop.classList.remove(\"border\");\n }\n }\n\n suggestionsList.addEventListener(\"mouseover\", function (e) {\n var target = e.target;\n // Find the closest parent LI element\n while (target.nodeName !== \"LI\") {\n target = target.parentNode;\n if (!target) return;\n }\n removeHighlight();\n target.classList.add(\"hover\");\n });\n\n suggestionsList.addEventListener(\"mouseout\", function () {\n removeHighlight();\n });\n\n function removeHighlight() {\n var highlighted = suggestionsList.querySelector(\".hover\");\n if (highlighted) {\n highlighted.classList.remove(\"hover\");\n }\n }\n});", "snippet": "\n", "url": "/js/search/autocomplete.js", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-autocomplete", "type": "pages" , "date": "", "title": "autocomplete tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"autocomplete\" tag.\n \n\n\n{% assign tag_name = \"autocomplete\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"autocomplete\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"autocomplete\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/autocomplete/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-automation-bias", "type": "pages" , "date": "", "title": "automation bias tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"automation bias\" tag.\n \n\n\n{% assign tag_name = \"automation bias\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"automation bias\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"automation bias\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/automation-bias/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "js-search-bangs-js", "type": "pages" , "date": "", "title": "search/bangs.js" , "tags": "", "content": "const bangActions = {\n \"!0\": { url: \"{{ site.posts.first.url }}\", param: null },\n \"!help\": { url: '{{ site.url }}/search/about', param: null },\n \"!contact\": { url: '{{ site.url }}/contact', param: null },\n \"!browse\": { url: '{{ site.url }}/browse', param: null },\n \"!hire-me\": { url: '{{ site.url }}/hire-me', param: null },\n \"!ddg\": { url: 'https://duckduckgo.com/', param: 'q' },\n \"!br\": { url: 'https://search.brave.com/search', param: 'q' },\n \"!t\": { url: 'https://twitter.com/search', param: 'q' },\n \"!tff\": { url: 'https://twitter.com/search', param: 'q', special: \"filter%3Afollows%20\" }, // Special case, handle separately\n \"!b\": { url: 'https://www.bing.com/search', param: 'q' },\n \"!eco\": { url: 'https://www.ecosia.org/search', param: 'q' },\n \"!g\": { url: 'https://www.google.com/search', param: 'q' },\n \"!qw\": { url: 'https://www.qwant.com/', param: 'q' },\n \"!y\": { url: 'https://you.com/search', param: 'q' },\n \"!p\": { url: 'https://www.perplexity.ai/search/', param: 'q' },\n \"!ss\": { url: 'https://www.semanticscholar.org/search', param: 'q' },\n \"!w\": { url: 'https://en.wikipedia.org/w/index.php', param: 'search' },\n}\n\n\n// Handle the bang action\nfunction handleBang(input, target) {\n const bang = input.split(' ')[0];\n const query = input.slice(bang.length).trim();\n const form = document.getElementById('search-form');\n\n const bangAction = bangActions[bang];\n\n // If bang is \"!random\" or \"!r\", handle it differently.\n if (bang === \"!random\" || bang === \"!r\") {\n handleRandom(target);\n return;\n }\n \n // If bang is not in the actions or it does not have a param field, simply open the URL.\n if (!bangAction || !bangAction.param) {\n window.open(bangAction.url, target);\n return;\n }\n\n // If bang action involves changing the form, handle it here.\n handleFormChange(form, bangAction, query, target);\n}\n\n// This function handles changes to the form action and submits the form.\nfunction handleFormChange(form, bangAction, query, target) {\n form.action = bangAction.url;\n form.q.name = bangAction.param;\n // Check if this bangAction has a special handling.\n if (bangAction.special) {\n // If it does, append the special value to the query.\n form.q.value = bangAction.special + query;\n query = form.q.value;\n } else {\n form.q.value = query;\n }\n\n window.open(form.action + \"?\" + form.q.name + \"=\" + query, target);\n}\n\n\n\nfunction handleBangs(form) {\n var originalAction = form.action; // Store the original action\n var originalTarget = form.target; // Store the original target\n var input = form.q.value;\n if (input.startsWith('!')) {\n form.target = \"_blank\"; // This will make the form open in a new target\n handleBang(input, form.target)\n // This is where you manually submit the form after changing form.action\n form.submit();\n }\n form.action = originalAction; // Reset the form action to its original value\n form.target = originalTarget; \n // return false; // Return false to prevent the default form submission\n form.submit();\n}\n\nfunction handleRandom(target) {\n fetch('{{ site.url }}/assets/item_index.json')\n .then(response => response.json())\n .then(data => {\n var randomIndex = Math.floor(Math.random() * data.length);\n var randomPage = data[randomIndex].url;\n window.open(randomPage + \"?source=random\", target);\n })\n .catch((error) => console.error('Error:', error));\n}", "snippet": "\n", "url": "/js/search/bangs.js", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "search-bangs", "type": "pages" , "date": "", "title": "search/!Bangs" , "tags": "", "content": "\nThis page lists the supported !bangs (for more see [search/Guide](guide)). The list is dynamically compiled from the JavaScript code implementing the functionality. The bang on the left is the search query, the URL on the right is the action initiated when searching that bang in this website's search tool.\n \n\n\n\n!Bangs may not work on mobile. [2023-06-27 16:04:11]\nThis list is out of date because the `js/search/bangs.js` script has changed. [2023-08-04 18:54:08]\n\n\n\n\n A list of !bangs with their corresponding URLs\n \n \n !Bang\n URL\n \n \n \n {% for item in site.data.bangs %}\n {% assign new_url = item[1] | replace: 'siteUrl',site.url %}\n \n [\n{{ item[0] }}\n]\n {{ new_url }}\n \n {% endfor %}\n \n\n\n\n\nIn addition to the above there is also [\n!random\n], which opens a random page on this website.\n \n\n\n\n", "snippet": "\n", "url": "/search/bangs/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-benchmarks", "type": "pages" , "date": "", "title": "benchmarks tag" , "tags": "", "content": "{% assign tag_name = \"benchmarks\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"benchmarks\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"benchmarks\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/benchmarks/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "better-search", "type": "pages" , "date": "2023-08-28 10:18:14 -0700", "title": "Better search." , "tags": "better-search", "content": "We've long needed better ways to think about, talk about, and do search. \n\nResearchers have long identified problems. Searchers have long issued complaints.\n\nBut we've been limited by the successful exploitation of prior innovations. New approaches had been coopted, overshadowed, or never imagined.\n\nNow, the popularity of OpenAI's ChatGPT has forced or helped a lot of people to see search (web search, enterprise search, local search, etc.) differently. We can see that search is more than ten blue links. It is more than one company. It is built on the collection of people's words and clicks. It could be different.\n\nWe have a big chance to really change search for the better. Will we?\n\n\n\n\nSee my write-up on [tooling to support people in making hands-on and open evaluations of search](/2024/01/30/tooling-to-support-people-in-making-hands-on-and-open-evaluations-of-search/).\n\n\n\nSee [my exploration of search rights at SearchRights.org](https://searchrights.org/).\n\n\n", "snippet": "\n", "url": "/better-search/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-better-search", "type": "pages" , "date": "", "title": "better-search tag" , "tags": "", "content": "{% assign tag_name = \"better-search\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"better-search\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"better-search\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/better-search/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "diss-bibliography", "type": "diss" , "date": "2022-12-16", "title": "Bibliography" , "tags": "[diss]", "content": "\n\nAbbate, J. (2012).Recoding gender: Women’s changing participation in computing (history of computing). The MIT Press. https://mitpress.mit.edu/9780262304535/ \n\n\n\nAmes, M. (2019).The charisma machine : The life, death, and legacy of one laptop per child. The MIT Press.\n\n\nAnanny, M., & Crawford, K. (2018). Seeing without knowing: Limitations of the transparency ideal and its application to algorithmic accountability.New Media & Society,20 (3), 973–989. https://doi.org/10.1177/1461444816676645 \n\n\n\nAndalibi, N., & Bowen, K. (2022). Internet-based information behavior after pregnancy loss: Interview study.JMIR Form Res,6 (3), e32640. https://doi.org/10.2196/32640 \n\n\n\nAndalibi, N., & Garcia, P. (2021). Sensemaking and coping after pregnancy loss.Proc. ACM Hum.-Comput. Interact.,5 (CSCW1), 1–32. https://doi.org/10.1145/3449201 \n\n\n\nAntin, J., & Cheshire, C. (2010). Readers are not free-riders: Reading as a form of participation on wikipedia.Proceedings of the 2010 Acm Conference on Computer Supported Cooperative Work, 127–130. https://doi.org/10.1145/1718918.1718942 \n\n\n\nAranda, J. (2010).A theory of shared understanding for software organizations [PhD thesis, University of Toronto]. https://tspace.library.utoronto.ca/bitstream/1807/26150/6/ArandaGarcia_Jorge_201011_PhD_thesis.pdf \n\n\n\nAvgustinov, P. (2021).Improving github code search | the github blog. https://github.blog/2021-12-08-improving-github-code-search/ .\n\n\nAvnoon, N. (2021). Data scientists’ identity work: Omnivorous symbolic boundaries in skills acquisition.Work, Employment and Society,0 (0), 0950017020977306. https://doi.org/10.1177/0950017020977306 \n\n\n\nBadaracco, J. (1991).The knowledge link: How firms compete through strategic alliances. Harvard Business Press. https://archive.org/details/knowledgelinkhow0000bada \n\n\n\nBailey, D. E., & Leonardi, P. M. (2015).Technology choices: Why occupations differ in their embrace of new technology. MIT Press. http://www.jstor.org/stable/j.ctt17kk9d4 \n\n\n\nBailey, D. E., Leonardi, P. M., & Chong, J. (2010). Minding the gaps: Understanding technology interdependence and coordination in knowledge work.Organization Science,21 (3), 713–730. https://doi.org/10.1287/orsc.1090.0473 \n\n\n\nBansal, C., Zimmermann, T., Awadallah, A. H., & Nagappan, N. (2019). The usage of web search for software engineering.arXiv Preprint arXiv:1912.09519.\n\n\nBarad, K. (2003). Posthumanist performativity: Toward an understanding of how matter comes to matter.Signs: Journal of Women in Culture and Society,28 (3), 801–831.\n\n\nBarley, S. R. (1986). Technology as an occasion for structuring: Evidence from observations of ct scanners and the social order of radiology departments.Administrative Science Quarterly,31 (1), 78–108. http://www.jstor.org/stable/2392767 \n\n\n\nBeane, M. (2017).Operating in the shadows: The productive deviance needed to make robotic surgery work [PhD thesis]. MIT.\n\n\nBeane, M. (2019). Shadow learning: Building robotic surgical skill when approved means fail.Administrative Science Quarterly,64 (1), 87–123. https://doi.org/10.1177/0001839217751692 \n\n\n\nBechky, B. A. (2003). Object lessons: Workplace artifacts as representations of occupational jurisdiction.American Journal of Sociology,109 (3), 720–752.\n\n\nBechky, B. A. (2006a). Gaffers, gofers, and grips: Role-based coordination in temporary organizations.Organization Science,17 (1), 3–21.\n\n\nBechky, B. A. (2006b). Talking about machines, thick description, and knowledge work.Organization Studies,27 (12), 1757–1768. https://doi.org/10.1177/0170840606071894 \n\n\n\nBell, G., Blythe, M., & Sengers, P. (2005). Making by making strange: Defamiliarization and the design of domestic technologies.ACM Transactions on Computer-Human Interaction (TOCHI),12 (2), 149–173. https://doi.org/10.1145/1067860.1067862 \n\n\n\nBeniger, J. (1986).The control revolution: Technological and economic origins of the information society. Harvard university press.\n\n\nBernstein, E. S. (2012). The transparency paradox: A role for privacy in organizational learning and operational control.Administrative Science Quarterly,57 (2), 181–216. https://doi.org/10.1177/0001839212453028 \n\n\n\nBeunza, D., & Stark, D. (2012). From dissonance to resonance: Cognitive interdependence in quantitative finance.Economy and Society,41 (3), 383–417. https://doi.org/10.1080/03085147.2011.638155 \n\n\n\nBhatt, I., & MacKenzie, A. (2019). Just google it! Digital literacy and the epistemology of ignorance.Teaching in Higher Education,24 (3), 302–317. https://doi.org/10.1080/13562517.2018.1547276 \n\n\n\nBiden, J. (2022).I know covid testing remains frustrating, but we are making improvements. https://twitter.com/POTUS/status/1478761964327297026 .\n\n\nBijker, W. E., Hughes, T. P., & Pinch, T. (1993). Introduction. InThe social construction of technological systems (pp. 9–50). MIT Press.\n\n\nBilić, P. (2016). Search algorithms, hidden labour and information control.Big Data & Society,3 (1), 205395171665215. https://doi.org/10.1177/2053951716652159 \n\n\n\nBirt, L., Scott, S., Cavers, D., Campbell, C., & Walter, F. (2016). Member checking: A tool to enhance trustworthiness or merely a nod to validation?Qualitative Health Research,26 (13), 1802–1811. https://doi.org/10.1177/1049732316654870 \n\n\n\nBlackler, F. (1995). Knowledge, knowledge work and organizations: An overview and interpretation.Organization Studies,16 (6), 1021–1046. https://doi.org/10.1177/017084069501600605 \n\n\n\nBowker, G. C. (1994).Science on the run: Information management and industrial geophysics at schlumberger, 1920-1940 (inside technology) (Hardcover, p. 199). The MIT Press. https://sicm.mitpress.mit.edu/books/science-run \n\n\n\nBowker, G. C., Baker, K., Millerand, F., & Ribes, D. (2010). Toward information infrastructure studies: Ways of knowing in a networked environment. In J. Hunsinger, L. Klastrup, & M. Allen (Eds.),International handbook of internet research (pp. 97–117). Springer Netherlands. https://doi.org/10.1007/978-1-4020-9789-8_5 \n\n\n\nBowker, G. C., & Star, S. L. (2000).Sorting things out: Classification and its consequences. MIT press. https://mitpress.mit.edu/books/sorting-things-out \n\n\n\nboyd, danah. (2018). You think you want media literacy… do you? InMedium. https://points.datasociety.net/you-think-you-want-media-literacy-do-you-7cad6af18ec2 \n\n\n\nBrandt, J., Guo, P. J., Lewenstein, J., Dontcheva, M., & Klemmer, S. R. (2009). Two studies of opportunistic programming: Interleaving web foraging, learning, and writing code.Proceedings of the Sigchi Conference on Human Factors in Computing Systems, 1589–1598. https://doi.org/10.1145/1518701.1518944 \n\n\n\nBrown, J., & Duguid, P. (2001). Knowledge and organization: A social-practice perspective.Organization Science,12, 198–213.\n\n\nBrown, J. S., & Duguid, P. (1991). Organizational learning and communities-of-practice: Toward a unified view of working, learning, and innovation.Organization Science,2 (1), 40–57. http://www.jstor.org/stable/2634938 \n\n\n\nBrown, J. S., & Duguid, P. (1996).Situated learning perspectives (H. McLellen, Ed.). Educational Technology Publications. https://www.johnseelybrown.com/StolenKnowledge.pdf \n\n\n\nBrown, J. S., & Duguid, P. (1998). Organizing knowledge.California Management Review,40 (3), 90–111.\n\n\nBucciarelli, L. L. L. (1996).Designing engineers (Paperback, p. 230). MIT Press. https://mitpress.mit.edu/books/designing-engineers \n\n\n\nBucher, T. (2017). The algorithmic imaginary: Exploring the ordinary affects of facebook algorithms.Information, Communication & Society,20 (1), 30–44. https://doi.org/10.1080/1369118X.2016.1154086 \n\n\n\nBurrell, J. (2009). The field site as a network: A strategy for locating ethnographic research.Field Methods,21 (2), 181–199. https://doi.org/10.1177/1525822X08329699 \n\n\n\nBurrell, J. (2012).Invisible users: Youth in the internet cafés of urban ghana (acting with technology). The MIT Press.\n\n\nBurrell, J. (2016). How the machine “thinks”: Understanding opacity in machine learning algorithms.Big Data & Society,3 (1), 2053951715622512. https://doi.org/10.1177/2053951715622512 \n\n\n\nBurrell, J. (2018). Thinking relationally about digital inequality in rural regions of the u.s.First Monday,23 (6). https://doi.org/10.5210/fm.v23i6.8376 \n\n\n\nBurrell, J. (2010). Evaluating Shared Access: Social equality and the circulation of mobile phones in rural Uganda.Journal of Computer-Mediated Communication,15 (2), 230–250. https://doi.org/10.1111/j.1083-6101.2010.01518.x \n\n\n\nBurrell, J., & Fourcade, M. (2021). The society of algorithms.Annual Review of Sociology,47 (1), null. https://doi.org/10.1146/annurev-soc-090820-020800 \n\n\n\nBurrell, J., Kahn, Z., Jonas, A., & Griffin, D. (2019). When users control the algorithms: Values expressed in practices on twitter.Proc. ACM Hum.-Comput. Interact.,3 (CSCW). https://doi.org/10.1145/3359240 \n\n\n\nCadwalladr, C. (2016a). Google, democracy and the truth about internet search.The Guardian,4 (12). https://www.theguardian.com/technology/2016/dec/04/google-democracy-truth-internet-search-facebook \n\n\n\nCadwalladr, C. (2016b). Google is not “just” a platform. It frames, shapes and distorts how we see the world.The Guardian,11 (12). https://www.theguardian.com/commentisfree/2016/dec/11/google-frames-shapes-and-distorts-how-we-see-world \n\n\n\nCambrosio, A., & Keating, P. (1995).Exquisite specificity: The monoclonal antibody revolution. Oxford University Press.\n\n\nCambrosio, A., Limoges, C., & Hoffman, E. (2013). Expertise as a network: A case study of the controversies over the environmental release of genetically engineered organisms. In N. Stehr & R. V. Ericson (Eds.),The culture and power of knowledge (pp. 341–362). De Gruyter. https://doi.org/doi:10.1515/9783110847765.341 \n\n\n\nCaplan, R., & Bauer, A. J. (2022).How would one write/call the period immediately after everyone-started-caring-all-at-once-about-disinfo era? [Conversation]. https://twitter.com/robyncaplan/status/1522643551527579648 .\n\n\nCarlo, J. L., Lyytinen, K., & Rose, G. M. (2012). A knowledge-based model of radical innovation in small software firms.MIS Quarterly,36 (3), 865–895. http://www.jstor.org/stable/41703484 \n\n\n\nCaulfield, M. (2019a).Data voids and the google this ploy: Kalergi plan. https://hapgood.us/2019/04/12/data-voids-and-the-google-this-ploy-kalergi-plan/ .\n\n\nCaulfield, M. (2019b).SIFT (the four moves) | hapgood. https://hapgood.us/2019/06/19/sift-the-four-moves/ .\n\n\nChen, M., Fischer, F., Meng, N., Wang, X., & Grossklags, J. (2019). How reliable is the crowdsourced knowledge of security implementation?2019 Ieee/Acm 41st International Conference on Software Engineering (Icse), 536–547. https://doi.org/10.1109/ICSE.2019.00065 \n\n\n\nChen, X., Ye, Z., Xie, X., Liu, Y., Gao, X., Su, W., Zhu, S., Sun, Y., Zhang, M., & Ma, S. (2022). Web search via an efficient and effective brain-machine interface.Proceedings of the Fifteenth Acm International Conference on Web Search and Data Mining, 1569–1572. https://doi.org/10.1145/3488560.3502185 \n\n\n\nChristin, A. (2017). Algorithms in practice: Comparing web journalism and criminal justice.Big Data & Society,4 (2), 1–12. https://doi.org/10.1177/2053951717718855 \n\n\n\nChristin, A. (2018). Counting clicks: Quantification and variation in web journalism in the united states and france.American Journal of Sociology,123 (5), 1382–1415.\n\n\nChristin, A. (2020a).Metrics at work: Journalism and the contested meaning of algorithms. Princeton University Press.\n\n\nChristin, A. (2020b). The ethnographer and the algorithm: Beyond the black box.Theory and Society. https://doi.org/10.1007/s11186-020-09411-3 \n\n\n\nCohen, J. E. (2012).Configuring the networked self. Yale University Press. https://doi.org/10.12987/9780300177930 \n\n\n\nCohen, W. M., & Levinthal, D. A. (1990). Absorptive capacity: A new perspective on learning and innovation.Administrative Science Quarterly,35 (1), 128–152. http://www.jstor.org/stable/2393553 \n\n\n\nColeman, E. G. (2012).Coding freedom: The ethics and aesthetics of hacking. Princeton University Press. https://gabriellacoleman.org/Coleman-Coding-Freedom.pdf \n\n\n\nCollins, H. M., & Evans, R. (2007).Rethinking expertise. University of Chicago Press. https://press.uchicago.edu/ucp/books/book/chicago/R/bo5485769.html \n\n\n\nCommission, F. T. (2013).Sample letter to general purpose search engines. https://www.ftc.gov/sites/default/files/attachments/press-releases/ftc-consumer-protection-staff-updates-agencys-guidance-search-engine-industryon-need-distinguish/130625searchenginegeneralletter.pdf .\n\n\nConstant, D., Sproull, L., & Kiesler, S. (1996). The kindness of strangers: The usefulness of electronic weak ties for technical advice.Organization Science,7 (2), 119–135.\n\n\nContu, A., & Willmott, H. (2003). Re-embedding situatedness: The importance of power relations in learning theory.Organization Science,14 (3), 283–296.\n\n\nCotter, K. (2021). “Shadowbanning is not a thing”: Black box gaslighting and the power to independently know and credibly critique algorithms.Information, Communication & Society,0 (0), 1–18. https://doi.org/10.1080/1369118X.2021.1994624 \n\n\n\nCotter, K. (2022). Practical knowledge of algorithms: The case of BreadTube.New Media & Society, 1–20. https://doi.org/10.1177/14614448221081802 \n\n\n\nDaly, A., & Scardamaglia, A. (2017). Profiling the australian google consumer: Implications of search engine practices for consumer law and policy.J Consum Policy,40 (3), 299–320. https://doi.org/10.1007/s10603-017-9349-9 \n\n\n\nDave, P. (2022).Google cuts racy results by 30. Reuters. https://www.reuters.com/technology/google-cuts-racy-results-by-30-searches-like-latina-teenager-2022-03-30 \n\n\n\nDear, P. (2001). Science studies as epistemography.The One Culture, 128–141.\n\n\nde Laet, M., & Mol, A. (2000). The zimbabwe bush pump: Mechanics of a fluid technology.Social Studies of Science,30 (2), 225–263. https://doi.org/10.1177/030631200030002002 \n\n\n\nDeterding, N. M., & Waters, M. C. (2018). Flexible coding of in-depth interviews: A twenty-first-century approach.Sociological Methods & Research, 0049124118799377. https://doi.org/10.1177/0049124118799377 \n\n\n\nDijck, J. van. (2010). Search engines and the production of academic knowledge.International Journal of Cultural Studies,13 (6), 574–592. https://doi.org/10.1177/1367877910376582 \n\n\n\nDiMaggio, P. J., & Powell, W. W. (1983). The iron cage revisited: Institutional isomorphism and collective rationality in organizational fields.American Sociological Review, 147–160.\n\n\nDiResta, R. (2018).The complexity of simply searching for medical advice. https://www.wired.com/story/the-complexity-of-simply-searching-for-medical-advice/ \n\n\n\nDoty, N. (2020).Enacting Privacy in Internet Standards [Ph.D. dissertation, University of California, Berkeley]. https://npdoty.name/enacting-privacy/ \n\n\n\nDreyfus, H. L., & Dreyfus, S. E. (2005). Peripheral vision: Expertise in real world contexts.Organization Studies,26 (5), 779–792.\n\n\nDuguid, P. (2008).Community, economic creativity, and organization (A. Amin & J. Roberts, Eds.). Oxford University Press. https://oxford.universitypressscholarship.com/view/10.1093/acprof:oso/9780199545490.001.0001/acprof-9780199545490-chapter-1 \n\n\n\nDunbar-Hester, C. (2020).Hacking diversity: The politics of inclusion in open technology cultures (1st Edition). Princeton University Press. https://press.princeton.edu/books/hardcover/9780691182070/hacking-diversity \n\n\n\nDzonsons, K. (2011).History of unix manpages. https://manpages.bsd.lv/history.html .\n\n\nEkbia, H., & Nardi, B. (2014). Heteromation and its (dis) contents: The invisible division of labor between humans and machines.First Monday. https://doi.org/https://doi.org/10.5210/FM.V19I6.5331 \n\n\n\nEkbia, H. R., & Nardi, B. A. (2017).Heteromation, and other stories of computing and capitalism. MIT Press.\n\n\nElish, M. C., & Watkins, E. A. (2019).Algorithms on the shop floor: Data-driven technologies in organizational context. https://datasociety.net/library/algorithms-on-the-shop-floor/ \n\n\n\nEnsmenger, N. (2010).The computer boys take over: Computers, programmers, and the politics of technical expertise. The MIT Press.\n\n\nEnsmenger, N. (2015). “Beards, sandals, and other signs of rugged individualism”: Masculine culture within the computing professions.Osiris,30 (1), 38–65. http://www.jstor.org/stable/10.1086/682955 \n\n\n\nEyal, G. (2019).The crisis of expertise. Polity Press. https://www.wiley.com/en-us/The+Crisis+of+Expertise-p-9780745665771 \n\n\n\nFeldman, M. S., & March, J. G. (1981). Information in organizations as signal and symbol.Administrative Science Quarterly,26 (2), 171–186. http://www.jstor.org/stable/2392467 \n\n\n\nFerguson, A. M., McLean, D., & Risko, E. F. (2015). Answers at your fingertips: Access to the internet influences willingness to answer questions.Consciousness and Cognition,37, 91–102. https://doi.org/10.1016/j.concog.2015.08.008 \n\n\n\nFine, M. (2006). Bearing witness: Methods for researching oppression and resistance—a textbook for critical research.Social Justice Research,19, 83–108.\n\n\nFirouzi, E., Sami, A., Khomh, F., & Uddin, G. (2020). On the use of c# unsafe code context: An empirical study of stack overflow.Proceedings of the 14th Acm / Ieee International Symposium on Empirical Software Engineering and Measurement (Esem). https://doi.org/10.1145/3382494.3422165 \n\n\n\nFischer, F., Böttinger, K., Xiao, H., Stransky, C., Acar, Y., Backes, M., & Fahl, S. (2017). Stack overflow considered harmful? The impact of copy&paste on android application security.2017 Ieee Symposium on Security and Privacy (Sp), 121–136.\n\n\nFlick, U. (2009).An introduction to qualitative research. SAGE Publications Ltd.\n\n\nFourcade, M. (2010).Economists and societies. Princeton.\n\n\nFourcade, M., & Healy, K. (2017). Seeing like a market.Socio-Economic Review,15 (1), 9–29. https://doi.org/https://doi.org/10.1093/ser/mww033 \n\n\n\nFreeman, J. (2013). The tyranny of structurelessness.WSQ,41 (3-4), 231–246. https://doi.org/10.1353/wsq.2013.0072 \n\n\n\nGasson, S., & Purcelle, M. (2018). A participation architecture to support user peripheral participation in a hybrid foss community.Trans. Soc. Comput.,1 (4). https://doi.org/10.1145/3290837 \n\n\n\nGiddens, A. (1991).The consequences of modernity. Polity Press in association with Basil Blackwell, Oxford, UK.\n\n\nGilbert, S. A. (2018).Motivations for participating in online initiatives: Exploring motivations across initiative types [PhD thesis, University of British Columbia]. https://doi.org/http://dx.doi.org/10.14288/1.0372890 \n\n\n\nGillespie, T. (2014).The relevance of algorithms (T. Gillespie, P. J. Boczkowski, & K. A. Foot, Eds.; pp. 167–193). The MIT Press. https://doi.org/10.7551/mitpress%2F9780262525374.003.0009 \n\n\n\nGillespie, T. (2017). Algorithmically recognizable: Santorum’s google problem, and google’s santorum problem.Information, Communication & Society,20 (1), 63–80. https://doi.org/10.1080/1369118X.2016.1199721 \n\n\n\nGirard, M., & Stark, D. (2002). Distributing intelligence and organizing diversity in new-media projects.Environment and Planning A,34 (11), 1927–1949.\n\n\nGitelman, L. (2006).Always already new: Media, history, and the data of culture. MIT Press. https://direct.mit.edu/books/book/4377/Always-Already-NewMedia-History-and-the-Data-of \n\n\n\nGitHub. (2022).Introducing an all-new code search and code browsing experience | github changelog. https://github.blog/changelog/2022-11-09-introducing-an-all-new-code-search-and-code-browsing-experience/ .\n\n\nGoffman, E. (1956).The presentation of self in everyday life. University of Edinburgh.\n\n\nGoldenfein, J., & Griffin, D. (2022). Google scholar – platforming the scholarly economy.Internet Policy Review,11 (3), 117. https://doi.org/10.14763/2022.3.1671 \n\n\n\nGoldenfein, J., Mulligan, D. K., Nissenbaum, H., & Ju, W. (2020). Through the handoff lens: Competing visions of autonomous futures.Berkeley Tech. L.J.. Berkeley Technology Law Journal,35 (IR), 835. https://doi.org/10.15779/Z38CR5ND0J \n\n\n\nGoldenfein, J., Mulligan, D., & Nissenbaum, H. (2019).Through the handoff lens: Are autonomous vehicles no-win for users. https://pdfs.semanticscholar.org/341d/a18649eb9627fe29d4baf28fb4ee7d3eafa3.pdf \n\n\n\nGolebiewski, M., & boyd, danah. (2018). Data voids: Where missing data can easily be exploited.Data & Society. https://datasociety.net/library/data-voids-where-missing-data-can-easily-be-exploited/ \n\n\n\nGoogle. (2022).Searchqualityevaluatorguidelines.pdf. https://static.googleusercontent.com/media/guidelines.raterhub.com/en//searchqualityevaluatorguidelines.pdf .\n\n\nGriffin, D. (2019).When searching we sometimes use keywords that direct us... \nhttps://twitter.com/danielsgriffin/status/1183785841732120576 .\n\n\nGriffin, D., & Lurie, E. (2022). Search quality complaints and imaginary repair: Control in articulations of google search.New Media & Society,0 (0), 14614448221136505. https://doi.org/10.1177/14614448221136505 \n\n\n\nGross, M., & McGoey, L. (2015).Routledge international handbook of ignorance studies. Routledge. https://doi.org/10.4324/9781315867762 \n\n\n\nGross, M., & McGoey, L. (2022).Routledge international handbook of ignorance studies. Routledge. https://doi.org/10.4324/9781003100607 \n\n\n\nGuendelman, S., Pleasants, E., Cheshire, C., & Kong, A. (2022). Exploring google searches for out-of-clinic medication abortion in the united states during 2020: Infodemiology approach using multiple samples.JMIR Infodemiology,2 (1), e33184. https://doi.org/10.2196/33184 \n\n\n\nGunn, H. K., & Lynch, M. P. (2018). Googling. InThe routledge handbook of applied epistemology (pp. 41–53). Routledge. https://doi.org/10.4324/9781315679099-4 \n\n\n\nHaider, J. (2016). The structuring of information through search: Sorting waste with google.Aslib Journal of Information Management,68 (4), 390–406. https://doi.org/10.1108/AJIM-12-2015-0189 \n\n\n\nHaider, J. (2017).Controlling the urge to search. Studying the informational texture of practices by exploring the missing element.10 (1). https://doi.org/http://dx.doi.org/10.14288/1.0372890 \n\n\n\nHaider, J., Rödl, M., & Joosse, S. (2022). Algorithmically embodied emissions: The environmental harm of everyday life information in digital culture.IR,27. https://doi.org/10.47989/colis2224 \n\n\n\nHaider, J., & Sundin, O. (2019).Invisible search and online search engines: The ubiquity of search in everyday life. Routledge. https://doi.org/https://doi.org/10.4324/9780429448546 \n\n\n\nHanselman, S. (2013).Am i really a developer or just a good googler? \nhttps://www.hanselman.com/blog/am-i-really-a-developer-or-just-a-good-googler .\n\n\nHanselman, S. (2020).Me: 30 years writing software for money. https://twitter.com/shanselman/status/1289804628310110209 .\n\n\nHaraway, D. J. (1988). Situated knowledges: The science question in feminism and the privilege of partial perspective.Feminist Studies,14, 205–224.\n\n\nHearst, M. A. (2009).Search user interfaces. Cambridge University Press.\n\n\nHicks, M. (2017).Programmed inequality: How britain discarded women technologists and lost its edge in computing. MIT Press.\n\n\nHill Collins, P. (2002).Black feminist thought: Knowledge, consciousness, and the politics of empowerment (Rev. 10th anniversary ed). Routledge.\n\n\nHippel, E. (1988).The sources of innovation. Oxford University Press.\n\n\nHirschhorn, L. (1997).Reworking authority: Leading and following in the post-modem organization. MIT Press.\n\n\nHochstein, L. (2021).I have no idea what i’m doing. https://surfingcomplexity.blog/2021/11/28/i-have-no-idea-what-im-doing/ \n\n\n\nHodgson, G. M. (2001).How economics forgot history: The problem of historical specificity in social science. Routledge.\n\n\nHoffmann, A. L. (2019). Where fairness fails: Data, algorithms, and the limits of antidiscrimination discourse.Information, Communication & Society,22 (7), 900–915. https://doi.org/10.1080/1369118X.2019.1573912 \n\n\n\nHoffmann, A. L. (2021). Terms of inclusion: Data, discourse, violence.New Media & Society,23 (12), 3539–3556. https://doi.org/10.1177/1461444820958725 \n\n\n\nHouse of Lords, Select Committee on Democracy and Digital Technologies. (2020).Corrected oral evidence: Democracy and digital technologies. https://committees.parliament.uk/oralevidence/360/html/ .\n\n\nHöchstötter, N., & Lewandowski, D. (2009). What users see – structures in search engine results pages.Information Sciences,179 (12), 1796–1812. https://doi.org/10.1016/j.ins.2009.01.028 \n\n\n\nHunt, A., & Thomas, D. (1999).The pragmatic programmer: From journeyman to master. Addison-Wesley Professional.\n\n\nHutchins, E. (1995).Cognition in the wild. MIT Press.\n\n\nIntrona, L. D. (2016). Algorithms, governance, and governmentality.Science, Technology, & Human Values,41 (1), 17–49. https://doi.org/10.1177/0162243915587360 \n\n\n\nIntrona, L. D., & Nissenbaum, H. (2000). Shaping the web: Why the politics of search engines matters.The Information Society,16 (3), 169–185. https://doi.org/10.1080/01972240050133634 \n\n\n\nIskander, N. (2021).Does skill make us human?: Migrant workers in 21st-century qatar and beyond. Princeton University Press.\n\n\nJack, C. (2017). Lexicon of lies: Terms for problematic information.Data & Society,3, 22. https://datasociety.net/output/lexicon-of-lies/ \n\n\n\nJackson, S. J. (2014).Rethinking repair (T. Gillespie, P. J. Boczkowski, & K. A. Foot, Eds.; pp. 221–240). The MIT Press. https://doi.org/10.7551/mitpress/9780262525374.003.0011 \n\n\n\nKalliamvakou, E. (2022).Research: Quantifying github copilot’s impact on developer productivity and happiness | the github blog. https://github.blog/2022-09-07-research-quantifying-github-copilots-impact-on-developer-productivity-and-happiness/ .\n\n\nKarapapa, S., & Borghi, M. (2015). Search engine liability for autocomplete suggestions: Personality, privacy and the power of the algorithm.Int J Law Info Tech,23 (3), 261–289. https://doi.org/10.1093/ijlit/eav009 \n\n\n\nKatznelson, I. (2005).When affirmative action was white: An untold history of racial inequality in twentieth-century america. W.W. Norton & Company.\n\n\nKhlaaf, H., Mishkin, P., Achiam, J., Krueger, G., & Brundage, M. (2022).A hazard analysis framework for code synthesis large language models. arXiv. https://doi.org/10.48550/ARXIV.2207.14157 \n\n\n\nKleppmann, M. (2017).Designing data-intensive applications : The big ideas behind reliable, scalable, and maintainable systems. O’Reilly Media.\n\n\nKluttz, D. N., & Mulligan, D. K. (2019).Automated decision support technologies and the legal profession. https://doi.org/10.15779/Z38154DP7K \n\n\n\nKoonin, S. (2019).Everything i googled in a week as a professional software engineer - localghost. https://localghost.dev/2019/09/everything-i-googled-in-a-week-as-a-professional-software-engineer/ .\n\n\nKotamraju, N. P. (2002). Keeping up: Web design skill and the reinvented worker.Information, Communication & Society,5 (1), 1–26. https://doi.org/10.1080/13691180110117631 \n\n\n\nKraschnewski, J. L., Chuang, C. H., Poole, E. S., Peyton, T., Blubaugh, I., Pauli, J., Feher, A., & Reddy, M. (2014). Paging “dr. Google”: Does technology fill the gap created by the prenatal care visit structure? Qualitative focus group study with pregnant women.J Med Internet Res,16 (6), e147. https://doi.org/10.2196/jmir.3385 \n\n\n\nKruschwitz, U., Hull, C., & others. (2017).Searching the enterprise (Vol. 11). Now Publishers.\n\n\nKutz, J. (2022).Our search liaison on 25 years of keeping up with search. https://blog.google/products/search/danny-25-years-of-search/ ; Google.\n\n\nLatour, B. (1986). Visualization and cognition.Knowledge and Society,6 (6), 1–40.\n\n\nLatour, B. (1990). Drawing things together. In M. Lynch & S. Woolgar (Eds.),Representation in scientific practice. MIT Press.\n\n\nLatour, B. (1992). Where are the missing masses? The sociology of a few mundane artifacts. In W. E. Bijker & J. Law (Eds.),Shaping technology/building society: Studies in sociotechnical change (pp. 225–228). MIT Press.\n\n\nLave, J., & Wenger, E. (1991).Situated learning: Legitimate peripheral participation. Cambridge university press. https://www.cambridge.org/highereducation/books/situated-learning/6915ABD21C8E4619F750A4D4ACA616CD#overview \n\n\n\nLeonard-Barton, D. (1995).Wellsprings of knowledge: Building and sustaining the sources of innovation. Harvard Business School Press.\n\n\nLeonardi, P. M. (2007). Activating the informational capabilities of information technology for organizational change.Organization Science,18 (5), 813–831. https://doi.org/10.1287/orsc.1070.0284 \n\n\n\nLeonardi, P. M. (2011). When flexible routines meet flexible technologies: Affordance, constraint, and the imbrication of human and material agencies.MIS Quarterly,35 (1), 147–167. http://www.jstor.org/stable/23043493 \n\n\n\nLianos, M. (2010). Periopticon: Control beyond freedom and coercion and two possible advancements in the social sciences. In K. D. Haggerty & M. Samatas (Eds.),Surveillance and democracy (pp. 69–88). https://www.taylorfrancis.com/chapters/edit/10.4324/9780203852156-11/periopticon-control-beyond-freedom-coercion-two-possible-advancements-social-sciences-michalis-lianos \n\n\n\nLiboiron, M. (2021).Pollution is colonialism. Duke University Press. https://www.dukeupress.edu/pollution-is-colonialism \n\n\n\nLofland, J., & Lofland, L. H. (1995).Analyzing social settings. Wadsworth Publishing Company.\n\n\nLurie, E., & Mulligan, D. K. (2021).Searching for representation: A sociotechnical audit of googling for members of U.S. Congress (Working Paper). https://emmalurie.github.io/docs/preprint-searching.pdf \n\n\n\nMager, A. (2009). Mediated health: Sociotechnical practices of providing and using online health information.New Media & Society,11 (7), 1123–1142. https://doi.org/10.1177/1461444809341700 \n\n\n\nMager, A. (2012). ALGORITHMIC ideology.Information, Communication & Society,15 (5), 769–787. https://doi.org/10.1080/1369118X.2012.676056 \n\n\n\nMarcus, G. E. (1995). Ethnography in/of the world system: The emergence of multi-sited ethnography.Annual Review of Anthropology,24, 95–117. http://www.jstor.org/stable/2155931 \n\n\n\nMart, S. N. (2017). The algorithm as a human artifact: Implications for legal [re] search.Law Libr. J.,109, 387. https://scholar.law.colorado.edu/articles/755/ \n\n\n\nMathew, A. J., & Cheshire, C. (2018). A fragmented whole: Cooperation and learning in the practice of information security.Center for Long-Term Cybersecurity, UC Berkeley.\n\n\nMcChesney, R. W. (1997).Corporate media and the threat to democracy. Seven Stories Press.\n\n\nMcDermott, R., & Lave, J. (2006). Estranged labor learning. In P. Sawchuk, N. Duarte, & M. Elhammoumi (Eds.),Critical perspectives on activity: Explorations across education, work, and everyday life (pp. 89–122). Cambridge University Press. https://doi.org/10.1017/CBO9780511509568.007 \n\n\n\nMeisner, C., Duffy, B. E., & Ziewitz, M. (2022). The labor of search engine evaluation: Making algorithms more human or humans more algorithmic?New Media & Society,0 (0), 14614448211063860. https://doi.org/10.1177/14614448211063860 \n\n\n\nMejova, Y., Gracyk, T., & Robertson, R. (2022). Googling for abortion: Search engine mediation of abortion accessibility in the united states.JQD,2. https://doi.org/10.51685/jqd.2022.007 \n\n\n\nMetaphor. (2021).Today we’re releasing wanderer 2Metaphor. https://twitter.com/metaphorsystems/status/1428793313663111170 .\n\n\nMetaxa-Kakavouli, D., & Torres-Echeverry. (2017).Google’s role in spreading fake news and misinformation. Stanford University Law & Policy Lab. https://www-cdn.law.stanford.edu/wp-content/uploads/2017/10/Fake-News-Misinformation-FINAL-PDF.pdf \n\n\n\nMeyer, J. W., & Rowan, B. (1977). Institutionalized organizations: Formal structure as myth and ceremony.American Journal of Sociology,83 (2), 340–363.\n\n\nMeyer, J. W., & Rowan, B. (1978). The structure of educational organizations. In M. W. Meyer & Associates (Eds.),Organizations and environments (pp. 78–109). Jossey Bass.\n\n\nMiller, B., & Record, I. (2013). JUSTIFIED belief in a digital age: ON the epistemic implications of secret internet technologies.Episteme,10 (2), 117–134. https://doi.org/10.1017/epi.2013.11 \n\n\n\nMills, C. (2008). White ignorance. In L. S. Robert Proctor (Ed.),Agnotology: The making and unmaking of ignorance. Stanford University Press.\n\n\nMisa, editor, Thomas J. (2010).Gender codes: Why women are leaving computing (1st ed.). Wiley-IEEE Computer Society Press. libgen.li/file.php?md5=e4a6849b080f4a078c79777d347726c2 \n\n\n\nMokros, H. B., & Aakhus, M. (2002). From information-seeking behavior to meaning engagement practice..Human Comm Res,28 (2), 298–312. https://doi.org/10.1111/j.1468-2958.2002.tb00810.x \n\n\n\nMorris, M. R. (2013). Collaborative search revisited.Proceedings of Cscw 2013. https://doi.org/10.1145/2441776.2441910 \n\n\n\nMorris, M. R., & Horvitz, E. (2007). SearchTogether: An interface for collaborative web search.Proceedings of the 20th Annual Acm Symposium on User Interface Software and Technology, 3–12.\n\n\nMorris, M. R., & Teevan, J. (2009). Collaborative web search: Who, what, where, when, and why.Synthesis Lectures on Information Concepts, Retrieval, and Services,1 (1), 1–99. https://doi.org/10.2200/S00230ED1V01Y200912ICR014 \n\n\n\nMulligan, D. K., & Griffin, D. (2018). Rescripting search to respect the right to truth.The Georgetown Law Technology Review,2 (2), 557–584. https://georgetownlawtechreview.org/rescripting-search-to-respect-the-right-to-truth/GLTR-07-2018/ \n\n\n\nMulligan, D. K., Koopman, C., & Doty, N. (2016). Privacy is an essentially contested concept: A multi-dimensional analytic for mapping privacy.Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences,374 (2083), 20160118.\n\n\nMulligan, D. K., & Nissenbaum, H. (2020).The concept of handoff as a model for ethical analysis and design. Oxford University Press. https://doi.org/10.1093/oxfordhb/9780190067397.013.15 \n\n\n\nMustafaraj, E., Lurie, E., & Devine, C. (2020). The case for voter-centered audits of search engines during political elections.FAT* ’20.\n\n\nNagaraj, A. (2021). Information seeding and knowledge production in online communities: Evidence from openstreetmap.Management Science,67 (8), 4908–4934. https://doi.org/10.1287/mnsc.2020.3764 \n\n\n\nNarayanan, D., & De Cremer, D. (2022). “Google told me so!” On the bent testimony of search engine algorithms.Philos. Technol.,35 (2), E4512. https://doi.org/10.1007/s13347-022-00521-7 \n\n\n\nNatarajan, M. (2016).The making of ignorance: Epistemic design in self-tracking health [PhD thesis, University of California, Berkeley]. https://escholarship.org/uc/item/5pn009mw \n\n\n\nNeff, G. (2012).Venture labor: Work and the burden of risk in innovative industries. MIT press. https://mitpress.mit.edu/books/venture-labor \n\n\n\nNissenbaum, H. (2011a). A contextual approach to privacy online.Daedalus,140 (4), 32–48.\n\n\nNissenbaum, H. (2011b). From preemption to circumvention: If technology regulates, why do we need regulation (and vice versa).Berkeley Tech. LJ,26, 1367.\n\n\nNoble, S. U. (2018).Algorithms of oppression how search engines reinforce racism. New York University Press. https://nyupress.org/9781479837243/algorithms-of-oppression/ \n\n\n\nOchigame, R. (2020). Informatics of the oppressed. InLogic. https://logicmag.io/care/informatics-of-the-oppressed/ \n\n\n\nOeldorf-Hirsch, A., Hecht, B., Morris, M. R., Teevan, J., & Gergle, D. (2014, February). To search or to ask.Proceedings of the 17th ACM Conference on Computer Supported Cooperative Work & Social Computing. https://doi.org/10.1145/2531602.2531706 \n\n\n\nOfcom. (2022).Children and parents: Media use and attitudes report 2022. https://www.ofcom.org.uk/__data/assets/pdf_file/0024/234609/childrens-media-use-and-attitudes-report-2022.pdf .\n\n\nOhm, P., & Frankle, J. (2018). Desirable inefficiency.Florida Law Review,70 (4), 777. https://scholarship.law.ufl.edu/flr/vol70/iss4/2 \n\n\n\nOrlikowski, W. J. (2007). Sociomaterial practices: Exploring technology at work.Organization Studies,28 (9), 1435–1448. https://doi.org/10.1177/0170840607081138 \n\n\n\nOrlikowski, W. J. (1993). CASE tools as organizational change: Investigating incremental and radical changes in systems development.MIS Q.,17 (3), 309–340. https://doi.org/10.2307/249774 \n\n\n\nOrr, J. E. (1996).Talking about machines: An ethnography of a modern job. ILR Press.\n\n\nPan, B., Hembrooke, H., Joachims, T., Lorigo, L., Gay, G., & Granka, L. (2007). In google we trust: Users’ decisions on rank, position, and relevance.Journal of Computer-Mediated Communication,12 (3), 801–823. https://doi.org/10.1111/j.1083-6101.2007.00351.x \n\n\n\nPasquale, F. (2015).The black box society. Harvard University Press.\n\n\nPassi, S., & Barocas, S. (2019). Problem formulation and fairness.Proceedings of the Conference on Fairness, Accountability, and Transparency, 39–48.\n\n\nPassi, S., & Jackson, S. J. (2018). Trust in data science: Collaboration, translation, and accountability in corporate data science projects.Proceedings of the ACM on Human-Computer Interaction,2 (CSCW), 1–28.\n\n\nPassi, S., & Sengers, P. (2020). Making data science systems work.Big Data & Society,7 (2), 2053951720939605.\n\n\nPearce, H. A., Ahmad, B., Tan, B., Dolan-Gavitt, B., & Karri, R. (2021). An empirical cybersecurity evaluation of github copilot’s code contributions.ArXiv,abs/2108.09293.\n\n\nPeels, R., & Pritchard, D. (2021). Educating for ignorance.Synthese,198 (8), 7949–7963. https://doi.org/10.1007/s11229-020-02544-z \n\n\n\nPerlow, L., & Weeks, J. (2002). Who’s helping whom? Layers of culture and workplace behavior.Journal of Organizational Behavior,23 (4), 345–361. https://doi.org/https://doi.org/10.1002/job.150 \n\n\n\nPerrow, C. (1984).Normal accidents: Living with high-risk technologies. Basic Books.\n\n\nPlato. (2002).Plato: Five dialogues: Euthyphro, Apology, Crito, Meno, Phaedo (J. M. Cooper, Ed.; G. M. A. Grube, Trans.; 2nd ed.). Hackett.\n\n\nPolanyi, M. (1967).The tacit dimension. Doubleday & Co.\n\n\nPrior, L. (2003).Using documents in social research. SAGE Publications Ltd. https://doi.org/10.4135/9780857020222 \n\n\n\nProctor, R., & Schiebinger, L. (Eds.). (2008).Agnotology: The making and unmaking of ignorance. Stanford University Press. https://archive.org/details/agnotologymaking0000unse \n\n\n\nPugh, A. J. (2013). What good are interviews for thinking about culture? Demystifying interpretive analysis.Am J Cult Sociol,1 (1), 42–68. https://doi.org/10.1057/ajcs.2012.4 \n\n\n\nRaboy, M. (1998). Global communication policy and human rights. InA communications cornucopia: Markle foundation essays on information policy (pp. 218–242). Brookings Institution Press.\n\n\nRahman, M. M., Barson, J., Paul, S., Kayani, J., Lois, F. A., Quezada, S. F., Parnin, C., Stolee, K. T., & Ray, B. (2018). Evaluating how developers use general-purpose web-search for code retrieval.Proceedings of the 15th International Conference on Mining Software Repositories, 465–475. https://doi.org/10.1145/3196398.3196425 \n\n\n\nReagle, J. (2016). The obligation to know: From faq to feminism 101.New Media &Amp; Society,18 (5), 691–707. https://doi.org/10.1177/1461444814545840 \n\n\n\nRieder, B., & Hofmann, J. (2020). Towards platform observability.Internet Policy Review,9 (4), 1–28. https://doi.org/https://doi.org/10.14763/2020.4.1535 \n\n\n\nRoberts, N., Galluch, P. S., Dinger, M., & Grover, V. (2012). Absorptive capacity and information systems research: Review, synthesis, and directions for future research.MIS Quarterly,36 (2), 625–648. http://www.jstor.org/stable/41703470 \n\n\n\nRobertson, R. (2022).WebSearcher. https://github.com/gitronald/WebSearcher \n\n\n\nRobinson, L. (2009). A taste for the necessary.Information, Communication & Society,12 (4), 488–507. https://doi.org/10.1080/13691180902857678 \n\n\n\nRussell, D. M. (2019).The joy of search: A google insider’s guide to going beyond the basics. The MIT Press.\n\n\nSabel, C. F. (1984).Work and politics: The division of labor in industry.\n\n\nSalva, R. J. (2022).Preview: Referencing public code in github copilot | the github blog. https://github.blog/2022-11-01-preview-referencing-public-code-in-github-copilot/ .\n\n\nSchultheiß, S., Sünkler, S., & Lewandowski, D. (2018). We still trust google, but less than 10 years ago: An eye-tracking study.Information Research,23 (3). http://informationr.net/ir/23-3/paper799.html \n\n\n\nSeaver, N. (2017). Algorithms as culture: Some tactics for the ethnography of algorithmic systems.Big Data & Society,4 (2), 1–12. https://doi.org/10.1177/2053951717738104 \n\n\n\nSeaver, N. (2019). Knowing algorithms.Digital STS, 412–422.\n\n\nSeibel, P. (2009).Coders at work: Reflections on the craft of programming. Apress.\n\n\nShah, C. (2017).Social information seeking. Springer International Publishing. https://doi.org/10.1007/978-3-319-56756-3 \n\n\n\nShah, C., & Bender, E. M. (2022, March). Situating search.ACM SIGIR Conference on Human Information Interaction and Retrieval. https://doi.org/10.1145/3498366.3505816 \n\n\n\nShestakofsky, B. (2017). Working algorithms: Software automation and the future of work.Work and Occupations,44 (4), 376–423. https://doi.org/10.1177/0730888417726119 \n\n\n\nShorey, S., Hill, B. M., & Woolley, S. (2021). From hanging out to figuring it out: Socializing online as a pathway to computational thinking.New Media & Society,23 (8), 2327–2344. https://doi.org/10.1177/1461444820923674 \n\n\n\nSkitka, L. J., Mosier, K. L., Burdick, M., & Rosenblatt, B. (2000). Automation bias and errors: Are crews better than individuals?The International Journal of Aviation Psychology,10, 85–97.\n\n\nSmith, C. L., & Rieh, S. Y. (2019, March). Knowledge-context in search systems.Proceedings of the 2019 Conference on Human Information Interaction and Retrieval. https://doi.org/10.1145/3295750.3298940 \n\n\n\nSmithson, M. (1985). Toward a social theory of ignorance.Journal for the Theory of Social Behaviour,15 (2), 151–172. https://doi.org/https://doi.org/10.1111/j.1468-5914.1985.tb00049.x \n\n\n\nStar, S. L. (1999). The ethnography of infrastructure.American Behavioral Scientist,43 (3), 377–391.\n\n\nStar, S. L., & Ruhleder, K. (1996). Steps toward an ecology of infrastructure: Design and access for large information spaces.Information Systems Research,7 (1), 111–134. https://doi.org/10.1287/isre.7.1.111 \n\n\n\nStar, S. L., & Strauss, A. (2004). Layers of silence, arenas of voice: The ecology of visible and invisible work.Computer Supported Cooperative Work (CSCW),8, 9–30.\n\n\nStark, D. (2009).The sense of dissonance: Accounts of worth in economic life. Princeton University Press.\n\n\nStark, L., & Levy, K. (2018). The surveillant consumer.Media, Culture & Society,40 (8), 1202–1220. https://doi.org/10.1177/0163443718781985 \n\n\n\nSuchman, L. A. (1987).Plans and situated actions: The problem of human-machine communication. Cambridge university press.\n\n\nSundin, O. (2020). Where is search in information literacy? A theoretical note on infrastructure and community of practice. InSustainable digital communities (pp. 373–379). Springer International Publishing. https://doi.org/10.1007/978-3-030-43687-2_29 \n\n\n\nSundin, O., Haider, J., Andersson, C., Carlsson, H., & Kjellberg, S. (2017). The search-ification of everyday life and the mundane-ification of search.Journal of Documentation. https://doi.org/10.1108/JD-06-2016-0081 \n\n\n\nSundin, O., Lewandowski, D., & Haider, J. (2021). Whose relevance? Web search engines as multisided relevance machines.Journal of the Association for Information Science and Technology. https://doi.org/10.1002/asi.24570 \n\n\n\nSurden, H. (2007). Structural rights in privacy.SMU Law Review,60 (4), 1605. https://scholar.law.colorado.edu/articles/346/ \n\n\n\nTakhteyev, Y. (2007). Jeeks: Developers at the periphery of the software world.Annual Meeting of the American Sociological Association, New York, Ny. https://pdfs.semanticscholar.org/1a98/c87ffd0b07344c5e0aae6e7e498a5c69da00.pdf \n\n\n\nTakhteyev, Y. (2012).Coding places: Software practice in a south american city. The MIT Press.\n\n\nTattersall Wallin, E. (2021). Audiobook routines: Identifying everyday reading by listening practices amongst young adults.JD,78 (7), 266–281. https://doi.org/10.1108/JD-06-2021-0116 \n\n\n\nTeevan, J., Alvarado, C., Ackerman, M. S., & Karger, D. R. (2004). The perfect search engine is not enough: A study of orienteering behavior in directed search.Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, 415–422.\n\n\nThe MIT Press. (2020).Author talk: The Joy of Search by Daniel M. Russell. https://mitpress.mit.edu/blog/author-talk-the-joy-of-search-by-daniel-m-russell/ .\n\n\n\n The social construction of technological systems. (1993). MIT Press.\n\n\nThompson, J. D. (1967).Organizations in action: Social science bases of administrative theory (1st ed.). McGraw-Hill.\n\n\nToff, B., & Nielsen, R. K. (2018). “I Just Google It”: Folk Theories of Distributed Discovery.Journal of Communication,68 (3), 636–657. https://doi.org/10.1093/joc/jqy009 \n\n\n\nTripodi, F. (2018). Searching for alternative facts: Analyzing scriptural inference in conservative news practices.Data & Society. https://datasociety.net/output/searching-for-alternative-facts/ \n\n\n\nTripodi, F. (2019a). Devin nunes and the power of keyword signaling. InWired. https://www.wired.com/story/devin-nunes-and-the-dark-power-of-keyword-signaling/ .\n\n\nTripodi, F. (2019b).SenateHearing + written testimony. https://www.judiciary.senate.gov/imo/media/doc/Tripodi%20Testimony.pdf ; Senate Judiciary Committee Subcommittee On The Constitution.\n\n\nTripodi, F. (2022a).Step five: Set the traps - misinformation that fails to conform to dominant search engine rules is functionally invisible. https://twitter.com/ftripodi/status/1520078674417967105 .\n\n\nTripodi, F. (2022b).The propagandists’ playbook: How conservative elites manipulate search and threaten democracy (Hardcover, p. 288). Yale University Press. https://yalebooks.yale.edu/book/9780300248944/the-propagandists-playbook/ \n\n\n\nTsing, A. (2005).Friction : An ethnography of global connection. Princeton University Press. https://press.princeton.edu/books/paperback/9780691120652/friction \n\n\n\nTurco, C. J. (2016).The conversational firm: Rethinking bureaucracy in the age of social media. Columbia University Press.\n\n\nUrman, A., & Makhortykh, M. (2022). “Foreign beauties want to meet you”: The sexualization of women in google’s organic and sponsored text search results.New Media & Society,0 (0), 14614448221099536. https://doi.org/10.1177/14614448221099536 \n\n\n\nVaidhyanathan, S. (2011).The googlization of everything:(And why we should worry). Univ of California Press. https://doi.org/10.1525/9780520948693 \n\n\n\nVan Couvering, E. J. (2007). Is relevance relevant? Market, science, and war: Discourses of search engine quality.Journal of Computer-Mediated Communication,12 (3), 866–887. http://doi.org/10.1111/j.1083-6101.2007.00354.x \n\n\n\nVertesi, J. (2019). From affordances to accomplishments: PowerPoint and excel at NASA. IndigitalSTS (pp. 369–392). Princeton University Press. https://doi.org/10.1515/9780691190600-026 \n\n\n\nWarshaw, J., Taft, N., & Woodruff, A. (2016). Intuitions, analytics, and killing ants: Inference literacy of high school-educated adults in the US.Twelfth Symposium on Usable Privacy and Security (SOUPS 2016), 271–285. https://www.usenix.org/conference/soups2016/technical-sessions/presentation/warshaw \n\n\n\nWeber, S. (2004).The success of open source. Harvard University Press. https://www.hup.harvard.edu/catalog.php?isbn=9780674018587 \n\n\n\nWeber, S. (2019).Bloc by bloc: How to build a global enterprise for the new regional order. Harvard University Press.\n\n\n\n What is the xy problem? - meta stack exchange. (2010). https://meta.stackexchange.com/questions/66377/what-is-the-xy-problem .\n\n\nWhite, R. W. (2016).Interactions with search systems. Cambridge University Press. https://doi.org/10.1017/CBO9781139525305 \n\n\n\nWidder, D. G., Nafus, D., Dabbish, L., & Herbsleb, J. D. (2022, June). Limits and possibilities for “ethical AI” in open source: A study of deepfakes.Proceedings of the 2022 ACM Conference on Fairness, Accountability, and Transparency. https://davidwidder.me/files/widder-ossdeepfakes-facct22.pdf \n\n\n\nWineburg, S. (2021).\"Problem 2: Typing “the claim into a search engine” will\". https://twitter.com/samwineburg/status/1465542166764081157 .\n\n\nWong, R. (2020).Values by design imaginaries: Exploring values work in ux practice [Ph.D. dissertation, University of California, Berkeley]. https://escholarship.org/uc/item/3vt3b1xf \n\n\n\nWoods, D. D. (2018). The theory of graceful extensibility: Basic rules that govern adaptive systems.Environ Syst Decis,38 (4), 433–457. https://doi.org/10.1007/s10669-018-9708-3 \n\n\n\nYates, J., & Orlikowski, W. J. (1992). Genres of organizational communication: A structurational approach to studying communication and media.The Academy of Management Review,17 (2), 299–326. http://www.jstor.org/stable/258774 \n\n\n\nZade, H., Wack, M., Zhang, Y., Starbird, K., Calo, R., Young, J., & West, J. D. (2022). Auditing google’s search headlines as a potential gateway to misleading content.Jots,1 (4). https://doi.org/10.54501/jots.v1i4.72 \n\n\n\nZiegler, A. (2022).Research: How github copilot helps improve developer productivity | the github blog. https://github.blog/2022-07-14-research-how-github-copilot-helps-improve-developer-productivity/ .\n\n\nZuboff, S. (1988).In the age of the smart machine. Basic books.\n\n\nZuboff, S. (2015). Big other: Surveillance capitalism and the prospects of an information civilization.Journal of Information Technology,30 (1), 75–89. https://doi.org/10.1057/jit.2015.5 \n\n\n", "snippet": "\n", "url": "/diss/bibliography/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "bibtex", "type": "pages" , "date": "", "title": "BibTeX" , "tags": "", "content": "\n\n## [[mulligan2018rescripting]](/shortcuts/mulligan2018rescripting/)\n\n```bibtex\n@article{mulligan2018rescripting,\n title={Rescripting Search to Respect the Right to Truth},\n author={Mulligan, Deirdre K and Griffin, Daniel S},\n journal={The Georgetown Law Technology Review},\n volume={2},\n number={2},\n pages={557--584},\n year={2018},\n URL={https://georgetownlawtechreview.org/rescripting-search-to-respect-the-right-to-truth/GLTR-07-2018/}\n }\n```\n\n---\n\n\n\n## [[burrell2019control]](/shortcuts/burrell2019control/)\n\n```bibtex\n@article{burrell2019control,\n author = {Burrell, Jenna and Kahn, Zoe and Jonas, Anne and Griffin, Daniel},\n title = {When Users Control the Algorithms: Values Expressed in Practices on Twitter},\n year = {2019},\n issue_date = {November 2019},\n publisher = {Association for Computing Machinery},\n address = {New York, NY, USA},\n volume = {3},\n number = {CSCW},\n URL={https://doi.org/10.1145/3359240},\n doi = {10.1145/3359240},\n journal = {Proc. ACM Hum.-Comput. Interact.},\n month = nov,\n articleno = {Article 138},\n numpages = {20},\n keywords = {assembly, automation, control, gaming the algorithm, algorithmic fairness, human autonomy, twitter}\n }\n```\n\n---\n\n\n\n## [[goldenfein2022platforming]](/shortcuts/goldenfein2022platforming/)\n\n```bibtex\n@article{goldenfein2022platforming,\n author = { Goldenfein, Jake and Griffin, Daniel },\n title = { Google Scholar -- Platforming the scholarly economy },\n year = { 2022 },\n volume = { 11 },\n issue = { 3 },\n pages = { 117 },\n doi = {10.14763/2022.3.1671},\n URL = {http://doi.org/10.14763/2022.3.1671},\n }\n```\n\n---\n\n\n\n## [[griffin2022search]](/shortcuts/griffin2022search/)\n\nNote: This is published Ahead of Print. The volume, number, and possibly year, will change.\n\n```bibtex\n@article{griffin2022search,\n author = {Daniel Griffin and Emma Lurie},\n title ={Search quality complaints and imaginary repair: Control in articulations of Google Search},\n journal = {New Media \\& Society},\n volume = {0},\n number = {0},\n pages = {14614448221136505},\n year = {2022},\n doi = {10.1177/14614448221136505},\n \n URL = {\n https://doi.org/10.1177/14614448221136505\n \n },\n eprint = {\n https://doi.org/10.1177/14614448221136505\n \n }\n ,\n abstract = { In early 2017, a journalist and search engine expert wrote about “Google’s biggest ever search quality crisis.” Months later, Google hired him as the first Google “Search Liaison” (GSL). By October 2021, when someone posted to Twitter a screenshot of misleading Google Search results for “had a seizure now what,” users tagged the Twitter account of the GSL in reply. The GSL frequently publicly interacts with people who complain about Google Search on Twitter. This article asks: what functions does the GSL serve for Google? We code and analyze 6 months of GSL responses to complaints on Twitter. We find that the three functions of the GSL are: (1) to naturalize the logic undergirding Google Search by defending how it works, (2) perform repair in responses to complaints, and (3) boundary drawing to control critique. This advances our understanding of how dominant technology companies respond to critiques and resist counter-imaginaries. }\n }\n```\n\n\n\n## [[griffin2022situating]](/shortcuts/griffin2022situating/)\n\nNote: This is currently only self-hosted while waiting for Proquest and eScholarship.\n\n```bibtex\n@phdthesis{griffin2022situating,\n title={Situating Web Searching in Data Engineering: Admissions, Extensions, Repairs, and Ownership},\n author={Griffin, Daniel},\n year={2022},\n school={University of California, Berkeley},\n URL={https://danielsgriffin.com/assets/griffin2022situating.pdf}\n }\n```", "snippet": "\n", "url": "/bibtex/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-bing-chat", "type": "pages" , "date": "", "title": "Bing-Chat tag" , "tags": "", "content": "{% assign tag_name = \"Bing-Chat\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"Bing-Chat\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"Bing-Chat\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/bing-chat/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-bing-deep-search", "type": "pages" , "date": "", "title": "Bing-Deep-Search tag" , "tags": "", "content": "{% assign tag_name = \"Bing-Deep-Search\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"Bing-Deep-Search\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"Bing-Deep-Search\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/bing-deep-search/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-blazing", "type": "pages" , "date": "", "title": "blazing tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"blazing\" tag.\n \n\n\n{% assign tag_name = \"blazing\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"blazing\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"blazing\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/blazing/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-blocking-search-tools", "type": "pages" , "date": "", "title": "blocking-search-tools tag" , "tags": "", "content": "{% assign tag_name = \"blocking-search-tools\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"blocking-search-tools\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"blocking-search-tools\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/blocking-search-tools/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-browser-extension", "type": "pages" , "date": "", "title": "browser-extension tag" , "tags": "", "content": "{% assign tag_name = \"browser-extension\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"browser-extension\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"browser-extension\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/browser-extension/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "shortcuts-burrell2019control", "type": "shortcuts" , "date": "2022-11-02", "title": "When Users Control the Algorithms: Values Expressed in Practices on Twitter" , "tags": "", "content": "Do users control the algorithms?\n\n> Recent interest in ethical AI has brought a slew of values, including fairness, into conversations about technology design. Research in the area of algorithmic fairness tends to be rooted in questions of distribution that can be subject to precise formalism and technical implementation. We seek to expand this conversation to include the experiences of people subject to algorithmic classification and decision-making.\n\n## citation\n\nJenna Burrell, Zoe Kahn, Anne Jonas, and **Daniel Griffin**. [\"When Users Control the Algorithms: Values Expressed in Practices on Twitter.\"](https://doi.org/10.1145/3359240) _Proceedings of the ACM on Human-Computer Interaction_ 3, CSCW (2019): 1-20. DOI: 10.1145/3359240 [[direct PDF link](https://dl.acm.org/doi/pdf/10.1145/3359240)]\n\n[BibTeX](/bibtex#burrell2019control)\n\n## abstract\n\n> Recent interest in ethical AI has brought a slew of values, including fairness, into conversations about technology design. Research in the area of algorithmic fairness tends to be rooted in questions of distribution that can be subject to precise formalism and technical implementation. We seek to expand this conversation to include the experiences of people subject to algorithmic classification and decision-making. By examining tweets about the “Twitter algorithm” we consider the wide range of concerns and desires Twitter users express. We find a concern with fairness (narrowly construed) is present, particularly in the ways users complain that the platform enacts a political bias against conservatives. However, we find another important category of concern, evident in attempts to exert control over the algorithm. Twitter users who seek control do so for a variety of reasons, many well justified. We argue for the need for better and clearer definitions of what constitutes legitimate and illegitimate control over algorithmic processes and to consider support for users who wish to enact their own collective choices.\n\n## tweets\n\nHere are a couple tweets from Jenna Burrell (in 2022) reflecting on our paper:\n\nOn other things you discover when you recognize that social media is deeply social not flatly informational: my work on Twitter with Zoe Kahn, @annejonas, and @danielsgriffin which found tactics of users were community buildling (not maximal info reach) https://t.co/pjaGwJKdsS— Jenna Burrell, PhD (@jennaburrell) October 12, 2022 ", "snippet": "\n", "url": "/shortcuts/burrell2019control/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-capability-determination", "type": "pages" , "date": "", "title": "capability determination tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"capability determination\" tag.\n \n\n\n{% assign tag_name = \"capability determination\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"capability determination\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"capability determination\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/capability-determination/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-category-mistake", "type": "pages" , "date": "", "title": "category-mistake tag" , "tags": "", "content": "{% assign tag_name = \"category-mistake\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"category-mistake\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"category-mistake\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/category-mistake/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-cfp-rfp", "type": "pages" , "date": "", "title": "CFP-RFP tag" , "tags": "", "content": "{% assign tag_name = \"CFP-RFP\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"CFP-RFP\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"CFP-RFP\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/cfp-rfp/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-cfp", "type": "pages" , "date": "", "title": "CFP tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"CFP\" tag.\n \n\n\n{% assign tag_name = \"CFP\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"CFP\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"CFP\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/cfp/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-cgt", "type": "pages" , "date": "", "title": "CGT tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"CGT\" tag.\n \n\n\n{% assign tag_name = \"CGT\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"CGT\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"CGT\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/cgt/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-chainforge", "type": "pages" , "date": "", "title": "ChainForge tag" , "tags": "", "content": "\nHere are all the posts and pages with the \"ChainForge\" tag.\n \n\n\n{% assign tag_name = \"ChainForge\" %}\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"ChainForge\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"ChainForge\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{% endif %}\n", "snippet": "\n", "url": "/tags/chainforge/", "snippet_image": "", "snippet_image_alt": "", "snippet_image_class": "" } , { "id": "tags-choice-in-search", "type": "pages" , "date": "", "title": "choice-in-search tag" , "tags": "", "content": "{% assign tag_name = \"choice-in-search\" %}\n \n\n\n{% assign tag_snippet = site.data.tags[tag_name].snippet %}\n{% if tag_snippet != null and tag_snippet != '' %}\n{{ tag_snippet }}\n{% else %}\nHere are all the posts and pages with the \"{{ tag_name }}\" tag.\n{% endif %}\n\n\n\n{% assign tag_posts = site.posts | where_exp:\"post\", \"post.tags contains tag_name\" %}\n{% assign tag_pages = site.pages | where_exp:\"page\", \"page.tags contains tag_name\" %}\n{% if tag_posts.size > 0 %}\nPosts with the \"choice-in-search\" tag:\n{% for post in tag_posts %}\n* [{{ post.title }}]({{ post.url }})\n{% endfor %}\n{% endif %}\n{% if tag_pages.size > 0 %}\nPages with the \"choice-in-search\" tag:\n{% for page in tag_pages %}\n* [{{ page.title }}]({{ page.url }})\n{% endfor %}\n{%