98 Matching Annotations
  1. Last 7 days
    1. Ubuntu Multipass name generator

      • One word: names.txt
      • Two words: adjectives.txt - names.txt
      • Three words: adverbs.txt + adjectives.txt + names.txt
    1. The absence of a method name here is per design: this object does only one thing, and hence what it does is reflected in the class name.
  2. Feb 2021
    1. As we know, naming is hard.
    2. Another thing I don’t like is the name of the config file manifest.js. Internally Sprockets has the concept of a manifest already Sprockets::Manifest, but the two aren’t directly coupled. We also already have a “manifest” JSON file that gets generated in public/assets/ and has manifest in the name .Sprockets-manifest-140998229eec5a9a5802b31d0ef6ed25.json. I know one is a JS file and one is a JSON file, but it’s a bit confusing to talk about.

      When I first heard of app/assets/config/manifest.js, I was a bit confused too, and assumed/wondered if it was related to the manifest it generates under public.

    3. The link name is not very helpful, it doesn’t explain what it does very well.
    1. There are two definitions of ‘Enterprise’ 1 - Enterprise as a business. In fact, in French, ‘enterprise’ literally means ‘business’ 2- Enterprise as a large business. This is the most common use of the term in business, differentiating between small, medium, and large businesses. In this context, there is no official rule, however it is generally accepted for enterprise to mean companies with over 1,000 employees and/or $1B in revenue
    1. outcome.valid?

      This would read better if it were aliased as success?:

      if outcome.success?
      
    2. value returned from #execute

      Why not follow Ruby Proc convention of calling it call?

      execute seems like a synonym for call, so given these 2 equivalent options, it seems better to prefer the one more idiomatic in Ruby.

    3. By convention, we call this an outcome
    4. Call .run on your interaction to execute it.

      Why not follow Ruby Proc convention of calling it call?

      run seems like a synonym for call, so given these 2 equivalent options, it seems better to prefer the one more idiomatic in Ruby.

    1. if you name you instance variable form, then you can always just pass in params[:form]
    2. Why process, not save? This is entirely up to you. However, it's good to stay consistent across your team so there's no confusion. I began using save but found there are some cases for forms where you aren't saving anything, such as when you are just triggering a job or push-notification. I found using process fits more cases so that's what I use. This is also typically the only method that is public on my forms.

      process is a good name, but I think this is evidence that this object is not the form object itself, but a form processor (as I like to call it) or a "workflow" object (like https://github.com/gogogarrett/reform_example/blob/master/app/forms/workflows/user_workflow.rb), which wraps a form object.

    1. @conference_form.submit(conference_params)

      Surprised they called it submit, since that could imply that you're triggering an action called submit.

      They use other verbs to describe this:

      • sync
      • populate
      • write

      Analogous to Reform's sync / sync_models method.

      Actually, the name makes a lot of sense when you see it in context:

          @conference_form = ConferenceForm.new(conference)
          @conference_form.submit(conference_params)
      
          if @conference_form.save
      
    1. Unlike naming children, coding involves naming things on a daily basis. When you write code, naming things isn’t just hard, it’s a relentless demand for creativity. Fortunately, programmers are creative people.
    2. If we renamed things more often, then it probably wouldn’t be so hard to name them in the first place.
    3. We also find it hard to agree on what good names and bad names look like, which makes it hard to know when renaming improves a name.
    4. This is funny because it’s unexpected. Cache invalidation sounds like a hard thing, while naming sounds more straightforward. The joke works because it violates our expectation that hard things should be technical. It’s also funny because it’s true.
    5. First of all, we want names to exhibit truth and beauty: to be the right names, and to make our code clean and beautiful. At least, this is what we want to think about our code, but naming’s importance is far more practical.
    6. Naming is communication
    7. Naming matters for both idealogical and practical reasons.
    8. Naming is just one part of the micro-design activity that we call programming. If design weren’t hard, we wouldn’t find good design so satisfying.
    9. Anyone who has ever tried to name a child knows that naming is hard. Naming things in code is harder. It’s bad enough that you have to commit to a name that someone isn’t going to like. You also have to be able to live with it.
    1. There’s only one hard thing in Computer Science: human communication. The most complex part of cache invalidation is figuring out what the heck people mean with the word cache. Once you get that sorted out, the rest is not that complicated; the tools are out there, and they’re pretty good.
    1. When you use this syntax the lines on either end of the areas are actually getting named automatically.
    2. Notice that you’re not naming lines with this syntax, just areas.
  3. Dec 2020
    1. Maybe something more neutral just meaning a virtual element / no-element container would better express the intention? And regarding the syntax, maybe it would also feel less repetitive / boilerplaty than <svelte:slot slot="name" />... Maybe something like <svelte:fragment slot="name"> or <svelte:virtual slot="name">?
    2. Also agree that <svelte:slot> is perhaps a little confusing since it replaces the slot attribute rather than the slot element, so <svelte:fragment> would make more sense
  4. Nov 2020
    1. The Object.getPrototypeOf() method returns the prototype (i.e. the value of the internal [[Prototype]] property) of the specified object.

      internal: [[Prototype]]

      Other times we see something used to indicate it is internal. In fact, this even supersedes proto__. So why did they use a different naming convention? Did they decide [[ ]] is a better naming convention?

    1. Microsoft announced IronRuby, which uses the same name as Wilco Bauwer's IronRuby project with permission.
  5. Oct 2020
    1. In a browser, deep-diff defines a global variable DeepDiff. If there is a conflict in the global namespace you can restore the conflicting definition and assign deep-diff to another variable like this: var deep = DeepDiff.noConflict();.
    1. I vote for calling it let Could be used like this {#let foo = initialValue}. It's closer to javascript
    2. I expressed doubts about the name with because of its existing meaning in javascript, which is a fair point from my past self.
    1. The other module on npm that I found to do this

      Too bad https://www.npmjs.org/package/is-plain-object was taken and this library had to resort to is-pojo yuck acronym. is-plain-object is a much better name.

    1. their name gives no mnemonic boost whatsoever. Whatever faint associations it might once have held fade away, especially when the discover was neither famous nor narrow, and the reader is several generations removed.

      This might be debatable as many of the names in the example are relatively famous names. Any associations they provide might also extend to the dates of the mathematician which also then places the ideas historically as well.

      More often I see the problem with some of the bigger greats like Euler and Cauchy who discovered so many things and everything is named after them.

      The other problem is mis-attribution of the discovery, which happens all-too-frequently, and the thing is named after the wrong person.

    2. The worst answer I can imagine is the one Pope Gregory VII gave for refusing to let the Holy Scripture be translated out of Latin: “... [I]f it were plainly apparent to all men, perchance it would be little esteemed and be subject to disrespect; or it might be falsely understood by those of mediocre learning, and lead to error.”

      I'd push back on this a bit by saying that there are huge swaths of people looking at English translations, of Latin translations, of Greek, Hebrew, and Aramaic translations. Not only is there some detail lost in the multiple levels of translation, but many modern Christians are actively mis-applying the stories in the Bible to apply to their modern lives in radically different ways than was intended.

  6. Sep 2020
    1. Why the obfuscation of remaining to r and callbacks to c? This is fine for function-local variables but in this instance makes the code significantly harder to reason about? There is no notion of what c and r mean.
    1. But I just want to say npx is lame. It should have been npm run or npm exec or something.

      They apparently don't appreciate the brevity of npx for something that you probably will run often. Would you also prefer to type out node package-manager instead of npm every time you currently type out npm??

    1. The problem I have with this approach to state and prop variables is that the difference between them is very blurry. In React you can clearly see that a prop is an input to component (because of clear function notation), and that state is something internal. In Svelte they are both just variables, with the exception that props use export keyword.

      This is something I've seen before: people noticing that Svelte is missing some kind of naming convention.

      React has use___ convention, for example. Without that, it makes it hard to see the difference between and know just from the name that a function is an (mentioned in the other article I read) action and not a event handler or even component, for example.

    1. if this does land, my vote is for smoosh
    2. For the actual name of the thing, I like behaviors more than enhancers. That might be too limiting but I can't think of using this for styles or something that I wouldn't call a behavior. traits is also nice. Hey, decorators works too.
    3. While there is some precedence in other frameworks for using as, the word doesn't fit well. Since you are adding functionality to elements I like the word add better (and it only has 1 more character).
    1. I like use. But we would still need a noun to reference them by in the docs or libraries.
    2. What do you think of one of these: "actions", "enhancements", "additions" or "extensions"? My vote goes to "actions". It is short but it has meaning, as do the others.
    3. one problem with 'behavior' is that's the terminology we use to describe all of a component's encapsulated logic — methods, transitions, etc.
    1. To differentiate <style scoped> from the existing top-level <style> elements, I propose that we refer to these as 'local scoped styles'.
    1. The above doesn't work for another unfortunate reason, it's not possible to write export let class = ''; instead CustomComponent because class is a reserved keyword and isn't allowed to be used as a variable name. The workaround would have to be to use some other prop name like maybe cssClass but then there's no "standard" by which all Svelte components can follow and every library will choose a different name which is cumbersome for users, because it creates scenarios like:
    1. It was called a "virtual DOM" library because it didn't start out as isomorphic, but actually tied to the DOM from the start. It was an afterthought to make it isomorphic.
  7. Jun 2020
    1. Is it “syncthing”, “Syncthing” or “SyncThing”?¶ It’s Syncthing, although the command and source repository is spelled syncthing so it may be referred to in that way as well. It’s definitely not SyncThing, even though the abbreviation st is used in some circumstances and file names.
  8. May 2020
    1. To follow conventions of naming across GitLab, and to further move away from the build term and toward job, some CI/CD environment variables were renamed for GitLab 9.0 release.
    1. The folks at Netlify created Netlify CMS to fill a gap in the static site generation pipeline. There were some great proprietary headless CMS options, but no real contenders that were open source and extensible—that could turn into a community-built ecosystem like WordPress or Drupal. For that reason, Netlify CMS is made to be community-driven, and has never been locked to the Netlify platform (despite the name).

      Kind of an unfortunate name...

    1. "linked data" can and should be a very general term referring to any structured data that is interlinked/interconnected.

      It looks like most of this article describes it in that general sense, but sometimes it talks about URIs and such as if they are a necessary attribute of linked data, when that would only apply to Web-connected linked data. What about, for example, linked data that links to each other through some other convention such as just a "type" and "ID"? Maybe that shouldn't be considered linked data if it is too locally scoped? But that topic and distinction should be explored/discussed further...

      I love its application to web technologies, but I wish there were a distinct term for that application ("linked web data"?) so it could be clearer from reading the word whether you meant general case or not. May not be a problem in practice. We shall see.

      Granted/hopefully most use of linked data is in the context of the Web, so that the links are universal / globally scoped, etc.

    1. This change was made because GitLab License Management is now renamed to GitLab License Compliance. After review with users and analysts, we determined that this new name better indicates what the feature is for, aligns with existing market terminology, and reduces confusion with GitLab subscription licensing features.
    1. generic-sounding term may be interpreted as something more specific than intended: I want to be able to use "data interchange" in the most general sense. But if people interpret it to mean this specific standard/protocol/whatever, I may be misunderstood.

      The definition given here

      is the concept of businesses electronically communicating information that was traditionally communicated on paper, such as purchase orders and invoices.

      limits it to things that were previously communicated on paper. But what about things for which paper was never used, like the interchange of consent and consent receipts for GDPR/privacy law compliance, etc.?

      The term should be allowed to be used just as well for newer technologies/processes that had no previous roots in paper technologies.

    1. If the add-on is a fork of another add-on, the name must clearly distinguish it from the original and provide a significant difference in functionality and/or code.
  9. Apr 2020
    1. It’s true that there are two hard problems in computer science and one of them is naming things. Why? Because good names are important. A good name teaches about purpose and responsibility, so you have to spend some time thinking about it.
  10. Mar 2020
    1. On rare occasion two or more methods can be very tightly related. In these cases the methods can all go in a single file under the name of the method considered most significant. Usually files for the other methods should still be created that simply require the main file.
    2. Don't be discouraged when you get feedback about a method that isn't all sunshine and roses. Facets has been around long enough now that it needs to maintain a certain degree of quality control, and that means serious discernment about what goes into the library. That includes having in depth discussions the merits of methods, even about the best name for a method --even if the functionality has been accepted the name may not.

      about: merits

  11. Jan 2020
    1. chart the index finger as the 2nd finger, middle finger as the 3rd, ring finger as the 4th, and pinky as the 5th finger
  12. Dec 2019
    1. PHP variables begin with the dollar symbol $ and PHP variable names adhere to the following rules:• Names are case sensitive• Names may contain letters, numbers, and the underscore character• Names may not begin with a number
  13. Nov 2019
    1. The idea is that the additional prefix _ of a Null Component symbolizes that it adds even less to the DOM than an Injector. I picture the name falling through to become just the _, like the unused argument convention in javascript functions: const handleEvent = (_, id) => { console.log(id) } .
  14. Sep 2019
  15. May 2019
    1. Эргонимика Изучает наименования деловых объединений людей.
    1. Why Siding 14?  It's  a nod to our rich Alberta and western Canadian railway heritage.  Before the town of Ponoka was named, it was Siding 14 of the Calgary-Edmonton Railway Company.  The siding was a supply point  for steam locomotives making the run between the two major cities.  The railway  not only provided transportation between small towns and major centers, it was  historically the heart of communication and social interaction in communities across the province.
  16. Jan 2017
    1. selector: 'admin-users'

      Why isn't this selector defined as toh-admin-users, just like above toh-hero suggestion?

  17. Feb 2015
    1. (Again, this is in no way a proposal for how the URLs should be structured.)

      To avoid overvaluing group names by making them scarce, we should include a small uniqueness element like a (very short) UUID.

      Obviously more than one person will want to make a group named "research."