If you're a healthcare professional with an interest in machine learning (ML), but unsure how can combine it with your career, then we hope you'll find this post useful.
The most common ways of combining a medical background with ML is in academic research (both novel uses of ML in healthcare as well as augmenting existing research with novel ML techniques) and in industry (by providing clinical input to health technology start-ups and companies). It's worth noting, also, that there's a fair overlap between the two.
Less common roles include consulting, to advise companies on their use of ML, starting your own start-up or company, or becoming a research engineer / machine learning engineer (a much more technical role).
In this article, we'll outline the roles, the rough requirements and potential next steps for those considering a particular path.
For suggestions on what and how to learn about machine learning, check out this article.
Machine Learning Healthcare Research
This is one of the most exciting and active areas of medical research at present. There are many research groups working in the area, and many more continuing to pop up. The groups usually consist of collaboration between clinicians and data scientists / research engineers. There is significant value that can be added by a clinician who understands the relevant machine learning aspects for projects.
Rough Requirements:
 - Medicine: broad understanding (i.e. year 3 med school+ )
 - Machine learning: fundamentals + area specific to research
 - Other: research experience helpful (not essential)
 - Read key papers on Pubmed and Arxiv - see our post for the papers we'd recommend reading first
 - Join a project or research group - see our post for suggestions how
 - Set up a research group (if more senior clinically) - see our guide
Clinical input to a start-up or company
There are an increasingly large number of companies working to use machine learning in healthcare in one shape or form. For example, the pharmaceutical industry is looking for more clinical and machine learning expertise. We've outlined some of the UK's medical AI companies in another post. Clinicians who can "speak their language" (of machine learning) can add a lot of value by translating their clinical insights into the language of data. The types of input can be vary varied; from product design to user experience to safety and regulations. Roles can be full-time or part-time, meaning that it can be maintained alongside clinical practice.
Rough Requirements:
 - Medicine: depends on company, for many minimum ~1 year clinical experience
 - Machine learning: breadth of our courses and depth of Andrew Ng courses
 - Other: business experience helpful
Consulting
Consulting has become a popular "exit-route" for doctors and healthcare professionals, with disillusionment a common factor that people cite for the career path change. There are several different types of consulting, with 'strategy consulting' being one of the most common. As someone with experience in healthcare and an understanding of machine learning (and technology more broadly), you can find a role advising other companies on how to integrate the two.
Rough requirements
Depends on level (graduate vs experienced hire) and type of consulting (strategy vs operations vs other) and industry (healthcare, finance, etc)
 - Medicine: For healthcare consulting, experience working in a healthcare system. For others, non-essential (emphasis is on soft skills)
 - Machine learning: If consulting in technological area, the fundamentals, and understanding higher-level impacts (e.g. real-world case studies)
 - Other: business experience and understanding is useful
 - Internships at consulting firms
 - Apply directly for firms (which commonly use the "case interview" for assessment)
 - Read "Management Consulting for Medics" by Aroon Baskaradas
Starting own start-up, company or initiative
This is a much less-defined role than the others discussed here. Start-ups can take many shapes or forms. There is not a well-defined path into starting your own thing, although experience in the relevant areas are important. Both machine learning and healthcare are fairly technical areas, so often require several years working in the area to gain the necessary insights. Fundamentally, you need to understand a problem and how to go about trying to solve it.
Rough requirements:
 - Medicine: No hard requirement – as much as required for the insight
 - Machine learning: Same (no hard requirement – as much as required for the insight)
Ideally 2+ years working in role exposing you to both ML and how it could solve clinical problems
No well-defined path. Gain experience, think of ideas and go for it. Iterate throughout.
Research engineer / machine learning engineer
These positions involves actually coding and implementing new machine learning tools, which can be in healthcare or otherwise. It's very rare for someone to make the transition from medicine to these roles as it requires a high level of programming expertise and a deep understanding of machine learning.
Rough Requirements:
 - Medicine: medical degree perhaps useful, but full degree not required
 - Machine learning: Ideally Bachelor's/Master's in Computer Science/Machine Learning, plus practical experience of coding solutions for real-world problems
 - Take a degree (typically Bachelor's/Master's in Computer Science/Machine Learning)
 - Code mini-projects
 - Work in a junior role (e.g. junior data scientist)
We hope this is helpful!
If there are any options you think we've missed, or any other suggestions, please comment below or email us at _EMAIL_.


text:
Today, Canada's federal, provincial and territorial privacy authorities jointly released a set of lesson plans designed for educators to teach students about privacy rights, digital literacy and online safety. These publications support a resolution by international privacy regulators calling for more privacy education in schools and training opportunities for educators.
Developed by MediaSmarts, a not-for-profit organization that promotes digital and media literacy, these lesson plans will help educators teach students about privacy rights and navigating the digital environment safely.
Navigating the online world safely can be a challenge. Young people need to be able to harness the full potential of online resources while protecting their privacy and themselves. Our schools must make privacy education a priority so that children are informed and empowered at an early age.
Those who learn to control their personal information and protect their online presence will be able to gain the skills and competence to participate effectively in the online economy and community.
The lesson plans released today come in three modules:
- Getting the Toothpaste Back into the Tube: A Lesson on Online Information
- Know the Deal: The Value of Privacy
- Privacy Rights of Children and Teens
These modules include privacy principles that every student needs to understand, and lessons on how to:
- identify what constitutes personal information
- understand the technical and economic aspects of the digital environment
- limit disclosure of personal information
- protect oneself online
- exercise one's privacy rights
We encourage educators to download these lesson plans and put them to use so that future generations can participate safely and meaningfully in our increasingly online world. We also encourage teachers to contact us should they have any questions about Ontario's access and privacy laws.
Developed in collaboration with the Office of the Privacy Commissioner of Canada
- 5 Tips to protect your privacy online
- Social Smarts: privacy, the Internet and you
- Joint letter to Council of Education Ministers
Additional IPC education resources

source: openbmb/Ultra-FineWeb


m, n] is the smallest integer of the same relative ratios.
Negative directions :
Negative directions When we write the direction [n1n2n3] depend on the origin, negative directions can be written as R = l a + m b + n c Direction must be smallest integers.
Examples of crystal directions :
Examples of crystal directions X = 1 , Y = 0 , Z = 0 ► [1 0 0]
Crystal Planes :
Crystal Planes Within a crystal lattice it is possible to identify sets of equally spaced parallel planes. These are called lattice planes. In the figure density of lattice points on each plane of a set is the same and all lattice points are contained on each set of planes.
MILLER INDICES FOR CRYSTALLOGRAPHIC PLANES :
MILLER INDICES FOR CRYSTALLOGRAPHIC PLANES William HallowesMiller in 1839 was able to give each face a unique label of three small integers, the Miller Indices Definition: Miller Indices are the reciprocals of the fractional intercepts (with fractions cleared) which the plane makes with the crystallographic x,y,z axes of the three nonparallel edges of the cubic unit cell.
Miller Indices :
Miller Indices Miller Indices are a symbolic vector representation for the orientation of an atomic plane in a crystal lattice and are defined as the reciprocals of the fractional intercepts which the plane makes with the crystallographic axes. To determine Miller indices of a plane, we use the following steps 1) Determine the intercepts of the plane along each of the three crystallographic directions 2) Take the reciprocals of the intercepts 3) If fractions result, multiply each by the denominator of the smallest fraction
IMPORTANT HINTS: :
IMPORTANT HINTS: When a plane is parallel to any axis,the intercept of the plane on that axis is infinity.So,the Miller index for that axis is Zero A bar is put on the Miller index when the intercept of a plane on any axis is negative The normal drawn to a plane (h,k,l) gives the direction [h,k,l]
Example-1 :
Example-1
Example-2 :
Example-2
Example-3 :
Example-3
Example-4 :
Example-4
Miller Indices :
Miller Indices
Spacing between planes in a cubic crystal is :
Spacing between planes in a cubic crystal is Where dhkl = inter-planar spacing between planes with Miller indices h, k and l.a = lattice constant (edge of the cube)h, k, l = Miller indices of cubic planes being considered.
X-Ray diffraction :
X-Ray diffraction X-ray crystallography, also called X-ray diffraction, is used to determine crystal structures by interpreting the diffraction patterns formed when X-rays are scattered by the electrons of atoms in crystalline solids. X-rays are sent through a crystal to reveal the pattern in which the molecules and atoms contained within the crystal are arranged.
Slide 64:
This x-ray crystallography was developed by physicists William Lawrence Bragg and his father William Henry Bragg. In _PHONE_, the younger Bragg developed Bragg's law, which connects the observed scattering with reflections from evenly spaced planes within the crystal.
X-Ray DiffractionBragg's Law : 2dsinΘ = nλ :
X-Ray DiffractionBragg's Law : 2dsinΘ = nλ
Slide 66:
ThanQ Any Queries ?...
authorStream Live Help


text:
Matsentralen Oslo is the Oslo branch of Matsentralen, a Norwegian food bank network that aims to fight food waste. Matsentralen Oslo receives food from 50 suppliers. It then distributes this food to more than 120 hunger relief charities in Oslo. In 2017, they redistributed 1270 tonnes of food, which is equal to 2.5 million meals.
A large quantity of food inventory, however, came with challenges in recording inventory accurately and quickly. All their processes were manual and required excessive paperwork.
We saw this as an opportunity for joint value-creation. TotalCtrl created two applications specifically for Matsentralen Oslo. They served as our pilot customer for our inventory solution for food banks.
For Matsentralen Oslo, this reduced time spent on inventory management. Further, it led to significant food waste savings.
Moving From Pen & Paper to Digital
Before using TotalCtrl's solution, Matsentralen Oslo recorded food donations on paper without details. They didn't specify the exact amount, weight, and brand of food they received.
Charities determined the number of designated products during checkout by weighing each pallet and recording its weight. They disregarded the contents of the pallet.
All transactions were manually recorded in Microsoft Excel by one employee. Thus, inventory management had many inaccuracies across its entire process.
The food waste management system was also faulty. Matsentralen Oslo had to keep many food products in their inventory to satisfy demand. However, most foods have a limited shelf life.
Thus, they had to get rid of their inventory before food expired to avoid food waste. Sometimes, the fluctuating nature of demand did not accommodate this.
The main challenges at Matsentralen Oslo can be boiled down to:
- Inaccuracies in recording inventory
- Manual distribution and record-keeping processes
- Wasted time
- Unpredictable supply and demand
By collaborating with TotalCtrl, Matsentralen Oslo was able to digitize its inventory management system, saving time and money.
TotalCtrl's Food Bank Solution For Matsentralen Oslo
To address inventory management challenges across the entire supply chain, we created two digital applications, one for Matsentralen Oslo and one for the charities.
The Matsentralen app helped add products to inventory through scanning or manually. This gave Matsentralen an accurate and holistic view of their inventory. Matsentralen also had access to a web dashboard, where they could edit information on charities and suppliers and download data in the form of a spreadsheet.
The charity app allowed charities to view Matsentralen's full inventory before visiting the warehouse. Charity employees and volunteers added items placed in inventory by Matsentralen Oslo into the charity's own shopping cart when they picked them up. Thus, the products were automatically deducted from Matsentralen's inventory, thus digitizing the entire process.
Matsentralen Oslo Saved Time and Money
Digitizing their entire inventory benefited Matsentralen in several ways. Thanks to TotalCtrl, they could:
- Record their inventory with precision
- Save €1,781 (NOK 17,700) each year in manual time
- Allow charities to browse their inventory and select products digitally
- Identify trends of supply and demand based on collected data
- Insert expiration dates for the products in inventory
- Save 1,428 tonnes of food, which is equivalent to 2,856,000 more meals, and 4,284 tonnes of CO2 each year
- Save €1,317 (NOK 13,100) in paper expenditure each year.
The solution had an initial set up fee of €3999 and a monthly fee of €39. Thus, the investment pays for itself in less than a two-year time.
TotalCtrl Can Help Make Food Banks Waste-Free
"As a result of the high number of products and a great deal of manual handling of the inventory, we contacted TotalCtrl for assistance with the automation of processes."Cristiano Aubert. CEO, Matsentralen Oslo
The food banks' solution can easily be implemented in other Matsentralens in Norway. The challenges food banks face are similar and the TotalCtrl solution can help digitize their inventories. By moving from manual handling of goods to digital control and automation, all food banks can save time, money, and help with the fight against food waste.


text:
Nuestra Señora de las Mercedes
The sinking of the Mercedes
|Name:||Nuestra Señora de las Mercedes|
|Launched:||Havana, Cuba, 1786|
|Fate:||Sunk by the British 5 October 1804|
|Notes:||Thought to be the wreck discovered by Odyssey Marine Exploration, codenamed "Black Swan"|
The Nuestra Señora de las Mercedes (Our Lady of Mercy in English) was a Spanish frigate which was sunk by the British off the south coast of Portugal on 5 October 1804 during the Battle of Cape Santa Maria.
Odyssey Marine Exploration claim to have discovered the vessel and recovered its treasure in 2007 resulting in a legal challenge from Spain. Odyssey claim to have recovered "over 500,000 silver coins weighing more than 17 short tons (15 t), hundreds of gold coins, worked gold, and other artifacts, it is believed that this recovery constitutes the largest collection of coins ever excavated (actually ruled as an expoliation) from a deep-ocean site."
A U.S. federal court and a panel from the United States Court of Appeals for the Eleventh Circuit have upheld the Spanish claim to the contents of the ship; Spain took control of the treasure in February 2012.
 See also
- Treasure hunters ordered to return £250m of loot to Spain -The Telegraph, 4 June 2009
- Black Swan Project
- Cultural Property & Archaeology Law (20 February 2012). "Judge rules Spain can take control of shipwreck treasure recovered by Fla. company next week". Retrieved 1 December 2012.
- Odyssey Marine Exploration, Inc. v. The Unidentified Shipwrecked Vessel
- Yahoo Finance Odyssey to Request En Banc Hearing in "Black Swan" Case
- Documents from the court case in which it was alleged that the Mercedes had been found by Odyssey Marine.
|This article about a specific naval ship or boat is a stub. You can help Wikipedia by expanding it.|

source: HuggingFaceFW/fineweb-edu


text:
The success of The King's Speech and now the airing on BBC of its documentary, The Real King's Speech, have sparked off a number of articles on oratory and speech-making. One of these, " In their own words" in the Guardian, discussed how the oratorial tricks formulated by the classical masters have survived for two and a half millennia.
Demosthenes Practising Oratory. Jean Lecompte Du Nuoy 1876
As the article explains, 'in a culture in which oral persuasion counted for for everything, it was crucial to believe that public speaking was a skill that could be acquired by anyone prepared to put in the hard work'. Advice given to boys training to speak persuasively included dealing with everything from how to move your hands or when to make a joke, the rhythms, cadence and structures of effective oratory.
Whilst oratory and business pitches are very different both aim to persuade and the structure tricks of the ancients still work today. The classical tricolon, sentences in three equal parts, is the precursor to the 'rule of three', accepted by many as one of the easiest and most effective ways of organising content effectively in any pitch. See Content and Staging


text:
Psalm 29 uses the phrase "voice of Yahweh" ( qol YHWH ) seven times (vv. 3, 4 [2x], 5, 7, 8, 9). Yahweh's thunderous sevenfold voice creates and destroys, kills and makes alive. It breaks cedars but also enlivens Lebanon to skip like a calf. It shakes the wilderness but also makes deer to calve.
Several times, David first states what the "voice of Yahweh" does and then adds something that "Yahweh" does. Yahweh's voice is upon the waters, and Yahweh Himself is over many waters (v. 3). The voice breaks cedars, and so does Yahweh (v. 5). The voice shakes the wilderness, and Yahweh shakes Kadesh (v. 8). Yahweh and His voice are united in action, and it is as if the Voice is Yahweh Himself as He is Speech and Speech-Act. This is the living Voice by which Yahweh created, the Voice by which He judges, the Voice that was in the beginning with Yahweh and was Yahweh and was in the bosom of Yahweh, the Voice by which Yahweh is King forever.

source: m-a-p/FineFineWeb


text:
VANCOUVER — British Columbia should be well into its rainy season, but instead, persistent hot and dry weather has created drought conditions. Here are some of the numbers connected with the drought:
Recorded rainfall between July and Oct. 18, compared with average rainfall:
Sechelt: current 9 mm, average 200 mm
Powell River: current 27 mm, average 192 mm
Fort Nelson: current 61 mm, average 182 mm
The B.C. government ranks drought levels from 0 to 5, with a 5 rating being the most severe with adverse effects to socio-economic or ecosystem values being almost certain.
5: The Sunshine Coast, all regions of Vancouver Island, Lower Mainland, Fort Nelson, and north, south and east Peace regions.
4: Central Coast, Haida Gwaii, eastern Pacific Range and Kettle.
201: wildfires still burning in B.C.
50: new wildfires sparked since Oct. 11.
23.9: The percentage of wildfires confirmed that were human-caused.
Eleven daily maximum high temperatures were set across B.C. on Oct. 17.
25.5 C: The high temperature in Dawson Creek, 5 C above the previous daily high, set in 2018.
21.6 C: The high temperature in Prince George, 3 C above the previous daily high, set in 1922.
This report by The Canadian Press was first published Oct. 18, 2022.
The Canadian Press


to all values. ARM defaults to little endian, so you'll probably want to write some endian routines early! Device Tree Specification
Framebuffer support
On boot the RPi configures a display with a virtual resolution of 2x2 pixel scaled to full screen. Each pixel has a different color and the hardware scaling interpolates the colors to show a nice color fade. So before you do anything first connect a monitor and see to it that you get some output.
For a framebuffer, you need to learn how to access mailboxes. And then you have to send the GPU some mail. Or, you could read about the framebuffer here,
Start with a single simple querry at first and then build up more complex mails. If you get it working then I recommend just altering the virtual size and color depth and leaving the physical resolution as is. The RPi seems to do a fine job of detecting the monitor and the user can also configure a resolution in the boot config files on the SD card. Best to honor his wishes.
Interrupts and exceptions
By default the exception vector table on ARM starts at 0x0. You can use that but there are better ways. You can set a flag to use a high vector at 0xffff0000 or set the exception vector base address register to point to your own table anywhere (32 byte aligned) you like.
Note: Interrupts are level triggered so you have to clear the source of an interrupt or mask it before returning from interrupt. The ARM CPU in the RPi also supports some extra instructions for storing registers on the stack of a different mode, switching modes and returning from interrupt. Those extensions are nicely described in the ARM arm.
Note: The return address in LR during an interrupt will be 0-8 byte, depending on the type of exception, offset to what it should be and needs to be adjusted before returning. Again look into the ARM arm for which offset applies to which exception.
Implementing and testing the software interrupt first is a good idea since you can trigger it in a controlled way.
When configuring some peripheral to send an interrupt it is a useful thing to have interrupts disabled in the CPSR, enable the interrupt you are interested in (or all) in the 3 interrupt enable registers and then poll the 3 pending registers in a tight loop and output changes. This allows you to see if the peripheral raises an interrupt and (if in doubt) which one. After that the real interrupt handler can be configured and tested. Gives you a nice half way point to test what you have so far.
Floating point support
To be able to use any floating point operations, such as storing or loading floating point numbers, you need to enable the FPU before using it. To do this, you have to enable access to the coprocessor to whoever should be able to use it, and you have to enable the FPU itself.
# enable FPU in coprocessor enable register - this gives everybody access to both locations of coprocessor.
ldr r0, =(0xF << 20)
mcr p15, 0, r0, c1, c0, 2
And then enable the FPU itself:
# enable FPU in FP exception register
MOV r3, #0x40000000
# VMSR FPEXC, r3 # assembler bug
.long 0xeee83a10
The third line is the actual instruction that you'd want to use, but due to a bug in Binutils 2.23 it does not assemble. The line below it is what it should assemble to, and replaces the opcode. After doing these two, it's possible to use the FPU.
USB
A standalone BSD-licenced USB driver with support for keyboard and mouse is available here: _URL_ . This driver can be kept stand-alone, by editing the /source/platform.c file to interface the driver with your implementation of malloc() and similar functions, or you can integrate the driver more closely with your operating system.
External references
 1. arm_arm.pdf - General ARM Architecture Reference Manual v6
 2. DDI0301H_arm1176jzfs_r0p7_trm.pdf - More specific ARM for the RPi
 3. dwelch67 examples - Basic toolchain + UART stuff
 4. RPi_Hardware - List of datasheets (and one manual about peripherals on the Broadcom chip)
 5. GitHub Raspberry Pi firmware wiki - For mailboxes and video stuff
 6. BCM2835-ARM-Peripherals.pdf - Datasheet for RPi peripherals
 7. Booting ARM Linux - Describes the generic bootloader interface to the ARM port of Linux which the RPi bootloader emulates
 8. RPi Emulator - A preconfigured QEMU RPi emulation environment for Windows.
Personal tools
Namespaces
Variants
Actions
Navigation
About
Toolbox


text:
Long Melon/Kakri Indian Vegetable by Kraft Seeds
200 Seeds Each Packet | Use for Garden | All pictures shown are for illustration purpose only actual product may vary due to product enhancement. The Long melon form a distinct group of species with many similarities in botany, agronomy ecological requirements and susceptibility to insect pests and diseases. Long melon is also one of them. Some of them are used in the form of salad, cooked as vegetables, and preserved in the form of sweets. It is grown mainly grown in tropical, sub tropical and milder zones of India. Long melon popularly known as kakri is valued for tender fruits which are eaten raw along with salt and pepper. Due to its cooling effect this is very popular during summer months in most part of the country. If it is taken without salt, it is not easily digested. Similarly, drinking of water immediately after eating fruits cause indigestion. It is summer season crop. It is mainly grown in the month of February to March.
EASY 2 SOW / EASY 2 GROW
Having Difficulty in sowing / Germination / Growing seeds, who else can be the better guide to you for Gardening than the seeds man themselves here at Kraft Seeds
STEPS TO SOW TILL GROW :
Steps : SEED – SOIL – SOW – WATER- CARE – GROW
1) Seed - Open the Kraft Seeds packets on a blank white sheet of paper, so that while opening the packet if the seeds fall (seeds being very small and tiny) you are able to save them on that sheet – Collect and then ready for sowing.
2) Soil – a very important part of sowing- Take Agropeat / Cocopeat (Agropeat / Cocopeat) and mix it in water and keep it overnight. (Ratio of Agropeat to water – 1kg of Agropeat to 5 litre of water) Use that mixture to mix it with soil (Ratio of Agropeat mixture to Soil – 80:20) Agropeat helps in the germination of seeds a lot.
3) Sow - Take a seed Tray (A seed tray available of various holes sizes), fill the above mixture in all the holes of the seed tray, and then Sow 2-3 seeds in each hole (.5 or 1 inch deep in the soil hole)
4) Water – Taking care while watering is very important in the first few days of sowing. For the first 10-12 days water the seed/ Soil only through a garden Water sprayer / sprinkler (nozzle of water sprayer set to sprinkle) as hush of water will break or flush the seed.
5) Care – Keep an eye on the soil and seedling growing, if it by any chance it gets attack by intruders (Weed / Pest / Ants) keep your ammunitions ready, recommend Organic Pest Nil, Organic Ant Kill to protect your plant.
6) Grow – Once the seedling is healthy, you may transplant it to your desired planter or Garden and yes remember to keep giving strength to your plant by using Organic Biofit Organic Enzyme for Roots, Organic Manure.
- Dispatched with in one Working Day.
- Order Above Rs 499/- Free Delivery
- Order Below Rs 499/- Shipping Rs. 75 Added.
- Delivery in India Only.


Advanced topics
PDF Print E-mail
User Rating: / 6 | Rate this article: PoorBest
1. Flowchart
Ever wondered how the counters in the Runner Component's displays are calculated? Below is a flowchart that formally shows how it works!
runner_display
Runner_Flowchart_mini
A flowchart of how a Runner handles incoming trigger messages.
2. Thread pool size
Internally loadUI maintains a pool of threads that it uses to dispatch messages sent between components which in most cases allows for better resource management than when allocating one thread per simulated user. There are a number of settings and behaviors to be aware of related to this when running your tests.
Global execution settings are set from the Workspace Settings dialog in the Execution tab:
workspaceexecutionsettings
The "Max Internal threads" setting controls the total maximum number of simultaneously running threads, increase this value if you for example plan to have more than 1000 requests executing at the same time (not in sequence). If you do not and your test for some reason requires more than 1000 threads it will simply block execution until threads are made available by allocating components. The "Max internal thread queue size" setting controls how many actions that will queue and wait for an available thread, additional actions (for example a request) will be discarded, this is to avoid running out of memory if some part of a test consumes all threads (as configured with the first setting) while others are still generating messages, etc.
Correspondingly this can be set for an agent from its settings dialog:
agentexecutionsettings
Increase this value here as well if you plan to run more than 1000 threads in a TestCase deployed on an agent.
Some Runner Components have settings related to how they execute, queue and discard trigger messages received from a Generator component:
webpagerunnersettings
soapuirunnersettings
(for the soapUI Runner these settings are available in the Advanced tab only)
By default both Runners will start up to 100 simultaneous requests (as can be seen on the "Running" counter on their display), any trigger messages received after that will be queued internally and dispatched as currently running requests finish (the Queued counter). When the Queue fills up to the configured Queue Limit setting, incoming trigger messages are simple discarded (the Discarded counter), the reason for this is to avoid running out of memory if a service simple cannot handle the number of incoming requests.
If you want your service to handle more than 100 simultaneous requests simply increase this value accordingly, but make sure that if you increase it over 1000 you will also need to increase the global Thread Limit described above, otherwise this limit will stop you from going over 1000 (since each running request requires one thread).


dcsimg
TODAY'S HEADLINES | ARTICLE ARCHIVE | FORUMS | TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX
advertisement

Coding Options for Building InfoPath Forms : Page 2
Decisions, decisions. How do you add code to your InfoPath forms or decide whether putting code in them is even necessary? Learn the basics to decide what's right for your forms.
advertisement
WEBINAR:
On-Demand
Building the Right Environment to Support AI, Machine Learning and Deep Learning
A Tale of Two APIs
Note that the foregoing discussion doesn't address the API model. InfoPath 2003 used a COM model that communicated through MSXML; however, InfoPath 2007 uses .NET instead. The two APIs are incompatible. You can get tips on how to convert from the 2003 model to the 2007 model by reviewing "Converting InfoPath 2003 Managed Code to the New InfoPath 2007 Object Model" (MSDN, June 2007). Just be aware that conversion is a manual process.
Perhaps the greatest changes in the object model are to the names of the root objects, such as things like the thisXDocumentobject disappearing and the change from an XML DOM-based reference model to an XML Navigator-based reference model. There are other changes, as well, such as how events are wired up. However, these events pale in comparison to the problems with learning a new set of root objects—and a completely new way of working with XML.
In regard to the change in root objects, the transitions aren't that hard after you get used to them, but if you've come from an InfoPath 2003 environment you may find yourself trying to use objects that are no longer there. When you go to reuse your previous code, or code you find on the Internet, it may be temporarily frustrating to learn how to convert the code into the 2007 model.
The transition to XML Navigator objects means you're no longer working with XMLNode objects. In truth, XML Navigator objects aren't really all that difficult. They're simply a pointer into the XML document, which can take a bit of getting used to because it's a new way of working with XML. For example, instead of extracting nodes using XPath statements, you move a pointer—a bookmark—in the document with a series of movestatements or XPath queries.
The real reason why you should care about the differences between the InfoPath 2003 and InfoPath 2007 object models is because despite the fact that the InfoPath 2007 client will support both object models, InfoPath Forms Services supports only the 2007 object model.
When you're confronted with an organization that deploys InfoPath 2003 and Microsoft Office SharePoint Server Enterprise Edition (MOSS-Enterprise), you encounter a fork in the road. You must decide to either use the 2003 model and use the InfoPath 2003 client, or use the 2007 object model and require that the form be filled out through Forms Services. This approach is complicated by the fact that InfoPath 2003 doesn't work with MOSS content types. Therefore, if you want to create a content type for InfoPath to use, you have to essentially use InfoPath Forms Services or the InfoPath 2007 client. Obviously, this problem will fade over time as more organizations replace InfoPath 2003 by deploying InfoPath 2007. The real trick is to make the decisions up front about what limitations that you're willing to live with and which ones you aren't.
InfoPath supports script too, and it's quite handy when working with task panes; however, there is a set of limitations around script that render it an unpopular first choice among many developers. For one thing, you can have only one type of code per project; that means that if you want .NET code you can't use script. You also cannot mix JavaScript and VBScript in a script project—even though both are supported individually. Script is also not supported in Forms Services, which means it's off limits if you plan to publish the form for use with Forms Services—and one could easily question the exclusion of script in Forms Services support.
A Matter of Trust
In today's world it's important, if not critical, to trust the code you're running. With viruses, worms, and Trojans coming out of the woodwork, you can't afford to run code today that you didn't write, didn't verify, or for which you don't at least trust the source.
The publisher sets the security level of an InfoPath form, and it is confirmed by the consumer of the form template. To set the options from the category list, the designer selects Tools --> Form Options, and then on the Security and Trust pane unchecks the "Automatically determine security level (recommended)" option and manually selects the level that is appropriate for the form.
Comment and Contribute

(Maximum characters: 1200). You have 1200 characters left.

Thanks for your registration, follow us on our social networks to keep up-to-date


_USER_{Dahlman2007Reciprocity, abstract = {Reciprocal behavior, the rewarding of kind acts and the punishment of unkind acts, is relatively well established among adults. We test if reciprocal behavior exists already among children 3-8 years old. Three simple anonymous allocation games are conducted with 242 children. In a first stage, half of the children decide whether to give a bag of raisin to another anonymous child or not. The three games differ in terms of the cost of giving and the relative difference in payoffs. In a second stage the roles are reversed between the two children to test for reciprocal behavior. We find reciprocal behavior in all three games with highly significant effects for two of the three games. Furthermore, the degree of reciprocity tends to increase with age. The effect of reciprocity is not significant among 3-5 year old children, whereas the effect is highly significant in all three games for 6-8 year olds.}, address = {Stockholm}, author = {Sandra Dahlman and Pontus Ljungqvist and Magnus Johannesson}, copyright = {_URL_ keywords = {C90; D64; J13; 330; Reciprocity; prosociality; children; experiments; Kinder; Soziale Beziehungen; Test; Verhalten; Schweden}, language = {eng}, number = {674}, publisher = {Ekonomiska Forskningsinst.}, title = {Reciprocity in young children}, type = {SSE/EFI Working Paper Series in Economics and Finance}, url = {_URL_ year = {2007} }


won't make entries in OPB_SRVR_RECOVERY table. such as lack of database space to load data. The server then reads all sources again and starts processing from the next rowid. This can include loss of connection or target database errors. perform recovery is disabled in setup. (b) Fatal Errors This occurs when the server can not access the source. the server can not update the sequence values in the repository.. target or repository. to abort a session when the server encounters a transformation error. By default. completed and failed. waiting to run. © Others Usages of ABORT function in mapping logic. running. Establish the error threshold in the session property sheet with the stop on option. and a fatal error occurs. .
after it reaches the commit interval. (a) Target based commit Server commits data based on the no of target rows and the key constraints on the target table. - (b) Source based commit Server commits data based on the number of source rows. Commit Intervals A commit interval is the interval at which the server commits data to relational targets during a session. the server continues to fill the writer buffer. When a server runs a session.- The normal reject loading process can also be done in session recovery process. A pipeline consists of a source qualifier and all the transformations and targets that receive data from source qualifier. when a session does not complete. As a result. Router and Update Strategy transformations are active transformations. The server generates a commit row from the active source at every commit interval. During a session. The rows are referred to as source rows. Although the Filter. the server commits data to the target based on the number of rows from an active source in a single pipeline. The performance of recovery might be low. the server does not use them as active sources in a source based commit session. the amount of data committed at the commit point generally exceeds the commit interval. When the buffer block is full. The commit point also depends on the buffer block size and the commit interval. The commit point is the commit interval you configure in the session properties. When each target in the pipeline receives the commit rows the server performs the commit. if o Mapping contain mapping variables o Commit interval is high Un recoverable Sessions Under certain circumstances. During a session. The server commits data to each target based on primary –foreign key constraints. you need to truncate the target and run the session from the beginning. it identifies the active source for each pipeline in the mapping. . the Informatica server issues a commit command.
using the reject loading utility. the server creates a reject file for each target instance in the mapping. what to do with the row of wrong data. the server appends a rejected data to the reject file. and another column indicator. (You cannot load rejected data into a flat file target) Each time. (a) Row indicator Row indicator tells the writer.00 To help us in finding the reason for rejecting. you run a session.D. You can correct those rejected data and re-load them to relational targets.0.Reject Loading During a session. there are two main things. Row indicator 0 1 2 3 Meaning Insert Update Delete Reject Rejected By Writer or target Writer or target Writer or target Writer If a row indicator is 3. the writer rejected the row because an update strategy expression marked it for reject.D.D. Locating the BadFiles $PMBadFileDir Filename. Reading Rejected data Ex: 3._PHONE_. If the writer of the target rejects data.0.bad When you run a partitioned session. They appears after every column of data and define the type of data preceding it .D. the server writers the rejected row into the reject file.D.0.1. the server creates a separate reject file for each partition. (b) Column indicator Column indicator is followed by the first column of data.
. The target accepts it unless a database error occurs.Column Indicator D Meaning Valid Data Writer Treats as Good Data. Bad Data. such as finding duplicate key. Bad Data. Bad Data O N T NOTE Overflow Null Truncated NULL columns appear in the reject file with commas marking their column.
cfg [folder name] [session name] . It also used the code page of server/OS. in place of NULL values. the writer will again reject those rows. Keep in mind that correcting the reject file does not necessarily correct the source of the reject. Hence do not change the above. Trying to correct target rejected rows before correcting writer rejected rows is not recommended since they may contain misleading column indicator. However.Correcting Reject File Use the reject file and the session log to determine the cause for rejected data. if those rows also had a 3 in row indicator. a series of "N" indicator might lead you to believe the target database does not accept NULL values. For example.in The rejloader used the data movement mode configured for the server. Correct the mapping and target database to eliminate some of the rejected data when you run the session again. If you try to load the corrected file to target. rename the rejected file to reject_file. in middle of the reject loading Use the reject loader utility Pmrejldr pmserver. not because of a target database restriction. and they will contain inaccurate 0 values. the row was rejected b the writer because of an update strategy expression. Why writer can reject ? Data overflowed column constraints An update strategy expression Why target database can Reject ? Data contains a NULL column Database errors. such as key violations Steps for loading reject file: After correcting the rejected data. so you decide to change those NULL values to Zero. Column.
or work on one or two reject files. . load then and work on the other at a later time.Other points The server does not perform the following option. You can correct and load all of the reject files at once. when using reject loader (a) (b) (c) (d) (e) Source base commit Constraint based loading Truncated target table FTP targets External Loading Multiple reject loaders You can run the session several times and correct rejected data from the several session at once.
which is getting stored as same target directory. it is generated at EL log. such as data format and loading instruction for the External Loader. For using an External Loader: The following must be done: configure an external loader connection in the server manager Configure the session to write to a target flat file local to the server. Choose an external loader connection for each target file in session property sheet. Method: When a session used External loader.External Loading You can configure a session to use Sybase IQ. . the server loads partial target data using EL. The External Loader option can increase session performance since these databases can load information directly from files faster than they can the SQL commands to insert the same data into the database. Issues with External Loader: Disable constraints Performance issues o Increase commit intervals o Turn off database logging Code page requirements The server can use multiple External Loader within one session (Ex: you are having a session with the two target files. If the session contains errors. However. the server continues the EL process. If the session fails. The control file contains information about the target flat file. Teradata and Oracle external loaders to load session target files into the respective databases.ctl " and you can view the file in $PmtargetFilesDir. the session creates a control file and target flat file. details about EL performance. The control file has an extension of "*. One with Oracle External Loader and another with Sybase External Loader) - Other Information: The External Loader performance depends upon the platform of the server The server loads data at different stages of the session The serve writes External Loader initialization and completing messaging in the session log.
using database reject loader. The EL saves the reject file in the target file directory You can load corrected data from the file. The reject file has an extension of "*. and then click flat file options .- The EL creates a reject file for data rejected by the database. open the session property sheet Select File target.ldr" reject. and not through Informatica reject load utility (For EL reject file only) Configuring EL in session In the server manager.
and row overhead can include row to key information. and in most circumstances. stores group values as Configured in the Group-by stores index values for The master source table As configured in Joiner condition. Column overhead includes a null indicator. data cache stores calculations based on Group-by ports stores ranking information based on Group-by ports . you need to consider column and row requirements as well as processing overhead. . it deletes the caches files .Caches server creates index and data caches in memory for aggregator . server requires processing overhead to cache data and index information. stores master source rows . Caches Storage overflow : Transformation Aggregator Rank Joiner Lookup index cache stores group values As configured in the Group-by ports. For maximum requirements. add the total column size in the cache to the row overhead. Server stores key values in index caches and output values in data caches : if the server requires more memory . multiply min requirements by 2. Caches Storage overflow : releases caches memory. Steps: first. Multiply the result by the no of groups (or) rows in the cache this gives the minimum cache requirements . it deletes the caches files .it stores overflow values in cache files . and in most circumstances. the server releases caches memory.joiner and Lookup transformation in a mapping.rank . When


text:
A comparative study on the crystallization behavior of electroless NiP and NiCuP deposits
ABSTRACT The crystallization behavior of electroless NiP and NiCuP was studied comparatively by using differential scanning calorimetry and X-ray diffractometry. It is apparent that low-P NiP deposits transform to the stable phase Ni3P directly, but low-P (high-Cu) NiCuP deposits transform to the metastable phase Ni5P2 first, and then to the stable Ni3P. Both the hypereutectic amorphous NiP deposits and amorphous NiCuP deposits with high phosphorus content transform to the metastable phases Ni5P2 and Ni12P5 first, then to the stable phase Ni3P. For the amorphous NiP and NiCuP deposits with P content of approximately 10 wt.%, the crystallization temperature of the latter is markedly higher than that of the former. In addition, the crystallization temperature of the hypereutectic NiP deposit is nearly the same as that of the amorphous NiCuP deposit with a similar P content. For the crystalline NiP and NiCuP deposits with low P content, the temperature at which the stable Ni3P forms in the latter is obviously higher than that of the former.
- SourceAvailable from: ojs.cnr.ncsu.edu
[Show abstract] [Hide abstract]
- "Krasteva et al. (1994) demonstrated that the introduction of copper into electroless deposited Ni-P alloys conferred higher thermal and nonmagnetic stability. Yu et al. (2001) compared the crystallization behavior of electroless Ni-P and Ni-Cu-P coatings using differential "
ABSTRACT: A simple electroless Ni-Cu-P plating process for preparing an EMI-shielding and corrosion-resistant wood-based composite has been developed. The effects of solution pH value on the metal deposition, surface resistivity, chemical composition, anti-corrosion properties, and crystal structure of the coatings were studied. The coatings were characterized using X-ray photoelectron spectroscopy, X-ray diffraction, and scanning electron microscopy. When the solution pH was increased from 8.5 to 10.0, the metal deposition increased and the surface resistivity decreased. Chemical composition indicated that the nickel deposition increased, whereas the opposite effect was obtained on copper and phosphorus elements with a pH increase from 9.0 to 10.0, and the crystal structure of the Ni-Cu-P coatings changed from an amorphous state to a microcrystalline one. Tafel curves of the Ni-Cu-P coatings prepared at pH 9.0 or 9.5 showed that they had excellent anti-corrosion properties in a 3.5 wt% NaCl solution. The morphology of the coating containing 69.86% Ni-7.65% Cu-22.49% P is superior to that with 75.99% Ni-6.60% Cu-17.41% P after corrosion tests. The plated birch veneers exhibited electromagnetic shielding effectiveness higher than 58 dB in frequencies ranging from 9 KHz to 1.5 GHz, and the coating firmly adhered to the wood surface.Bioresources 08/2013; 8(4). DOI:10.15376/biores.8.4.6097-6110 · 1.55 Impact Factor
- [Show abstract] [Hide abstract]
ABSTRACT: Conductive aramid fiber with nickel-copper composite coating is prepared by consecutive steps of metalation swelling, sensitization, activation, nickel electroless deposition, and copper electroless deposition, respectively. The metalation swelling of aramid fiber makes the follow-up sensitization and activation feasible. The as-prepared samples are characterized by SEM, TEM, XRD and XPS. After metalation swelling, the aramid fibers look like cotton fibers with numerous nano-scale pits of 50–300 nm in diameter. Pd metal as nuclei for Ni crystal growth with the size of 10±5 nm is originated from Pd2+, which can be reduced to Pd0 by Sn2+. The Ni-Cu composite coating of 1-µm thickness has polycrystalline structure. And the electrical resistance of conductive Ni-Cu aramid fiber is 0.035 Ω/cm. The synthesis mechanism of the conductive aramid fiber with Ni-Cu composite coating is given.Fibers and Polymers 03/2013; 14(3). DOI:10.1007/s12221-_PHONE_-4 · 1.11 Impact Factor


text:
Previous abstract Next abstract
Session 17 - Supernovae.
Display session, Monday, January 15
North Banquet Hall, Convention Center
Numerical calculations of the formation and evolution of luminous supersoft X-ray sources will be presented. The probabilities associated with the various pathways leading to the formation of these systems will be discussed. The method used in calculating the evolution of these systems will also be described and the observational implications will be addressed. Probability distributions of observational properties will be developed. Particular attention will be paid to the hypothesis that supersoft X-ray sources could be the progenitors of Type Ia supernovae. The viability of this hypothesis will be investigated in light of some of the theoretical uncertainties associated with their formation and evolution (e.g., common-envelope evolution, the late phases of mass transfer).
Program listing for Monday


text:
DESCRIPTIVE TEXT NARRATIVE FOR SMOKE/DUST OBSERVED IN SATELLITE IMAGERY
THROUGH 0030Z December 8, 2005
Arizona: Fires near Fort Defiance in east central Apache County of northeastern AZ, in the Coconino National Forest in southern Coconino County of central AZ, and in the Apache-Sitegreaves National Forest near the Apache-Greenlee County border in east central AZ were responsible for smoke plumes which generally extended less than 50 miles from the source. Smoke from the fire in southern Coconino County was moving southward earlier in the afternoon, but changes in the wind direction blew the smoke more in an eastward direction later in the afternoon. Baja California: A fire in northwestern Baja California (south of Tijuana but north of Ensenada) is producing moderate to dense smoke. The smoke is moving toward the south southeast (approaching Ensenada and Real del Castillo) and also toward the southwest (reaching the coast).


text:
By Jasmine Westbrooks, RD and Ashley Carter, RD, of EatWell Exchange, Inc.
Note from Stephanie Gruenke RD:
At Whole30, we value the unique perspective, life experiences, and traditions of those in our community. And we've have made it our priority to provide resources that recognize and honor these traditions. For this article, our Whole30 Families team collaborated with Jasmine Westbrooks, RD and Ashley Carter, RD. They are the co-founders and directors of EatWell Exchange, Inc. We also worked with guest editor Josmine Evans. She elevated our understanding of the history and cultural significance of the holiday foods many of us traditionally enjoy during a variety of end-of-year celebrations.
Delicious, Nutrient-Rich Holiday Foods for Your Family
For many of us, Thanksgiving, Christmas, and New Year's Day deliver some of the most delicious and memorable dishes out of the entire year. For some, a single dish symbolizes the entire holiday season—like grandma's pie, grandpa's gravy, or mom's collard greens. Our personal relationships to these special holiday foods often shape our understanding of the celebrations themselves.
It's important that we understand the history and culture behind the ingredients that serve as the foundation for traditional holiday spreads. Let's dive into a variety of flavors from African, Native American, and other cultures. Each has made the holiday table what is most known for: delicious, nutrient-rich dishes.
Historians are unsure of the exact origin of collard greens, although some speculate they are indigenous to the Mediteranean. In the United States, the history of collard greens traces its roots back to Africa, where leafy greens were a critical part of diet and food culture. Enslaved Africans brought collard greens to the North American continent and utilized every part of this nutrient-rich vegetable in their cooking. The brilliance of this community is reflected in their ability to make wholesome meals under the most oppressive conditions, meals that continue to nourish us today. You may see collard greens as a staple holiday food on many tables in the South on New Year's Day, symbolizing good luck and prosperity.
If we take a deeper look into collard greens, we see that they are actually a type of kale predecessor in the cabbage family. They are one of few vegetables that offer more nutrients when cooked versus raw. Collards are packed with calcium, vitamin A and C, and because of their high fiber content, they can relieve constipation and decrease cholesterol levels.
How to Enjoy
I (Jasmine) must admit that when eating collard greens, one bowl isn't enough, especially if you try this recipe from The New Soul Food Cookbook for People with Diabetes by Fabiola D. Gaines, RD, LD, and Roniece Weaver, MS, RD, LD. Collard greens have always been a staple in our households even beyond the holidays. Traditionally, some families add a turkey leg for additional savory flavor to smother the greens and add "Cha Cha," (or sometimes called Chow Chow) a spicy, sweet and tangy relish on top. If you're looking for a Whole30 compatible recipe, check out this one for Southern Style Collard Greens by Tannyr Denby Watkins.
Most local grocery stores include some varieties of either collard or mustard greens. Plus, they are low cost at less than $1 per serving.
Cranberries and Cranberry Sauce
Cranberries or "bitter berries" are indigenous to North America and have long been foraged by Native Americans, who discovered many uses for the vibrant, red fruit. The Wampanoag people of southeastern Massachusetts have a rich, 12,000 year long relationship with sasumuneash (wild cranberries). Sasumuneash were used as a source of food and nourishment, taken as holistic medicine to fight fever, swelling, and seasickness, and used to dye clothes, blankets and rugs. To this day, the Wampanoag people gather every October in order to give thanks for the sasumuneash harvest; Cranberry Day remains the most important and meaningful holiday of the year for their tribe.
The cranberry sauce that many Americans know and love today traces its origins back to Native American recipes from the 17th century, where boldly flavored cranberry sauce was made from the simple combination of cranberries, sugar, and water.
A cup of raw cranberries provides benefits that will blow your mind: they contain more antioxidants than almost any other fruit! Cranberries are high in vitamin A, K, manganese and contain 25% of your daily requirement of vitamin C, as well high levels of phenols, which are antiviral and anti-inflammatory. Pretty impressive right?
How to Enjoy
Although cranberry sauce was the last ingredient my (Jasmine's) grandmother put on the dinner table, it was never forgotten. The bitter taste of a fresh, raw cranberry is quite surprising to most people, but can be toned down with a splash of orange juice or adding orange peel for a garnish to create a burst of flavors that compliment each other well. Traditionally, cranberry sauce is made with white sugar to counteract the bitter taste, like this recipe from Sarah Welch. If you're looking for a Whole30 compatible option, try this Instant Pot Whole30 Cranberry Sauce from Cheryl Malik.
You can find fresh or frozen cranberries at many grocery stores including Walmart and Aldi, often for under $3.00 a bag. Fresh cranberries are typically only seasonally available (November-December), but you can find frozen, canned, or dried throughout the rest of the year.
Why is turkey the traditional centerpiece of the holiday dinner table? Tradition holds that it was served by the Pilgrims of Plymouth at the celebration that's typically regarded as "the first Thanksgiving." However, there's no proof to back this up. Instead, our modern association of turkey and holiday meals probably comes from the influence of presidents and significant historical figures, like Alexander Hamilton and Abraham Lincoln.
This lean protein is rich in B-vitamins which support mood and neurological function. It also provides a variety of vitamins and minerals such as magnesium, selenium, and niacin.
How to Enjoy
Growing up in my (Jasmine's) household, roasting a great turkey was all about mastering the flavor. In my family, we always started the turkey early in the morning, before any other food preparation, and the smell of paprika would fill the house. In addition, the goal was never to have an end result of a dry turkey but moist and tender instead. This Whole30 Thanksgiving Turkey and Turkey Gravy recipe from Alex Snodgrass features fresh herbs and ghee and would make an incredible centerpiece to your holiday table.
Sweet potatoes are native to South and Central America, where indigenous people have eaten and cultivated this delicious vegetable for thousands of years. Sweet potatoes eventually made their way up north, where enslaved Africans in the United States added extra sweetness to their preparation and popularized the candied yams we love today. Over time, sweet potato became a popular pie filling and joined the pumpkin pie on our holiday dinner tables.
Sweet potatoes are technically different from yams. The word "yam" comes from the African word nyami, referring to the starchy, edible root of the Dioscorea genus of plants. When sweet potatoes were introduced in the southern United States, enslaved Africans called them yams in remembrance of their native nyami.
Sweet potatoes are a holiday winner for many reasons. First of all, sweet potatoes are sweet! That sounds obvious, but when you want a dessert, it is rare you pick up a vegetable, yet sweet potatoes provide natural sweetness and allow you to increase your vegetable intake at the same time. Sweet potatoes are high in potassium, which can help counter the effects of sodium and high blood pressure. Balanced blood levels of potassium are critical for maintaining a strong heart electrical rhythm. They are a heart healthy side as they are high in fiber, which helps decrease cholesterol and promote satiety. They also contain 769% of the daily value of vitamin A in one cup! Vitamin A is beneficial for our vision, immune support and a great source of antioxidants.
How to Enjoy
Whether it's sweet potato pie, candied yams or baked sweet potatoes, we cannot have the holiday season without it. One of my (Ashley's) favorite recipes to make with my mother was sweet potato casserole. But, I will admit, my mother's recipe would not be recommended by any dietitian (containing heavy syrup, sugar, and lots of marshmallows). Luckily we can still achieve that same great taste and flavor profile by swapping the syrup and sugar for pineapples, the butter for almond milk yogurt and cutting the marshmallows in half and adding pecans.Of course, many Whole30 compatible recipes feature sweet potatoes, as they are a staple! Try this Sweet Potato Gratin by Althea Brown or these Mashed Sweet Potatoes on the Whole30 blog.
Sweet potatoes are a versatile food and great as leftovers! When shopping on a budget it is important to find foods that can be used in a variety of ways to decrease waste. Consider using your sweet potato leftovers for breakfast, such as in a breakfast hash or as a topping for cottage pie. It's also easy to grow your own sweet potato! Click to learn how to grow your own.
Stuffing or Dressing
Whether it is inside of the turkey and called stuffing or served on a bowl next to it and called dressing


text:
Why Does Water Freeze Before Alcohol Does?
We recently explained that one reason wine's freezing point is much lower than water's is because of its alcohol content. But we didn't explain why alcohol has a much lower freezing point than water. Let's explain that now (hint: water molecules are "stickier.")
A substance freezes when its molecules become "stuck" in a fixed array as a solid. That substance's freezing point is the temperature at which the force of attraction between its molecules becomes strong enough to overcome the energy of motion that its molecules have when the substance is in its liquid state. One factor that influences this freezing point is the strength of the attractive forces between the molecules – the stronger the forces, the higher the freezing point. In other words, a substance whose molecules are very attracted to each other will freeze at a warmer temperature than a substance whose molecules are less attracted to each other.
Water molecules are more attracted to each other than ethanol (alcohol) molecules, because water has more hydrogen atoms bonded to oxygen. A hydrogen bonded to an oxygen is more "attractive" than a carbon bonded to an oxygen. So, water molecules are "stickier" than ethanol molecules – making it easier for water molecules to get "stuck" (i.e., freeze.)
Since ethanol molecules aren't as sticky as water molecules, the temperature has to be a lot lower before the forces of attraction overcome the energy of motion and fix the molecules into their array sites. So, that's why alcohol has a much lower freezing point – -114.7 degrees Celsius (-174.6 degrees Fahrenheit), as opposed to water's freezing point of 0 degrees C (32 degrees F.)
Note: Many thanks to Dr. Kay Sandberg, associate teaching professor of chemistry at NC State, for taking the time to talk to The Abstract about the science of freezing. Any errors in the above post are mine, and mine alone.


text:
Research by the Global Forest Biodiversity Initiative shows that a "positive and consistent relationship" can be discerned between tree diversity and ecosystem productivity.
The GFBI states:
"The biodiversity–productivity relationship (BPR) is foundational to our understanding of the global extinction crisis and its impacts on ecosystem functioning. Understanding BPR is critical for the accurate valuation and effective conservation of biodiversity. Using ground-sourced data from 777,126 permanent plots, spanning 44 countries and most terrestrial biomes, we reveal a globally consistent positive concave-down BPR, whereby a continued biodiversity loss would result in an accelerating decline in forest productivity worldwide. The value of biodiversity in maintaining commercial forest productivity alone—US$166–490 billion per year according to our estimation—is by itself over two to six times the total estimated cost that would be necessary for effective global conservation. This highlights the need for a worldwide re-assessment of biodiversity values, forest management strategies, and conservation priorities."


TechNet
Export (0) Print
Expand All
Collapse the table of content
Expand the table of content
Expand Minimize
Aggregate Transformation Editor (Aggregations Tab)
Use the Aggregations tab of the Aggregate Transformation Editor dialog box to specify columns for aggregation and aggregation properties. You can apply multiple aggregations. This transformation does not generate an error output.
NoteNote
The options for key count, key scale, distinct key count, and distinct key scale apply at the component level when specified on the Advanced tab, at the output level when specified in the advanced display of the Aggregations tab, and at the column level when specified in the column list at the bottom of the Aggregations tab.
In the Aggregate transformation, Keys and Keys scale refer to the number of groups that are expected to result from a Group by operation. Count distinct keys and Count distinct scale refer to the number of distinct values that are expected to result from a Distinct count operation.
To learn more about the Aggregate transformation, see Aggregate Transformation.
Advanced / Basic
Display or hide options to configure multiple aggregations for multiple outputs. By default, the Advanced options are hidden.
Aggregation Name
In the Advanced display, type a friendly name for the aggregation.
Group By Columns
In the Advanced display, select columns for grouping by using the Available Input Columns list as described below.
Key Scale
In the Advanced display, optionally specify the approximate number of keys that the aggregation can write. By default, the value of this option is Unspecified. If both the Key Scale and Keys properties are set, the value of Keys takes precedence.
Value
Description
Unspecified
The Key Scale property is not used.
Low
Aggregation can write approximately 500,000 keys.
Medium
Aggregation can write approximately 5,000,000 keys.
High
Aggregation can write more than 25,000,000 keys.
Keys
In the Advanced display, optionally specify the exact number of keys that the aggregation can write. If both Key Scale and Keys are specified, Keys takes precedence.
Available Input Columns
Select from the list of available input columns by using the check boxes in this table.
Input Column
Select from the list of available input columns.
Output Alias
Type an alias for each column. The default is the name of the input column; however, you can choose any unique, descriptive name.
Operation
Choose from the list of available operations, using the following table as a guide.
Operation
Description
GroupBy
Divides datasets into groups. Columns with any data type can be used for grouping. For more information, see GROUP BY.
Sum
Sums the values in a column. Only columns with numeric data types can be summed. For more information, see SUM.
Average
Returns the average of the column values in a column. Only columns with numeric data types can be averaged. For more information, see AVG.
Count
Returns the number of items in a group. For more information, see COUNT.
CountDistinct
Returns the number of unique nonnull values in a group. For more information, see COUNT and Distinct.
Minimum
Returns the minimum value in a group. Restricted to numeric data types.
Maximum
Returns the maximum value in a group. Restricted to numeric data types.
Comparison Flags
If you choose Group By, use the check boxes to control how the transformation performs the comparison. For information on the string comparison options, see Comparing String Data.
Count Distinct Scale
Optionally specify the approximate number of distinct values that the aggregation can write. By default, the value of this option is Unspecified. If both CountDistinctScale and CountDistinctKeys are specified, CountDistinctKeys takes precedence.
Value
Description
Unspecified
The CountDistinctScale property is not used.
Low
Aggregation can write approximately 500,000 distinct values.
Medium
Aggregation can write approximately 5,000,000 distinct values.
High
Aggregation can write more than 25,000,000 distinct values.
Count Distinct Keys
Optionally specify the exact number of distinct values that the aggregation can write. If both CountDistinctScale and CountDistinctKeys are specified, CountDistinctKeys takes precedence.
Community Additions
ADD
Show:
© 2016 Microsoft


text:
Pro propellers are cracked, bent, or damaged it would unstable the drone.
- Take a propeller and run it through your fingers and feel whether there are some cracks or bents on the propellers.
- If you found that some propellers are damaged, replace the existing propeller set with a new Mavic Pro propeller set.
Solution 2: Calibrate Mavic Pro IMU.
- Place the DJI Mavic Pro on a flat surface.
- Power on the aircraft while its arms closed in.
- Open the DJI GO 4 app and connect to the aircraft.
- Then click on the three dots at the top right corner. Then click on the drone icon go to Main Controller Settings > Advanced Settings > Sensors > IMU and hit the "Calibrate IMU" button.
- Once the above steps are done, the IMU calibration process would start. You need to place the drone in different poses to calibrate IMU.
- Start with the Mavic Pro on its belly and wait until the IMU is calibrated in that pose.
- Next, move the aircraft onto its right side and wait until the IMU is calibrated in that position.
- Then change the Mavic Pro over to the left side and wait until the IMU is calibrated in that position.
- Then Stand the Mavic pro on its back ends and wait until the IMU is calibrated in that position.
- Then turn the drone upside down and wait until the calibration process goes to 100%.
Problem 5: DJI Mavic Pro won't take off.
In most cases, DJI Mavic Pro won't take off because of improper propeller installation. In order to function the aircraft properly you need to install them according to the pattern. If you install them arbitrarily the drone won't take off or would flip to the side.
Solution: Install propellers in the proper pattern.
- You find there are two types of propellers in the propeller set.
- One propeller pair has marks on it and others don't.
- Install the propellers with marks on the mounting bases with marks. And rotate clockwise to lock them.
- Install other propellers that don't have marks to mounting bases that have no marks. And rotate anti-clockwise to lock them.
Problem 6: DJI Mavic Pro keeps disconnecting.
When talking about DJI Mavic Pro disconnection issues, there are two types of disconnecting scenarios for the DJI Mavic Pro.
Scenario 1: If you are getting a black screen on the DJI GO app and you are getting "No signal error", but you are still able to control the aircraft through the remote controller, that means the remote controller has disconnected from the phone. This is caused by a damaged faulty USB-C cable that connects the phone to the remote controller.
Scenario 2: If your DJI Mavic Pro remote controller status is showing "Connecting.." that means the remote controller has disconnected from the aircraft. This is usually caused by low battery power, poor Wifi settings, and environmental interference.
Read the complete article: DJI Mavic Pro Keeps Disconnecting
Solution (For Scenario 1): Replace the USB cable and connect it to under USB port.
As I mentioned above, scenario 1 is caused by USB port and cable issues.
- Replace the current USB cable with a strong USB cable.
- Connect the USB cable to the USB port under the remote controller.
Solution 1 (For Scenario 2): Make sure batteries are on a sufficient level of charge.
Battery power is definitely a key factor in the strength of the connection between the aircraft and the controller. So the aircraft and controller batteries need to charge fully or to a sufficient level before the flight.
Solution 2 (For Scenario 2): Set up Wifi settings to minimize interference.
- Connect the remote controller to the phone.
- Power on the aircraft and controller.
- Then open the DJI Go4 app and enter the camera view.
- Tap on the three dots at the right top corner and tap on the wifi icon on the list.
- Now you will see the frequency spectrum on the screen. You'll see stable channels in green, current channels in blue and unstable channels in red. All the channels below 100 are 2.4Ghz and above 100 are 5Ghz.
- Choose the "custom" option in the selection.
- Then scroll down and choose a channel index with stable quality.
- Then tap Ok.
Problem 7: DJI Mavic Pro remote controller keeps beeping.
In most cases, DJI Mavic Pro remote controller keeps beeping when the remote controller sticks and the gimbal wheel requires calibration. Often DJI Mavic users get confused about the beeping because in this situation there is no clue why it is beeping continuously.
Solution: Calibrate the remote controller.
- Connect the remote controller to the phone and launch the DJI GO4 app.
- Enter the camera view and tap on the three dots at the right top corner.
- Then tap on the RC icon and enter the controller settings menu.
- Then tap Remote Controller Calibration.
- Keep controller sticks at the center and "Start".
- Use controller sticks and follow hollow circles moving in the box. Use the left stick to follow the left box circle and the right stick for the right box circle.
- Follow them completely around the box.
- After calibrating the joysticks, turn the gimbal wheel to both sides.
- Then click "Yes".
Problem 8: DJI Mavic Pro app not working (DJI GO app).
Most of the time, the DJI Mavic Pro app which is the DJI GO app not work and keeps crashing when the user has installed the DJI GO app from different sources. Most Android users face this situation after installing the DJI GO 4 app from Playstore. Because most of the time, the DJI GO 4 app on the Playstore is faulty. It's fine for IOS users to install the app from Appstore. If you are an Android user you should definitely download it from the DJI Download center.
Read the complete article: DJI App Not Working And Responding (Why, How to Fix)
Solution: Download and install the DJI GO4 app from the DJI Download center.
- First, uninstall the currently installed DJI GO 4 app version from the device. This would clear app data and cache data.
- Visit the DJI Downloads center using your mobile device.
- Choose DJI GO 4 app. Then you'll be directed to the app's download page.
If you are an IOS user,
- Tap on the IOS icon and the app would be open in Appstore. Tap on the "GET" button and install the app.
If you are an Android user,
- Tap on the Android icon and the apk file would be downloaded to the mobiles downloads directory. Once it is downloaded visit your downloads directory and click on the downloaded file. Then follow the simple steps prompted by the device and install the app.
Problem 9: DJI Mavic pro GPS not working.
In most cases, DJI Mavic Pro gets the GPS error and the GPS not working because of the faulty GPS module. Users were able to fix the GPS error after replacing the GPS module with a new GPS module bought online.
Solution: Replace the GPS module.
- Take the battery out and unscrew the top part of the Mavic Pro.
- Then disconnect the cable that connects the top part to the circuit.
- Then take the top part of the drone.
- Unscrew and remove the metal cover to access the GPS module.
- Then take the whole GPS module out.
- Install the new Mavic Pro GPS module to the place where the GPS module was sitting.
- Install the metal cover back into the drone.
- Then connect the GPS module cable back to the drone circuit.
- Then install the top part back into the drone.


A Standard drug is known to be effective in 72% of the cases in which it is used to treat a certain infection. A new drug has been developed and testing has found it to be effective in 42 cases out of 50. Is this strong enough evidence to prove that the new drug is more effective than the old one. find the relevant p value.
Expert Answer
Get this answer with Chegg Study


ructuredText (RST) syntax.
After writing the documentation for the attribute, it should be locally tested to ensure that there are no issues generating the documentation on the server. Local testing requires a fresh build of clang-tblgen. To generate the attribute documentation, execute the following command:
clang-tblgen -gen-attr-docs -I /path/to/clang/include /path/to/clang/include/clang/Basic/Attr.td -o /path/to/clang/docs/AttributeReference.rst
When testing locally, do not commit changes to AttributeReference.rst. This file is generated by the server automatically, and any changes made to this file will be overwritten.
Arguments
Attributes may optionally specify a list of arguments that can be passed to the attribute. Attribute arguments specify both the parsed form and the semantic form of the attribute. For example, if Args is [StringArgument<"Arg1">, IntArgument<"Arg2">] then __attribute__((myattribute("Hello", 3))) will be a valid use; it requires two arguments while parsing, and the Attr subclass' constructor for the semantic attribute will require a string and integer argument.
All arguments have a name and a flag that specifies whether the argument is optional. The associated C++ type of the argument is determined by the argument definition type. If the existing argument types are insufficient, new types can be created, but it requires modifying utils/TableGen/ClangAttrEmitter.cpp to properly support the type.
Other Properties
The Attr definition has other members which control the behavior of the attribute. Many of them are special-purpose and beyond the scope of this document, however a few deserve mention.
If the parsed form of the attribute is more complex, or differs from the semantic form, the HasCustomParsing bit can be set to 1 for the class, and the parsing code in Parser::ParseGNUAttributeArgs() can be updated for the special case. Note that this only applies to arguments with a GNU spelling – attributes with a __declspec spelling currently ignore this flag and are handled by Parser::ParseMicrosoftDeclSpec.
Note that setting this member to 1 will opt out of common attribute semantic handling, requiring extra implementation efforts to ensure the attribute appertains to the appropriate subject, etc.
If the attribute should not be propagated from a template declaration to an instantiation of the template, set the Clone member to 0. By default, all attributes will be cloned to template instantiations.
Attributes that do not require an AST node should set the ASTNode field to 0 to avoid polluting the AST. Note that anything inheriting from TypeAttr or IgnoredAttr automatically do not generate an AST node. All other attributes generate an AST node by default. The AST node is the semantic representation of the attribute.
The LangOpts field specifies a list of language options required by the attribute. For instance, all of the CUDA-specific attributes specify [CUDA] for the LangOpts field, and when the CUDA language option is not enabled, an "attribute ignored" warning diagnostic is emitted. Since language options are not table generated nodes, new language options must be created manually and should specify the spelling used by LangOptions class.
Custom accessors can be generated for an attribute based on the spelling list for that attribute. For instance, if an attribute has two different spellings: 'Foo' and 'Bar', accessors can be created: [Accessor<"isFoo", [GNU<"Foo">]>, Accessor<"isBar", [GNU<"Bar">]>] These accessors will be generated on the semantic form of the attribute, accepting no arguments and returning a bool.
Attributes that do not require custom semantic handling should set the SemaHandler field to 0. Note that anything inheriting from IgnoredAttr automatically do not get a semantic handler. All other attributes are assumed to use a semantic handler by default. Attributes without a semantic handler are not given a parsed attribute Kind enumerator.
Target-specific attributes may share a spelling with other attributes in different targets. For instance, the ARM and MSP430 targets both have an attribute spelled GNU<"interrupt">, but with different parsing and semantic requirements. To support this feature, an attribute inheriting from TargetSpecificAttribute may specify a ParseKind field. This field should be the same value between all arguments sharing a spelling, and corresponds to the parsed attribute's Kind enumerator. This allows attributes to share a parsed attribute kind, but have distinct semantic attribute classes. For instance, ParsedAttr is the shared parsed attribute kind, but ARMInterruptAttr and MSP430InterruptAttr are the semantic attributes generated.
By default, attribute arguments are parsed in an evaluated context. If the arguments for an attribute should be parsed in an unevaluated context (akin to the way the argument to a sizeof expression is parsed), set ParseArgumentsAsUnevaluated to 1.
If additional functionality is desired for the semantic form of the attribute, the AdditionalMembers field specifies code to be copied verbatim into the semantic attribute class object, with public access.
Boilerplate
All semantic processing of declaration attributes happens in lib/Sema/SemaDeclAttr.cpp, and generally starts in the ProcessDeclAttribute() function. If the attribute is a "simple" attribute – meaning that it requires no custom semantic processing aside from what is automatically provided, add a call to handleSimpleAttribute<YourAttr>(S, D, Attr); to the switch statement. Otherwise, write a new handleYourAttr() function, and add that to the switch statement. Please do not implement handling logic directly in the case for the attribute.
Unless otherwise specified by the attribute definition, common semantic checking of the parsed attribute is handled automatically. This includes diagnosing parsed attributes that do not appertain to the given Decl, ensuring the correct minimum number of arguments are passed, etc.
If the attribute adds additional warnings, define a DiagGroup in include/clang/Basic/DiagnosticGroups.td named after the attribute's Spelling with "_"s replaced by "-"s. If there is only a single diagnostic, it is permissible to use InGroup<DiagGroup<"your-attribute">> directly in DiagnosticSemaKinds.td
All semantic diagnostics generated for your attribute, including automatically- generated ones (such as subjects and argument counts), should have a corresponding test case.
Semantic handling
Most attributes are implemented to have some effect on the compiler. For instance, to modify the way code is generated, or to add extra semantic checks for an analysis pass, etc. Having added the attribute definition and conversion to the semantic representation for the attribute, what remains is to implement the custom logic requiring use of the attribute.
The clang::Decl object can be queried for the presence or absence of an attribute using hasAttr<T>(). To obtain a pointer to the semantic representation of the attribute, getAttr<T> may be used.
How to add an expression or statement
Expressions and statements are one of the most fundamental constructs within a compiler, because they interact with many different parts of the AST, semantic analysis, and IR generation. Therefore, adding a new expression or statement kind into Clang requires some care. The following list details the various places in Clang where an expression or statement needs to be introduced, along with patterns to follow to ensure that the new expression or statement works well across all of the C languages. We focus on expressions, but statements are similar.
 1. Introduce parsing actions into the parser. Recursive-descent parsing is mostly self-explanatory, but there are a few things that are worth keeping in mind:
 - Keep as much source location information as possible! You'll want it later to produce great diagnostics and support Clang's various features that map between source code and the AST.
 - Write tests for all of the "bad" parsing cases, to make sure your recovery is good. If you have matched delimiters (e.g., parentheses, square brackets, etc.), use Parser::BalancedDelimiterTracker to give nice diagnostics when things go wrong.
 2. Introduce semantic analysis actions into Sema. Semantic analysis should always involve two functions: an ActOnXXX function that will be called directly from the parser, and a BuildXXX function that performs the actual semantic analysis and will (eventually!) build the AST node. It's fairly common for the ActOnCXX function to do very little (often just some minor translation from the parser's representation to Sema's representation of the same thing), but the separation is still important: C++ template instantiation, for example, should always call the BuildXXX variant. Several notes on semantic analysis before we get into construction of the AST:
 - Your expression probably involves some types and some subexpressions. Make sure to fully check that those types, and the types of those subexpressions,


General Accessibility
Hummingbird Connectivity Language Chooser
General Accessibility
Hummingbird products are accessible to all users. Wherever possible, our software adheres to Microsoft Windows interface standards and contains a comprehensive set of accessibility features.
Access Keys All menus have associated access keys (mnemonics) that let you use the keyboard, rather than a mouse, to navigate the user interface (UI). These access keys appear as underlined letters in the names of most UI items. (If this is not the case, press Alt to reveal them.) To open any menu, press Alt and then press the key that corresponds with the underlined letter in the menu name. For example, to access the File menu in any Hummingbird application, press Alt+F.
Once you have opened a menu, you can access an item on the menu by pressing the underlined letter in the menu item name, or you can use the arrow keys to navigate the menu list.
Keyboard Shortcuts Some often-used menu options also have shortcut (accelerator) keys. The shortcut key for an item appears beside it on the menu.
Directional Arrows Use the directional arrows on the keyboard to navigate through menu items or to scroll vertically and horizontally. You can also use the directional arrows to navigate through multiple options. For example, if you have a series of radio buttons, you can use the arrow keys to navigate the possible selections.
Tab Key Sequence To navigate through a dialog box, press the Tab key. Selected items appear with a dotted border. You can also press Shift+Tab to go back to a previous selection within the dialog box.
Spacebar Press the Spacebar to select or clear check boxes, or to select buttons in a dialog box.
Esc Press the Esc key to close a dialog box without implementing any new settings.
Enter Press the Enter key to select the highlighted item or to close a dialog box and apply the new settings. You can also press the Enter key to close all About boxes.
ToolTips ToolTips appear for all functional icons. This feature lets users use Screen Reviewers to make interface information available through synthesized speech or through a refreshable Braille display.


text:
While the frequency is low, this is not ultra sonic.It's ultrasonic,
The frequency is ultrasonic, which was the point - that it's not VHF.While the frequency is low, this is not ultra sonic.
Sonic implies a pressure wave, like sound.
This is low frequency RF, ie an electromagnetic wave.
I read it as 'ferrite rod', and it's not too far off the bottom end of LW - if you put two LW coils on the same ferrite rod you should easily be able to tune down as low as 58KHz. Even adding extra capacitance to a single long wave coil should get it down there.However, I suspect that the OP is not going to transmit very far past the end of his workbench using a "ferrite core antenna" at 58kHz.
What is a ferrite core antenna?
Is that a ferrite rod antenna, or as I believe it is referred to in the USA a "loopstick" antenna.
As you well know, RF begins where ever you want to start using it (even audio type frequencies, or sub-audio) - the use of 'ultrasonic' was simply to signify easily where abouts in the spectrum it is.Can you explain at what frequency ultrasonic ends and radio begins?
The quick answer is yes.Will it change the properties depending on the wire diameter? and diameter of ferrite rod?
That is copper plumbing pipe!I have 10mm diameter copper wire


An Introduction of a Robust OMA Method: CoS-SSI and Its Performance Evaluation through the Simulation and a Case Study
Fulong Liu, Jigang Wu, Fengshou Gu, Andrew D. Ball
Research output: Contribution to journalArticle
4 Citations (Scopus)
Abstract
Operational modal analysis (OMA) is a powerful vibration analysis tool and widely used for structural health monitoring (SHM) of various system systems such as vehicles and civil structures. Most of the current OMA methods such as pick-picking, frequency domain decomposition, natural excitation technique, stochastic subspace identification (SSI), and so on are under the assumption of white noise excitation and system linearity. However, this assumption can be desecrated by inherent system nonlinearities and variable operating conditions, which often degrades the performance of these OMA methods in that the modal identification results show high fluctuations. To overcome this deficiency, an improved OMA method based on SSI has been proposed in this paper to make it suitable for systems with strong nonstationary vibration responses and nonlinearity. This novel method is denoted as correlation signal subset-based SSI (CoS-SSI) as it divides correlation signals from the system responses into several subsets based on their magnitudes; then, the average correlation signals with respective to each subset are taken into as the inputs of the SSI method. The performance of CoS-SSI was evaluated by a simulation case and was validated through an experimental study in a further step. The results indicate that CoS-SSI method is effective in handling nonstationary signals with low signal to noise ratio (SNR) to accurately identify modal parameters from a fairly complex system, which demonstrates the potential of this method to be employed for SHM.
Original languageEnglish
Article number6581516
Pages (from-to)1-14
Number of pages14
JournalShock and Vibration
Volume2019
DOIs
Publication statusPublished - 31 Jan 2019
Fingerprint Dive into the research topics of 'An Introduction of a Robust OMA Method: CoS-SSI and Its Performance Evaluation through the Simulation and a Case Study'. Together they form a unique fingerprint.
 - Cite this


The 8th Circuit Court of Appeals confirms that a railroad can violate the FRSA even if it honestly believes an employee violated a rule. In Blackorby II, the employee was disciplined for violating BNSF's rule requiring the "immediate" reporting of work-related injuries. But reporting a work-related injury is protected activity under FRSA Section 20109, and a railroad violates Section 20109 if an employee's untimely reporting contributed "in whole or in part" to the disciplinary action:
a railroad employer can, in fact, be held liable under the FRSA if it disciplines an employee based on its honestly held belief that the employee engaged in misconduct or committed a rules violation. Liability will still exist notwithstanding such a belief if the railroad's retaliatory motive also played a contributing role in the decision and if the railroad fails to carry the burden of proving by clear and convincing evidence that it would have taken the same action in the absence of the protected report.
The Circuit Court went on the underscore there is no inconsistency between a railroad being motivated in part by an honestly held belief the employee violated a rule and in part by a motive to retaliate against the employee for engaging in a FRSA protected activity.
The practical effect of this is to negate a railroad's ability to discipline an employee for the "late" or "untimely" reporting of injuries. And in fact other federal courts have voided "late reporting" discipline based on a railroad's rule requiring the "prompt" or "immediate" or "before end of shift" reporting of injuries. This is because the charge that an employee's injury report was "late" is, while true, inextricably intertwined with the protected act of reporting the injury. In other words, the late reporting discipline cannot be explained without discussing the employee's protected activity of reporting the injury. See, e.g., Smith-Bunge v. Wisconsin Central, Ltd., and Williams v. Illinois Central RR.
Here is the full Blackorby II decision. For more on the whistleblower rights of railroad workers, go to the free Rail Whistleblower Library.


text:
Regina Muthama from Kenya has been training smallholders in the methods of ecological agriculture on behalf of Biovision since 2006. How is she finding the corona pandemic in Machakos, where she herself lives?
by Peter Lüthi, project reporter
Regina Muthama from Machakos (Kenya) may be aged 72, but she's still full of energy and extremely active. She has been Extension Officer for Biovision's „Farmer Communication Programme" (FCP) from 2006 to 2018, training over 300 groups of smallholders in ecological agriculture methods in the semi-arid areas around Machakos, about 60 km east of the capital city, Nairobi. In 2015, this dedicated woman was a guest at the Biovision Symposium in Zurich's Volkshaus (see Report).
We contacted Regina to find out what she thinks about the current situation regarding coronavirus back home.
Regina, how are things with regard to Covid-19 in Machakos, and in Kenya as a whole?
According to official figures, 184 people have been infected with Covid-19 and 6 have died of lung disease to date (current figure for Kenya according to WHO click here) and most of these have been in the capital city, Nairobi. Thousand of people have been infected with the virus and are now in quarantine.
What do you expect to happen in future? How is this situation going to change over time?
II'm afraid that the virus will spread very widely in Kenya because so few people follow the preventative rules of behaviour. It will probably only be possible to safeguard people like these from the disease once we have a vaccine.
How has the corona crisis become apparent in Machakos?
At the moment, we mainly see the economic consequences: many people have lost their jobs, and therefore their income; as a result, they no longer have any money. What's even worse is that heavy rainfalls have also made it more difficult to grow crops, and food is scarce. The price of food is therefore hitting astronomical levels. Many people can no longer feed themselves properly. At least the very poorest people, and old people and orphans, do receive food aid from the government. Unfortunately, the travel restrictions and "social distancing" measures imposed by the authorities lead to a higher level of mistrust among the people.
How are you coping with the situation yourself?
I stick to the rules when it comes to hand washing and keeping my distance. I look for new ways to advise farmers and support them in their work, such as instructing them directly via mobile phone. With my own little NGO, I try to get hold of medicines and at least support the unemployed financially with small contributions. Many farmers who have attended my courses get in touch with me. They come to me now with really practical questions about organic cultivation.
What advice do you give to the farmers?
II encourage them to plant their kitchen gardens in accordance with ecological principles, and I tell them what exactly they should do next. I explain in detail how they have to care for the various different plants. In particular, I advise which types and varieties they should grow, because these are more robust against drought. They are basically the old, native varieties of plants. I suggest that they should cultivate cassava, sweet potatoes, bush beans, cowpeas, arrowroot, peas and sorghum.
Biovision supports the effort to spread knowledge about the coronavirus rules of behaviour. Were you aware of that?
Yes, I heard the appeal on the radio, which was broadcast in our local language. I also saw the call on the Infonet. I believe that such efforts are very important because these channels can reach a large number of people, and especially the young.
What would you like to happen (or hope will happen) in the current situation?
I very much hope that the training courses relating to the methods of ecological agriculture that we have provided to farmers over many years will now enable our trainees to continue producing healthy food, even in these difficult circumstances, and that they will therefore contribute to the supply of food. Healthy food supports a good constitution, which is especially important right now.
Of course, I also hope that the Kenyan authorities and the health system will (with the support of the WHO) quickly come up with solutions to deal with this corona epidemic.
Video about Regina Muthama's work
(from 2015 - only available in German)


text:
Stone-Eyed Sam was a pirate captain and ruler of the so-called City of the Dead on Isla Esquelética. He hid a cache of treasure on the island, later uncovered by Captain Jack Sparrow and the crew of the Barnacle.
- "Sorry, mate, but you can't be Stone-Eyed Sam. He's dead."
- ―Jack Sparrow to Stone-Eyed Sam
While Jack and Fitzwilliam P. Dalton III were traveling through time with the Timekeeper, they were brought before Stone-Eyed Sam. Later, Stone-Eyed Sam touched and released the Timekeeper during a battle, restoring order to time.