170 Matching Annotations
  1. Jul 2025
  2. May 2025
    1. Flickering often happens when widgets rebuild too frequently or async content like images/data briefly shows empty placeholders.

      Learn how to Avoid UI flickers in Flutter apps with our expert guide. Discover effective tips and best practices to ensure smooth, responsive interfaces and enhance user experience. Avoid common performance pitfalls and optimize your Flutter app for seamless performance.

  3. Apr 2025
  4. Mar 2025
    1. Serbia is such an important player in this part of the world. And this isn't the first round of student protests. They played a big role in the 1990s as well.

      for - question - Serbia - student protests - how to avoid making the same mistake? - People make the same mistake, - big protests give opportunity for the next authoritarian leader to game representative democracy - Something must be done fundamentally differently to prevent this from happening in the future

  5. Nov 2024
  6. Sep 2024
  7. Jul 2024
  8. May 2024
    1. how exactly has Europe managed to avoid an American style opioid crisis surprisingly it 00:06:18 turns out we can thank authentic Afghan heroin for the relative lack of deaths

      for - question - how EU avoided synthetic opiod crisis until now?

      question - how did EU avoid synthetic opiod crisis until now? - answer - authentic Afghan Heroin - but with the crackdown on poppy in Afghanistan, EU drug users are primed to start using synthetic opiods

  9. Apr 2024
  10. Feb 2024
  11. Jan 2024
  12. Nov 2023
  13. Sep 2023
  14. Jun 2023
  15. May 2023
    1. I know this is an old question but I just want to comment here: To any extent email addresses ARE case sensitive, most users would be "very unwise" to actively use an email address that requires capitals. They would soon stop using the address because they'd be missing a lot of their mail. (Unless they have a specific reason to make things difficult, and they expect mail only from specific senders they know.) That's because imperfect humans as well as imperfect software exist, (Surprise!) which will assume all email is lowercase, and for this reason these humans and software will send messages using a "lower cased version" of the address regardless of how it was provided to them. If the recipient is unable to receive such messages, it won't be long before they notice they're missing a lot, and switch to a lowercase-only email address, or get their server set up to be case-insensitive.
  16. Mar 2023
    1. we propose five cornerstones that help deal with the highlighted issues and categorize unintended consequences.

      5 principles for mitigating progress traps - 1) - a priori assessments of potential unintended consequences of policies - should be conducted by - multidisciplinary teams - with as broad a range of expertise as possible. - This would require decision-making - to flex around specific policy challenges - to ensure that decision-makers reflect the problem space in question. - 2) - policy plans made in light of the assessment should be iterative, - with scheduled re-assessments in the future. - As has been discussed above, - knowledge and circumstances change. - New consequences might have since - become manifest or new knowledge developed. - By planning and implementing reviews, - organizational reflexivity and - humility - needs to be built into decision-making systems (e.g., Treasury, 2020).

      • 3)
        • given the scale of systems
          • such as the water-energy-food nexus
        • and the potential for infinite variety and nuance of unintended consequences,
          • pragmatism necessitates specification of boundaries
            • within which assessments are made.
        • It should be noted that this can in itself give rise to unintended consequences
          • through potential omission of relevant areas.
        • Hence, boundary decisions regarding
          • where the boundaries lie
            • should be regularly revisited (as per 2) above.
      • 4)
        • unintended consequences identified
          • should be placed in the framework
            • with as much consensus among decision-makers as possible.
        • The positioning does not need to be limited to a single point,
          • but could be of the form of a distribution of opinions of range
            • of knowability and
            • avoidability;
          • the distribution will be indicative of
            • the perspectives and
            • opinions of the stakeholders.
        • If a lack of consensus exists on the exact position,
          • this can highlight a need to
            • seek more diverse expertise, or
            • for further research in order to improve consensus, or
            • for fragmenting of the issue into
              • smaller,
              • more readily assessable pieces.
      • 5)
        • there is a need for more active learning
          • by decision-makers
            • about how to avoid repeating past unintended consequences.
        • To support this,
          • assessment process and
          • outcomes should be
            • documented and
            • used
          • to appraise the effectiveness of policy mechanisms,
            • with specific attention on outcomes
              • beyond those defined by policy objectives and the
                • assumptions and
                • decisions
              • which led to these outcomes.
        • Such appraisals could reflect on - the scope of the assessment, and - the effectiveness of specific groups of stakeholders
          • in being able to identify potential negative outcomes,
            • highlighting gaps in knowledge and limitations in the overall approach.
        • Additional records of the level of agreement of participants
          • would allow for re-evaluation with new learning.
  17. Dec 2022
  18. Sep 2022
  19. Jul 2022
  20. May 2022
  21. Apr 2022
  22. Jan 2022
  23. Nov 2021
  24. Sep 2021
    1. Use this to load modules whose location is specified in the paths section of tsconfig.json when using webpack. This package provides the functionality of the tsconfig-paths package but as a webpack plug-in. Using this plugin means that you should no longer need to add alias entries in your webpack.config.js which correspond to the paths entries in your tsconfig.json. This plugin creates those alias entries for you, so you don't have to!
  25. Aug 2021
  26. Jun 2021
    1. Rather than write new tooling we decided to take advantage of tooling we had in place for our unit tests. Our unit tests already used FactoryBot, a test data generation library, for building up test datasets for a variety of test scenarios. Plus, we had already built up a nice suite of helpers that we coud re-use. By using tools and libraries already a part of the backend technology’s ecosystem we were able to spend less time building additional tooling. We had less code to maintain because of this and more time to work on solving our customer’s pain points.
    1. One of the consequences (although arguably not the primary motivation) of DRY is that you tend to end up with chunks of complex code expressed once, with simpler code referencing it throughout the codebase. I can't speak for anyone else, but I consider it a win if I can reduce repetition and tuck it away in some framework or initialisation code. Having a single accessor definition for a commonly used accessor makes me happy - and the new Object class code can be tested to hell and back. The upshot is more beautiful, readable code.

      new tag?:

      • extract reusable functions to reduce duplication / allow elegant patterns elsewhere
  27. May 2021
    1. But more so, external style cannot be applied to a subsection of a web page unless they force it into an iframe, which has all sorts of issues of it's own which is why external CSS is usually ignored. Inline CSS is often stripped by the tag strippers who don't want you turning things on or off... and media queries shouldn't even play into it since the layout should be controlled by the page it's being shown inside (for webmail) or the client itself, NOT your mail.
  28. Mar 2021
    1. Here are my thoughts: making vim startup time shorter is GOOD added complexity - BAD my main concern is with the complexity that gets added to get startup time improvements. User has to tag scripts, and then manually BundleBind to get scripts loaded. This seems like too much hassle(manual involvement) to me. Fixing 1 time thing (startup) we're adding many more (like BundleBinding required scripts once they're used) For instance in my case i don't start Vim often because i'm using --remote-tab-silent option. So i'll get no benefit along with complexity (
    1. The elimination of what is arguably the biggest monoculture in the history of software development would mean that we, the community, could finally take charge of both languages and run-times, and start to iterate and grow these independently of browser/server platforms, vendors, and organizations, all pulling in different directions, struggling for control of standards, and (perhaps most importantly) freeing the entire community of developers from the group pressure of One Language To Rule Them All.
    2. If JavaScript were detached from the client and server platforms, the pressure of being a monoculture would be lifted — the next iteration of the JavaScript language or run-time would no longer have to please every developer in the world, but instead could focus on pleasing a much smaller audience of developers who love JavaScript and thrive with it, while enabling others to move to alternative languages or run-times.
    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?
  29. Feb 2021
  30. www.metacritic.com www.metacritic.com
    1. Why is all this interaction code better? Two reasons: One, you can reuse the FindAccount interaction in other places, like your API controller or a Resque task. And two, if you want to change how accounts are found, you only have to change one place.

      Pretty weak arguments though...

      1. We could just as easily used a plain object or module to extract this for easy reuse and having it in only one place (avoiding duplication).
  31. Dec 2020
  32. Nov 2020
    1. Microbundle also outputs a modern bundle specially designed to work in all modern browsers. This bundle preserves most modern JS features when compiling your code, but ensures the result runs in 90% of web browsers without needing to be transpiled. Specifically, it uses preset-modules to target the set of browsers that support <script type="module"> - that allows syntax like async/await, tagged templates, arrow functions, destructured and rest parameters, etc. The result is generally smaller and faster to execute than the esm bundle
  33. Oct 2020
    1. It is not appropriate to use these document types for live content. These are made available only for download, to support local use in development, evaluation, and validation tools. Using these versions directly from the W3C server could cause automatic blockage, preventing them from loading. If it is necessary to use schemata in content, follow guidelines to avoid excessive DTD traffic. For instance, use caching proxies to avoid fetching the schema each time it is used, or ensure software uses a local cache, such as with XML catalogs.
    1. One of the primary tasks of engineers is to minimize complexity. JSX changes such a fundamental part (syntax and semantics of the language) that the complexity bubbles up to everything it touches. Pretty much every pipeline tool I've had to work with has become far more complex than necessary because of JSX. It affects AST parsers, it affects linters, it affects code coverage, it affects build systems. That tons and tons of additional code that I now need to wade through and mentally parse and ignore whenever I need to debug or want to contribute to a library that adds JSX support.
    1. Note how we have to duplicate the code between these two lifecycle methods in class. This is because in many cases we want to perform the same side effect regardless of whether the component just mounted, or if it has been updated. Conceptually, we want it to happen after every render — but React class components don’t have a method like this. We could extract a separate method but we would still have to call it in two places.
  34. Sep 2020
  35. Aug 2020
  36. Jul 2020
    1. RDFa is intended to solve the problem of marking up machine-readable data in HTML documents. RDFa provides a set of HTML attributes to augment visual data with machine-readable hints. Using RDFa, authors may turn their existing human-visible text and links into machine-readable data without repeating content.
  37. Jun 2020
  38. May 2020
    1. A "tag" is a snippet of code that allows digital marketing teams to collect data, set cookies or integrate third-party content like social media widgets into a site.

      This is a bad re-purposing of the word "tag", which already has specific meanings in computing.

      Why do we need a new word for this? Why not just call it a "script" or "code snippet"?

  39. Apr 2020
    1. Running the same code in the browser and on the server in order to avoid code duplication is a very different problem. It is simply a matter of good development practices to avoid code duplication. This however is not limited to isomorphic applications. A utility library such as Lodash is “universal”, but has nothing to do with isomorphism. Sharing code between environments does not give you an isomorphic application. What we’re referring to with Universal JavaScript is simply the fact that it is JavaScript code which is environment agnostic. It can run anywhere. In fact most JavaScript code will run fine on any JavaScript platform.
    1. In 1999, "collateral damage" (German: Kollateralschaden) was named the German Un-Word of the Year by a jury of linguistic scholars. With this choice, it was criticized that the term had been used by NATO forces to describe civilian casualties during the Kosovo War, which the jury considered to be an inhuman euphemism.
  40. Mar 2020
  41. Feb 2020
    1. Use the simplest and most boring solution for a problem, and remember that “boring” should not be conflated with “bad” or “technical debt.” The speed of innovation for our organization and product is constrained by the total complexity we have added so far, so every little reduction in complexity helps. Don’t pick an interesting technology just to make your work more fun; using established, popular tech will ensure a more stable and more familiar experience for you and other contributors.
  42. Dec 2019
    1. It's confusing whether one should put things in gemspec development_dependencies or in Gemfile or in both.

      Duplication is bad since the lists could get out of sync. And the gemspec's development_dependencies should be a complete list. Therefore, my opinion is that that should be the canonical list and therefore the only list.

      Actually, what good is gemspec's development_dependencies? A contributor should clone the repo, run bundle, and get the dev dependencies that way. Therefore development_dependencies is unneeded and you should only list them in Gemfile.

      It is simpler to just use Gemfile, since it is a more familiar format. You can copy and paste content into it. For example, if you extract a gem out of an app, you may wan to copy/move some gems from app's Gemfile into new gem's Gemfile. It also generates a Gemfile.lock (which you shouldn't add to git).

  43. Nov 2019
    1. it doesn't even render in-file components. For example, the <Fade /> component we have above is an implementation detail of the <HiddenMessage /> component, but because we're shallow rendering <Fade /> isn't rendered so changes to that component could break our application but not our test. That's a major issue in my mind and is evidence to me that we're testing implementation details.
    2. The reason this kind of test fails those considerations is because it's testing irrelevant implementation details. The user doesn't care one bit what things are called. In fact, that test doesn't even verify that the message is hidden properly when the show state is false or shown when the show state is true. So not only does the test not do a great job keeping us safe from breakages, it's also flakey and doesn't actually test the reason the component exists in the first place.
    1. But far too often, I see tests which are testing implementation details (read this before continuing if you haven't already). When you do this, you introduce a third user. The developer user and the end user are really all that matters for this component. So long as it serves those two, then it has a reason to exist. And when you're maintaining the component you need to keep those two users in mind to make sure that if you break the contract with them, you do something to handle that change.But as soon as you start testing things which your developer user and end user don't know or care about (implementation details), you add a third testing user, you're now having to keep that third user in your head and make sure you account for changes that affect the testing user as well.
    1. You want to write maintainable tests for your React components. As a part of this goal, you want your tests to avoid including implementation details of your components and rather focus on making your tests give you the confidence for which they are intended. As part of this, you want your testbase to be maintainable in the long run so refactors of your components (changes to implementation but not functionality) don't break your tests and slow you and your team down.
  44. Sep 2013