465 Matching Annotations
  1. Nov 2024
    1. There is no flag forpoor rights, after all.

      certainly better definitions, words, and labels might help this?

    1. Why the name "CLOG?" Aren't there enough catchy acronyms? Yes! Agreed. We don't need more acronyms. Originally, I used the generic term "log," but quickly realized that whenever I wanted to search for my logs, I would inevitably bring up notes related to "blogs," "logging," "logical," "logrolling," "slog," "flog," and basically any word ending in "-ology." It was a mess. Since I am not a wooden shoe maker, my vault is relatively free of "clog" derivatives.

      Naming things with respect to future search functionality and capabilities can be useful.

  2. Oct 2024
    1. “e mind is for having ideas,not holding them.”7 Taken from David Allen’s seminal text on productivity,Getting ings Done, this idea, above all others, binds lawyers to Luddites,helping thousands who struggle to put ideas into action.

      I really don't like this David Allen quote which is often seen in these spaces. It's usually used by people who haven't spent any time training their memory.

      I'll give BD the benefit of the doubt that the entirety of this PKM paragraph is sidelining the "PKM scene" altogether.

  3. Sep 2024
    1. Because the substantial surplus expropriated by the few allowed them to invest their time into developing a state, military, and cultural apparatus that reproduced their exploitative position of privilege, the collective consciousness ruling this sociopolitical body tended to comprehend its free citizenship abstractly, as if a natural given, with little consciousness of the contribution of the laboring body

      for - cliche - the more things change, the more they remain the same - quote - labour - transforming - to - spiritual - sacred - meaningful - Benjamin Suriano - adjacency - meaninglessness of labour in modernity - sacred - spiritual - reviving spirit of monastics Benjamin Suriano - meaning crisis - John Vervaeke

      adjacency - between - the meaninglessness of labour in modernity - Benjamin Suriano - the proposal for revival of labour as spiritual activity -- mitigating the meaning crisis - John Vervaeke - adjacency relationship - In his PhD dissertation, Benjamin Suriano argues that reviving the spirit of Christian monastics of the medieval era could mitigate modernity's meaning crisis.

      quote - labour - transforming - to - spiritual - sacred - meaningful - Benjamin Suriano - (see below) - Because the substantial surplus expropriated by the few - allowed them to invest their time into developing a state, military, and cultural apparatus that reproduced their exploitative position of privilege, - the collective consciousness ruling this sociopolitical body tended to comprehend its free citizenship abstractly, - as if a natural given, - with little consciousness of the contribution of the laboring body

    1. I enjoyed this podcast but got the feeling they see PKM as a kind of grueling Fordist production line. The process in your book seems a lot less like a grind and a lot more like fun!

      Zettelkasten is a method for creating "slow productivity" against a sea of information overload

      Some of the framing goes back to using the card index as a means of overcoming the eternal problem of "information overload" [see A. Blair, Yale University Press, 2010]. I ran into an example the other day in David Blight's DeVane Lectures at Yale in which he simultaneously shrugged at the problem while talking about (perhaps unknown to him) the actual remedy: https://boffosocko.com/2024/09/16/paul-conkins-zettelkasten-advice/

      It's also seen in Luhmann claiming he only worked on things he found easy/fun. The secret is that while you're doing this, your zettelkasten is functioning as a pawl against the ratchet of ideas so that as you proceed, you don't lose your place in your train of thought (folgezettel) even if it's months since you thought of something last. This allows you to always be building something of interest to you even (especially) if the pace is slow and you don't know where you're going as you proceed. It's definitely a form of advanced productivity, but not in the sort of "give-me-results-right-now" way that most have come to expect in a post-Industrial Revolution world. This distinction is what is usually lost on those coming from a productivity first perspective and causes friction because it's not the sort of productivity they've come to expect.


      In reply to writingslowly and Bob Doto at https://discord.com/channels/992400632390615070/992400632776507447/1285175583877103749<br /> Conversation/context not for direct attribution

    1. For years developers have followed the same arcane dozen steps to create a long-lived daemon process on Unix-based systems. These steps were state of the art in 2000 but they are no longer best practice today.
    1. Modern parallel languages have much easier to use execution models. The thread model was one of the original parallel execution models, which may account for why it has persisted despite being difficult to use.
  4. Aug 2024
    1. Kroustgrafologist Greek kroustiki is Percussion Graf for writing Ologist for study

      name for typewriter collectors via LogInternational2253

    1. Monopoly is not played on a cartesian plane. It's played on a directed circular graph. Therefore, it is inappropriate to use the Euclidean distance metric to compare the distances between places on the board. We must instead use minimum path lengths. Example: If we used Euclidean distance, then you would have to agree that the distance between, say, Go and Jail is equal to the distance between the Short Line and the Pennsylvania Railroad. Clearly, this is not the intention. In your example, the "nearest railroad" would be the railroad square having the shortest path from wherever you stand. With the game board representing a directed graph, there are no "backwards" paths. Thus, the distance from the pink Chance square to the Reading railroad is not 2. It's 38.
    1. 54:50 "getting things done" is used in productivity vocabulary, not necessarily tied to the methodology "GTD". It signifies to produce and do stuff, which seemingly falls well on the tongue?

    1. human beings don't do that we understand that the chair is not a specifically shaped object but something you consider and once you understood that concept that principle you see chairs everywhere you can create completely new chairs

      for - comparison - human vs artificial intelligence

      question - comparison - human vs artificial intelligence - Can't an AI also consider things we sit on to then generalize their classifcation algorithm?

  5. Jun 2024
    1. How can I wait for container X before starting Y? This is a common problem and in earlier versions of docker-compose requires the use of additional tools and scripts such as wait-for-it and dockerize. Using the healthcheck parameter the use of these additional tools and scripts is often no longer necessary.
  6. May 2024
  7. Mar 2024
    1. It will be seen from the foregoing that care isrequired in the appKcation of the card system,and that neglect must sooner or later lead to failure. There wasindeed a time when it seemed doubtful whether the card systemwould survive the first attempts. It was even tried and abandonedby some. These early failures were in the main due to the absenceof expert labour and to the higher order of accuracy required ascompared with the book system. The systems were not thenplanned out with that care that is bestowed upon them now. Onesystem would be started and presently there would be a decisionto alter it so as to fall in with riper experience. In the absenceof one system consistently adhered to the files soon got into achaotic condition until at last they had to be abandoned, for infact they had become useless.

      This sort of failure is still seen today with people setting up note taking systems in a variety of digital environments.

  8. Jan 2024
    1. Classification is the process of grouping organisms together either based on features they have in common, or based on their ancestry, or sometimes both. This results in the arrangement of living things into groups.
    1. Prepare to transition away from Google Sync Google Sync doesn’t support OAuth authentication, 2-factor authentication, or security keys, which leaves your organization’s data less secure.
    1. a blog post that deals with integrating The Today System into the Bullet Journal Method!

      The creator of the Today System was definitely aware of GTD, Bullet Journal and likely other methods, and intended his to be an added piece on top of them.

  9. Nov 2023
    1. Autoloading in Rails was based on const_missing up to Rails 5. That callback lacks fundamental information like the nesting or the resolution algorithm being used. Because of that, Rails autoloading was not able to match Ruby's semantics, and that introduced a series of issues. Zeitwerk is based on a different technique and fixed Rails autoloading starting with Rails 6.
    2. may define Foo, instead of reopen it
    3. Since require has global side-effects, and there is no static way to verify that you have issued the require calls for code that your file depends on, in practice it is very easy to forget some. That introduces bugs that depend on the load order.

      class of bugs

    1. ActiveRecord::Base.normalizes declares an attribute normalization. The normalization is applied when the attribute is assigned or updated, and the normalized value will be persisted to the database. The normalization is also applied to the corresponding keyword argument of query methods, allowing records to be queried using unnormalized values.

      Guess I don't need to use mdeering/attribute_normalizer gem anymore...

    1. Are you spending too much time transferring uncompleted tasks to tomorrow’s schedule?

      Example of someone suggesting the migration of uncompleted tasks from one day to another in 1998.

    1. What do you do for a calendar? I'm considering moving from a moleskine GTD system to index cards for reasons you mention (waste paper, can't re-order), but love my 2-year calendar at the front

      reply to verita-servus at https://www.reddit.com/r/gtd/comments/15pfz8o/comment/k7iqjwa/?utm_source=reddit&utm_medium=web2x&context=3

      Last year I had a Field Notes card with the year's calendar on it that I kept with my daily cards when necessary. (I think it came included with their "Ignition" edition.) Many companies give these sorts of calendars away as PR.

      This year I used a Mizushima Perpetual Calendar Stamp to create my own custom card with the coming years' dates. (I also often use this stamp for individual months on other types of cards.) I'm sure you could also find something online to print out or draw your own if you wish. These index card specific templates might give one ideas: https://www.calendarsquick.com/printables/free.html.

      Pretty much any spread one might make in a bullet journal can be recreated in index cards. Some of the biggest full page spreads or double page spreads are still doable, they may just need to be shrunk a bit or broken up. I've also printed things onto larger 8x12" card stock and then folded them down to 4x6" before to use as either larger notes or mini-folders as necessary. Usually I do this for holding the month's receipts.

      This set of calendar cards from Present & Correct which are done in letterpress looked nice if you wanted to go more to the luxe side as well as to the larger side.

      Given the sticker market for Hobonichi and other similar planners, you could also buy some custom decorative stickers which you could attach to cards as well. And there's nothing keeping you from just writing it all out by hand if you wish.

      Options abound.

  10. Oct 2023
    1. three things happened
      • for: 3 things Nora learned from her father, mutual learning, indyweb - mutual learning

      • paraphrase

        • first, Nora learned what his father was learning
        • second, Nora learned what it looks like to learn and
      • third, and most important, Nora learned she could be in relationship in learning, mutual learning
    1. The main usage difference is that dependency can be used in a second sense as a "concrete" noun to mean a person or thing which depends on something/someone else. But note that in the programming context it's not uncommon to see it used to mean a software resource upon which some piece of software depends (i.e. - reversing the need/provide relationship).

      Is that really true? Can dependency refer to a person or thing which depends on something/someone else?? I'm only used to it the other way.

    2. And as others have pointed out, there is potential for ambiguity: if A is dependent on B, then a dependence or dependency (relationship) exists; but referring to either A or B as the dependency demands context.

      "demands context" :)

  11. Sep 2023
    1. Guys and gals, we are selling out our stock and closing the Capturewallet shop. This is just a heads-up that when we shortly are sold out - we will not restock. Thanks for all of you that have bought from us since 2019! It's been a treat to serve the GTD community!

      via u/MortenRovikGTD at https://www.reddit.com/r/gtd/comments/n6g3d2/comment/iv6s0eh/?utm_source=reddit&utm_medium=web2x&context=3

      Capture wallet was a site he ran with his wife as a side project for several years from 2019 to late 2022.

  12. Aug 2023
    1. In fact, it might be good if you make your first cards messy and unimportant, just to make sure you don’t feel like everything has to be nicely organized and highly significant.

      Making things messy from the start as advice for getting started.

      I've seen this before in other settings, particularly in starting new notebooks. Some have suggested scrawling on the first page to get over the idea of perfection in a virgin notebook. I also think I've seen Ton Ziijlstra mention that his dad would ding every new car to get over the new feeling and fear of damaging it. Get the damage out of the way so you can just move on.

      The fact that a notebook is damaged, messy, or used for the smallest things may be one of the benefits of a wastebook. It averts the internal need some may find for perfection in their nice notebooks or work materials.

    1. Zettelkasten in one or several language(s)? .t3_15wo3f2._2FCtq-QzlfuN-SwVMUZMM3 { --postTitle-VisitedLinkColor: #9b9b9b; --postTitleLink-VisitedLinkColor: #9b9b9b; --postBodyLink-VisitedLinkColor: #989898; }

      As long as you know and understand what you're writing, use as many languages as you or your zettelkasten wants or needs.

      I'm often working with ideas from other languages and cultures which have no direct translations into English, so I use those native words interspersed with English. Sometimes I don't have words in any language and make up a shorthand phrase in English until I can come up with a better word. Often I'll collect examples of the same "foreign" words in multiple contexts to tease out their contextual meanings as was comprehensively done with large group zettelkasten like the Thesaurus Linguae Latinae and the Wörterbuch der ägyptischen Sprache. I also frequently use mathematical symbols, equations, and other scientific notations, graphs, drawings, color, etc. to make my meanings clear.

      I've also worked with historical figures who have had names in multiple languages over the centuries and cross index them in a variety of different languages based on context. As an example, I've got at least 11 different variations of names for Ramon Llull in almost as many languages and variations of transliterations. I try to keep each one in its original context, but link them in my index.

      There are certainly zettelkasten out there written in four and more languages as suited the needs of their users. S.D. Goitein certainly used Hebrew, English, German, Arabic, Aramaic in his and may have likely had other languages (Yiddish, Coptic, Egyptian?) interspersed to lesser extents. Adolph Erman certainly used Egyptian hieroglyphs along with German in his. It can easily be argued that their zettelkasten and work required multiple languages.

      https://web.archive.org/web/20180627163317im_/https://aaew.bbaw.de/wbhome/Broschuere/abb08.jpg A example zettelkasten slip showing a passage of text from the victory stele of Sesostris III at the Nubian fortress of Semna. The handwriting is that of Adolf Erman, who had "already struggled with the text as a high school student".

      At the end of the day, they're your notes, so write them as you like.

    1. I make a file named: app/models/active_storage/attachment.rb. Because it's in your project it takes loading precedence over the Gem version. Then inside we load the Gem version, and then monkeypatch it using class_eval: active_storage_gem_path = Gem::Specification.find_by_name('activestorage').gem_dir require "#{active_storage_gem_path}/app/models/active_storage/attachment" ActiveStorage::Attachment.class_eval do acts_as_taggable on: :tags end The slightly nasty part is locating the original file, since we can't find it normally because our new file takes precedence. This is not necessary in production, so you could put a if Rails.env.production? around it if you like I think.
  13. Jul 2023
  14. Jun 2023
    1. I think we have a responsibility not only to ourselves, but also to each other, to our community, not to use Ruby only in the ways that are either implicitly or explicitly promoted to us, but to explore the fringes, and wrestle with new and experimental features and techniques, so that as many different perspectives as possible inform on the question of “is this good or not”.
    2. If you’ll forgive the pun, there are no constants in programming – the opinions that Rails enshrines, even for great benefit, will change, and even the principles of O-O design are only principles, not immutable laws that should be blindly followed for the rest of time. There will be other ways of doing things. Change is inevitable.
  15. May 2023
    1. It is unfortunate that the German word for a box of notes is the same as the methodology surrounding Luhmann.

      reply to dandennison84 at https://forum.zettelkasten.de/discussion/comment/17921/#Comment_17921

      I've written a bit before on The Two Definitions of Zettelkasten, the latter of which has been emerging since roughly 2013 in English language contexts. Some of it is similar to or extends @dandennison84's framing along with some additional history.

      Because of the richness of prior annotation and note taking traditions, for those who might mean what we're jokingly calling ZK®, I typically refer to that practice specifically as a "Luhmann-esque zettelkasten", though it might be far more appropriate to name them a (Melvil) "Dewey Zettelkasten" because the underlying idea which makes Luhmann's specific zettelkasten unique is that he was numbering his ideas and filing them next to similar ideas. Luhmann was treating ideas on cards the way Dewey had treated and classified books about 76 years earlier. Luhmann fortunately didn't need to have a standardized set of numbers the way the Mundaneum had with the Universal Decimal Classification system, because his was personal/private and not shared.

      To be clear, I'm presently unaware that Dewey had or kept any specific sort of note taking system, card-based or otherwise. I would suspect, given his context, that if we were to dig into that history, we would find something closer to a Locke-inspired indexed commonplace book, though he may have switched later in life as his Library Bureau came to greater prominence and dominance.

      Some of the value of the Dewey-Luhmann note taking system stems from the same sorts of serendipity one discovers while flipping through ideas that one finds in searching for books on library shelves. You may find the specific book you were looking for, but you're also liable to find some interesting things to read on the shelves around that book or even on a shelf you pass on the way to find your book.

      Perhaps naming it and referring to it as the Dewey-Luhmann note taking system or the Dewey-Luhmann Zettelkasten may help to better ground and/or demystify the specific practices? Co-crediting them for the root idea and an early actual practice, respectively, provides a better framing and understanding, especially for native English speakers who don't have the linguistic context for understanding Zettelkästen on its own. Such a moniker would help to better delineate the expected practices and shape of a note taking practice which could be differentiated from other very similar ones which provide somewhat different affordances.

      Of course, as the history of naming scientific principles and mathematical theorems after people shows us, as soon as such a surname label might catch on, we'll assuredly discover someone earlier in the timeline who had mastered these principles long before (eg: the "Gessner Zettelkasten" anyone?) Caveat emptor.

  16. Apr 2023
  17. Mar 2023
    1. ‘‘I think it lets us be more thoughtful and more deliberate about safety issues,’’ Altman says. ‘‘Part of our strategy is: Gradual change in the world is better than sudden change.’’

      What are the long term effects of fast breaking changes and gradual changes for evolved entities?

    1. Finding good names is quite difficult. Single words are also almost always better than combined names, even though one is a bit limited with single words alone. There are exceptions though. For example .each_with_index or .each_index are good names, IMO.
  18. Feb 2023
    1. People know it’s bad but not how bad. This gap in understanding remains wide enough for denialists and minimisers to legitimise inadequate action under the camouflage of empty eco-jargon and false optimism. This gap allows nations, corporations and individuals to remain distracted by short-term crises, which, however serious, pale into insignificance compared with the unprecedented threat of climate change.
      • it is the conservative nature of science
      • to spend years to validates claims.
      • Unfortunately, in a global emergency as we find ourselves in now, we don’t have the luxury of a few years.
      • In the case of this wicked problem, we need to find a way to make major decisions based on uncertain but plausible data
      • The misinformation has the effect of causing society to set the wrong priorities and making things worse
    1. The ID suffix was added because I use external tools to add notes to my vault so I needed a means to ensure there would never be a collision. For example, Alfred. If I accidentally typed the name of a note that already exists into it I didn’t want it to accidentally overwrite an existing note,

      Example of someone ("davecan") with a specific reason for using unique identifiers in the titles for their digital note taking.

    1. Result of lots of searching on net is that pre-checkout hook in git is not implemented yet. The reason can be: There is no practical use. I do have a case It can be achieved by any other means. Please tell me how? Its too difficult to implement. I don't think this is a valid reason
  19. Jan 2023
    1. Since Rails creates callbacks for dependent associations, always call before_destroy callbacks that perform validation with prepend: true.
    1. https://www.npr.org/sections/health-shots/2023/01/18/1139783203/what-makes-songs-swing-physicists-unravel-jazz-mystery

      Spaces in both language, text, and music help to create the texture of what is being communicated (and/or not).


      Link to Edward Tufte's latest book in section entitled "Spacing enhances complex meaning, encourages slow, thoughtful reading":

      <small><cite class='h-cite via'> <span class='p-author h-card'>KevinMarks</span> in #meta 2023-01-19 (<time class='dt-published'>01/19/2023 11:32:19</time>)</cite></small>


      Link to Indigenous astronomy example of negative spaces (like the Great Emu)

  20. Dec 2022
    1. In this case, if the constant Admin::User was already loaded at the time Admin::UserManager.all was called, then it would return Admin::User objects.However, if Admin::User was not yet auto-loaded, but User was, Admin::UserManager.all would instead return User objects!
  21. Nov 2022
    1. So when configuring Capybara, I'm using ignore_default_browser_options, and only re-use this DEFAULT_OPTIONS and exclude the key I don't want Capybara::Cuprite::Driver.new( app, { ignore_default_browser_options: true, window_size: [1200, 800], browser_options: { 'no-sandbox': nil }.merge(Ferrum::Browser::Options::Chrome::DEFAULT_OPTIONS.except( "disable-features", "disable-translate", "headless" )), headless: false, } )
    1. The lowest strata represents Generative ambiguity. Here, words are used as symbols for ideas that are very hard to express; an individual gives a name to a nebulous collection of ideas or thoughts. They struggle to make this approach make sense to others.

      Generative ambiguity is the process of giving names, potentially tentative, to a nebulous collection of nascent and unclear ideas in an effort to help make sense of them both to themselves as well as others.

    1. And David Allen was there at the beginning. He had this idea of full capture where he said all of your tasks should be a trusted system that you review regularly, not in your head. He actually adapted that idea from a previous business thinker named Dean Acheson, unrelated to President Truman’s Secretary of State, same name, different person, who had first developed, I believe in the 1970s, this notion of full capture and David Allen expanded it.

      Reference?

    1. This quadrant is busywork at scale. It’s the domain of productivity gurus, shiny tech tools (like Superhuman, Notion or Hey.com), Zapier automations, Text Expanders and the budding no-code movement.

      Interesting, Khe put an image of David Allen's Getting Things Done book in the image accompanying this quadrant.

      I assume he is talking about creating and maintaining the GTD system, or also about using the system to get results? After all, an important aspect of GTD (though not made clear in the book) is getting perspective.

    1. Synchronously waiting for the specific child processes in a (specific) order may leave zombies present longer than the above-mentioned "short period of time"
  22. Sep 2022
    1. Filter gives me the impression of inclusion... so if I filter by fruits, I expect to see apples, oranges, and bananas. Instead, this is more like filter out fruits... remove all the fruits, and you're left with the rest. Filter in/out are both viable. One means to include everything that matches a condition, and the other is to exclude everything that does not match a condition. And I don't think we can have just one.
  23. Aug 2022
    1. Title for My Book

      It's tough to do your own marketing and naming is hard. If you have an obscure short title, be sure to have a sharply defined subtitle, both for definition but to hit the keywords you'll want for discovery and search (SEO) purposes. Though be careful with keyword stuffing, if for no other reason than that Luhmann had a particularly sparse index.

      Zettelkasten doesn't have much value for for native search (yet). Who besides a student that doesn't really want to buy it searches for a book on note taking?! Creativity, Productivity, and Writing are probably most of your potential market, so look at books in those areas for words to borrow (aka steal flagrantly). Other less common keywords to consider or throw into your description of the book, though not the title: research, research methods, literature review, thesis writing, Ph.D., etc.

      Perhaps you've limited the question Scott. Instead ask everyone: What title would you want to see on such a book that would make you want to buy and read it? Everyone should brainstorm for 3 minutes and write down a few potential titles.

      I'll start:

      Antinet Method: Thought Development for Creativity and Productive Writing

      Antinet Zettelkasten: A Modern Approach to Thought Development

      Antinet: The Technique of Unreasonably Productive Intellectual Work (and Fun) [h/t F. Kuntze]

      Mix and match away...

    1. Looking for books with wider margins for annotations and notes

      https://www.reddit.com/r/books/comments/wue2ex/looking_for_books_with_wider_margins_for/

      Not long after I posted this it had about 3 upvotes, including my automatic 1. It's now at 0, and there are several responses about not writing in books at all. It seems like this particular book community is morally opposed to writing in one's books! 🤣

      Why though? There's a tremendously long tradition of writing in books, and probably more so when they were far more expensive! Now they're incredibly inexpensive commodities, so why should we be less inclined to write in them, particularly when there's reasonable evidence of the value of doing so?

      I might understand not writing in library books as part of their value within the commons, but https://booktraces.org/ indicates that almost 12% or more of the books they've tracked prior to 1924 have some sort of mark, writing, or evidence that it was actively read.

      Given what I know of the second hand markets, it's highly unlikely that my books (marked up or not) will ever be read by another person.

      There's so much more to say here, but I just haven't the time today...

  24. Jul 2022
    1. I think actually the most critical component is going to be leveraging existing security mechanisms that have been built for resilience and incorporating those into these devices, which is actually what I'm building right now. That's what Thistle Technologies is doing, we're trying to help companies get to that place where they've got modern security mechanisms in their devices without having to build all the infrastructure that's required in order to deliver that. 

      Third-party tool for IoT device updates

      Trying to make them as regular and predictable as what we have for desktop devices now.

    1. 4.2 Meaningful work and meaningful relationships aren’t just nice things we chose for ourselves—they are genetically programmed into us.

      4.2 Meaningful work and meaningful relationships aren’t just nice things we chose for ourselves—they are genetically programmed into us.

    1. Defects found in peer review are not an acceptable rubric by which to evaluate team members. Reports pulled from peer code reviews should never be used in performance reports. If personal metrics become a basis for compensation or promotion, developers will become hostile toward the process and naturally focus on improving personal metrics rather than writing better overall code.
    1. Create a new controller to override the original: app/controllers/active_storage/blobs_controller.rb

      Original comment:

      I've never seen monkey patching done quite like this.

      Usually you can't just "override" a class. You can only reopen it. You can't change its superclass. (If you needed to, you'd have to remove the old constant first.)

      Rails has already defined ActiveStorage::BlobsController!

      I believe the only reason this works:

      class ActiveStorage::BlobsController < ActiveStorage::BaseController

      is because it's reopening the existing class. We don't even need to specify the < Base class. (We can't change it, in any case.)

      They do the same thing here: - https://github.com/ackama/rails-template/pull/284/files#diff-2688f6f31a499b82cb87617d6643a0a5277dc14f35f15535fd27ef80a68da520

      Correction: I guess this doesn't actually monkey patch it. I guess it really does override the original from activestorage gem and prevent it from getting loaded. How does it do that? I'm guessing it's because activestorage relies on autoloading constants, and when the constant ActiveStorage::BlobsController is first encountered/referenced, autoloading looks in paths in a certain order, and finds the version in the app's app/controllers/active_storage/blobs_controller.rb before it ever gets a chance to look in the gem's paths for that same path/file.

      If instead of using autoloading, it had used require_relative (or even require?? but that might have still found the app-defined version earlier in the load path), then it would have loaded the model from activestorage first, and then (possibly) loaded the model from our app, which (probably) would have reopened it, as I originally commented.

  25. Jun 2022
    1. Are there relevant IPs buried in other projects you’ve worked onin the past?

      Sadly, I've already forgotten his self-defined version of IP and I can only think of intellectual property. Is footnote mention linking it to intellectual property certainly didn't help things.

      This is part of why using popular acronyms that aren't descriptive or clever is a bad naming practice.

    Tags

    Annotators

    1. Douglas Adams noted, "Capital letters were always the best way of dealing with things you didn't have a good answer to."

      from Dirk Gently's Holistic Detective Agency

  26. May 2022
    1. We document the order of hooks, but I don't think we document where in that order we integrate Rails helpers which makes this confusing, I do sort of think this is a bug but as we use RSpec to integrate Rails here and RSpec Core has no distinction that matches before / after teardown its sort of luck of the draw, we could possibly use prepend_after for Rails integrations which would sort of emulate these options.
  27. Apr 2022
    1. The lateral keyword allows us to access columns after the FROM statement, and reference these columns "earlier" in the query ("earlier" meaning "written higher in the query").
    1. This latter equivalence does not hold exactly when more than two tables appear, because JOIN binds more tightly than comma. For example FROM T1 CROSS JOIN T2 INNER JOIN T3 ON condition is not the same as FROM T1, T2 INNER JOIN T3 ON condition because the condition can reference T1 in the first case but not the second.
    2. A LATERAL item can appear at top level in the FROM list, or within a JOIN tree. In the latter case it can also refer to any items that are on the left-hand side of a JOIN that it is on the right-hand side of.

      Unlike with most joins (IIUC), order is important with lateral joins. Weird. Why?

      Maybe because it is equivalent to a cross join lateral (see example), and in an explicit cross join, you have a LHS and RHS?

    3. This allows them to reference columns provided by preceding FROM items.
  28. Mar 2022
    1. NVIDIA periodically drops older cards off of its support matrix for NVENC/NVDEC, even if they do have the required hardware. This makes it appear, at first glance to current information sources, that Kepler GPUs do not support NVENC, so we responded as such.
    1. The reason for the new name is that the "dist-upgrade" name was itself extremely confusing for many users: while it was named that because it was something you needed when upgrading between distribution releases, it sounded too much as though it was only for use in that circumstance, whereas in fact it's much more broadly applicable.
    1. The danger of working at "internet time" is that hasty decisions may be poor, and rapid changes may cause troubling turbulence for many users.

      In 1998, Ben Shneiderman wrote "The danger of working at "internet time" is that hasty decisions may be poor, and rapid changes may cause troubling turbulence for many users." He's essentially admonishing against the dangerous and anti-social idea of what Mark Zuckerberg would later encourage at Facebook when he said "move fast and break things."

  29. Feb 2022
    1. Dispatch a custom event. This differs from Svelte's component event system, because these events require a DOM element as a target, can bubble (and do by default), and are cancelable with event.preventDefault(). All SMUI events are dispatched with this instead of Svelte's createEventDispatcher.
  30. Jan 2022
    1. Checks are usually done in this order: 404 if resource is public and does not exist or 3xx redirection OTHERWISE: 401 if not logged-in or session expired 403 if user does not have permission to access resource (file, json, ...) 404 if resource does not exist or not willing to reveal anything, or 3xx redirection
    1. Google/gmail calls apps that don't support OAuth2 "less secure". But, that doesn't make them insecure. So what it means is gmail's meaning of LessSecureApp is basically anything that doesn’t use OAuth2.
  31. Nov 2021
    1. you can define locally parse and it should take precedence over the one in the library: interface JSON { parse(text: string, reviver?: (key: any, value: any) => any): unknown; }
  32. Oct 2021
    1. serverFetch name is unclear. That the docs need to say in bold that it's external is a bit of a code smell.
    2. Rename to externalFetch. That it runs on the server is already implied by it being located in hooks
    1. Inflections go the other way around.In classic mode, given a missing constant Rails underscores its name and performs a file lookup. On the other hand, zeitwerk mode checks first the file system, and camelizes file names to know the constant those files are expected to define.While in common names these operations match, if acronyms or custom inflection rules are configured, they may not. For example, by default "HTMLParser".underscore is "html_parser", and "html_parser".camelize is "HtmlParser".
  33. Sep 2021
    1. They are deliberately dumbing the browser down further and further and it'll probably end up eventually becoming completely unuseable because of this.
    1. Saying that web devs used to be fine with relative imports is like saying that human beings used to be fine living without refrigerators. Sure we did. But was it better than it is now? No. No, it wasn't.
    1. Update API usage of the view helpers by changing javascript_packs_with_chunks_tag and stylesheet_packs_with_chunks_tag to javascript_pack_tag and stylesheet_pack_tag. Ensure that your layouts and views will only have at most one call to javascript_pack_tag or stylesheet_pack_tag. You can now pass multiple bundles to these view helper methods.

      Good move. Rather than having 2 different methods, and requiring people to "go out of their way" to "opt in" to using chunks by using the longer-named javascript_packs_with_chunks_tag, they changed it to just use chunks by default, out of the box.

      Now they don't need 2 similar but separate methods that do nearly the same, which makes things simpler and easier to understand (no longer have to stop and ask oneself, which one should I use? what's the difference?).

      You can't get it "wrong" now because there's only one option.

      And by switching that method to use the shorter name, it makes it clearer that that is the usual/common/recommended way to go.

    2. Webpacker used to configure Webpack indirectly, which lead to a complicated secondary configuration process. This was done in order to provide default configurations for the most popular frameworks, but ended up creating more complexity than it cured. So now Webpacker delegates all configuration directly to Webpack's default configuration setup.

      more trouble than it's worth

      • creating more complexity than it cured
    1. thecitizen, forever active, sweats, bustles about, constantly frets to seek ever morelaborious tasks: he works to death, he even runs toward it in order to be in aposition to live, or he renounces life in order to acquire immortality. He courtsthe great he hates and the rich he despises; he spares nothing to obtain the honorof serving them; he boasts proudly of his baseness and of their protection and,proud of his slavery, he speaks with contempt of those who do not have thehonor of sharing it.

      YESSIRRRRR THIS SHIT RIGHT HERE.

    2. his precious freedom, which is maintained by large nations onlythrough exorbitant taxes, costs you almost nothing to preserve

      wait so freedom is paid for by large taxes for the community, that basically cost nothing? I suppose what is the money value of happiness? Can it be quantified? would people be willing to give up their own power and control (money) to the greater good in pursuit of happiness?? Many people are very selfish... Perhaps those with money only want to use their money to explore their passions and not share with those they feel haven't earned it. BUt how can we say one individual has earned more than another when we are born in different situations. When the climb is much longer and steeper for those born into poverty, than those born into wealth. For the impoverished, how can one flourish when they're focused on staying alive? For the wealthy, how can one flourish when they're preoccupied with all their wealth and access to all the material pleasures of the world?

    3. For freedomis like those hearty and succulent foods or those full-bodied wines which are fitfor nourishing and fortifying robust temperaments which are accustomed tothem, but which overwhelm, ruin, and intoxicate those weak and delicatetemperaments which are not up to them.

      poetic mf

    4. I would have chosen a society of a sizelimited by the extent of human faculties—that is, by the possibility of being wellgoverned—and where, each person being up to his task, no one was compelledto entrust others with the functions with which he was charged; a state where, allindividuals knowing one another, neither the obscure maneuvers of vice nor themodesty of virtue could be hidden from the public’s notice and judgment, andwhere that sweet habit of seeing and knowing one another made love of thefatherland a love of the citizens rather than love of the soi

      Basically imagining a society where everyone works together for the greater good of each other. Where we aren't just putting our trust (AND POWER) in the hands of others. Where we know each other well enough that we aren't separated by our power. Where no wrongdoing can be hidden from public notice or judgement because we all understand whats going on. Love for one another,not just the soil we live on. NO BOURGOIS

    5. For regardless of what the constitution of agovernment may be, if there is a single man5 who is not subject to the law, all theothers are necessarily at his discretion (I

      oof

    1. I feel like app/packs (or something like it) is a good name because it communicates to developers that it's not just JavaScript that can be bundled, it's also CSS, images, SVGs — you name it. I realize what can be bundled is wholly dependent on the bundler you use, but even esbuild supports bundling CSS. So couldn't this possibly be confusing?
    1. I think it's very confusing to overload common executables, such as yarn, in the /bin directory as I often put that bin directory first in my path. Thus, I'd unexpectedly get the bin/yarn rather than my system yarn, which I manage with yvm.
    1. This is no different from other popular libraries or frameworks making huge architectural changes (think React 16.8 with hooks or Python 3). The longer you wait to make the switch, the more painful it will be for your project when you finally do. And in the meantime, you’ll be missing out on valuable improvements to a fundamental part of the workflow of every single project you work on.
  34. Aug 2021
    1. COGNITIVE CONSEQUENCES OF FORCED COMPLIANCE

      The title of the article immediately made me think of the world we are living in now. For example it is becoming more and more evident that the country has mixed opinions on the vaccine. The government, state agencies and other public entities are requiring proof of a vaccine to even enter the premises. Some companies are offering incentives across the country to incentivize the vaccine by offering free products and discounts. To an extent from a medical perspective you want everyone as healthy as possible, but from a freedom perspective it is on the verge of violating an individual's freedom of choice through forced compliance.

    1. “Ultimately, these kind of iframe limitations are the reason why vendors should implement embeddable marketing forms with JavaScript instead of iframes….” – I couldn’t agree more. The trouble is, Pardot’s developers still believe it’s the 1990’s
    1. In the vast majority of cases when I'm using prettier-ignore I'm only really looking to prevent it from breaking my code into new lines, whilst keeping its other transformations such as switching quotes and adding space between brackets. When ignoring single lines, fixing these formatting problems by hand is very manageable. With the ability to have Prettier ignore entire blocks of code I think the ability to specify what you want it to ignore is essential.
    2. Noticed that with 100+ s, I am not alone here. There are definitely a lot of devs wanting this feature. So I took some time out and decided to give this a go myself. I have created a PR for the same
  35. Jul 2021
  36. Jun 2021
    1. "I really appreciate the name change [because] it raises awareness," said Javier Cánovas, assistant professor in the SOM Research Lab, at the Internet Interdisciplinary Institute at the Open University of Catalonia in Barcelona. "There are things that we accept as implicit, and we then realize that we can change them because they don't match our society."
  37. May 2021
    1. I want to avoid nginx overhead (especially if they have tons of alias and rewrites) for in-server communication. Basically, you can have sveltekit server, backend server and nginx server, in that case, communicate inside your internal network will be very expensive like: browser->nginx server(10.0.0.1)->sveltekit server(10.0.0.3)->nginx server(10.0.0.1)->backend server(10.0.0.2) instead just: browser->nginx server(10.0.0.1)->sveltekit server(10.0.0.3)->backend server(10.0.0.2)
    1. As the token is unique and unpredictable, it also enforces proper sequence of events (e.g. screen 1, then 2, then 3) which raises usability problem (e.g. user opens multiple tabs). It can be relaxed by using per session CSRF token instead of per request CSRF token.
    1. CommonJS has served us well for many years, but ESM comes with many benefits, like language-level syntax, browser support, defaults to strict mode, async loading, top-level await, improved static analysis & tree-shaking, and more.
    1. Why are there so many programming languages and frameworks? Everyone has their own opinion on how something should be done. Some of these systems, like AOL, Yahoo, etc... have been around for a decade, and probably not updated much.
    2. I've worked with people at companies where this was their only responsibility. Setting up emails for clients, making sure they pass a battery of tests and look great in all browsers and clients. It's an incredible PITA and it's not a set it and forget it thing. Clients can change month to month; spam filters change, etc...
    1. While support certainly isn’t universal, many of the leading email clients support HTML5 and CSS3. In fact, about 50% of the total market and 3 out of the top 5 email clients support them. Support may be even bigger for your particular audience.
    1. If you ever had to go through the hair-pulling process of designing emails, then you understand. If you haven’t, here’s why it’s such pain:
    2. I used to dread setting up email automation and email campaigns.
  38. Apr 2021
    1. Lumberjack 1.0 had a concept of a unit of work id that could be used to tie log messages together. This has been replaced by tags. There is still an implementation of Lumberjack.unit_of_work, but it is just a wrapper on the tag implementation.
    1. What you want is not to detect if stdin is a pipe, but if stdin/stdout is a terminal.

      The OP wasn't wrong in exactly the way this comment implies: he didn't just ask how to detect whether stdin is a pipe. The OP actaully asked how to detect whether it is a terminal or a pipe. The only mistake he made, then, was in assuming those were the only two possible alternatives, when in fact there is (apparently) a 3rd one: that stdin is redirected from a file (not sure why the OS would need to treat that any differently from a pipe/stream but apparently it does).

      This omission is answered/corrected more clearly here:

      stdin can be a pipe or redirected from a file. Better to check if it is interactive than to check if it is not.

    2. stdin can be a pipe or redirected from a file. Better to check if it is interactive than to check if it is not.
    1. Factory FunNER is the sequel and a very solid improvement to Factory Fun. It uses hexes instead of squares to allow more creative building, and some subtle improvements to scoring, length, and machine placement rules really improve things.
    1. Now that we’ve gotten newer layout features — again, like grid and flexbox — floats, too, have sort of fallen by the wayside, perhaps either because there are better ways to accomplish what they do
    1. Academy Games has always prided itself in the quality of its rules. Most of our rules are taught in stages, allowing you to start playing as soon as possible without needing to read everything. We are very careful about the order we teach rules and rely heavily on graphics and pictures to facilitate understanding. We also include a large number of detailed picture examples, often with 3D renders, that help you understand the context of the rules.
  39. Mar 2021
    1. My preference here is biased by the fact that I spend everyday at work building web components, so Svelte's approach feels very familiar to slots in web components.

      first sighting: That <template>/<slot> is part of HTML standard and the reason Svelte uses similar/same syntax is probably because it was trying to make it match / based on that syntax (as they did with other areas of the syntax, some of it even JS/JSX-like, but more leaning towards HTML-like) so that it's familiar and consistent across platforms.

    2. React and Svelte are very similar in many ways, but what I've found is that in all the little ways that they are different, I prefer Svelte.
    3. Svelte is different in that by default most of your code is only going to run once; a console.log('foo') line in a component will only run when that component is first rendered.
    1. When programming I like to have a single Vim editor open with all my files as tabs. Until now I was using the ":tabnew" command to open files in the current Vim window as I knew no other way.
    1. Third configurable block to run.

      I like how they identify in the description which order things run in: 1st, 2nd, 3rd, and last.

      Though, it would be more readable to have a list of them, in chronological order, rather than having them listed in alphabetical order.

    2. Last configurable block to run. Called after frameworks initialize.
    1. One thing that would be useful to this debate an analysis of a language ecosystem where there are only "macropackages" and see if the same function shows up over and over again across packages.
    1. Before a bug can be fixed, it has to be understood and reproduced. For every issue, a maintainer gets, they have to decipher what was supposed to happen and then spend minutes or hours piecing together their reproduction. Usually, they can’t get it right, so they have to ask for clarification. This back-and-forth process takes lots of energy and wastes everyone’s time. Instead, it’s better to provide an example app from the beginning. At the end of the day, would you rather maintainers spend their time making example apps or fixing issues?
  40. Feb 2021
    1. This version makes the new client that was added in version 2.6+ the default client, and removes the legacy client. All previously deprecated functionality has been removed (since version 2.5, see below).
    1. You’re allowed to blame us for a terrible developer experience in Trailblazer 2.0. It’s been quite painful to find out which step caused an exception. However, don’t look back in anger! We’ve spent a lot of time on working out a beautiful way for both tracing and debugging Trailblazer activities in 2.1.
    1. The activity gem is an extraction from Trailblazer 2.0, where we only had operations. Operations expose a linear flow which goes into one direction, only. While this was a massive improvement over messily nested code, we soon decided it’s cool being able to model non-linear flows. This is why activities are the major concept since Trailblazer 2.1.
    1. While Trailblazer offers you abstraction layers for all aspects of Ruby On Rails, it does not missionize you. Wherever you want, you may fall back to the "Rails Way" with fat models, monolithic controllers, global helpers, etc. This is not a bad thing, but allows you to step-wise introduce Trailblazer's encapsulation in your app without having to rewrite it.
    1. Yes, Trailblazer is adding new abstractions and concepts and they are different to the 90s-Ruby, but now, at the latest, it becomes obvious how this improves the developing process. We’re no longer talking in two-dimensional method stack traces or byebug hoops, the language and conception is changing to the actual higher level code flow, to activities sitting in activities structured into smaller step units.
    2. We removed the trailblazer-loader gem just like Apple removed the headphone jack from the iPhone 6. This brings you faster startup and consistency with Rails autoloading.
    1. Fifth, is the idea of the ledger of things. We're already seeing applications of this new Internet of devices and things. Soon though, most transactions will happen between devices and not between people. Consider the smart home, homeowners are adding smart devices such as thermostats and solar panels. Soon potentially, trillions of devices will be connected to the Internet. Doing everything from driving us around to keeping our house lit to managing our affairs and managing our health information. These devices need to be resistant to hacking. They need to be able to communicate value such as money or assets like electricity, peer-to-peer. Consider electricity, if you imagine that your neighbor's home is generating energy from a solar panel and you've got a device that needs to buy that electricity, then those two devices need away to be able to contract, bargain, and execute a payment peer-to-peer. It's not going to happen through the Visa network. It can only happen on the blockchain.

      ledger of things