text:
A Categorization Project solves the task of placing records into categories. It is a top-down organizational project designed to classify individual records into a collection of hierarchical categories, referred to as a taxonomy.
A project can be begun by adding data and adding a taxonomy, with either task being completed first.
One first step in a categorization project is to add one-or-more sources to be categorized from Unify's registered datasets to the project's datasets. A project's sources are focused on a single logical entity, e.g. customers or products. Once added to the project, sources must be mapped to a single unified dataset and initially configured for Unify's machine learning to understand (Working with the Unified Dataset).
The alternative first step is to load the target taxonomy into the project. Understanding and working with the taxonomy as Unify classifies records with increasing confidence and reviewers create more and more feedback is crucial to the success of the project (Working with the Taxonomy).
The next step is to begin categorizing records into the taxonomy. Once a minimum of 5 records have been categorized, Unify can begin to identify matches between words / tokens contained within values of each dataset record and words / tokens already associated with each category of the taxonomy. This enables Unify to suggest a classification for each record based on the initial model it generates (Categorizing Records).
Unify then produces simple high-impact questions regarding whether or not certain records, that are representative of a large portion of the unified dataset records, are categorized appropriately. For example, if Unify has low confidence regarding whether or not a record pertaining to "1 inch turbine bolts" is in fact part of the "Bolt" category within the organization's taxonomy, it will ask a Reviewer for their feedback - driving accuracy and enhancing future automation. The reviewer's feedback is then incorporated into the dataset and Unify's models (Curator and Reviewer Categorizations).


text:
Name of Organization or Group. (n.d.). Title of web page in sentence case. Retrieved from _URL_
Title of web page in sentence case. (n.d.). Retrieved from _URL_
There are two options for citing this source in-text:
1) A shortened version of the title (2 - 3 words) or the full title if it is short, date of publication, and heading of a section in the article/text and/or paragraph number placed in brackets at the end of the sentence. Write the title in mixed case and in quotations marks. All of these examples are correct:
("Understanding Information," n.d., para. 2).
("Understanding Information," n.d., "Introduction").
("Understanding Information," n.d., "Introduction," para. 2).
2) Alternatively, the citation may be integrated into the sentence with a signal phrase and narrative. If lengthy, abbreviate the organization or group name:
According to the website Infogineering, "single-tasking, and keeping the mind focused on one issue at a time" is a potential solution for reducing "information overload" ("Understanding Information," n.d., "Solutions").
APA rules for in-text citation change depending on the
Smith (the secondary source) refers to the ideas of Johnson (the original source):
> Option 1 - Johnson (2008) argued that the Calgary stampede is rooted in conservative political ideologies (as cited in Smith, 2013, pp. 102-103).
In the References list at the end of your assignment, only cite the source by Smith.
Holden et al. (the secondary source) cite multiple research studies (the original sources):
> Option 2 - An increasing amount of critical analysis and evidence have undermined "the notion that digital natives have a unique aptitude for digital technologies (Hargittai & Feldman, 2010; Jones & Czerniewicz, 2010; Hope, 2011)" (Holden et al., 2012, p. 18).
> Option 3 - Multiple research studies have undermined "the notion that digital natives have a unique aptitude for digital technologies" (Holden et al., 2012, p. 18).
In the References list at the end of your assignment, only cite the source by Holden et al.

source: openbmb/Ultra-FineWeb


text:
A project is any outcome "that require[s] more than one action step", according to David Allen. Allen created the widely respected personal productivity system known as Getting Things Done (often referred to by fans as simply "GTD").
Most of us have more projects than we recognize. For example, "Switch to Google Apps" is a project that involves multiple steps taken by multiple people over several days or weeks. "Create next year's budget"? That's definitely a project. Any on-going committee work should be viewed as a project, since committees involve multiple people and multiple action steps.
Getting things done
GTD-ers, as they're sometimes called, manage projects with two essentials tools: lists and reference materials. Lists identify actions necessary for a successful outcome. Calendars are lists in the GTD world: they're just lists of things that happen on a specific date and/or time. Reference materials are items needed during the course of the project, such as instructions, reports, analysis or articles.
Projects move forward in GTD when "next action" steps are extremely clear. Projects stall when the next action isn't clearly defined. A clearly defined action consists of a single task that can be completed with available materials, information, and equipment: "Email Larry", for example.
(Try this: the next time you're in a meeting that lacks focus, ask "So, what's the next action?" Keep asking the question until you understand exactly who is to do what and when.)
You can use Google Apps to track and manage your "next action" lists and reference material in various forms:
- Manage task list and budgets with Sheets,
- Manage timelines with Calendars, and
- Track meeting minutes and decisions with Docs.
A Google Site lets you add context to your lists and reference materials at a dedicated project website. Your Site can give an overview of the project, including the timeline, budget and people involved. And you can even discuss all of these items on a Site discussion forum.
Most importantly, you can share access to the project Site with other people. Your project site can be public for the world to see, or restricted to specific people. Be sure to allow time in your workflow to configure the site, and make sure your collaborators can access the Site.
Here's how to create a basic Google Site for a project using a template:
1. Login to Google Apps, and then click "Sites" in the black menu bar at the top of the screen.
2. Click the "Create" button. (The "Create" button is in nearly the same location on the screen as the "Compose" button within Gmail.)
3. You can either customize your own site format, or use a template. I suggest you use a template (Figure A) for your first site.
Initial setup of a Google Site is straightforward
4. Click on "Browse the gallery for more templates". Click on the "Business Collaboration" in the displayed options, then enter "Project Wiki" in the search box and click the search button. Click on the "Project Wiki" entry (Figure B), then click "Select" to choose this template.
Search for templates with the word 'project'
5. Click the "Create" button to make your Site. The next page you see will be your newly created Site, waiting to be edited.
If you used the "Project Wiki" template, you'll see the menu items from the template displayed (Figure C). The default pages include a project definition page, to-dos, time tracker, files and benchmark dates. The template also includes an example of an embedded Sheet on the Site home page.
The Project Wiki menu items include many essential project management items
6. Edit your Site as needed. The key editing controls (Figure D) for the Site - and pages within the site - are found in the upper right corner.
Site and Page options are found in the upper right
7. Create new pages for your Site, as needed. The five page types (Figure E) serve distinct project management purposes: web page, announcements, file cabinet, list, and start page. (See Google's help pages to learn more about each of these page types.)
Sites offers five distinct page types
8. Share your site. Click the "Share" button to share your site with others. Note that you can manage site-wide and page-level access permissions. (Learn more about Site sharing options from Google's help pages.)
Make sure your Google Site clearly conveys the "next actions" needed for your project. Project reference material should be easy to find, but your Site should emphasize action. The Google Site for your project should help your team deliver successful, completed projects as painlessly as possible. As David Allen puts it, your Site should help you "get things done."

source: HuggingFaceFW/fineweb-edu


text: Abstract A large number of ground based, balloon and rocket borne experiments was performed at various stations during DYANA. This allows the comparisons of simultaneous wind profiles determined by the different techniques. This paper briefly describes each technique and discusses the comparisons between: • —foil chaff at Andøya (69°N, 16°E) and EISCAT winds data at Tromsø (70°N, 19°E); • —foil chaff or falling sphere at Andøya and MF radar winds data at Tromsø; • —MF radar at Juliusruh (54°N, 13°E), meteor radar at Kühlungsborn (54°N, 11°E), meteorological rockets at Zingst (54°N, 12.5°E) and LF drift winds at Collm (51.3°N, 13°E); • —falling sphere, balloons and, for the first time, a Rayleigh Doppler Lidar at the Centre d'Essais des Landes (C.E.L 44°N, 1°W). These methods have widely varying altitude, spatial and temporal resolutions. Despite these differences, the comparisons show a generally good agreement.

source: m-a-p/FineFineWeb


text:
The Message widget is a variant of the Label, designed to display multiline messages. The message widget can wrap text, and adjust its width to maintain a given aspect ratio.
When to use the Message Widget
To create a message, all you have to do is to pass in a text string. The widget will automatically break the lines, if necessary.
from Tkinter import * master = Tk() w = Message(master, text="this is a message") w.pack() mainloop()
If you don't specify anything else, the widget attepts to format the text to keep a given aspect ratio. If you don't want that behaviour, you can specify a width:
w = Message(master, text="this is a relatively long message", width=50) w.pack()
- Message(master=None, **options) (class) [#]
A multi-line text message.
- Parent widget.
- Widget options. See the description of the config method for a list of available options.
- config(**options) [#]
Modifies one or more widget options. If no options are given, the method returns a dictionary containing all current option values.
- Widget options.
- Where in the message widget the text should be placed. Use one of N, NE, E, SE, S, SW, W, NW, or CENTER. Default is CENTER. (the database name is anchor, the class is Anchor)
- Aspect ratio, given as the width/height relation in percent. The default is 150, which means that the message will be 50% wider than it is high. Note that if the width is explicitly set, this option is ignored. (aspect/Aspect)
- Message background color. The default value is system specific. (background/Background)
- Same as background.
- Border width. Default value is 2. (borderWidth/BorderWidth)
- Same as borderwidth.
- What cursor to show when the mouse is moved over the message widget. The default is to use the standard cursor. (cursor/Cursor)
- Message font. The default value is system specific. (font/Font)
- Text color. The default value is system specific. (foreground/Foreground)
- Same as foreground.
- Together with highlightcolor and highlightthickness, this option controls how to draw the highlight region. (highlightBackground/HighlightBackground)
- See highlightbackground. (highlightColor/HighlightColor)
- See highlightbackground. (highlightThickness/HighlightThickness)
- Defines how to align multiple lines of text. Use LEFT, RIGHT, or CENTER. Note that to position the text inside the widget, use the anchor option. Default is LEFT. (justify/Justify)
- Horizontal padding. Default is -1 (no padding). (padX/Pad)
- Vertical padding. Default is -1 (no padding). (padY/Pad)
- Border decoration. The default is FLAT. Other possible values are SUNKEN, RAISED, GROOVE, and RIDGE. (relief/Relief)
- If true, the widget accepts input focus. The default is false. (takeFocus/TakeFocus)
- Message text. The widget inserts line breaks if necessary to get the requested aspect ratio. (text/Text)
- Associates a Tkinter variable (usually a StringVar) with the message. If the variable is changed, the message text is updated. (textVariable/Variable)
- Widget width, in character units. If omitted, the widget picks a suitable width based on the aspect setting. (width/Width)


text:
SAE Standards Works
A-21 Aircraft Noise Measure Noise Aviation Emission Modeling
AIR5766 - Using Aircraft Position Data to Estimate Aircraft Thrust
Not available for purchase at this time.
Vincent E. Mestre
Using Aircraft Position Data to Estimate Aircraft Thrust
This SAE Aerospace Information Report (AIR) provides information and methods for using aircraft position data to estimate aircraft thrust. The thrust estimated using this AIR is intended to be used to estimate aircraft noise level and aircraft air pollution and greenhouse gas emissions. The method of estimating aircraft noise level using aircraft thrust is provided in AIR 1845. Aircraft noise and emissions are generally estimated using models that are based on standard sets of aircraft profiles that include aircraft thrust, speed, and altitude along the flight path. Potential uses of this AIR are to provide an experimental method of determining the adequacy of a standard profile or to develop a flight specific profile. Flight specific profiles may be used to develop or revise standard profiles or to model noise or emissions on a flight-by-flight basis. Potential users include: airport noise modelers, airport emission modelers, developers of airport noise and emission models, federal, state and local government agencies, equipment vendors and other public bodies and officials. The information included here is intended to apply to turbine powered aircraft operating at air carrier and general-aviation airports. The information and methods presented here do not apply rotorcraft or propeller driven aircraft. The primary topics addressed in this AIR include identifying sources of aircraft position data, processing aircraft position data into flight segments including data smoothing and dealing with incomplete or erroneous data, identifying flight segments of constant thrust, acquiring winds aloft data for use in computing aircraft airspeed, estimating aircraft bank angle, estimating aircraft weight when not available, and finally, using these data to estimate the aircraft thrust for each segment of constant thrust flight.
Aircraft noise and emissions are a function of aircraft thrust. Aircraft thrust is not directly known to people modeling aircraft noise or emissions. This AIR provides a method of estimating thrust from aircraft position data.
. All rights reserved.
Intellectual Property Policy
Terms & Conditions


text:
A team of researchers compare 15 king penguins and find out that penguins from areas of high human disturbance are less stressed by noise and approaching humans.
King penguins tolerate some, but not all, human interference. Research published in BioMed Central's open access journal, BMC Ecology, investigated the adjustment of a king penguin colony on the protected Possession Island in the subantarctic Crozet Archipelago to over 50 years of constant human disturbance, reported sciencedaily.com.
A team of researchers from the University of Strasbourg and the University of Lausanne compared 15 king penguins breeding in areas disturbed daily by humans and 18 penguins breeding in undisturbed areas. All penguins selected were brooding a chick aged from two days to one month.
Using heart rate to indicate the stress level of each penguin, they compared the stress response of penguins from the different areas to three stressors. Two low intensity stressors, a human approach to 10 meters and a loud noise, mimicked the actions of tourists, researchers and noises from machines when operating on the outskirts of the colony. One high intensity stressor, a capture, simulated researchers taking measurements.
Compared with penguins from undisturbed areas, penguins from areas of high human disturbance were less stressed by noise and approaching humans, but following capture, their maximum relative heart rate increased 42 percent although they then recovered faster.


text:
By definition, "crisis" means that one's life is out of control. When faced with a health crisis, many people experience the information they receive about their condition -- and the way they receive it -- as making their feelings of being out of control worse, not better. Recently, a team at the University of Wisconsin-Madison reported encouraging results in addressing this problem with a new computer-based program, the Comprehensive Health Enhancement Support System (CHESS).
An interactive, PC-based system with color graphics and a user-friendly format, CHESS is easy to use — even for people with no computer experience. Patients diagnosed with serious conditions such as breast cancer or AIDS/HIV infection are given a computer at home. At their own convenience, patients can access timely, comprehensible information about their disease and take advantage of a variety of non-threatening and anonymous support opportunities.
They can read brief answers to hundreds of commonly asked questions, detailed articles about their health problem and descriptions of services available. They can ask questions of experts anonymously and receive confidential responses. They can read real-life, personal stories of others living and coping with similar problems and communicate directly with these people.
Using problem-solving tools to monitor their health status and risk behaviors, they can think through difficult and important decisions, plan how to overcome obstacles and implement those decisions.
With traditional health education, patients often have little control over the extent, depth or speed of information they receive. CHESS overcomes many of these barriers. Patients get assistance 24-hours a day, 7 days a week. They can proceed at their own pace, deal with issues when, how, in what order, and in as much detail as they wish. Facilitated, online support groups help reduce the sense of isolation and helplessness for patients and their families.
Preliminary results of the CHESS system -- one of the first computer-based patient education and support programs to be evaluated scientifically -- are very promising:
- Women with breast cancer who used CHESS noted that the system was very valuable and easy-to-use. They reported more positive emotions and fewer negative emotions. CHESS was used extensively by both older and younger women, as well as by both collegeand high school-educated women.
- In controlled studies over a six-month period, HIV-infected men and women used the system an average of 132 times per person (more than once a day on average) for an average total of 39 hours per person. Minority subjects used CHESS as much as Caucasian subjects. Compared to controls, CHESS users reported significantly improved mental functioning, more social support, less negative emotion, more active participation in their health care, and, in general, a more active life. They spent less time during out-patient visits and reported shorter hospitalizations resulting in an estimated reduction in health care costs.
The early lessons from CHESS are clear, with the right motivation (in this case a serious health crisis), encouragement and support, people with no knowledge or even a fear of computers can learn the system quickly and begin reaping the benefits.
Computer systems can go beyond delivery of information and help people connect with others who share a similar life experience. And well-designed computer systems can measurably improve health status and reduce health care costs.
CHESS is now being converted to operate on the Internet which will reduce the cost and offer greater, continuing access.
Patient comments on CHESS:
"One thing I learned from CHESS is how much I don't know about my diagnosis and prognosis. I can't begin to tell you how useful CHESS has become for me. So much of fighting this disease is to find a way to get back in charge of my body. This program has been the prime factor in doing that. I feel really in control."
"I ask more intelligent questions when I see my doctor. I feel more in charge of my health care. I have met people who are in the same situation I am in. This has helped. CHESS has allowed me to give of myself in a way that otherwise would not have been possible."
"My biggest benefit was the relief I felt after using CHESS that I had made the right decision as far as surgery for me. I wish every woman had CHESS the minute she had a breast cancer diagnosis."
"This machine came alive and became real, and now suddenly these real people really know me, WOW! I've finally started going to groups and meeting lots of new people, and getting my life going again. I guess when I found out I had this disease I decided I was dying. Well, now I'm back with the living."
For More Information
Gustafson DH, et al. CHESS: A computer-based information and support system for people facing health-related crises or concerns. 17th Annual SCAMC Proceedings American Medical Infomatics Association, 1993.
Gustafson DH, et al. The use and impact of a computer-based support system for people living with AIDS and HIV infection. 18th Annual SCAMC Proceedings American Medical Infomatics Association, 1994.
CHESS (Comprehensive Health Enhancement Support System), Center for Health Systems Research and Analysis, University of Wisconsin-Madison, 610 Walnut Street, Room 1109 WARF Building, Madison, WI 53705-2397.
Excerpted with permission from the Quarterly Newsletter, Mind/Body Health Newsletter. For subscription information call _PHONE_ or visit the Institute for the Study of Human Knowledge website.


The developmental expression profile of PAX2 in the murine prostate.
@article{Chen2010TheDE,
 title={The developmental expression profile of PAX2 in the murine prostate.},
 author={Qian Chen and David J Degraff and Robert A. Sikes},
 journal={The Prostate},
 year={2010},
 volume={70 6},
 pages={654-65}
}
BACKGROUND Nine transcription factors comprise the PAX gene family that regulate organogenesis. The urogenital system of PAX2 null male mice fails to develop properly. PAX2 is overexpressed in PC3 cells. Therefore, PAX2 is implicated in both prostate organogenesis and cancer. However, the expression pattern/profile of PAX2 in the prostate is unknown. METHODS PAX2/5/8 expression was surveyed in E16.5 male urogenital sinus (UGS) by RT-PCR. Prostate samples from 10 developmental stages in C3H… CONTINUE READING
3 Citations
0 References
Similar Papers
Similar Papers
Loading similar papers…


mf
Getting Started With the Fabric Python Library
Fabric is a Python library and command-line tool for streamlining the use of SSH for application deployment or systems administration tasks. Fabric is very simple and powerful and can help to automate repetitive command-line tasks. This approach can save time by automating your entire workflow.
This tutorial will cover how to use Fabric to integrate with SSH and automate tasks.
Installation
Fabric is best installed via pip:
Getting Started With Fabric
Usage
Below is a simple function demonstrating how to use Fabric.
The program above is then saved as fabfile.py in your current working directory. The welcome function can be executed with the fab tool as follows:
Fabric provides the fab command which reads its configuration from a file, fabfile.py. The file should be in the directory from which the command is run. A standard fabfile contains the functions to be executed on a remote host or a group of remote hosts.
Features
Fabric implements functions which can be used to communicate with remote hosts:
fabric.operations.run()
This operation is used to run a shell command on a remote host.
Examples
fabric.operations.get()
This function is used to download file(s) from a remote host. The example below shows how to download a backup from a remote server.
fabric.operations.put()
This functions uploads file(s) to a remote host. For example:
fabric.operations.reboot()
As the name suggests, this function reboots a system server.
fabric.operations.sudo()
This function is used to execute commands on a remote host with superuser privileges. Additionally, you can also pass an additional user argument which allows you to run commands as another user other than root.
Example
fabric.operations.local()
This function is used to run a command on the local system. An example is:
fabric.operations.prompt()
The function prompts the user with text and returns the input.
Examples
fabric.operations.require()
This function is used to check for given keys in a shared environment dict. If not found, the operation is aborted.
SSH Integration
One of the ways developers interact with remote servers besides FTP clients is through SSH. SSH is used to connect to remote servers and do everything from basic configuration to running Git or initiating a web server.
With Fabric, you can perform SSH activities from your local computer.
The example below defines functions that show how to check free disk space and host type. It also defines which host will run the command:
In order to run this code, you will need to run the following command on the terminal:
Output
Automating Tasks
Fabric enables you to run commands on a remote server without needing to log in to the remote server.
Remote execution with Fabric can lead to security threats since it requires an open SSH port, especially on Linux machines.
For instance, let's assume you want to update the system libraries on your remote server. You don't necessarily need to execute the tasks every other time. You can just write a simple fab file which you will run every time you want to execute the tasks.
In this case, you will first import the Fabric API's module:
Define the remote host you want to update:
Set the username of the remote host:
Although it's not recommended, you might need to specify the password to the remote host.
Lastly, define the function that updates the libraries in your remote host.
Now that your fab file is ready, all you need to do is execute it as follows:
You should see the following result:
If you didn't define the password, you will be prompted for it.
After the program has finished executing the defined commands, you will get the following response, if no errors occur:
Conclusion
This tutorial has covered what is necessary to get started with Fabric locally and on remote hosts. You can now confidently start writing your own scripts for building, monitoring or maintaining remote servers.
Powered by WPeMatico
Leave a Comment
Scroll to Top


text:
The following videos are from the lab's research work.
Experiment of overtopping flow striking a cylinder (approximation of human body)
Numerical simulation of overtopping flow striking a cylinder (approximation of human body)
The video below shows the damage process of the toe of a revetment under wave action
Experiments using oscillatory water tunnel
Sediment transport produced by a skewed oscillatory flow over a sand ripple. Recording of a water tunnel experiment.
Sheet-flow sediment transport under oscillatory flow. Recording of a water tunnel experiment.
PIV measurements of asymmetric oscillatory flow over a vortex ripple
Formation of vortex ripple from a flat bed


text:
Wednesday 15 May
Louisiana pancake batfish (Halieutichthys intermedius)
- The Louisiana pancake batfish is a bizarre-looking fish with an enlarged head, a flattened body and limb-like pectoral fins.
- The Louisiana pancake batfish uses its fins to 'walk' along the ocean floor in a peculiar motion that resembles that of a walking bat.
Louisiana pancake batfish fact file
- Find out more
- Print factsheet
Louisiana pancake batfish description
First discovered in 2010, the Louisiana pancake batfish (Halieutichthys intermedius) is a bottom-dwelling fish with a truly bizarre appearance (1). Like other batfish (members of the Ogcocephalidae family), this species has a flattened body with an enlarged head and trunk which form a rounded disc shape (1) (2) (3). Its pectoral fins resemble limbs, and the Louisiana pancake batfish uses these and the smaller pelvic fins to 'walk' along the ocean floor (2) (4) (5) (6).
Like other batfish, the Louisiana pancake batfish is also peculiar in possessing a fleshy structure at the end of the snout which is used to lure in prey. Formed from a modified dorsal fin spine, this structure has a fleshy 'bait' on the end, and when retracted it sits in a cavity at the front of the snout (2) (3) (4) (5) (7). As in other Halieutichthys species, this cavity is very small compared to that of other batfish, and is hidden by puffy folds (1).
The Louisiana pancake batfish's small mouth is situated on the underside of the body, and can be protruded (2). The eyes of this species are set close together on the top of the head (1) (2), and the small, round gill openings are located at the base of the pectoral fins (3) (4) (7). The Louisiana pancake batfish has a small dorsal fin on the top of its tail (2) (3).
The colouration of live Louisiana pancake batfish has yet to be recorded, but preserved specimens are dark to greyish brown, with a pale network-like pattern on the upper surface of the body. The underside of the body is paler, and the pectoral fins are marked with black bands which extend fully across the fin. Juvenile Louisiana pancake batfish have a large black patch on each pectoral fin, but the patch does not extend completely across the fin (1).
The bodies of batfish are covered in cone-like scales known as tubercles, which sometimes have small spines (1) (2) (3) (4) (5), making the fish look like it is covered in coarse hair (5). In the Louisiana pancake batfish, some smaller individuals have small spines on the tubercles, but these are much reduced in larger specimens. Its blunt tubercles help to distinguish this species from other closely related batfish (1).
The Louisiana pancake batfish can be distinguished from closely related species by having blunt tubercles. In some smaller individuals the tubercles may have small spines, but these are much reduced in larger specimens (1).
A relatively small batfish species, the Louisiana pancake batfish is intermediate in appearance between the closely related Halieutichthys aculeatus and Halieutichthys bispinosus, giving this species its scientific name of intermedius (1).
- Also known as
- tortilla fish. Top
FishBase - Halieutichthys intermedius:
International Institute for Species Exploration, Arizona State University: Top 10 - 2011: Pancake batfish:
The Nature Conservancy - Gulf of Mexico:
ARKive - Newly discovered species:
- Dorsal fin
- The unpaired fin found on the back of the body of fish, or the raised structure on the back of most cetaceans (whales, dolphins and porpoises).
- Animals with no backbone, such as insects, crustaceans, worms, molluscs, spiders, cnidarians (jellyfish, corals, sea anemones) and echinoderms.
- Pectoral fins
- In fish, the pair of fins that are found one on each side of the body just behind the gills. They are generally used for balancing and braking.
- Relating to or inhabiting the open ocean.
- Pelvic fins
- In fish, the pair of fins found on the underside of the body.
- The production or depositing of eggs in water.
- A small, rounded, wart-like bump on the skin or on a bone.
- Ho, H.-C., Chakrabarty, P. and Sparks, J.S. (2010) Review of the Halieutichthys aculeatus species complex (Lophiiformes: Ogcocephalidae), with descriptions of two new species. Journal of Fish Biology, 77: 841-869.
- McEachran, J.D. and Fechhelm, J.D. (1998) Fishes of the Gulf of Mexico. Volume 1: Myxiniformes to Gasterosteiformes. University of Texas Press, Austin, Texas.
Carpenter, K.E. (2002) The Living Marine Resources of the Western Central Atlantic. Volume 2: Bony Fishes Part 1 (Acipenseridae to Grammatidae). Food and Agriculture Organization of the United Nations, Rome. Available at:
- Nelson, J.S. (2006) Fishes of the World. Fourth Edition. John Wiley & Sons, Inc., Hoboken, New Jersey.
FishBase - Family Ogcocephalidae - Batfishes (January, 2013)
American Museum of Natural History - Scientists describe two new species of fish from area engulfed by oil spill (January, 2013)
FishBase - Order summary for Lophiiformes (January, 2013)
International Institute for Species Exploration, Arizona State University: Top 10 - 2011: Pancake batfish (January, 2013)
- Chakrabarty, P., Lam, C., Hardman, J., Aaronson, J., House, P.H. and Janies, D.A. (2012) SPECIESMAP: a web-based application for visualizing the overlap of distributions and pollution events, with a list of fishes put at risk by the 2010 Gulf of Mexico oil spill. Biodiversity and Conservation, 21: _PHONE_.
- view the contents of, and Material on, the website;
- download and retain copies of the Material on their personal systems in digital form in low resolution for their own personal use;
- teachers, lecturers and students may incorporate the Material in their educational material (including, but not limited to, their lesson plans, presentations, worksheets and projects) in hard copy and digital format for use within a registered educational establishment, provided that the integrity of the Material is maintained and that copyright ownership and authorship is appropriately acknowledged by the End User.
Louisiana pancake batfish biology
Batfish are named for their habit of 'walking' along the ocean floor on their arm-like fins, a bizarre motion which resembles that of a walking bat (6). Like other batfish, the Louisiana pancake batfish is an awkward swimmer (4) (5).
The Louisiana pancake batfish is well camouflaged against the substrate, helping it to capture unsuspecting prey (6). The peculiar 'lure' at the front of its snout can be extended a short way in front of the head (2) (3), and is believed to lure prey to within reach of the fish's mouth (2) (6) (7). In captivity, other batfish species rarely move around, except for wriggling their lures when prey is present (3), and it is thought that the lure may attract prey by excreting a fluid (3) (6). The diet of the Louisiana pancake batfish is likely to include a range of small invertebrates and fish (2) (3) (5).
Although little is currently known about the breeding behaviour of the Louisiana pancake batfish, other batfish species have pelagic eggs and young, which live in the open ocean rather than on the ocean floor (3) (5). The young batfish are generally transparent and are spherical in shape, only changing into the adult form after settling on the ocean bottom (3).Top
Louisiana pancake batfish range
The Louisiana pancake batfish is known only from the northern Gulf of Mexico, where it has been recorded at depths of up to 366 metres. A few batfish specimens have been recorded further east and north up the Atlantic coast of the United States, but these have not yet been positively identified as this species (1).Top
Louisiana pancake batfish habitat
Like other Halieutichthys species, the Louisiana pancake batfish lives on the ocean floor, where it is likely to be found over sandy substrates (1).Top
Louisiana pancake batfish status
The Louisiana pancake batfish has yet to be classified by the IUCN.Top
Louisiana pancake batfish threats
The known range of the Louisiana pancake batfish occurs within the area affected by the 2010 Gulf of Mexico oil spill, which pumped vast quantities of oil into the marine environment (6) (8) (9


text:
Please tell me if I'm being overly simplistic here.
I was reading the book yeast by Chris White and Jamil Zainasheff. In the book, they talk about measuring how many cells are in a slurry by using a microscope or by dilution until the slurry is clear in a test tube.
However, they also mention that the size and weight (density) of a yeast cell is known, the density of water is also known. So couldn't one take a yeast slurry, measure its weight and volume and use this measure of density to determine what percentage of the mass is composed of yeast, and what percentage is composed of water?
Clearly, since wort is more dense than distilled water, you may have to wash the slurry first. But this seems much simpler than whipping out a microscope or doing multiple dilutions.
Should this work?
Note: I'm talking about measuring the number of yeast cells in a slurry, not their viability or vitality.


Sharing experiences of empathy and resilience
Help children and young people build understanding, resilience and empathy by exploring other young peoples' stories.
Young people talking about experiences to camera
Citizenship, PSHE
Kindness, Refugees and migration, Home learning resources
COVID-19 may have had an impact on children and young people's mental health and wellbeing as they have experienced such change to their daily routines. These activities explore how children and young people have coped with their own challenges and how this has helped them develop their own resilience.
Learning objectives
Learners will:
 - explore different stories to build understanding and empathy
 - hear stories from other young people across the UK about their experiences and resilience
 - learn what is resilience, why it is important and reflect on their own resilience
 - reflect on the importance on listening to others' experiences
 - understand how people cope with challenges and change
Resource overview
There are activities for both primary and secondary learners.
Coping with lockdown (for 11-18 year-olds)
Young people talk about their experience of lockdown in a series of videos filmed by young people. 11-18-year-olds will:
 - think about coping and resilience
 - consider how others have coped
 - think about why empathy is important
 - reflect on what skills they've developed
 - explore ways to further build resilience.
Activities include role-plays, videos, reflection and ways to cope and plan for the future.
Drawing stories
Help primary and secondary learners build empathy and understanding through comics created by young refugees in the UK. Through listening, discussion and creative activities learners will reflect on how people cope with challenges and change and how stories can show us a person's journey. Learners will also have the opportunity to draw their own people and story using videos from the graphic artist Dan Archer
This resource was developed in June 2020 by the British Red Cross.


Posts Tagged 'Solidarity Versus Charity'
Charity Versus Solidarity: What's the Difference and Why Does it Matter? (2008 Presentation)
This is a portion of a larger speech, delivered at an event for service providers and community members, sponsored by the Milwaukee YWCA in 2008. In this segment, I discuss the difference between models of social service provision that are rooted in notions of "charity for" those in need, versus models rooted in "solidarity with" [...]


Understanding the caller Command in Linux
Introduction
In the Linux environment, the caller command is a valuable tool for debugging Shell scripts. It helps identify the location of function calls during script execution, making it easier for users to find and fix errors promptly.
How to Use the caller Command
The caller command is primarily used in Shell scripts to trace function calls. When one function calls another, the caller command will display information about the line and script file from which the function was called.
Syntax
caller [frame]
 - frame: An optional integer specifying the frame level. If not specified, the default is 0, indicating the current frame.
Usage Examples
Basic Example
Here is a basic example of how to use the caller command in a Shell script:
#!/bin/bash function example { caller } example
When you run this script, the output will be:
0 ./script.sh
This means that the example function was called from line 0 in the script.sh file.
Intermediate Example
Here is a more complex example with multiple nested functions:
#!/bin/bash function level1 { level2 } function level2 { level3 } function level3 { caller } level1
When you run this script, the output will be:
4 level2 ./script.sh
This means that the level3 function was called at line 4 from the level2 function in the script.sh file.
Advanced Example
Below is an advanced example using the caller command for debugging in a complex script:
#!/bin/bash function logCaller { local frame=0 while caller $frame; do ((frame++)) done } function funcA { funcB } function funcB { funcC } function funcC { logCaller } funcA
When you run this script, the output will be:
14 funcC ./script.sh 10 funcB ./script.sh 6 funcA ./script.sh
This means that the funcC function was called from line 14, the funcB function from line 10, and the funcA function from line 6 in the script.sh file.
Real-World Applications
The caller command is useful for debugging complex scripts where functions call each other at multiple levels. By pinpointing the exact location of function calls, you can easily identify and fix logical errors.
Debugging Complex Scripts
Suppose you have a complex script with multiple nested function calls, and you encounter an error without knowing exactly where it occurred. By adding the caller command to each function, you can trace the execution flow and pinpoint the error location.
function example { caller # Other commands }
Each time the example function is called, the caller command will print out location information, helping you trace and fix errors easily.
Conclusion
The caller command is a powerful tool for debugging Shell scripts in Linux. By using this command, you can easily trace the execution flow and identify error locations quickly. This not only saves time but also improves your workflow efficiency. Thank you for reading the huuphan.com page!
Comments
Popular posts from this blog
How to install php7 on centos 6: A Step-by-Step Guide
zimbra some services are not running [Solve problem]
Bash script list all IP addresses connected to Server with Country Information


1501-6-10 Definitions.
(A) "Annual recession rate" means the average rate, expressed in feet per year, at which the recession line moves landward. The annual recession rate shall be based on a time period not less than ten years nor greater than thirty years prior to the year that the base-map imagery was acquired. In no case shall the annual recession rate used to calculate the anticipated recession distance be less than zero.
(B) "Anticipated recession distance" means the center-weighted moving average of distances, equal to thirty times the annual recession rate, as determined at five consecutive transects. Anticipated recession distances less than thirty times the "calculated accuracy limit" (refer to paragraph (H) of this rule) shall be equal to zero.
(C) "Barrier beach" means a narrow, elongate sand ridge rising above lake level and extending generally parallel with the mainland shore, but separated from it by a body of water or a wetland.
(D) "Base recession line" means the recession line mapped from synoptic aerial photography, remote sensing imagery, digital data, or maps used to create the recession-line base map upon which coastal erosion areas are designated. The coastal erosion area shall be designated by measuring anticipated recession distances from the base recession line.
(E) "Beach" means A zone of unconsolidated material that extends landward from the shoreline to the toe of the bluff or dune. Where no bluff or dune exists, the landward limit of the beach is either the line of permanent vegetation or the place where there is a marked change in material or physiographic form.
(F) "Bluff" means a bank or cliff with a precipitous, steeply sloped face adjoining a beach or a body of water.
(G) "Bluff line" means the point of inflection where the slope of the upland surface changes to begin its descent to the beach or shoreline.
(H) "Calculated accuracy limit" means the potential error in recession rate resulting from the limit of image resolution and measurement inaccuracies and shall be calculated by dividing a fixed error of five feet by the time period in years over which the annual recession rate is calculated.
(I) "Coastal erosion area" means those land areas along lake Erie anticipated to be lost due to lake Erie-related erosion within a thirty-year period if no additional approved erosion control measures are completed within that time. These areas include land lakeward of the base recession line where anticipated recession distances are greater than zero and extend landward from the base recession line for a distance equal to the anticipated recession distance. Where anticipated recession distances are equal to zero, coastal erosion areas shall not be designated either lakeward or landward of the base recession line.
(J) "Dike" means any artificial barrier together with appurtenant works that shall be used either TO:
(1) Divert or restrain the flow of a stream or other body of water for the purpose of protecting an area from inundation by flood waters; or
(2) Maintain water levels in the diked area for the purposes of managing a wetland.
(K) "Dune" means a ridge or hill of loose, windblown sand, the crest of which typically trends parallel to the shoreline.
(L) "Erosion" means the loss or displacement of land along the lakeshore due to wave attack, ice scour, mass wasting, or other related erosion processes.
(M) "Erosion control measure" means a structure or actions specifically designed to reduce or control lake Erie-related erosion of the shore. Examples include, but are not limited to, groins, jetties, dikes, seawalls, revetments, bulkheads, breakwaters and artificially nourished sand and/or gravel beaches.
(N) "Fill land" means artificial land made by placing substantial fill and associated erosion control measures in lake Erie.
(O) "Mass wasting" means the downslope movement of material due to gravity. Examples of mass wasting include but are not limited to rotational slumps, debris flows, block falls, and rock falls.
(P) "Recession" means the landward retreat of the shore due to erosion.
(Q) "Recession distance" means the distance between two recession lines. The recession distance shows how far the "recession line" (refer to paragraph (R) of this rule) receded during a given time period.
(R) "Recession line" means the landform used for mapping recession of the shore, which shall include but is not limited to:
(1) Where the shore is a bluff, the recession line shall be the bluff line. Examples are shown in figure 1 of this rule.
(2) Where the shore is a sand spit with a dune or a barrier beach with a dune, the recession line shall be the top of the wave-cut face in the dune or the crest of the dune.
(3) Where the shore is a low-lying sand spit lacking a dune or a barrier beach lacking a dune, the recession line shall be the crest of the spit or barrier.
(4) Where the shore is a wetland, the recession line shall be the lakeward line of persistent emergent vegetation.
Figure 1: Examples of how recession lines are picked at bluff edge.
(5) Where the shore is diked, the recession line shall be the top of the lakeward-facing slope of the dike.
(6) Where low-lying waterfront areas are protected by a seawall, bulkhead, or revetment, the recession line shall be the top of the lakeward-facing slope of the structure.
(S) "Sand spit" means a narrow embankment of land composed of sand and gravel deposited by littoral processes which has one end attached to the shore and the other terminating in open water.
(T) "Shore" means the land bordering the lake.
(U) "Shoreline" means the line of intersection of lake Erie with the beach or shore.
See Figure 1 at
(V) "Wetland" means an area that is inundated or saturated by surface or groundwater at a frequency and duration sufficient to support, and that under normal circumstances does support, vegetation typically adapted for life in saturated soil conditions. Wetland includes without limitation swamps, marshes, bogs, and fens.
Eff 9-8-91; 6-14-96
Rule promulgated under: RC Chapter 119.
Rule authorized by: RC 1506.02
Rule amplifies: RC 1506.02, 1506.06


Log in
Xbase - Clever solution to laser engraving fumes.
The Xbase extraction and filtration system.The Xbase extraction and filtration system with a laser engraving machine attached on top.
The need to extract hazardous fumes from engraving lasers to protect the health of the operator and to prevent damage to the laser itself is obvious. But what is the best way to do it?
Engraving lasers burn away layers of material such as glass, wood, rubber and metal in order to make an engraving. This process releases various gases, vapours and particles that can affect the quality of an engraving or damage the laser. These fumes can also cause long-term medical conditions if inhaled by the operator.
Health and safety regulations demand that operators of equipment that produce hazardous fumes are protected. One answer to this particular problem is a fume extraction system that connects to the engraving laser.
In the past, laser owners may have connected a fume extraction system that takes hazardous fumes from the laser and discharges them into the atmosphere outside. This has several drawbacks.
To install an external discharge system can require the hiring of specialist companies to drill holes through walls or ceilings, they may also need to install additional pipe systems. If the vent is to go through the roof then scaffolding may be required and a roof stack would have to be installed and secured. All this can be expensive, time consuming and disruptive to work. It may also be impossible to discharge fumes outside, for example if the building is rented or the laser is say, in the middle of a shopping centre or office block.
Any holes made in the walls or ceiling would need to be properly sealed to prevent water leaks and if the laser is moved to another room then the holes would have to be sealed up completely and re-drilled elsewhere. Discharging the fumes outside may also cause complaints from neighbours or the environmental authorities. There is also the risk that fumes may re-enter the workplace through open windows and doors.
Discharging air from the workplace to the outdoors can also increase energy costs as heated or conditioned air will be pumped outside.
The alternative to discharging fumes outdoors is to use an extraction and filtration system such as the Xbase™ from Purex International Ltd.
The Xbase connects to the engraving laser in minutes using a short length of flexible hose and extracts hazardous fumes using powerful flow controlled blowers. The fumes are then drawn through a patented, specialised filter system before clean air is returned to the workplace. Because the Xbase returns air to the workplace there is no need to cut any holes for ducting in walls or ceilings and no heated or conditioned air is lost.
The Xbase is easy to move around, so if the laser moves, the Xbase goes with it. It is quiet in operation and because no holes in walls are required it is ideal for use in shops, malls, kiosks, schools, engraving workshops and offices.
Another added bonus is that many lasers available on the market can sit on top of the Xbase meaning an additional laser stand is not required. The Xbase also has storage space inside it that can be used in a variety of ways.
The extraction rate is fully adjustable so problems like drag marks on the work can be avoided and the system can be configured to filter fumes from most engraving materials.
The Xbase is available from Purex or a worldwide network of stockists, for more information visit the website _URL_


text:
That's not a bee! Eagle-eyed student calls out textbook publisher's error
An eagle-eyed 12-year-old boy who found an error in an English textbook has been vindicated by the publisher promising to correct the mistake in the next print edition, Liaoshen Evening News reported.
Cui Chenxi, a seventh-grader from Shenyang, capital of northeast China's Liaoning Province, found that the picture of a bee in the textbook was actually a hoverfly.
"The differences between bees and hoverflies are quite easy to spot. Bees have two pairs of wings, while hoverflies have only one. The belly is fat for bees but thin for hoverflies," Cui told the newspaper.
The publisher admitted the mistake after consulting with experts. It said it would replace the picture in the next print edition and thanked Cui for noticing the mistake.
Cui's mother described her son as a devoted lover of biology.


Group keeps melody of ancient flutes alive
2012-12-10 00:42:02 GMT2012-12-10 08:42:02(Beijing Time)
A group of Chinese who consider themselves to be descendants of Genghis Khan have dedicated themselves to preserving the chuer, an ancient flute that comes from the mountains they call home.
The group of Chinese Tunivians, an ethnic group originating from Mongolia, live near Kanas Lake, a body of water located near the Altay Mountains in northwestern Xinjiang Uygur Autonomous Region.
The area's picturesque mountains and rivers have long served to inspire chuer players, with many describing the flute as mimicking sounds in nature.
"The way my dad played sounded like the mountains and water here, especially the song 'Altay Mountains.' It was so beautiful that you could almost see the outline of the mountains," said Mengkeyi, a budding chuer player who was inspired to take up the instrument after the death of his father Erdeshi.
The chuer is a lightweight wind instrument made out of lovage, a perennial plant that is plentiful in the area. It has only three holes, but produces a variety of sounds, depending on a player's skills.
The flutes are created in accordance with sizes of a player's hands. No two chuers or chuer players sound or play alike, said Mengkeyi's younger brother Daxi.
"The plants used to make chuer grow only here. Each autumn, we go to the mountains to find suitable lovage stalks. The ones that grow in the mountains are better than those growing at their base. Thin ones are better than thick ones. Roughly one out of every 10 stalks can turn a good chuer," Mengkeyi said.
The instrument is incredibly difficult to learn to play.
"Many people cannot make any sound with the chuer. I was one of them. I made no sound at all for my first three days of training," said Daxi, who was interviewing local elderly to collect information about the instrument to pass on to others.
"Playing the chuer is truly a difficult job. Our father started learning at nine years old but could not make any sound until he was 13. I wasn't able to make any sound until I was a teenager, too. Many quit after considering it impossible," Mengkeyi said.
Songs written for the chuer are not preserved on any score, but are passed on from one generation to another, each adding a unique flavor to the tune.
However, Mengkeyi has little worry about the future of the instrument. "Many people come here to learn how to play. Some are professional musicians, others are local residents," Mengkeyi said.
Editor: Yuan Yue
Add Comment


text:
I thought a belly tank was classified as a "Lakester" when it ran on the dry lakes, but early on I was told by good friend Jim Miller, curator of the American Hot Found Foundation (_URL_ that it was considered both a "streamliner" and a "Lakester" – it just depends "when" you are looking at the history.
I hate moving targets. I have a hard enough time trying to keep away from all the crazy drivers on the road here in Florida, let alone staying away from hitting them. So where do you look for a bit of history on these classes? Why Dean Batchelor, and his book "The American Hot Rod" is a great starting place, of course!
The American Hot Rod (Dean Batchelor, 1995)
Dean was there when it all happened starting in the 1930's and beyond. He was an aircraft builder, race car designer and driver, automotive journalist, and all around hot rodder – and – automotive historian too. In fact, Dean is one of the recognized legends of automotive history, and each year the Motor Press Guild honors excellence in automotive journalism with an award given out in his name. You can read more about Dean, the award, and his history on the following website:
Classes of Cars on the Dry Lakes (_PHONE_)
In Dean's book "The American Hot Rod," Dean covers the history of hot rodding as seen through his eyes and memories as well as his friends from the era. One of the excellent chapters in his book is called "Clubs and Associations", and details the beginnings of time trials and "classes" of cars from the late 1930's, as follows:
In 1938, the first year of official SCTA (Southern California Timing Association) meets, two classes of cars were listed as follows:
- Stock Roadster Bodies
- Modified Roadster Bodies
These two classes of bodies were further divided into seven different speed classes. During this year, entrants raced side-by-side, like modern drag races.
1939 Thru Mid 1941:
In 1939, side-by-side contests were abandoned for safety reasons, and another body class called "Streamliners" was added. As Dean reports, "the Streamliner" class amounted to a catch-all for cars that didn't fit into the Roadster or Modified classes, and these were sometimes an ex-sprint car or something similar. They usually had pointed tails, unlike the Modifieds which were squared-off behind the driver. So there were a total of three classes as follows:
- Streamliner (first year for Streamliner Class)
In mid-1941, The SCTA added a fourth class, "Unlimited" which allowed cars with much larger engines (V-16, for example) to run separately from the rest of the cars powered by traditional engines. By the end of 1941, there were four classes:
- Unlimited (first year for Unlimited Class)
SCTA did not officially run during World War II years.
The four body class divisions remained through 1946 as follows:
- Streamliner (Belly Tanks ran under the Streamliner Class)
Two other items worth mentioning occurred in 1946:
- First belly tank on the dry lakes was designed and built by Bill Burke. Drivers were Eddie "Choppo" Korgan and Ken Crawford.
- Veda Orr published first book "Veda Orr's Lakes Pictorial" for the 1946 season
From 1947 to 1948, only two body styles were recognized in classes:
The "Modified" and "Unlimited" class designations had been dropped. In addition, engine size entered the picture for 1947 within each of these classes / body types. Belly tanks continued to be classified as "Streamliners".
In addition, the Russetta Timing Association was formed in 1948 to provide timing trials for sedans and coupes. This occurred because SCTA did not allow these types of cars unless invited to run.
In 1949, the Roadster class was divided into two groups (Roadsters and Lakesters) and the streamliner class continued, leaving the following classes:
- Roadster (stock Body)
- Lakester (altered bodies such as channeled bodies, Model T-bodied cars, and those with streamlining ahead of the firewall). This was the first year for the Lakester Class.
Belly tanks continued to be classified as "Streamliners".
After three fully enclosed body streamliners appeared in 1949 (Lee Chapel, Howard Johansen, and the So-Cal Special Streamliner), exposed wheel streamliners which included belly tanks and sprint car types were moved from the Streamliner Class to the Lakester Class which had debuted a year earlier. Altered roadsters became "Modified Roadsters" leaving the following classes:
- Modified Roadsters
- Lakesters (Belly Tanks moved from the Streamliner Class to the Lakester Class in 1951)
1951 and Beyond
Classes continued to become more complex and were further divided by body type and engine size in the following years. I found a great article that appeared in the 1952 edition of "How to Build a Hot Rod" by Fawcett Books, and have posted the article below for your review. The article is called "Clear-Cut Classification" and reviews the classes and engine sizes as of 1952. I think you'll find the article to be a great read in every way.
I'm also still reviewing the information from 1938 thru 1950, and may be able to offer further detail concerning classification of body types too. I'm told by researchers in the area that body types, classes, and engine classifications recognized sometimes changed for specific meets (SCTA, Russetta, and location of these meets). So the information above should be viewed as a guideline provided by Dean Batchelor for the overall classification of body types from _PHONE_ on the dry lakes. We may be able to further define this classification scheme in the near future.
So….take your pick and call your Belly Tank a "Streamliner" or a "Lakester" – depending on the year it was built. Both are great designations for historic tanks out there, and I hope you find this bit of trivia interesting to review. It was fascinating to me when I first came upon it.
Until next time gang….
Shake, Rattle, and Go!


The shock incarceration is a short-term imprisonment usually applied to a first-time convict under the theory that it may have better rehabilitation results than a mere suspended sentence. In Estonian legal practice, a few weeks or months of an imprisonment that would otherwise be either immediate or suspended can be converted into shock incarceration, and the trial courts are empowered to decide individually on every case whether it would be appropriate. The rest of the full term will remain suspended, and will not be enforced if the convict does not commit new crimes during a set term, usually a few years.


text:
Stewardship of the Built Environment
7 x 10
7 x 10
When we think of green building, we tend to picture new construction. But Robert A. Young argues that the greenest building is often the one that has already been built. In Stewardship of the Built Environment, he shows how rehabilitating and reusing existing structures holds untapped potential for achieving sustainable communities. Students and professionals alike will discover the multifaceted benefits of reuse.
Young begins by describing how historic preservation in the United States, often overlooked because of the predominant focus on new construction, is actually an important sustainable design strategy. He then examines the social, environmental, and economic benefits of preservation—from the societal value of reusing existing buildings to financial incentives available for rehabilitation. Young concludes with insights into the future of reusing buildings as a sustainability strategy. He also provides several informative appendices, including a glossary of key terms and acronyms and recommendations for further reading.
Readers will become familiar with essential terminology; sustainability and historic preservation metrics; government oversight processes; and opportunities for smart growth afforded by rehabilitation. This knowledge is key to preserving the past while building a sustainable future.
"For twenty years advocates for so-called 'green buildings' have focused almost exclusively on new construction, ignoring the environmental contributions of the existing building stock. Worse yet, historic buildings were dismissed as energy hogs that should be razed and replaced with green gizmo structures. They were wrong. And Robert Young amply refutes their foolishness in his excellent new book."
Donovan Rypkema, principal, PlaceEconomics
"It will be very difficult for anyone to leave historic preservation out of an overall sustainability strategy after reading this book. Stewardship of the Built Environment does a great deal to explain the interconnectedness between old buildings, sustainability, energy use and economics, and underscores the critical role old buildings play in a healthy built environment."
Ronda Wist, Senior VP, Policy and Advocacy, Municipal Arts Society NYC
"This book makes an important contribution to the literature about the intersection of historic preservation and sustainability. The stewardship of the built environment is simultaneously an act of preservation and sustainability. Stewardship is the core. Young explores both the warp and woof of the rich tapestry of sustainable stewardship, illustrating both its vertical and horizontal relationships."
Carl Elefante, FAIA, in his foreword
"In Stewardship of the Build Environment: Sustainability, Preservation, and Reuse, author Robert A. Youn takes a philosophical look at the role of historic preservation in the ongoing push toward more sustainable buildings and communities. Supported by countless case studies of buildings that got it right, Young's in-depth analysis of the many factors that go into making a building sustainable (everything from location to energy usage) is a must-read for anyone interested in preservation's role in the green movement."
"The underlying call for a paradigm of'stewardship of the build environment' has broad relevance."
"It is difficult to imagine that a planner could work effectively in neighborhood redevelopment or real estate as well without the comprehensive knowledge Young presents in the book."
Journal of Planning Education and Research
Chapter 1. Overview and Introduction
Chapter 2. Social Factors
Chapter 3. Environmental Factors
Chapter 4. Economic Factors
Chapter 5. Putting It All Together
Appendix A. Abbreviations
Appendix B. Recommendations for Further Reading


the corresponding field types.
 - ArrayTypes are converted into a 2-level nested group, where the outer group has the inner group as sole field. The inner group has name values and repetition level REPEATED and has the element type of the array as schema. We use Parquet's ConversionPatterns for this purpose.
 - MapTypes are converted into a nested (2-level) Parquet GroupType with two fields: a key type and a value type. The nested group has repetition level REPEATED and name map. We use Parquet'sConversionPatterns for this purpose
Parquet's repetition level is generally set according to the following rule:
 - If the call to fromDataType is recursive inside an enclosing ArrayType or MapType, then the repetition level is set to REPEATED.
 - Otherwise, if the attribute whose type is converted is nullable, the Parquet type gets repetition level OPTIONAL and otherwise REQUIRED.
write过程
回到write这条线，会递归调用writeValue()、writePrimitive()、writeStruct()、writeMap()、writeArray()将基本类型和struct、map、array保存起来。其中根据schema，又会触发MessageColumnIORecordConsumer内部类的startMessage()、startField()、startGroup()等方法。这3个概念很重要，应该说就是基于这些才实现了dremel论文里的数据结构：
 - Message: a new record，对应一行
 - Field: a field in a group or message. if the field is repeated the field is started only once and all values added in between start and end，对应一个kv对，key是field name，value可以是group，从而嵌套其他数据结构
 - Group: a group in a field
由于采用了抽象嵌套的方式，map<string, array>首先是一个field整体，而其中每一个string, array也构成一个子field。在底层存储和建索引的时候，应该是nested最深的field对应一个column，针对这些column计算r和d的值。
flush过程：
再来看flush这条线：
 Scala | copy code |?
1
# InternalParquetRecordWriter
2
 public void write(T value) throws IOException, InterruptedException {
3
 writeSupport.write(value);
4
 ++ recordCount;
5
 checkBlockSizeReached();
6
 }
如果需要flush，则checkBlockSizeReached会再调用flushRowGroupToStore()落地磁盘，并调用initStore()重新初始化内存存储区。
SparkSQL日志分析
以上源码分析的推论是，nested结构的每一个field都会被存储为一列，以下通过写入和查询日志再予以证明。
数据结构类似：
 SQL | copy code |?
01
CREATE TABLE IF NOT EXISTS orc_qiche (
02
 query string,
03
 uid string,
04
 country string,
05
 province string,
06
 city string,
07
 sttime string,
08
 properties map<string, array<string>>,
09
 intension array<string>
10
 )
11
其中properties含有brand、effects等key。
写入日志：
 Scala | copy code |?
1
15/07/21 14:02:09 INFO ColumnChunkPageWriteStore: written 88B for [properties, brand, array] BINARY: 2 values, 34B raw, 50B comp, 1 pages,
2
encodings: [RLE, PLAIN]
3
15/07/21 14:02:09 INFO ColumnChunkPageWriteStore: written 85B for [properties, effects, array] BINARY: 2 values, 33B raw, 48B comp, 1 pages
4
, encodings: [RLE, PLAIN]
5
15/07/21 14:02:09 INFO ColumnChunkPageWriteStore: written 69B for [properties, brand, array] BINARY: 1 values, 21B raw, 36B comp, 1 pages,
6
encodings: [RLE, PLAIN]
7
15/07/21 14:02:09 INFO ColumnChunkPageWriteStore: written 72B for [query] BINARY: 1 values, 16B raw, 35B comp, 1 pages, encodings: [RLE, BI
8
T_PACKED, PLAIN]
查询日志：
8A542FE1-9484-4B2C-9184-DEF07113B83B
from: _URL_
The CA–consistent, available, but not network partition tolerant–category in CAP has a very specific history. Not only forfeiting "network partition tolerance" can be understood as impossible in theory and crazy in practice (P as an illusion of a choice), but there is also an overlap between the CA and CP categories. As a result, many consider that it's impossible to build a production CA system. But you can actually build a system without network partition tolerance, and sometimes you should.
A brief history of the CA category
Let's look at the academic history of the CA category in CAP:
 - In 2000, Eric Brewer presents the CAP conjecture. In his presentation, CA exists, for example for systems using the two-phase commit protocol. He considers that "‹the whole space is useful."
 - In 2002, Seth Gilbert and Nancy Lynch publish the CAP proof. CA exists: "Systems that run on intranets and LANs are an example of these types of algorithms.
 - In 2010, Daniel Abadi raises the point that there is an overlap between CA and CP: "What does 'not tolerant' mean? In practice, it means that they lose availability if there is a partition. Hence CP and CA are essentially identical.
 - Still in 2010, Michael Stonebraker publishes multiple documents around the limited importance of partitions, with the tagline "Myth #6: In CAP, choose AP over CA", considering that with the capacity of modern hardware, small distributed systems can solve most real-life issues, and that "it doesn't much matter what you do when confronted with network partitions."
 - And again in 2010, Coda Hale publishes a blog post: "You cannot sacrifice partition tolerance", explaining that only AP and CP are possible.
 - This triggers a feedback from Stonebraker, who restates all his points.
 - 2 years later, in 2012, referring to these works, Eric Brewer states that "exactly what it means to forfeit P is unclear" and then clarifies: "choosing CA should mean that the probability of a partition is far less than that of other systemic failures, such as disasters or multiple simultaneous faults."
So we need to sort out the following issues:
 - There is an overlap between CP and CA.
 - There is a theoretical impossibility: network partitions are a given, you can choose between 'A' and 'C' when a partition happens but not if partitions happen.
 - There is a practical impossibility: network partitions are too likely to happen on a real life system to be ignored, so CA is impossible in practice.
What does CA mean?
CA is about "forfeiting network partition tolerance", i.e. being "network partition intolerant". Partition intolerance does not mean that network partitions cannot happen, it means network partitions are a critical issue. It's a bit like gluten: being "gluten intolerant" does not mean that you cannot eat any, it means that you should not. Like for gluten, a CA system should also have a means of recovery should a network partition actually happen. The two-phase commit is a perfect example: it comes with a repair tool to fix the transactions broken by an heuristic resolution.
The fact that CA does not mean "I have a network that cannot be partitioned" is important, because it implies a partition can actually happen. This is stressed by Brewer: "choosing CA should mean that the probability of a partition is far less than that of other systemic failures." To estimate this probability you must be quite clear about what a partition actually is. This whole post is only about network partitions.
Let's summarize: CA describes the specification of an operating range, and not a behavior. CP, AP describe the behavior when a partition occurs. This obviously leaves room for an overlap between CP and CA. Let's look at this overlap now.
The overlap between CP and CA
It's the point identified by Abadi: "What does "not tolerant" mean? In practice, it means that they lose availability if there is a partition. Hence CP and CA are essentially identical." A system that does not do anything once partitioned is trivially CP: it does not present a non-consistent history. Such a system could also be considered as CA: it stops working when there is a partition–hence the overlap. This overlap is minimal however:
 - Many CA systems are not CP: for example, the two-phase commit protocol is not consistent (nor available, nor


AppSensor Developer Guide
From OWASP
Revision as of 18:57, 2 September 2010 by Augustd (Talk | contribs)
Jump to: navigation, search
AppSensor Developer Guide
The AppSensor Project describes an application layer intrusion detection system. There is a Java implementation of this system whose basic usage can be found in the Getting Started guide. This document describes in more technical detail for developers how to use and extend AppSensor for a specific environment and application.
Developer Overview
AppSensor is an application layer intrusion detection system. The concept in implementation is roughly analogous to an intrusion detection (and prevention) system in the network security world. However, this concept can be applied inside of an application in a more specific way that (importantly) reduces false positives, which is an issue that often plagues network intrusion detection systems. This means that the core of the AppSensor system performs detection, monitoring, and (possibly) response depending on configuration settings.
AppSensor has been built to be quite extensible from the ground up. Most of the system can be appreciably modified to your needs by simply extending certain key interfaces, and modifying the appsensor configuration file appropriately. This extensible design makes it possible for various configurations to be applied depending upon the application. For instance, in a small application, you may choose to use a simple file-based model for storing intrusions that are detected, whereas for a larger application, you may have a relational database serving as your data store. See the Extending AppSensor section below for specifics on what can be extended.
Extending AppSensor
Below you will find the individual interfaces you are likely to extend in order to modify AppSensor for your environment.
IntrusionStore
The IntrusionStore interface represents, simply enough, the storage mechanism for any intrusions that occur in the system. The AppSensorIntrusionDetector takes care of adding the intrusions to the intrusion store. The current DefaultIntrusionStore class stores all of the intrusions in a simple HashMap. The class is fairly small and simple, though, so it is trivial to understand it's inner workings and to use similar concepts to build an implementation that suits your environment.
The setting you'll need to modify in appsensor.properties to enable your own implementation is:
# This is the class that handles the intrusion store
AppSensor.intrusionStore=org.owasp.appsensor.intrusiondetection.reference.DefaultIntrusionStore
ResponseAction
The ResponseAction interface is used to simply respond to an intrusion once a threshold has been crossed. The decision for when to respond is handled by the AppSensorIntrusionDetector, but the actual handling of the response is delegated to implementations of this interface. The only reason to not use the DefaultResponseAction would be if you have additional response actions you need to take, or if you need to modify the handling of one of the existing responses. Again, the DefaultResponseAction should give you a good starting point for creating your own implementation.
The setting you'll need to modify in appsensor.properties to enable your own implementation is:
# This is the class that handles the response actions
AppSensor.responseAction=org.owasp.appsensor.intrusiondetection.reference.DefaultResponseAction
The DefaultResponseAction supports the following actions:
 - "log" - logs the activity
 - "logout" - logs the currently logged in user out (if one exists)
 - "disable" - disables the account of the currently logged in user (if one exists)
 - "disableComponent" - disables access to the location of the intrusion using the AppSensorServiceController
 - "disableComponentForUser" - disables access to the location of the intrusion using the AppSensorServiceController for the currently logged in user(if one exists)
 - "emailAdmin" - Email administrator to notify of what action has occurred
 - "smsAdmin" - SMS administrator (via email to sms account) to notify of what action has occurred
Response actions can be configured for individual detection points using properties like: IntrusionDetector.<detection point>.actions=
# list of actions you want executed in the specified order as the threshold for this intrusion is met -
# ie. log the first time, logout the user the second time, etc.
IntrusionDetector.IE99.actions=log,logout,disable,disableComponent
ASUtilities
The ASUtilities interface handles a collection of concerns. It handles retrieving the current user of the application (ie. the user that made the current request and/or caused the current intrusion). In addition, it handles the retrieval of the logger as well as the current HTTP request. The DefaultASUtilities implementation simply delegates to the equivalent ESAPI method calls to retrieve the appropriate data. If you are not using ESAPI's logging and/or authentication and/or request binding utilities, you'll need to create your own implementation of this class. Note: This is the interface you'll need to implement if you are not using ESAPI.
The setting you'll need to modify in appsensor.properties to enable your own implementation is:
# This is the class that handles the utility retriever
AppSensor.asUtilities=org.owasp.appsensor.reference.DefaultASUtilities
TrendLogger
The TrendLogger interface is in place to handle the logging of events in order to monitor trends. The techniques for doing this vary widely depending upon environment. You'll most likely not want to use the existing InMemoryTrendLogger as it will scale very poorly. It is simply in place as a starting point for other implementations.
The setting you'll need to modify in appsensor.properties to enable your own implementation is:
# This is the class that handles the trend logging
AppSensor.trendLogger=org.owasp.appsensor.trendmonitoring.reference.InMemoryTrendLogger


text:
The feed industry in the United Kingdom is dominated by two national compounders, a few country compounders and several co-operative compounders. The independent manufacturers have about a 43% market share and the cooperatives and nationals together take 57%. Annual production in 2005 averaged 13.6 million tonnes, coming down from 14 million tonnes in 2004.
Total annual feed production shows a quite regular figure,
circling around 13.7 million tonnes in the last five years. Production peaked in
2004 with a little over 14 million tonnes, but came down to 13.6 million tonnes
last year mainly due to losses in cattle feed and poultry feed.
Compound feed production for cattle increased between 1974
and 1983. This increase was influenced by the financial incentives for dairy farmers to
produce as much milk as possible, thereby requiring large volumes of feed for their
However, in 1984 the European Union, under
the Common Agriculture Policy, introduced milk quotas, designed to curtail
over-production. Milk producers stopped feeding their cows so much compound
feed, because it was no longer profitable for them to maintain the existing high
levels of milk production. The number of dairy cows also fell, by 10.7% between
1986 and 1990, after which there was only a slight drift downward. The total
cattle population declined from an annual average of 12.9 million between 1984
and 1986 to 11.7 million in 1995. One major factor here was the BSE crisis
The drop in demand for cattle feed was partly offset by
increased demand for feed for other animals. At its lowest point, in 1991, total
compound feed usage was only 4.4% below its 1982-84 annual average. Since 1991
there has been a slow increase in demand.
Cattle feed in the UK is dominated by feed for dairy cows,
taking around 66% of total cattle feed production. Feed for beef cows averages
to 28%. Cattle feed as a whole takes 32% of total UK feed production.
Pig production occurs in most areas but is prevalent in eastern
and northern England to take advantage of cereal production, which forms the
basis of pig diets. The cereal diet is supplemented with protein from vegetable
and animal sources, and with minerals and vitamins. Pig producers feed their
pigs home-mixed rations prepared on farm or purchased from a feed compounder.
Although bacon is still a big issue at UK breakfasts feed for
pigs represents only 12% of total feed production. The volume is still declining
and in five years time has come down almost 25%. In 2005 a little over 1.6
million tonnes of pig feed was produced, with feed for fatteners taking the
major portion (66%).
A particular feature of the poultry industry, setting it apart
from other livestock industries in the UK, is its vertical integration. Around
85% of poultry meat producers and 66% of egg producers are 'integrated'. This
means that they control all stages of production from birth to slaughter of
broilers or layers, including breeding, fattening, and the production of animal
feed for their livestock.
Poultry feed is the major feedstock in the UK. It can be split
up in feed produced for integrated production and for independent poultry
production, where integrated production has a little over 50% share of total
poultry feed production. In 2005 some 6.3 million tonnes were produced (3.5
million tonnes broiler feed and 1.8 million tonnes of feed for laying hens),
which represents 46% of total feed production. In 2004 this figure was 6.4
million tonnes. The reduction of almost 200,000 tonnes comes fully to the
account of broiler feed, probably due to bird flu problems in Europe.
For more detailed information see Defra
2/3 articles remaining | Register to continue reading.


text:
Davide SOLA, Gianfranco SCALABRINI and Giovanni SCARSO BORIOLI
New product development (NPD) is an inherently uncertain process. Such
uncertainty translates into a strong risk for companies in the process of new
product/services development, which typically involves involve substantial
investments committed upfront.
The article presents an innovative methodology for to reduce this innovationrelated
risk. In particular the methodology is based on the principle of
"disciplined experimentation", a structured process to identify quickly the key
vivid needs of the customers (Job To be Done), reproduce the key features of
the new service/product to satisfy these needs (fast prototyping), and
simulate a realistic customer journey directly with the final customers. A
rigorous testing protocol and a continuous improvement process support
these experimentation steps.
This approach allows testing the main working hypotheses, pivoting them
continuously to verify the value (clients are ready to pay for the
product/service a price "p" higher than the cost "c" needed to deliver the
product/service), growth (how to scale up the tested hypotheses up to the
entire target segment) and sustainability (how to enable the needed change
in internal culture and prevent direct competitors to quickly replicate the
The article presents two concrete cases of "action research", where
researchers have been directly involved within the design and delivery of the
this methodology in two different industries, fast fashion and heating systems
manufacturing, and the lesson learned from them.
PUBLISHED: Proceedings from the The 19th DMI: Academic Design Management Conference, 2014
DMI Members: To download the pdf of this publication, you need to log in, add it to your shopping cart, and check out. There will be no charge and the link(s) to the pdf(s) will be emailed to you.


text:
At Sinus Meridiani (Latitude 5oN – 6oS), the concentration of grey hematite in the lag deposits ranges from 5-15%, with the remaining composition composed of basaltic sediments [Christensen, 2001]. To simulate this material, grey hematite was mixed with different amounts of Pu'u Nene horizon D. The mixing was governed by the Bruggeman, Hanai, Sen (BHS) mixing equation to find the resulting complex relative dielectric permittivity of the combination, Equation 1 [Sen, et al., 1981]. Once the mixed complex dielectric permittivity was found, it was then converted into radar loss using Equation 2 which assumes a relative magnetic permeability of vacuum.
Figure 1 (annual) and Figure 2 (diurnal) show the difference in two-way loss versus temperature and frequency for different mixture percents of grey hematite and Pu'u Nene horizon D at three Martian latitudes. The reason for the cusp in the loss difference curves is because one envelope hot or cold does not always attenuate more than the other. This changes as a function of grey hematite percentage because the losses of the Pu'u Nene horizon D change the frequency at which the losses from both temperature envelopes are equal.
Figure 3 (annual), Figure 4 and Figure 5 (diurnal) show the real part of the relative dielectric permittivity profile at three frequencies and three latitudes at 100% and 20% grey hematite. The dielectric relaxation at the average temperature, To, causes the downward shift at increasing frequency, while increasing density causes the sharp increase in dielectric permittivity. Figure 6 (annual) and Figure 7 and Figure 8 (diurnal) show the EM interval velocity at three frequencies and three latitudes at 100% and 20% grey hematite.


text:
by AMNH on
Don't miss this rare view of aspects of traditional Tibetan medicine in exquisite paintings from a set in the Museum's collections, based on illustrations from the late 17th century. On view in the Audubon Gallery on the fourth floor, these hand-painted reproductions provide a unique and rich illustrated history of early medical knowledge and procedures in Tibet, as Laila Williamson, curator of Body and Spirit, explains in this video:
The 64 paintings on display are believed to be among only a handful of such sets in existence. Each of them was painstakingly reproduced by hand in the late 1990s by Romio Shrestha, a Nepalese artist, and his students, who followed the Tibetan tradition of copying older paintings, basing their work on two published sets of medical tangkas likely painted in the early 1900s that were copies of the original set. The originals were created in the late 1600s to illustrate the Blue Beryl, an important commentary on the classic Tibetan medical text, The Four Tantras.
The Blue Beryl was written by Sangye Gyatso, regent to the Fifth Dalai Lama, who commissioned the original paintings for use as teaching aids in the medical school he founded in Lhasa, Tibet. The causes, diagnostic techniques, and treatments of illness, as well as human anatomy, are represented in nearly 8,000 extraordinarily detailed images painted on canvas using vegetable and mineral dyes. The fate of the original paintings is unknown; Shrestha based his work on published sources.
by AMNH on
Each of the Museum's treasured habitat dioramas depicts a scene from a real place, cast in the light of a particular time of day. These re-creations are based on meticulous observations of scientists in the field and the on-site sketches of the artists who accompanied them. Last fall, Stephen C. Quinn of the Museum's Exhibition Department took a remarkable trip to locate the exact site of the Museum's mountain gorilla diorama and record the changes that have taken place in the 80-plus years since Carl Akeley's final visit. Below is Quinn's article about his journey, which originally appeared in the Summer issue of Rotunda, the Members' magazine.
When Carl Akeley—explorer, naturalist, artist, and taxidermist who created the Museum's Akeley Hall of African Mammals—first encountered the mountain gorilla (Gorilla beringei beringei) in 1921, it was a creature steeped in myth and folklore. Akeley, who was researching and collecting specimens to create the now-famous mountain gorilla diorama, was among the first to accurately document mountain gorillas as intelligent and social animals that, even then, were under grave threat from overhunting. His research inspired him to dedicate the last few years of his life to the conservation and protection of the mountain gorilla. Akeley convinced King Albert of Belgium to set aside 200 square miles that would be their sanctuary, creating Africa's first national park, which today lies in the Democratic Republic of the Congo, on the border with Uganda and Rwanda, and which has been classified a World Heritage site by UNESCO since 1979.
by AMNH on
You can now explore some of the objects identified at this year's ID Day—including a 100-million-year-old fossilized fish and a French Navaja knife—online in the AMNH ID Day group on Flickr. You are also invited to add your own specimen photos, comments, and stories to the group. Sharing your photos is easy: just join the AMNH ID Day group and add your photos to the pool. Unidentified objects are welcome—your photo might be selected for identification by a Museum scientist in the coming months!
Click here to join the group.
by AMNH on
Blogging from west Kenya, William Harcourt-Smith, a research associate in the Division of Paleontology, is directing a 20-million-year-old paleontological site on two islands in Lake Victoria. One of these islands, Rusinga, is best known as the site of the discovery of the first fossils of Proconsul, an early ape. Harcourt-Smith's multidisciplinary team includes physical anthropologists and geologists, and in addition to collecting fossils, researchers are trying to learn more about the evolutionary events and environmental conditions that may have influenced the emergence of Proconsul and other early ape lineages.
by AMNH on
The United States leads the world in frequency of tornadoes, with over 1,000 twisters expected to hit each year, according to the NationalClimatic Data Center. Nowhere are they more likely to occur than in Florida and a large area of the south-central U.S. known as Tornado Alley—the eponymous subject of the heart-pounding new IMAX film now showing on the big screen at the Museum's Samuel J. and Ethel LeFrak Theater.


text:
1nm * DataAnalysis * nCNC * PSM * YourResearch
New data post-analysis tools for A11 nCNC data released
Quite often during a measurement campaign, there is not enough time to really focus on the data of an individual instrument. Sometimes you would for example like to change the settings of the inversion, like the number of size bins or the estimate of diffusion losses in the sampling lines, after the measurement campaign. This is why the Airmodus A11 nCNC system saves both the online inverted data and the raw data.
Airmodus offers free data post-analysis tools that make it possible to invert the A11 nCNC scanning mode data with different settings still after the measurements. As the platform for data analysis, we chose an open source software called Scilab (_URL_ It is a tool that can be used for numerical analysis and data visualization.
Airmodus uses GitHub (_URL_ to distribute the data analysis tools for A11 nCNC data, in order to have fully see-through data analysis—and to have the chance to work with the whole user network on new methods and tools to better use the A11 nCNC data. Every user is free to suggest new functions, methods etc. to the code, and can make their own codes available for other users as well.
The latest version of the scanning data inversion tool has many updates to the data analysis process, including:
- Better utilization of the calibration data
- The fitting is now based on linear interpolation, and thus follows much better the calibration data.
- Better data visualization
- The data bins are visualized for individual size distribution scans. Also, the total number of particles above the largest size bin is plotted.
- New optional data quality check before the inversion is implemented
- This option prevents inversion errors by not inverting unqualified data. Please see the Airmodus GitHub page for more information.
- Improved error handling


Take the 2-minute tour ×
We need to create a Visio 2010 stencil in code, using the.NET Freamework and C#.
The idea is like this:
We have our app, that is used by the app user, and then we have the workflow designer, which user Visio which is installed on another machine.
So we have two different people and two different machines. Lets say that, for this discussion, the application is an organizational structure app, that its object model comprises of various types, including User, Group, Developer, Administrator etc..
I want to add functionality to the app that would allow the app user to take these types and create a stencil from it, saved in a.vss file which is the format Visio uses for stencils. Then, the Visio user can take this vss file and add it to the document he's working on. The idea behind all this is that the app user can add user types any time, say 'Power User', which makes all this process dynamic.
Now, the machine where the application is installed doesn't have Visio installed, which might be important, i guess, in terms of what assemblies related to visio programming can be referenced from the app.
Can this be achived?
share|improve this question
What is the source of the geometry or image used in the shapes? Does the App User specify this or is it defined somewhere else? If it is defined somewhere else what format is it in? – Pat Leahy Jun 2 '11 at 4:40
add comment
1 Answer
up vote 0 down vote accepted
If you want to create a Visio stencil on a machine where you can't use the Visio API (i.e. where Visio is not installed or in a server scenario) you can create a Visio XML file. If you use the file extension VSX then Visio will treat it as a stencil. Creating shapes in a Visio XML file may be much more complicated than creating shapes using the API because you will have manage many things yourself which Visio normally takes care of such as collection IDs, formula evaluation, connection creation, etc.
This approach assumes the definition of the geometry or image to use the shapes is predefined and accessible from your stencil generation code. If the user creating the stencil needs to specify the geometry then you may need to integrate some drawing tool. Visio may be that tool or you could investigate other drawing tools which can create a file which Visio can read, e.g. SVG.
share|improve this answer
Great info there Pat, thanks a lot. It seems that the xml way is the only way for me to go. I will let you know if I can manage to get it right with that solution. Again thank you very much. – Avi Shilon Jun 2 '11 at 8:02
add comment
Your Answer