A computer analysis of photographs could help doctors diagnose which condition a child with a rare genetic disorder has, using a computer program that recognizes facial features in photographs, looks for similarities with facial structures for various conditions, such as Down's syndrome, Angelman syndrome, or Progeria, and returns possible matches ranked by likelihood.
This image shows an average face taking on the average facial features of eight rare genetic disorders that have been built from a growing bank of photographs of people diagnosed with different syndromes. Oxford University scientists have developed a computer program to help doctors diagnose rare genetic disorders by recognizing facial structure in photographs. Credit: Christoffer Nellåker/Oxford University
Zisserman says, 'It is great to see such an inventive and beneficial use of modern face representation methods.'
Identifying a suspected developmental disorder tends to require clinical geneticists to come to a conclusion based on facial features, follow up tests and their own expertise. It's thought that 30–40% of rare genetic disorders involve some form of change in the face and skull, possibly because so many genes are involved in development of the face and cranium as a baby grows in the womb.
They developed a programme that – like Google, Picasa and other photo software – recognises faces in ordinary, everyday photographs. The programme accounts for variations in lighting, image quality, background, pose, facial expression and identity. It builds a description of the face structure by identifying corners of eyes, nose, mouth and other features, and compares this against what it has learnt from other photographs fed into the system.
Source: University of Oxford


Instagram For Health Care Professionals
Figure 1 is a complex version of Instagram for health care professionals. It's a place for medical students and professionals to both upload and access a growing database of images related to medical conditions. It contains patient photos, brain scans, X-Rays and even cellular images, with text to accompany each image.
Figure 1: Photo sharing for health careFigure 1: Photo sharing for health care
Open the app and you are presented with a feed of images, just like Instagram, so it's a better experience when your colleagues are posting photos. I signed up as a journalist and was presented with a recommended feed of photos with descriptions, some that included requests for second opinions.
The result was a fascinating feed of medical pornography: broken bones, explanted tumors, alzheimers brain scans, and even images of dental destruction from methamphetamine drug use.
Each photo is tagged, e.g Vascular Surgery, making it easier to browse by topic, and I was pleasantly surprised by how accessible and easy it was to use.
The app includes a patient consent to comply with federal privacy laws, just like those faced by GoDerma, another photo based app but for patients to diagnose their skin disorders.
It also includes instructions and tools to black out faces, text (e.g names on X-Rays), or identifiable marks (e.g tattoos) to maintain patient confidentiality.
Photos and files can be shared amongst specific groups of people, or more broadly amongst the medical community.
It seems like an incredibly useful app, that gives doctors and students access to a much larger database of images and case studies that would otherwise be available to them, as well as making the process of helping each other much easier.
What surprised me was that Figure 1 is also interesting to those of us just fascinated by the human body and it's disorders. And it's free!
Download Figure 1 now but beware! Some images are frightening!


From Wikipedia, the free encyclopedia
Jump to: navigation, search
An archaeologist investigating a chultun
Entrance to chultun at Xunantunich.
A chultun (plural: chultunob' or chultuns) is a bottle-shaped underground storage chamber built by the pre-Columbian Maya in southern Mesoamerica. Their entrances were surrounded by plastered aprons which guided rainwater into them during the rainy seasons. Most of these archaeological features likely functioned as cisterns for potable water.
Chultunob' were typically constructed in locations where naturally occurring cenotes[1] were absent (such as the Puuc hills, which sit hundreds of feet above the Yucatán Peninsula aquifer). While many were constructed to collect water, not all may have served that purpose. Some may have been used for storage of perishable comestibles, or for the fermentation of alcoholic beverages. After a chultun ended its usefulness, many were used for discarding refuse or for human burials. This makes chultunob' an excellent source of information on both the life and death of ancient settlements of the Prehispanic Maya.
 1. ^ Sinkholes formed in limestone karst.
External links[edit]


Prometheus Backfilling: Recording Rules and Alerts
by Amnon Heiman
Image for post
Image for post
For many Prometheus users using recording rules and alerts, a known issue is how both are only generated on the fly at runtime. This limitation has two downsides. First of all, any new recording rule will not be applied to your historical data. Secondly and even more troubling, you cannot even test your rules and alerts against your historical data.
There is active work inside Prometheus to change this, but it's not there yet. In the short term, to meet this requirement we created a simple utility to produce OpenMetrics data to fill in the gaps. I will cover the following topics in this blog post:
 - Generating OpenMetrics from Prometheus
 - Backfilling alerts and recording rules
Introduction
While Prometheus can load existing data, it does not fill recording rules and alerts. Starting from Prometheus release 2.25 it is possible to backfill Prometheus using OpenMetrics files.
Image for post
Image for post
To better understand the issue and the problem, consider the following case: One of our customers wanted tighter and more granular alerts on their p99 latencies.
Before applying those new rules, they wanted to understand what impact those alerts would have. In other words, if those rules were in place, would they have been used enough or would they have been used too much? To make things even more interesting, recording rules are used in the dashboards.
Since the customer was running a production system there was no problem obtaining a week's worth of Prometheus data. Then all the experiments were done on a separate Prometheus server with those data copies and not on the production one.
I used promutil.py, a small utility python script that you can download from our repository here.
Setup
While I use Scylla Monitoring Stack for the testing because it's easier for me, you don't need to. I suggest using the Prometheus Docker container in general.
 1. Create a data directory — we'll assume it's called data.
 2. Place your Prometheus table data in that directory.
 3. Download promutil.py
 4. Have your Prometheus rule file as prometheus.rules.yml
Run Prometheus with Docker
docker run -d -v "$PWD/data:/prometheus/data" -p 9090:9090 --name prom prom/prometheus:v2.25.0
This will run Prometheus using data in its data container; you can connect to the server via HTTP via port 9090 (e.g., http://{ip}:9090, where "ip" is your server's IP address).
You can check that your data is there by looking at a known metric. Typically you would need to look back at a day or two, depending how old your data is.
Run promutil.py
The promutil.py utility can generate OpenMetrics output-file from Prometheus. You can run ./promutil.py help to see the different options.
We would use a range query. You can supply a specific query as a parameter but instead we would use the prometheus.rules.yml file, that would add to the output file each of the metric rules in that file.
A range query needs a start and end, the promutil.py would accept any two of: start, end and duration.
Start and end can either be absolute (example: 2021-01-29T23:58:55.980Z) or relative (examples: 8s, 10h, 3d). For example, this is how we generate 3 days of metrics that ends 2 days ago:
./promutil.py --rules prometheus.rules.yml rquery -d 3d --end 2d --out-file /data/metrics.txt
Note that we placed the output file inside the data directory. This is important because we can access it from inside the Prometheus Docker container.
Generate the Prometheus Blocks
Run promtool inside the container:
docker exec -it prom promtool tsdb create-blocks-from openmetrics /prometheus/data/metrics.txt /prometheus/data/
Restart the Prometheus server and that's it — your rules are there!
Alerts
For testing, promutil.py can also be used to handle alerts. While it will not generate the alerts for historical data, it will create a metric for each of the alerts named alert:{alert_name}.
Labels in the alert will be added to the generated metric. You can now look at the graph of that metric, you will see the points that match the alert criteria.
Bonus — Ad Hoc Alerts
Unrelated to backfilling, if you regularly keep track of systems then you know the feeling of looking at a system and trying to figure out what's going on. You can also use the promutil.py for such cases. Keep a rule file with as many alerts as you want. The output of running the promutil on this file will return only metrics that match those alerts. In other words, it's like asking, "have any of these conditions been met in the last few days (or hours, etc.)?"
Take Away
Prometheus finally supports backfilling metrics through the use of OpenMetrics format. You can use our promutil.py to generate historical values for recording rules and alerts from a running Prometheus server. You can also use the promutil.py for ad hoc alerts, making it a handy new tool when diagnosing a system.
DISCOVER MORE IN OUR SCYLLA MONITORING HANDS-ON LAB
The monstrously-fast NoSQL database.
Get the Medium app
A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store


TSitologiya i Genetika 2002, vol. 36, no. 2, 26-29
Cytology and Genetics , vol. , no. , , doi: _URL_
Investigation of the Major Genes of the Cariopsis Aleurone Layer Colour in the Maize Lines Genotypes
Pariy Ya. F.
The major genes of the cariopsis aleurone layer colour in maize lines genotypes were studied in the check crossings with the samples analizators. The lines P 502 Rf M, F7 rf С, F2 rf С, Cg 10 rf М, and F 115 rf М have the following genotype on these genes: А1 А1 А2 А2 с1 с1 С2 С2 r r.
Keywords:
TSitologiya i Genetika
2002, vol. 36, no. 2, 26-29
Current Issue
Cytology and Genetics
, vol. , no. , ,
doi:
Full text and supplemented materials
References


Selector API
Modifying a widget usually requires having direct access the object. This may not always be the most convenient or efficient way to work with complex UIs. The Tabris.js selector API allows referencing widgets without using an instance, and even manipulating multiple widgets at once.
Selector Strings
A selector string describes an existing widget that we want to work with. There are different formats for these strings, which will look familiar to you if you know CSS.
 - "*" - Matches all widgets.
 - "Type" - Matches all widgets of the given type, e.g. "Button" matches all button widgets.
 - ".class" - Matches all widgets that have the given class in their class list, e.g. ".foo" matches a widget with class set to "foo" or "foo bar".
 - "_TAG_" - Matches all widgets with the given id, e.g. "_TAG_" matches all widgets with the id "foo".
The id of a widget is a property like any other. It's initial value is undefined, so you always have to assign one yourself, usually when creating the widget.
new tabris.TextView({id: "myLabel"});
Id's don't have to be unique, but it is strongly recommended that they are so within a page.
The class property is a string containing a whitespace separated list of "classes". A class is an arbitrary name for a state or category the widget should be identifiable by. It may only contain alphanumeric characters, "_" and "-".
new tabris.TextView({class: "label important"});
Classes may be freely mixed, re-used and changed on any widget at any time.
Working with Selectors
To find a widget anywhere in the current page, simply call page.find(selector). This will return a WidgetCollection with all widgets within the page that match the given selector. You can further narrow the search scope by using page.children(selector), or by calling either of these methods on a container within the page.
It is also possible to search through all widgets in the current widget tree, using tabris.ui.find(selector). However, this is rarely practical. Instead, you may use tabris.ui to find all current pages (tabris.ui.children("Page")), actions (tabris.ui.children("Action")) or the drawer (tabris.ui.children("Drawer")).
A selector may also be given in LayoutData instead of a the widget itself. This even works if the referenced widget is not yet created.
The apply method
How it works
 - apply({*})
The apply method uses selectors to apply different sets of properties to different widgets in one call. It is available on all widgets, but most commonly used on Page.
For example, to make all widgets within a page green you could call:
page.apply({"*": {background: "green"}});
You can also set different properties on different widgets:
 "_TAG_": {text: "OK!", background: "yellow"},
 "_TAG_": {text: "Cancel!", textColor: "red"}
The order in which these properties are applied depends on the selector used. The order is:
 - "*" > "Type" > ".class" > "_TAG_"
For example:
 "_TAG_": {background: "red"},
 "Button": {background: "green"},
 "*": {background: "blue"}
This will make all widgets within the page blue, except for the buttons, which are green, except for "_TAG_", which will be red.
The on-screen order of the properties in the object literal is meaningless. According to the EcmaScript standard the members of a JavaScript object do not have a defined order.
How to use it
While we used object literals in the above examples, the apply method can be very effectively used with modules, allowing most or all property values (except ids) to be extracted from your code.
Imagine, for example, that you want to apply different texts to your widgets depending on your locale. You could do it like this:
var lang = tabris.device.get("language");
try {
 page.apply(module.require("./texts-" + lang));
} catch() {
 // fallback if the desired language file does not exist:
Since JSON files can be used as modules, your language file (e.g. "texts-en.json") could simply look like this:
 "_TAG_": {"text": "OK!"},
 "_TAG_": {"text": "Cancel!"}
An alternative pattern would be to always use the same module…
But use scripting within the module to calculate the actual values:
var texts = {
 en: {
 "_TAG_": {text: "OK!"}
 "_TAG_": {text: "Cancel!"}
module.exports = texts[tabris.device.get("language")] || texts.en;
The same pattern could be applied for e.g. colors based on the OS, font-sizes based on screen width, or layout data depending on device orientation:
page.on("resize", function() {
 var bounds = page.get("bounds");
 page.apply(require("./layout-" + (bounds.width > bounds.height)? "landscape" : "portrait"));
It is better to use the aspect ratio of the page as a basis for selecting a layout than the device orientation. This is because when the device is re-oriented, the page is first re-sized, and then rotated in an animation. Also, in future Tabris.js versions a page may not always have the same aspect ratio as the screen.


text:
When it comes to burgers, one of the key components is the patty. But have you ever wondered how much protein is in a burger patty? Protein is an essential nutrient that plays a vital role in our overall health and well-being. In this article, we will dive deeper into the topic to understand the protein content in a typical burger patty.
Protein Content in Burger Patties
Protein content varies: The amount of protein in a burger patty can vary depending on several factors, including the type of meat used and the size of the patty. Generally, a standard beef burger patty contains around 20-25 grams of protein. However, this can vary depending on the specific recipe and preparation method.
Beef patty: Beef is a common choice for burger patties, and it is known for its high protein content. A 4-ounce beef patty typically contains around 25 grams of protein. This protein comes from the muscle tissue in the beef, which is rich in amino acids, the building blocks of protein.
Chicken patty: Chicken patties are another popular option for burgers, especially for those looking for a leaner protein source. A 4-ounce chicken patty generally contains around 20 grams of protein. Chicken is also a good source of essential amino acids, making it a nutritious choice for burger lovers.
Veggie patty: For those who follow a vegetarian or vegan diet, veggie patties are a great alternative. The protein content in veggie patties can vary depending on the ingredients used. Plant-based protein sources such as beans, lentils, and soy are commonly used in veggie patties. On average, a veggie patty contains around 10-15 grams of protein per serving.
Other factors: It's important to note that the protein content mentioned above is for the patty itself and does not include any additional toppings or condiments that may be added to the burger. If you're looking to increase the protein content of your burger, you can consider adding toppings like cheese, bacon, or even a fried egg, which can contribute additional protein.
In conclusion, the protein content in a burger patty can vary depending on the type of meat or ingredients used. A standard beef patty typically contains around 20-25 grams of protein, while a chicken patty contains around 20 grams. Veggie patties, made from plant-based protein sources, generally have around 10-15 grams of protein. Remember that the protein content mentioned is for the patty alone and does not include any additional toppings or condiments.
Understanding the protein content in a burger patty can be helpful for those who are conscious of their protein intake or following a specific dietary plan. Whether you prefer beef, chicken, or veggie patties, you can make informed choices to meet your protein needs while enjoying a delicious burger.

source: m-a-p/FineFineWeb


text:
Tuesday, October 23, 2012
Failure to Respond to a Permission Request: What Does it Mean?
Why seek permission? If permission is unnecessary for a fair use defense, why ask for it? First, acquiring permission bypasses the need for a legal dispute (and the uncertainties and expenses associated with it). Second, seeking permission also demonstrates your good faith and may mitigate the damages assessed if your fair use defense fails and there is a negative decision against you.
Does a failure to respond to a permission request mean that there is a lower risk of being pursued. We doubt it. Although, as anecdotal evidence, we can offer this story: Our mom called a lawyer at a well-known movie company for permission for her nonprofit to use a licensed character in a presentation. His response, "You never made this call." In other words, having to say "no," would have obligated the attorney to follow up.
FYI Dept. -- Silence doesn't mean legal assent. We remember getting letters from lawyers that would say things like, "A failure to respond shall confirm blah, blah, blah." But 99.9% of the time that's just not the case. Inaction, or silence rarely triggers any legal conclusion (either affirmative or negative). For example, there's a famous 19th-century English contract case in which a man offered to buy a horse and stated that unless he heard otherwise from the seller, "I consider the horse mine." The British court ruled that his assumption didn't create a contract; the other party's acceptance had to be clearly expressed.

source: openbmb/Ultra-FineWeb


text:
Change management in information systems projects for public organizations
Interdisciplinary Journal of Information, Knowledge, and Management • Volume 10 • 2015 • pp. 047-062
It can be argued that public organizations, in order to provide the public with sufficient services in the current, highly competitive and continuously evolving environment, require changes. The changes that become necessary are often related to the implementation of information systems (IS). Moreover, when organizations are faced with changes, a change management (CM) process needs to be put in place. CM theories that are currently available to practitioners and academics are often contradictory; they mostly lack empirical evidence and are supported by unchallenged hypotheses concerning the nature of the contemporary CM. The aim of this paper is, therefore, to identify critical success factors (CFSs) for CM in IS projects. In order to reach this aim an explanation of changes in public organizations and the nature of CM are presented. Following this, a framework of CFSs for CM in IS projects are identified based on the literature review. The paper also examines two IS projects and uses them to demonstrate CFSs influencing CM in IS projects in Polish pubic organizations. A discussion of the research findings is provided and the paper concludes with a presentation of the study's contributions and limitations as well as the stream of future work.
project management, change management, public organizations, information systems, IS, critical success factors, CSF
332 total downloads


text:
How do I keep bumble bees away from my crock neck squash? Also I do I know when my carrots are ready to pick?
Know that bees can be a gardeners/farmer's friend because they help with pollination. But if those bumble bees become a problem, there are a few things you can do. These include
- The more flowers you have, the more bees will be attracted to your yard. This includes flowering trees and bushes. By having only non-flowering plants in your yard you can greatly reduce the interest of bees to it. To keep the bees far away from your squash, plant flowers far away from the squash.
- Use a safe insecticide designed to stop the insects or kill them. Be sure to follow the insecticide guidelines, and use one recommended for fruit or vegetables and human consumption.
When harvesting carrots: Carrots can be "pulled" when the roots are at least 1/2 inch in diameter. Under usual conditions, carrot tops may not be strong enough to withstand actually being pulled from the ground and digging helps to remove the roots without damage. Finger carrots are usually ready to harvest within 50 to 60 days. Other varieties should be allowed to grow until they have reached a diameter of at least 3/4 inch (about 60 to 70 days after planting). For more information about growing carrots visit the University of Illinois Extension and try our Roasted Carrots recipe!


text:
Year 6 Forensic Science Workshop
To support the investigative work Year 6 are undertaking in Science, the children took part in a Forensic Science Workshop on Wednesday 9th May.
An immersive environment was set up in the classroom, which consisted of four identical crime scenes. The children worked collaboratively to solve a crime and it was the responsibility of each group to piece together the evidence. The workshop included finding, developing and characterising fingerprints, investigating tool marks and other impressions, identifying hairs and fibres and investigating blood, bones and DNA. They used their scientific knowledge, understanding and logical thinking to solve given problems. The children really enjoyed this challenge and all were successful in solving the crime.


text:
The settlement of Joden Savanne and Cassipora cemetery
Urban Heritage Foundation, Suriname
Property names are listed in the language in which they have been submitted by the State Party.
The former settlement of Joden Savanne (Jew's Savanne) and the cemetery at Cassipora, mark an important stage in the European colonization of the Western Hemisphere. The synagogue at Joden Savanne, of which a ruin remains, is the oldest still present in the Americas. It is a reminder of pioneers of American Judaism. Jews, fleeing the Spanish inquisition were welcomed in Suriname, first by the British and later by the Dutch, to settle and reclaim the land along the River Suriname. As part of the government policy to attract Jewish settlers, they were given special privileges, which granted them freedom of religion, freedom of ownership and the right to have their own judicial court. Jewish merchants were especially wanted for their expertise on international trade. In 1665 they achieved a piece of land close to the Cassipora Creek to build a synagogue and to layout a cemetery. Shortly afterwards, the community moved to a hill overlooking the River Suriname where the settlement of Joden Savanne was founded. In 1685 a synagogue, named 'Beracha Ve Shalom' (Blessing and Peace), was inaugurated. It was made of brick imported from abroad. The synagogue formed the central point of a rectangular village. Close to the synagogue is a natural well which was said to have healing capacities. At the end of the 17th century approximately 600 people lived in the flourishing agricultural settlement of Joden Savanne owning more than 40 plantations with over 9,000 slaves. Besides her important economic role the Jewish community also had part in the protection of the colony. In the vicinity of the settlement lay the military supply post 'Post Gelderland' of the defence line 'Cordonpad'. This line, which started at Joden Savanne and ended at the coast, was constructed to protect the plantations from attacks of maroons, i.e. runaway slaves. It consistod of a wide bridle path with military posts at repular intervals. In the 19th century, however, most of the Jews living in Joden Savanne had moved to the capital of Paramaribo due to the decline of the sugar-cane industry. After a great fire in 1832 the settlement was left desolate. The cemeteries of Joden Savanne and Cassipora are of excephonal splendour. The cemetery of Cassipora counts several hundred tombstones. The oldest grave dates from 1667. The cemetery of Joden Savanna has approximately 450 graves. A large number of stones is of marble imported from Europe, other graves are made of bricks. Some stones are beaubfully ornamented. Inscriptions are in Spanish, Portugees, Dutch and Hebrew. The synagogue and the two cemeteries are the major sites at Joden Savanne. More remains of the settlement still have to be excavated. The foundation of the synagogue reveals its ground-plan.The natural well is still there and the defence line at Post Gelderland is recognizable.

source: HuggingFaceFW/fineweb-edu


Main Content
Create a Simulink Bus Object Report
This example shows how to create a report that describes all of the bus objects used by a Simulink® model. This report creates a chapter for each bus object. Each chapter has a section for the bus object hierarchy, bus object properties table, bus elements properties table, and list of blocks that use the bus.
Import Packages
Import the Report API packages so that you do not have to use long, fully qualified class names.
import slreportgen.finder.*
Open Model
Open a model that has bus objects.
model = "sldemo_bus_arrays";
Create Report
Create and open a report object. To create a Microsoft® Word, HTML, or single-file HTML report, change "pdf" to "docx", "html", or "html-file", respectively.
rpt = + "_bus_object_report","pdf");
Add a title page and a table of contents.
titlepage = TitlePage("Title", model + ": Bus Object Report","Author","John Doe");
toc = TableOfContents();
add(rpt, toc);
Find and Report on Bus Objects
Find all the variables used in the model.
finder = ModelVariableFinder(model);
Loop through the variable finder results to find the bus objects and report on them. Use the getVariableValue method to identify which variables are bus objects. Use the reporter to report on the bus objects.
while hasNext(finder)
 result = next(finder);
 if isa(getVariableValue(result),"Simulink.Bus")
 % Create a Bus object reporter
 busReporter = BusObject(result);
 % Create a Chapter
 chapter = Chapter(busReporter.Name);
 % Add bus to chapter
 % Add chapter to the report
Close Report
Close and view the report.
View Sample Report
To see a more comprehensive bus object report, view the asbhl20_bus_object_report.pdf that is available with this example. You must have Aerospace Blockset™ to open the asbhl20 model.
rptview asbhl20_bus_object_report.pdf
See Also
| | | |
Related Topics


text:
Recently the question of whether lawyers have a general ethical obligation to serve a gatekeeping function has been raised in a number of legal contexts. The reaction of the practicing bar has generally been unenthusiastic. While the assertion that a gatekeeping function should be applicable to all attorneys is a relatively modern stance, such an obligation has historically been acknowledged to various degrees in several practice areas, including federal income taxation. This Article examines the gatekeeping question—and how the practicing bar should react to it—through an examination of the gatekeeping role historically asserted as applicable to tax lawyers, including how modern pressures (e.g., literalist statutory interpretation, profit maximization law firm models, changing business and societal ethical norms) have altered that historically asserted ethical norm. This Article then suggests avenues for combating modern trends in the tax field in order to strengthen and reestablish the historic balance in a tax lawyer's planning role (e.g., using intentional conflicts of interest to create a "divide and conquer" dynamic between clients and attorneys in aggressive transactions, emphasizing the ethical training of tax attorneys, clarifying the proper approach for statutory interpretation in the tax context, creating disincentives for a legal race to the bottom among attorneys competing for business, highlighting the importance of individual trendsetters, and channeling the competitive pressures in the legal marketplace in the government's favor). This Article concludes by suggesting that the practicing bar should take lessons from the tax gatekeeping example in its future reactions to gatekeeping initiatives in other legal arenas and accept gatekeeping as a generally applicable ethical norm.
Am I My Brother's Keeper? A Tax Law Perspective on the Challenge of Balancing Gatekeeping Obligations and Zealous Advocacy in the Legal Profession,
Loy. U. Chi. L. J.
Available at: _URL_


Posted by & filed under Fibre Optic Cabling, PON.
Passive Optical Network FAQ's London
Passive Optical Network FAQ's
Passive Optical Network FAQ's Birmingham

What is Passive Optical Network?
Passive Optical Network (PON) is a type of fibre-optic access network. A PON reduces the amount of cabling and equipment required compared to an active optical network, where each user has a separate connection to the network hub. Generally, a PON configuration contains an optical line terminal (OLT) at the service provider's central office and a number of optical network units (ONUs) or optical network terminals (ONTs) near end users.
How does it work?
PON uses an optical splitter to allow multiple subscribers to share a single fibre connection to the service provider's network. Furthermore, the splitter is a passive device that does not require any power.
The OLT contains a laser that sends an optical signal down the fibre to the splitter. As a result, the splitter then separates the signal into multiple signals, each of which is sent to a different ONU or ONT.
The ONU or ONT converts the optical signal back into an electrical signal that can be used by the customer's equipment.
Advantages
PON offers a number of advantages over other access technologies, such as, twisted pair or coaxial cable:
 - PON is more scalable. It is easier to add new subscribers to a PON system than other types of network.
 - The passive components in a PON system do not require power, which means that there are fewer potential points of failure.
 - Cost-effective - the use of optical splitters means that a PON system can serve many subscribers with a single fibre connection. As a result, this reduces the amount of cabling and equipment required compared to other types of network.
Disadvantages
PON has a number of disadvantages compared to other access technologies:
 - PON is more vulnerable to environmental factors. For example, components can be damaged by water, humidity, or temperature extremes.
 - The OLT and ONU/ONT equipment required for a PON system is more expensive than the equipment required for other types of network.
 - Longer installation times - Passive optical components must be carefully installed and aligned, which can take longer than other types of network.
What is Ethernet Passive Optical Network?
Ethernet Passive Optical Network (EPON) is a type of Passive Optical Network (PON) that uses Ethernet as the transport protocol. EPON is standardized by the IEEE 802.3ah committee.
EPON offers a number of advantages over other PON technologies:
 - Uses a standard Ethernet interface, which simplifies equipment compatibility and reduces costs.
 - Supports a wide range of data rates, from 10Mbps to 1Gbps.
 - Can be easily upgraded to support higher data rates by simply changing the optical transceivers.
What is Gigabit Passive Optical Network?
Gigabit Passive Optical Network (GPON) is a type of PON that supports data rates up to 2.5Gbps downstream and 1.25Gbps upstream. GPON is standardized by the ITU-T G.984 series of recommendations.
What is Next Generation Passive Optical Network?
Next Generation Passive Optical Network (NG-PON) is a type of PON that supports data rates up to 40Gbps downstream and 10Gbps upstream. NG-PON is standardized by the ITU-T G.989 series of recommendations.
Advantages of GPON & NG-PON over other PON technologies:
 - Supports very high data rates, making it ideal for applications such as HDTV and video-on-demand.
 - GPON & NG-PON are scalable - it is easy to add new subscribers or upgrade existing subscribers to higher data rates.
 - Cost-effective: the use of optical splitters means that an NG-PON system can serve many subscribers with a single fibre connection. As a result, this reduces the amount of cabling and equipment required compared to other types of network.
For Fibre Optic FAQ's follow this link.


text:
A new Chinese study has found that calcium protects against cancer of the colon and rectum (colorectal). The Shanghai Women's Health Study, from 1997 through 2000, enrolled 73,314 Chinese women aged 40 to 70, average age 55.5, who were living in urban Shanghai. Researchers followed up for an average of 5.7 years and, excluding the first two years of follow up, found that those with the highest amounts of calcium in the diet were 40% less likely to develop colorectal cancer than were those with the lowest dietary calcium. By the end of the follow up period, there were 129 reported cases of colon cancer and 91 reported cases of rectal cancer.
The study is significant because of the large number of participants and because the Chinese diet typically includes less calcium than does the Western diet. Previous large U.S. studies: the 1991 Women's Health Initiative with 161,808 women, the 1976 Nurse's Health Study I with 122,000 women, and the 1989 Nurse's Health Study II with 125,000 women, did not report any link between calcium and colorectal cancer.
As in those studies, doctors in the Shanghai survey asked participants to fill out a food frequency questionnaire covering 77 foods representing 90% of the typical diet. Researchers also calculated the amounts in the diet of vitamins A, B1, B2, B3, C and E, as well as carotene and fiber, and found no link to risk for colorectal cancer. The scientists concluded that calcium appears to protect against colorectal cancer even at the relatively low levels in the Chinese diet compared to the Western diet. Colorectal cancer is one of the most curable cancer types, and doctors can diagnose the disease easily and early using a colonoscopy exam.


text:
LabVIEW-Based Automatic Control Systems Laboratory Using Local and Remote Experimentation Approaches
A one unit, three-hour automatic control systems laboratory course was modified to incorporate LabVIEW-based student-developed controls projects. After learning LabVIEW during the first three weeks of the course, each student was required to develop and perform three PC-based data acquisition and control experiments. The final experiment involved the development of a proportional-integral-derivative (PID) wind velocity control system for a small subsonic wind tunnel. In addition to the course, students and researchers can access the wind tunnel speed control system via the Internet to investigate the effects of different gain settings on the PID wind tunnel control system.


text: Fe3O4@His@Cu magnetic recyclable nanocatalyst (MRCs) was synthesized by reflux method using L-histidine as linker. The composition, structure and magnetic property of the product were characterized by X-ray powder diffraction (XRD), Scanning electron microscopy (SEM), Fourier Transform infrared spectroscopy (FT-IR) and vibrating sample magnetometry (VSM). Powder XRD, FTIR and EDAX results confirmed that the as-synthesized products has Fe3O4 with spinel structure and Cu nanoparticles with moderate crystallinity without any other impurities. The surface of the Fe3O4@His nanocomposite was covered by tiny Cu nanoparticles. We examine the catalytic activity of Fe3O4@His@Cu MRCs for the degradation of two azo dyes, methyl orange (MO) and methylene blue (MB) as well as their mixture. The reusability of the nanocatalyst was good and sustained even after 3 cycles. Therefore this innovated Fe3O4@His@Cu MRCs has a potential to be used for purification of waste water.


the strength of the source. For a source whose strength is normalized to 1, the result is
 F(\xi) = \frac{1}{\sqrt{2\pi}}, \,
and the resulting solution of the heat equation is
 u(t,x) = \frac{1}{2\pi} \int_{-\infty}^{\infty}e^{-\alpha \xi^2 t} e^{i \xi x} d\xi. \,
This is a Gaussian integral. It may be evaluated to obtain
 u(t,x) = \frac{1}{2\sqrt{\pi \alpha t}} \exp\left(-\frac{x^2}{4 \alpha t} \right). \,
This result corresponds to a normal probability density for x with mean 0 and variance 2αt. The heat equation and similar diffusion equations are useful tools to study random phenomena.
Wave equation in one spatial dimension Edit
The wave equation is an equation for an unknown function u(t, x) of the form
 u_{tt} = c^2 u_{xx}. \,
Here u might describe the displacement of a stretched string from equilibrium, or the difference in air pressure in a tube, or the magnitude of an electromagnetic field in a tube, and c is a number that corresponds to the velocity of the wave. The Cauchy problem for this equation consists in prescribing the initial displacement and velocity of a string or other medium:
 u(0,x) = f(x), \,
 u_t(0,x) = g(x), \,
where f and g are arbitrary given functions. The solution of this problem is given by d'Alembert's formula:
 u(t,x) = \frac{1}{2} \left[f(x-ct) + f(x+ct)\right] + \frac{1}{2c}\int_{x-ct}^{x+ct} g(y)\, dy. \,
This formula implies that the solution at (t,x) depends only upon the data on the segment of the initial line that is cut out by the characteristic curves
 x - ct = \hbox{constant,} \quad x + ct = \hbox{constant}, \,
that are drawn backwards from that point. These curves correspond to signals that propagate with velocity c forward and backward. Conversely, the influence of the data at any given point on the initial line propagates with the finite velocity c: there is no effect outside a triangle through that point whose sides are characteristic curves. This behavior is very different from the solution for the heat equation, where the effect of a point source appears (with small amplitude) instantaneously at every point in space. The solution given above is also valid if t is negative, and the explicit formula shows that the solution depends smoothly upon the data: both the forward and backward Cauchy problems for the wave equation are well-posed.
Spherical waves Edit
Spherical waves are waves whose amplitude depends only upon the radial distance r from a central point source. For such waves, the three-dimensional wave equation takes the form
u_{tt} = c^2 \left[u_{rr} + \frac{2}{r} u_r \right]. \,
This is equivalent to
 (ru)_{tt} = c^2 \left[(ru)_{rr} \right],\,
and hence the quantity ru satisfies the one-dimensional wave equation. Therefore a general solution for spherical waves has the form
 u(t,r) = \frac{1}{r} \left[F(r-ct) + G(r+ct) \right],\,
where F and G are completely arbitrary functions. Radiation from an antenna corresponds to the case where G is identically zero. Thus the wave form transmitted from an antenna has no distortion in time: the only distorting factor is 1/r. This feature of undistorted propagation of waves is not present if there are two spatial dimensions.
Laplace equation in two dimensions Edit
The Laplace equation for an unknown function of two variables φ has the form
\varphi_{xx} + \varphi_{yy} = 0.
Solutions of Laplace's equation are called harmonic functions.
Connection with holomorphic functions Edit
Solutions of the Laplace equation in two dimensions are intimately connected with analytic functions of a complex variable (a.k.a. holomorphic functions): the real and imaginary parts of any analytic function are conjugate harmonic functions: they both satisfy the Laplace equation, and their gradients are orthogonal. If f=u+iv, then the Cauchy–Riemann equations state that
u_x = v_y, \quad v_x = -u_y,\,
and it follows that
u_{xx} + u_{yy} = 0, \quad v_{xx} + v_{yy}=0. \,
Conversely, given any harmonic function in two dimensions, it is the real part of an analytic function, at least locally. Details are given in Laplace equation.
A typical boundary value problem Edit
A typical problem for Laplace's equation is to find a solution that satisfies arbitrary values on the boundary of a domain. For example, we may seek a harmonic function that takes on the values u(θ) on a circle of radius one. The solution was given by Poisson:
\varphi(r,\theta) = \frac{1}{2\pi} \int_0^{2\pi} \frac{1-r^2}{1 +r^2 -2r\cos (\theta -\theta')} u(\theta')d\theta'.\,
Petrovsky (1967, p. 248) shows how this formula can be obtained by summing a Fourier series for φ. If r<1, the derivatives of φ may be computed by differentiating under the integral sign, and one can verify that φ is analytic, even if u is continuous but not necessarily differentiable. This behavior is typical for solutions of elliptic partial differential equations: the solutions may be much more smooth than the boundary data. This is in contrast to solutions of the wave equation, and more general hyperbolic partial differential equations, which typically have no more derivatives than the data.
Euler–Tricomi equation Edit
The Euler–Tricomi equation is used in the investigation of transonic flow.
u_{xx} \, =xu_{yy}.
Advection equation Edit
The advection equation describes the transport of a conserved scalar \psi in a velocity field {\bold u}=(u,v,w). It is:
\psi_t+(u\psi)_x+(v\psi)_y+(w\psi)_z \, =0.
If the velocity field is solenoidal (that is, \nabla\cdot{\bold u}=0), then the equation may be simplified to
\psi_t+u\psi_x+v\psi_y+w\psi_z \, =0.
In the one-dimensional case where u is not constant and is equal to \psi, the equation is referred to as Burgers' equation.
Ginzburg–Landau equation Edit
The Ginzburg–Landau equation is used in modelling superconductivity. It is
iu_t+pu_{xx} +q|u|^2u \, =i\gamma u
where p,q\in\mathbb{C} and \gamma\in\mathbb{R} are constants and i is the imaginary unit.
The Dym equation Edit
The Dym equation is named for Harry Dym and occurs in the study of solitons. It is
u_t \, = u^3u_{xxx}.
Initial-boundary value problems Edit
Πρότυπο:Main Πρότυπο:See
Many problems of mathematical physics are formulated as initial-boundary value problems.
Vibrating string Edit
If the string is stretched between two points where x=0 and x=L and u denotes the amplitude of the displacement of the string, then u satisfies the one-dimensional wave equation in the region where 0<x<L and t is unlimited. Since the string is tied down at the ends, u must also satisfy the boundary conditions
 u(t,0)=0, \quad u(t,L)=0, \,
as well as the initial conditions
 u(0,x)=f(x), \quad u_t(0,x)=g(x). \,
The method of separation of variables for the wave equation
 u_{tt} = c^2 u_{xx}, \,
leads to solutions of the form
 u(t,x) = T(t) X(x),\,
where
 T'' + k^2 c^2 T=0, \quad X'' + k^2 X=0,\,
where the constant k must be determined. The boundary conditions then imply that X is a multiple of sin kx, and k must have the form


Top Locations for Crime Scenes in Pittsburgh
Top Locations for Crime Scenes in Pittsburgh
The Pittsburgh Police is the biggest law enforcement group in Western Pennsylvania, and the third in the state. It's no wonder with the historic crime that has been present throughout the city. As of now, there are about 1,000 sworn officers on the police force.
The rate of various crimes in Pittsburgh is well over the national average in many cases, including violence, theft, and assault. Since the 1910s, there has been criminal activity from one particular group that has dominated the city.
The Pittsburgh crime family
The Pittsburgh crime family, also known as the LaRocca's has been around for over one hundred years. They came out of the prohibition era, the same time period as Al Capone. Their beginning acts were to illegally make and sell alcohol. Since this time, the crime family has been linked to gambling rings, drugs, and suspected murders.
The group is fairly transparent about their actions, to an extent. Their members are known, although since the 1990s their numbers have fallen drastically due to conviction and death. There are murders that members have been accused of, but denied.
Photo by US Army, from _URL_
The areas
There are different areas around Pittsburg that have higher levels of crime. No matter the area you live in, crime is possible. Even though there are areas that have had long histories of crime that are more prone to criminal activity. It doesn't matter where you are, criminal activity can happen.
Many areas of Pittsburgh have above average home prices, even though they also have above average crime rates. The most dangerous area of the city prone to crime scenes is between Mcneilly Road and Sussex Avenue. The area is known for its unique characteristics. The neighborhoods are a unique mix of cultural groups.
Related Article: How Used Shipping Containers are Continuing the Freight Storage Revolution
Upper St. Clair is a part of the south most tip of Pittsburg. Although it may not be the most dangerous part of Pittsburg, it is no stranger to crime scenes. The Whiskey Rebellion in 1791 started out in Upper St. Clair. Although this wasn't necessarily a crime scene, at the time it was illegal, and it caused a big mess. Which is basically the same thing as a crime scene right?
The police force
A large majority of the Pittsburg police force, over seventy percent, are male. They have the Pittsburg are divided into six zones. Each zone is required to have a certain number of officers present, based on the crime scenes that have been seen in the area. The first four zones require the highest number of officers while the last two zones are a bit safer. This is to ensure the rate of crime scenes diminishes.
A commander, who maintains the peace in their geographic area, leads each zone. Between the six zones, here is a breakdown of what law enforcement officers are present at all times:
 - Thirteen police officers
 - Three detectives
 - One sergeant
 - One lieutenant
This is simply an average across the six zones, but is a good representation of the steps taken to reduce crime in Pittsburgh.
Crime scenes are something you never want to come across. Through proper enforcement, and prevention, crime in Pittsburgh can be reduced. The areas that have become famous as crime scenes can now become known for something else.
How to Decorate a Room Using a Stylish Rug
Safety Driving Tips for Teenagers


any case).
You can control how an application reacts to a parameter modification by subscribing RoleEnvironment.Changing event, if you want to restart the whole role when a parameter change you can simply set Cancel=true inside Changing event:
RoleEnvironment.Changing += (s, e) =>
e.Cancel = true;
in this case, when application's.cscfg file content change, the role is shut down then restarted so that new parameters can be properly reloaded. If you don't want to restart the role but handle modifications yourself you can handle Changes parameter passed to RoleEnvironment.Changing event.
How can you test this logic when your app runs inside Azure local compute emulator? here are basic step:
 - Run you app locally and read what is current development id by opening compute emulator UI and reading what between parenthesis (2103 in following example) following deploymentXX label:
 - Run Windows Azure Command Prompt and navigate to the folder that contains your configuration file ServiceConfiguration.cscfg and run this command:
 csrun /update:[id];ServiceConfiguration.cscfg
And you'll see your role reacting to configuration change appropriately.
Technorati Tags:
author: Corrado Cavalli | posted @ venerdì 20 aprile 2012 15.28 | Feedback (1)
Copying and moving styles using Expression Blend for HTML
Here's a couple of Blend tricks I'd like to share:
Let's say you have this HTML fragment:
 Content goes here
by looking at Blend's css properties pane you can see that, it has some css rules automatically applied:
you can copy the applied rule and paste it into another stylesheet by right clicking the highlighted row into selecting copy:
Now go to the Styles pane and click the "+" button shown in the picture below to add a new stylesheet:
then right click new file and select paste from context menu to paste the selector.
If you already have the same selector inside target file the properties will be merged (you'll see Paste properties instead of Paste menu) of course you can also right click the selector inside source file and copy/paste from there but in this case you will copy all selectors not just applied one.
Let's now suppose you change h1's background color:
this results in this inline style:
 Content goes here
how do I move the inline style to h1's selector inside my test.css? select Inline Style on Blend's pane and select Copy from context menu:
then select target stylesheet, target rule (if any), right click and then Paste properties from context menu:
to have properties added to selected file or rule.
Technorati Tags:
author: Corrado Cavalli | posted @ lunedì 16 aprile 2012 7.57 | Feedback (0)
Fragment loading and Navigation in HTML5 Metro applications
Navigation is one of the core concepts of any Metro application, in this post I'll show how can you implement it in a HTML based Metro application.
The easiest way is to use the same common approach used by millions of HTML pages: using an hyperlink.
Assuming you are in default.html page and wish to navigate to page2.html all you need to do is add something like:
 1:
 2:
 3:
 4:
 5: DemoNavigation
 7:
 8:
 9:
 12:
 13:
 14:
 15:
 16:
 17: Click here to navigate to Page 2
 18:
 19:
When you run the app and click the hyperlink you move straight to page2.html.
This is approach is quite common, works fine (of course) but has a main drawback: you loose state when you move from default.html to page2.html, so if you need to maintain state, something that's quite common in client application Smile, you're on your own.
The problem is the same in web application that's why technologies like ajax or single page applications are gaining more and more momentum.
Let's now briefly see how you can embed an HTML fragment into default.html using WinJS's HtmlControl, here's the html you need to add to default.html page:
 1:
 2:
 3: This is a html fragment
 4:
 1:
 2: This is main page
 3:
 5:
Launching the app you'll see exactly what expected but with some limitations:
the fragment can't reference any css nor javascript file, and you are not informed when the fragment is loaded, luckily there's a way to get some javascript code executed when fragment is loaded into the DOM: WinJS.Pages.define.
Let's assume we wish to dynamically change the text of the fragment after it has been loaded so let's add a new pagedefine.js file (just for better understanding and separation) to our solution:
 1: ///
 3: (function () {
 4: 'use strict';
 6: WinJS.UI.Pages.define("../fragments/pageFragment.html",
 7: {
 8: ready:function(element,options)
 9: {
 10: var text = document.getElementById("txt");
 11: text.innerText = new Date().toLocaleString();
 12: }
 13: });
 16: }());
 1:
 5:
The define method available on Pages object accept the uri that uniquely identifies the page that is going to be loaded and an object exposing a set of properties, among these, ready is the function that will be called when page has been loaded into DOM, then the code just changes element content with current date:
we're now in a state where we can load a HTML fragment and run some code after it has been loades, before going further I need to point out that HmlControl can only load local html, if you need to load external content iFrame is your friend.
Problem now is: what if I need to load the fragment programmatically? (e.g. on a button click), let's remove HtmlControl from default.html and let's inject the fragment with a little help from WinJS:
 1:
 2:
 3:
 4:
 5: DemoNavigation
 7:
 13:
 14:
 15:
 16:
 17:
 19: Load fragment
 20:
 21:
 22:
 1: //default.js
 2: (function () {
 3: "use strict";
 4: var app = WinJS.Application;
 5: app.onactivated = function (eventObject) {
 6: if (eventObject.detail.kind === Windows.ApplicationModel.Activation.ActivationKind.launch) {
 7: if (eventObject.detail.previousExecutionState!== Windows.ApplicationModel.Activation.ApplicationExecutionState.terminated) {
 8: // TODO: This application has been newly launched. Initialize
 9: // your application here.
 10: } else {
 11: // TODO: This application has been reactivated from suspension.
 12: // Restore application state here.
 13: }
 14: WinJS.UI.processAll().then(function (e) {
 15: "btnLoad").listen("click", function (e) {
 16: //Load fragment
 17: var"contentHost")[0];
 18: WinJS.UI.Pages.render("../fragments/pageFragment.html", host, { data: 'data2share' });


text:
Children's Stick Insect is a medium sized stick insect. Females are larger and bulkier than males, and usually green, but can also be pinkish or cream. The wings are yellowish with bright patches of yellow and blue at the base. Males are slender and light reddish brown. Both males and both the males and females have two pairs of wings. Males are strong fliers, but females are too bulky to fly well. They rely on camouflage to avoid predators. When threatened, Children's Stick Insect will spread its wings showing the yellow and blue markings. Nymphs have a yellow stripe running along the length of the body. When at rest, the nymphs will align themselves on the leaf so yellow stripe aligns with the leaf midvein.
length to 14cm
feeds on leaves of Eucalypt trees
The females lay their eggs from a tree where they drop down into the leaf litter. The eggs are small, oval and grey and hatch after about four months. The nymphs are light green or green tinged with pink or purple.
Children's Stick Insect is found in eastern coastal areas of Queensland, New South Wales and Victoria.
|Common Name:||Children's Stick Insect|


text:
Semi-Infinite Strip Problem in the Mechanics of Composite Materials
elasticity, bimaterial interface, semi-infinite strip, singularities
Digital Object Identifier (DOI)
Many problems, ranging from interface-fiber fracture to determining the strength of fiber-matrix interfaces in composites, can be greatly assisted by a complete understanding of the boundary value problem of a semi-infinite strip. The specific boundary value problem of a semi-infinite strip with symmetric tractions on the transverse edges and normal loads on the end is investigated in the present study. The nature of the singular behavior in the slope of the end vertical displacement at the corner points is found. An asymptotic analysis of the solution shows that, depending on the nature of the applied stresses in the vicinity of the corner points, the singularity in the slope of the end vertical displacement may either be a power or logarithmic type, both, or not exist at all. Illustrative examples, for which exact or numerical results are known, are given. Numerical procedures are also given. The direct application of the results of the paper are illustrated for several problems in the mechanics of composite materials.
Was this content written or created while at USF?
Citation / Publisher Attribution
Journal of Composites, Technology and Research, v. 13, issue 2, p. 65-77
Scholar Commons Citation
Kaw, Autar and Goree, James, "Semi-Infinite Strip Problem in the Mechanics of Composite Materials" (1991). Mechanical Engineering Faculty Publications. 194.


Announcement Announcement Module
No announcement yet.
Threading behavior and configuration in SI Page Title Module
Move Remove Collapse
Conversation Detail Module
 - Filter
 - Time
 - Show
Clear All
new posts
 - Threading behavior and configuration in SI
 My original posting from Friday seems to have vanished, so here it goes again.
 I am trying to find out how to configure the maximum number of threads for the Spring Integration (SI) message-bus.
 Specifically, what is the default number of pooled threads used by the message bus and how do I configure the max number of threads spawned by SI?
 One of our teammates has the following question:
 If you put a hundred messages on a queue (via an SI channel) does SI spawn a hundred threads to process them or do they handle them sequentially or does it create a number of threads up to the default setting and process that way?
 - #2
 You can define a TaskExecutor bean and give it as a reference to the element. If you reuse the same taskExecutor everywhere controlling the number of total threads is trivial.
 To answer you team mate's question: I don't know the exact default from the top of my head. But if you want to can create a TaskExecutor that does it the exact way you like.
 What would be the way you expect SI to behave by default?


text:
Cerrudo Services provided fence drainage improvements along the Deming and Santa Teresa Stations, New Mexico portion of border patrol roads. Post and rail vehicle fences required excavation and rock placement, and washes required a Normandy style vehicle barrier to be temporarily removed to accommodate excavation and rock placement under the foot print of the barriers. Cerrudo excavated drainage areas and off hauled excavated material, prepared excavated areas and placed geotextile material for erosion prevention. Rip rap to existing elevation was placed where required.
After layout erosion and site controls were installed, the foot print of the drainage structure was proof rolled to determine deflection caused by soft undesirable material. Soft or unsuitable material was removed or over excavated and replaced with engineered fill, then compacted. At some wash locations the excavation was completed up to the face of the foundation of the pedestrian fence with the excavator. Once the bottom of the excavation was prepared, geotextile was placed on the bottom and sides and pinned in place. The rip rap was staged near the excavation and placed and dressed with a loader and excavator.


text:
A new hydroponic farm in Aliquippa aims to provide fresh, hyperlocal produce year-round while supporting sustainable agriculture practices. GetBlok Farms announced the launch of its hydroponic farm in the West Aliquippa neighborhood in early July.
The farm, fitted in a freight container designed by Boston-based Freight Farms, can grow more than 90 crops simultaneously – including leafy greens, herbs, and roots – using hydroponic techniques that "consume 97% less water than traditional farming methods." The farm is able to grow 2.5 acres of produce in less than 320 square feet of space using sensors and cloud technologies to ensure ideal growing conditions.
"Our mission is simple: move farms, not food," said Vinnie Lima, managing member at GetBlok Farms. "By bringing agriculture closer to the consumers, we dramatically reduce the time and distance traveled between 'farm to fork.' This results in an astounding reduction of over 1,500 miles in transportation, leading to a substantial decrease in CO2 emissions and waste."
GetBlok Farms primarily serves the community through subscriptions, focused on residents, restaurants, and chefs within a 10-mile radius of the farm.
Read more at timesonline.com


text:
Garbh Eilean, Loch Maree facts for kids
|Gaelic name||Garbh Eilean|
|Meaning of name||Rough Island|
|OS grid reference||NG911725|
|Island group||Loch Maree|
|Area||39 ha (96 acres)|
|Area rank||(Freshwater: 9)|
|Highest elevation||25 m (82 ft)|
|Sovereign state||United Kingdom|
Garbh Eilean lies between Eilean Sùbhainn and Eilean Ruairidh Mòr. The islands are among the least disturbed in Britain. They are managed as the Loch Maree National Nature Reserve by agreements between Scottish Natural Heritage and their owners.
Garbh Eilean, Loch Maree Facts for Kids. Kiddle Encyclopedia.


text:
With the recent riots in London, Manchester, Birmingham, and other locations, it is an apt time to examine crowd behaviour and the 'mob mentality.'
So, what causes mob mentality?
There are a number of explanations for mob mentality within social psychology. These include:
Deindividuation – when people are part of a group, they experience a loss of self-awareness.
Identity – when people are part of a group, they can lose their sense of individual identity.
Emotions – being part of a group can lead to heightened emotional states, be that excitement, anger, hostility, etc.
Acceptability – behaviours that are usually seen as unacceptable suddenly become acceptable when others within a group are seen to be carrying them out.
Anonymity – people feel anonymous within a large group, which reduces their sense of responsibility and accountability.
Diffusion of Responsibility – being part of a group creates the perception that violent or unacceptable behaviour is not a a personal responsibility but a group responsibility.
The larger the group or crowd, the more likely that there will be deindividuation and diffusion of responsibility.
It is generally believed that everyone is capable of this mob mentality. However, research does suggest that some personalities or circumstances make it more likely. For example:
Adolescents who lack a stable family can gain a sense of identity when part of a group.
People are more likely to take part in looting during times of hardship.
Particularly emotional events such as football matches.


text:
Serving Lecturer: Introduces the Advantages of Sustainable Biological Fertilizer to the Regent of Blora (IPB News)
IPB News - Dr Yunik Istikorini, lecturer at the Department of Silviculture, along with other young lecturers from the Department of Plant Protection, IPB University, namely Fitrianingrum Kurniawati and Nadzirum Mubin, introduced the various advantages of biological fertilizer.
This activity was attended directly by the Regent of Blora, H Arief Rohman along with other officials as well as the Gondel Village farmer group along with Family Welfare Empowerment Women (PKK) on November 11 2023 at the Gondel Village Hall Office, Kedungtuban District, Blora Regency.
"Biological fertilizer is organic fertilizer added with beneficial microbes. "There are many potential microbes that can be added to organic fertilizer so that the fertilizer has added value so that the minerals in the fertilizer can be properly absorbed by plants," said Yunik.
He mentioned many potential microbes such as Trichoderma, Gliocladium, Bacillus, Pseudomonas fluorescens, Azosprillium, and Azotobacter. These potential microbes are very easy to obtain, for example from forest soil, areas around the roots (rhizosphere) of bamboo, bananas, grass and other healthy plants.
"Plants to which biofertilizer is added have advantages compared to synthetic fertilizer. "Biological fertilizers that are added to plants tend to be healthier and more productive and have higher productivity than plants that are added to synthetic fertilizers," he said.
He explained that the use of synthetic fertilizers has the opposite impact, apart from being expensive, synthetic fertilizers are difficult to obtain. Excessive and continuous use of synthetic fertilizers can cause soil damage so that planting in the following season can reduce plant productivity.
#SDGs3 #SDGs15 #SDGs17


text:
For transferring existing knowledge into new projects, reuse has become an important factor in today's software industry. However, to set reuse into practice, reusable artifacts have to be stored somewhere, and must be offered to (re-)users on demand. For this purpose, advanced reuse repository systems like, for instance, instantiations of the Experience Base concept, are quite frequently used. Many people, from different projects, have to access such a repository at various phases of software development processes to retrieve or store reusable data. In order to fulfill the given tasks, each of these user has specific needs. Taking this into account, a reuse repository has to offer tailored user interfaces and functions for different user groups. Furthermore, since the contents of such a repository usually represent the state of the art of an organization's (core) competencies, not everyone should be allowed to freely access each and every repository entry. This isespecially true for persons that are not part of the organization. This report discusses role concepts that can be applied to reuse repository systems to overcome some of the stated access problems. Commonly used roles for software development and reuse repository management are listed. Based on these roles, a basic set of roles, as implemented in the SFB 501 Experience Base, is introduced.
In order to improve the quality of software systems and to set up a more effective process for their development, many attempts have been made in the field of software engineering. Reuse of existing knowledge is seen as a promising way to solve the outstanding problems in this field. In previous work we have integrated the design pattern concept with the formal design language SDL, resulting in a certain kind of pattern formalization. For the domain of communication systems we have also developed a pool of SDL patterns with an accompanying process model for pattern application. In this paper we present an extension that combines the SDL pattern approach with the experience base concept. This extension supports a systematic method for empirical evaluation and continuous improvement of the SDL pattern approach. Thereby the experience base serves as a repository necessary for effective reuse of the captured knowledge. A comprehensive usage scenario is described which shows the advantages of the combined approach. To demonstrate its feasibility, first results of a research case study are given.


text:
The project replaced 1,650 linear feet of 8-inch diameter sanitary sewer along Washington Street in Brighton. It was the second phase of the rehabilitation of the Brighton sewer system.
Much of Brighton's sanitary sewer system consists of deteriorated clay pipe constructed in approximately 1915. Numerous defects, such as cracked pipes and broken or missing pieces of pipes, were found throughout the system, which were inspected in 2001. The identified defects increase the inflow and infiltration into the sanitary sewer or reduce the capacity of the sewers to carry wastewater.
The City of Brighton selected French-Reneker-Associates to prepare a preliminary engineering report to recommend improvements to its wastewater treatment and collection system. French-Reneker-Associates assisted the city in making an application for an IJOBS grant. The estimated $590,000 project is being funded by a $205,000 IJOBS grant and State Revolving Fund (SRF) loans.


text:
Webinar - Growing Together: Pathways to a Fair Food System for Ireland
Start: Thursday, September 24, 2020• 7:00 PM • Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London (GMT+00:00)
End: Thursday, September 24, 2020• 8:30 PM • Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London (GMT+00:00)
Our Growing Together agri-activists have been busy researching and interviewing farmers around the country and have curated the latest research to establish a path to a more sustainable food system for Ireland. This research, due to be released in September, will explore the environmental and social inequities of our food system, and outline the potential that the concept of food sovereignty holds to make our food system more ecologically and socially just.
Join the co-authors along with some innovative farmers and growers from around the country to launch this exciting piece of research.
About Growing Together Ireland
Growing Together is a cross European project which aims to provides a voice for young people, particularly those from rural areas, to engage with crucial debates on the future of food production, and the wider debates on the future of Europe. The aim of the project is to support young activists and farmers to build skills and take action on issues relating to food and agriculture.
This event starts at 7pm Irish Standard Time.


will merge any form attributes into the request parameters. If you don't want this behaviour you can use disable it with setMergeFormAttributes.
Handling file uploads
Body handler is also used to handle multi-part file uploads.
If a body handler is on a matching route for the request, any file uploads will be automatically streamed to the uploads directory, which is file-uploads by default.
Each file will be given an automatically generated file name, and the file uploads will be available on the routing context with fileUploads.
Here's an example:
router.route().handler(BodyHandler.create());
router.post("/some/path/uploads").handler(routingContext -> {
 Set<FileUpload> uploads = routingContext.fileUploads();
 // Do something with uploads....
});
Each file upload is described by a FileUpload instance, which allows various properties such as the name, file-name and size to be accessed.
Handling cookies
Vert.x-Web has cookies support using the CookieHandler.
You should make sure a cookie handler is on a matching route for any requests that require this functionality.
router.route().handler(CookieHandler.create());
Manipulating cookies
You use getCookie to retrieve a cookie by name, or use cookies to retrieve the entire set.
To remove a cookie, use removeCookie.
To add a cookie use addCookie.
The set of cookies will be written back in the response automatically when the response headers are written so the browser can store them.
Cookies are described by instances of Cookie. This allows you to retrieve the name, value, domain, path and other normal cookie properties.
Here's an example of querying and adding cookies:
router.route().handler(CookieHandler.create());
router.route("some/path/").handler(routingContext -> {
 Cookie someCookie = routingContext.getCookie("mycookie");
 String cookieValue = someCookie.getValue();
 // Do something with cookie...
 // Add a cookie - this will get written back in the response automatically
 routingContext.addCookie(Cookie.cookie("othercookie", "somevalue"));
});
Handling sessions
Vert.x-Web provides out of the box support for sessions.
Sessions last between HTTP requests for the length of a browser session and give you a place where you can add session-scope information, such as a shopping basket.
Vert.x-Web uses session cookies to identify a session. The session cookie is temporary and will be deleted by your browser when it's closed.
We don't put the actual data of your session in the session cookie - the cookie simply uses an identifier to look-up the actual session on the server. The identifier is a random UUID generated using a secure random, so it should be effectively unguessable.
Cookies are passed across the wire in HTTP requests and responses so it's always wise to make sure you are using HTTPS when sessions are being used. Vert.x will warn you if you attempt to use sessions over straight HTTP.
To enable sessions in your application you must have a SessionHandler on a matching route before your application logic.
The session handler handles the creation of session cookies and the lookup of the session so you don't have to do that yourself.
Session stores
To create a session handler you need to have a session store instance. The session store is the object that holds the actual sessions for your application.
Vert.x-Web comes with two session store implementations out of the box, and you can also write your own if you prefer.
Local session store
With this store, sessions are stored locally in memory and only available in this instance.
This store is appropriate if you have just a single Vert.x instance of you are using sticky sessions in your application and have configured your load balancer to always route HTTP requests to the same Vert.x instance.
If you can't ensure your requests will all terminate on the same server then don't use this store as your requests might end up on a server which doesn't know about your session.
Local session stores are implemented by using a shared local map, and have a reaper which clears out expired sessions.
The reaper interval can be configured with LocalSessionStore.create.
Here are some examples of creating a LocalSessionStore
SessionStore store1 = LocalSessionStore.create(vertx);
// Create a local session store specifying the local shared map name to use
// This might be useful if you have more than one application in the same
// Vert.x instance and want to use different maps for different applications
SessionStore store2 = LocalSessionStore.create(vertx, "myapp3.sessionmap");
// Create a local session store specifying the local shared map name to use and
// setting the reaper interval for expired sessions to 10 seconds
SessionStore store3 = LocalSessionStore.create(vertx, "myapp3.sessionmap", 10000);
Clustered session store
With this store, sessions are stored in a distributed map which is accessible across the Vert.x cluster.
This store is appropriate if you're not using sticky sessions, i.e. your load balancer is distributing different requests from the same browser to different servers.
Your session is accessible from any node in the cluster using this store.
To you use a clustered session store you should make sure your Vert.x instance is clustered.
Here are some examples of creating a ClusteredSessionStore
Vertx.clusteredVertx(new VertxOptions().setClustered(true), res -> {
 Vertx vertx = res.result();
 // Create a clustered session store using defaults
 SessionStore store1 = ClusteredSessionStore.create(vertx);
 // Create a clustered session store specifying the distributed map name to use
 // This might be useful if you have more than one application in the cluster
 // and want to use different maps for different applications
 SessionStore store2 = ClusteredSessionStore.create(vertx, "myclusteredapp3.sessionmap");
});
Creating the session handler
Once you've created a session store you can create a session handler, and add it to a route. You should make sure your session handler is routed to before your application handlers.
You'll also need to include a CookieHandler as the session handler uses cookies to lookup the session. The cookie handler should be before the session handler when routing.
Here's an example:
Router router = Router.router(vertx);
// We need a cookie handler first
router.route().handler(CookieHandler.create());
// Create a clustered session store using defaults
SessionStore store = ClusteredSessionStore.create(vertx);
SessionHandler sessionHandler = SessionHandler.create(store);
// Make sure all requests are routed through the session handler too
router.route().handler(sessionHandler);
// Now your application handlers
router.route("/somepath/blah/").handler(routingContext -> {
 Session session = routingContext.session();
 session.put("foo", "bar");
 // etc
});
The session handler will ensure that your session is automatically looked up (or created if no session exists) from the session store and set on the routing context before it gets to your application handlers.
Using the session
In your handlers you can access the session instance with session.
You put data into the session with put, you get data from the session with get, and you remove data from the session with remove.
The keys for items in the session are always strings. The values can be any type for a local session store, and for a clustered session store they can be any basic type, or Buffer, JsonObject, JsonArray or a serializable object, as the values have to serialized across the cluster.
Here's an example of manipulating session data:
router.route().handler(CookieHandler.create());
router.route().handler(sessionHandler);
// Now your application handlers
router.route("/somepath/blah").handler(routingContext -> {
 Session session = routingContext.session();
 // Put some data from the session
 session.put("foo", "bar");
 // Retrieve some data from a session
 int age = session.get("age");
 // Remove some data from a session
 JsonObject obj = session.remove("myobj");
});
Sessions are automatically written back to the store after after responses are complete.
You can manually destroy a session using destroy. This will remove the session from the context and the session store. Note that if there is no session a new one will be automatically created for the next request from the browser that's routed through the session


Toyger Cat
Toyger Cat Care
Toyger cat care, 8 things to consider. Before getting a toyger cat, make sure you know what you are letting yourself in for. Despite, their perceived independence, toyger cats do need care and looking after. And, as with any pet there are expenses.
Your areas of responsibility include: diet, environment, exercise and protection from dangerous substances and accidents. Such as, communicable diseases that could be prevented by vaccination or by isolation from other cats. Other cats are potential sources of infections.
Toyger Cat Care Points to Consider
1. Your Toyger Cat can live for up to 20 years. Can you offer continued care, love and attention for that period of time? Remember, as your toyger cat gets older, so do you. They need care as they age, just like we do. So owning a toyger cat or any cat requires some thought not just an emotional reaction right now.
2. Where will you be in 5, 10 or 15 years time? Will there be room in your life to care for your toyger cat?
3. Can you afford the care and the veterinary fees if your toyger cat gets ill? Yearly check-ups are the minimum for your toyger cat. Your toyger will need regular vaccinations and should, ideally, be neutered.
4. You will need to rid it of fleas, worms and other routine health care maintenance. These all cost time and money.
toyger cat care5. Who will care for it when you go on holidays or visiting friends? Catteries cost money and there may not always be friends that can care for your pet.
6. Toyger cat care includes feeding which is another expense. Allow a minimum of $10 per week. Can you afford this expense throughout the life of your cat?
7. Additional care items may be needed: litter tray, bedding, bowls, collars, cat toys and special treats. Have you got the room and the money to provide these?
8. Other toyger cat care additional needs are treatments. For example: a long haired cat may need regular grooming. Is this a commitment you are prepared to provide when caring for a toyger cat? Have you considered the vet bills. These can be considerable.
Toyger cat care is a lifelong job. We all want cats to have a good home and a good life. However, make sure that you can care for your toyger cat, before you buy.


"The Dolphins" is a protest against abuse of animals and destruction of nature. Elaborate.
Antriksh asked 3 years ago
How does the poet Carol Ann Duffy raise her voice against destruction of nature and abuse of animals in her poem "The Dolphins"?
Or, The Dolphins by Duffy is a protest against abuse of wildlife and exploitation of animals. Discuss.
28 Votes ⇧ Upvote
2 Answers
Jayanta Kumar Maity Staff answered 2 years ago
In her dramatic monologue 'The Dolphins", Carol Ann Duffy has presented herself as an animal-lover and protested against the exploits of animals and other natural elements by man. Though the poem only speaks of the deplorable condition of the dolphins who are forced to live in a pool to perform tricks in circus, the theme actually goes beyond this. In a broader view, the dolphins are mere representatives of all such creatures receiving ill-treatments in the hands of man.
The poet here expresses the sadness in the dolphins' mind through their own voice using the technique of dramatic monologue. The dolphin says that they are in their 'element' to mean they are still living in water, but they are kept away from their natural habitat, i.e., the ocean. They are not free. Freedom is what the dolphin finds most important to be happy. They are not 'blessed' anymore as their movements are restricted in a pool and are guided by a man. They cannot even move according to their will; they have to perform tricks as the man wishes in order to entertain people. So, the dolphins are now used for the monetary purpose of humans. They have to balance themselves on a coloured ball. The dolphin regrets repeatedly:
We were blessed and now we are not blessed.
The dolphin is sad as it is living a monotonous life in the same space. It is in sharp contrast to what the life was like when they were in the sea. The space is limited. A man is there constantly above them guiding their movements and making them feel guilty. The moon has disappeared for them, not only literally but also metaphorically. They can no longer see the moon as they are not in the open sea, and the cheerfulness of their free life has now turned gloomy.
The dolphin remembers its happy days of the past. It finds its own reflection in the other dolphin's actions. Its heart turns to stone when it hears the "music of loss" from the other dolphin.
… Music of loss forever
from the other's heart which turns my own to stone.
So, there is a sense of loss and there is hopelessness. The only thing they have got to entertain themselves is a plastic toy. That is not the ideal thing they used to use living in the open ocean. The man's whistle makes them sink to the limit of the pool. There is a tone of suppression. Humans are toying with the innocent animals' lives. The very last line has a sarcastic tone:
There is a man and our mind knows we will die here.
It is as if where there is a man, there is impurity, there is distortion, artificiality and destruction of everything natural. In fact, the existence of a man above them has been repeated in every stanza of the poem to highlight the authority of man not only over the dolphins but also over nature and most other natural creatures. The way man is expanding their reach in this universe and trying to use natural elements in their way, they may eventually end up making a mess with the balance of this universe and its natural aspects. We are slowly but surely destructing nature and its purity.
The poet here raises her voice against this destruction through human cruelty towards animals. The dolphin acts as the poet's voice to convey her message towards the readers that we should respect the rights of animals to live in their natural habitat and should not inflict our cruelty on them.
269 Votes ⇧ Upvote
Rono Roy answered 2 years ago
People often fail to understand that the relative brain of a dolphin is only second to that of a modern human being. They live in large complex social groups and swim vast distances in open ocean. But while in captivity they can only swim in circles in tanks and are denied to stay in natural habitat and are forced to perform meaningless tricks and are often taken away from their family.
It is just like a man in a prison blindfolded, the dolphins feel the same way. Accounting to all the years many of the dolphins died while in captivity in touch tanks. By this poem the poetess wants to show us the torture the animals receive in the hands of the people. The poetess expects us to see the world from their perspective too and to protect the life of the innocent animals and demands to stop the exploitation of wildlife in the name of self-entertainment. Most of the countries have already banned the dolphin captivity.
91 Votes ⇧ Upvote
💡 Add an Answer
Join for ₹999


text:
- Enroll in a course in the Gnowbe Library
- Get instructions to download app and auto-enroll
- Learn your new skill in 10 mins a day
- Put your Micro-Certificate on Linkedin
- Start Learning to improve yourself
Good water quality for happier and healthier fish.
What will you learn
What is this 'Micro-Learning Course' about?
This course will provide participants with knowledge and practical approaches regarding water quality in the care and husbandry of aquatic species.
Who is this course designed for?
Learners who are interested to learn about the principles and maintenance of good water quality in aquaculture and for ornamental fish.
What will you take away?
At the end of this course, you will be able to:
- Importance of water quality in aquaculture
- Important water quality parameters
- Testing methods & equipment for measuring water quality
- Effects of stocking density on fish health and growth
- Practical considerations in deciding stocking density
- Before We Begin
- Importance of Good Water Quality
- Classification of Water Quality Parameters
- Water Quality Parameter: Dissolved Oxygen
- Water Quality Parameter: pH
- Water Quality Parameter: Temperature
- Water Quality Parameter: Salinity
- Water Quality Parameter: Hardness & Alkalinity
- Water Quality Parameter: Nitrogen & Phosphorus
- Water Quality Parameter: Dissolved and Suspended Solids
- Water Quality Tests: Equipment
- Water Quality Tests: Rapid Kits
- Types of Aquaculture Systems
- Effects of Stocking Density
- Appropriate Stocking Density
- Stocking Compatibility
Beyond their core business of conducting full-time courses for students, Temasek Polytechnic is also committed to the practical re-skilling and professional development of adult learners. They believe in helping individuals and organisations equip themselves with the necessary skills to meet the challenges of a dynamic economy.


Scotch Pine
Pinus sylvestris
Botanical name:
Pinus sylvestris
Green, bracing and invigorating
Please note: The information below is meant to give a brief outline of how an oil can be applied by a trained aromatherapist.
Please do not use this information as a guide for how to use essential oils at home.
Properties and applications:
Topical Circulatory System - muscular aches and pains, stiff muscles, poor circulation
Expectorant - mucous coughs, bronchitis, catarrh
Antiseptic, Antimicrobial - bacterial, fungal and viral infections
Insect Repellent - mosquito and flea bites, head lice
Mental Stimulant - tiredness, lethargy, poor concentration, poor memory
Family:
Pinaceae
Country of origin:
Europe (Scots and Norway Pines), Eastern USA
Part of plant used:
Needles
Method of extraction:
Steam distillation
Blends with:
resin, woody and citrus oils for a bright freshness.
Chemical character:
Terpene type
Safety information:
Pine has a short shelf life as it readily oxidises. Hypersensitivity - avoid damaged, diseased, delicate or children's skin.
Odour profile:
Green, fresh and clear with warm resin notes.
Plant description:
A tall evergreen tree up to 40 meters high, red brown bark, green needles and pointed brown cones.
Historical use:
Used in history to treat respiratory conditions, turpentine is made from the tree's resin.


text: AbstractTo explore the effect of waterborne polyurethane (WPU) on the performance of styrene-butadiene rubber (SBR) emulsified asphalt and broaden the application range of polymer-modified emulsified asphalt, WPU-SBR-modified emulsified asphalt with 0%, 3%, 6%, 9%, and 12% WPU was prepared. The penetration, softening point, ductility, and storage stability tests were used to explore the effect of different contents of WPU on composite-modified emulsified asphalt. Meanwhile, the rheological properties of five modified emulsified asphalts were analyzed by temperature scanning test, multiple stress creep recovery test, and low-temperature bending creep test. The results show that the addition of WPU improved the performance of SBR emulsified asphalt, and the improvement effect varied with the addition amount. With the increase of WPU content, the penetration and unrecoverable creep compliance Jnr of WPU-SBR-modified emulsified asphalt gradually decreased, and the softening point, rutting factor G*/sinδ, and creep recovery rate R gradually increased, indicating that the high-temperature stability of modified emulsified asphalt was enhanced, and when the WPU content was 9%, the best improvement effect was obtained. However, excessive content of WPU will deteriorate the low-temperature performance of WPU-SBR-modified emulsified asphalt, and thus the content of WPU should be appropriately selected in practical engineering applications.


text:
Acronyms that contain the term ARES
What does ARES mean? This page is about the various possible meanings of the acronym, abbreviation, shorthand or slang term: ARES.
We've found a total of 5 shorthands for ARES:
What does ARES mean?
- (Greek mythology) Greek god of war; son of Zeus and Hera; identified with Roman Mars


Create a dashboard with Google Sheets
Learn how to create a free dashboard with Google Sheets
Zero can import data from any source can build charts, tables & forms with it. In this blog post we will see how to import data from a Google Sheet into Zero. We will be using Zero's free plan so you can reproduce everything for free.
In this example we are going to see 3 different use cases, from that you can go on and build something which fits your use case exactly.
To start create a free account at and login. Once you have an account create a new board and open it.
Example 1: Dynamic data from Google Finance
This is an example of how we use Google Finance to create a board with the market cap of a few companies:
Create a spreadsheet with the following format:
CompanyMarket Cap
You can of course add as many companies as you want and use any type of metric other than market cap.
This is the spreadsheet we will use in this example:
We will use Zero's free Google Sheet to JSON Converter API to fetch the data. Make sure that your spreadsheet is public.
Let's create a new chart block:
Inside your Zero board click on new chart
In the script section paste the following code:
// Replace your URL below
const spreadsheet_url = ""
const {data} = await api.get("", {params:{format:3, url:spreadsheet_url}})
return data
Since we want the companies to be in the X Axis we will add Company in the X Axis input. As chart type we select Bar.
This will produce a chart like the one below:
Below that we want a table with the values. So once we saved this block we can click on new table and paste the exact code from above. This will display a nice table.
The two blocks with a small gap between them. On the first block (the chart) click on the top right three dotted icon and then click on Remove Gap. This will remove the gap below and nicely link the two blocks.
That's it!
Now you have a beautiful dashboard which works great on mobile with data fetched directly from Google Finance!
Example 2. Data from Facebook Lead Ads
If you run facebook lead ads you might want to have a dashboards where you see new leads. Let's build that with a little help from Zapier.
Signup to Zapier and use this automation - Once setup your lead will go directly to your Google Sheets.
From there you can follow the example above and do almost anything. These are a few examples:
With a spreadsheet like this:
LeadProcessedDate Added
 1. Display a table with a form to process leads: You could display a table with every lead and in the edit row script send data back to your backend once the lead has been processed.
 const lead =
 const processed =
 if (!["TRUE", "FALSE"].includes(processed)){
 throw new Error ("Processed must be TRUE or FALSE")
 // await // Post your data to your backend
 return '${lead} processed:${processed}'
 2. Group the leads date and create a chart with the total number of leads in one day.
 Something like this:
 const spreadsheet_url = ""
 const temp = []
 data.forEach(lead => {
 const date = lead['Date Added']
 existing_index = temp.findIndex(l => === date)
 if (existing_index > -1) {
 new_value = temp[existing_index].value += 1
 temp[existing_index] = {date:date, value:new_value}
 } else {
 temp.push({date:date, value:1})
 return temp
With Zero you can build any sort of interactive dashboards directly from Google Sheets. It's free to use.
Sign up today
Need Help?
Have a look at the docs or the examples above
Chat with us or leave a message below


Eustress in education: Analysis of the perceived stress score (PSS) and blood pressure (BP) during examinations in Medical Students
M. Ramesh Bhat, M. K. Sameer, B. Ganaraja
Research output: Contribution to journalArticlepeer-review
9 Citations (Scopus)
Abstract
Background: Stress is widely perceived as a detrimental phenomenon which causes bad effects on individuals. Students are subjected to periodical examinations which often lead to stress responses. Overwhelming evidence in the literature suggests that examination stress is bad. However, Hans Selye had suggested that there were two types of stress responses, namely, distress and eustress. Setting and Study Design: In this study, we analyzed the results of the Perceived Stress Score (PSS) and the blood pressure variations among first year medical students. Materials and Methods: One hundred (50 males and 50 females) first year medical students, one month before and immediately after the examinations, were given the PSS sheets. Their blood pressure was also recorded on both the occasions. Results: We are reporting here, the increased PSS score in all the students during the post-examination period (p<0.01). The number of students in the low stress group was the highest (77) before the examination and in the moderately stressed group, it was 20. But in the post examination period, the low stress group had only 24 students, while the moderately stressed group showed an increase in the number of students to 65. There was an increase in the BP also. Conclusions: From the results, it is evident that there was some stress during the examinations, which was in agreement with the previous reports. But we, from the results of this study, suggest that the examinations which causes mild to moderate stress that will condition the students and the efficacy of the General Adaptation Syndrome will be improved in such subjects. Therefore, we suggest that the examination stress (within limits) may be considered as eustress.
Original languageEnglish
Pages (from-to)1331-1335
Number of pages5
JournalJournal of Clinical and Diagnostic Research
Volume5
Issue number7
Publication statusPublished - 01-06-2012
All Science Journal Classification (ASJC) codes
 - Clinical Biochemistry
Fingerprint
Dive into the research topics of 'Eustress in education: Analysis of the perceived stress score (PSS) and blood pressure (BP) during examinations in Medical Students'. Together they form a unique fingerprint.
Cite this


Why are these the Softest Blankets Ever?
Mink blankets, commonly referred to as "faux mink" blankets or "faux fur" blankets, are not what their name implies. They have nothing to do with real mink fur, or any other fur for that matter. Instead, every mink blanket or mink throw, is made out of some sort of synthetic material, primarily acrylic. The typical make-up of a mink blanket or throw is 85% acrylic and l5% polyester. The acrylic supplies the "softness" while the polyester keeps the mink blanket or throw blanket from wrinkling.


text:
Anise Hyssop seeds, Perennial Herb
Anise Hyssop Seeds (Agastache) Uses: Attracts Pollinators, Attracts Honeybees, Attracts Butterflies, Hummingbirds, Aromatic, Cut Flowers, Dried Flowers, Deer ResistantAgastache foeniculum (Lavender Hyssop) is a choice wildflower from the upper Mid-West, the plant blooms in summer with light blue, bee and butterfly attracting flower spikes.
Sowing: Direct sow Agastache seeds for sale on the surface of the soil in late fall. For spring planting, mix the anise hyssop seeds with moist sand and store in the refrigerator for 30 days before planting. To start the seed indoors, sow the seed on the surface of the soil in a flat; keep the soil temperature between 70-75 degrees F with consistent moisture until germination.
Growing: This plant can be very drought tolerant and loves hot weather, but reaches its full potential with regular watering. It will not tolerate soggy, wet soil; it prefers sandy or rocky soil with good drainage. It easily reseeds itself, but unwanted volunteer plants can easily be moved or transplanted. Established plants can be divided. This plant attracts bees, hummingbirds, butterflies, and beneficial insects.
Harvesting: Fresh leaves can be individually harvested for tea, salads, or medicinal use throughout the growing season; in the morning after the dew has dried is the best time for harvesting. Take individual leaves first from the bottom of the stem and work up to the top. Do not remove more than 60% of the plant at any one time.


text:
This month in the 6 in 60 series we've been talking all about the wonderful world of bacteria, catch up here if you've missed any. Therefore I thought it was only right to give this man the monthly scientist.
Dr Theodor Escherich
Born: 29 November 1857
Died: 15 February 1911
Noted for: Discovering the E Coli bacteria.
Why scientist of the month?
Escherich was a German-Austrian paediatrician and he believed that some of the illnesses that the children he treated were suffering from came from bacteria. From there he began to research the bacteria growing inside the human colon and there he found E. Coli. Although he first called it "bacterium coli commune", his discovery in 1885 led to more discoveries in the world of microbiology. He also linked his discovery to gastroenteritis and infant diarrhoea. This was incredibly important in the world of public health. From this discovery and the work of other microbiologists antibiotics have been created and there is now a better understanding of how important bacteria really are.