area

The fractal geometry of polymeric materials surfaces: surface area and fractal length scales

Soft Matter, 2024, 20,3082-3096
DOI: 10.1039/D3SM01497E, Paper
Open Access
  This article is licensed under a Creative Commons Attribution 3.0 Unported Licence.
H. Eduardo Roman, Federico Cesura, Rabia Maryam, Igor Levchenko, Katia Alexander, Claudia Riccardi
Non-treated (NT) and plasma-treated (PT) polymeric surfaces display self-affine fractal scaling. The plasma increases both the surface area and the fractal length scales, helping the design of PT interfaces with larger surface areas at the nm scale.
The content of this RSS Feed (c) The Royal Society of Chemistry




area

Metal–organic framework-derived mesoporous Co3O4 with high specific surface area for enhanced xylene sensing

New J. Chem., 2024, Advance Article
DOI: 10.1039/D4NJ01096E, Paper
Liwen Wang, Guanghui Zhang, Ruishu Zhang, Siqi Yang, Wenjuan Huang, Xiangbai Chen
Co3O4 hollow polyhedra have a high specific surface area and mesoporous structure. The Co3O4 gas sensor has excellent sensing performance and selectivity for xylene.
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




area

Enhancing Military Diplomacy in the Indo-Pacific: A US Foreign Area Officer’s Perspective

Enhancing Military Diplomacy in the Indo-Pacific: A US Foreign Area Officer’s Perspective Enhancing Military Diplomacy in the Indo-Pacific: A US Foreign Area Officer’s Perspective

jacksonl




area

AutoGrow Textareas with CSS

As the demands of the web change and developers experiment with different user experiences, the need for more native language improvements expands. Our presentation layer, CSS, has done incredibly well in improving capabilities, even if sometimes too slow. The need for native support for automatically expanding textarea elements has been long known…and it’s finally here! […]

The post AutoGrow Textareas with CSS appeared first on David Walsh Blog.




area

LAC breakthrough: India, China agree on patrolling arrangements in border area

Move could help India play down anti-China sentiments, increase economic engagement, say experts




area

Weather Warnings for Queensland - marine areas. Issued by the Australian Bureau of Meteorology




area

Via the internet Data Area Review

Virtual data room (VDR) is actually a secure on the web repository designed for storing essential corporate records. This type of software is widely used during M&A discounts, but it can also be useful for internal document management and other business purposes. When comparing VDR services, it is important to consider the number of features […]




area

Storage area of Secret Information

Storage of confidential info is an ongoing concern for any business that takes care of sensitive info. In the digital world, what this means is passwords and firewalls and encryption of files prior to sending them to a client or storing them on a pc network. This is especially important when sharing files via email […]




area

Himalayan glacial lakes saw 10.81% area expansion from 2011 to 2024: Report

The Central Water Commission's (CWC) report, states that with a 33.7% expansion of the surface area, the lakes in India experienced an even more substantial rise




area

Bicolour, large area, inkjet-printed metal halide perovskite light emitting diodes

Mater. Horiz., 2024, 11,1989-1996
DOI: 10.1039/D3MH02025H, Communication
Open Access
  This article is licensed under a Creative Commons Attribution 3.0 Unported Licence.
Vincent R. F. Schröder, Nicolas Fratzscher, Nicolas Zorn Morales, Daniel Steffen Rühl, Felix Hermerschmidt, Eva L. Unger, Emil J. W. List-Kratochvil
Using a sequential inkjet printing process, we realize bicoloured PeLEDs by selectively dissolving a bromide-based perovskite film with an iodide-based perovskite ink, resulting in red light-emitting features on a green light-emitting background.
The content of this RSS Feed (c) The Royal Society of Chemistry




area

Calicut had areas of economic importance even before Zamorins: historian M.R. Raghava Varier




area

Social Connectedness in Urban Areas [electronic journal].

National Bureau of Economic Research




area

The Search for a Euro Area Safe Asset [electronic journal].




area

Quantitative Easing and the Hot Potato Effect: Evidence from Euro Area Banks [electronic journal].




area

The Maturity of Sovereign Debt Issuance in the Euro Area [electronic journal].




area

Macroeconomic Conditions and Health in Britain: Aggregation, Dynamics and Local Area Heterogeneity [electronic journal].




area

Italy and the Industrial Revolution: Evidence from Stable Employment in Rural Areas [electronic journal].




area

Inspecting the Mechanism of Quantitative Easing in the Euro Area [electronic journal].

National Bureau of Economic Research




area

Household Balance Sheet Channels of Monetary Policy: A Back of the Envelope Calculation for the Euro Area [electronic journal].

National Bureau of Economic Research




area

Financial and Fiscal Interaction in the Euro Area Crisis: This Time was Different [electronic journal].




area

Euro Area and U.S. External Adjustment: The Role of Commodity Prices and Emerging Market Shocks [electronic journal].




area

The Effect of Conflict on Lending: Evidence from Indian Border Areas [electronic journal].




area

Delineating Urban Areas Using Building Density [electronic journal].

National Bureau of Economic Research




area

Building(s and) cities: Delineating urban areas with a machine learning algorithm [electronic journal].




area

8802-11-2018/Amd5-2020 - Telecommunications and exchange between information technology systems-Requirements for local and metropolitan area networks-Part 11: Wireless LAN medium access control (MAC) [electronic journal].




area

8802-11-2018/Amd4-2020 - Telecommunications and exchange between information technology systems-Requirements for local and metropolitan area networks-Part 11: Wireless LAN medium access control (MAC) [electronic journal].




area

8802-11-2018/Amd3-2020 - Telecommunications and exchange between information technology systems--Requirements for local and metropolitan area networks--Part 11:Wireless LAN medium access control (MAC) [electronic journal].




area

8802-1Q-2020 - Telecommunications and exchange between information technology systems-Requirements for local and metropolitan area networks-Part 1Q: Bridges and bridged networks [electronic journal].




area

8802-1AE-2020 - IEEE/ISO/IEC International Standard - Telecommunications and exchange between information technology systems-Requirements for local and metropolitan area networks-Part 1AE: Media acces [electronic journal].




area

2020 IEEE International Symposium on Local and Metropolitan Area Networks (LANMAN [electronic journal].

IEEE / Institute of Electrical and Electronics Engineers Incorporated




area

Maharashtra cashew board plans to expand area under the crop, promote organic farming

Plans promoting the State’s produce as unique brand, says director Patil




area

‘Govt needs to protect millet production areas’

The farmers growing crops other than paddy and cotton are facing a serious challenge. They are not getting institutional credit: Kanneganti Ravi of Rythu Swarajya Vedika




area

25% dip in urad output to drag down pulses production despite rise in area

Trade sees no impact on prices in near term due to imports




area

How Millet Sisters drive millet consumption in rural areas

Grassroot campaign to convert producers into consumers




area

Isolated heavy rain forecast for Tamil Nadu, coastal AP as IMD hints at fresh low-pressure area

Satellite pictures show rain clouds spreading out from west coast of Sri Lanka into coastal and interior Tamil Nadu 




area

PayPoint partners with Digit General Insurance for health insurance to rural areas

The insurance covers pre-hospitalisation and post-hospitalization expenses along with road ambulance charges




area

Govt issues fifth draft notification to declare Western Ghats as ecologically sensitive area

The notification aims to safeguard the region by prohibiting activities such as mining, quarrying, sand mining, and new thermal power projects, while also restricting large-scale construction projects and townships




area

Parliamentary Panel highlights significant delays in installation of telemetry systems in critical flood-prone areas

The Committee's report on the performance audit of schemes for flood control and forecasting underscores the need for urgent action to ensure timely and effective flood management




area

Rajasthan rains: Death toll rises to 22, CM visits affected areas in Jaipur

Chief Minister Bhajanlal Sharma conducted a field visit in various parts of the city following incessant rains




area

Pumping stations to be set up in eight low-lying areas in Tiruchi to prevent inundation




area

Delhi enveloped in toxic haze, AQI in severe zone in some areas

Data from the CPCB's Sameer app, which provides hourly AQI updates, showed that out of the 38 monitoring stations, 13 were in the severe category with readings above 400




area

Over ₹13 crore funds needed to support farmers in drought-affected areas of Nellore, says Collector

Ten in the district have been declared as ‘drought mandals’ by the NDMA; over 50% of crop was lost in Sitaramapuram while 30-40% of crops were lost in the remaining nine mandals




area

Tiruchi Corporation to take up survey of areas without storm-water drains

Storm-water drains proposed to be constructed for a length of 52 km in all 65 wards in the city at a cost of ₹32.50 crore under the Corporation’s General Funds for 2024-25




area

No water supply in many areas of Tiruchi on Wednesday




area

It All Starts with a Humble <textarea>

Andy Bell rings out a fresh call in support of the timeless concept of progressive enhancement. What does it mean to build a modern JavaScript-focussed web experience that still works well if part of the stack isn’t supported or fails? Andy shows us how that might be done.


Those that know me well know that I make a lot of side projects. I most definitely make too many, but there’s one really useful thing about making lots of side projects: it allows me to experiment in a low-risk setting.

Side projects also allow me to accidentally create a context where I can demonstrate a really affective, long-running methodology for building on the web: progressive enhancement. That context is a little Progressive Web App that I’m tinkering with called Jotter. It’s incredibly simple, but under the hood, there’s a really solid experience built on top of a minimum viable experience which after reading this article, you’ll hopefully apply this methodology to your own work.

What is a minimum viable experience?

The key to progressive enhancement is distilling the user experience to its lowest possible technical solution and then building on it to improve the user experience. In the context of Jotter, that is a humble <textarea> element. That humble <textarea> is our minimum viable experience.

Let me show you how it’s built up, progressively real quick. If you disable CSS and JavaScript, you get this:

This result is great because I know that regardless of what happens, the user can do what they needed to do when the loaded Jotter in their browser: take some notes. That’s our minimum viable experience, completed with a few lines of code that work in every single browser—even very old browsers. Don’t you just love good ol’ HTML?

Now it’s time to enhance that minimum viable experience, progressively. It’s a good idea to do that in smaller steps rather than just provide a 0% experience or a 100% experience, which is the approach that’s often favoured by JavaScript framework enthusiasts. I think that process is counter-intuitive to the web, though, so building up from a minimum viable experience is the optimal way to go, in my opinion.

Understanding how a minimum viable experience works can be a bit tough, admittedly, so I like to use a the following diagram to explain the process:

Let me break down this diagram for both folks who can and can’t see it. On the top row, there’s four stages of a broken-up car, starting with just a wheel, all the way up to a fully functioning car. The car enhances only in a way that it is still mostly useless until it gets to its final form when the person is finally happy.

On the second row, instead of building a car, we start with a skateboard which immediately does the job of getting the person from point A to point B. This enhances to a Micro Scooter and then to a Push Bike. Its final form is a fancy looking Motor Scooter. I choose that instead of a car deliberately because generally, when you progressively enhance a project, it turns out to be way simpler and lighter than a project that was built without progressive enhancement in mind.

Now that we know what a minimum viable experience is and how it works, let’s apply this methodology to Jotter!

Add some CSS

The first enhancement is CSS. Jotter has a very simple design, which is mostly a full height <textarea> with a little sidebar. A flexbox-based, auto-stacking layout, inspired by a layout called The Sidebar is used and we’re good to go.

Based on the diagram from earlier, we can comfortably say we’re in Skateboard territory now.

Add some JavaScript

We’ve got styles now, so let’s enhance the experience again. A user can currently load up the site and take notes. If the CSS loads, it’ll be a more pleasant experience, but if they refresh their browser, they’re going to lose all of their work.

We can fix that by adding some local storage into the mix.

The functionality flow is pretty straightforward. As a user inputs content, the JavaScript listens to an input event and pushes the content of the <textarea> into localStorage. If we then set that localStorage data to populate the <textarea> on load, that user’s experience is suddenly enhanced because they can’t lose their work by accidentally refreshing.

The JavaScript is incredibly light, too:

const textArea = document.querySelector('textarea');
const storageKey = 'text';

const init = () => {

  textArea.value = localStorage.getItem(storageKey);

  textArea.addEventListener('input', () => {
    localStorage.setItem(storageKey, textArea.value);
  });
}

init();

In around 13 lines of code (which you can see a working demo here), we’ve been able to enhance the user’s experience considerably, and if we think back to our diagram from earlier, we are very much in Micro Scooter territory now.

Making it a PWA

We’re in really good shape now, so let’s turn Jotter into a Motor Scooter and make this thing work offline as an installable Progressive Web App (PWA).

Making a PWA is really achievable and Google have even produced a handy checklist to help you get going. You can also get guidance from a Lighthouse audit.

For this little app, all we need is a manifest and a Service Worker to cache assets and serve them offline for us if needed.

The Service Worker is actually pretty slim, so here it is in its entirety:

const VERSION = '0.1.3';
const CACHE_KEYS = {
  MAIN: `main-${VERSION}`
};

// URLS that we want to be cached when the worker is installed
const PRE_CACHE_URLS = ['/', '/css/global.css', '/js/app.js', '/js/components/content.js'];

/**
 * Takes an array of strings and puts them in a named cache store
 *
 * @param {String} cacheName
 * @param {Array} items=[]
 */
const addItemsToCache = function(cacheName, items = []) {
  caches.open(cacheName).then(cache => cache.addAll(items));
};

self.addEventListener('install', evt => {
  self.skipWaiting();

  addItemsToCache(CACHE_KEYS.MAIN, PRE_CACHE_URLS);
});

self.addEventListener('activate', evt => {
  // Look for any old caches that don't match our set and clear them out
  evt.waitUntil(
    caches
      .keys()
      .then(cacheNames => {
        return cacheNames.filter(item => !Object.values(CACHE_KEYS).includes(item));
      })
      .then(itemsToDelete => {
        return Promise.all(
          itemsToDelete.map(item => {
            return caches.delete(item);
          })
        );
      })
      .then(() => self.clients.claim())
  );
});

self.addEventListener('fetch', evt => {
  evt.respondWith(
    caches.match(evt.request).then(cachedResponse => {
      // Item found in cache so return
      if (cachedResponse) {
        return cachedResponse;
      }

      // Nothing found so load up the request from the network
      return caches.open(CACHE_KEYS.MAIN).then(cache => {
        return fetch(evt.request)
          .then(response => {
            // Put the new response in cache and return it
            return cache.put(evt.request, response.clone()).then(() => {
              return response;
            });
          })
          .catch(ex => {
            return;
          });
      });
    })
  );
});

What the Service Worker does here is pre-cache our core assets that we define in PRE_CACHE_URLS. Then, for each fetch event which is called per request, it’ll try to fulfil the request from cache first. If it can’t do that, it’ll load the remote request for us. With this setup, we achieve two things:

  1. We get offline support because we stick our critical assets in cache immediately so they will be accessible offline
  2. Once those critical assets and any other requested assets are cached, the app will run faster by default

Importantly now, because we have a manifest, some shortcut icons and a Service Worker that gives us offline support, we have a fully installable PWA!

Wrapping up

I hope with this simplified example you can see how approaching web design and development with a progressive enhancement approach, everyone gets an acceptable experience instead of those who are lucky enough to get every aspect of the page at the right time.

Jotter is very much live and in the process of being enhanced further, which you can see on its little in-app roadmap, so go ahead and play around with it.

Before you know it, it’ll be a car itself, but remember: it’ll always start as a humble little <textarea>.


About the author

Andy Bell is an independent designer and front-end developer who’s trying to make everyone’s experience on the web better with a focus on progressive enhancement and accessibility.

More articles by Andy




area

Editorial. Satcom can complement telecom services in remote areas

Tech advancements have made it possible for satcom players to offer seamless broadband connectivity directly to the users’ smartphones, bypassing traditional cell towers




area

Carnatic music export: Positive outcomes and areas of concern

The increasing Carnatic music festivals abroad show the growing interest of the NRIs, and a huge financial market for the art form




area

KSRTC seeks permits to operate services on six routes connecting areas on Mangaluru outskirts




area

ANF intensifies combing operations in Karkala area




area

Senior living faces a supply gap, with Tamil Nadu seen as a key growth area for the sector

CEOs of key firms, in conversation with businessline, discuss Tamil Nadu’s potential due to its large senior population