middleClick
why not button=button
middleClick
why not button=button
for - Progress trap - AI - low trust society
Grid cell classification
for - definition - degree of urbanization - definition - grid cell classification - definition - urban centre - definition - dense urban cluster - definition - semi-dense urban cluster - definition suburban or peri-urban cells - definition - rural cluster - definition - low density rural grid cells - definition - very low density rural grid cells
An extensive survey by Neumark and Wascher (2007) concluded that nearly two-thirds of the more than 100 newer minimum wage studies, and 85% of the most convincing ones, found consistent evidence of job loss effects on low-skilled workers.
Languages : Java, Python, C#, C, JavaScript, TypeScript, HTML/CSS, PHP , SQL(Postgres, MySQL, MSSQL)
📝 Remove extra space before the comma after PHP and ensure consistent spacing throughout.
ResuRalph |Python, Flask, Docker, AWS(Lambda, DynamoDB, S3) |GitHub
📝 Add spaces after commas for consistency in project formatting (e.g., AWS (Lambda, DynamoDB, S3)).
Languages : Java, Python, C#, C, JavaScript, TypeScript, HTML/CSS, PHP , SQL(Postgres, MySQL, MSSQL)
📝 Remove extra spaces and ensure consistent punctuation for a cleaner look.
https://www.reddit.com/r/typewriters/comments/1lu9173/turns_out_mineral_spirits_are_illegal_in/
Traditional mineral spirits are illegal in some states in the US including California. As an alternative odorless mineral spirits are low VOC, safer, and a solid alternative. Typewriter shops like Typewriter Justice in Keller, TX recommend it. Some who have access to cheaper mineral spirits still prefer the odorless version for the reduced residual smell.
Nashville Typewriter, another shop, recommends camping fuel (aka white gas) which is mostly naphtha. Zippo lighter fluid is primarily naphtha, but is much more expensive. In Germany, it goes under the names of Testbenzin or Reinigungsbenzin.
Jennifer Colombo, a repair person of Colombo Collection suggests linseed oil to clean and protect metal surfaces and create a barrier against rust and oxidation.
all intelligence is collective intelligence in the sense that every agent is made of parts, all of us. And what you want is for the agent to have a causal power uh that is not the same as uh simply tracking the microates, the particles
for - quote - consciousness vs cellular level intelligence - Michael Levin - key insight - high level governance (consciousness) vs low level intelligence adjacency hierarchical control - high level consciousness - low level micro intelligence quote - consciousness vs cellular level intelligence - Michael Levin - all intelligence is collective intelligence in the sense that - every agent is made of parts, all of us. - And what you want is for the (high level) agent to have a causal power that is not the same as simply tracking the microstates, the particles.
key insight - high level governance (consciousness) vs low level intelligence - This is a very important observation - It says that a multi-cellular being such as a human being can have consciousness that has agency for the entire organism and governs at that high level, and it must have this beyond just the cognition and intelligence at the lower cellular and subcellular level
Low Adventure 2 is a fun-packed indie game where you explore quirky lands, solve simple puzzles, and dodge cheeky enemies. A lighthearted quest perfect for casual gamers seeking charm, humor, and easygoing action in a pixelated world.
How might we reintegrate the practices ofhigh-context cultures into those of low-con
for - definition - high-context culture - definition - low-context culture
Noch nie gab es in einem arktischen Winter so wenig mehr als wie in diesem Jahr. Die Tats Interview dazu, den Klimaforscher Raphael Köhler. Zurzeit geht das arktische Mehrheit mehr als Prodikade um ca. 2,5% zurück. Der Rückgang des Meeraises verstärkt die an der Akt des Unterhins. Schnelle Erwärmung Sie führt zu Veränderungen des Jet Streams und ist damit auch an der Zunahme von Extremwetterereignissen in Europa beteiligt. Anders als früher nimmt inzwischen auch das antarktische Mehr-Eis-Ab. Die Gründe für diesen Vorgang sind noch nicht geklärt. https://taz.de/Physiker-ueber-Temperaturen-in-der-Arktis/!6079629/
int migrate_pages(struct list_head *from, new_folio_t get_new_folio, free_folio_t put_new_folio, unsigned long private, enum migrate_mode mode, int reason, unsigned int *ret_succeeded) { int rc, rc_gather; int nr_pages; struct folio *folio, *folio2; LIST_HEAD(folios); LIST_HEAD(ret_folios); LIST_HEAD(split_folios); struct migrate_pages_stats stats; trace_mm_migrate_pages_start(mode, reason); memset(&stats, 0, sizeof(stats)); rc_gather = migrate_hugetlbs(from, get_new_folio, put_new_folio, private, mode, reason, &stats, &ret_folios); if (rc_gather < 0) goto out; again: nr_pages = 0; list_for_each_entry_safe(folio, folio2, from, lru) { /* Retried hugetlb folios will be kept in list */ if (folio_test_hugetlb(folio)) { list_move_tail(&folio->lru, &ret_folios); continue; } nr_pages += folio_nr_pages(folio); if (nr_pages >= NR_MAX_BATCHED_MIGRATION) break; } if (nr_pages >= NR_MAX_BATCHED_MIGRATION) list_cut_before(&folios, from, &folio2->lru); else list_splice_init(from, &folios); if (mode == MIGRATE_ASYNC) rc = migrate_pages_batch(&folios, get_new_folio, put_new_folio, private, mode, reason, &ret_folios, &split_folios, &stats, NR_MAX_MIGRATE_PAGES_RETRY); else rc = migrate_pages_sync(&folios, get_new_folio, put_new_folio, private, mode, reason, &ret_folios, &split_folios, &stats); list_splice_tail_init(&folios, &ret_folios); if (rc < 0) { rc_gather = rc; list_splice_tail(&split_folios, &ret_folios); goto out; } if (!list_empty(&split_folios)) { /* * Failure isn't counted since all split folios of a large folio * is counted as 1 failure already. And, we only try to migrate * with minimal effort, force MIGRATE_ASYNC mode and retry once. */ migrate_pages_batch(&split_folios, get_new_folio, put_new_folio, private, MIGRATE_ASYNC, reason, &ret_folios, NULL, &stats, 1); list_splice_tail_init(&split_folios, &ret_folios); } rc_gather += rc; if (!list_empty(from)) goto again; out: /* * Put the permanent failure folio back to migration list, they * will be put back to the right list by the caller. */ list_splice(&ret_folios, from); /* * Return 0 in case all split folios of fail-to-migrate large folios * are migrated successfully. */ if (list_empty(from)) rc_gather = 0; count_vm_events(PGMIGRATE_SUCCESS, stats.nr_succeeded); count_vm_events(PGMIGRATE_FAIL, stats.nr_failed_pages); count_vm_events(THP_MIGRATION_SUCCESS, stats.nr_thp_succeeded); count_vm_events(THP_MIGRATION_FAIL, stats.nr_thp_failed); count_vm_events(THP_MIGRATION_SPLIT, stats.nr_thp_split); trace_mm_migrate_pages(stats.nr_succeeded, stats.nr_failed_pages, stats.nr_thp_succeeded, stats.nr_thp_failed, stats.nr_thp_split, mode, reason); if (ret_succeeded) *ret_succeeded = stats.nr_succeeded; return rc_gather; }
Might.... be main func for migrating pages maintained by a folio to another free folio. No indication of policy... Except for the macros. Also worth looking into how list data structs are used. Overall not an interesting func despite linux kernel documentation (not the comments in here)
While collision avoidance alerts have become an almost weekly occurrence at ESA mission control, the world’s largest satellite operator, the SpaceX-owned Starlink, reported more than 49,000 risk mitigation manoeuvres in the six months to the end of May 2024. Its fleet has grown to a total of almost 7,000 craft in orbit.
On average, around a dozen “fragmentations”, break-ups caused by collisions or wear and tear, have been recorded every year over the past 20 years, and observations suggest they’re on the rise, amid booming demand for satellite services.
When a defunct Russian craft collided with an Iridium communications satellite in 2009, thousands of fragments were left behind, threatening more craft and more collisions, which would create even more debris. This cascading space junk scenario is the Kessler syndrome, named after a NASA scientist who foresaw the possibility back in the late 1970s.
The good news is there were no injuries or reports of significant damage from the wreckage that fell over the Turks and Caicos. "The FAA confirmed one report of minor damage to a vehicle located in South Caicos," an FAA spokesperson told Ars on Friday. "To date, there are no other reports of damage." It's not clear if the vehicle owner in South Caicos will file a claim against SpaceX for the damage. It would be the first time someone makes such a claim related to an accident with a commercial rocket overseen by the FAA.
MARIA PAZ: They're not flying, they're not weightless. They're not in zero G, but instead, up there in the Space Station ... MICHELLE THALLER: The reason you can put your pen right beside you and it'll just float when you let go of it, the pen and you are falling towards the Earth at exactly the same rate. MARIA PAZ: What? MICHELLE THALLER: They're falling. ANNIE: They're falling? MICHELLE THALLER: Yes! Every second of every day they're up there, their whole space containment, their capsule, their space station, everything's falling. They're freely falling towards the Earth. ANNIE: Oh my God! MICHELLE THALLER: I mean, if you've ever been on, like, a really great roller coaster that drops, that kind of thing, I mean, that is what they feel. They feel like they're falling. MARIA PAZ: Ugh, that's nauseating! MICHELLE THALLER: Oh, yeah. Some people get very sick. [laughs]
Der französische Klimatologe Robert Vautard stellt fest, dass die Temperaturen des Jahr 2024 noch stärker als 2023 vom Erwartet abgewichen sind. Seit zwei Jahren erlebe der Planet einen zusätzlichen Fieberschub. Die Gründe seien noch nicht geklärt, die Reduzierung der Reflexion von Sonneneinstrahlung durch die Abnahme des arktischen und antarktischen Meereises spiele wahrscheinlich eine Rolle. https://www.liberation.fr/environnement/climat/rechauffement-pour-le-copresident-du-giec-2024-a-ete-encore-plus-hors-norme-que-2023-et-cela-pose-beaucoup-de-questions-20241231_Q4A5ZQBEBRHWREZIY3UYGSFEFM/?redirected=1
Science-Studie zur Abnahme der Albedo der Erde: https://www.science.org/doi/10.1126/science.adq7280
there is a major difference between low-lying clouds and high altitude clouds
for - climate crisis - difference between - low and high cloud cover - low has higher albedo and high has lower albedo - from The Print - YouTube - Low clouds disappearing over earth, rapidly acceleration heating - 2024, Dec
they found another Trend that was appearing across multiple data sets the decline and drop in the formation and prevalence of low altitude cloud cover especially over the world's oceans
for - climate crisis - low cloud cover is disappearing above the oceans - potentially decreasing albedo - from The Print - YouTube - Low clouds disappearing over earth, rapidly acceleration heating - 2024, Dec
there still seems to be a little bit of Gap in data that doesn't account for 0.2 de celsus warming that is present extra scientists have not been able to comfortably explain over the past in fact several years why there is this little bit of extra global warming it is a major major Gap
for - stats - climate crisis - global mean temperature gap in models vs measurement of - 0.2 Deg C - from The Print - YouTube - Low clouds disappearing over earth, rapidly acceleration heating - 2024, Dec
for - climate crisis - unusually low albedo in the last few years - potentially due to growing extinction of low clouds - from The Print - YouTube - Low clouds disappearing over earth, rapidly acceleration heating - 2024, Dec
Der temperatur anstieg des jahres zwanzig dreiundzwanzig lässt sich mit großer wahrscheinlichkeit auf den rückgang der albedo der erde zurückführen punkt dabei spielt der rückgang niedriger wolken die hauptrolle punkt eine neue studie zeigt komma das diese veränderungen die null komma zwei grad temperaturanstieg erklären kommen die beobachtet wurden komme aber deren ursache noch nicht bekannt ist punkt der rückgang der niedrigen wolken bedeckung lässt sich zum teil auf weniger eu sohle zurückführen komma er könnte aber auch durch die globale erhitzung selbst verursacht sein komma also ein rückblicks effekt darstellen punkt Nun nun https://www.derstandard.at/story/3000000248101/raetselhafter-temperatursprung-durch-rueckgang-von-wolken
for - AI - progress trap - interview Eric Schmidt - meme - AI progress trap - high intelligence + low compassion = existential threat
Summary - After watching the interview, I would sum it up this way. Humanity faces an existential threat from AI due to: - AI is extreme concentration of power and intelligence (NOT wisdom!) - Humanity still have many traumatized people who want to harm others - low compassion - The deadly combination is: - proliferation of tools that give anyone extreme concentration of power and intelligence combined with - a sufficiently high percentage of traumatized people with - low levels of compassion and - high levels of unlimited aggression - All it takes is ONE bad actor with the right combination of circumstances and conditions to wreak harm on a global scale, and that will not be prevented by millions of good applications of the same technology
#ifdef CONFIG_ARCH_HAS_HUGEPD static unsigned long hugepte_addr_end(unsigned long addr, unsigned long end, unsigned long sz) { unsigned long __boundary = (addr + sz) & ~(sz-1); return (__boundary - 1 < end - 1) ? __boundary : end; } static int gup_hugepte(pte_t *ptep, unsigned long sz, unsigned long addr, unsigned long end, unsigned int flags, struct page **pages, int *nr) { unsigned long pte_end; struct page *page; struct folio *folio; pte_t pte; int refs; pte_end = (addr + sz) & ~(sz-1); if (pte_end < end) end = pte_end; pte = huge_ptep_get(ptep); if (!pte_access_permitted(pte, flags & FOLL_WRITE)) return 0; /* hugepages are never "special" */ VM_BUG_ON(!pfn_valid(pte_pfn(pte))); page = nth_page(pte_page(pte), (addr & (sz - 1)) >> PAGE_SHIFT); refs = record_subpages(page, addr, end, pages + *nr); folio = try_grab_folio(page, refs, flags); if (!folio) return 0; if (unlikely(pte_val(pte) != pte_val(ptep_get(ptep)))) { gup_put_folio(folio, refs, flags); return 0; } if (!folio_fast_pin_allowed(folio, flags)) { gup_put_folio(folio, refs, flags); return 0; } if (!pte_write(pte) && gup_must_unshare(NULL, flags, &folio->page)) { gup_put_folio(folio, refs, flags); return 0; } *nr += refs; folio_set_referenced(folio); return 1; } static int gup_huge_pd(hugepd_t hugepd, unsigned long addr, unsigned int pdshift, unsigned long end, unsigned int flags, struct page **pages, int *nr) { pte_t *ptep; unsigned long sz = 1UL << hugepd_shift(hugepd); unsigned long next; ptep = hugepte_offset(hugepd, addr, pdshift); do { next = hugepte_addr_end(addr, end, sz); if (!gup_hugepte(ptep, sz, addr, end, flags, pages, nr)) return 0; } while (ptep++, addr = next, addr != end); return 1; } #else static inline int gup_huge_pd(hugepd_t hugepd, unsigned long addr, unsigned int pdshift, unsigned long end, unsigned int flags, struct page **pages, int *nr) { return 0; } #endif /* CONFIG_ARCH_HAS_HUGEPD */ static int gup_huge_pmd(pmd_t orig, pmd_t *pmdp, unsigned long addr, unsigned long end, unsigned int flags, struct page **pages, int *nr) { struct page *page; struct folio *folio; int refs; if (!pmd_access_permitted(orig, flags & FOLL_WRITE)) return 0; if (pmd_devmap(orig)) { if (unlikely(flags & FOLL_LONGTERM)) return 0; return __gup_device_huge_pmd(orig, pmdp, addr, end, flags, pages, nr); } page = nth_page(pmd_page(orig), (addr & ~PMD_MASK) >> PAGE_SHIFT); refs = record_subpages(page, addr, end, pages + *nr); folio = try_grab_folio(page, refs, flags); if (!folio) return 0; if (unlikely(pmd_val(orig) != pmd_val(*pmdp))) { gup_put_folio(folio, refs, flags); return 0; } if (!folio_fast_pin_allowed(folio, flags)) { gup_put_folio(folio, refs, flags); return 0; } if (!pmd_write(orig) && gup_must_unshare(NULL, flags, &folio->page)) { gup_put_folio(folio, refs, flags); return 0; } *nr += refs; folio_set_referenced(folio); return 1; } static int gup_huge_pud(pud_t orig, pud_t *pudp, unsigned long addr, unsigned long end, unsigned int flags, struct page **pages, int *nr) { struct page *page; struct folio *folio; int refs; if (!pud_access_permitted(orig, flags & FOLL_WRITE)) return 0; if (pud_devmap(orig)) { if (unlikely(flags & FOLL_LONGTERM)) return 0; return __gup_device_huge_pud(orig, pudp, addr, end, flags, pages, nr); } page = nth_page(pud_page(orig), (addr & ~PUD_MASK) >> PAGE_SHIFT); refs = record_subpages(page, addr, end, pages + *nr); folio = try_grab_folio(page, refs, flags); if (!folio) return 0; if (unlikely(pud_val(orig) != pud_val(*pudp))) { gup_put_folio(folio, refs, flags); return 0; } if (!folio_fast_pin_allowed(folio, flags)) { gup_put_folio(folio, refs, flags); return 0; } if (!pud_write(orig) && gup_must_unshare(NULL, flags, &folio->page)) { gup_put_folio(folio, refs, flags); return 0; } *nr += refs; folio_set_referenced(folio); return 1; } static int gup_huge_pgd(pgd_t orig, pgd_t *pgdp, unsigned long addr, unsigned long end, unsigned int flags, struct page **pages, int *nr) { int refs; struct page *page; struct folio *folio; if (!pgd_access_permitted(orig, flags & FOLL_WRITE)) return 0; BUILD_BUG_ON(pgd_devmap(orig)); page = nth_page(pgd_page(orig), (addr & ~PGDIR_MASK) >> PAGE_SHIFT); refs = record_subpages(page, addr, end, pages + *nr); folio = try_grab_folio(page, refs, flags); if (!folio) return 0; if (unlikely(pgd_val(orig) != pgd_val(*pgdp))) { gup_put_folio(folio, refs, flags); return 0; } if (!pgd_write(orig) && gup_must_unshare(NULL, flags, &folio->page)) { gup_put_folio(folio, refs, flags); return 0; } if (!folio_fast_pin_allowed(folio, flags)) { gup_put_folio(folio, refs, flags); return 0; } *nr += refs; folio_set_referenced(folio); return 1; } static int gup_pmd_range(pud_t *pudp, pud_t pud, unsigned long addr, unsigned long end, unsigned int flags, struct page **pages, int *nr) { unsigned long next; pmd_t *pmdp; pmdp = pmd_offset_lockless(pudp, pud, addr); do { pmd_t pmd = pmdp_get_lockless(pmdp); next = pmd_addr_end(addr, end); if (!pmd_present(pmd)) return 0; if (unlikely(pmd_trans_huge(pmd) || pmd_huge(pmd) || pmd_devmap(pmd))) { /* See gup_pte_range() */ if (pmd_protnone(pmd)) return 0; if (!gup_huge_pmd(pmd, pmdp, addr, next, flags, pages, nr)) return 0; } else if (unlikely(is_hugepd(__hugepd(pmd_val(pmd))))) { /* * architecture have different format for hugetlbfs * pmd format and THP pmd format */ if (!gup_huge_pd(__hugepd(pmd_val(pmd)), addr, PMD_SHIFT, next, flags, pages, nr)) return 0; } else if (!gup_pte_range(pmd, pmdp, addr, next, flags, pages, nr)) return 0; } while (pmdp++, addr = next, addr != end); return 1; } static int gup_pud_range(p4d_t *p4dp, p4d_t p4d, unsigned long addr, unsigned long end, unsigned int flags, struct page **pages, int *nr) { unsigned long next; pud_t *pudp; pudp = pud_offset_lockless(p4dp, p4d, addr); do { pud_t pud = READ_ONCE(*pudp); next = pud_addr_end(addr, end); if (unlikely(!pud_present(pud))) return 0; if (unlikely(pud_huge(pud) || pud_devmap(pud))) { if (!gup_huge_pud(pud, pudp, addr, next, flags, pages, nr)) return 0; } else if (unlikely(is_hugepd(__hugepd(pud_val(pud))))) { if (!gup_huge_pd(__hugepd(pud_val(pud)), addr, PUD_SHIFT, next, flags, pages, nr)) return 0; } else if (!gup_pmd_range(pudp, pud, addr, next, flags, pages, nr)) return 0; } while (pudp++, addr = next, addr != end); return 1; } static int gup_p4d_range(pgd_t *pgdp, pgd_t pgd, unsigned long addr, unsigned long end, unsigned int flags, struct page **pages, int *nr) { unsigned long next; p4d_t *p4dp; p4dp = p4d_offset_lockless(pgdp, pgd, addr); do { p4d_t p4d = READ_ONCE(*p4dp); next = p4d_addr_end(addr, end); if (p4d_none(p4d)) return 0; BUILD_BUG_ON(p4d_huge(p4d)); if (unlikely(is_hugepd(__hugepd(p4d_val(p4d))))) { if (!gup_huge_pd(__hugepd(p4d_val(p4d)), addr, P4D_SHIFT, next, flags, pages, nr)) return 0; } else if (!gup_pud_range(p4dp, p4d, addr, next, flags, pages, nr)) return 0; } while (p4dp++, addr = next, addr != end); return 1; } static void gup_pgd_range(unsigned long addr, unsigned long end, unsigned int flags, struct page **pages, int *nr) { unsigned long next; pgd_t *pgdp; pgdp = pgd_offset(current->mm, addr); do { pgd_t pgd = READ_ONCE(*pgdp); next = pgd_addr_end(addr, end); if (pgd_none(pgd)) return; if (unlikely(pgd_huge(pgd))) { if (!gup_huge_pgd(pgd, pgdp, addr, next, flags, pages, nr)) return; } else if (unlikely(is_hugepd(__hugepd(pgd_val(pgd))))) { if (!gup_huge_pd(__hugepd(pgd_val(pgd)), addr, PGDIR_SHIFT, next, flags, pages, nr)) return; } else if (!gup_p4d_range(pgdp, pgd, addr, next, flags, pages, nr)) return; } while (pgdp++, addr = next, addr != end); } #else static inline void gup_pgd_range(unsigned long addr, unsigned long end, unsigned int flags, struct page **pages, int *nr) { }
policy use functions for gup_huge pte policy code function above (not right above, gotta scroll probably to find it)
static int internal_get_user_pages_fast(unsigned long start, unsigned long nr_pages, unsigned int gup_flags, struct page **pages) { unsigned long len, end; unsigned long nr_pinned; int locked = 0; int ret; if (WARN_ON_ONCE(gup_flags & ~(FOLL_WRITE | FOLL_LONGTERM | FOLL_FORCE | FOLL_PIN | FOLL_GET | FOLL_FAST_ONLY | FOLL_NOFAULT | FOLL_PCI_P2PDMA | FOLL_HONOR_NUMA_FAULT))) return -EINVAL; if (gup_flags & FOLL_PIN) mm_set_has_pinned_flag(¤t->mm->flags); if (!(gup_flags & FOLL_FAST_ONLY)) might_lock_read(¤t->mm->mmap_lock); start = untagged_addr(start) & PAGE_MASK; len = nr_pages << PAGE_SHIFT; if (check_add_overflow(start, len, &end)) return -EOVERFLOW; if (end > TASK_SIZE_MAX) return -EFAULT; if (unlikely(!access_ok((void __user *)start, len))) return -EFAULT; nr_pinned = lockless_pages_from_mm(start, end, gup_flags, pages); if (nr_pinned == nr_pages || gup_flags & FOLL_FAST_ONLY) return nr_pinned; /* Slow path: try to get the remaining pages with get_user_pages */ start += nr_pinned << PAGE_SHIFT; pages += nr_pinned; ret = __gup_longterm_locked(current->mm, start, nr_pages - nr_pinned, pages, &locked, gup_flags | FOLL_TOUCH | FOLL_UNLOCKABLE); if (ret < 0) { /* * The caller has to unpin the pages we already pinned so * returning -errno is not an option */ if (nr_pinned) return nr_pinned; return ret; } return ret + nr_pinned; } /** * get_user_pages_fast_only() - pin user pages in memory * @start: starting user address * @nr_pages: number of pages from start to pin * @gup_flags: flags modifying pin behaviour * @pages: array that receives pointers to the pages pinned. * Should be at least nr_pages long. * * Like get_user_pages_fast() except it's IRQ-safe in that it won't fall back to * the regular GUP. * * If the architecture does not support this function, simply return with no * pages pinned. * * Careful, careful! COW breaking can go either way, so a non-write * access can get ambiguous page results. If you call this function without * 'write' set, you'd better be sure that you're ok with that ambiguity. */ int get_user_pages_fast_only(unsigned long start, int nr_pages, unsigned int gup_flags, struct page **pages) { /* * Internally (within mm/gup.c), gup fast variants must set FOLL_GET, * because gup fast is always a "pin with a +1 page refcount" request. * * FOLL_FAST_ONLY is required in order to match the API description of * this routine: no fall back to regular ("slow") GUP. */ if (!is_valid_gup_args(pages, NULL, &gup_flags, FOLL_GET | FOLL_FAST_ONLY)) return -EINVAL; return internal_get_user_pages_fast(start, nr_pages, gup_flags, pages); } EXPORT_SYMBOL_GPL(get_user_pages_fast_only); /** * get_user_pages_fast() - pin user pages in memory * @start: starting user address * @nr_pages: number of pages from start to pin * @gup_flags: flags modifying pin behaviour * @pages: array that receives pointers to the pages pinned. * Should be at least nr_pages long. * * Attempt to pin user pages in memory without taking mm->mmap_lock. * If not successful, it will fall back to taking the lock and * calling get_user_pages(). * * Returns number of pages pinned. This may be fewer than the number requested. * If nr_pages is 0 or negative, returns 0. If no pages were pinned, returns * -errno. */ int get_user_pages_fast(unsigned long start, int nr_pages, unsigned int gup_flags, struct page **pages) { /* * The caller may or may not have explicitly set FOLL_GET; either way is * OK. However, internally (within mm/gup.c), gup fast variants must set * FOLL_GET, because gup fast is always a "pin with a +1 page refcount" * request. */ if (!is_valid_gup_args(pages, NULL, &gup_flags, FOLL_GET)) return -EINVAL; return internal_get_user_pages_fast(start, nr_pages, gup_flags, pages); } EXPORT_SYMBOL_GPL(get_user_pages_fast); /** * pin_user_pages_fast() - pin user pages in memory without taking locks * * @start: starting user address * @nr_pages: number of pages from start to pin * @gup_flags: flags modifying pin behaviour * @pages: array that receives pointers to the pages pinned. * Should be at least nr_pages long. * * Nearly the same as get_user_pages_fast(), except that FOLL_PIN is set. See * get_user_pages_fast() for documentation on the function arguments, because * the arguments here are identical. * * FOLL_PIN means that the pages must be released via unpin_user_page(). Please * see Documentation/core-api/pin_user_pages.rst for further details. * * Note that if a zero_page is amongst the returned pages, it will not have * pins in it and unpin_user_page() will not remove pins from it. */ int pin_user_pages_fast(unsigned long start, int nr_pages, unsigned int gup_flags, struct page **pages) { if (!is_valid_gup_args(pages, NULL, &gup_flags, FOLL_PIN)) return -EINVAL; return internal_get_user_pages_fast(start, nr_pages, gup_flags, pages); } EXPORT_SYMBOL_GPL(pin_user_pages_fast); /** * pin_user_pages_remote() - pin pages of a remote process * * @mm: mm_struct of target mm * @start: starting user address * @nr_pages: number of pages from start to pin * @gup_flags: flags modifying lookup behaviour * @pages: array that receives pointers to the pages pinned. * Should be at least nr_pages long. * @locked: pointer to lock flag indicating whether lock is held and * subsequently whether VM_FAULT_RETRY functionality can be * utilised. Lock must initially be held. * * Nearly the same as get_user_pages_remote(), except that FOLL_PIN is set. See * get_user_pages_remote() for documentation on the function arguments, because * the arguments here are identical. * * FOLL_PIN means that the pages must be released via unpin_user_page(). Please * see Documentation/core-api/pin_user_pages.rst for details. * * Note that if a zero_page is amongst the returned pages, it will not have * pins in it and unpin_user_page*() will not remove pins from it. */ long pin_user_pages_remote(struct mm_struct *mm, unsigned long start, unsigned long nr_pages, unsigned int gup_flags, struct page **pages, int *locked) { int local_locked = 1; if (!is_valid_gup_args(pages, locked, &gup_flags, FOLL_PIN | FOLL_TOUCH | FOLL_REMOTE)) return 0; return __gup_longterm_locked(mm, start, nr_pages, pages, locked ? locked : &local_locked, gup_flags); } EXPORT_SYMBOL(pin_user_pages_remote); /** * pin_user_pages() - pin user pages in memory for use by other devices * * @start: starting user address * @nr_pages: number of pages from start to pin * @gup_flags: flags modifying lookup behaviour * @pages: array that receives pointers to the pages pinned. * Should be at least nr_pages long. * * Nearly the same as get_user_pages(), except that FOLL_TOUCH is not set, and * FOLL_PIN is set. * * FOLL_PIN means that the pages must be released via unpin_user_page(). Please * see Documentation/core-api/pin_user_pages.rst for details. * * Note that if a zero_page is amongst the returned pages, it will not have * pins in it and unpin_user_page*() will not remove pins from it. */ long pin_user_pages(unsigned long start, unsigned long nr_pages, unsigned int gup_flags, struct page **pages) { int locked = 1; if (!is_valid_gup_args(pages, NULL, &gup_flags, FOLL_PIN)) return 0; return __gup_longterm_locked(current->mm, start, nr_pages, pages, &locked, gup_flags); } EXPORT_SYMBOL(pin_user_pages); /* * pin_user_pages_unlocked() is the FOLL_PIN variant of * get_user_pages_unlocked(). Behavior is the same, except that this one sets * FOLL_PIN and rejects FOLL_GET. * * Note that if a zero_page is amongst the returned pages, it will not have * pins in it and unpin_user_page*() will not remove pins from it. */ long pin_user_pages_unlocked(unsigned long start, unsigned long nr_pages, struct page **pages, unsigned int gup_flags) { int locked = 0; if (!is_valid_gup_args(pages, NULL, &gup_flags, FOLL_PIN | FOLL_TOUCH | FOLL_UNLOCKABLE)) return 0; return __gup_longterm_locked(current->mm, start, nr_pages, pages, &locked, gup_flags); }
fast gup functions
/** * unpin_user_pages() - release an array of gup-pinned pages. * @pages: array of pages to be marked dirty and released. * @npages: number of pages in the @pages array. * * For each page in the @pages array, release the page using unpin_user_page(). * * Please see the unpin_user_page() documentation for details. */ void unpin_user_pages(struct page **pages, unsigned long npages) { unsigned long i; struct folio *folio; unsigned int nr; /* * If this WARN_ON() fires, then the system *might* be leaking pages (by * leaving them pinned), but probably not. More likely, gup/pup returned * a hard -ERRNO error to the caller, who erroneously passed it here. */ if (WARN_ON(IS_ERR_VALUE(npages))) return; sanity_check_pinned_pages(pages, npages); for (i = 0; i < npages; i += nr) { folio = gup_folio_next(pages, npages, i, &nr); gup_put_folio(folio, nr, FOLL_PIN); } }
gup unpin function, not actual logic
void unpin_user_page_range_dirty_lock(struct page *page, unsigned long npages, bool make_dirty) { unsigned long i; struct folio *folio; unsigned int nr; for (i = 0; i < npages; i += nr) { folio = gup_folio_range_next(page, npages, i, &nr); if (make_dirty && !folio_test_dirty(folio)) { folio_lock(folio); folio_mark_dirty(folio); folio_unlock(folio); } gup_put_folio(folio, nr, FOLL_PIN); } }
unpin logic but for dirty pages
if ((flags & FOLL_DUMP) && (vma_is_anonymous(vma) || !vma->vm_ops->fault)) return ERR_PTR(-EFAULT); return NULL;
explained in comments
static void __maybe_unused undo_dev_pagemap(int *nr, int nr_start, unsigned int flags, struct page **pages) { while ((*nr) - nr_start) { struct page *page = pages[--(*nr)]; ClearPageReferenced(page); if (flags & FOLL_PIN) unpin_user_page(page); else put_page(page); } }
policy use function that undoes mapping
#ifdef CONFIG_MIGRATION /* * Returns the number of collected pages. Return value is always >= 0. */ static unsigned long collect_longterm_unpinnable_pages( struct list_head *movable_page_list, unsigned long nr_pages, struct page **pages) { unsigned long i, collected = 0; struct folio *prev_folio = NULL; bool drain_allow = true; for (i = 0; i < nr_pages; i++) { struct folio *folio = page_folio(pages[i]); if (folio == prev_folio) continue; prev_folio = folio; if (folio_is_longterm_pinnable(folio)) continue; collected++; if (folio_is_device_coherent(folio)) continue; if (folio_test_hugetlb(folio)) { isolate_hugetlb(folio, movable_page_list); continue; } if (!folio_test_lru(folio) && drain_allow) { lru_add_drain_all(); drain_allow = false; } if (!folio_isolate_lru(folio)) continue; list_add_tail(&folio->lru, movable_page_list); node_stat_mod_folio(folio, NR_ISOLATED_ANON + folio_is_file_lru(folio), folio_nr_pages(folio)); } return collected; }
#ifdef CONFIG_ELF_CORE struct page *get_dump_page(unsigned long addr) { struct page *page; int locked = 0; int ret; ret = __get_user_pages_locked(current->mm, addr, 1, &page, &locked, FOLL_FORCE | FOLL_DUMP | FOLL_GET); return (ret == 1) ? page : NULL; } #endif /* CONFIG_ELF_CORE */
part of policy use code likely
int __mm_populate(unsigned long start, unsigned long len, int ignore_errors) { struct mm_struct *mm = current->mm; unsigned long end, nstart, nend; struct vm_area_struct *vma = NULL; int locked = 0; long ret = 0; end = start + len; for (nstart = start; nstart < end; nstart = nend) { /* * We want to fault in pages for [nstart; end) address range. * Find first corresponding VMA. */ if (!locked) { locked = 1; mmap_read_lock(mm); vma = find_vma_intersection(mm, nstart, end); } else if (nstart >= vma->vm_end) vma = find_vma_intersection(mm, vma->vm_end, end); if (!vma) break; /* * Set [nstart; nend) to intersection of desired address * range with the first VMA. Also, skip undesirable VMA types. */ nend = min(end, vma->vm_end); if (vma->vm_flags & (VM_IO | VM_PFNMAP)) continue; if (nstart < vma->vm_start) nstart = vma->vm_start; /* * Now fault in a range of pages. populate_vma_page_range() * double checks the vma flags, so that it won't mlock pages * if the vma was already munlocked. */ ret = populate_vma_page_range(vma, nstart, nend, &locked); if (ret < 0) { if (ignore_errors) { ret = 0; continue; /* continue at next VMA */ } break; } nend = nstart + ret * PAGE_SIZE; ret = 0; } if (locked) mmap_read_unlock(mm); return ret; /* 0 or negative error code */ }
policy use function that populates pages like the func before this.
long populate_vma_page_range(struct vm_area_struct *vma, unsigned long start, unsigned long end, int *locked) { struct mm_struct *mm = vma->vm_mm; unsigned long nr_pages = (end - start) / PAGE_SIZE; int local_locked = 1; int gup_flags; long ret; VM_BUG_ON(!PAGE_ALIGNED(start)); VM_BUG_ON(!PAGE_ALIGNED(end)); VM_BUG_ON_VMA(start < vma->vm_start, vma); VM_BUG_ON_VMA(end > vma->vm_end, vma); mmap_assert_locked(mm); /* * Rightly or wrongly, the VM_LOCKONFAULT case has never used * faultin_page() to break COW, so it has no work to do here. */ if (vma->vm_flags & VM_LOCKONFAULT) return nr_pages; gup_flags = FOLL_TOUCH; /* * We want to touch writable mappings with a write fault in order * to break COW, except for shared mappings because these don't COW * and we would not want to dirty them for nothing. */ if ((vma->vm_flags & (VM_WRITE | VM_SHARED)) == VM_WRITE) gup_flags |= FOLL_WRITE; /* * We want mlock to succeed for regions that have any permissions * other than PROT_NONE. */ if (vma_is_accessible(vma)) gup_flags |= FOLL_FORCE; if (locked) gup_flags |= FOLL_UNLOCKABLE; /* * We made sure addr is within a VMA, so the following will * not result in a stack expansion that recurses back here. */ ret = __get_user_pages(mm, start, nr_pages, gup_flags, NULL, locked ? locked : &local_locked); lru_add_drain(); return ret; }
policy use code.
if (!(flags & FOLL_INTERRUPTIBLE)) return false;
fatal fault signal handler
#ifdef CONFIG_STACK_GROWSUP return vma_lookup(mm, addr); #else static volatile unsigned long next_warn; struct vm_area_struct *vma; unsigned long now, next; vma = find_vma(mm, addr); if (!vma || (addr >= vma->vm_start)) return vma; /* Only warn for half-way relevant accesses */ if (!(vma->vm_flags & VM_GROWSDOWN)) return NULL; if (vma->vm_start - addr > 65536) return NULL; /* Let's not warn more than once an hour.. */ now = jiffies; next = next_warn; if (next && time_before(now, next)) return NULL; next_warn = now + 60*60*HZ; /* Let people know things may have changed. */ pr_warn("GUP no longer grows the stack in %s (%d): %lx-%lx (%lx)\n", current->comm, task_pid_nr(current), vma->vm_start, vma->vm_end, addr); dump_stack(); return NULL;
helper func to lookup vma(virtual mem area) that warns per hour about half way relevant acc and changes in stack
if (*flags & FOLL_NOFAULT) return -EFAULT; if (*flags & FOLL_WRITE) fault_flags |= FAULT_FLAG_WRITE; if (*flags & FOLL_REMOTE) fault_flags |= FAULT_FLAG_REMOTE; if (*flags & FOLL_UNLOCKABLE) { fault_flags |= FAULT_FLAG_ALLOW_RETRY | FAULT_FLAG_KILLABLE; /* * FAULT_FLAG_INTERRUPTIBLE is opt-in. GUP callers must set * FOLL_INTERRUPTIBLE to enable FAULT_FLAG_INTERRUPTIBLE. * That's because some callers may not be prepared to * handle early exits caused by non-fatal signals. */ if (*flags & FOLL_INTERRUPTIBLE) fault_flags |= FAULT_FLAG_INTERRUPTIBLE; } if (*flags & FOLL_NOWAIT) fault_flags |= FAULT_FLAG_ALLOW_RETRY | FAULT_FLAG_RETRY_NOWAIT; if (*flags & FOLL_TRIED) { /* * Note: FAULT_FLAG_ALLOW_RETRY and FAULT_FLAG_TRIED * can co-exist */ fault_flags |= FAULT_FLAG_TRIED; } if (unshare) { fault_flags |= FAULT_FLAG_UNSHARE; /* FAULT_FLAG_WRITE and FAULT_FLAG_UNSHARE are incompatible */ VM_BUG_ON(fault_flags & FAULT_FLAG_WRITE); } ret = handle_mm_fault(vma, address, fault_flags, NULL); if (ret & VM_FAULT_COMPLETED) { /* * With FAULT_FLAG_RETRY_NOWAIT we'll never release the * mmap lock in the page fault handler. Sanity check this. */ WARN_ON_ONCE(fault_flags & FAULT_FLAG_RETRY_NOWAIT); *locked = 0; /* * We should do the same as VM_FAULT_RETRY, but let's not * return -EBUSY since that's not reflecting the reality of * what has happened - we've just fully completed a page * fault, with the mmap lock released. Use -EAGAIN to show * that we want to take the mmap lock _again_. */ return -EAGAIN; } if (ret & VM_FAULT_ERROR) { int err = vm_fault_to_errno(ret, *flags); if (err) return err; BUG(); } if (ret & VM_FAULT_RETRY) { if (!(fault_flags & FAULT_FLAG_RETRY_NOWAIT)) *locked = 0; return -EBUSY; }
Seems it's just setting flags for page faults based on flags param
if (likely(!pmd_trans_huge(pmdval))) return follow_page_pte(vma, address, pmd, flags, &ctx->pgmap); if (pmd_protnone(pmdval) && !gup_can_follow_protnone(vma, flags)) return no_page_table(vma, flags); ptl = pmd_lock(mm, pmd); if (unlikely(!pmd_present(*pmd))) { spin_unlock(ptl); return no_page_table(vma, flags); } if (unlikely(!pmd_trans_huge(*pmd))) { spin_unlock(ptl); return follow_page_pte(vma, address, pmd, flags, &ctx->pgmap); }
branch prediction to check if pmd is there and if it's big
if (pmd_none(pmdval)) return no_page_table(vma, flags); if (!pmd_present(pmdval)) return no_page_table(vma, flags); if (pmd_devmap(pmdval)) { ptl = pmd_lock(mm, pmd); page = follow_devmap_pmd(vma, address, pmd, flags, &ctx->pgmap); spin_unlock(ptl); if (page) return page; }
checks if pmd is there. im assuming it's page middle dir.
void unpin_user_pages_dirty_lock(struct page **pages, unsigned long npages, bool make_dirty) { unsigned long i; struct folio *folio; unsigned int nr; if (!make_dirty) { unpin_user_pages(pages, npages); return; } sanity_check_pinned_pages(pages, npages); for (i = 0; i < npages; i += nr) { folio = gup_folio_next(pages, npages, i, &nr); /* * Checking PageDirty at this point may race with * clear_page_dirty_for_io(), but that's OK. Two key * cases: * * 1) This code sees the page as already dirty, so it * skips the call to set_page_dirty(). That could happen * because clear_page_dirty_for_io() called * page_mkclean(), followed by set_page_dirty(). * However, now the page is going to get written back, * which meets the original intention of setting it * dirty, so all is well: clear_page_dirty_for_io() goes * on to call TestClearPageDirty(), and write the page * back. * * 2) This code sees the page as clean, so it calls * set_page_dirty(). The page stays dirty, despite being * written back, so it gets written back again in the * next writeback cycle. This is harmless. */ if (!folio_test_dirty(folio)) { folio_lock(folio); folio_mark_dirty(folio); folio_unlock(folio); } gup_put_folio(folio, nr, FOLL_PIN); } }
unpins and dirties page
static inline struct folio *gup_folio_next(struct page **list, unsigned long npages, unsigned long i, unsigned int *ntails) { struct folio *folio = page_folio(list[i]); unsigned int nr; for (nr = i + 1; nr < npages; nr++) { if (page_folio(list[nr]) != folio) break; } *ntails = nr - i; return folio; }
gets folio of next page along with reference to end of folio
static inline struct folio *gup_folio_range_next(struct page *start, unsigned long npages, unsigned long i, unsigned int *ntails) { struct page *next = nth_page(start, i); struct folio *folio = page_folio(next); unsigned int nr = 1; if (folio_test_large(folio)) nr = min_t(unsigned int, npages - i, folio_nr_pages(folio) - folio_page_idx(folio, next)); *ntails = nr; return folio; }
gets the folio of the next page from start to 'i' range. also gets the tail folio/reference
folio_ref_add(folio, GUP_PIN_COUNTING_BIAS);
function for adding reference
void unpin_user_page(struct page *page) { sanity_check_pinned_pages(&page, 1); gup_put_folio(page_folio(page), 1, FOLL_PIN); } EXPORT_SYMBOL(unpin_user_page);
actual policy use logic
struct folio *folio = page_folio(page); if (WARN_ON_ONCE(folio_ref_count(folio) <= 0)) return -ENOMEM; if (unlikely(!(flags & FOLL_PCI_P2PDMA) && is_pci_p2pdma_page(page))) return -EREMOTEIO; if (flags & FOLL_GET) folio_ref_inc(folio);
checks for code that is involved in policy but is not the actual logic
else if (flags & FOLL_PIN) { /* * Don't take a pin on the zero page - it's not going anywhere * and it is used in a *lot* of places. */ if (is_zero_page(page)) return 0; /* * Similar to try_grab_folio(): be sure to *also* * increment the normal page refcount field at least once, * so that the page really is pinned. */ if (folio_test_large(folio)) { folio_ref_add(folio, 1); atomic_add(1, &folio->_pincount); } else { folio_ref_add(folio, GUP_PIN_COUNTING_BIAS); } node_stat_mod_folio(folio, NR_FOLL_PIN_ACQUIRED, 1); }
Logic that actually tries to grab the folio. Also policy use code and not actual policy
if (!put_devmap_managed_page_refs(&folio->page, refs)) folio_put_refs(folio, refs);
Definitely a vital and straightforward policy use section of gup that simples places a reference on the folio
if (flags & FOLL_PIN) { if (is_zero_folio(folio)) return; node_stat_mod_folio(folio, NR_FOLL_PIN_RELEASED, refs); if (folio_test_large(folio)) atomic_sub(refs, &folio->_pincount); else refs *= GUP_PIN_COUNTING_BIAS; }
Checks if the folio is zero/large
if (folio_test_large(folio)) atomic_add(refs, &folio->_pincount); else folio_ref_add(folio, refs * (GUP_PIN_COUNTING_BIAS - 1))
maintaining reference counts. Part of policy logic most likely
if (unlikely((flags & FOLL_LONGTERM) && !folio_is_longterm_pinnable(folio))) { if (!put_devmap_managed_page_refs(&folio->page, refs)) folio_put_refs(folio, refs); return NULL;
checks for longterm folio pins.
if (WARN_ON_ONCE((flags & (FOLL_GET | FOLL_PIN)) == 0)) return NULL; if (unlikely(!(flags & FOLL_PCI_P2PDMA) && is_pci_p2pdma_page(page))) return NULL;
Time saving predictions(unlikely) and single time warning func(WARN_ON_ONCE) for flags. Not actual policy logic so low confidence.
if (is_zero_page(page) || !folio_test_anon(folio)) continue; if (!folio_test_large(folio) || folio_test_hugetlb(folio))
Sanity checks for pinned pages wouldn't classify as policy logic but common sense pre-checks for the actual policy. But I think it's worth tagging this to gain a sense of what is not policy code
if (is_zero_page(page)) return page_folio(page); folio = try_get_folio(page, refs); if (!folio) return NULL;
Just trying to check for zero pages and trying to retrieve folios. Unlikely policy logic
Desmond, Matthew. Poverty, by America. 1st ed. New York: Crown, 2023. https://amzn.to/40Aqzlp
Annotation URL: urn:x-pdf:eefd847a2a1723651d1d863de5153292
Alternate annotation link: https://jonudell.info/h/facet/?user=chrisaldrich&max=100&exactTagSearch=true&expanded=true&url=urn%3Ax-pdf%3Aeefd847a2a1723651d1d863de5153292
the Mythic religions of like I'm going to kill you because my Mythic God has a different name from yours and that's that's the level of 2.0 like concrete operational like literally if the word is different I'll kill you that that is the level of the Sacred right
for - the word "sacred" - sacred 2.0 - low level of the sacred
People do not actually spend a lot of time browsing junk content,
The vast majority of people browsing social media streams via the web are doing just this: spending a lot of time browsing junk content.
While much of this "junk content" is for entertainment or some means of mental and/or emotional health, at root it becomes the opiate of the masses.
“There are a lot of people who mistakenly think intelligibility is the standard. ‘Oh, you knew what I was saying.’ Well, that’s not the standard. That’s a really bottom-of-the-barrel standard,” he says. “People who are concerned with English usage usually want to have their words taken seriously, either as writers or as speakers. And if you don’t use the language very well, then it hard to have people take your ideas seriously. That’s just the reality.”
2023 haben Böden und Landpflanzen fast kein CO2 absorbiert. Dieser Kollaps der Landsenken vor allem durch Dürren und Waldbrände wurde in diesem Ausmaß kaum vorausgesehen, und es ist nicht klar, ob auf ihn eine Regeneration folgt. Er stellt Klimamodelle ebenso in Frage wie die meisten nationalen Pläne zum Erreichen von CO2-Neutralität, weil sie auf natürlichen Senken an Land beruhen. Es gibt Anzeichen dafür, dass die steigenden Temperaturen inzwischen auch die CO2-Aufnahmefähigkeit der Meere schwächen. Überblicksartikel mit Links zu Studien https://www.theguardian.com/environment/2024/oct/14/nature-carbon-sink-collapse-global-heating-models-emissions-targets-evidence-aoe
Noch nie ist die CO2-Konzentration in der Atmosphäre so stark gestiegen wie im vergangenen Jahr, nämlich um 3,37 parts per million (PPM). Die Konzentration liegt jetzt bei 422 PPM. Vor allem die sehr geringe CO2-Aufnahme durch Ozean- und Landsenken hat diese Steigerung verursacht https://taz.de/Hiobsbotschaft-fuers-Klima/!6040258/
1:08:50 Using BANK MONEY to create a mutual fund at low interest rates to pay off PREDATORY LOANS at high interest rates
for - search - google - results of interest returned for - DIY low cost aerogel insulation construction
search - google - results of interest returned for - DIY low cost aerogel insulation construction - search - https://www.google.com/search?q=DIY+low+cost+aerogel+insulation+construction&sca_esv=bd7a621486b420d8&sca_upv=1&biw=1920&bih=911&sxsrf=ADLYWIJbLVcmfHCe3shwB0ftDpM-CmnC0g%3A1727597242320&ei=ugr5ZtWjE6aGkdUP2ZjqoA8&ved=0ahUKEwjV6MWf2eeIAxUmQ6QEHVmMGvQ4ChDh1QMIDw&uact=5&oq=DIY+low+cost+aerogel+insulation+construction&gs_lp=Egxnd3Mtd2l6LXNlcnAiLERJWSBsb3cgY29zdCBhZXJvZ2VsIGluc3VsYXRpb24gY29uc3RydWN0aW9uMggQABiABBiiBDIIEAAYgAQYogQyCBAAGIAEGKIEMggQABiABBiiBEi7QVAAWJo-cAB4AJABAJgBkAOgAY0RqgEFMy01LjG4AQPIAQD4AQGYAgOgAtwImAMAkgcFMy0yLjGgB9MM&sclient=gws-wiz-serp - search results of interest returned - ResearchGate (PDF) Low cost silica aerogel production - ResearchGate Our group developed an alternative route for the silica aerogel production using low cost silica precursors and ambient pressure drying technique. - https://www.researchgate.net/publication/283581307_Low_cost_silica_aerogel_production - This is a chemical technique - Fraunhofer-Gesellschaft Sustainable, affordable building insulation with aerogels A sustainable, affordable mineral-based insulation material that is far more effective than options such as polystyrene. - https://www.fraunhofer.de/en/press/research-news/2023/may-2023/sustainable-affordable-building-insulation-with-aerogels.html
for - search - google - results returned - DIY agricultural waste low cost aerogel insulation for building construction
for - sustainable building - low cost building insulation - cellulose aerogel
for - sustainable building - rammed earth - example - China - low cost - people-built
Your application code should not be dealing with PID files, log redirection or other low-level concerns.
according to the Intergovernmental Panel on Climate Change’s (IPCC) 6th Assessment Report (AR6), US$384 billion has so far been spent on climate action in urban areas, representing just 10% of what is necessary to build low-carbon and climate-resilient cities.
for - stats - planetary emergency - 2024 - still low investment in cities
stats - planetary emergency - 2024 - still low investment in cities - IPCC 6th Assessment Report - US $384 billion invested globally in urban areas - This is 10% of what is necessary to build low-carbon and climate resilient cities
here you see a company with three different departments depicted in blue red and green
for - neuroscience - example - diverse and low density connections beats non-diverse and high connections
neuroscience - example diverse and low density connections vs non-diverse high density connections - having access to many diverse perspectives is a key enabler of good problem-solving and innovation
If the link you are trying to send is just some kind of harmless confirmation link (e.g. subscribe/unsubscribe from a newsletter), then at least use a form inside the web page to do the actual confirmation through a POST request (possibly also using a CSRF token), otherwise you will unequivocally end up with false positives.
Confirmations are a little more difficult, as senders really do want to keep the transaction as low friction as possible. Adding a confirm button may result in people abandoning the confirmation process.
I sort of take the easy way out and say well I know Earth history so maybe I'm 00:32:53 helping people by uh understanding the science of this stuff
for - educator - polycrisis - individual action - levers - climate and earth history specialists help with education
educator - earth climate history specialist can help with education about the past to help understand what we face in the present
climate education - low impact due to - ignoring perspectival knowing - and salience landscapes - It may help to look at the problem of education through the lens of Michael Levin's multi-scale competency architecture - https://hyp.is/FFxzRL2nEe6ghzeLcJGM7A/www.ncbi.nlm.nih.gov/pmc/articles/PMC10167196/ - Applied to cognitive and cultural evolution within the lifetime of a single individual (human) - The salience landscape of an individual can vary depending on their educational and cultural background - There are multiple categories of concepts, each with their own degree of salience: - immediate phenomenological experience - high salience - second hand, linguistically communicated experience - moderate and dependent on source - scientific reported phenomena - moderate, high or low, dependent on source and cultural / educational background - second hand, linguistically communicated experience - low, moderate or high, dependent on source and cultural / educational background - A key observation is that humans are evolved to detect specific environmental cue but miss many others - The rate of cultural evolution is so rapid that our biologically adapted processes cannot adapt quickly enough to the rapid cultural changes, resulting in the experience of "hyperobjects" - https://jonudell.info/h/facet/?max=100&expanded=true&user=stopresetgo&exactTagSearch=true&any=+hyperobject - education that is done haphazardly and in an adhoc manner will fail to discriminate between this large variety of salience landscape, with the overall impact of low educational impact
you can take these medications you can expose yourself to the risk of the medications 00:26:57 or or you can change the way you eat you can deal with the true underlying problem insulin resistance
for - health - heart - root cause of heart disease - lifestyle choices - dietary choice
health - heart - root causes of heart disease - lifestyle choices - dietary choice - root cause of insulin resistance is poor diet with too much sugar and carbs and other variables such as excessive alcohol - dietary changes can shift lipid particles to large, fluffy LD particles - high sugar and carbs is a main factor leading to insulin resistance
to - Root cause of insulin resistance - interview with Robert Lustig - https://hyp.is/l14UvjzwEe-cUVPwiO6lIg/docdrop.org/video/WVFMyzQE-4w/
here are so many loopholes in our current top AI Labs that we could literally have people who are infiltrating these companies and there's no way to even know what's going on because we don't have any true security 00:37:41 protocols and the problem is is that it's not being treated as seriously as it is
for - key insight - low security at top AI labs - high risk of information theft ending up in wrong hands
Overall, this alternate cri-teria of assessment (in relation to Rubin) is indeed tenable because,as Menand noted, by the mid-1960s “the whole high-low paradigm”would “end up in the dustbin of history,” replaced by a “culture ofsophisticated entertainment.”25
This would seem to be refuted by the thesis of Poor White Trash in which there was still low brow entertainment which only intensified over time into the social media era.
for - sustainable building - geodesic dome greenhouse tunnels - DIY - low cost
Die erste Komponente des Erdsystems ist durch die Klimakrise für immer verloren. Das arktische Sommereis wird von den kommenden Jahrzehnten an im September vollständig schmelzen. Dazu wird es auch kommen, wenn es gelingt, die Treibhausgasemissionen radikal zu reduzieren. Das ergibt eine Studie, die die Messungen der letzten Jahre berücksichtigt.
for - low cost CNC routers - Bobs CNC
Résumé de la vidéo [00:00:00][^1^][1] - [00:48:00][^2^][2] :
Cette vidéo est une conférence sur les low-tech, c'est-à-dire les technologies utiles, durables et accessibles, comme alternative à notre système de production et de consommation actuel. Elle présente les principes, les exemples et les enjeux des low-tech, ainsi que les recherches et les expérimentations menées par le Low-tech Lab et le Centre de sociologie de l'innovation.
Points forts : + [00:00:00][^3^][3] Introduction du cycle "Agir en temps de crise" * Présentation des partenaires et du thème * Présentation des intervenants Quentin Mateus et Morgan Meyer + [00:02:31][^4^][4] Définition et exemples de low-tech * Trois piliers : utile, durable, accessible * Exemples : toilettes sèches, capteur air chaud, four solaire, etc. * Changement de rapport à la technologie et aux besoins + [00:10:46][^5^][5] Diffusion et capitalisation des savoirs low-tech * Encyclopédie participative en ligne avec des tutoriels open source * Réseau de communautés locales qui se forment et s'entraident * Enquêtes auprès d'acteurs professionnels qui utilisent ou proposent des low-tech + [00:18:04][^6^][6] Recherches et analyses sociologiques sur les low-tech * Intérêt croissant des chercheurs et des institutions pour le sujet * Exemples de travaux sur l'ergonomie, l'agriculture paysanne, la boulangerie au four solaire, etc. * Réflexion sur l'innovation, la technologie, la transition et la société + [00:36:46][^7^][7] Questions du public et conclusion * Réponses sur les jeunes générations, le niveau européen, le rôle de l'industrie, etc. * Perspectives d'avenir et de développement des low-tech * Remerciements et annonce de la prochaine séance
Jochen Kopp, Jürgen Elsässer und noch ein paar andere verdienen sehr gut daran.
wenn geld euer einziges "argument" ist dann...<br /> danke, dass ihr "uns" in allen anderen punkten "recht" gebt : )
dass "big pharma" milliardenfach geld verdient an den chemischen waffen die sie produziert...?<br /> das ist wohl "nur whataboutism" und wer weisse kittel trägt und grinst, der muss gut sein, ne?<br /> wie war das, die grünen wollten cannabis legalisieren? oder hat "big pharma" doch "veto" gesagt?
aber spoiler: ich bin einzelgänger, autonom, und alle gruppen und promis sind mir grundsätzlich suspekt.<br /> weil "traukeinempromi". weil in der öffentlichkeit gibts nur "controlled opposition".<br /> die wenigen echten radikalos die ich interessant finde, sitzen im knast oder bleiben leise...
deswegen: ihr kämpft die ganze zeit nur gegen irgendwelche strohmänner (low hanging fruits)<br /> aber "echte gegner" sind schwer zu finden, auch auf den wohlfühl-"demos"...
dass es hier im forum politische zensur gibt, das stört euch wohl auch nicht?<br /> ist ja nicht euere meinung die zensiert wird...<br /> mir egal, es gibt ja genug andere seiten wie annas-archive.org
"was ist mit der realness? alle nur noch wellness..."
for - heating rooms with steam - hvac low tech - home improvement - steam heating
The model of Spotify in particular - paid tier alongside a free tier with ads - seems like the simplest sustainable solution I see. Having paid features is the most obvious way to make money, but you want to enable adoption as much as you can. It's the same idea as companies dangling "free trial" in front of you at every turn - in a competitive environment, you want to remove barriers for users to try your product or service. This is essentially the idea of a "loss leader" for a grocery store, or any business really.
Zusammenfassender Artikel über Studien zu Klimafolgen in der Antarktis und zu dafür relevanten Ereignissen. 2023 sind Entwicklungen sichtbar geworden, die erst für wesentlich später in diesem Jahrhundert erwartet worden waren. Der enorme und möglicherweise dauerhafte Verlust an Merreis ist dafür genauso relevant wie die zunehmende Instabilität des westantarktischen und möglicherweise inzwischen auch des ostantarktischen Eisschilds. https://www.theguardian.com/world/2023/dec/31/red-alert-in-antarctica-the-year-rapid-dramatic-change-hit-climate-scientists-like-a-punch-in-the-guts
for: climate solutions - low economic growth, Jason Hickel,
almost all wealthy countries now is dominated 00:13:37 by the car it's not about moving people it's about moving lumps of metal around with one person in them You' have to move away from that
Find a better bank
for: search for - low carbon bank
to
limitation
Die englische Regierung hat in der letzten Oktoberwoche 27 Lizenzen zur Öl- und Gasförderung in der Nordsee vergeben. George Monbiot konfrontiert diese Entscheidung mit aktuellen Erkenntnissen zum sechsten Massenaussterben und dem drohenden Zusammenbruch lebensunterstützender Systeme des Planeten https://www.theguardian.com/commentisfree/2023/oct/31/flickering-earth-systems-warning-act-now-rishi-sunak-north-sea
In der Repubblica stellt Jaime d'Alessandro fest, dass Italien dabei ist, den Kampf um ein neues Energiesystem und damit auch eine Erneuerung der Wirtschaft zu verlieren. Seit den 90ern befinde sich das Land im Stillstand. D'Alessandro beruft sich auf Studien zur besonderen Betroffenheit des Mittelmeerraums von der globalen Erhitzung und zur schon bald bevorstehenden Eisfreiheit der Arktis. https://www.repubblica.it/green-and-blue/2023/11/01/news/decarbonizzazione_greenblue_novembre-418935623/
Studie zur eisfreien Arktis: https://www.nature.com/articles/s41467-023-38511-8
Studie zur Erhitzung in Europa: doi:10.2760/93257
Die EU-Abgasnorm Euro 7 wird sich nur unwesentlich von der jetzigen Norm Euro 6 unterscheiden, so dass Autos weiterhin große Mengen an Stickoxiden emittieren dürfen. Die Verwässerung der Norm geht auf das Lobbying der Automobilindustrie zurück, die es als Gegenleistung dafür verlangte, dass sie die rasche Umstellung auf Elektromobilität unterstützt. https://www.theguardian.com/environment/2023/nov/07/eu-poised-to-water-down-new-car-pollution-rules-after-industry-lobbying
Dass mehr als um die Antarktis erreicht im September seine größte Ausdehnung. Die von Eis bedeckte Fläche dort war nie so gering wie in diesem September. Im Vergleich zu der Periode zwischen 1981 und 2010 ging sie etwa um die Fläche von Alaska zurück. Diese Entwicklung ist auch deshalb beunruhigend, weil sie erst 2016 einsetzte und das antarktische Meereis offenbar insgesamt in einen anderen Zustand geraten ist. https://www.nytimes.com/2023/10/04/climate/antarctic-sea-ice-record-low.html
so we take two uh things that whose size we know could be our thumbs it could be oranges could be poker chips and look at them have one twice as far away as the other first thing to think about is you know as far as our brain and our
Poker chip example really well explained at the Reality Distortion Kit at the stanford lecture
In Großbritannien verwässern Konservative wie Labour Party bereits beschlossene Dekarbonisierungsprogramme, um konservative Gruppen von Wähler:innen anzusprechen. Die Libération fasst die Entwicklung der letzten Monate zusammen. Die Polemik gegen die Ausweitung der Ultra Low Emission Zone in London und die Genehmigung vieler weiterer Öl und gasprojekte in der Nordsee sind besonders symptomatisch. https://www.liberation.fr/international/europe/au-royaume-uni-conservateurs-et-travaillistes-sacrifient-lecologie-par-opportunisme-politique-20230829_C4ROVOLBSFDVPMASEJSXN52XZQ/
contacting your city council members running for office yourself donating to projects like black space and getting involved in zoning board meetings that could help change the density and makeup of the 00:20:08 communities where you live
It’s no wonder that fewer than half of citizens can be bothered to vote
Reviewing wood-based solar-driven interfacial evaporators for desalination
Wood-Based Mesoporous Filter Decorated with Silver Nanoparticles for Water Purification
examples of lower protein (soft) wheats: - Sonora - Spelt - Soft White - Soft Red - Einkorn
good for pastries, cakes, cookies, etc.
civilizations have risen and Fallen based on their ability to manage their 00:08:45 scarce Water Resources we are no different
!- water boundary : technological assistance -low cost ocean water purification
get control over psychological stress oh yeah why is this so important well the the main problem is you have 00:16:15 high levels of cortisol when you're stressed out psychologically and it it's clear that people who have high levels of really high levels of stress uh are chronically ill
!- grateful list : low stress - stress increases cortisol which can age you
Taiwan is planning a satellite internet service amid China invasion fears after seeing how much Elon Musk's Starlink has helped in Ukraine
Aram Saroyam and, I believe, Jackson Maclow produced something similar. MacLow's The Pronouns was super important to me back in grad school.
reply to Bob Doto on https://www.reddit.com/r/antinet/comments/z3f8kb/comment/ixlocl7/?utm_source=reddit&utm_medium=web2x&context=3
Do you have something particular on Saroyam for this? I found The Pronouns by Jackson Mac Low, but only tangential hits on Saroyam.
Similar useful efforts, though not in as clear-cut card format are: * Project Zero's thinking routines: https://pz.harvard.edu/thinking-routines * Untools: https://untools.co/
In the interest of reducing warranty claims (which are much more expensive than that incremental manufacturing cost) carmakers are sizing the whole unit to reliably accommodate the worst case draw (driver turns everything on at the same time, at idle).
Low Carb Diet - Flipboard
Should You Go On a Low-Carb Diet?
Herman, B. (2021, July 12). Most unvaccinated people have low incomes. Axios. https://www.axios.com/covid-vaccines-low-income-poor-workers-58698275-0451-4158-a967-37189dbf673c.html
Feinmann, J. (2021). Covid-19: Global vaccine production is a mess and shortages are down to more than just hoarding. BMJ, 375, n2375. https://doi.org/10.1136/bmj.n2375
Cortellessa, E., & Wolfe, L. (2021, October 15). Why Is the U.S. Hoarding Hundreds of Millions of COVID Vaccines? Washington Monthly - Politics. https://washingtonmonthly.com/2021/10/15/why-is-the-u-s-hoarding-hundreds-of-millions-of-covid-vaccines/
Brunson EK, Schoch-Spana M, Carnes M, Hosangadi D, Long R, Ravi S, Taylor M, Trotochaud M, Veenema TG, on behalf of the CommuniVax Coalition. Carrying Equity in COVID-19 Vaccination Forward: Guidance Informed by Communities of Color. Baltimore, MD: Johns Hopkins Center for Health Security; 2021.
Vaccination of children aged 5 to 11 against Covid-19: Don’thesitate any longer – Académie nationale de médecine | Une institution dans son temps. (2022, January 25). https://www.academie-medecine.fr/vaccination-of-children-aged-5-to-11-against-covid-19-donthesitate-any-longer/?lang=en
Sample, I. (2022, January 25). Long Covid: Doctors find ‘antibody signature’ for patients most at risk. The Guardian. https://www.theguardian.com/society/2022/jan/25/doctors-find-antibody-signature-long-covid
Citation: Kirkpatrick, Keith. The Road to 6G. Communications of the ACM, September 2022, Vol. 65 No. 9, Pages 14-16 10.1145/3546959
Although it is early in the commercial rollout of 5G mobile networks, countries, companies and standards bodies are gearing up for what will be in the next version—so called “6G” mobile network. There are already experimental allocation of high frequency radio bands and testing that has occurred at about 100m distances. The high frequency will mean higher bandwidth, but over shorter distances. There are experiments to make passive graphene reflectors on common surfaces to help with propagation. What may come is a convergence of 6G with WiFi 6 to support connectivity from body-area networks to low earth orbit satellites.
Thanks for your making your first contribution to Cucumber, and welcome to the Cucumber committers team! You can now push directly to this repo and all other repos under the cucumber organization! In return for this generous offer we hope you will: Continue to use branches and pull requests. When someone on the core team approves a pull request (yours or someone else's), you're welcome to merge it yourself. Commit to setting a good example by following and upholding our code of conduct in your interactions with other collaborators and users. Join the community Slack channel to meet the rest of the team and make yourself at home. Don't feel obliged to help, just do what you can if you have the time and the energy. Ask if you need anything. We're looking for feedback about how to make the project more welcoming, so please tell us!
Energy efficiency has never been more crucial! The time to unleashing its massive potential has come
Will this conference debate rebound effects of efficiency? If not, it will not have the desirable net effect.
My linked In comments were:
Alessandro Blasi, will this conference address the rebound effect? In particular, Brockway et al. have done a 2021 meta-analysis of 33 research papers on rebound effects of energy efficiency efforts and conclude:
"...economy-wide rebound effects may erode more than half of the expected energy savings from improved energy efficiency. We also find that many of the mechanisms driving rebound effects are overlooked by integrated assessment and global energy models. We therefore conclude that global energy scenarios may underestimate the future rate of growth of global energy demand."
https://www.sciencedirect.com/science/article/pii/S1364032121000769?via%3Dihub
Unless psychological and sociological interventions are applied along with energy efficiency to mitigate rebound effects, you will likely and ironically lose huge efficiencies in the entire efficiency intervention itself.
Also, as brought up by other commentators, there is a difference between efficiency and degrowth. Intelligent degrowth may work, especially applied to carbon intensive areas of the economy and can be offset by high growth in low carbon areas of the economy.
Vaclav Smil is pessimistic about a green energy revolution replacing fossil fuels https://www.ft.com/content/71072c77-53b3-4efd-92ae-c92dc02f09ad, which opens up the door to serious consideration of degrowth, not just efficiency improvements. Perhaps the answer is in a combination of all of the above, including targeted degrowth.
Technology moves quickly and unexpectedly. At the time of Smil's book release, there was no low carbon cement. Now there is a promising breakthrough: https://www.cnbc.com/2022/04/28/carbon-free-cement-breakthrough-dcvc-put-55-million-into-brimstone.html
As researchers around the globe work feverishly to make low carbon breakthroughs, there is obviously no guarantee of when they will occur. In that case then, with only a few years to peak, it would seem the lowest risk pathway would be to prioritize the precautionary principle over a gambling pathway (such as relying on Negative Emissions Technology breakthroughs) and perhaps consider along with rebound effect conditioned efficiency improvements also include a strategy of at least trialing a temporary, intentional degrowth of high carbon industries / growth of low carbon industries.
Subramanian, S. V., & Kumar, A. (2021). Increases in COVID-19 are unrelated to levels of vaccination across 68 countries and 2947 counties in the United States. European Journal of Epidemiology, 36(12), 1237–1240. https://doi.org/10.1007/s10654-021-00808-7
Adam Kucharski. (2021, March 24). This is an interesting perspective on Taiwan (& glad it mentions data/privacy), although I’d like to see more references to what local officials were actually saying about approach in real-time, rather than what UK-based researchers later say it was: Https://t.co/FDu0mQoISh 1/ [Tweet]. @AdamJKucharski. https://twitter.com/AdamJKucharski/status/1374638777814167555
Julia Raifman. (2021, July 25). Policymakers are pointing fingers at “the unvaccinated” What if they gave them a hand instead? - Bring vax & food to workplaces, schools, homes -Fund local doctors, including pediatricians, to call patients & deliver vax—Learn from success of Indian Health Service approach [Tweet]. @JuliaRaifman. https://twitter.com/JuliaRaifman/status/1419288641885593604
Capybara can get us part of the way there. It allows us to work with an API rather than manipulating the HTML directly, but what it provides isn't an application specific API. It gives us low-level API methods like find, fill_in, and click_button, but it doesn't provide us with high-level methods to do things like "sign in to the app" or "click the Dashboard item in the navigation bar".
Mckeever, A. (n.d.). COVID-19 variants will keep coming until everyone can access vaccines. Retrieved February 20, 2022, from https://www.nationalgeographic.com/science/article/covid-19-variants-will-keep-coming-until-everyone-can-access-vaccines
Zhao, S., Shibata, K., Hellyer, P. J., Trender, W., Manohar, S., Hampshire, A., & Husain, M. (2022). Rapid vigilance and episodic memory decrements in COVID-19 survivors. Brain Communications, 4(1), fcab295. https://doi.org/10.1093/braincomms/fcab295
Kirby, J. (2021, December 23). Omicron collides with a struggling global vaccination campaign. Vox. https://www.vox.com/22846774/omicron-global-vaccines-covronavirus-covid-19
DrPH, M. D. H., M. D. (2022, January 11). The Folly of School Openings as a Zero-Sum Game. The American Prospect. https://prospect.org/api/content/4a1fc36e-7263-11ec-9e7d-12f1225286c6/
Nancy Baxter MD PhD. (2022, January 6). Fantastic reassurance for parents. Australian kids it’s time for your jab!!!! [Tweet]. @enenbee. https://twitter.com/enenbee/status/1479018476756881411
Biden officials now fear booster programs will limit global vaccine supply. (n.d.). POLITICO. Retrieved 3 January 2022, from https://www.politico.com/news/2021/12/31/biden-novavax-production-covid-omicron-526283
As described and developed by Riva and Wiederhold (2020) we suggest that the use of a low-cost spherical, video-based virtual reality mindfulness intervention could reduce the psychological burden of COVID-19 for autistic people, alongside a developed package of at-home educational and support materials to empower families/caregivers delivered via an online eLearning platform to support effective implementation.
low-end approach, as we rally for it
Mahase, E. (2021). Covid-19: Vaccine uptake during pregnancy has increased but deprived areas lag behind, data show. BMJ, 375, n2932. https://doi.org/10.1136/bmj.n2932
ReconfigBehSci. (2021, November 4). RT @DrTedros: We continue to hear excuses about why low-income countries have only received 0.4% of #COVID19 vaccines: 1. They can’t absorb… [Tweet]. @SciBeh. https://twitter.com/SciBeh/status/1456588731155165189
Schreiber, M. (2021, October 16). US throws out millions of doses of Covid vaccine as world goes wanting. The Guardian. https://www.theguardian.com/world/2021/oct/16/us-throws-out-millions-doses-covid-vaccine-world-shortages
Critical to historical and ongoing carbon lock-in has been the pervasive failure in industrial, modern societies to imagine desirable ways of living that are neither wedded to the carbon economy nor dependent on narratives of progress reliant on perpetual economic growth (see Section 4.1). This scarcity of plausible imaginaries underpins many of the factors discussed in this article and persists for a number of interconnected reasons.
It is critical to create stories and narratives of what an ecologically regenerative society living within planetary boundaries looks like at a local level that we are familiar with. We need enliven and enact futures studies and backcast to our current reality.
Imaginative storytelling by the artists is critical at this time so that we can imagine and not be so afraid of what a transformed future looks like. Indeed, if we do it right, it can be FAR BETTER than our current unbalanced civilization.
‘They rushed the process’: Vaccine maker’s woes hamper global inoculation campaign. (n.d.). POLITICO. Retrieved 25 October 2021, from https://www.politico.com/news/2021/10/19/novavax-vaccine-rush-process-global-campaign-516298
Groff, D., Sun, A., Ssentongo, A. E., Ba, D. M., Parsons, N., Poudel, G. R., Lekoubou, A., Oh, J. S., Ericson, J. E., Ssentongo, P., & Chinchilli, V. M. (2021). Short-term and Long-term Rates of Postacute Sequelae of SARS-CoV-2 Infection: A Systematic Review. JAMA Network Open, 4(10), e2128568. https://doi.org/10.1001/jamanetworkopen.2021.28568
ReconfigBehSci. (2021, July 6). RT @mvankerkhove: I’m struggling with how best to stress how fragile the global situation is, so I’ll be blunt: Each week >2.6 million cas… [Tweet]. @SciBeh. https://twitter.com/SciBeh/status/1412416348676820992
The Death Rate of Covid-19 in Developing Countries | by Gideon M-K; Health Nerd | Oct, 2021 | Elemental. (n.d.). Retrieved October 7, 2021, from https://elemental.medium.com/the-death-rate-of-covid-19-in-developing-countries-cc17a55c73cd
Maxmen, Amy. ‘The Fight to Manufacture COVID Vaccines in Lower-Income Countries’. Nature 597, no. 7877 (15 September 2021): 455–57. https://doi.org/10.1038/d41586-021-02383-z.
Glenza, J. (2021, September 27). How the US vaccine effort derailed and why we shouldn’t be surprised. The Guardian. https://www.theguardian.com/us-news/2021/sep/27/us-vaccine-effort-derailed
Skinner, A., & Raifman, J. (n.d.). Biden’s pandemic plan overlooks mask mandates and vulnerable populations. The Conversation. Retrieved 13 September 2021, from http://theconversation.com/bidens-pandemic-plan-overlooks-mask-mandates-and-vulnerable-populations-167667
Recent studies found when teachers gave trainee pharmacists frequent low-stakes questions with feedback, students performed better on tests and were more satisfied with the course.
references for this?
Dvir Aran. (2021, July 27). You’ve probably seen reports from Israel on low vaccine effectiveness in this wave. Is it because of Delta? Waning immunity? We think the reason is mostly that we got the denominator wrong. Https://t.co/yloh5Vo9Xi [Tweet]. @dvir_a. https://twitter.com/dvir_a/status/1420059124700700677
CoVaxxy. (n.d.). Retrieved 29 July 2021, from https://osome.iu.edu/tools/covaxxy
Kozlov, M. (2021). COVID vaccines have higher approval in less-affluent countries. Nature. https://doi.org/10.1038/d41586-021-01987-9
Leah McElrath 🏳️🌈. (2021, July 12). One reason the right-wing outrage machine is focused on attacking Biden’s plan for door-to door outreach isn’t because they actually fear confiscation of guns or Bibles. It’s because they don’t want poor people to have access to life-saving vaccinations. Https://t.co/GnZMmlBfqK [Tweet]. @leahmcelrath. https://twitter.com/leahmcelrath/status/1414660179061264388
CDC. (2020, February 11). Coronavirus Disease 2019 (COVID-19). Centers for Disease Control and Prevention. https://www.cdc.gov/coronavirus/2019-ncov/more/science-and-research/surface-transmission.html
Rodebaugh, T., Frumkin, M., Garg, R., LaGesse, L., McQueen, A., & Kreuter, M. (2021). Perceived vaccine safety over time in a vaccine hesitant sample: Impact of pausing due to safety concerns. PsyArXiv. https://doi.org/10.31234/osf.io/csfte
Lacassagne, D., Béna, J., & Corneille, O. (2021). Is Earth a Perfect Square? Repetition Increases the Perceived Truth of Highly Implausible Statements. PsyArXiv. https://doi.org/10.31234/osf.io/fce8z
Nakamura-Pereira, M., Andreucci, C. B., Menezes, M. de O., Knobel, R., & Takemoto, M. L. S. (2020). Worldwide maternal deaths due to COVID-19: A brief review. International Journal of Gynecology & Obstetrics, 151(1), 148–150. https://doi.org/10.1002/ijgo.13328
Hussaini, Syed M. Qasim. “A Prescription for Fair Housing during the COVID-19 Pandemic.” The Lancet Infectious Diseases 0, no. 0 (May 25, 2021). https://doi.org/10.1016/S1473-3099(21)00257-7.
From experience I can say that professionals will be more forgiving if you go through things at a basic level than amateurs who have no idea what you're talking about, so people will probably err on the side of caution and not assume the customer has a high level of expertise.
select * from usersWe can preview the data, and since that looks good, let's add a table to the canvas to display it. When we do this, it helpful pre-fills the data from our last query.
Vaccine confidence fears as under-30s in UK offered AstraZeneca alternative. (2021, April 7). The Guardian. http://www.theguardian.com/society/2021/apr/07/under-30s-in-uk-should-be-offered-alternative-covid-vaccine-to-astrazeneca-jab-says-regulator
Ozawa, S., Clark, S., Portnoy, A., Grewal, S., Brenzel, L., & Walker, D. G. (2016). Return On Investment From Childhood Immunization In Low- And Middle-Income Countries, 2011–20. Health Affairs, 35(2), 199–207. https://doi.org/10.1377/hlthaff.2015.1086
Anthes, E. (2021, April 8). Has the Era of Overzealous Cleaning Finally Come to an End? The New York Times. https://www.nytimes.com/2021/04/08/health/coronavirus-hygiene-cleaning-surfaces.html
Mullard, A. (2020). How COVID vaccines are being divvied up around the world. Nature. https://doi.org/10.1038/d41586-020-03370-6
Yang, K.-C., Pierri, F., Hui, P.-M., Axelrod, D., Torres-Lugo, C., Bryden, J., & Menczer, F. (2020). The COVID-19 Infodemic: Twitter versus Facebook. ArXiv:2012.09353 [Cs]. http://arxiv.org/abs/2012.09353
Game looks great, ignore the 1 score review. Disgruntle co worker, perhaps? Perhaps a jealous fellow pupil... When all ither reviews are 7 or more and there's one review with a 1 score and a novel saying just why they thinks... you know something's not quite right. Hopefully this will go some way to normalising the score.
This game is severely underrated. I genuinely do not understand all of the negative backlash it gets. It's a solid scribblenauts game with a ton of replay value and a way to past the time with friends. It's not perfect, as the motion controls do drag it down slightly, and some of the minigames offered are less than great, however it does not deserve the overwhelming hate it gets. It's a solid title in the series.
I truly TRULY do not get the hate of this game. I am in my 40's. Played with 2 boys, 10 and 12. And we all had an amazing time playing the board game version of this for an hour. When it was over, the boys said, LETS PLAY IT AGAIN! The game is deep. Also has original sandbox mode with new levels. When they were about to leave, I surprise them by giving them the game as a gift. They were SO excited (and, I will simply buy another one for myself) I am simply BAFFLED at the hate and negativity for this game. Sure, a couple of the mini-games are not top notch. But there are many great ones within. At $40, solid deal. At $20 sale in most places, you have got to be kidding me. Steal it at that price. If you like Scribblenauts or are new to the Scribblenauts world, just buy it.
Unstoppable CrapsterThis is crap shovelwareRe-skinned exact same other 10 games this sad excuse for a developer been farting out.No sound, no gameplay, no nothing.Can't press two buttons at the same time like jump and move.Plays like sonic the hedgehog just had sex with painbrushWhile having a stroke, heart attack and anal prolapse at the same time.Don't support this developer.Steam get your sh!t together, start filtering out this crap.
We are continuing an overhaul of our default startup editor in order to provide relevant extension-contributed tips and walkthroughs, intended to make both core VS Code features and extension contributions more approachable to new users.
A Low Bar to Entry, and then What?There is an interesting tension between making something accessible and making it boring. Lowering the barrier of entry is a good thing, but if all you do is low-bar stuff, you end up losing the people again that you managed to attract. There needs to be a path forward beyond the entry level.
Vaughan, A. (n.d.). Covid-19 vaccine hesitancy in poorest countries is lower than in US. New Scientist. Retrieved 25 March 2021, from https://www.newscientist.com/article/2271540-covid-19-vaccine-hesitancy-in-poorest-countries-is-lower-than-in-us/
This is yet another one of the sad, sad list of excellent games that Asmodee contracted someone to digitize for the least amount of money possible, and it shows. It's a pity, because they're excellent games, but if you don't have the patience for them, it's infuriating to go through all those hoops. Any user doing a QA session for 10 minutes would have told them most of these.
Tbh I find the 44 critic metascore really appalling so made an account just to leave this review.
Lawton, Graham. ‘Is the Coronavirus Evolving and Will It Become More or Less Deadly?’ New Scientist. Accessed 25 February 2021. https://www.newscientist.com/article/mg24833053-600-is-the-coronavirus-evolving-and-will-it-become-more-or-less-deadly/.
Microlibraries are easier to understand, develop and test. They make it easier for new people to get involved and contribute. They reduce the distinction between a “core module” and a “plugin”, and increase the pace of development in D3 features.
Personal loans are one of the costliest loans in the market with relatively high interest rates. Get easy low interest personal loans in Hyderabad with Loans Paradise. Apply now
Admittedly, both the signature and the return values of invoke feel a bit clumsy. That’s becaus we’re currently working with the low-level interfaces.
independently demonstrated
may indicate low-hanging fruit in the field, methinks
Geddes, L. (2020, November 15). Damage to multiple organs recorded in ‘long Covid’ cases. The Guardian. https://www.theguardian.com/world/2020/nov/15/damage-to-multiple-organs-recorded-in-long-covid-cases
Hernández-Díaz, S., Schisterman, E. F., & Hernán, M. A. (2006). The Birth Weight “Paradox” Uncovered? American Journal of Epidemiology, 164(11), 1115–1120. https://doi.org/10.1093/aje/kwj275
i dont know why everyone wants to **** on everything that is not a "AAA" game, its not in its perfect state, but far from deserve a 3, i will give it a 9 so it counters the "just hate
But all of these attempts misunderstand why the Open Source ecosystem is successful as a whole. The ecosystem of fairly standard licenses provides a level playing field that allows collaboration with low friction, and produces massive value for everyone involved – both to those that contribute and to those that don't. It is not without problems (there are many essential but unsexy projects that are struggling with funding), but introducing more friction won't improve the success of this ecosystem – it will just lead to some parts of the ecosystem to break off.
I wanted to use GitHub Gists which are a wonderfully low friction way of sharing code
Everything Lives in GitWith a Jamstack project, anyone should be able to do a git clone, install any needed dependencies with a standard procedure (like npm install), and be ready to run the full project locally. No databases to clone, no complex installs. This reduces contributor friction, and also simplifies staging and testing workflows.
Bauer, B., Larsen, K. L., Caulfield, N., Elder, D., Jordan, S., & Capron, D. (2020). Review of Best Practice Recommendations for Ensuring High Quality Data with Amazon’s Mechanical Turk. PsyArXiv. https://doi.org/10.31234/osf.io/m78sf
Dennis, A., Wamil, M., Kapur, S., Alberts, J., Badley, A. D., Decker, G. A., Rizza, S. A., Banerjee, R., Banerjee, A., & Investigators, O. behalf of the C. study. (2020). Multi-organ impairment in low-risk individuals with long COVID. MedRxiv, 2020.10.14.20212555. https://doi.org/10.1101/2020.10.14.20212555
Brown, R. C. H., Kelly, D., Wilkinson, D., & Savulescu, J. (2020). The scientific and ethical feasibility of immunity passports. The Lancet Infectious Diseases, 0(0). https://doi.org/10.1016/S1473-3099(20)30766-0
Hone, T., Mirelman, A. J., Rasella, D., Paes-Sousa, R., Barreto, M. L., Rocha, R., & Millett, C. (2019). Effect of economic recession and impact of health and social protection expenditures on adult mortality: A longitudinal analysis of 5565 Brazilian municipalities. The Lancet Global Health, 7(11), e1575–e1583. https://doi.org/10.1016/S2214-109X(19)30409-7
Nkengasong, J. N., Ndembi, N., Tshangela, A., & Raji, T. (2020). COVID-19 vaccines: How to ensure Africa has access. Nature, 586(7828), 197–199. https://doi.org/10.1038/d41586-020-02774-8
The unique Umami characteristic of Dried Shiitake is Guanylate. This Umami component is created during the drying and rehydrating process, and not available in Fresh Shiitake.
Interesting. This makes it likely that shiitake extract is the type of mushroom used in mushroom seasoning or takii. Most products just say "mushroom powder" and "mushroom extract". Some products list "shiitake powder" and "mushroom extract". I can find no product listing the type of extract used.
Edit: The linked table shows dried shiitake has the highest guanylate and glutamate of the listed mushrooms. Given that the website is about umami generally, this dramatically increases the odds that it is shiitake extract used in said products. It implies that dried shiitake may be the most umami mushroom (though no other dried mushroom is listed).
IZA – Institute of Labor Economics. ‘COVID-19 and the Labor Market’. Accessed 6 October 2020. https://covid-19.iza.org/publications/dp13644/.
IZA – Institute of Labor Economics. ‘COVID-19 and the Labor Market’. Accessed 6 October 2020. https://covid-19.iza.org/publications/dp13643/.
IZA – Institute of Labor Economics. ‘COVID-19 and the Labor Market’. Accessed 6 October 2020. https://covid-19.iza.org/publications/dp13641/.
IMO, the conditional needs to be added to detach to fix all manifestations of this error.
Torres, Irene, Osvaldo Artaza, Barbara Profeta, Cristina Alonso, and JaHyun Kang. ‘COVID-19 Vaccination: Returning to WHO’s Health For All’. The Lancet Global Health 0, no. 0 (25 September 2020). https://doi.org/10.1016/S2214-109X(20)30415-0.
Did you know that you can create a Svelte component and with almost no extra steps distribute- and use it like any classic old Javascript library through a global constructor (let myComponent = new MyComponent())?