av

Potpourri ou choix d'airs, romances et marches tirées des opéra Allemandes et Italiennes les plus applaudis arrangées pour la guitarre avec accompagnement d'une flûte ou violon ; oeuvre périodique

Autor: Call, Leonhard von, 1767-1815
Erschienen 1810
BSB-Signatur 4 Mus.pr. 2011.2792

URN: urn:nbn:de:bvb:12-bsb11142493-8
URL: http://reader.digitale-sammlungen.de/de/fs1/object/display/bsb11142493_00001.html/





av

Coordinated behaviors of artificial micro/nanomachines: from mutual interactions to interactions with the environment

Chem. Soc. Rev., 2020, Advance Article
DOI: 10.1039/C9CS00877B, Review Article
Hong Wang, Martin Pumera
The interactions leading to coordinated behaviors of artificial micro/nanomachines are reviewed.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




av

Near-infrared laser driven white light continuum generation: materials, photophysical behaviours and applications

Chem. Soc. Rev., 2020, Advance Article
DOI: 10.1039/C9CS00646J, Review Article
Jianhong Wu, Guojun Zheng, Xiaofeng Liu, Jianrong Qiu
The current understanding, applications and future perspectives on near-infrared laser driven white light continuum generation in different materials are reviewed.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




av

Audio processes : musical analysis, modification, synthesis, and control / David Creasey

Creasey, D. J. (David J.), author




av

Australian theatre after the New Wave : policy, subsidy and the alternative artist / by Julian Meyrick

Meyrick, Julian, author




av

Ivo van Hove : from Shakespeare to David Bowie / edited by Susan Bennett and Sonia Massai




av

Paul Kelly : the essays / edited by David Leser




av

The art of producing : how to create great audio projects / David Gibson and Maestro B. Curtis

Gibson, David, 1957- author




av

Musical imaginations : multidisciplinary perspectives on creativity, performance, and perception / edited by David J. Hargreaves, Dorothy Miell, Raymond A.R. MacDonald




av

Trailer for “Navy Blue”

We’re excited to announce the trailer for Steve Meagher’s Navy Blue! Broken hymns. Desperate prayers. Tales of first heroes. Stories of the street. The poems in Navy Blue walk the middle ground between sorrow and salvation, tackling themes of devotion, regret, innocence lost and mortality through an array of dark landscapes and narratives of the dispossessed. Written in […]




av

“Where Have All the Poets Gone?” Documentary Featuring Elana Wolff and Malca Litovitz!

All you poetry lovers, check out this wonderful documentary that will be airing on the CBC website March 25th! In this CBC Radio One Special Program, Where Have All the Poets Gone? Sook-Yin Lee gives “a surprising look at the conditions that inspire Canadians to express themselves through poetry.” Here’s a blurb about the documentary: […]




av

David Huebert Wins the CBC Short Story Competition

Congratulations to David Huebert, the winner of this year’s CBC Short Story Prize! David won this year’s short story competition with a story entitled “Enigma”, which is about a woman who must end the life of her beloved horse. As he explains in a recent article by David Burke, the idea for the story came […]




av

Responsible JavaScript: Part III

You’ve done everything you thought was possible to address your website’s JavaScript problem. You relied on the web platform where you could. You sidestepped Babel and found smaller framework alternatives. You whittled your application code down to its most streamlined form possible. Yet, things are just not fast enough. When websites fail to perform the way we as designers and developers expect them to, we inevitably turn on ourselves:

“What are we failing to do?” “What can we do with the code we have written?” “Which parts of our architecture are failing us?”

These are valid inquiries, as a fair share of performance woes do originate from our own code. Yet, assigning blame solely to ourselves blinds us to the unvarnished truth that a sizable onslaught of our performance problems comes from the outside.

When the third wheel crashes the party

Convenience always has a price, and the web is wracked by our collective preference for it.  JavaScript, in particular, is employed in a way that suggests a rapidly increasing tendency to outsource whatever it is that We (the first party) don’t want to do. At times, this is a necessary decision; it makes perfect financial and operational sense in many situations.

But make no mistake, third-party JavaScript is never cheap. It’s a devil’s bargain where vendors seduce you with solutions to your problem, yet conveniently fail to remind you that you have little to no control over the side effects that solution introduces. If a third-party provider adds features to their product, you bear the brunt. If they change their infrastructure, you will feel the effects of it. Those who use your site will become frustrated, and they aren’t going to bother grappling with an intolerable user experience. You can mitigate some of the symptoms of third parties, but you can’t cure the ailment unless you remove the solutions altogether—and that’s not always practical or possible.

In this installment of Responsible JavaScript, we’ll take a slightly less technical approach than in the previous installment. We are going to talk more about the human side of third parties. Then, we’ll go down some of the technical avenues for how you might go about tackling the problem.

Hindered by convenience

When we talk about the sorry state of the web today, some of us are quick to point out the role of developer convenience in contributing to the problem. While I share the view that developer convenience has a tendency to harm the user experience, they’re not the only kind of convenience that can turn a website into a sluggish, janky mess.

Operational conveniences can become precursors to a very thorny sort of technical debt. These conveniences are what we reach for when we can’t solve a pervasive problem on our own. They represent third-party solutions that address problems in the absence of architectural flexibility and/or adequate development resources.

Whenever an inconvenience arises, that is the time to have the discussion around how to tackle it in a way that’s comprehensive. So let’s talk about what it looks like to tackle that sort of scenario from a more human angle.

The problem is pain

The reason third parties come into play in the first place is pain. When a decision maker in an organization has felt enough pain around a certain problem, they’re going to do a very human thing, which is to find the fastest way to make that pain go away.

Markets will always find ways to address these pain points, even if the way they do so isn’t sustainable or even remotely helpful. Web accessibility overlays—third-party scripts that purport to automatically fix accessibility issues—are among the worst offenders. First, you fork over your money for a fix that doesn’t fix anything. Then you pay a wholly different sort of price when that “fix” harms the usability of your website. This is not a screed to discredit the usefulness of the tools some third-party vendors provide, but to illustrate how the adoption of third-party solutions happens, even those that are objectively awful

A Chrome performance trace of a long task kicked off by a third party’s web accessibility overlay script. The task occupies the main thread for roughly 600 ms on a 2017 Retina MacBook.

So when a vendor rolls up and promises to solve the very painful problem we’re having, there’s a good chance someone is going to nibble. If that someone is high enough in the hierarchy, they’ll exert downward pressure on others to buy in—if not circumvent them entirely in the decision-making process. Conversely, adoption of a third-party solution can also occur when those in the trenches are under pressure and lack sufficient resources to create the necessary features themselves.

Whatever the catalyst, it pays to gather your colleagues and collectively form a plan for navigating and mitigating the problems you’re facing.

Create a mitigation plan

Once people in an organization have latched onto a third-party solution, however ill-advised, the difficulty you’ll encounter in forcing a course change will depend on how urgent a need that solution serves. In fact, you shouldn’t try to convince proponents of the solution that their decision was wrong. Such efforts almost always backfire and can make people feel attacked and more resistant to what you’re telling them. Even worse, those efforts could create acrimony where people stop listening to each other completely, and that is a breeding ground for far worse problems to develop.

Grouse and commiserate amongst your peers if you must—as I myself have often done—but put your grievances aside and come up with a mitigation plan to guide your colleagues toward better outcomes. The nooks and crannies of your specific approach will depend on the third parties themselves and the structure of the organization, but the bones of it could look like the following series of questions.

What problem does this solution address?

There’s a reason why a third-party solution was selected, and this question will help you suss out whether the rationale for its adoption is sound. Remember, there are times decisions are made when all the necessary people are not in the room. You might be in a position where you have to react to the aftermath of that decision, but the answer to this question will lead you to a natural follow-up.

How long do we intend to use the solution?

This question will help you identify the solution’s shelf life. Was it introduced as a bandage, with the intent to remove it once the underlying problem has been addressed, such as in the case of an accessibility overlay? Or is the need more long-term, such as the data provided by an A/B testing suite? The other possibility is that the solution can never be effectively removed because it serves a crucial purpose, as in the case of analytics scripts. It’s like throwing a mattress in a swimming pool: it’s easy to throw in, but nigh impossible to drag back out.

In any case, you can’t know if a third-party script is here to stay if you don’t ask. Indeed, if you find out the solution is temporary, you can form a plan to eventually remove it from your site once the underlying problem it addresses has been resolved.

Who’s the point of contact if issues arise?

When a third-party solution is put into place, someone must be the point of contact for when—not if—issues arise.

I’ve seen what happens (far too often) when a third-party script gets out of control. For example, when a tag manager or an A/B testing framework’s JavaScript grows slowly and insidiously because marketers aren’t cleaning out old tags or completed A/B tests. It’s for precisely these reasons that responsibility needs to be attached to a specific person in your organization for third-party solutions currently in use on your site. What that responsibility entails will differ in every situation, but could include:

  • periodic monitoring of the third-party script’s footprint;
  • maintenance to ensure the third-party script doesn’t grow out of control;
  • occasional meetings to discuss the future of that vendor’s relationship with your organization;
  • identification of overlaps of functionality between multiple third parties, and if potential redundancies can be removed;
  • and ongoing research, especially to identify speedier alternatives that may act as better replacements for slow third-party scripts.

The idea of responsibility in this context should never be an onerous, draconian obligation you yoke your teammates with, but rather an exercise in encouraging mindfulness in your colleagues. Because without mindfulness, a third-party script’s ill effects on your website will be overlooked until it becomes a grumbling ogre in the room that can no longer be ignored. Assigning responsibility for third parties can help to prevent that from happening.

Ensuring responsible usage of third-party solutions

If you can put together a mitigation plan and get everyone on board, the work of ensuring the responsible use of third-party solutions can begin. Luckily for you, the actual technical work will be easier than trying to wrangle people. So if you’ve made it this far, all it will take to get results is time and persistence.

Load only what’s necessary

It may seem obvious, but load only what’s necessary. Judging by the amount of unused first-party JavaScript I see loaded—let alone third-party JavaScript—it’s clearly a problem. It’s like trying to clean your house by stuffing clutter into the closets. Regardless of whether they’re actually needed, it’s not uncommon for third-party scripts to be loaded on every single page, so refer to your point of contact to figure out which pages need which third-party scripts.

As an example, one of my past clients used a popular third-party tool across multiple brand sites to get a list of retailers for a given product. It demonstrated clear value, but that script only needed to be on a site’s product detail page. In reality, it was frequently loaded on every page. Culling this script from pages where it didn’t belong significantly boosted performance for non-product pages, which ostensibly reduced the friction on the conversion path.

Figuring out which pages need which third-party scripts requires you to do some decidedly untechnical work. You’ll actually have to get up from your desk and talk to the person who has been assigned responsibility for the third-party solution you’re grappling with. This is very difficult work for me, but it’s rewarding when good-faith collaboration happens, and good outcomes are realized as a result.

Self-host your third-party scripts

This advice isn’t a secret by any stretch. I even touched on it in the previous installment of this series, but it needs to be shouted from the rooftops at every opportunity: you should self-host as many third-party resources as possible. Whether this is feasible depends on the third-party script in question.

Is it some framework you’re grabbing from Google’s hosted libraries, cdnjs, or other similar provider? Self-host that sucker right now.

Casper found a way to self-host their Optimizely script and significantly reduced their start render time for their trouble. It really drives home the point that a major detriment of third-party resources is the fact that their mere existence on other servers is one of the worst performance bottlenecks we encounter.

If you’re looking to self-host an analytics solution or a similar sort of script, there’s a higher level of difficulty to contend with to self-host it. You may find that some third-party scripts simply can’t be self-hosted, but that doesn’t mean it isn’t worth the trouble to find out. If you find that self-hosting isn’t an option for a third-party script, don’t fret. There are other mitigations you can try.

Mask latency of cross-origin connections

If you can’t self-host your third-party scripts, the next best thing is to preconnect to servers that host them. WebPageTest’s Connection View does a fantastic job of showing you which servers your site gathers resources from, as well as the latency involved in establishing connections to them.

WebPageTest’s Connection View shows all the different servers a page requests resources from during load.

Preconnections are effective because they establish connections to third-party servers before the browser would otherwise discover them in due course. Parsing HTML takes time, and parsers are often blocked by stylesheets and other scripts. Wherever you can’t self-host third-party scripts, preconnections make perfect sense.

Maybe don’t preload third-party scripts

Preloading resources is one of those things that sounds fantastic at first—until you consider its potential to backfire, as Andy Davies points out. If you’re unfamiliar with preloading, it’s similar to preconnecting but goes a step further by instructing the browser to fetch a particular resource far sooner than it ordinarily would.

The drawback of preloading is that while it’s great for ensuring a resource gets loaded as soon as possible, it changes the discovery order of that resource. Whenever we do this, we’re implicitly saying that other resources are less important—including resources crucial to rendering or even core functionality.

It’s probably a safe bet that most of your third-party code is not as crucial to the functionality of your site as your own code. That said, if you must preload a third-party resource, ensure you’re only doing so for third-party scripts that are critical to page rendering.

If you do find yourself in a position where your site’s initial rendering depends on a third-party script, refer to your mitigation plan to see what you can do to eliminate or ameliorate your dependence on it. Depending on a third party for core functionality is never a good position to be in, as you’re relinquishing a lot of control to others who might not have your best interests in mind.

Lazy load non-essential third-party scripts

The best request is no request. If you have a third-party script that doesn’t need to be loaded right away, consider lazy loading it with an Intersection Observer. Here’s what it might look like to lazy load a Facebook Like button when it’s scrolled into the viewport:


let loadedFbScript = false;

const intersectionListener = new IntersectionObserver(entries => {
  entries.forEach(entry => {
    if ((entry.isIntersecting || entry.intersectionRatio) && !loadedFbScript) {
      const scriptEl = document.createElement("script");

      scriptEl.defer = true;
      scriptEl.crossOrigin = "anonymous";
      scriptEl.src = "https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v3.0";
      scriptEl.onload = () => {
        loadedFbScript = true;
      };
      
      document.body.append(scriptEl);
    }
  });
});

intersectionListener.observe(document.querySelector(".fb-like"));

In the above snippet, we first set a variable to track whether we’ve loaded the Facebook SDK JavaScript. After that, an IntersectionListener is created that checks whether the observed element is in the viewport, and whether the Facebook SDK has been loaded. If the SDK JavaScript hasn’t been loaded, a reference to it is injected into the DOM, which will kick off a request for it.

You’re not going to be able to lazy load every third-party script. Some of them simply need to do their work at page load time, or otherwise can’t be deferred. Regardless, do the detective work to see if it’s possible to lazy load at least some of your third-party JavaScript.

One of the common concerns I hear from coworkers when I suggest lazy loading third-party scripts is how it can delay whatever interactions the third party provides. That’s a reasonable concern, because when you lazy load anything, a noticeable delay may occur as the resource loads. You can get around this to some extent with resource prefetching. This is different than preloading, which we discussed earlier. Prefetching consumes a comparable amount of data, yes, but prefetched resources are given lower priority and are less likely to contend for bandwidth with critical resources.

Staying on top of the problem

Keeping an eye on your third-party JavaScript requires mindfulness bordering on hypervigilance. When you recognize poor performance for the technical debt that it truly is, you’ll naturally slip into a frame of mind where you’ll recognize and address it as you would any other kind of technical debt.

Staying on top of third parties is refactoring—a sort that requires you to periodically perform tasks such as cleaning up tag managers and A/B tests, consolidating third-party solutions, eliminating any that are no longer needed, and applying the coding techniques discussed above. Moreover, you’ll need to work with your team to address this technical debt on a cyclical basis. This kind of work can’t be automated, so yes, you’ll need to knuckle down and have face-to-face, synchronous conversations with actual people.

If you’re already in the habit of scheduling “cleanup sprints” on some interval, then that is the time and space for you to address performance-related technical debt, regardless of whether it involves third- or first-party code. There’s a time for feature development, but that time should not comprise the whole of your working hours. Development shops that focus only on feature development are destined to be wholly consumed by the technical debt that will inevitably result.

So it will come to pass that in the fourth and final installment of this series we’ll discuss what it means to do the hard work of using JavaScript responsibly in the context of process. Therein, we’ll explore what it takes to unite your organization under the banner of making your website faster and more accessible, and therefore more usable for everyone, everywhere.




av

Navy ship with 698 evacuees departs from Male for Kochi

Indian envoy lauds Maldives govt. for its ‘wonderful support and helping hand’ in evacuation




av

Coronavirus | 30 more BSF men test positive

Six of them are in Delhi and 24 others in Tripura




av

Sanofi to enroll thousands for its coronavirus vaccine trials

French drugmaker Sanofi SA said it plans to enroll thousands of subjects globally for trials of an experimental vaccine for the coronavirus it is developing with GlaxoSmithKline Plc, and that it has started to discuss advanced purchases with several countries. Sanofi teamed with British rival GSK to come up with a candidate it hopes will be ready next year.




av

33 million have sought US unemployment aid since virus hit

Nearly 3.2 million laid-off workers applied for unemployment benefits last week as the business shutdowns caused by the viral outbreak deepened the worst US economic catastrophe in decades. Roughly 33.5 million people have now filed for jobless aid in the seven weeks since the coronavirus forced companies to close their doors and slash their workforces.




av

US labor market shatters post World War 2 records as coronavirus lockdowns bite

The labor department's closely watched monthly employment report on Friday also showed the unemployment rate surging to 14.7% last month, shattering the post-World War II record of 10.8% touched in November 1982. It strengthened analysts' views of a slow recovery from the recession caused by lockdowns imposed by states and local governments in mid-March to curb the spread of COVID-19, the respiratory illness caused by the virus.




av

Fate of business travel could hang on Covid-19 tracing apps

Mobile phone applications that trace the new coronavirus could help decide whether business travelers and vacation-goers get to meet clients or visit their favorite beaches this summer. But politics and disagreement over what system to use threatens to thwart that solution.




av

Formulating poorly water soluble drugs / Robert O. Williams III, Alan B. Watts, Dave A. Miller, editors

Online Resource




av

SPIONs as nano-theranostics agents / Atefeh Zarepour, Ali Zarrabi, Arezoo Khosravi

Online Resource




av

Peptide-based drug discovery: challenges and new therapeutics / ediror: Ved Srivastava

Online Resource




av

Protein therapeutics / Zuben E. Sauna, Chava Kimchi-Sarfaty, editors ; with contributions by S. Ahuja [and more]

Online Resource




av

Drug design: principles and applications / Abhinav Grover, editor

Online Resource




av

Chemical biology of natural products / [edited by] David J. Newman, Gordon M. Cragg, and Paul Grothaus

Online Resource




av

Sigma proteins: evolution of the concept of sigma receptors / Felix J. Kim, Gavril W. Pasternak, editors

Online Resource




av

Behavioral neurobiology of psychedelic drugs / Adam L. Halberstadt, Franz X. Vollenweider, David E. Nichols, editors

Online Resource




av

Bioinformatics techniques for drug discovery: applications for complex diseases / Aman Chandra Kaushik, Ajay Kumar, Shiv Bharadwaj, Ravi Chaudhary, Shakti Sahi

Online Resource




av

Ultraviolet-visible spectrophotometry in pharmaceutical analysis / Sándor Görög

Online Resource




av

Quantitative structure activity relationship: a practical approach / Siavoush Dastmalchi, Maryam Hamzeh-Mivehroud, Babak Sokouti

Online Resource




av

The behavioral neuroscience of drug discrimination / Joseph H. Porter, Adam J. Prus, editors

Online Resource




av

Particles and nanoparticles in pharmaceutical products: design, manufacturing, behavior and performance / Henk G. Merkus, Gabriel M. H. Meesters, Wim Oostra, editors

Online Resource




av

Advances in nanomaterials for drug delivery: polymeric, nanocarbon and bio-inspired / Mahdi Karimi, Maryam Rad Mansouri, Navid Rabiee, Michael R. Hamblin

Online Resource




av

Introduction to pharmaceutical biotechnology. Saurabh Bhatia and Satish Sardana, Tanveer Naved

Online Resource




av

Nanoparticle (NP)-based delivery vehicles / Navid Rabiee, Mahsa Kiani, Mojtaba Bagherzadeh, Mohammad Rabiee, Sepideh Ahmadi

Online Resource




av

Principles of pharmacology: the pathophysiologic basis of drug therapy / David E. Golan, MD, PhD, editor in chief ; Ehrin J. Armstrong, MD, MSc, April W. Armstrong, MD, MPH, associate editors

Hayden Library - RM301.P65 2017




av

Process systems engineering for pharmaceutical manufacturing / edited by Ravendra Singh and Zhihong Yuan

Online Resource




av

The medical marijuana guide: cannabis and your health / by Patricia C. Frye with Dave Smitherman

Hayden Library - RM666.C266 F79 2018




av

Cytotoxic payloads for antibody--drug conjugates / edited by David E. Thurston and Paul J.M. Jackson

Online Resource




av

The role of microstructure in topical drug product development Nigel Langley, Bozena Michniak-Kohn, David W. Osborne, editors

Online Resource




av

Peptide therapeutics: strategy and tactics for chemistry, manufacturing, and controls / editor: Ved Srivastava

Online Resource




av

Kava: from ethnology to pharmacology / edited by Yadhu N. Singh

Online Resource




av

Cancer drug delivery systems based on the tumor microenvironment edited by Yasuhiro Matsumura, David Tarin

Online Resource




av

Mucosal delivery of drugs and biologics in nanoparticles / Pavan Muttil, Nitesh K. Kunda, editors

Online Resource




av

As India Loosens Its Strict Lockdown, Coronavirus Deaths Jump Sharply

The streets have suddenly come alive, especially at night, in many areas where social distancing is impossible.




av

Helping Migratory Bats with Agave Planting Event

BCI announced today the launch of an agave planting initiative throughout Southwest, Tucson area, and Mexico to support the lesser long-nosed bat




av

Agave Abroad

Last night, during a stroll through my 70-degree breezy neighborhood, I stumbled upon a honeysuckle bush. While not mine, I proactively asserted some neighborly




av

Coronavirus and changes to BCI’s Operations

We're thinking a lot about our community and hope you are staying safe.

As we confront the challenge of the coronavirus pandemic, we're making the health and safety of our staff and our supporters our top priority. In line with CDC guidance and Federal & state orders, we are taking several important steps to our operations:

  • Public Events
    In response to CDC guidance regarding avoidance of large public gatherings, we are postponing the Bracken bat flight season. We will resume bat flight events when public health experts determine that large public gatherings are again safe.

Similarly, we have postponed or canceled all upcoming bat walk events at this time.

  • Merchandise & Gift Fulfillments
    Our Austin, Texas headquarters is currently subject to a city-wide “Stay Home, Work Safe” order. With our Austin-based employees working from home, please allow several weeks for delivery of merchandise and adopt-a-bat purchases ordered after March 24. Please also allow extra time for the processing of gifts made through U.S. mail. We are grateful for your patience and ask you to consider making your contribution to BCI online via credit card on our website or through PayPal.

  • Staff Operations & Field Work
    We’re taking the necessary steps to protect our staff while minimizing any disruptions to our mission. These precautions include:
    • Adhering to all state “stay-at-home” orders. At this time, most state orders consider BCI’s work as non-essential.
    • Adhering to Federal CDC guidance including:
      • Avoiding large gatherings such as events, trainings, and conferences
      • Avoiding/postponing non-essential domestic and international travel
      • Working remotely
    • Adhering to National Wildlife Health Center and U.S. Fish and Wildlife Service guidance to avoid contact with bats to prevent a potential spillback of the novel coronavirus from humans to wildlife

As a result of these precautions, we have postponed all fieldwork during the coronavirus pandemic to comply with public policies. Also, due to the global shortage of PPE supplies, we have suspended bat survey activities that require PPE.

We will continue to do all we can to respond to expert public health guidance, take the actions necessary to keep our staff and supporters safe and healthy, and update you on any changes.

Thank you for your patience and understanding as we confront this shared challenge.

 

 

 




av

Exporting modules in JavaScript

In my latest entry I explain the difference about exporting a module between server side or CLI environments such Nashorn, SpiderMonkey, JSC, or micro controller and embedded engines such Duktape, Espruino, KinomaJS, and Desktop UI space via GJS.
Using this is a universal way to attach and export properties but when it comes to ES2015 modules, incompatible with CommonJS and with an undefined execution context.
Enjoy