9,334 Matching Annotations
  1. Mar 2021
    1. Run the complete unit with a certain input set, and test the side-effects. This differs to the Rails Way™ testing style, where smaller units of code, such as a specific validation or a callback, are tested in complete isolation. While that might look tempting and clean, it will create a test environment that is not identical to what happens in production.
  2. Feb 2021
    1. Devoted to Trump, and committed to his fictions about the election, Republicans are doing everything they can to keep voters from holding them and their leaders accountable. They will restrict the vote. They will continue to gerrymander themselves into near-permanent majorities. A Republican in Arizona has even proposed a legislative veto over the popular vote in presidential elections

      The author starts the paragraph by explaining the Republicans as people who are "devoted to Trump". This makes it seem as Trump were god and everyone has to follow his orders. It gives both a humorous appeal to the audience and illustrates to them the sly techniques that the Republicans are using to escape from punishment. Furthermore, when the author said that the Republicans were ready to propose a veto against the popular vote, it was very ironic. As senators, they are supposed to give constitutional rights to the citizens, but rather they are taking it away for their own purpose. This further emphasizes the extent at which Republicans do not want to lose power to the Democrats.

    2. naked attempt to change the rules of American politics to benefit one party”

      The previous paragraph emphasizes the benefits of the HR.1 and how it specifically helped restore the voting system. However, in this paragraph, McConell exclaims that it is a vague attempt to benefit one party even though the Act was created to benefit the public. This illustrates to the readers the misuse of power by republican senators, which is one of the author's main points.

    3. — and not to lose the next presidential election the way they lost the last one. To that end, they have introduced bills to restrict the vote, to make the race for the Electoral College — a

      The author uses multiple dashes in this paragraph to show the different ways that the republicans will go to stop the Democrats from gaining power. The dashes emphasizes the extent at which republicans are willing to restrict votes. Without the dashes, it would simply sound as an example of what Republicans are doing, but the dashes creates a pause and further emphasis. Also, from John Lewis, the claim shifted to the extreme techniques that Republicans are using to stop Democratic power from taking over.

    1. identity theft

      Saw this while scrolling through quickly. Since I can't meta highlight another hypothesis annotation

      identity theft

      I hate this term. Banks use it to blame the victims for their failure to authenticate people properly. I wish we had another term. —via > mcr314 Aug 29, 2020 (Public) on "How to Destroy ‘Surveillance C…" (onezero.medium.com)

      This is a fantastic observation and something that isn't often noticed. Victim blaming while simultaneously passing the buck is particularly harmful. Corporations should be held to a much higher standard of care. If corporations are treated as people in the legal system, then they should be held to the same standards.

    1. Literally, everything in this example can go wrong. Here’s an incomplete list of all possible errors that might occur: Your network might be down, so request won’t happen at all The server might be down The server might be too busy and you will face a timeout The server might require an authentication API endpoint might not exist The user might not exist You might not have enough permissions to view it The server might fail with an internal error while processing your request The server might return an invalid or corrupted response The server might return invalid json, so the parsing will fail And the list goes on and on! There are so maybe potential problems with these three lines of code, that it is easier to say that it only accidentally works. And normally it fails with the exception.
    1. Though rarer in computer science, one can use category theory directly, which defines a monad as a functor with two additional natural transformations. So to begin, a structure requires a higher-order function (or "functional") named map to qualify as a functor:

      rare in computer science using category theory directly in computer science What other areas of math can be used / are rare to use directly in computer science?

    1. Any time a change is needed, rather than creating new ads and groups, business data can be updated seamlessly, trickling the change to ad copy without triggering an ad Quality Score review.

      Not creating new ad groups or campaigns is mentioned frequently, what is the average number of campaigns recommended to use per vertical?

    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. Using a terminus to indicate a certain outcome - in turn - allows for much stronger interfaces across nested activities and less guessing! For example, in the new endpoint gem, the not_found terminus is then wired to a special “404 track” that handles the case of “model not found”. The beautiful thing here is: there is no guessing by inspecting ctx[:model] or the like - the not_found end has only one meaning!
    2. 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.
    1. One of the main reasons to work with components is re-usability and portability, but also a delegation of responsibilities. Adding a component should be as easy as simply adding the component without having to know the inner workings (or markup) of this component. A consumer should only be aware of the properties, methods and events of a component. In order to style a child component one has to be aware of the markup as well, which violates this 'delegation of responsibility'-principle.
    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. 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

    1. Grouped inputs It can be convenient to apply the same options to a bunch of inputs. One common use case is making many inputs optional. Instead of setting default: nil on each one of them, you can use with_options to reduce duplication.

      This is just a general Ruby/Rails tip, nothing specific to active_interaction (except that it demonstrates that it may be useful sometimes, and gives a specific example of when you might use it).

      Still, in my opinion, this doesn't belong in the docs. Partly because I think repeating the default: nil for every item is an acceptable type of duplication, which would be better, clearer (because it's more explicit), simpler, keeps those details closer to the place where they are relevant (imagine if there were 50 fields within a with_options block).

      I also think think that it creates a very arbitrary logical "grouping" within your code, which may cause you to unintentionally override/trump / miss the chance to use a different, more logical/natural/important/useful logical grouping instead. For example, it might be more natural/important/useful to group the fields by the section/fieldset/model that they belong with, even if your only grouping is a comment:

      # User fields
      string :name
      integer :age
      date :birthday, default: nil
      
      # Food preferences
      array :pizza_toppings
      boolean :wants_cake, default: nil
      

      may be a more useful grouping/organization than:

      # Fields that are required
      string :name
      integer :age
      array :pizza_toppings
      
      # Fields that are optional
      with_options default: nil do
        date :birthday
        boolean :wants_cake
      end
      

      Or it might be better to list them strictly in the same order as they appear in your model that you are trying to match. Why? Because then you (or your code reviewer) can more easily compare the lists between the two places to make sure you haven't missed any fields from the model, and quickly be able to identify which ones are missing (hopefully intentionally missing).

      In other words, their "optionalness" seems to me like a pretty incidental property, not a key property worthy of allowing to dictate the organization/order/grouping of your code.

    1. Amid awful suffering and deteriorating conditions, Texas Republicans decided to fight a culture war.

      The author has a criticizing tone, which can be implied by him emphasizing Texas's conditions using a negative diction. It is kind of humorous as he stated "cultural wars" instead of disputes. Usually wars leave a drastic impact on the land, but this time, the "war" is occurring on an already destroyed land, which reflects the author's point of view that leaving a conflict dissolved is worse than creating a new conflict.

    1. Some people "get" the idea of systemic privilege and ask "But what can I do?" My answer is, you can use unearned advantage to weaken systems of unearned advantage. I see white privilege as a bank account that I did not ask for, but that I can choose to spend. People with privilege have far more power than we have been taught to realize, within the myth of meritocracy. Participants can brainstorm about how to use unearned assets to share power; these may include time, money, energy, literacy, mobility, leisure, connections, spaces, housing, travel opportunities. Using these assets may lead to key changes in other behaviors as well, such as paying attention, making associations, intervening, speaking up, asserting and deferring, being alert, taking initiative, doing ally and advocacy work, lobbying, campaigning, protesting, organizing, and recognizing and acting against both the external and internalized forms of oppression and privilege.
    2. Think about why U.S. people, especially White people, have trouble seeing systemically. Explain the myth of meritocracy: that the unit of society is the individual and that whatever one ends up with must be whatever that individual wanted, worked for, earned, and deserved. Why do you think this myth survives so successfully, suppressing knowledge of systemic oppression and especially of its "up-side,"systemic privilege?
    3. I repeatedly forgot each of the realizations on this list until I wrote it down. For me, white privilege has turned out to be an elusive and fugitive subject. The pressure to avoid it is great, for in facing it I must give up the myth of meritocracy.

      We need more research and details on the idea of the American myth of meritocracy.

    1. actor-network theory

      Actor network theory (ANT), also known as enrolment theory or the sociology of translation, emerged during the mid-1980s, primarily with the work of Bruno Latour, Michel Callon, and John Law. Actor–network theory tries to explain how material–semiotic networks come together to act as a whole; the clusters of actors involved in creating meaning are both material and semiotic.

    2. In Translation Studies (TS), the notion of agent has received various definitions. For Juan Sager (quoted in Milton & Bandia 2009: 1), an agent is anyone in an intermediary position (i.e. a commissioner, a reviser, an editor, etc.) between a translator and an end user of a translation whereas for Milton & Bandia (2009) an agent of translation is any entity (a person, an institution, or even a journal) involved in a process of cultural innovation and exchange. A third avenue was suggested by Simeoni (1995) who defined the agent as “the ‘subject,’ but socialized.
    1. To give a little more context, structures like this often come up in my work when dealing with NoSQL datastores, especially ones that rely heavily on JSON, like Firebase, where a records unique ID isn't part of the record itself, just a key that points to it. I think most Ruby/Rails projects tend towards use cases where these sort of datastores aren't appropriate/necessary, so it makes sense that this wouldn't come up as quickly as other structures.
    1. The press release also quoted a UA assistant provost for institutional research who explained that while the swipes of student ID cards were not used in the current student retention analytics, about 800 other data points were

      The research in questions was not currently being used by the institution to improve rention, but other student data was already being used for that purpose

    2. The researcher noted that the data she had used had been anonymized before she was given access to it—however, she added that if/when her research might inform the ongoing efforts to improve student retention, the student’s personal details would be “shared” with the students' academic advisers.

      The data was anonymized before she was given access, but she admitted that there might be interest in sharing students' personal details with academic advisors

    3. At the University of Arizona, for example, a researcher analyzed the swipes of student ID cards at locations across campus, “to see what they reveal about students' routines and relationships, and what that means for their likelihood of returning to campus after their freshman year.”

      Fact. Student ID Cards Collect Data Fact. A researcher was given access to this data for her own purposes.

    1. The Chicago Manual of Style and the Associated Press (AP) both revised their formerly capitalized stylization of the word to lowercase "internet" in 2016.[3] The New York Times, which followed suit in adopting the lowercase style, said that such a change is common practice when "newly coined or unfamiliar terms" become part of the lexicon.
    1. The basic classification of a form object is a class that contains writable attributes, validations and logic to persist the attributes to ActiveRecord objects. These forms can also include other side-effects like background job triggers, emails, and push-notifications etc. The simplest way to understand the concept is to think of them as a representation of a controller action where all of the business logic that happens in that controller action is abstracted into a form object.

      This definition may be a bit too broad. Others (like Reform) define it to have smaller scope — only the part where it persists/validates attributes. The other side effects might be better to put in a different location, like the controller action, or a service/processor object that has a form object.

    1. famous movie review which describes the Wizard of Oz as: “Transported to a surreal landscape, a young girl kills the first person she meets and then teams up with three strangers to kill again.”

      This is a great example of context collapse. It's factually true, but almost no one who's seen it would describe it this way.

      It's reminiscent of how advertising and politics can twist meaning. Another great example is the horror cut of Disney's Frozen trailer https://www.youtube.com/watch?v=CIMk1_wwxz8

    1. Frame of reference has been manipulatedCrime statistics are often manipulated for political purposes by comparing to a year when crime was very high. This can expressed either as a change (down 60% since 2004) or via an index (40, where 2004 = 100). In either of these cases, 2004 may or may not be an appropriate year for comparison. It could have been an unusually high crime year.This also happens when comparing places. If I want to make one country look bad, I simply express the data about it relative to whichever country which is doing the best.This problem tends to crop up in subjects where people have a strong confirmation bias. (“Just as I thought, crime is up!”) Whenever possible try comparing rates from several different starting points to see how the numbers shift. And whatever you do, don’t use this technique yourself to make a point you think is important. That’s inexcusable.

      This is an important point and when politicians are speaking it, they should cite their sources meticulously.

    1. Because the mainstream social networks have been designed by a tiny number of people, we have been prevented from experimenting and creating new knowledge about what sustainable community management online looks like. Start erasing the line between operators, customers, and community members and squint; you begin make out the shape of a group of people who can build for themselves and determine their own path of development.

      Interesting to look at this idea from the perspective of the IndieWeb community that owns and operates its own community spaces that are aggregated around a wiki and chat, but which overflow into the web itself.

      How does this relate to my idea of A Twitter of Our Own?

    2. Education and practitioner networks We’re seeing a lot of new venture funded education communities, but here once more is a reason to be more excited about bottom-up community-driven businesses. What happens when groups of independent teachers or consultants who are already chatting have shared interfaces to formalize, quote, and invoice? In the past, guilds have provided excellent education opportunities, and they can again.

      Yes, how can we build tooling around an education related community?

    1. The Timeless Way of Building is the first in a series of books which describe an entirely new attitude to architec- ture and planning. The books are intended to provide a complete working alternative to our present ideas about ar- chitecture, building, and planning—~an alternative which will, we hope, gradually replace current ideas and practices,

      [[the timeless way of building]]

    1. As of today, you can Wishlist OpenTTD on SteamE. Historically, OpenTTD always had a single home from where we distributed the game. We used to be hosted on SourceForge (you know you are old, if you remember that being a thing :D), and slowly moved towards our own self-created distribution methods. These days, we mostly distribute our game via our website. But times are changing, and so is our hair. Over the last few months, we have silently been working to become a bit more visible in the world. Don’t worry, not for reasons you might think: OpenTTD has as many active users as it had in 2007. But more because we no longer think it is the right approach to only distribute via our own website. This became painfully apparent when we noticed other people post OpenTTD on some stores. They are not always updated with new releases, sometimes even slacking behind a few years. And maybe more important to us: we can not guarantee that the uploaded version is unmodified and is the version as we intended. So, instead of fighting it, why not turn around and join them! Why not release our own, verified, builds on those stores! And this is exactly what we have been working on lately. And when I say “we”, a bit ironic to me, I mean the two developers that are around longest (myself and orudge) ;) A while back orudge added OpenTTD to the Microsoft Store. And today, I am happy to announce we will be on SteamE too! Well, we are on Steam, but we haven’t released anything there yet (sorry that I got your hopes up, just to squash them right after :( ). This is partially because of how Steam works, but also because we know we can bring a better experience for Steam with our upcoming release. That brings me to the most exciting news: if everything goes as planned, we will release OpenTTD 1.11 on Steam on the first of April, 2021! And that is not even an April fools’ joke! You can already Wishlist OpenTTD today .. and till we release on Steam, you can find our game via our website ;)
    1. As of today, you can Wishlist OpenTTD on SteamE. Historically, OpenTTD always had a single home from where we distributed the game. We used to be hosted on SourceForge (you know you are old, if you remember that being a thing :D), and slowly moved towards our own self-created distribution methods. These days, we mostly distribute our game via our website. But times are changing, and so is our hair. Over the last few months, we have silently been working to become a bit more visible in the world. Don’t worry, not for reasons you might think: OpenTTD has as many active users as it had in 2007. But more because we no longer think it is the right approach to only distribute via our own website.
  3. parsejournal.com parsejournal.com
    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.
    1. Innovative learning, on the other hand, refers to becoming familiar with unfamiliar situations that have no clear precedent for action, or with managing familiar situations in better ways, such as seeking alternative solutions to existing problems.

      This innovative learning is clearly important for designers. I think that modifying an existing situation to try and make it better would be far easier than a completely unfamiliar one. This lends itself to more creativity due to no clear previous path.

    1. (1) gaining the attention of the learners, (2) demonstrating the relevance of the instruction to the learners, (3) instilling learners with confidence to succeed with the instruction, and (4) deriving satisfaction when they do.

      This model is a great way to ensure engagement with learners. Specifically part 2 and 3 stuck out to me as key. The second point was that we must demonstrate relevance of instruction. This is fixes that question that always seems to come up, "Why are we doing this if I'll never use it in real life?". Any time I preface a lesson with why we are learning something and how it is necessary in our lives my students always seem to receive it better. Part 3 noted that we must instill confidence to succeed. Giving students the confidence to try hard things is vital to success.

    1. undermine the integrity of the Version of Record, which is the foundation of the scientific record, and its associated codified mechanisms for corrections, retractions and data disclosure. 

      This misrepresents the situation. Authors accepted manuscripts (AAM) have been shared on institutional and subject repositories for around two decades, with greater prevalence in the last decade. Despite this the version of record (VoR) is still valued and preserves the integrity of the scholarly record. The integrity of the VoR continues to be maintained by the publisher and where well-run repository management are made aware, corrections can be reflected in a repository. The solution to this problem is the publisher taking their responsibility to preserving the integrity of the scholarly record seriously and notifying repositories, not asserting that authors should not exercise their right to apply a prior license to their AAM.

    Tags

    Annotators

    1. Keep your domain in one place. If you ever get mad at your web host and decide to move your site, you’ll also probably want to transfer your domain if it’s registered with the old host. Domain transfers can be annoying, time-consuming, and confusing. But if you’ve registered the domain elsewhere, you don’t have to do anything except update your DNS settings to point to the new host.
    1. cultural capital

      Introduced by Pierre Bourdieu in the 1970s, the concept has been utilized across a wide spectrum of contemporary sociological research. Cultural capital refers to ‘knowledge’ or ‘skills’ in the broadest sense. Thus, on the production side, cultural capital consists of knowledge about comportment (e.g., what are considered to be the right kinds of professional dress and attitude) and knowledge associated with educational achievement (e.g., rhetorical ability). On the consumption side, cultural capital consists of capacities for discernment or ‘taste’, e.g., the ability to appreciate fine art or fine wine—here, in other words, cultural capital refers to ‘social status acquired through the ability to make cultural distinctions,’ to the ability to recognize and discriminate between the often-subtle categories and signifiers of a highly articulated cultural code. I'm quoting here from (and also heavily paraphrasing) Scott Lash, ‘Pierre Bourdieu: Cultural Economy and Social Change’, in this reader.

    1. he most famous illustration of how the name of a substance is supposed to function in this way is provided not by Kripke, but by Putnam, another leading proponent of the ‘theory of direct reference’. Putnam asks us to imagine a Twin Earth – just like our Earth – which contains doppelgängers of us humans. The only difference between the two Earths is that on Twin Earth the clear, thirst-quenching, etc liquid that fills the oceans, lakes and rivers is not the chemical substance H2O, but another substance – XYZ. Suppose it’s 1750, before the chemical composition of water was discovered. On both Earths, the inhabitants call their liquid ‘water’. And, because it’s 1750, they associate the same mental checklist with that term: both think of ‘water’ as the substance that’s clear, thirst-quenching, boils at 100°C and so on. Now suppose a glass of XYZ is brought from Twin Earth to Earth and presented to Locke. Locke would believe it’s water, because it would tick his mental checklist. But would it be water? Not according to Putnam. Intuitively, that’s merely water-like stuff in the glass, not water. Putnam concludes that, while the term ‘water’ is associated with the same descriptions on Earth and Twin Earth, it has different meanings and picks out different chemical kinds. It is, and was, a necessary condition of something being water that it be H2O, despite this condition not being known back in 1750.