196 Matching Annotations
  1. Mar 2024
    1. This pattern is often called monorepo when used in conjunction with a repository.
  2. Jan 2024
    1. Here’s my common practice: Every page in the app needs the standard HTML boilerplate with my common stylesheets and JavaScripts. I need a layout that provides these, but makes no assumptions on the actual body of the page. This is my “base” layout. Most – but not all – pages in the app need a common header and footer. This is my “application” (default) layout. I’d like the application layout to reuse the base layout to keep my code DRY.
  3. Nov 2023
  4. Oct 2023
    1. These string figures are thinking as well as making practices, peda-gogical practices and cosmological performances. Some Navajo thinkersdescribe string games as one kind of patterning for restoring hózhó, aterm imperfectly translated into English as “harmony,” “beauty,” “order,”and “right relations of the world,” including right relations of humansand nonhumans.

      positive (harmonious, ordered) pattern-seeking

    2. Relays, string figures, pass-ing patterns back and forth, giving and receiving, patterning, holdingthe unasked-for pattern in one’s hands, response-ability; that is core towhat I mean by staying with the trouble in serious multispecies worlds.Becoming-with, not becoming, is the name of the game; becoming-withis how partners are, in Vinciane Despret’s terms, rendered capable.7 On-

      cooperative pattern-seeking as the only meaningful and useful becoming (becoming-with)

      1/2

    3. It matters what matters we use to think othermatters with; it matters what stories we tell to tell other stories with;it matters what knots knot knots, what thoughts think thoughts, whatdescriptions describe descriptions, what ties tie ties. It matters whatstories make worlds, what worlds make stories

      tool-patterns determine what patterns can be found with them. the union of the codomains of every tool-pattern we are applying is all we can find at any given point in time.

    4. Playinggames of string figures is about giving and receiving patterns, droppingthreads and failing but sometimes finding something that works, some-thing consequential and maybe even beautiful, that wasn’t there before,of relaying connections that matter, of telling stories in hand upon hand,digit upon digit, attachment site upon attachment site, to craft condi-tions for finite flourishing on terra, on earth.

      cooperative pattern-seeking as existential kin-making

  5. Sep 2023
    1. 12. Creativity and Pattern RecognitionTrigger Type: Creative triggerCreativity involves generating novel and original ideas or solutions. When you’re engaged in creative endeavors, you’re challenged to think outside the box, explore unconventional approaches, and break away from routine thought patterns. Pattern recognition refers to the ability to discern meaningful patterns or connections within information or experiences. It involves finding order and coherence in complexity and identifying recurring themes or elements. Pattern recognition is crucial in various activities, such as problem-solving, artistic expression, or learning new skills. Creativity and pattern recognition complement each other in the flow state, leading to a profound sense of engagement. Creative insights often emerge from recognizing patterns and making connections between seemingly unrelated elements.

      pattern recognition as discernment of patterns and connections between info (complementary to creativity)


      What about discerning patterns between your interests, combining them, and so forth? (combining first and twelfth flow trigger)

  6. Jul 2023
  7. bafybeihzua2lldmlutkxlie7jfppxheow6my62x2qmywif2wukoswo5hqi.ipfs.w3s.link bafybeihzua2lldmlutkxlie7jfppxheow6my62x2qmywif2wukoswo5hqi.ipfs.w3s.link
    1. forms might be asso-ciated with structures
      • comment
        • A Deep Humanity analog to the word "structure" is the word "pattern"
        • Hence we have the equivalency:
          • platonic form = structure = pattern
        • and the author's prior statement that
          • These mental and subsequently materialized ideas then
          • have the potential to
            • influence the physical world and to
              • feedback into the mental world to produce additional structure and
              • physical material
        • is equivalent to Indyweb / Deep Humanity statement that
          • individual and collective learning are deeply entangled
          • cumulative cultural evolution is mediated through this entanglement
          • that is best represented by the idea of dependent origination
          • individuals articulate ideas and externally present them to other consciousnesses
          • a multi-meaningverse exists whenever social learning occurs and
            • multiple perspectives, multiple meaningverses converge
          • each individual perspective surfaces their own adjacencies of ideas drawn from their own salience landscape
            • which in turn emerge from their own respective unique lebenswelt
        • We might also say that to the degree that internal patterns of the symbolosphere correlate with external patterns of the physiosphere, then
        • that is the degree to which the universal pattern manifests in both nature nature and in human nature
        • since humans (human nature) are an expression of nature (nature nature), we should not expect otherwise
  8. Jun 2023
    1. Five core layers: 1. Presentation Layer 2. Application Layer 3. Domain Layer 4. Persistence Layer 5. Database Layer

    2. In the layered architecture pattern, each layer fulfills a specific responsibility and role within the application. Some focus on user interface logic, while others handle the execution of business rules. These layers complement each other's unique purposes, but they aren't explicitly reliant on one another to perform their own tasks.
    3. In software architecture, layers act as individual processes within the infrastructure of an application. These layers typically form a pattern, also called the n-tier architecture pattern.
  9. May 2023
  10. Mar 2023
    1. We know from modern neuroscience that prediction is a core property of human intelligence. Perhaps the game of predict-the-next-word is what children unconsciously play when they are acquiring language themselves: listening to what initially seems to be a random stream of phonemes from the adults around them, gradually detecting patterns in that stream and testing those hypotheses by anticipating words as they are spoken. Perhaps that game is the initial scaffolding beneath all the complex forms of thinking that language makes possible.

      Is language acquisition a very complex method of pattern recognition?

      • Matches by Object property ```js const { matches } = require('z')

      const person = { name: 'Maria' } matches(person)( (x = { name: 'John' }) => console.log('John you are not welcome!'), (x) => console.log(Hey ${x.name}, you are welcome!) ) - Matches by type or instancesjs const { matches } = require('z')

      const result = matches(1)( (x = 2) => 'number 2 is the best!!!', (x = Number) => number ${x} is not that good, (x = Date) => 'blaa.. dates are awful!' )

      console.log(result) // output: number 1 is not that good - Matches Array contentjs const { matches } = require('z')

      matches([1, 2, 3, 4, 5])( (a, b, c, tail) => 'a = 1, b = 2, c = 3, tail = [4, 5]'<br /> )

      matches([1, 2])( (a, tail) => 'a = 1, tail = [2]'<br /> )

      matches([1])( (a, b, tail) => 'Will not match here', (a = 2, tail = []) => 'Will not match here', (a = 1, tail) => 'Will match here, tail = []' ) ```

      • Powerful recursive code which will remove sequential repeated items from Array ```js const { matches } = require('z')

      const compress = (numbers) => { return matches(numbers)( (x, y, xs) => x === y ? compress([x].concat(xs)) : [x].concat(compress([y].concat(xs))), (x, xs) => x // stopping condition ) }

      compress([1, 1, 2, 3, 4, 4, 4]) //output: [1, 2, 3, 4] ```

    1. js match (res) { if (isEmpty(res)) { … } when ({ pages, data }) if (pages > 1) { … } when ({ pages, data }) if (pages === 1) { … } else { … } }


      js match (arithmeticStr) { when (/(?<left>\d+) \+ (?<right>\d+)/) as ({ groups: { left, right } }) { process(left, right); } when (/(?<left>\d+) \+ (?<right>\d+)/) { process(left, right); } // maybe? else { ... } }


      ```js class Name { static Symbol.matcher { const pieces = matchable.split(' '); if (pieces.length === 2) { return { matched: true, value: pieces }; } } }

      match ('Tab Atkins-Bittner') { when (^Name with [first, last]) if (last.includes('-')) { … } when (^Name with [first, last]) { … } else { ... } } ```


      js const res = await fetch(jsonService) match (res) { when ({ status: 200, headers: { 'Content-Length': s } }) { console.log(`size is ${s}`); } when ({ status: 404 }) { console.log('JSON not found'); } when ({ status }) if (status >= 400) { throw new RequestError(res); } };


      ```js function todoApp(state = initialState, action) { return match (action) { when ({ type: 'set-visibility-filter', payload: visFilter }) { ({ ...state, visFilter }); } when ({ type: 'add-todo', payload: text }) { ({ ...state, todos: [...state.todos, { text, completed: false }] }); } when ({ type: 'toggle-todo', payload: index }) { const newTodos = state.todos.map((todo, i) => { return i !== index ? todo : { ...todo, completed: !todo.completed }; });

        ({
          ...state,
          todos: newTodos,
        });
      }
      else { state } // ignore unknown actions
      

      } } ```


      jsx <Fetch url={API_URL}> {props => match (props) { when ({ loading }) { <Loading />; } when ({ error }) { <Error error={error} />; } when ({ data }) { <Page data={data} />; } }} </Fetch>

  11. Jan 2023
  12. Dec 2022
  13. Nov 2022
    1. “pattern language” to describe the show’s plot formulas, which they and ultimately other users would then apply to a variety of programs.

      Tropes are shorthand storytelling methods that rely on a common storytelling grammar or pattern language to quickly relay information to the viewer or listener.

  14. Sep 2022
  15. Aug 2022
    1. First, it taught me that there was a history to this stuff, and it also expanded the frontiers of what I understood I was doing

      'History of stuff' not being seen is a recurring pattern. e.g. wrt Luhmann vs commonplacing, in the Roam/Obsidian wave e.g. wrt open data around 2010 when there was little realisation of efforts by re-users to get to the PSI Directive, only the new wave of coders using the fact it existed.

      It's also a repeating pattern in generations. Open Space and unconferencing e.g. needs to be retaught with every new wave of people. The open web of two decades ago needs to be explained to those now starting their professional work using online tools.

      Spaced repetition for groups/society?

      In order to expand understanding what one is actually doing / building on.

      Doet me denken aan die '90s exchange student die me ooit vroeg of ik geschiedenis studeerde ipv elektro: ik legde bij alles ook het ontwikkelingspad uit.

  16. Jul 2022
    1. But it's not a trivial problem. I have compiled, at latest reckoning, 35,669 posts - my version of a Zettelkasten. But how to use them when writing a paper? It's not straightforward - and I find myself typically looking outside my own notes to do searches on Google and elsewhere. So how is my own Zettel useful? For me, the magic happens in the creation, not in the subsequent use. They become grist for pattern recognition. I don't find value in classifying them or categorizing them (except for historical purposes, to create a chronology of some concept over time), but by linking them intuitively to form overarching themes or concepts not actually contained in the resources themselves. But this my brain does, not my software. Then I write a paper (or an outline) based on those themes (usually at the prompt of an interview, speaking or paper invitation) and then I flesh out the paper by doing a much wider search, and not just my limited collection of resources.

      Stephen Downes describes some of his note taking process for creation here. He doesn't actively reuse his notes (or in this case blog posts, bookmarks, etc.) which number a sizeable 35669, directly, at least in the sort of cut and paste method suggested by Sönke Ahrens. Rather he follows a sort of broad idea, outline creation, and search plan akin to that described by Cory Doctorow in 20 years a blogger

      Link to: - https://hyp.is/_XgTCm9GEeyn4Dv6eR9ypw/pluralistic.net/2021/01/13/two-decades/


      Downes suggests that the "magic happens in the creation" of his notes. He uses them as "grist for pattern recognition". He doesn't mention words like surprise or serendipity coming from his notes by linking them, though he does use them "intuitively to form overarching themes or concepts not actually contained in the resources themselves." This is closely akin to the broader ideas ensconced in inventio, Llullan Wheels, triangle thinking, ideas have sex, combinatorial creativity, serendipity (Luhmann), insight, etc. which have been described by others.


      Note that Downes indicates that his brain creates the links and he doesn't rely on his software to do this. The break is compounded by the fact that he doesn't find value in classifying or categorizing his notes.


      I appreciate that Downes uses the word "grist" to describe part of his note taking practice which evokes the idea of grinding up complex ideas (the grain) to sort out the portions of the whole to find simpler ideas (the flour) which one might use later to combine to make new ideas (bread, cake, etc.) Similar analogies might be had in the grain harvesting space including winnowing or threshing.

      One can compare this use of a grist mill analogy of thinking with the analogy of the crucible, which implies a chamber or space in which elements are brought together often with work or extreme conditions to create new products by their combination.

      Of course these also follow the older classical analogy of imitating the bees (apes).

  17. Jun 2022
    1. What is color for?" And instead of telling you, I'll just show you. What you see here is a jungle scene, 00:02:08 and you see the surfaces according to the amount of light that those surfaces reflect. Now, can any of you see the predator that's about to jump out at you? And if you haven't seen it yet, you're dead, right? (Laughter) Can anyone see it? Anyone? No? Now let's see the surfaces according to the quality of light that they reflect. And now you see it. So, color enables us to see 00:02:32 the similarities and differences between surfaces, according to the full spectrum of light that they reflect. But what you've just done is in many respects mathematically impossible. Why? Because, as Berkeley tells us, we have no direct access to our physical world, other than through our senses. And the light that falls onto our eyes is determined by multiple things in the world, not only the color of objects, 00:02:56 but also the color of their illumination, and the color of the space between us and those objects. You vary any one of those parameters, and you'll change the color of the light that falls onto your eye. This is a huge problem, because it means that the same image could have an infinite number of possible real-world sources

      BEing journey 2 pattern detection

  18. May 2022
    1. DICER1 syndrome is a rare genetic condition predisposing to hereditary cancer and caused by variants in the DICER1

      GeneName: DICER1 PMCID: PMC7859642 HGNCID: Unavailable Inheritance Pattern: Autosomal dominant. Disease Entity: Familial pleuropulmonary blastoma (PPB), cervix embryonal rhabdomyosarcoma, multinodular goiter, nasal chondromesenchymal hemartoma, Ciliary body medulloepithelioma, Sertoli-Leydig Cell Tumor (SLCT), differentiated thyroid carcinoma, pituitary blastoma, pineoblastoma, cystic nephroma, Wilm's tumor and sarcomas of different sites including, amongst others, the uterine cervix, kidney and brain. Mutation: Germline Zygosity: Heterozygose Variant: No ClinVarID present. Family Information: No family outline Case: No specified information of patients included. CasePresentingHPO's: n/a CasePrevious Testing: n/a gnomAD: n/a Mutation Type: nonsense, frameshift, or splice affected.

    1. Pathogenic germline variants in DICER1 underlie an autosomal dominant, pleiotropic tumor-predisposition disorder.

      gene name: DICER 1 PMID (PubMed ID): 33570641 HGNCID: n/a Inheritance Pattern: autosomal dominant Disease Entity: benign and malignant tumor mutation Mutation: somatic Zygosity: heterozygous Variant: n/a Family Information: n/a Case: people of all sexes, ages, ethnicities and races participated CasePresentingHPOs: individuals with DICER1-associated tumors or pathogenic germline DICER1 variants were recruited to participate CasePreviousTesting: n/a gnomAD: n/a

    1. DICER1 syndrome is an autosomal-dominant,pleiotropic, tumor-predisposition disorder arisingfrom pathogenic germline variants in DICER1, whichencodes an endoribonuclease integral to processingmicroRNAs

      DICER1 is the gene name. PubMed ID, HGCNCID, and Variant: I can't find Inheritance Pattern: autosomal-dominant The disease entity: DICER1 syndrome The type of mutation: germline. Zygosity: not known. Family Information: a family was used, DICER1 carriers, and non DICER1 variant used, some of the family members had tumors from DICER1 Case Information: mean age is 34, the range of age is 18.6 to 43 years, male, and female used, ethnicity can't find Case Presenting HPO: cancer testing, chemotherapy, radiotherapy gnomeAD: 9.2,8.3.2 Mutation type: Pleiotropic, loss of function, missense

  19. Apr 2022
    1. DICER1 syndrome is a rare genetic condition predisposing to hereditary cancer and caused by variants in the DICER1 gene.

      Gene Name: DICER1 PMID:33552988 HGNCID: Unavailable Inheritance Pattern:Autosomal Dominant Disease Entity: familial pleuropulmonary blastoma (PPB),cystic nephroma, ovarian Sertoli-Leydig cell tumor (SLCT), multinodular goiter, cervix embryonal rhabdomyosarcoma, Wilms’ tumor, nasal chondromesenchymal hamartoma, ciliary body medulloepithelioma, differentiated thyroid carcinoma, pituitary blastoma, pineoblastoma, and sarcomas of different sites. Mutation: Nonsense, Frameshift<br /> Zygosity: Heterosygosity Variant:No ClinVar ID present Family Information:no diseases mentioned in family Case: no specified case in this article gnomAD: n/a Mutation type: Nonsense. frameshift

    1. The DICER1 syndrome is an autosomal dominant tumor‐predisposi-tion disorder associated with pleuropulmonary blastoma, a rare pediatric lung cancer

      GeneName:DICER1 PMID (PubMed ID): PMCID: PMC6418698 PMID: 30672147 HGNCID: NOT LISTED<br /> Inheritance Pattern: Autosomal Dominant Disease Entity: Cancer; benign and malignant tumors including pleuropulmonary blastoma, cystic nephroma, Sertoli-Leydig cell tumors, multinodular goiter, Thryoid cancer, rhabdomyosarcoma, and pineoblastoma. Mutation: Somatic missense variation Mutation type: missense Zygosity: None stated Variant: unregistered…. Family Information: Characterize germline variants in familial early-onset clorectal cancer patients; The observation of germline DICER1 variation with uterine corpus endometrial carcinoma merits additional investigation. CasePresentingHPOs: uterine and rectal cancers in germline mutation

  20. Mar 2022
    1. The URLPattern API provides a web platform primitive for matching URLs based on a convenient pattern syntax.
  21. Feb 2022
  22. Jan 2022
    1. I have a nice self-contained example of breaking up a big change here. I wanted to change the internal representation used throughout the compiler. Instead of trying to do it all at once, I made a parallel pipeline for the new version and built it out stage by stage while keeping the old version working. Once the new version was complete and produced the same results on all the tests I deleted the old version.
    1. <script> import { fibonacci } from './math.js'; $: result = fibonacci(n, 0); </script> <input type=number bind:value={n}> <p>The {n}th Fibonacci number is {$result.data}</p> {#if $result.loading} <p>Show a spinner, add class or whatever you need.</p> <p>You are not limited to the syntax of an #await block. You are free to do whatever you want.</p> {/if}
    1. Oh, I just figured out a workaround for my project, in case it helps someone. If you want the source of truth on the prop to come from the child component, then leave it undefined in the parent. Then, you can make the reactive variable have a condition on the presence of that variable. eg: <script> let prop; $: prop && console.log(prop); </script> <Child bind:prop/> Might not work for every use case but maybe that helps someone.
  23. Dec 2021
  24. Nov 2021
    1. https://archive.nytimes.com/www.nytimes.com/interactive/2009/09/04/opinion/20090908_opart.html?_r=0

      We recognize letters in reading much better by reading the top of letters rather than by reading the bottom of letters.

      As a result of this, closing the tops of letters properly is important in writing.

      An alternate method of holding one's writing instrument between fore-finter and middle finer with the thumb near the tip can alleviate forearm, wrist, and thumb pain.

  25. Oct 2021
    1. So if I just forward the cookie header (which contains the access-token), wouldn't that be just what I am not supposed to do. I mean what's the point of using 'HttpOnly' flag if I return the token to the client-side js on every request.
  26. Sep 2021
    1. Final lines of every stanza is a trimeter, which seems relatively shorter than the preceding lines of penta- and tetrameter. This differentiation creates an unusual and unexpected rhythms and draws readers attention to this final line, which contains the major (sole) motive of author for writing this poem, love.

    2. Metric pattern of The Canonization is:

      • Pentameter

      • Tetrameter

      • Pentameter

      • Pentameter

      • Tetrameter

      • Tetrameter

      • Pentameter

      • Tetrameter

      • Trimeter

        However, this pattern is not strictly kept throughout the poem. Since this poem is written in a conversational style between the speaker and his unknown (unseen) provoker, a certain degree of flexibility is accepted to make the poem sound like a natural conversation. For the same reason, there isn't a universal stress pattern in this poem. (Though one might read it in a iambic (da/DUM) rhythm, it would sound very unnatural in some line)

  27. Aug 2021
    1. # And standalone like a case:Qo.match(people.first, Qo.m(age: 10..19) { |person| "#{person.name} is a teen that's #{person.age} years old" }, Qo.m(:*) { |person| "#{person.name} is #{person.age} years old" })
    2. # How about some "right-hand assignment" pattern matchingname_longer_than_three = -> person { person.name.size > 3 }people_with_truncated_names = people.map(&Qo.match_fn( Qo.m(name_longer_than_three) { |person| Person.new(person.name[0..2], person.age) }, Qo.m(:*) # Identity function, catch-all))
    1. John Burn-Murdoch. (2021, May 27). NEW: B.1617.2 is fuelling a third wave in the UK, with not only cases but also hospital admissions rising. Vaccines will make this wave different to those that have come before, but it remains a concern, and one that other countries will soon face. Thread on everything we know: Https://t.co/4825qOqgrl [Tweet]. @jburnmurdoch. https://twitter.com/jburnmurdoch/status/1397995388267810818

  28. Jul 2021
    1. In the examples above, the number 42 on the left hand side isn’t a variable that is being assigned. It is a value to check that the same element in that particular index matches that of the right hand side.
  29. May 2021
    1. By contrast, in our work we have centred circumstances of cultural diversity and human relationships.

      I'm glad to see that we didn't retreat from the critical stance that we initially brought forward. Our perspective was that Kostakis et al. tended towards a 'provisionist' and paternalistic sort of development trajectory, a kind of neo-colonialism, even though they are pitching their work from within peer-to-peer and free software settings. The same issue could easily come up with patterns, i.e., if they are offered as the solution. Realistically, it's possible to read a lot of the patterns literature this way (including Alexander), regardless of what they say about adapting their patterns for local circumstances. The medium of print holds the more egalitarian process of pattern development hostage, and makes pattern authors seem much more arrogant than they ever intended to be! This is why we've focused on participatory processes of pattern development here. Furthermore we're not saying that this is an exhaustive treatment of that topic! Hopefully it is clear (though, if not, this will take more work) that what we're trying to develop is the opposite of 'provisionist' thinking. (BTW, for this term, Cf. Boud and Lee "‘Peer learning’ as pedagogic discourse for research education"

    2. Pattern language development can give us another way to think and talk about the “process of language development” that already goes on inside institutions

      This part could be relevant for thinking about 'pattern mining' and how to contextualise it. Consider the various situations where we run into a problem of language, i.e., where we don't have any language to talk about something that actually urgently matters to the parties involved. Things can either end badly there, or the parties can engage in a process of language development.

  30. Apr 2021
    1. colonial officials in Africa and
      • Colonialism in India affected colonialism in other places by leading by example
    2. hus, they destroyed anything that represent: the authority of the company:

      Very similar to the French Revolution, immense oppression boils to extreme revolution against everything

    3. it was the duty of the wealthy
      • Pattern: underprivileged groups convincing people in power (wealthy Indians) to support a cause for a reason (loss of religious practices) that is only one of the many reasons the underprivileged people support the cause (heavy taxation, loss of rights, etc.).
    4. the import of British
      • Putting a colonized nation in a trade deficit is a common pattern in imperialism (ex. the colonies and Britain)
    5. In return, the Mughal emperor would receive a hefty annual pension.
      • People originally in power in colonized territories striking a deal with the colonizers for their benefit is a common pattern
    6. rebels were tied to cannons and blown to bits to teach Indians a lesson in power

      Brutal punishment used to show colonized peoples who has the power

      • Reminds me of control tactics in slavery
  31. Mar 2021
  32. Feb 2021
    1. I think a better, more immediately understandable name for this concept would be command object, because it lets you pass around commands (or a list of commands) as objects.

      That's the only thing you really need to know abut this pattern. The rest seems like boring implementation details that aren't that important, and that naturally follow from the primary definition above.

    2. Uses
    3. The central ideas of this design pattern closely mirror the semantics of first-class functions and higher-order functions in functional programming languages. Specifically, the invoker object is a higher-order function of which the command object is a first-class argument.
  33. Jan 2021
    1. Popper for Svelte with actions, no wrapper components or component bindings required! Other Popper libraries for Svelte (including the official @popperjs/svelte library) use a wrapper component that takes the required DOM elements as props. Not only does this require multiple bind:this, you also have to pollute your script tag with multiple DOM references. We can do better with Svelte actions!
  34. Dec 2020
  35. Nov 2020
    1. With Lotus Notes, I can combine a hierarchically organized outline view of the documents, with full text searching, hypertext links and traditiona l relational database like reports (for example, a sorted view of items to do).

      What Lotus Notes allowed you to do is to combine a hierarchical organized overview, achieved through an outliner, with search, hyperlinks and relational-database-like reports. Lotus Notes also allowed you to organized different document formats (Word, emails, etc.)

    1. Alexanderproposeshomesandofficesbedesignedandbuiltbytheireventualoccupants.Thesepeople,hereasons,knowbesttheirrequirementsforaparticularstructure.Weagree,andmakethesameargumentforcomputerprograms.Computerusersshouldwritetheirownprograms.KentBeck&WardCunningham,1987 [7]

      Users should program their own programs because they know their requirements the best.

      [7]: Beck, K. and Cunningham, W. Using pattern languages for object-oriented programs. Tektronix, Inc. Technical Report No. CR-87-43 (September 17, 1987), presented at OOPSLA-87 workshop on Specification and Design for Object-Oriented Programming. Available online at http://c2.com/doc/oopsla87.html (accessed 17 September 2009)

    2. Before the publication of the ‘Gang of Four’ book that popularised software patterns [4], Richard Gabriel described Christopher Alexander’s patterns in 1993 as a basis for reusable object‐oriented software in the following way:Habitabilityisthecharacteristicofsourcecodethatenablesprogrammers,coders,bug­fixers,andpeoplecomingtothecodelaterinitslifetounderstanditsconstructionandintentionsandtochangeitcomfortablyandconfidently.

      Interesting concept for how easy to maintain a piece of software is.

    1. Connected to this are Andy Matuschak’s comments about contextual backlinks bootstrapping new concepts before explicit definitions come into play.

      What Joel says here about Contextual Backlinks is that they allow you to "bootstrap" a concept (i.e. start working with it) without explicit definitions coming into play (or as Andy would say, the content is empty).

    2. Easily updated pages: don’t worry about precisely naming something at first. Let the meaning emerge over time and easily change it (propagating through all references).

      Joel highlights a feature here of Roam and ties it to incremental formalisms.

      In Roam you can update a page name and it propagates across all references.

    3. Cognitive Overhead (aka Cognitive Load): often the task of specifying formalism is extraneous to the primary task, or is just plain annoying to do.

      This is the task that you're required to do when you want to save a note in Evernote or Notion. You need to choose where it goes.

    4. The basic intuition is described well by the Shipman & Marshall paper: users enter information in a mostly informal fashion, and then formalize only later in the task when appropriate formalisms become clear and also (more) immediately useful.

      Incremental formalism

      Users enter information in an informal fashion. They only formalize later when the appropriate formalism becomes clear and/or immediately useful.

    5. It’s important to notice something about these examples of synthesis representations: they go quite a bit further than simply grouping or associating things (though that is an important start). They have some kind of formal semantic structure (otherwise known as formality) that specifies what entities exist, and what kinds of relations exist between the entities. This formal structure isn’t just for show: it’s what enables the kind of synthesis that really powers significant knowledge work! Formal structures unlock powerful forms of reasoning like conceptual combination, analogy, and causal reasoning.

      Formalisms enable synthesis to happen.

    1. Systems which display backlinks to a node permit a new behavior: you can define a new node extensionally (rather than intensionally) by simply linking to it from many other nodes—even before it has any content.

      Nodes in a knowledge management system can be defined extensionally, rather than intensionally, through their backlinks and their respective context.

  36. Oct 2020
    1. withindex.js, we have a single source of truth, giving fine grained control on what we expose to the outside world.
    2. import statements will become much smaller, as we will be importing stuff from less files. For example AbstractNode.js has only on import statement now, where it had two before.
    3. The reason that this solves our problem is: we now have full control over the module loading order. Whatever the import order in internal.js is, will be our module loading order.
    4. Here are few, real-life commits of refactorings that make use of this solution:
    5. The crux of this pattern is to introduce an index.js and internal.js file.
    6. However, after solving this problem a few times, a pattern appeared.
    1. Since “virtual DOM” is more of a pattern than a specific technology, people sometimes say it to mean different things. In React world, the term “virtual DOM” is usually associated with React elements since they are the objects representing the user interface
  37. Sep 2020
    1. I don't understand why it just launches the mutation once and then it throws the error Function called outside component initialization, the only way to make it work is to do something like $: result = mutation(...) but it doesn't make sense, I don't want to run the mutation after each keystroke.
    2. We’re still working on idiomatic Svelte APIs so this one’s also on our list to figure out what the best way forward is
    1. in constructing representations of how to supportlearning in particular cases

      It reminds me of conjecture mapping. Are we going to make the similar thing?

  38. Aug 2020
  39. Jul 2020
    1. Zhong, H., Wang, Y., Shi, Z., Zhang, L., Ren, H., He, W., Zhang, Z., Zhu, A., Zhao, J., Xiao, F., Yang, F., Liang, T., Ye, F., Zhong, B., Ruan, S., Gan, M., Zhu, J., Li, F., Li, F., … Zhao, J. (2020). Characterization of Microbial Co-infections in the Respiratory Tract of hospitalized COVID-19 patients. MedRxiv, 2020.07.02.20143032. https://doi.org/10.1101/2020.07.02.20143032

  40. Jun 2020
  41. May 2020
  42. Apr 2020
    1. The result, all too often, is that we decide (often unconsciously) that the sweeping change just isn't worth it, and leave the undesirable pattern untouched for future versions of ourselves and others to grumble about, while the pattern grows more and more endemic to the code base.
  43. Mar 2020
    1. But even cookiebot.com is doing it the wrong way. As far as I know and have read the user should opt-in which info/cookie(s) he/she would like to approve or accept. With cookiebot.com all the boxes are already marked but maybe one can change that in the settings!?
    1. It is recommended that a library should have one subclass of StandardError or RuntimeError and have specific exception types inherit from it. This allows the user to rescue a generic exception type to catch all exceptions the library may raise even if future versions of the library add new exception subclasses.
    1. The pattern below has become exceptionally useful for me (pun intended). It's clean, can be easily modularized, and the errors are expressive. Within my class I define new errors that inherit from StandardError, and I raise them with messages (for example, the object associated with the error).
    1. A majority also try to nudge users towards consenting (57%) — such as by using ‘dark pattern’ techniques like using a color to highlight the ‘agree’ button (which if clicked accepts privacy-unfriendly defaults) vs displaying a much less visible link to ‘more options’ so that pro-privacy choices are buried off screen.
    1. Earlier this year it began asking Europeans for consent to processing their selfies for facial recognition purposes — a highly controversial technology that regulatory intervention in the region had previously blocked. Yet now, as a consequence of Facebook’s confidence in crafting manipulative consent flows, it’s essentially figured out a way to circumvent EU citizens’ fundamental rights — by socially engineering Europeans to override their own best interests.
    2. So it’s not surprising that Facebook is so coy about explaining why a certain user on its platform is seeing a specific advert. Because if the huge surveillance operation underpinning the algorithmic decision to serve a particular ad was made clear, the person seeing it might feel manipulated. And then they would probably be less inclined to look favorably upon the brand they were being urged to buy. Or the political opinion they were being pushed to form. And Facebook’s ad tech business stands to suffer.
    3. design choices are being selected to be intentionally deceptive. To nudge the user to give up more than they realize. Or to agree to things they probably wouldn’t if they genuinely understood the decisions they were being pushed to make.
  44. Jan 2020
    1. Fundamental to any science or engineering discipline is a common vocabulary for expressing its concepts, and a language for relating them together. The goal of patterns within the software community is to create a body of literature to help software developers resolve recurring problems encountered throughout all of software development. Patterns help create a shared language for communicating insight and experience about these problems and their solutions. Formally codifying these solutions and their relationships lets us successfully capture the body of knowledge which defines our understanding of good architectures that meet the needs of their users. Forming a common pattern language for conveying the structures and mechanisms of our architectures allows us to intelligibly reason about them. The primary focus is not so much on technology as it is on creating a culture to document and support sound engineering architecture and design.

      Without reference to software development, this reads as:

      Fundamental to any science or engineering discipline is a common vocabulary for expressing its concepts, and a language for relating them together. [...] Patterns help create a shared language for communicating insight and experience about these problems and their solutions. [...] Forming a common pattern language for conveying the structures and mechanisms of our architectures allows us to intelligibly reason about them. The primary focus is not so much on technology as it is on creating a culture to document and support sound engineering architecture and design.

  45. Nov 2019
    1. That's especially useful when combining it with React's slot pattern, which is used for passing multiple composed components to different places within a (render prop) component, but then advancing it with a render prop function to pass the state from the render prop component to the composed components.
  46. Oct 2019
    1. Rack middleware is more than "a way to filter a request and response" - it's an implementation of the pipeline design pattern for web servers using Rack. It very cleanly separates out the different stages of processing a request - separation of concerns being a key goal of all well designed software products.
  47. Sep 2019
  48. Aug 2019
  49. Feb 2019
    1. Historians call it the “conquest pattern”, which unfolds in three phases: legalistic measures to provide the invasion with a gloss of justification, a declaration of territorial claims, and the founding of a town to legitimate the declaration.
  50. Jan 2019
  51. Oct 2018
    1. A variant is useful in standards work, where I ask collaborators to search for the worst possible name for something, in order to avoid long arguments about which is best. You can have a good laugh when someone invokes the "worst is best" rule, and get on with the real work of working together.

      Almost like a pattern. Start off with something, anything, and improve from there.

  52. Mar 2018
  53. Oct 2017
    1. handing a shilling to a weary-looking man. I found myself in a big hall girdled at half its height by a gallery. Nearly all the stalls were closed and the greater part of the hall was in darkness.

      There is a stark contrast to his previous trip to the market:

      "I imagined that I bore my chalice safely through a throng of foes."

    2. her name was like a summons to all my foolish blood.

      The boy/narrator is obviously in love, yet he never says the girl's name. She is initially introduced as "Mangan's sister", and afterwards she is only mentioned by pronouns. An essay by Richard J. Gerber, titled "Joyce's 'Araby' and the Mystery of Mangan's Sister", explores the varying views on the significance of omitting her name:

      • William Bysshe Stein describes "the young boy’s adoration of Mangan’s sister, and his reluctance to speak her name, as a form of religious devotion: 'This awe and reverence literally manifest an impulse toward deification". Judaic tradition states that God's name, Yahveh, was so holy "'that it was sacrilege...to pronounce it'".

      • Ben L. Collins believes that Joyce is making a joke about Jesus Christ. He "cites Joyce’s well-known allusion to Irish poet James Clarence Mangan (and his poems about love, religion, and nationality)...[Collins] concludes that 'The role of Mangan’s sister as deity is made known, if it cannot establish itself in any other way, comically, for one little knows Joyce who feels he is unaware of or incapable of using Mangan’s initials—J. C.'" In other words, J. C. Mangan shares the same initials as Jesus Christ.

      • The essay by Gerber examines these interpretations, but he ultimately comes to a different conclusion. J. C. Mangan had a sister; she is mentioned in his autobiography, as well as a biography about him. However, her name is never known. Moreover, "Joyce also adapted other significant portions of J. C. Mangan’s early life story for use in 'Araby'...Joyce’s appropriation (and fictionalization) of details taken from Mangan’s life explains Mangan’s sister’s missing name in 'Araby' because she is also nameless in the biographies of J. C. Mangan and in his autobiographical writings".

      The stories in Dubliners incorporate complex layers of meaning into straightforward plot lines.

      source: https://muse-jhu-edu.jpllnet.sfsu.edu/article/605563

    3. She could not go, she said, because there would be a retreat that week in her convent.

      The narrator reveled in the moment when the "Christian Brothers’ School set the boys free". Now the convent/church is preventing the girl he loves from being free.

    4. In front of me was a large building which displayed the magical name.

      Earlier, Mangan's sister told him it would be a "splendid bazaar"; even "The syllables of the word Araby were called to me through the silence in which my soul luxuriated and cast an Eastern enchantment over me". That was in his imagination, but now he's in reality.

    5. we played till our bodies glowed. Our shouts echoed in the silent street. The career of our play brought us through the dark muddy lanes behind the houses where we ran the gauntlet of the rough tribes from the cottages, to the back doors of the dark dripping gardens where odours arose from the ashpits, to the dark odorous stables where a coachman smoothed and combed the horse or shook music from the buckled harness.

      The boy and his friends are still ordinary kids. They like to be adventurous, run through the avenues, and let their imaginations run wild. Later on, the boy's interests evolve, as do the interests of all children as they grow up.

    6. Christian Brothers’ School set the boys free

      "Araby" is filled with religious allusions; religion was important in Ireland. This passage could be interpreted in a number of ways. In one sense, the boys being set "free" could mean that they are finally able to enjoy being kids. They are literally released from the rigid structure of school, and now they can do what boys do: play. Furthermore, Khorand observes that it is possible that the school "constrains and limits [the boys] so much more with it's didactic religious teachings".

      source: http://epiphany.ius.edu.ba/index.php/epiphany/article/view/109/106

    7. I could interpret these signs.

      It seems his uncle likes to drink, and the boy knows what he sees. He may be used to seeing his uncle drunk, or perhaps he is able to glean new information from the world because he is spending less time with his friends and more time at home with the adults. After all, he doesn't seem to go out and play anymore, and he was just sitting with Mrs. Mercer during tea-time while she gossiped at him. He may still be a boy, but he has some insight into the world of adults.

    8. I sat staring at the clock for some time and, when its ticking began to irritate me, I left the room.

      In The Egoist, Ezra Pound asserts that "Araby" "is much better than a 'story', it is a vivid waiting". Indeed, the boy in "Araby" is often waiting for that which he desires the most. His thoughts are consumed by the magical bazaar called Araby: "I wished to annihilate the tedious intervening days...I had hardly any patience with the serious work of life which, now that it stood between me and my desire, seemed to me child's play, ugly monotonous child's play". Later on, while waiting for his uncle, he is forced to "endure the gossip of the tea-table. The meal was prolonged beyond an hour and still my uncle did not come". He is repeatedly waiting for the moment that he believes will bring him happiness.

  54. Jan 2016
    1. “participation architectures.”

      I much prefer this nomenclature especially since it allows me to add Christopher Alexander to the mix. He argued that there are machine systems and growing systems. Or perhaps we can think of the distinction as between engineered and rhizomatic? Or using James Scott's terms: legible v illegible.