text:
Real Health Directory - My Account or Log Out
More Health Basics
Real Health Stories
Real Health TV
5 Steps to Wash Your Hands the Right Way
10 Tips To Protect Your Liver
5 Tips for a Healthier Heart
10 Things You Should Know Before Your Next Doctor's Appointment
11 Things You Didn't Know About Autism
8 Steps You Can Take to Reach Mental Zen
10 Must-Have Hair Oils
These 7 Tips Will Keep Your Kids Healthy
More Health Tips
Real Health Focus
Ask Real Health
Snowboarder Megan Pischke
When breast cancer struck, athlete Megan Pischke learned it's OK to accept help.
October 17, 2014 • By Kate Ferguson
When Megan Pischke learned she had stage 3 locally advanced breast cancer, the shock soon turned to devastation. Pischke was confused. She was a professional snowboarder and X Games veteran. She followed a healthy lifestyle and couldn't quite comprehend how she'd acquired this devastating illness. "I eat healthy; I don't smoke; I don't drink and I'm an athlete," Pischke says. "I thought I was really in tune with my body."
Still, when Pischke reflected on her life she admits that at times she'd felt there was something wrong. "There was something going on for a couple of years," she says. "I didn't know if it was my thyroid, or if it was my hormones that were all wacky from [having] my second child. But I did know that something was wrong."
Pischke's diagnosis confirmed her fears. But once she moved beyond the devastation and the fear she thought about all the women, girls and other young people she'd met at Boarding for Breast Cancer (B4BC) who'd survived cancer. Pischke would organize retreats for breast cancer survivors to share their experiences as part of her involvement with this breast cancer education and prevention foundation. "I was just really inspired by this," she says. "So I thought I just had to make some plans. I've got two children, so I thought of them and my family."
Pischke's cancer-fighting strategizing began with a mental statement of her mission. "I decided that I was going to survive this and not have a reoccurrence," she says. "But I wanted to make sure that I was going to do everything that I could mentally, physically and spiritually to get me to that point."
Part of Pischke's plan included following a holistic and traditional chemotherapy approach to treatment after she underwent surgery. One of the things that was very important to her was to hold onto her hair. "I thought that by keeping my hair, I'd be able to keep my illness private," she says. "I wanted to live my life without having to share that story at that time with everybody. That just felt better to me."
The method Pischke used to circumvent hair loss during her chemo treatments is called cold cap therapy. She'd heard about it and wanted to see if the treatment might work for her. Cold cap therapy is also called scalp cooling. Essentially, the process entails the use of a special cap, or set of caps, cooled to very frigid temperatures, using dry ice or a biomedical freezer. The freezing temperatures constrict the blood vessels that lead to the hair follicles and in so doing reduces the amount of chemotherapy drugs that reach the follicles while the cancer patient wears the cap. This helps to stop hair loss.
Cancer patients in Europe have used cold cap therapy for almost 20 years. But in the United States people living with cancer have only learned about and used the treatment during the past few years according to the Rapunzel Project, a non-profit organization that helps chemotherapy patients keep their hair during treatment.
Megan Pischke and her family
"I felt really empowered actually by the process of trying to keep my hair," Pischke says. "My husband and I went into it with an open mind, not knowing if it was going to work or not, so we just tried it."
But after 16 chemo treatments, Pischke says, "I still had my hair, so I was halfway through the process when I realized that I wasn't going to lose all my hair."
Pischke's goal was to look as normal as possible during her chemotherapy treatments. "There were some days that I could wake up and look in the mirror and feel okay," she reveals. "I would be kind of able to escape from the intensity of what was really going on in my life by looking and feeling normal, and my kids could see me as normal."
Although she did lose her eyebrows and eyelashes during treatment, Pischke simply put on her reading glasses when she had to travel about. This way she didn't have to share that she was undergoing cancer treatments with "people at that time." This was a way she used to hold onto a bit of normalcy in her life during this stressful time.
Pischke also allowed a friend who worked for a production company to film her while she did the cold cap therapy and teamed up with B4BC to capture her journey in a documentary format so that other women in breast cancer treatment could learn from her experience. "I decided that sharing my story could, hopefully, inspire and teach others what I was learning," she says. "I wanted to share that with people."
The film is titled Chasing Sunshine and is scheduled to make its U.S. debut in January 2015 during X Games, in Aspen.
Besides documenting Pischke's cold cap therapy treatment, the film also explores her decision to use a mix of holistic care and traditional chemotherapy to treat her cancer. Pischke's integrative approach to cancer care included Chinese and naturopathic medicines. She also maintained her whole foods, plant-based diet and added drinking bone broth, even though she's not a meat eater.
"I actually got organic soup bones and I cooked them in my crock pot," she explains. "At that time, it was a really horrible smell, but then I discovered that I could throw in ginger, carrots and onions to get rid of the flavor."
Pischke held her nose while sipping the broth and thought about how the concoction would nourish her system . "I drank it because I knew it contained vitamins and it supplemented my bone marrow and helped my blood, so I had to get over the fact that it was gross," she says.
In addition, she maintained a regimen physical activity that included paddle boarding, running, walking and doing yoga. She also prayed and meditated, and even visited a shaman before she moved her alternative treatment plan into motion. "I discovered in that work I did with myself that I had to believe that I was going to make it through this, and this was part of my process," she explains.
Support from family and friends also helped Pischke immeasurably. "There was a part of me that actually wanted to do this alone," she admits. "But there was a lot of that personal conversation with myself happening where I realized that this wasn't just about me. This was also about my family and friends wanting to help."
Pischke sees herself as a giver who usually does a lot for other people. But she learned a life lesson that took her to the opposite extreme of that characteristic.
Says Pischke, "I think this process really taught me that when things get hard it's okay to let people in because they want to help. I also had to learn that it's about receiving. That's what the world is about; it goes both ways."
To view the trailer and to donate to B4BC's efforts, visit chasingsunshineproject.org.
I Thought Bleeding for Two Weeks Straight Was Normal—It Wasn't
Good Oral Health: Questions and Answers About Mouthwash
Empire Actress Keesha Sharp Raises Pancreatic Cancer Awareness in Memory of Her Mom


text:
Start Articles Exclusive On Target – Advances in Small Arms Sights
CWO4 Dave Tomlinson, infantry weapons officer at Marine Corps Systems Command, demonstrates the Squad Common Optic attached to the M27 Infantry Automatic Rifle, Feb. 10, aboard Marine Corps Base Quantico, Virginia. The SCO is an improved optic that improves target acquisition and probability of hit with infantry assault rifles. Marine Corps Systems Command began fielding the system to infantry and infantry-like units this year. (U.S. Marine Corps photo by Matt Gonzales)
On Target – Advances in Small Arms Sights
David Saw
At first sight, the small arms sector is one where mature technologies hold sway and technological innovation is rare. Recently, however, there has been much innovation in the sector.
If you were to look at the military small arms sector in a rather superficial manner, you might conclude that real progress has been something of a rarity. For example, the standard NATO 7.62×51 mm round was standardised in 1954, with the US standardising the 5.56×45 mm round in 1963, while the NATO standard 5.56×45 mm SS109 round developed by FN Herstal was standardised in October 1980 – some 41 years ago. As such, there is not much evidence of visible change in the context of small arms ammunition.
Regarding small arms themselves, the evidence suggests very little change having taken place. The M16 rifle is arguably the dominant western assault rifle. It was first ordered in 1963 for the US Army, with production starting in 1964, and first deliveries in 1965. The M16 was developed from the AR-15, which had first seen combat in South Vietnam in 1961, so it would therefore seem fair to say that the dominant western assault rifle is a 60-year-old weapon. On the other hand, it could be pointed out that the current version of the M16 family used by the US military is comparatively less aged, as the M4 carbine was only selected in 1994.
Modifications Only
All of this would seem to indicate that the small arms sector is one where mature technologies hold sway and technological innovation is rare. There was a point where you could make an argument that all of this was true, though fortunately this argument only covers part of the story. In fact, there has been much innovation in the small arms sector, as the M4 has had nearly 100 modifications since it entered service, resulting in increased performance and a vastly reduced failure rate. Ammunition performance has also improved markedly. The latest rounds fit the standardised calibre dimensions, but offer increased range and penetrative power.
The primary contributing factor in advances in the small arms sector has been 20 years of war in Afghanistan since the commencement of Operation Enduring Freedom in 2001. Afghanistan, followed by Iraq, and then the expansion of the fight against terrorism to a global conflict, has created an environment where evidence from combat operations leads to new requirements and the money is available to turn those requirements into reality. In this environment, there is innovation, not just in how systems are being built by taking advantage of improvements in materials, optical, electro-optical and electronics technology, but also in how we look to meet operational requirements.
To obtain an understanding of where we are now in terms of small arms sights and where we could go in the future, it is necessary to look at the evolution of small arms and the requirements that drive that evolution, and in turn the combat experience that drives the generation of requirements. The starting point for this analysis comes with the realisation that the bolt-action rifle and its full power round were not the optimum small arms solution for the infantry. Instead, the evidence pointed to the intermediate round, such as the German 7.92×33 mm Kurz and the Soviet 7.62×39 mm M43 rounds, as the optimum solution. In turn, these rounds prompted the arrival of the modern assault rifle.
In terms of sights, quality optics were expensive and therefore an optical sight was generally only issued to a sniper and attached to a selected highly accurate rifle. One of the first attempts at developing a night sight capability came from Germany, in the Zielgerät 1229 VAMPIR. The system entered service in limited numbers in 1944, issued to snipers and later integrated with the MG34 and MG42 machine guns. The sight was then integrated with the Sturmgewehr 44, arguably the first modern assault rifle, and used in combat from February 1945 onwards. The system consisted of an infrared light, an optical sight and a very heavy 15 kg battery pack carried by the operator. VAMPIR worked, but it was very cumbersome, and true night sights would only start to be a real possibility many years later.
Other Efforts
The British Army looked to introduce a new rifle to replace its standard bolt-action rifle and submachine gun, which resulted in the EM2 rifle in the intermediate 7×43 mm calibre. What was significant about the EM2 was that it had an integrated optical sight. The EM2 was an excellent weapon, a true assault rifle, although expensive, but some senior officers criticised it because its cartridge was not powerful enough for long-range accurate target engagement. Such engagements were a rarity rather than the norm, and across the vast majority of engagements a properly set up rifle with an optic would to be far more accurate than a conventional rifle.
As is commonly known, US Army pressure resulted in NATO adopting the 7.62×51 mm round as standard in 1954, and consequently, Britain dropped the EM2 and adopted the FN FAL in 7.62×51 mm. They did not fit the FAL with an optic, and Canada also adopted the FAL, though initially had an optic on the weapon, but this was subsequently discarded. NATO therefore had battle rifles with an over-powered cartridge that allowed for long-range engagements, but the vast majority of infantry have to make do with iron sights, which reduces the successful outcomes in such engagements.
It was the 1960s and the Vietnam War that saw the integration of a relatively effective night-fighting capability with small arms. By 1967, the US Army had started to field the AN/PVS-2 STARLIGHT scope, an image intensification system, which was a first generation device offering adequate performance. By the end of the 1970s, GEN II devices such as AN/PVS-4 were available, with these remaining in service post-2000. The arrival of GEN III tubes offered higher reliability and improved performance leading to such systems as the AN/PVS-17 Miniature Night Sight (MNS). Further development led to GEN III OMNI V–VII tubes and the resultant performance improvements.
In terms of night-fighting capabilities from the 1960s onwards, there have been important progress in technology and this has translated into major performance gains in night sights. Earlier generation systems were unreliable and tiring to use, unlike the current generation of systems. Perhaps the most important change in terms of night vision has been that of affordability. It was not that long ago that night vision devices, such as goggles and sights, were so expensive as to preclude widespread issue. This is no longer the case and, as a result, western armed forces have gained significant operational advantages due to enhanced night-fighting capabilities.
Night vision technologies are more readily available than before, both in terms of military grade and commercial grade systems. Inevitably, this has seen the proliferation of such capabilities and predictably, that has started to erode some of the night-fighting advantages enjoyed by NATO and allied forces. On the other hand, as long as the pace of technological innovation continues, then the night-fighting advantage will still be a critical factor in combat.
Optical Path
History repeated itself in the 1970s when Austria took into service the Steyr AUG (Armee Universal Gewehr) with its integrated Swarowski 1.5x optical sight. Elsewhere in the mid-1970s, the British introduced the L2A2 Sight Unit Infantry Trilux (SUIT); this was a 4x optical sight designed for daytime or low light conditions, and was adopted by the UK, Australia and New Zealand. In British service, it was used on the SLR (the British version of the FN FAL) and the GPMG (the British version of the FN MAG), but it was not widely deployed.
Things changed for the British when they adopted a new assault rifle in the mid-1980s in the form of the L85 in 5.56×45 mm calibre that came equipped with the L9A1 Sight Unit Small Arms Trilux (SUSAT), a 4x optic. Ironically, while the original L85 was a pretty horrendous weapon, the SUSAT was a fairly good optic. More than 30 years after they sought to provide their assault rifles with an optic, the British finally achieved that goal with the SUSAT.
The Canadian Armed Forces decided to replace their version of the FN FAL battle rifle, the C1 and the C1A1, in the mid-1980s with a 5.56×45 mm rifle that would be based on the Colt 715 and modified to meet Canadian needs. This resulted in the C7 assault rifle and later the C8 carbine. Like the British, the Canadians wanted to provide their new rifle with an optic and they selected the ELCAN SPECTER OS, a 3.4x optic that they classified as the C79. The C79 was attached to the weapon via a Weaver rail, but this was subsequently replaced by a MIL-STD-1913 Picatinny rail.
US Special Forces have been the catalyst for much of the development of optics, night sights and rails. Evidence of what can be achieved can be seen with the United States Special Operations Command (USSOCOM) Special Operations Peculiar Modification (SOPMOD). SOPMOD was an evolving series of kit designed to add sight, both day and night, and a host of other capabilities that could be integrated with the M4 carbine and the FN SCAR. As the SOPMOD programme evolved, other Special Forces' weapons, including different rifles, light and medium machine guns and crew-served weapons were included. Operators select the appropriate options for their mission from the range of systems in the SOPMOD package.
The Block 1 SOPMOD package used the Knight Armament Company (KAC) Rail Interface System (RIS).Also included were the Trijicon Advanced Combat Optical Gunsight (ACOG), the Aimpoint CompM2 mount for the AN/PVS-14 monocular night vision device, Insight Technology AN/PEQ-2 infrared target pointer, illuminator, aiming laser and the Visible Light Illuminator (VLI) and the Trijicon reflex sight. Other options included the Insight Technology AN/PEQ-5 visible laser sight and the AN/PVS-17A MNS.
Improvements to Block 1 included a new RIS, with Insight Technology supplying the SU-233/PVS and SU-238/PVS gun lights. Also included were the EOTECH SU-231/PVS holographic weapon sights, SU-237/PVS ACOG and the AN/PVS-17A product improvement kit. The Block 2 package had the SU-232/PAS CNVD-T thermal sight, SU-231/PEQ holographic weapon sight, XPS-3 weapon sight, G33 magnifier, SU-230/PVS ELCAN SPECTER DR 1-4x optic and the L3Harris AN/PVS-24 clip-on night vision device. Further SOPMOD enhancements were integrated as requirements and systems evolved.
The SOPMOD effort commenced in the mid-1990s and it helped to drive the technology of sights forward and created the environment where conventional forces saw the utility of many of these sights and associated systems and took them into service. Finally, it seemed that the age of small being equipped with nothing more than iron sights was coming to an end in the more sophisticated conventional forces around the world. All of a sudden, Picatinny rails were sprouting all over assault rifles and there seemed to be no end to what soldiers were prepared to attach; optics, magnifiers, night sights, laser target pointers and tactical lights being the most common add-ons.
Urgen Requirements
Once Western forces became embroiled in ground combat operations in Afghanistan and Iraq, the demand for improved sights grew rapidly. For the British Army, combat operations in Afghanistan saw the issue of an Urgent Operational Requirement (UOR) covering the acquisition of the Trijicon ACOG to replace the SUSAT. Later, a more conventional procurement effort saw the acquisition of the ELCAN SPECTER OS, the Shield Close Quarter Battlesight (CQB) and Qioptiq thermal and night sights.
The US Marine Corps had earlier adopted the Trijicon ACOG in 2004 as the Rifle Combat Optic (RCO), and more recently, the US Marine Corps looked for an RCO successor system in the Squad Common Optic (SCO) programme. In January this year, they started fielding the SCO system having selected the Trijicon Variable Combat Optic Gunsight (VCOG), a 1-8×28 optic, to fulfil this requirement.
Another user who solved its evolving optic requirements by turning to its existing supplier was Denmark. In the mid-1990s, the Danish Army selected the Colt Canada C7A1 as its new rifle (GEVÆR M/95) and then took the C8A1 carbine into service as the KARABIN M/96. In parallel, they adopted the ELCAN C79 as their optic. In 2010, Denmark ordered a new variant of the Colt Canada rifle with an integrated upper receiver, with the weapon classified as the GEVÆR M/10, which became the primary service rifle. Denmark has now taken delivery of the ELCAN SPECTER DR 1-4x optic for its rifles and M60E6 machine guns, with their M2HB heavy machine guns equipped with the 1.5-6x version of the SPECTER DR.
Future Prospects
Lessons from Afghanistan and other combat operations have led to a rethink on a number of issues regarding small arms. Previously, the assumption was that most engagements would take place at distances up to 300 metres, but that has since changed and we are now looking at distances up to 600 metres and perhaps beyond. This has created a need for higher performance ammunition and, of course, for more effective sights.
Another issue was ammunition expenditure, which was far higher than anticipated, but the effects did not reflect the amount of ammunition expended. Obtaining more effects per round expended was another argument for improved sights and for improved fire control devices. The infantry soldier was already overburdened with too much weight, so if that could be reduced by maximising the utility of the ammunition carried, it would make a positive contribution to reducing the overall weight burden. In a related move, ammunition weight could be further reduced, for example, by the use of plastic cases.
Later in the Afghanistan conflict, the capabilities of the Taliban started to improve; for example, some Taliban groups began wearing body armour. The solution to these hardened targets was higher performance ammunition and, of course, better sights. Night combat remained an advantage for western forces, but again the Taliban started to acquire some night capabilities, meaning the solution was to improve the dependability and performance of western night sights and other night vision equipment.
As we know, there are currently very few limits on what can be attached to small arms in terms of sights and other accessories. To that end, we must add suppressors that are applied to small arms to reduce signature, which can be regarded as a positive, but on the downside, this adds more weight and size to the weapon. It is advisable not to add too much weight to the weapon and avoid any impact on its fit and form. An obvious solution is to reduce the weight of each of the items that can be added to the weapon, plus the requirement to reduce the weight of the batteries needed to power these items. Or we can look to have an integrated fire control system that includes all of the systems needed in terms of sights and related equipment in a single system.
The integrated fire control system appears to be the path to the future for small arms. A trend confirmed by the US Army Next Generation Squad Weapons (NGSW) programme to replace in-service US Army small arms, with its NGSW-FC fire control system element for which L3Harris and Vortex Optics are competing. ELCAN has developed their own fire control solution in the form of the SPECTER Digital Fire Control Sight (DFCS) and the system is already being evaluated by a number of NATO armies on different small arms platforms.
Futuristic Developments
Another option in the integrated fire control system area comes from Elbit Systems with their Assault Rifle Combat Application System (ARCAS), which is described as "a built-in computerised Artificial Intelligence (AI) powered system that interfaces with the rifle's Electro-Optical (EO) sight, with a helmet mounted eyepiece and with the rifle's assemblies, providing soldiers with real-time intuitive actionable combat information." The ARCAS computer is integrated with the forward grip of the rifle, and receives and integrates data from the user's EO sight, tactical information from C2 systems, data from other ARCAS users and information on the status of the user's weapon. The user can view this data as an overlay on the EO sight picture or via an eyepiece mounted on the helmet. ARCAS can include thermal or low light sights, or interface with existing EO sights. The system has built-in growth potential and can also run third-party applications according to Elbit.
Where ARCAS is interesting is that it offers the opportunity to increase the situational awareness of the user and maximise the weapon's potential. Beyond that, it offers another way to integrate the infantry soldier into a digitised operational environment.
Clearly, we are entering a future where just integrating an optic with the standard assault rifle is no longer enough. If integrated fire control systems can deliver the ability to acquire and accurately engage targets at the desired battle ranges in both day and night conditions, then this is the way forward. However, these integrated fire control solutions must not impose a significant weight burden and must be fully reliable in terms of fit, form and function.
Optical Sights
Small Arms
ESD Editorial Team
Medium Tactical Vehicles – The 6×6 Sector
Australia's Lethality System Project for Next-Generation Small Arms
Canada's Optical Powerhouse
US Army Enters New Small Arms Era
SKYKEEPER – Expanding Ground-Based Air Defence Possibilities in Britain
The Rise and Fall of the Russian Battalion Tactical Group Concept
Challenging Times for the French Defence Industry
The British Army Artillery Renaissance – British Army Artillery
Finland – NATO and New Security Realities
[manual_related_posts]
More benefits for you
Service for subscribers
If you have questions regarding your subscription of European Security & Defence contact our subscriber service:
Phone (040) 38 66 66 -319
Fax(040) 38 66 66 -299
E-Mail mittler-report@pressup.de

redpajama_set_name: RedPajamaCommonCrawl


text:
Find Your Next Read
Virtual Events & Classes
A-Z List of Databases
Earn Your GED | Learn English | US Citizenship
Lit Chat with Brit Bennett
Brit Bennett wowed readers in 2016 with her debut novel, The Mothers, and again in 2020 with her New York Times number-one bestselling novel The Vanishing Half. If you were one of those readers, you now have a chance to meet Brit Bennett in person at the library! Come hear about her books and writing process, and get a chance to ask her questions during our Q&A session.
#JOIN:
Lit Chat with Brit Bennett, Monday, June 6, at 6:30 pm. This event will take place live at the Southeast Library and will be livestreamed online via Zoom. Bennett will sign books after the event. Books will be available to purchase on-site from The Bookmark or you can bring a book purchased from your favorite bookseller. If you want to be the first to know about upcoming Lit Chats, sign up for our Lit Chat mailing list!
Brit Bennett is the author of the dazzling coming of age novel The Mothers and the National Book Award nominated novel, The Vanishing Half, which was also longlisted for an Andrew Carnegie Medal for Excellence in Fiction. Bennett was named a 5 Under 35 honoree by the National Book Foundation and the book was longlisted for the NBCC John Leonard First Novel Prize and the PEN/Robert W. Bingham Prize for Debut Fiction. Her work has also been featured in the New York Times, The New Yorker, The New York Times Magazine, and The Paris Review. While an undergraduate at Stanford, she won the Bocock/ Guerard and Robert M. Golden Thesis prizes for her fiction. Earning her MFA at University of Michigan, she won a Hopwood Award in Graduate Short Fiction as well as the 2014 Hurston/ Wright Award in College Writing. Her conversations are as memorable as her writing and give audiences a window into her craft while exploring broader themes of race and systemic injustice.
Interviewer Nikesha Elise Williams is a two-time Emmy award winning producer, an award-winning author, and producer and host of the Black & Published podcast. Her latest novel, Beyond Bourbon Street, was awarded Best Fiction by the Black Caucus of African-American Librarians in the 2021 Self-Published eBook Literary Awards. It also received the 2020 Outstanding Book Award from the National Association of Black Journalists. Nikesha is a Chicago native and she attended The Florida State University. Nikesha writes full time with bylines in The Washington Post, ESSENCE, and VOX.
#READ:
Check out The Vanishing Half and The Mothers from the library!
And for more great reads, here are Brit's current reading recommendations:
The Three Mothers, by Anna Malaika Tubbs: "A fascinating exploration into the lives of three women ignored by history, the mothers of Martin Luther King Jr, James Baldwin, and Malcolm X. By tracing the intellectual, political, and emotional strands of each woman's life, Anna Malaika Tubbs uncovers hidden complexities within black motherhood that illuminate our understanding of the past while also shedding light on the overlooked contributions of black women today."
Afterparties, by Anthony Veasna So: "A beautiful and blisteringly funny story collection from a young writer we lost far too soon. The book weaves through a Cambodian-American community in the shadow of genocide. following the children of refugees as they grapple with the complexities of masculinity, class, and family. Anthony Veasna So explores the lives of these unforgettable characters with bracing humor and startling tenderness."
#WATCH:
The Vanishing Half addresses themes of colorism and passing. For a real-life story of unintentional passing, check out the documentary Little White Lie, available through Kanopy.
The Mothers talks about motherhood, of course, as well as coming of age and navigating friendships. In Daughters of the Dust, Julie Dash tells an intergenerational story of women living in a Gullah community in South Carolina. Fans of Beyoncé will know that this movie also influenced her 2016 album Lemonade.
#EXPLORE:
For an artistic interpretation of Black motherhood, check out the virtual exhibit of "Magic, Mirth, and Mortality: Musings on Black Motherhood" on the website of Yellow House, a Jacksonville art and community space. The exhibit showcases writing and visual art from Jacksonville artists Shawana Brooks, Tatiana Kitchen, Marsha Hatcher, and Cheryl McCain.
Library U
Lit Chat
Want the book hook up?
Sign up to get the hottest titles in your favorite genres sent right to your inbox each month
2021 Blog Archive
303 N. Laura St.
Urban Branch Envisioning
Support Your Local Public Library
Instagram flickr Facebook Twitter TikTok YouTube
Jacksonville Public Library App
2023 © Jacksonville Public Library


The final, week long round of the British Paragliding Cup was held from August 5th- 12th. For the fourth year our base was the Lancashire and Derbyshire Gliding Club complex at Camphill, sited at the southern end of Bradwell, and a convenient 30 minute walk from take off. As a base it would be hard to beat, welcoming, with a variety of accommodation, breakfasts, a bar. It's easy to see why we keep coming back. As the week progressed, the evening menu went through a (design your own) pizza night, curry night, barbeque, a Sunday roast - and of course washed down from the 'open' bar. It's a real home from home that makes sitting out the spells of unflyable weather very bearable. The other huge plus is the pilots and family attending … each year we lose a few and gain a few, but the extended close friends the BPC has evolved into makes it a very happy occasion. The wonder of it all is that we aren't swamped with entries. It seems too few have faith in UK comp flying – but read on, we may have the answer.
What about the flying? We tried for three tasks and managed two; that didn't seem bad for the weather we were dealt and the final task co-incided with one of those cracking UK days that almost magically appear amongst the dross.
After a blown-out Saturday spent catching up and chatting about the flying prospects, Sunday offered an early morning chance of getting a task in. We rose early and were laid out on take off by 9:30am. The wind was OK on arrival, the rather rocky and abrupt take off less attractive, but the ridge is 5k long and offers plenty of scope for close quarter racing. Actually, we went for elapsed time to spread the load around take off. Quickly briefed and kitted we could feel the wind rising accompanied by a nervous tension around a launch that was becoming increasingly unwelcome by the minute. A small number of the bravest, keenest and maddest managed to take off, but within 10 minutes it was obvious the wind had beaten us and the task was canned.
Our next flyable slot arrived on the Tuesday, not a bad looking day at all as we laid out on Bradwell. The sun was out, the clouds looked good, even though base wasn't anything to drool about at a meagre 3500'. It was still a touch windy, but nothing to keep us grounded.
Gareth Aston is a master task setter. It's really hard to match the conditions to the field, but credit to him he always makes good decisions. When he called a 17k goal to the edge of Sheffield I thought it less than ambitious – two thermals, a good drift, Hell! The whole field will be in goal in 30 minutes.
Wrong! It was a struggle. The fields around Hathersage claimed over half the comp which wasn't a good start. Those happy few of us left, climbed out in dribbles of grudging lift over Millstone Edge or Stanage … if you got a little height and could clear the moors the drift got you to goal. If it didn't it was a bus ride back from the far side. With my idea of an 'easy task' shot down in flames I was condemned to a penitent bus ride. Only two made it into goal, Brad Nicholas (Aspen 6) and Tony Blacker (Delta 2) ….. a little later Gareth joined them – just for the fun of it.
A BPC rule seems to be, "Never waste a day". Whilst awaiting the forecast 'big' Thursday, David Thompson led a comprehensive debrief of the previous day, which is always good for a lengthy debate. We had various other talks and three of us took advantage of nearby Aerofix to get our gliders trimmed. Trimming is quite a technical exercise with its own jargon. Mine was described as 'weird', Lesters Gordon's as 'higgledy, piggledy' ….. and Viv Fouracre's as only 'slightly out of trim' – much more comforting. Still - trimming has a wonderful placebo effect.
One other subject that arose from the day was the shape of the 2018 BPC. Earlier in the year a combined Snowdonia Skysports/ BPC group had gone out to Krusevo, Macedonia, basically to fact find the idea of a week long round being held there, possibly preceeded by a guided week for those who wanted an extended break. The feedback was overwhelmingly in favour and Krusevo will be one of the rounds held during the latter part of June next year when it seems at its best. To retain the small, friendly atmosphere this will be of limited places, around 40 pilots plus family. As far as UK rounds are concerned, whilst not finalised, these will still take place in the UK, but as four day events, one of which will retain the Peaks round. The Pennine round is still on the cards too. It's all looking very positive for the future.
The forecast held for Thursday, a great looking 100k day that would only be eclipsed by the following 'Super' Sunday - the 200k day. Bradwell was awash with wings, but the light winds and regular gentle cycles meant it rarely got busy in the air and it wasn't long before gaggles of free fliers were drifting off downwind leaving the hill a less congested place.
Again, Gareth set a great task for the day – not too long, yet never too short. A 66k race to goal via an offset turnpoint at 33k near Bolsover. What he may not have realised was it was next to an excellent pub nestling on the side of the River Trent. Pub goals are worthy of consideration when task setting – definitely an extra incentive.
Due to the infrequent cycles the start got somewhat staggered. I was fortunate to get off shortly after the window opened, get an immediate climb out and tag the start cylinder just out front. A good start always helps – especially as I'm never the fastest. Over the next hour or so the field got spread out down the course, some having a relatively easy time, whilst the unfortunate struggled to transit from the high moors to the lower ground east of Chesterfield. I also had the good fortune to have Olly Sherratt and Toby Briggs help at key points in the flight. Olly really impressed – my initial inclination had been to lose him, until I realised he was a useful pilot to have close and keep tabs on. Toby, a fellow Dales pilot finds and works lift well – however, his navigation puzzled me at times, so in the end we parted company south of Mansfield.
Eventually it came to the long run in towards goal, all alone or so I thought, when an Aspen 6 appeared just in front and 400' lower. From a late start Brad Nicholas had stormed through the field to pole position – cheeky! My height allowed a lot of speed bar until I drew level. Brad was on the very margin of his glide to make it so had backed off. I pulled ahead – rare for me. Never, think anything is in the bag! Nearing the end of speed cylinder, and thinking I was well ahead I put in a turn (crazy) only for Brad to shoot through below and nip the cylinder ahead of me by a mere few seconds. 10 minutes later Olly came in and an hour later Alastair Tytler brought up the rear.
In the end only a happy four of us made goal and enjoyed a few pints awaiting our scary taxi ride back thanks to the coffers of the BPC. It's a highly recommended retrieve system. Later, at the download, Olly had the disappointment of discovering a missed cylinder at Bolsover; he'd set it to 500m, not 400m. A real bummer and hard to live down when you pilot Dreamliners for a living.
The next two days brought a cocktail of wind and rain which drew an end to the 2017 BPC. Brad Nicholas had done consistently well in both events and became the BPCup winner for this year. It was a tight final task with Viv Fouracre and Tony Blacker also vying for first place – but Brad hung on in there. It's not a comp that features high on many UK pilots radar, but I think it should. Not only is it on our own turf and very accessible, but a great way to cut your teeth on serious competition tasks; it's also an excellent learning environment and super fun - plus a lot less stress than the 'other' big fun comps abroad. Over the past four or five years we've battled with the UK weather and hopefully our 2018 compromise solution will partly overcome that. This year we managed four good tasks out of 11 flying days – not great, but next year we'll surely double that with the help of Macedonian sunshine.
Finally, a big thanks to Gareth for being cool under fire and Viv Fouracre for doing lots of the donkey work, endlessly nagging Gareth and herding pilots. It can't be easy.
A big thank you to our sponsors – Beeston Brewery , Cross Country magazine, Foster Knight , Ozone Gliders, Snowdon Gliders, Superdesign and V12 Outdoors.


text:
Making entertainment accessible to as many people as possible can be challenging, especially for video games which rely heavily on visuals.
The International Game Developers Association estimates 10 to 20% of people don't play video games because of a disability.
The concept of creating a video game for blind people might seem unusual, but the idea is being embraced by game designers including West Aussie indie game developer Brian Fairbanks.
Brian's rescue dog adventure game Lost and Hound is fully accessible for visually impaired people.
As tracking dog Biscuit, the player follows an audio trail that reflects a dog's powerful sense of hearing to complete a rescue mission. Each level draws inspiration from real-life search and rescue dog situations, such as sniffing out survivors in rubble after earthquakes and in collapsed mines.
Even a scent trail is represented through a low, pleasing hum.
Brian's aim was to create a video game that was accessible to the blind gaming community but visually appealing enough to entertain mainstream gamers. He believes it's important to make video games more accessible.
"[Vision impaired people] are the only segment of society that we as game developers have done such a terrible job at trying to meet their needs," Brian says. "They've literally gone off and made their own genre called audio games."
Brian says accessibility is often an afterthought at the end of the production process.
"You don't make a game and then say what can I do for people with a cognitive impairment, hearing impairment, visual impairment?" he says. "You need to start [with accessibility in mind] at the very beginning."
YOU MIGHT ALSO LIKE Guide Dog School Struggles with Lack of Funding and Awareness
In-game footage of Lost and Hound.
Lost and Hound looks like a regular game, but if you play with headphones, you can complete the levels using audio alone.
Brian says vision impaired players are better at the game than sighted players.
"[Sighted people] don't use sound to inform their decisions, it's more reactionary … but blind people do all the time so they're much better at the game," he says. "When you think about how much information can be transmitted through sound alone, the breadth of what you can do is incredible."
Lost and Hound's unique gameplay earned Brian a travel grant from the WA Government as part of a new International Access Pass program. The program helps connect WA game developers with key players in the global industry and covers travel to major games industry conferences.
Brian used his International Access Pass to show Lost and Hound at the PAX East gaming festival in Boston, Massachusetts, in March. Lost and Hound gained new fans at the 4-day expo with over 200 players giving it a go.
Brian is also part of a tech startup game studio, Ebon Sky Studios, which is developing a custom game engine software that enables blind people to create their own video games.
"We're creating a framework so people who are blind can make games without code," he says. "Nobody else in the world is doing this as far as I know."
Vision impaired users will be able to create video games using voice control to select options from a series of audio menus (such as "brick house") to create a game world.
YOU MIGHT ALSO LIKE Braille Mail: The Sequel to the Prequel
Lost and Hound will be available on Steam later this year.
Introduction to Speakerphone Ex
https://dts.podtrac.com/redirect.mp3/media.blubrry.com/cool_blind_tech/p/content.blubrry.com/cool_blind_tech/Introduction_to_Speakerphone_Ex.mp3
Greg Lopez introduces Speakerphone Ex, a speakerphone automation tool for Android. You can get either the free version here or the pro version for around $1.50 US here.
YOU MIGHT ALSO LIKE PKvitality Shows off Wearable That Tracks Glucose Levels at CES 2017.


Home Supplements Awesome Supplement Stacks for the Gym!
Are you looking to get the most out of your workout? Of course, you are. You're not going to the gym just to sit on an exercise bike and read a back issue of People Magazine. You want to see results, build muscle, slash fat and be the best version of you possible.
That doesn't mean you can't use a little bit of help along the way. Supplements will do just that.
With the aid of supplementation, you'll net larger gains, increase strength potential and see the fat drop right off, as long as you put the work in at the gym. To get the best gains though you're not taking one supplement at a time though.
You're taking several, which is known as stacking (you're literally taking one on top of another, or "stacking" your supplements).
But what supplements are the best to stack for gains at the gym?
When looking for the right supplement stacks you'll need to include amino acids.
There are a few different kinds to keep in mind, but if we go down the list alphabetically, Arginine is at the top (in more ways than one). It is one of the AAs that is converted to nitric oxide.
What this does is help increase blood flow throughout your muscles.
By increasing your blood flow you'll deliver more protein and oxygen to muscles, which helps build stronger, larger muscles at a faster clip.
Of course, having more blood flowing in your veins also helps with that pump you get from a solid workout, so you'll see the immediate improvements to your physical appearance as well.
You'll want to start out with three grams of Arginine per serving, although you should slowly increase this amount to five over the course of your time in the gym.
For any workout plan, whether you're stacking or not, you need to be taking creatine. Your body produces creatine naturally within the muscles.
This is the energy source used for explosive movements (such as exploding up on that bench press).
However, the energy source is quickly tapped out and takes some time to replenish.
By taking a creatine supplement you'll improve the amount of explosive energy in your body.
This, in turn, allows you to pump out more reps during our workout, which causes more muscle damage, which allows you to grow larger muscles and become stronger, all thanks to the single supplement.
When buying creatine you have two options: flavored and non-flavored. The non-flavored kind is great because you can mix it into your protein powder and other pre (or post) workout drinks.
There's nothing wrong with flavored, but you can't really mix it with other powders (unless you want a chocolate and fruit punch drink), which means you'll be left chugging several different supplements all at once. Just something to consider when buying your creatine powder.
With creatine powder, you'll start out with three grams per serving and then build it up to five.
Creatine comes in all sorts of different serving sizes, so make sure to read what's included when buying a particular supplement).
Another must, protein powder is the most important supplement if you want to build muscle because chances are, you're not getting enough protein in your daily diet to build the kind of muscle you'd like.
Now, there are a few different kinds of protein powders out there.
If you have dietary restrictions make sure to go with what works for those restrictions. We prefer whey protein.
That's because whey comes packed not only with protein but with BCAAs, such as valine, leucine, and isoleucine, each of which is key in helping your body metabolize the protein and use it for building muscle.
Other proteins, such as plant-based proteins (like soy and pea) are fine for net grams of protein, but these are not complete proteins. These plants lack critical amino acids that are only typically found in animals.
So if you're trying to decide on one form of protein over the other, always go with whey.
You want to take in around 20 grams per serving, although post workout you can increase this to 40. It's important to not go extremely high on the protein if you're just starting out.
Your kidneys need to be able to process the protein, so don't overdo it right out of the gate. Build yourself up to it.
Short for beta-hydroxy-beta-methyl butyrate (now you know why we just call it HMB), this is a branched-chain amino acid. It's great for helping you burn more fat and improve muscle growth, especially if you're just starting back out at the gym.
However, over time it does lose some of its effectiveness. So if you're just getting back into the gym this is a great supplement to begin taking.
However, if you've been hitting the gym hard for a while now, HMB probably won't be as beneficial to your diet and supplement stacks. It's just something to keep in mind when picking up new supplements.
Here is another amino acid that is found within your body. This particular AA is used to help your muscles recover following a workout.
It also helps the muscles grow and repair, although after a heavy workout your muscles will be taxed and the glutamine will dry out (in this way, it is similar to creatine).
In order to help avoid this kind of a problem, you'll want to introduce a glutamine supplement to your dietary supplement stacks.
This way, you'll help prevent your body from fatiguing during a workout, thanks to the increase of glutamine in your body.
By reducing fatigue you'll also be able to pump out more reps. So combined with creatine, you'll have more energy and less bodily fatigue dragging your muscles down.
Take between two and three grams per serving.
No matter how great your diet is, chances are you're not getting the kind of vitamins and minerals your body needs.
There are just so many to keep track of you'll never be able to count what you're eating and not eating over the course of any given day. With a multivitamin, you won't need to.
With the multivitamin, you'll have all the necessary vitamins and minerals you likely are not getting enough of over the course of your other meals.
Of course, with so many multivitamins out there, which one is right for you?
For starters, if you're in a specific age group, there are likely supplements you should consider. Some are made for seniors while other others are made for men or women.
When looking for vitamins, you want one that gives you 100 percent of all the daily value of Vitamin C, E and B. You might need to stack a few different vitamins in order to do this (such as with a traditional multivitamin and then an additional Vitamin C and B12 supplement on top of it).
Read the label of your multivitamins to see what is a recommended dosage. It's alright if you need to break it up.
Krill oil is kind of the new fish oil. It comes with more of the omega-3 fatty acids than fish oil, as well as a number of other helpful antioxidants and beneficial elements that your body will crave.
The only downside is krill oil is far more expensive. So there's nothing wrong with sticking with fish oil. Just make sure you're taking one of these.
There are a number of health benefits connected with taking fish or krill oil.
For starters, it comes with both DHA and EPA, which will reduce your risk of stroke and heart disease.
When focusing in on how it helps improve your workout routine it will reduce inflammation in your muscles. This cuts down on muscle breakdown, allowing your body to start at a higher threshold as it rebuilds your muscles following a workout.
This way, you won't need to use as much protein to build your muscles back up.
Instead, the protein goes toward increasing the size and not maintaining it. You'll also see faster results while taking the fish or krill oils.
It is a good idea to take the oils with food though, otherwise, you might end up with a funky feeling stomach (or less than desirable smelling breath).
Naturally, you're not just going to toss everything into a blender and chug. You'll want to take certain supplements at different points of the day to ensure the highest benefit associated with each of the supplements.
In the morning, either along with breakfast or when you wake up, take a serving of Arginine, of fish oil and of your multivitamins.
Prior to your workout, you'll want to consume around 20 grams of protein. This gives you the protein and carbs your body needs for energy.
You need to add in up to five grams of creatine in your pre-workout routine as well (this is where reading the label for the amount of creatine in a serving, as this varies widely from one product to the next).
You'll also want to take a serving of Arginine and of Glutamine before your workout.
Following your workout, you'll want to take another 20 to 40 grams of protein. You'll also want to take another three to five grams of creatine.
Your body has burned through most, if not all of what is currently stored up within the muscles.
It takes time to replenish the creatine, and you don't want to only rely on taking it immediately before a workout. You need your body to metabolize the creatine and store it within your body so it's ready for use.
Next, you'll want to also include another serving of Arginine and Glutamine following the workout.
At the end of the day, take the other half of your multivitamin and of fish oil (you can take the fish oil at lunch if that works better for your schedule).
It's important to follow the dosage recommendation on the product labels.
Every product brand is just a little bit different, so just because you're taking a certain amount with one brand doesn't always mean it will equate over to another.
You also have two options when it comes to stacking.
First, you can begin taking a supplement one at a time, take it for a week or so, then begin adding on the next one. The option is to start taking everything at once. There are advantages to each.
If you start taking everything at once you'll naturally experience the desired improvements and help the supplements offer.
However, if you suffer some kind of issue, such as cramping or another side effect, you won't know what it's coming from and will need to start taking supplements out one by one until you determine which is causing the issue.
Now, you likely won't have any side effects at all, but from time to time there is the occasional individual who's body is more sensitive to certain supplements.
You know your own body, so do what you think is right for not only your gains but your body's wellbeing.
There's no shortage to the number of supplements out there. Each supplement is designed to provide you with a boost in one way or another.
With this list of supplements, you'll increase your energy, burn more calories, increase your muscle gain and pump out more reps at the gym. All of this equals a better built you.
So whether you've been going to the gym for years and want that added boost you've been missing, or you're just getting back into the swing of things and want to take advantage of every piece of assistance possible, start taking these awesome supplement stacks for the gym and soon you'll be seeing the kind of gains and body changes you've been wanting.
Next articleThe Best Pectoral Exercises For Your Chest!


text:
Area Manager - Fashion products (Shoes, Watch, Apparel)
Central Marketing Group (CMG)
Pathumwan
Plan the business development strategies to ensure long-term success plan.
Visit branch and oversee all operation of each branch.
Study and analyze customer requirements and competitors.
Set objectives for different stores and departments.
Motivate sales volume to reach goal as assigned.
Ensure compliance with company's policies and operational guidelines.
Assist upper management in decisions for expansion or acquisition.
Coordinate with Purchasing Department for order details and forecast.
Bachelor or Master's Degree in any related field.
At least 2-3 years working experiences in Sales or Marketing functions in fashion industry is an advantage.
Good computer skills in MS Office especially Excel and Power Point.
Able to communicate in English.
Able to travel in up-country area.
Problem solving skill and good analytical skill.
Interested applicants could send their resume with recent photo, contact information, and salary expectation to:
12th Floor, The Offices at Central World
999/9 Rama 1 Road, Pathumwan, Bangkok 10330
Sales, CS & Business Devpt > Retail Sales
About Central Marketing Group (CMG)
Our mission is to deliver the world's best brands to the people of Thailand.
Central Marketing Group (CMG) is the leader in distributing, manufacturing, and marketing top international brands in Thailand. Our brand portfolio includes over 40 of the most favored international brands, ranging from fashion, denim, beauty, personal care, watches, footwear, accessories, and home & lifestyle products.
CMG is the exclusive distributor and licensee for many iconic brands such as CASIO watches, DYSON, TOPSHOP, GUESS, CALVIN KLEIN JEANS, POLO RALPH LAUREN, LEE, WRANGLER, JOCKEY, HUSH PUPPIES, THE BODY SHOP, CLARINS, AESOP, and THREE. We also have our local home-grown brands such as JOHN HENRY and S'FARE.
Our enduring success is achieved through our passionate team, and their determination to deliver exceptional results – by executing with excellence in our more than 1,600 stores and counters across every region in Thailand. We also strive to create new opportunities for lucrative expansion with e-commerce and various omnichannel initiatives. We aspire to be the preferred partner for the world's most prominent brands, and for our brands to be most cherished by our customers.
Apart from Thailand, we also have operations in Malaysia, where we have a portfolio of leading local apparel brands such as JOHN MASTER, BABY KIKO, KIKO, TRUDY & TEDDY, and SCHWARZENBACH.
Now, the application is opened for candidates who have the ability to work with us.
Keywords: Area Manager Area Sales Manager PC Supervisor Salesperson Sales Agent Sales Supervisor Sales Executive
Retail Sales jobs in Pathumwan
Sales, CS & Business Devpt jobs in Pathumwan


text:
Q: Can I have a inner shadow on both sides? -moz-box-shadow: inset 3px 0px #BDD4DE;
-webkit-box-shadow: inset 3px 0px #BDD4DE;
box-shadow: inset 3px 0px #BDD4DE;

That puts an inner shadow on the left side. Is it possible to have an inner shadow on both sides?

A: box-shadow accepts multiple values, so simply repeat your values with a -3px offset:
-moz-box-shadow: inset 3px 0px #BDD4DE, inset -3px 0px #BDD4DE;
-webkit-box-shadow: inset 3px 0px #BDD4DE, inset -3px 0px #BDD4DE;
box-shadow: inset 3px 0px #BDD4DE, inset -3px 0px #BDD4DE;

But those look more like borders than shadows. Perhaps you should use borders instead, and maybe with box-sizing: border-box in case you can't subtract from width or padding:
border-left: 3px solid #BDD4DE;
border-right: 3px solid #BDD4DE;

A: You can also use it like this
box-shadow:0px 0px 5px Grey

The first and secod value is the offset (use no offset) and the third value is the blur value

redpajama_set_name: RedPajamaStackExchange


The SiT3809 is a highly flexible high-frequency MEMS voltage-controlled oscillator (VCXO) with LVCMOS output. This device supports any combination of frequencies (80.000001 to 220 MHz), voltage (1.8 V; 2.5 V to 3.3 V), pull range (±25 ppm to ±1600 ppm) and package (2520, 3225, 5032, 7050). It provides superior pull range linearity and tuning slope consistency (Kv), 10 times better than quartz VCXOs, which results in a simpler PLL and clock synchronization design. The SiT3809 is 100% compatible with legacy quartz devices in footprint and control voltage and therefore replaces crystal VCXO oscillators without any design changes.


text:
Bryan Rapp Sculpture
Bryan Rapp is a contemporary figurative sculptor, and Artist-in-Residence at Coastal Carolina University. In August 2019, he will become the Director of the Master Sculptor Program at historic Brookgreen Gardens in Pawleys Island, SC, the country's first public sculpture garden founded in 1932 by sculptor Anna Hyatt Huntington.
Rapp holds a BA in Studio Art from Muskingum University, and an MFA from the University of Oklahoma, where he studied under renowned sculptor of the American West, Paul Moore, and sculpture professors Sohaill Shehada, Jonathan Hils, and Daren Kendall.
Bryan's career as a sculptor began as an understudy to Alan Cottrill in Cottrill's Ohio studio, gallery, and foundry, Coopermill Bronzeworks. There he learned the ancient Lost Wax tradition of clay to bronze casting, assisting on over thirty life size or larger public commissions. In 2013 Bryan was the recipient of a scholarship from the National Sculpture Society. For sixteen years, he has worked with various clients in the bronze memorial industry producing public art and exhibiting his personal work in several states, including a successful show at the JRB Art Gallery at the Elms in Oklahoma City. In 2018, Rapp won the Sculpture category at ArtFields in Lake City, SC, a competition with over 400 artists from 12 Southeastern states.


Flux Remover Plastic Safe - 13 oz.
Removes most types of fluxes including rosin and rosin based no-clean flux. Restores electrical continuity of contacts and effectively cleans surrounding areas. Evaporates quickly, leaving zero residue. Safe on plastics and metal materials. Ozone friendly containing no CFCs and VOC compliant.


text:
import json

import math

import matplotlib.pyplot as plt
import networkx as nx
import wx
from math import sqrt
from math import pi

from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg as FigCanvas
import matplotlib.image as mpimg
from matplotlib.patches import Rectangle
from networkx.drawing.nx_agraph import graphviz_layout
relative_textures_path = "resources\\Textures\\"
import matplotlib.lines as mlines

class NetworkPanel(wx.Panel):

    def __init__(self, parent, space_name):
        wx.Panel.__init__(self, parent, size = screenDims)
        self.space_name = space_name
        self.parent = parent
        self.jsonDesc = self.neDefaultJSONDesc()
        self.Bind(wx.EVT_SHOW, self.onShow, self)
        self.G = None
        self.pos = None
        self.main_axis = None
        self.axesDict = None
        self.initRootSizer()

    def initRootSizer(self):
        rootSizer = wx.BoxSizer(wx.VERTICAL)
        rootSizer.Add(self.newCanvas(), 1, wx.LEFT | wx.TOP | wx.GROW)
        self.SetSizer(rootSizer)
        rootSizer.Fit(self)

    def newCanvas(self):
        self.canvas = FigCanvas(self, -1, plt.gcf())
        self.canvas.mpl_connect('button_press_event', self.onClick)
        return self.canvas

    def onClick(self, event):
        if self.G is None or self.pos is None: return
        if event.inaxes is self.main_axis: return
        (x,y)   = event.inaxes.transData.transform((event.xdata, event.ydata))
        xs, xe = event.inaxes.get_xlim()
        ys, ye = event.inaxes.get_ylim()
        xs_disp, ys_disp = event.inaxes.transData.transform((xs, ys))
        xe_dips, ye_disp = event.inaxes.transData.transform((xe, ye))
        radius = max(xe_dips - xs_disp, ye_disp - ys_disp) / 2
        for i in self.G.nodes():
            node = self.main_axis.transData.transform(self.pos[i])
            distance = sqrt(pow(x-node[0],2)+pow(y-node[1],2))
            if distance < radius:
                print "clicked:", i

    def neDefaultJSONDesc(self):
        return {"Dwellers":[], "Buildings":[], "Resources":[]}

    def newGraphFromJSON(self):
        G = nx.DiGraph()
        self.mountRec(G, self.jsonDesc)
        return G

    def angleToRad(self, angle):
        return math.pi / 180 * angle

    def k(self, r, gamma):
        return r / sqrt(1 / pow(math.tan(gamma), 2) + 1)

    def xFromY(self, y, xlim, ylim, gamma):
        return (y - ylim) / math.tan(gamma) + xlim

    def arrowLine(self, r, gamma, xlim, ylim):
        if gamma != pi/2:
            y = ylim + self.k(r, gamma)
            x = self.xFromY(y, xlim, ylim, gamma)
        else:
            x = xlim
            y = ylim + r
        self.drawLine(xlim,x,ylim,y)

    def drawLine(self, x1, x2, y1, y2):
        l = mlines.Line2D([x1, x2], [y1, y2], color="black", linewidth=1)
        self.main_axis.add_line(l)

    def startEndPoints(self, edge):
        n1, n2 = edge
        return self.pos[n1], self.pos[n2]

    def r(self, edge, arrowLength = 0.125):
        (xs, ys), (xe, ye) = self.startEndPoints(edge)
        edgeLength = sqrt(pow(xs - xe,2) + pow(ys - ye, 2))
        return edgeLength * arrowLength

    def radBeta(self, edge):
        (xs, ys), (xe, ye) = self.startEndPoints(edge)
        return math.atan((ye - ys) / (xe - xs)) if xe - xs != 0 else math.pi / 2

    def yLim(self, endNode):
        ax = self.axesDict[endNode]
        (ylim_neg, ylim_pos) = self.main_axis.transData.inverted().transform(ax.transData.transform(ax.get_ylim()))
        return ylim_pos

    def xLim(self, y_lim, edge):
        (xs, ys), (xe, ye) = self.startEndPoints(edge)
        return (y_lim - ys + (ye - ys) / (xe - xs) * xs) * (xe - xs )/ (ye - ys) if xs != xe and ys != ye else xe

    def addArrowTo(self, (n1,n2), r, alpha = 10):
        rad_beta = self.radBeta((n1,n2))
        rad_alpha = self.angleToRad(alpha)
        y_lim = self.yLim(n2)
        x_lim = self.xLim(y_lim, (n1,n2))
        self.arrowLine(r, rad_beta - rad_alpha, x_lim, y_lim)
        self.arrowLine(r,rad_beta + rad_alpha, x_lim, y_lim)

    def findMinR(self, G):
        return min([self.r(edge) for edge in G.edges()])

    def addArrowsToGraph(self,G):
        r = self.findMinR(G)
        for e in G.edges():
            self.addArrowTo(e,r)

    def jsonTreeHeight(self, lvlList):
        return (max([self.jsonTreeHeight(childDesc["Children"]) for childDesc in lvlList]) if lvlList.__len__() != 0 else 0)+ 1

    def mountRec(self, G, lvlList):
        for childDesc in lvlList:
            self.mountTreeLvl(G, childDesc)
            self.mountRec(G, childDesc["Children"])

    def mountTreeLvl(self, G, lvlDesc):
        currentNodeName = str(lvlDesc["Name"])
        for childName in self.getChildrenNames(lvlDesc):
            G.add_edge(currentNodeName, str(childName), size = 0.1)
        if self.getChildrenNames(lvlDesc).__len__() == 0:
            G.add_node(currentNodeName)
        G.node[currentNodeName]["image"] = lvlDesc["Texture path"]

    def getChildrenNames(self, lvlDesc):
        return [child["Name"] for child in lvlDesc["Children"]]

    def fetchLabelsOfVertices(self, G):
        return {name: name for name in G.nodes()}

    def fillGraph(self, G, pos):
        plt.clf()
        self.axesDict = {}
        self.G = G
        self.pos = pos
        treeHeight = self.jsonTreeHeight(self.jsonDesc) - 1
        nx.draw(G, pos, arrows = False)
        self.main_axis = plt.gca()
        ax =  plt.gca()
        labelsPosDict = self.drawNodesYieldingNewPos(G, pos, treeHeight)
        if treeHeight <= 5:
            nx.draw_networkx_labels(G, labelsPosDict, self.fetchLabelsOfVertices(G), ax = ax, font_size=10)
        self.addArrowsToGraph(G)

    def drawRectsRoundLabels(self, G, labelsPosDict):
        fig = plt.gcf()
        for nodeName in G.nodes():
            label_x, label_y = fig.transFigure.inverted().transform(self.main_axis.transData.transform(labelsPosDict[nodeName]))
            txt = fig.text(label_x, label_y, nodeName, fontsize = 10)
            renderer = self.canvas.get_renderer()
            bbox = txt.get_window_extent(renderer)
            rect = Rectangle([bbox.x0 - bbox.width/2, bbox.y0 - bbox.height/4], bbox.width, bbox.height, color = [0,0,0], fill = False)
            fig.patches.append(rect)
            txt.remove()

    def getLabelHeight(self, nodeName):
        txt = plt.gcf().text(0, 0, nodeName, fontsize=10)
        renderer = self.canvas.get_renderer()
        bbox = txt.get_window_extent(renderer)
        txt.remove()
        return self.main_axis.transData.inverted().transform((bbox.width, bbox.height))[1]

    def drawNodesYieldingNewPos(self, G, pos, treeHeight):
        ax_transData = plt.gca().transData.transform
        ax_inv_trans = plt.gca().transData.inverted().transform
        fig_invtrans = plt.gcf().transFigure.inverted().transform
        newLabelsPos = {}
        for node in G.nodes():
            xa, ya = fig_invtrans(ax_transData(pos[node]))  # axes coordinates
            self.addImageAxis(xa, ya, img = G.node[node]['image'], nodeName= node, pos = pos, ax_inv_trans = ax_inv_trans, newLabelsPos=newLabelsPos, treeHeight=treeHeight)
        return newLabelsPos

    def addImageAxis(self, xa, ya, img, nodeName,  pos, newLabelsPos, treeHeight, ax_inv_trans):
        imsize = max (0.04, 0.1 - 0.02 * (treeHeight - 1) / 5)
        a = plt.axes([xa - imsize / 2.0, ya - imsize / 2.0, imsize, imsize]) # normalized units from (0,1)
        xs, xe = a.get_xlim()
        ys, ye = a.get_ylim()
        xs_disp,ys_disp = ax_inv_trans(a.transData.transform((xs,ys)))
        xe_disp, ye_disp = ax_inv_trans(a.transData.transform([xe, ye]))
        newLabelsPos[nodeName] = pos[nodeName][0], pos[nodeName][1] - (ye_disp - ys_disp + self.getLabelHeight(nodeName))/2
        a.imshow( mpimg.imread(img) )
        a.axis('off')
        self.axesDict[nodeName] = a

    def resetViewFromJSON(self):
        G = self.newGraphFromJSON()
        self.fillGraph(G, pos = graphviz_layout(G, prog='dot'))

    def onShow(self, ev):
        if ev.GetShow(): self.resetViewFromJSON()

    def triggerGraphResetFromJSON(self,jsonGraphDesc):
        self.jsonDesc = jsonGraphDesc[self.space_name]
        self.Hide(); self.Show()

class MainFrame(wx.Frame):
    def __init__(self, jsonDesc, size=wx.DefaultSize):
        wx.Frame.__init__(self, None, title='Test', size=screenDims)
        self.jsonDesc = jsonDesc
        self.views = self.newViews()
        self.hideAllViews()
        self.initRootSizer()

    def newViews(self):
        return {
            "Resources" : NetworkPanel(self, "Resources"),
            "Buildings": NetworkPanel(self, "Buildings"),
            "Dwellers": NetworkPanel(self, "Dwellers")
        }

    def initRootSizer(self):
        rootSizer = wx.BoxSizer(wx.VERTICAL)
        rootSizer.Add(self.newButtonSizer(), flag = wx.CENTER)
        self.SetSizer(rootSizer)

    def newButtonSizer(self):
        buttonSizer= wx.BoxSizer(wx.HORIZONTAL)
        buttonSizer.Add(self.newButton("Resources"))
        buttonSizer.Add(self.newButton("Buildings"))
        buttonSizer.Add(self.newButton("Dwellers"))
        return buttonSizer

    def newButton(self, label):
        btn = wx.Button(self, label=label)
        btn.Bind(wx.EVT_BUTTON, self.onBtnClick)
        return btn

    def onBtnClick(self, ev):
        clicked_btn = ev.GetEventObject()
        for viewKey in self.views:
            if viewKey != clicked_btn.GetLabel(): self.views[viewKey].Hide()
        self.views[clicked_btn.GetLabel()].triggerGraphResetFromJSON(self.jsonDesc)

    def hideAllViews(self):
        for view in self.views.values():
            view.Hide()

app = wx.App(False)
screenDims = wx.GetDisplaySize()

with open("resources\\sysFiles\modelFiles\graph_json_desc_example.txt", "rb+") as f:
    json_desc = json.loads(f.read().replace("u'", "'").replace("'", "\""))
    frm = MainFrame(json_desc)
    frm.Show()

app.MainLoop()

redpajama_set_name: RedPajamaGithub


Last Friday we found one of our new favorite restaurants. After much deliberation and back and forth about where should go to an early Friday night dinner, we finally decided on O'Niell's on Juan Tabo. We had previously been to the Nob Hill location for drinks and appetizers, which were great, but this was our first time at the eastside location. And boy, were we pleasantly surprised by how fantastic it was! I ordered the Steak and Boxty and my husband ordered the Boxty Rueben, and both were absolutely amazing. The Boxty is this great mix of Irish potato and scallion, which paired famously with my steak (which was cooked perfectly at medium). I ate every last bit of it! My husband loved his Boxty Rueben and even ate his leftovers as a midnight snack later that night. Oh, and did I mention the Chile Cheese Fries?? Talk about cheesy Heaven on a plate. The chile was spicy enough for both of our New Mexican trained palates, and the cheese was melty and rich, while the fries were crispy and fresh. Of course, because O'Niell's is an Irish pub, they have a fantastic selection of beers and hard liquor. Our drinks paired perfectly with our dinner choices, and we could not have enjoyed ourselves more. In fact, the very next day, we were tempted to go there for dinner again! We held back, though. But I know where we will be going for dinner this Friday! We'll see you there.


text:
'Satan' Sarmat
Posted on October 30, 2016 | By Strategic Demands Online
Via RT — Russia has unveiled the first image of its new thermonuclear missile system, RS-28 Sarmat, nicknamed "Satan-2" by NATO. The MIRV'd Sarmat intercontinental ballistic missiles, designed to be fitted with hypersonic warheads, are expected to go into production as early as 2018. Tags: Calculus of War; Cold War 2.0; Nuclear Proliferation; Hypersonic Arms Race
"I miss it, the Cold War. It gave you a reason to get up in the morning."
— Harry "Rabbit" Angstrom, in John Updike's Rabbit at Rest (1990)
The rapid escalation of nuclear weapons systems by the US, Russia, China and other nuclear weapon capable countries has another news flash — the announcement by the Russian Federation of a change in schedule for a next generation of nuclear MIRVs. The new production dates have been moved up with the next iteration of the multiple nuclear warhead Sarmat RS-28.
The RS-28 has been labeled Satan-2 by adversaries. Satan-1 missiles, though fully capable of producing a global apocalypse, will be 'retired' to be replaced by the more assuredly apocalyptic Satan-2 . The public position of the Russian government is the newest massive offensive and defensive capabilities are necessary to counter a trillion dollar plus nuclear weapons "modernization" by the US and allies.
Cold War 2.0 is gathering momentum.
Here are two public, 'declassified' announcements from Russian (English) media:
The Sarmat is undergoing development at the Makeyev Rocket Design Bureau in the city of Miass. The first image of the new prospective missile was declassified by the bureau on October 23, 2016.
A short statement signed by chief designer V. Degtar and leading designer Y. Kaverin accompanies the illustration.
"In accordance with the Decree of the Russian Government 'On the State Defense Order for 2010 and the planning period 2012-2013,' the Makeyev Rocket Design Bureau was instructed to start design and development work on the Sarmat. In June 2011, the Bureau and the Russian Ministry of Defense signed a state contract for the Sarmat's development," reads the note on the bureau's website.
"The prospective strategic missile system is being developed in order to assuredly and effectively fulfill objectives of nuclear deterrent by Russia's strategic forces."
The missile's first stage engine PDU-99 was tested in August, while a hypersonic warhead for the upcoming ICBM was reportedly tested back in April.
The Sarmat is being developed to replace the RS-36M ICBM family – dubbed 'Satan' by NATO – which entered service in the 1970s and 1980s. The prospective missile, weighing at least 100 tons, features a large payload capacity – reportedly up to 10 tons – and is expected to have up to 10 heavy or 16 lighter warheads, or a combination of a number of warheads with decoys and other counter-measures to suppress enemy missile defenses.
The Sarmat is expected to enter service in late 2018 and replace the RS-36M strategic nuclear weapon family by 2020.
Via Sputnik
In anticipation of the new missile's appearance, what many foreign defense specialists have found most disconcerting is the prospect of the RS-28 being armed with Project 4202, a Russian hypersonic glider warhead carrier which, after separating from its ICBM launch vehicle, would be able to accelerate to speeds between Mach 7 and Mach 12, acting like a hypersonic cruise missile. The glider, expected to come online between 2020 and 2025, would be capable of maneuvering to overcome any existing or prospective missile defenses to reach its target.
The Sarmat is expected to serve as an effective response to US missile defense deployments near Russia's borders, as well as projects such as Prompt Global Strike, a Pentagon initiative meant to overcome a prospective enemy's strategic deterrent using the massed launch of conventional cruise missiles.
Via Zvezda
It is designed to replace the old Soviet R-36M missiles Voevoda, codenamed 'Satan' by NATO, as the heavy silo-based component of Russia's nuclear deterrence. The RS-28 has been in development since 2009 and is scheduled to start replacing the old ICBMs in 2018.
"In this sense, the Sarmat missile will not only become the R-36M's successor, but also to some extent it will determine in which direction nuclear deterrence in the world will develop," Zvezda said.
The broadcaster added that the RS-28 is capable of wiping out parts of the earth the size of Texas or France, and that its higher speed performance will enable it to speed past every missile defense system in existence.
"Prompt Global Strike" initiative as reported by Sputnik
The Pentagon's Hypersonic Missile by Defense One
Russian Hypersonic (Tsirkon – Zirkon) Missile Project
First Hypersonics before 2020
Next-Generation Hypersonic Missiles
New US Nuclear-capable Cruise Missiles
Hypersonic – Thermonuclear
Long-Range Standoff (LRSO) weapons to replace Air Launched Cruise Missile (ALCM)
US-China-Russia Accelerate Hypersonic in response to US THAAD deployment
Russia-China Hypersonic Nuclear Forces
US STRATCOM Confirms Chinese Hypersonic Tests
Cold War 2.0 series by StratDem
Category: Calculus of War, Nuclear Weapons, Proliferation	| Tag: China, Hypersonic Arms Race, Nuclear Weapon Modernization, Russia, U.S.


Here's something we're tracking today.
According to a thread in the Microsoft Answers forums, customers who have applied Microsoft's recent updates that help patch the Meltdown/Spectre security vulnerabilities and are running AMD processors are experiencing several issues from PC lock-ups, freezes, and bluescreens.
Microsoft has yet to recognize this issue.


No matter the field, there is no denying the value of professional mentors. They provide instant feedback, coaching, and advocacy that is invaluable in helping one advance in a career. In corporate real estate, a profession that is little understood by those who are not in it, mentors can play an even bigger role.
Many – if not most – successful leaders credit mentors that have helped them along the way. A true mentoring relationship often transcends work and becomes valued lifelong by the mentor and mentee.
Too often, those pairs are made purely by chance. But CoreNet Global is formalizing the process and making it easier for our members — both mentors and mentees — to find each other with our "Mentor Match" Program.
By participating and filling out self-selected preferences, mentors and mentees can connect with other like-minded professionals. We're hoping to take the chance element out of these relationships that form, and making it certain. That's a true benefit of being a part of an association and we hope our members will take advantage.


text:
Q: Command script exit code not seen by same line && or ||? Consider a command script named t.cmd that consists solely of these 2 lines:
@exit /b 123
@echo If you see this, THEN EXIT FAILED..

So, the script merely sets the exit code of the script's execution process to 123, but does not kill cmd.exe.  The final echo confirms that exit actually causes an immediate return (its output should not appear).
Now execute this script, and then print out the %errorlevel%:
>t.cmd

>echo %errorlevel%
123

So far so good: everything behaves exactly as expected.
But now execute the above all on one line, using && for conditional execution:
>t.cmd && echo %errorlevel%
123

I do NOT expect this: if t.cmd really returns with a non-0 exit code, then it should stop everything after that && (i.e. the echo) from executing.  The fact that we see it print means that it DID execute.  What the heck is going on?
And if execute the above all on one line, using || for conditional execution:
>t.cmd || echo %errorlevel%

>

This behavior is also the opposite of what I expect (altho it is consistent with the && behavior above).
Note that this weird behavior is ONLY true for bat files, but not for "raw commands".
Proof: consider the following command line interactions where instead of calling t.cmd, I try to execute the bogus command abcdef:
>abcdef
'abcdef' is not recognized as an internal or external command,
operable program or batch file.

>echo %errorlevel%
9009

>abcdef && echo %errorlevel%
'abcdef' is not recognized as an internal or external command,
operable program or batch file.

>abcdef || echo %errorlevel%
'abcdef' is not recognized as an internal or external command,
operable program or batch file.
9009

Here, && and || immediately see the exit code of the failed bogus command.
So why do cmd files behave differently?
A possibly related bug in cmd.exe has been observed in File redirection in Windows and %errorlevel%
Also, I am aware that ERRORLEVEL is not %ERRORLEVEL%
By the way, the code above was all executed on a Win 7 Pro 64 bit box.  I have no idea how other versions of Windows behave.

A: With t.bat slightly modified as follows:
@exit /b 123%~1
@echo If you see this, THEN EXIT FAILED..

Think out next output:
==>t.bat 1

==>echo %errorlevel%
1231

==>t.bat 2&echo %errorlevel%
1231

==>echo %errorlevel%
1232

==>cmd /V /C t.bat 3^&echo !errorlevel!
1233

==>echo %errorlevel%
0

==>cmd /V /C t.bat 4^&echo !errorlevel!^&exit /B !errorlevel!
1234

==>echo %errorlevel%
1234

==>

Resources

*

*(%~1 etc. special page) Command Line arguments (Parameters)

*(special page) EnableDelayedExpansion
Edit to enlighten EnableDelayedExpansion:
==>cmd /v
Microsoft Windows [Version 6.3.9600]
(c) 2013 Microsoft Corporation. All rights reserved.

==>t.bat 5&echo !errorlevel!
1235

==>echo %errorlevel%
1235

==>

Edit 2 to enlighten (or confuse?) && and ||. Save next code snippet as errlevels.cmd:
@ECHO ON >NUL
@SETLOCAL enableextensions enabledelayedexpansion
(call )
@echo ^(call ^) command clears errorlevel %errorlevel%
abcd /G>NUL 2>&1
@echo abcd /G: "'abcd' not recognized" errorlevel %errorlevel%
abcd /G>NUL 2>&1 && echo YES !errorlevel! || echo NO !errorlevel!
@echo abcd /G: ^|^|   changed errorlevel %errorlevel%
find /G >NUL 2>&1 && echo YES !errorlevel! || echo NO !errorlevel!
@echo find /G: ^|^| unchanged errorlevel %errorlevel%
call t.cmd 333 && echo YES !errorlevel! || echo NO !errorlevel!
type t.cmd
t.cmd 222 && echo YES !errorlevel! || echo NO !errorlevel!

Output (from errlevels.cmd):
==>errlevels.cmd

==>(call  )
(call ) command clears errorlevel 0

==>abcd /G 1>NUL 2>&1
abcd /G: "'abcd' not recognized" errorlevel 9009

==>abcd /G  1>NUL 2>&1  && echo YES !errorlevel!   || echo NO !errorlevel!
NO 1
abcd /G: ||   changed errorlevel 1

==>find /G   1>NUL 2>&1  && echo YES !errorlevel!   || echo NO !errorlevel!
NO 2
find /G: || unchanged errorlevel 2

==>call t.cmd 333   && echo YES !errorlevel!   || echo NO !errorlevel!
NO 333

==>type t.cmd
@exit /B %~1

==>t.cmd 222   && echo YES !errorlevel!   || echo NO !errorlevel!
YES 222

==>

Note that

*

*|| shows errorlevel 1 although 'abcd' not recognized error should be 9009 whilst

*|| keeps errorlevel 2 unchanged for FIND: Invalid switch error.

*|| branch evaluates in call t.cmd 333 whilst

*&& branch evaluates in t.cmd 222.

On (call ) see DBenham's answer:

If you want to force the errorlevel to 0, then you can use this
  totally non-intuitive, but very effective syntax: (call ). The space
  after call is critical.
If you want to set the errorlevel to 1, you can use (call). It
  is critical that there not be any space after call.

A: %errorlevel% is expanded when line is read. So it is 123 at the time the line was read so comes from the previous command not t.exe. && is executed only if the current errorlevel (from t command) is 0.
See setlocal /? and set /? for more info.

A: @JosefZ's response provides excellent coverage of the disparity between ERRORLEVEL and exit code with respect to command scripts.
Unfortunately, as he pointed out, the && and || operators will only work if you invoke your command script with the call command. In most cases, you'd prefer that users can just run your command script, without having to remember to prefix it with a call each time.
Typically, I want my scripts to set both the ERRORLEVEL and the exit code to indicate failure (in order to have my scripts behave the same as regular executables). I used to use exit /b <nonzero> to try to do this, but had the problem indicated above.
It turns out that the Windows command interpreter exits with the exit code of the last command executed. The actual exit code of the exit /b <nonzero> command is, ironically, 0 (since it successfully exited). It does set the ERRORLEVEL, but not the exit code. Thus, that command won't work. The solution to all this is to (1) use the cmd /c exit <nonzero> command, and (2) to have it execute as the last command in the script. Since the cmd command returns back to the script, where the next command is then executed, the only way to get it to be the last line executed is to have it be the last line of your script.
Thus, here's a solution to get everything to behave as the OP requested:
@echo off & setlocal

if "%1" equ "fail" (
    echo -- Failure
    goto fail
) else (
    echo -- Success
    exit /b 0
)

:fail
    @REM // Exit with script a failure exit code.
    cmd /c exit 37


Accessories-Landrover.co.uk is operated and managed by Harwoods Group who have been the leading motor dealership in the South of England for over 80 years and proudly represent such prestigious brands as Aston Martin, Audi, Bentley, Jaguar, Lotus and Land Rover.
Our showrooms are located across Hampshire, Surrey, Sussex and Kent, allowing us to effectively serve the South of England, including London and its surrounding areas.
Our new online shop front also helps us to serve our customer needs from the comfort of their homes with a fully functioning Online Service Booking system and now our brand new Online Shop where you can purchase Gifts and Accessories from a trusted business without leaving your front door.
From our main website which was redeveloped in 2012, you can even book in your vehicle for its service without lifting the phone making your time work better for you. We also have Whatcar? reviews and an average of over 600 Approved Used vehicles in stock at any one time.


text:
Q: Upgrade from VS6 to VS2017 Math difference Recently it was decided to update from VS6 to VS2017. During Checks we found there was a small 1p difference in a calculation.
The calculation example
27243.4999999999999999999996 * 229815.98735837682 / 229815.98735837682
In vs6 this gives a value of 27243.4999999999999999999996
In vs2017 this gives a value of 27243.50
If this is broken down into steps in vs2017 so
229815.98735837682 / 229815.98735837682 = 1
27243.4999999999999999999996 * 1 = 27243.4999999999999999999996
So the question , Does VS2017 handle Calculations in a different way to VS6 ? Is there built in rounding ?


text:
Book on Central Highlands culture published
Photographer Tran Phong has released a new book entitled Tuong Go Tay Nguyen (Wooden Statues in The Central Highlands of Vietnam).
VNA Friday, March 27, 2020 14:25
Tay Nguyen grave statues may be history
Friday, February 12, 2016 16:53
Show celebrates Central Highlands' diversity
Thursday, August 30, 2012 18:37
Cover of the photo book by photographer Tran Phong (Photo courtesy of Tran Phong)
Hanoi (VNS/VNA) - Photographer Tran Phong has released a new book entitled Tuong Go Tay Nguyen (Wooden Statues in The Central Highlands of Vietnam).
The bilingual English – Vietnamese book is published by The Gioi Publishing House with 256 pages and about 300 photos to feature the deep and brilliant beauty in the cultural flow of the ethnic groups in the Central Highlands.
"I took the photos in the book in 1986 and many years later," said the veteran photographer.
"I selected more than 300 photos from about 1,000 photos that I shot of wooden statues, charnel-houses and activities related to the funerary customs mainly in Jarai and Ba Na groups in Gia Lai and Kon Tum provinces. I want to print these photos to preserve and promote traditional culture."
Wooden statues in the Central Highlands are unique sculptures of Vietnam, according to the preface by Phong. "Today, going to the villages in the Central Highlands we no longer have the opportunity to see the wooden statues with artistic value like many years ago. The charnel-house and the statues have been modernised with cement and steel roofs. Very few elderly artisans are left in the area and the wooden statues gradually disappear in modern life."
In the photos, the cultures of the two largest ethnic groups in Truong Son Dong (eastern Truong Son Range) becomes vivid featuring aspects of the Central Highlands, according to the foreword by Associate Professor Ngo Van Doanh.
"In the Central Highlands, the charnel-house is a unique location, combining different arts such as architecture, sculpture, painting, knitting and decoration. All elements make the charnel-house unique."
Funerals are one of the most important ceremonies for many ethnic groups in Vietnam's central highland region.
During his 30-year career, Phong has won hundred awards at home and around the world. He is a member of Vietnam Association Photography Association's Art Council.
He published two books entitled Dieu Khac Go Dan Gian Jarai, Ba Na (Folk Wood Engraving of Jarai and Ba Na Groups) in 1995 and Le Hoi Tay Nguyen (Central Highlands Festival) in 2008./.
Photographer Tran Phong Tuong Go Tay Nguyen book charnel-house traditional culture funerary customs Vietnamplus Vietnam News Vietnam News Agency
Prime Minister Pham Minh Chinh will hold a dialogue with young people in Hanoi on March 26, the Government Office has announced.
Tourism sector serves 13 million domestic tourists in January
Hanoi: Son Tay old fortress citadel boasts historical, architectural values
The Son Tay ancient fortress citadel, covering 16 ha in Son Tay township 40km from Hanoi's centre, not only bears historic value, but also catches attention for its unique architecture. The site marked its 200 years of existence last year.


Why use qualitative research in psychology?How is qualitative research in psychology carried out?What are the major debates and unresolved issues surrounding this form of research?"Introducing Qualitative Research in Psychology" is a vital resource for students new to qualitative psychology. It offers a clear introduction to the topic by taking six different approaches to qualitative methods and explaining when each one should be used, the procedures and techniques involved, and any limitations associated with such research.
Throughout the new edition, material has been re-organized and updated to reflect developments in the field, however Carla Willig's style of writing, popular with students and lecturers alike, remains unchanged. The book examines: Reflexivity and ethicsThe benefits of the different approaches and comparisons of themAppropriate ways of writing up researchThis edition contains more interactive exercises and tasks in order to help students understand what they are learning, as well as three qualitative research reports with annotations highlighting key issues for novice researchers.


text:
Q: Writing rust function with traits working for Vec and array [] I would like to implement a function in rust, computing the norm of an array or Vec
for an Vec<f64> I would write the function as
pub fn vector_norm( vec_a : &Vec<f64> ) -> f64 {

    let mut norm = 0 as f64;
    for i in 0..vec_a.len(){
        norm  +=  vec_a[i] * vec_a[i];
    }
    norm.sqrt()
}

and for an &[f64] I would do
    pub fn vector_norm( vec_a : &[f64] ) -> f64 {

    let mut norm = 0 as f64;
    for i in 0..vec_a.len(){
        norm  +=  vec_a[i] * vec_a[i];
    }
    norm.sqrt()
}

But is there a way to combine both versions into a single function by the use of traits. I was thinking of something like
pub fn vector_norm<T:std::iter::ExactSizeIterator>
                ( vec_a : &T ) -> f64 {

let mut norm = 0 as f64;
for i in 0..vec_a.len(){
    norm  +=  vec_a[i] * vec_a[i];
}
norm.sqrt()

}
This does not work because the the template parameter T is not indexable. Is it possible to do this somehow?? Maybe with an iterator trait or something?

A: First of all, Vec<T> implements Deref for [T]. This means that &Vec<f64> can be implicitly converted into &[f64]. So, just taking in a &[f64] will work:
fn vector_norm(vec_a: &[f64]) -> f64 {
    let mut norm = 0 as f64;
    for i in 0..vec_a.len() {
        norm += vec_a[i] * vec_a[i];
    }
    norm.sqrt()
}

fn main() {
    let my_vec = vec![1.0, 2.0, 3.0];
    // &my_vec is implicitly converted to &[f64]
    println!("{:?}", vector_norm(&my_vec));
}

However, if you want to broaden the acceptable values even further to all slice-like types, perhaps AsRef may be of use:
fn vector_norm<T: AsRef<[f64]>>(vec_a: T) -> f64 {
    // use AsRef to get a &[f64]
    let vec_a: &[f64] = vec_a.as_ref();
    let mut norm = 0 as f64;
    for i in 0..vec_a.len() {
        norm += vec_a[i] * vec_a[i];
    }
    norm.sqrt()
}

fn main() {
    let my_vec = vec![1.0, 2.0, 3.0];
    println!("{:?}", vector_norm(&my_vec));
}

A: In addition to Aplet's answer, I'd add that if you're taking something that is only going to be used in a for _ in loop, you might want to look at IntoIterator.
fn vector_norm<T: IntoIterator<Item = f64>>(t: T) -> f64 {
  let mut norm = 0f64;
  for i in t {
    norm += i * i;
  }
  norm.sqrt()
}

When you write for i in t, the compiler rewrites that into something that looks a bit more like this:
let mut iter = t.into_iter();
loop {
  match iter.next() {
    None => break,
    Some(i) => {
      // loop body
    }
  }
}

So if you only want to constrain your input as "something that works in a for loop", IntoIterator is the trait you're looking for.


text:
Springside Chestnut Hill Academy Head of School Steve Druggan and CEO Navin Valrani of Arcadia formalize a partnership between the two schools during a visit on site in Dubai. SCH has licensed the curriculum of its Center for Entrepreneurial Leadership, one of the school's signature programs, and will begin an extended exchange with the prestigious school in the United Arab Emirates using a roadmap that includes professional development training in Dubai, international collaboration between faculty and shared curriculum. Attending the signing celebration are: (seated) Navin Valrani and Steve Druggan; (standing left to right) Pamela Chikhani, (Director of Strategic Alliances, Arcadia Education), Kephren Sherry (Head of Primary, The Arcadia Preparatory School), Graham Beale (Principal, The Arcadia Preparatory School and Arcadia College), Mohan Valrani, (Chairman, Arcadia Education), Ed Glassman (Executive Director of SCH CEL program), Katie Harvey, (Managing Partner, Q Communications).
Springside Chestnut Hill Academy's nationally-recognized program will extend its reach internationally with a partnership licensing the school's unique entrepreneurial curriculum to Arcadia Education's secondary school in Dubai.
The Center for Entrepreneurial Leadership is one of the school's signature programs and is committed to developing an entrepreneurial mindset and skillset in all students over the course of their academic journey. To instill this mindset, CEL is integrated into the Pre-K-12 school experience, and the curriculum is embedded into students' schedules.
Ed Glassman, SCH's Executive Director of the Center for Entrepreneurial Leadership, said, "Our faculty has spent many years carefully crafting and refining a sequence of instruction that delivers a powerful product and impacts every student."
That curriculum first caught the attention of Arcadia's CEO, Navin Valrani, when he was a graduate student in the University of Pennsylvania's Educational Entrepreneurship program and visited CEL – a hub of creativity, problem-solving and prototyping.
"The minute I walked into the Center, I just knew that Arcadia and CEL would have an agreement to bring this outstanding program to Dubai," said Valrani.
Through a licensing agreement, SCH is now poised to deliver the expertise that it has developed locally, and to share it with Arcadia Education in Dubai.
Arcadia's secondary school is an extension of the Arcadia Preparatory School, a 3-year-old independent elementary school in Dubai, which has grown to over 500 students in a very short space of time. Its model is based on the National Curriculum for England and bolstered by its status as an Apple Distinguished School. It also provides a robust Junior MBA and Lego robotics program to its students.
Arcadia Education will expand into the secondary school market in the coming months, adding Year 7 and additional grades year over year. The introduction of SCH's cutting-edge entrepreneurial curriculum will continue to distinguish Arcadia within the region's education market.
Building entrepreneurs of the future
SCH's CEL program prioritizes the development of four key traits that comprise the entrepreneurial mindset: opportunity seeking, creative problem solving, resiliency, and resourcefulness. Equipped with this mindset, students take on interesting challenges that connect their passions and graduate with a competitive edge.
"Entrepreneurship has always been a core theme at Arcadia, and our partnership with CEL takes our curriculum offering to an exciting level in our secondary school. At Arcadia, our ethos has always been about meeting our students' aspirations, and this partnership will give our students the necessary skills to pursue their ambitions across a wide variety of career choices," said Graham Beale, Principal.
The roadmap for the partnership between SCH and Arcadia includes curriculum guides, staff descriptions, equipment that may be necessary to execute and maintain the program and professional development for CEL faculty at Arcadia Education. SCH faculty will have the opportunity to travel to Dubai to provide hands-on, small-group training on their subject of expertise, which includes three SCH teachers who will visit Dubai this summer to teach workshops before Arcadia launches the CEL curriculum for its Year 7 cohort in September.
"The SCH program has been built by a highly collaborative, expert team comprised of unique educators," said Glassman.
SCH has 10 faculty members who teach CEL classes, including coding, app development, design and fabrication, digital publishing and electronics and microprocessors. The Center is also comprised of an advisory board and a cohort of mentors from various business sectors that works closely with students.
Steve Druggan, SCH Head of School, said "CEL brings purposeful, real-world learning to our campus on a daily basis. This is a unique partnership, and it exemplifies the essence of the entrepreneurial mindset we teach every day. At its core is recognizing opportunity. I am excited to see how this work will push our practice and drive us to continue to build a standout program for the benefit of SCH students and, now, those in Dubai."
Arcadia Education is a K-12 British school operator headquartered in Dubai with an ethos that centers on nurturing the next generation of leaders, entrepreneurs, artists and athletes through a holistic approach to education.
Arcadia's secondary school is the second in a series of community-based schools delivering the vision of Mohan Valrani and the Al Shirawi Group. As the Chairman of the school, Valrani is an avid believer in providing the very best education for future generations.
Visit Arcadia's website for more information about the school.
This entry was posted in Business, Schools and tagged Business, Schools. Bookmark the permalink.
← Renovations at Face to Face gives dignity to people in need
SLIDESHOW: Annual Hill Fourth of July parade brings flags, family, fun and memories →