text:
How Much Do Poor Americans Work? A Comparative Analysis
August 20, 2016 / Doris Le
In the United States, working families are not precluded from being poor. Although Americans annually work longer hours than people in most developed countries (figure 1), including Germany, Australia, Canada, and the UK, poverty rates are higher in the United States. In comparison to other developed countries, U.S. children are most likely to live in households where both parents work and least likely to live in households with no working adults (figure 2). Of households with children, 65% of children in the U.S reside with two working parents and only 8.8% live in a household with no working adults. Similarly, in Germany, 62.2% of children reside with two working parents and 9.2% reside with non-working parents. However, a significant discrepancy exists between the child poverty rates of these two countries; while the U.S. exhibits a child poverty rate of 20.9%, Germany's child poverty rate is 7.4%, close to a third of that of the U.S. (figure 3).
Evidence suggests that the steep level of poverty among American children has less to do with parents not working a sufficient number of hours and more to do with the low wages associated with low-skill jobs. The incidence of low-paying jobs is higher in the U.S. than in most developed countries. For instance, of all dependent full-time workers, one-quarter of Americans earn incomes equivalent to less than two-thirds of the national median income (figure 4). The same is true for 19.94% of UK households and 18.37% of German households. The minimum wage is also lower in the United States than in most developed countries, with the exception of Japan (although Japan's incidence of low-wage jobs is almost half of that of the U.S.) (figure 5).
Thus, in comparison to other developed countries, it is especially difficult for low-earner families to escape poverty in the United States. A one-earner family with 2 children making a wage at the bottom decile of earnings would need to work for 60 hours per week to exit poverty (figure 6). The same could be accomplished by working 35 hours per week in Canada or 17 hours per week in France. This may help explain why relative poverty in the United States is so high in comparison to other industrialized nations (figure 7).
August 20, 2016 / Doris Le/
Plasma Collections Hit All-Time ...
The Number of American Households ...


text:
Illustration by illustration315
Seven years ago, in the living room of my family home in Lagos I typed what would be the beginning of an incredible journey - the start of this blog, bookshy. Seven years later, and I am still as much in love with this blog (and blogging) as I was that afternoon in Ikeja.
I will be honest, though, I have gone through phases - particularly in the last couple of years - of wanting to quit bookshy, especially those periods when I have been extremely busy with work and have not really been able to blog. Those feelings are usually temporary. The second I get to the blogger 'draft a post' page and start typing, or get an idea for a blog post - the feeling I had when I first started this blog (the joy of learning about African literature) comes flooding back.
Since I started this blog, I would like to think I've grown with my blog, or my blog has grown with me - or maybe we grew together. Who knows! All I know is these last seven years have been wonderful - and beyond my imagination. From getting to write about African literature in various publications, including Bakwa Mag on Nameless Narrators in African Fiction and New African Magazine on African Books to Look Out For (in 2016); to interviewing and being in conversation with over 40 writers - Nawal El-Saadawi (for African Arguments), Okey Ndibe, Irenosen Okojie, Ayobami Adebayo, Emmanuel Iduma, the 2018 Caine Prize shortlisted writers, Chinelo Okparanta, Leye Adenle, Nikhil Singh, Dzekashu Macviban and more - to being invited to participate in literary festivals - Ake Festival, Writivism, Africa Writes.
I have also had the pleasure of collaborating with some amazing people and platforms in the African Literary Sphere, including Afrikult. and Africa in Words; and interacted with amazing African Lit Bloggers (Kinna Reads, James Murua, African Book Addict, Brittle Paper) publishers and writers. Since I started blogging, Instagram has become a great platform for the book community, and can I just say the bookstagram community is so awesome.
This blog even led to new journeys - a podcast. Something I never ever imagined I would do. Yet, with two other African women (@postcolonialchild and @booksandrhymes), in April of this year we embarked on Not Another Book Podcast. I also started working with some amazing women on REWRITE - a platform for black women and women of colour writers.
There's still so much I would like to do (and get done) when it comes to this love of mine. One (that keeps on eluding me) is #100AfricanWomenWriters (one day, I will get it done). I also really want to revamp African Book Covers.
So for now, I want to say thank you to everyone - even as my blogging has gotten erratic - who still takes the time to read (and share) the content I absolutely love putting together. I have no idea where the next year (or even few years) will take me, but one thing I know is as long as the love I have (and have always had) for blogging remains - and the random ideas I have for posts still keeps coming - I will continue to let my blog take me on this incredible journey.
Ah! It's that time of year. You know the one! When all the 'best of …' lists come out. From the Guardian's Genuinely Brilliant From Cover to Cover Books (Hello, Slay in Your Lane and Akata Warrior), to the Roots 28 Brilliant Books by Black Authors (Hello, Stay With Me and Children of Blood and Bone), NYTs 100 Notable Books of 2018 (Hey, Freshwater, Friday Black, The Parking Lot Attendant, The Perfect Nanny, Washington Black) and 10 Best Books of 2018 (Hello, The Perfect Nanny and Washington Black), and one of my favourite best of lists visually, NPRs Best Books of 2018 (Hello, Freshwater, My Sister, the Serial Killer, Children of Blood and Bone, The Perfect Nanny, Washington Black, Housegirl). Oh and Vogue India have a brilliant list of Top 50 Books of 2018. And for lovers of African Literature, look no further than Brittle Paper's 48 Notable Books of 2018, and also check out Africa's must-read books of 2018 on African Arguments.
Well, here's another 'best of' list, but one based solely on book covers because well, at this point it's no secret that I lovingly judge books by their covers. Plus, African book covers keep getting better and better each year. So why not celebrate the African book cover, especially when they all draw me in, in their own beautiful, unique and creative ways.
I have also loved learning about designers, such as Kimberly Glyder who designed Tsitsi Dangarembga's This Mournable Body and whose illustrations are stunning. Check out the redesigns of Alice Walker's Books. And really love reading about the process behind designing a cover, such as Sarahmay Wilkinson on designing Mia Cuoto's Woman of the Ashes:
When I sat down to begin I had a couple of different things I wanted to explore; the materials of the place (sand, dirt, arid air), the magical and ethereal qualities in Cuoto's writing, and the textiles of the region (which were linked to regional history and status).
Or Michael J. Windsor on Oyinkan Braithwaite's My Sister, The Serial Killer:
Within the first few chapters of reading, the specific idea popped into my mind. So much of it is about Korede having to clean up after her sister's murders. When you see the book from a distance, you think the girl on the cover is the killer, but when you inspect the image, you see the knife reflected in her glasses and the cleaning products and it's like: What is going on?
So, as much as possible, I have included the designer behind the cover, and I will continue to update whenever I find out another designer behind the selected covers. For more 2018 book covers from this year, check the 2018 African literary calendar. And for other best covers of 2018 lists, check out Paste's 18 Best Book Covers of 2018, Book Riots Best Book Covers of 2018, NYTs 12 Best Book Covers of 2018, LitHub's 75 Best Book Covers of 2018, and The Casual Optimist's Book Covers of Note 2018. What have been some of your best African book covers of 2018?
Cover design by Mark Robinson
Designed by Sarahmay Wilkinson
Designed by Charlotte Stroomer
Some non-fiction up in the mix.
Designed by Kimberly Glyder
Designed by Donna Payne, based on the original US artwork created by Julianna Lee
Design by Michael J Windsor
Designed byRichard Deas
The year is almost over - and if you're like me, and haven't even managed to make a dent with 2018 (heck, even 2017) books - here are some more books to add to your ever-growing (or should it be never-ending) list. PS. This is in addition to these 11 books I shared a couple months ago, including Laila Lalami's The Other Americans, Jennifer Nansubuga Makumbi's short story collection Manchester Happened.
Adèle by Leila Slimani
Adèle appears to have the perfect life: She is a successful journalist in Paris who lives in a beautiful apartment with her surgeon husband and their young son. But underneath the surface, she is bored - and consumed by an insatiable need for sex.
Driven less by pleasure than compulsion, Adèle organises her day around her extramarital affairs, arriving late to work and lying to her husband about where she's been, until she becomes ensnared in a trap of her own making. Suspenseful, erotic, and electrically charged, Adèle is a captivating exploration of addiction, sexuality, and one woman's quest to feel alive.
My Sister, the Serial Killer by Oyinkan Braithwaite (UK edition)
When Korede's dinner is interrupted one night by a distress call from her sister, Ayoola, she knows what's expected of her: bleach, rubber gloves, nerves of steel and a strong stomach. This'll be the third boyfriend Ayoola's dispatched in, quote, self-defence and the third mess that her lethal little sibling has left Korede to clear away. She should probably go to the police for the good of the menfolk of Nigeria, but she loves her sister and, as they say, family always comes first. Until, that is, Ayoola starts dating the doctor where Korede works as a nurse. Korede's long been in love with him, and isn't prepared to see him wind up with a knife in his back: but to save one would mean sacrificing the other...
An Orchestra of Minorities by Chigozie Obioma
Set on the outskirts of Umuahia, Nigeria and narrated by a chi, or guardian spirit, An Orchestra of Minorities tells the story of Chinonso, a young poultry farmer whose soul is ignited when he sees a woman attempting to jump from a highway bridge. Horrified by her recklessness, Chinonso joins her on the roadside and hurls two of his prized chickens into the water below to express the severity of such a fall. The woman, Ndali, is stopped her in her tracks.
Bonded by this night on the bridge, Chinonso and Ndali fall in love. But Ndali is from a wealthy family and struggles to imagine a future near a chicken coop. When her family objects to the union because he is uneducated, Chinonso sells most of his possessions to attend a college in Cyprus. But when he arrives he discovers there is no place at the school for him, and that he has been utterly duped by the young Nigerian who has made the arrangements.. Penniless, homeless, and furious at a world which continues to relegate him to the sidelines, Chinonso gets further away from his dream, from Ndali and the farm he called home.
Spanning continents, traversing the earth and cosmic spaces, and told by a narrator who has lived for hundreds of years, the novel is a contemporary twist of Homer's Odyssey. Written in the mythic style of the Igbo literary tradition, Chigozie Obioma weaves a heart-wrenching epic about destiny and determination.
The Freedom Artist by Ben Okri
In a world uncomfortably like our own, a young woman called Alamantis is arrested for asking a question. Her question is this: Who is the Prisoner? When Alamantis disappears, her lover Karnak goes looking for her. He searches desperately at first, then with a growing realisation. To find Amalantis, he must first understand the meaning of her question.
Vagabond - Wandering Through Africa On Faith by Lerato Mogoatlhe
When Lerato Mogoathle left South Africa for a planned three-month break to West Africa little did she know that those three months would turn into five years.
Vagabond is her hilarious and honest account of her five years of living as a drifter in Africa. In between the borders, foreign architecture and interesting new ways of life, Mogoatlhe found passion, love, laughter and heartbreak. On these pages you will find capsules of time spent in 21 countries in five regions of Africa. You will be regaled by the tales of how she tries to worm herself into hotels when she has no money because of unpaid invoices back home. You will be mortified and proud of how she navigates herself out of difficult situations like being misread by a man who tries to force himself on her.
Mogoatlhe's book is a travel memoir driven by the belief that whatever else Africa is, it is first and foremost a home. It is punctuated with a deep urge to know the continent differently.
**via Twiiter (@iamthezuba)
Bird Summons by Leila Abouela
Salma, happily married, tries every day to fit into life in Britain. When her first love contacts her, she is tempted to risk it all and return to Egypt. Moni gave up a career in banking to care for her disabled son, but now her husband wants to move to Saudi Arabia – where she fears her son's condition will worsen. Iman feels burdened by her beauty. In her twenties and already in her third marriage, she is treated like a pet and longs for freedom.
On a road trip to the Scottish Highlands, the women are visited by the Hoopoe, a sacred bird whose fables from Muslim and Celtic literature compel them to question the balance between faith and femininity, love, loyalty and sacrifice. Brilliantly imagined, intense and haunting, Bird Summons confirms Leila Aboulela's reputation as one of our finest contemporary writers.
The Rosewater Insurrection (The Wormwood Trilogy) by Tade Thompson
The year is 2067. The city of Rosewater is chaotic, vibrant and full of life - some of it extra-terrestrial.
The charismatic mayor, Jack Jacques, has declared Rosewater a free state, independent to Nigeria. But the city's alien dome is dying. Government forces await its demise, ready to destroy Rosewater's independence before it has even begun. And in the city's quiet suburbs, a woman wakes with no memory of who she is - with memories belonging to something much older and much more alien.
The Half-God of Rainfall by Inua Ellams
'The Half-God of Rainfall' is an epic story and a lyrical exploration of pride, power and female revenge.
There is something about the boy. When he is angry, clouds darken. When he cries, rivers burst their banks. And when he touches a basketball, deities want courtside seats. Half Nigerian mortal, half Grecian God: Demi is the Half-God of Rainfall. His mother, Modupe, looks on with a mixture of pride and worry. From close encounters, she knows that Gods are just like men: the same fragile egos, the same subsequent fury, the same sense of entitlement to the bodies of mortals. The Gods will one day tire of sports fans, their fickle allegiances and their prayers to Demi. And when that moment comes, it won't matter how special he is. Only the women in Demi's life, the mothers, the Goddesses, will stand between him and a lightning bolt.
Prince of Monkeys by Nnamdi Ehirim (Apr 2019)
Growing up in middle-class Lagos, Nigeria during the late 1980s and early 1990s, Ihechi forms a band of close friends discovering Lagos together as teenagers with differing opinions of everything from film to football, Fela Kuti to spirituality, sex to politics. They remain close-knit until tragedy unfolds during an anti-government riot.
Exiled from Lagos by his concerned mother, Ihechi moves in with his uncle's family, where he struggles to find himself outside his former circle of friends. Ihechi eventually finds success by leveraging his connection with a notorious prostitution linchpin and political heavyweight, earning favour among the ruling elite.
But just as Ihechi is about to make his final ascent into the elite political class, he reunites with his childhood friends and experiences a crisis of conscience that forces him to question his world, his motives, and whom he should become.
Wolf Light by Yaba Badoe
Born in wolf light, the magical dusk, in Mongolia, Ghana and Cornwall, Zula, Adoma and Linet are custodians of the sacred sites of their homelands. When copper miners plunder Zula's desert home in Gobi Altai, and Adoma's forest and river are polluted by gold prospectors, it is only a matter of time before the lake Linet guards with her life is also in jeopardy. How far will Zula, Adoma and Linet go to defend the well-being of their homes? And when all else fails, will they have the courage to summon the ancient power of their order, to make the landscape speak in a way that everyone will hear?
The BreakBeat Poets Vol. 3: Halal If You Hear Me. Edited by Fatimah Asghar and Safia Elhillo
The collected poems dispel the notion that there is one correct way to be a Muslim by holding space for multiple, intersecting identities while celebrating and protecting those identities. Halal If You Hear Me features poems by Safia Elhillo, Fatimah Asghar, Warsan Shire, Tarfia Faizullah, Angel Nafis, Beyza Ozer, and many others.
Thirteen Months of Sunrise by Rania Mamoun. Translated by Lissie Jaquette
A young girl collapses from hunger and is nursed back to health by a pack of dogs…
A grieving woman remembers her absent father and her failure to keep her promise to him…
A struggling writer conjures her muse into being, walking every inch of the city in search of inspiration…
In Thirteen Months of Sunrise – the first major translated collection by a Sudanese woman writer – Rania Mamoun expertly blends the real and imagined to create an intimate portrait of life in Sudan today. From brief encounters to unusual friendships, this startling and evocative debut illuminates human experience and explores the alienation, isolation and estrangement of urban life.
Don't Touch My Hair by Emma Dabiri
Straightened. Stigmatised. 'Tamed'. Celebrated. Erased. Managed. Appropriated. Forever misunderstood. Black hair is never 'just hair'.
This book is about why black hair matters and how it can be viewed as a blueprint for decolonisation. Emma Dabiri takes us from pre-colonial Africa, through the Harlem Renaissance, Black Power and on to today's Natural Hair Movement, the Cultural Appropriation Wars and beyond. We look at everything from hair capitalists like Madam C.J. Walker in the early 1900s to the rise of Shea Moisture today, from women's solidarity and friendship to 'black people time', forgotten African scholars and the dubious provenance of Kim Kardashian's braids.
The scope of black hairstyling ranges from pop culture to cosmology, from prehistoric times to the (afro)futuristic. Uncovering sophisticated indigenous mathematical systems in black hairstyles, alongside styles that served as secret intelligence networks leading enslaved Africans to freedom, Don't Touch My Hair proves that far from being only hair, black hairstyling culture can be understood as an allegory for black oppression and, ultimately, liberation.
New-Generation African Poets: A Chapbook Box Set (Sita) Edited by Kwame Dawes and Chris Abani
This eleven-piece, limited-edition box set—an African Poetry Book Fund (APBF) project—features the work of ten new African poets.
Exiles of Eden by Ladan Osman
Exiles of Eden looks at the origin story of Adam, Eve, and their exile from the Garden of Eden, exploring displacement and alienation from its mythological origins to the present. In this formally experimental collection steeped in Somali narrative tradition, Osman gives voice to the experiences and traumas of displaced people over multiple generations. The characters in these poems encounter exile's strangeness while processing the profoundly isolating experience of knowing that that once you are sent out of Eden, you can't go back.
Broken Places & Outer Spaces: Finding Creativity in the Unexpected by Nnedi Okorafor
Nnedi Okorafor was never supposed to be paralysed. A college track star and budding entomologist, Nnedi's lifelong battle with scoliosis was just a bump in her plan—something a simple operation would easily correct. But when Nnedi wakes from the surgery to find she can't move her legs, her entire sense of self begins to waver. Confined to a hospital bed for months, unusual things begin to happen. Psychedelic bugs crawl her hospital walls; strange dreams visit her nightly. Nnedi begins to put these experiences into writing, conjuring up strange, fantastical stories. What Nnedi discovers during her confinement would prove to be the key to her life as a successful science fiction author: In science fiction, when something breaks, something greater often emerges from the cracks.
In Broken Places & Outer Spaces, Nnedi takes the reader on a journey from her hospital bed deep into her memories, from her painful first experiences with racism as a child in Chicago to her powerful visits to her parents' hometown in Nigeria. From Frida Kahlo to Mary Shelly, she examines great artists and writers who have pushed through their limitations, using hardship to fuel their work. Through these compelling stories and her own, Nnedi reveals a universal truth: What we perceive as limitations have the potential to become our greatest strengths—far greater than when we were unbroken.
A guidebook for anyone eager to understand how their limitations might actually be used as a creative springboard, Broken Places & Outer Spaces is an inspiring look at how to open up new windows in your mind.
Travelers by Helon Habila
Accompanying his wife on a prestigious arts fellowship in Berlin, a Nigerian scholar finds there are no walls between his privileged, secure existence and the stories of other Africans on the move: among them: a transgender film student seeking the freedom to live an authentic life; a Libyan doctor who lost his wife and son in the waters of the Mediterranean; a Somalian shopkeeper who tried to save his young daughter from a marriage forced on her by an al-Shabab commander.
His sense of identity begins to dissolve as he can no longer separate himself from others' horrors, and he realises he is inextricably connected to those lives that have touched his. From a Berlin nightclub to a refugee deportation camp in Sicily to the London apartment of a Malawian poet, his empathy with the lives of other "travelers" brings him to a new journey, a reverse migration in pursuit of the universal dream of love and home.
Incomplete Solutions by Wole Talabi
From the bustling streets of Lagos to the icy moons of Jupiter, the stories in Incomplete Solutions explore accelerating technology, complex histories, diverse beliefs and human potential from my own unique perspective. Incomplete Solutions contains 17 short stories, 2 novelettes, and 1 novella, as well as art and notes on some of the stories for the bonus material section.
David Mogo, Godhunter by Suyi Davies Okungbowa
Since the Orisha War that rained thousands of deities down on the streets of Lagos, David Mogo, demigod, scours Eko's dank underbelly for a living wage as a freelance Godhunter. Despite pulling his biggest feat yet by capturing a high god for a renowned Eko wizard, David knows his job's bad luck. He's proved right when the wizard conjures a legion of Taboos—feral godling-child hybrids—to seize Lagos for himself. To fix his mistake and keep Lagos standing, David teams up with his foster wizard, the high god's twin sister and a speech-impaired Muslim teenage girl to defeat the wizard.
Becoming Nigerian: A Guide by Elnathan John (Feb 2019 in Nigeria)
Be(com)ing Nigerian: A guide is a satirical collection that takes a searing look at how different forms of power are abused, negotiated and performed both in the private and public realm.
Through attempting to satirise those who abuse privilege or power, it recognises that power can be found everywhere: in politics, business, religious institutions and in homes. From the exploration of religious hypocrisy in How To Worship The Nigerian God, to A Letter to My Future Kidnapper which tackles the growing scourge of kidnapping, the collection is a jab at Nigerian society and what it means to be a Nigerian. Beyond poking fun at the holders of power, it is a summon, a provocation and a call for introspection among all levels of society. As it is often said in Nigeria, when you point with one finger, there are four others pointing back at you. This is an engrossing read for Nigerian watchers, and strangers to Nigeria alike, with its tongue-in-cheek look at Nigeria's relationship to the world, both culturally and politically.
The Survival of Molly Southbourne by Tade Thompson
Who was Molly Southbourne? What did she leave behind?
A burnt-out basement. A name stained in blood. Bodies that remember murder, one of them left alive. A set of rules that no longer apply.
Molly Southbourne is alive. If she wants to survive, she'll need to run, hide, and be ready to fight. There are people who remember her, who know what she is and what she's done. Some want her alive, some want her dead, and all hold a piece to the puzzles in her head. Can Molly escape them, or will she confront the bloody history that made her?
A Particular Kind of Black Man by Tope Folarin (Aug 2019)
Living in small-town Utah has always been an uneasy fit for Tunde Akinola's family, especially for his Nigeria-born parents. Though Tunde speaks English with a Midwestern accent, he can't escape the children who rub his skin and ask why the black won't come off. As he struggles to fit in and find his place in the world, he finds little solace from his parents who are grappling with their own issues.
Tunde's father, ever the optimist, works tirelessly chasing his American dream while his wife, lonely in Utah without family and friends, sinks deeper into schizophrenia. Then one otherwise-ordinary morning, Tunde's mother wakes him with a hug, bundles him and his baby brother into the car, and takes them away from the only home they've ever known.
But running away doesn't bring her, or her children, any relief from the demons that plague her; once Tunde's father tracks them down, she flees to Nigeria, and Tunde never feels at home again. He spends the rest of his childhood and young adulthood searching for connection—to the wary stepmother and stepbrothers he gains when his father remarries; to the Utah residents who mock his father's accent; to evangelical religion; to his Texas middle school's crowd of African-Americans; to the fraternity brothers of his historically black college. In so doing, he discovers something that sends him on a journey away from everything he has known.
I'm Telling the Truth, But I'm Lying: Essays by Bassey Ikpi
A deeply personal collection of essays exploring Nigerian-American author Bassey Ikpi's experiences navigating Bipolar II and anxiety throughout the course of her life.
Bassey Ikpi was born in Nigeria in 1976. Four years later, she and her mother joined her father in Stillwater, Oklahoma —a move that would be anxiety ridden for any child, but especially for Bassey. Her early years in America would come to be defined by tension: an assimilation further complicated by bipolar II and anxiety that would go undiagnosed for decades.
By the time she was in her early twenties, Bassey was a spoken word artist and traveling with HBO's Russell Simmons Def Poetry Jam, channeling her experiences into art. But something wasn't right—beneath the façade of the confident performer, Bassey's mental health was in a precipitous decline, culminating in a breakdown that resulted in hospitalisation and a diagnosis of Bipolar II.
Determined to learn from her experiences—and share them with others—Bassey became a mental health advocate and has spent the fourteen years since her diagnosis examining the ways mental health is inextricably intertwined with every facet of ourselves and our lives. Viscerally raw and honest, the result is an exploration of the stories we tell ourselves to make sense of who we are—and the ways, as honest as we try to be, each of these stories can also be a lie.
When the Plums Are Ripe by Patrice Nganang. Translated by Amy Baram Reid.
The second volume in a magisterial trilogy, the story of Cameroon caught between empires during World War II.
In Cameroon, plum season is a highly anticipated time of year. But for the narrator of When the Plums Are Ripe, the poet Pouka, the season reminds him of the "time when our country had discovered the root not so much of its own violence as that of the world's own, and, in response, had thrown its sons who at that time were called Senegalese infantrymen into the desert, just as in the evenings the sellers throw all their still-unsold plums into the embers." In this novel of radiant lyricism, Patrice Nganang recounts the story of Cameroon's forced entry into World War II, and in the process complicates our own understanding of that globe-spanning conflict. After the fall of France in 1940, Cameroon found itself caught between Vichy and the Free French at a time when growing nationalism advised allegiance to neither regime, and was ultimately dragged into fighting throughout North Africa on behalf of the Allies.
Moving from Pouka's story to the campaigns of the French general Leclerc and the battles of Kufra and Murzuk, Nganang questions the colonial record and recenters African perspectives at the heart of Cameroon's national history, all the while writing with wit and panache. When the Plums Are Ripe is a brilliantly crafted, politically charged epic that challenges not only the legacies of colonialism but the intersections of language, authority, and history itself.
Pet by Akwaeke Emeze
A thought-provoking and haunting novel about a creature that escaped from an artist's canvas, whose talent is sniffing out monsters in a world that claims they don't exist anymore.
There are no monsters anymore, or so the children in the city of Lucille are taught. Jam and her best friend, Redemption, have grown up with this lesson all their life. But when Jam meets Pet, a creature made of horns and colours and claws, who emerges from one of her mother's paintings and a drop of Jam's blood, she must reconsider what she's been told. Pet has come to hunt a monster - and the shadow of something grim lurks in Redemption's house. Jam must fight not only to protect her best friend, but also uncover the truth, and the answer to the question: How do you save the world from monsters if no one will admit they exist?
The Rosewater Redemption (The Wormwood Trilogy)
Life in the newly independent city state of Rosewater isn't everything its citizens were expecting...
Mayor Jacques finds that debts incurred during the insurrection are coming back to haunt him. Nigeria isn't willing to let Rosewater go without a fight... And among the city's alien inhabitants, a group has emerged who murder humans to provide bodies for their takeover...
Operating across spacetime, the xenosphere, and international borders, it is up to a small group of hackers and criminals to prevent the extra-terrestrial advance. The fugitive known as Bicycle Girl, Kaaro and his old handler Femi, may be humanity's last line of defence.
The Negro Grandsons of Vercingetorix by Alain Mabanckou, translated by Bill Johnston
Set in the imaginary African Republic of Vietongo, The Negro Grandsons of Vercingetorix, begins when conflict breaks out between rival leaders and the regional ethnic groups they represent. Events recorded in a series of notebooks under the watchful eye of Hortense Lloki, show how civil war culminates in a series of outlandish actions perpetrated by the warring parties' private militias—the Anacondas and the Romans from the North who have seized power against Vercingetorix (named after none less than the legendary Gallic warrrior who fought against Ceasar's army) and his Little Negro Grandsons in the South who are eager to regain control. Award-winning author Alain Mabanckou is at his satiric best in this novel that catalogues the pain and suffering caused by the ravages of civil war. Translated into English for the first time, this novel provides a gritty slice of life in an active war zone.
On Ajayi Cowther Street by Elnathan John and illustrated by Alaba Onajin
On the noisy Ajayi Crowther Street in cosmopolitan Lagos, neighbours gather to gossip, discuss noise complaints, and faithfully head to church each Sunday. But beneath the surface lies a hidden world of clandestine love affairs, hidden pregnancy, spiritual quackery and hypocrisy, that threatens to destroy the community from within.
On Ajayi Crowther Street peels back the curtains on the lives of Reverend Akpoborie and his family, to reveal a tumultuous world full of secrets and lies. His only son, Godstime, is struggling to hide his sexuality from his parents whilst his daughter Keturah must hide the truth of her pregnancy by her pastor boyfriend to preserve her and her family's image. But it is the Reverend himself who hides the darkest secret of them all, as his wandering eye lands on Kyauta, their young live-in maid.
On Ajayi Crowther Street is a story of urban and religious Nigeria's contradictions and complexities; of the hypocrisies in middle-class Nigeria.
Saqi Books will also be publishing a newly discovered collection of short stories by the late author Naguib Mahfouz in autumn 2019. While Maaza Mengiste also tweeted to [her?] Novel to 'Get ready for #2019'. So, there might be one in the works. Further afield in 2020, there's Sensuous Knowledge by Minna Salami and it looks like Victoria Princewill's In The Palace of Flowers might be slated for Jan 2020 based on the author's twitter bio.
There's also something for the little ones courtesy of Lantana Publishing out in March: Maisie's Scrapbook by Samuel Narh & Jo Loring-Fisher.
As the seasons turn, Maisie rides her bull in and out of Dada's tall tales. Her Mama wears linen and plays the viola. Her Dada wears kente cloth and plays the marimba. They come from different places, but they hug her in the same way. And most of all, they love her just the same. A joyful celebration of a mixed-race family and the love that binds us all together.
*Book Synopsis via Amazon, Publisher's website or Author website.
This is Seven
Happily Judging 2018 in Book Covers
Thirty-one and counting: 2019 in books

redpajama_set_name: RedPajamaCommonCrawl


text:
import datetime
import json
import unittest
from unittest.mock import patch

from django.urls import reverse
from rest_framework import status

from api.test.base import APITestBase
from api.views import (
    ExportBadgesView,
    ExportBadgesByPersonView,
    ExportInstructorLocationsView,
    ExportMembersView,
)
from workshops.models import (
    Badge,
    Award,
    Person,
    Airport,
    Role,
)
from workshops.util import universal_date_format

class BaseExportingTest(APITestBase):
    def setUp(self):
        # remove all existing badges (this will be rolled back anyway)
        # including swc-instructor and dc-instructor introduced by migration
        # 0064
        Badge.objects.all().delete()

    def login(self):
        self.admin = Person.objects.create_superuser(
                username="admin", personal="Super", family="User",
                email="sudo@example.org", password='admin')
        self.admin.data_privacy_agreement = True
        self.admin.save()
        self.client.login(username='admin', password='admin')

class TestExportingBadges(BaseExportingTest):
    def setUp(self):
        super().setUp()

        today = datetime.date.today()

        # set up two badges, one with users, one without any
        self.badge1 = Badge.objects.create(name='badge1', title='Badge1',
                                           criteria='')
        self.badge2 = Badge.objects.create(name='badge2', title='Badge2',
                                           criteria='')
        self.user1 = Person.objects.create_user(
            username='user1', email='user1@name.org',
            personal='User1', family='Name')
        self.user2 = Person.objects.create_user(
            username='user2', email='user2@name.org',
            personal='User2', family='Name')
        Award.objects.create(person=self.user1, badge=self.badge1,
                             awarded=today)
        Award.objects.create(person=self.user2, badge=self.badge1,
                             awarded=today)

        # make sure we *do* get empty badges
        self.expecting = [
            {
                'name': 'badge1',
                'persons': [
                    {'name': 'User1 Name', 'user': 'user1',
                     'awarded': '{:%Y-%m-%d}'.format(today)},
                    {'name': 'User2 Name', 'user': 'user2',
                     'awarded': '{:%Y-%m-%d}'.format(today)},
                ],
            },
            {
                'name': 'badge2',
                'persons': [],
            },
        ]

    def test_requires_login(self):
        url = reverse('api:export-badges-by-person')
        response = self.client.get(url, format='json')
        self.assertEqual(response.status_code, status.HTTP_401_UNAUTHORIZED)
        self.login()
        response = self.client.get(url, format='json')
        self.assertEqual(response.status_code, status.HTTP_200_OK)

    def test_serialization(self):
        view = ExportBadgesView()
        serializer = view.get_serializer_class()
        response = serializer(view.get_queryset(), many=True)
        self.assertEqual(response.data, self.expecting)

    def test_view(self):
        # test only JSON output
        url = reverse('api:export-badges')
        self.login()
        response = self.client.get(url, format='json')
        content = response.content.decode('utf-8')
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(json.loads(content), self.expecting)

class TestExportingBadgesByPerson(BaseExportingTest):
    def setUp(self):
        super().setUp()

        # set up two users one with badges, one without any
        self.user1 = Person.objects.create_user(
            username='user1', email='user1@name.org',
            personal='User1', family='Name')
        self.user2 = Person.objects.create_user(
            username='user2', email='user2@name.org',
            personal='User2', family='Name')
        self.badge1 = Badge.objects.create(name='badge1', title='Badge1',
                                           criteria='')
        self.badge2 = Badge.objects.create(name='badge2', title='Badge2',
                                           criteria='')
        Award.objects.create(person=self.user1, badge=self.badge1)
        Award.objects.create(person=self.user1, badge=self.badge2)

        # make sure we *do* get users without badges
        self.expecting = [
            {
                'username': 'user1',
                'email': 'user1@name.org',
                'personal': 'User1',
                'middle': '',
                'family': 'Name',
                'badges': [
                    {
                        'name': 'badge1',
                        'title': 'Badge1',
                        'criteria': '',
                    },
                    {
                        'name': 'badge2',
                        'title': 'Badge2',
                        'criteria': '',
                    },
                ],
            },
        ]

    def test_requires_login(self):
        url = reverse('api:export-badges-by-person')
        response = self.client.get(url, format='json')
        self.assertEqual(response.status_code, status.HTTP_401_UNAUTHORIZED)
        self.login()
        response = self.client.get(url, format='json')
        self.assertEqual(response.status_code, status.HTTP_200_OK)

    def test_serialization(self):
        view = ExportBadgesByPersonView()
        serializer = view.get_serializer_class()
        response = serializer(view.get_queryset(), many=True)
        self.assertEqual(response.data, self.expecting)

    def test_view(self):
        # test only JSON output
        url = reverse('api:export-badges-by-person')
        self.login()
        response = self.client.get(url, format='json')
        content = response.content.decode('utf-8')
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(json.loads(content), self.expecting)

class TestExportingInstructors(BaseExportingTest):
    def setUp(self):
        super().setUp()

        # set up two badges, one for each user
        self.swc_instructor = Badge.objects.create(
            name='swc-instructor', title='Software Carpentry Instructor',
            criteria='')
        self.dc_instructor = Badge.objects.create(
            name='dc-instructor', title='Data Carpentry Instructor',
            criteria='')
        self.airport1 = Airport.objects.create(
            iata='ABC', fullname='Airport1', country='PL', latitude=1,
            longitude=2,
        )
        self.airport2 = Airport.objects.create(
            iata='ABD', fullname='Airport2', country='US', latitude=2,
            longitude=1,
        )
        self.user1 = Person.objects.create(
            username='user1', personal='User1', family='Name',
            email='user1@name.org', airport=self.airport1,
            publish_profile=True,
        )
        self.user2 = Person.objects.create(
            username='user2', personal='User2', family='Name',
            email='user2@name.org', airport=self.airport1,
            publish_profile=True,
        )
        # user1 is only a SWC instructor
        Award.objects.create(person=self.user1, badge=self.swc_instructor)
        # user2 is only a DC instructor
        Award.objects.create(person=self.user2, badge=self.dc_instructor)

        # make sure we *do not* get empty airports
        self.expecting = [
            {
                'name': 'Airport1',
                'country': 'PL',
                'latitude': 1.0,
                'longitude': 2.0,
                'instructors': [
                    {'name': 'User1 Name', 'user': 'user1'},
                    {'name': 'User2 Name', 'user': 'user2'},
                ]
            },
        ]

    def test_requires_login(self):
        url = reverse('api:export-instructors')
        response = self.client.get(url, format='json')
        self.assertEqual(response.status_code, status.HTTP_401_UNAUTHORIZED)
        self.login()
        response = self.client.get(url, format='json')
        self.assertEqual(response.status_code, status.HTTP_200_OK)

    def test_serialization(self):
        view = ExportInstructorLocationsView()
        serializer = view.get_serializer_class()
        response = serializer(view.get_queryset(), many=True)
        self.assertEqual(response.data, self.expecting)

    def test_view(self):
        # test only JSON output
        url = reverse('api:export-instructors')
        self.login()
        response = self.client.get(url, format='json')
        content = response.content.decode('utf-8')
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(json.loads(content), self.expecting)

class TestExportingInstructorsRegression(BaseExportingTest):
    """This unit test helps to ensure that no non-instructors nor people who
    agreed to publish their profiles are exposed via API."""

    def setUp(self):
        super().setUp()

        # an airport for testing purposes, it will have some instructors and
        # users associated
        self.airport1 = Airport.objects.create(
            iata='ABC', fullname='Airport1', country='PL', latitude=1,
            longitude=2,
        )
        # a different airport, this time with instructors who have not agreed
        # to publish their profile
        self.airport2 = Airport.objects.create(
            iata='ABD', fullname='Airport2', country='US', latitude=2,
            longitude=1,
        )

        # set up two badges
        self.swc_instructor = Badge.objects.create(
            name='swc-instructor', title='Software Carpentry Instructor',
            criteria='')
        self.dc_instructor = Badge.objects.create(
            name='dc-instructor', title='Data Carpentry Instructor',
            criteria='')

        # set up 3 instructors with this specific airport, but only 2 have
        # allowed to publish their profiles
        self.instructor1 = Person.objects.create(
            username='instructor1', personal='Instructor1', family='Name',
            email='instructor1@name.org', airport=self.airport1,
            publish_profile=True,
        )
        self.instructor2 = Person.objects.create(
            username='instructor2', personal='Instructor2', family='Name',
            email='instructor2@name.org', airport=self.airport1,
            publish_profile=True,
        )
        self.instructor3 = Person.objects.create(
            username='instructor3', personal='Instructor3', family='Name',
            email='instructor3@name.org', airport=self.airport1,
            publish_profile=False,
        )
        self.instructor4 = Person.objects.create(
            username='instructor4', personal='Instructor4', family='Name',
            email='instructor4@name.org', airport=self.airport2,
            publish_profile=False,
        )

        # set up 3 "normal" users with the first airport, but only 2 have
        # allowed to publish their profiles
        self.user1 = Person.objects.create(
            username='user1', personal='User1', family='Name',
            email='user1@name.org', airport=self.airport1,
            publish_profile=True,
        )
        self.user2 = Person.objects.create(
            username='user2', personal='User2', family='Name',
            email='user2@name.org', airport=self.airport1,
            publish_profile=True,
        )
        self.user3 = Person.objects.create(
            username='user3', personal='User3', family='Name',
            email='user3@name.org', airport=self.airport1,
            publish_profile=False,
        )

        # awards some badges for the instructors
        Award.objects.create(person=self.instructor1,
                             badge=self.swc_instructor)
        Award.objects.create(person=self.instructor2,
                             badge=self.dc_instructor)

        # make sure we don't get:
        # * non-instructor users
        # * instructors who did not allow for their profiles to be published
        self.expecting = [
            {
                'name': 'Airport1',
                'country': 'PL',
                'latitude': 1.0,
                'longitude': 2.0,
                'instructors': [
                    {'name': 'Instructor1 Name', 'user': 'instructor1'},
                    {'name': 'Instructor2 Name', 'user': 'instructor2'},
                ]
            },
            {
                'name': 'Airport2',
                'country': 'US',
                'latitude': 2.0,
                'longitude': 1.0,
                'instructors': []
            },
        ]

    def test_serialization(self):
        view = ExportInstructorLocationsView()
        serializer = view.get_serializer_class()
        response = serializer(view.get_queryset(), many=True)
        self.assertEqual(response.data, self.expecting)

    def test_view(self):
        # test only JSON output
        url = reverse('api:export-instructors')
        self.login()
        response = self.client.get(url, format='json')
        content = response.content.decode('utf-8')
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(json.loads(content), self.expecting)

class TestExportingInstructorsEmptyAirportRegression(BaseExportingTest):
    """This unit test aims to ensure that empty airport regression is
    always remembered."""

    def setUp(self):
        super().setUp()

        # an airport with instructors who have not agreed to publish their
        # profiles
        self.airport1 = Airport.objects.create(
            iata='ABC', fullname='Airport1', country='PL', latitude=1,
            longitude=2,
        )

        # set up two badges
        self.swc_instructor = Badge.objects.create(
            name='swc-instructor', title='Software Carpentry Instructor',
            criteria='')
        self.dc_instructor = Badge.objects.create(
            name='dc-instructor', title='Data Carpentry Instructor',
            criteria='')

        # set up 2 instructors with this specific airport, none of them agreed
        # to publish their profile
        self.instructor1 = Person.objects.create(
            username='instructor1', personal='Instructor1', family='Name',
            email='instructor1@name.org', airport=self.airport1,
            publish_profile=False,
        )
        self.instructor2 = Person.objects.create(
            username='instructor2', personal='Instructor2', family='Name',
            email='instructor2@name.org', airport=self.airport1,
            publish_profile=False,
        )
        # additional user, who is not an instructor, but associated with
        # the airport *and* allowing to publish their profile
        self.user1 = Person.objects.create(
            username='user1', personal='User1', family='Name',
            email='user1@name.org', airport=self.airport1,
            publish_profile=True,
        )

        # awards some badges for the instructors
        Award.objects.create(person=self.instructor1,
                             badge=self.swc_instructor)
        Award.objects.create(person=self.instructor2,
                             badge=self.dc_instructor)

        # we should not get empty airports, but we do and cannot do anything
        # about it, because we're already doing some pretty advanced querying
        # in `ExportInstructorLocationsView.queryset` thanks to Django's
        # Prefetch() object
        self.expecting = []

    @unittest.expectedFailure
    def test_serialization(self):
        view = ExportInstructorLocationsView()
        serializer = view.get_serializer_class()
        response = serializer(view.get_queryset(), many=True)
        self.assertEqual(response.data, self.expecting)

    @unittest.expectedFailure
    def test_view(self):
        # test only JSON output
        url = reverse('api:export-instructors')
        response = self.client.get(url, format='json')
        content = response.content.decode('utf-8')
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(json.loads(content), self.expecting)

class TestExportingMembers(BaseExportingTest):
    def setUp(self):
        super().setUp()

        # Note: must create instructor badges for get_members query to run.
        # Same for instructor role
        Badge.objects.create(
            name='swc-instructor', title='Software Carpentry Instructor',
            criteria='')
        Badge.objects.create(
            name='dc-instructor', title='Data Carpentry Instructor',
            criteria='')
        Role.objects.create(name='instructor')

        self.spiderman = Person.objects.create(
            personal='Peter', middle='Q.', family='Parker',
            email='peter@webslinger.net',
            username="spiderman")

        self.member = Badge.objects.create(name='member',
                                           title='Member',
                                           criteria='')

        Award.objects.create(person=self.spiderman,
                             badge=self.member,
                             awarded=datetime.date(2014, 1, 1))

        self.expecting = [
            {
                'name': 'Peter Q. Parker',
                'email': 'peter@webslinger.net',
                'username': 'spiderman',
            },
        ]

    @patch.object(ExportMembersView, 'request', query_params={}, create=True)
    def test_serialization(self, mock_request):
        # we're mocking a request here because it's not possible to create
        # a fake request context for the view
        view = ExportMembersView()
        serializer = view.get_serializer_class()
        response = serializer(view.get_queryset(), many=True)
        self.assertEqual(response.data, self.expecting)

    def test_requires_login(self):
        url = reverse('api:export-members')
        response = self.client.get(url, format='json')
        self.assertEqual(response.status_code, status.HTTP_401_UNAUTHORIZED)
        self.login()
        response = self.client.get(url, format='json')
        self.assertEqual(response.status_code, status.HTTP_200_OK)

    def test_view_default_cutoffs(self):
        # test only JSON output
        url = reverse('api:export-members')
        self.login()
        response = self.client.get(url, format='json')
        content = response.content.decode('utf-8')
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(json.loads(content), self.expecting)

    def test_view_explicit_earliest(self):
        url = reverse('api:export-members')
        data = {'earliest': universal_date_format(datetime.date.today())}

        self.login()
        response = self.client.get(url, data, format='json')
        content = response.content.decode('utf-8')
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(json.loads(content), self.expecting)

redpajama_set_name: RedPajamaGithub


A heist movie that is gripping and badass, elegant and assured. You could ignore all the social-justice-warrior stuff and just enjoy this as a popcorn thriller. But what makes this so special is how it reexamines the genre's clichés.
This Nazis-with-supernatural-weapons horror schlock drags its feet getting to its fantastical elements and then does absolutely nothing interesting with them, just wallows in dull, rote gore and grue.
Candy-colored slapstick and kindergarten-level humor make this perfectly suitable for small children, and perfectly bland and inoffensive to the adults accompanying them. Somehow, I don't think Dr. Seuss would entirely approve.
Snappy Sorkin-esque banter, 80s nostalgia, and Hugh Jackman in a bad wig yet still hot as hell. But also an enraging, ironic look at how a reality-TV resume ended up becoming a legit qualification for the American presidency.


Find Retail, Store Management jobs throughout Australia at ApplyDirect. Many levels of jobs including management & supervisory roles, Assistant roles and many more.
Quickly review the latest jobs including employer name, job posted date and job locations like Store Management jobs in Melbourne, Store Management jobs in Sydney or Store Management jobs in Brisbane. Refine your job search by industry sub classification, state or major city to filter your job search results down to exactly reach your dream Employer.
Search here for Retail jobs, Retail careers, Retail employment, retail store management jobs, store management careers, store management employment.


This package includes all of the top Malayalam-language channels, including the Asianet channels. Now you can watch all of your favorite programs, including serials, breaking news, current affairs, music, movies, and entertainment for the entire family.
This package includes fantastic Malayalam-language channels offering a variety of programs including music, discussions, interviews and current affairs, breaking news, award-winning serials, music programs, great children's programs and daily talk shows.
This package includes your favorite shows from the most popular GEC channel Asianet. Also watch family oriented shows on Asianet plus and news from the most trusted channel from Kerala, Asianet News. Lastly, the package also includes the DISH exclusive Asianet Movies, the first Malayalam satellite TV channel for movies.
This package includes your favorite shows from the popular GEC channel Asianet. Also watch family oriented shows on Asianet plus and news from the most trusted channel from Kerala, Asianet News. Lastly, the package also includes the DISH exclusive Asianet Movies, the first Malayalam satellite TV channel for movies. Package requires additional subscription to qualifying International programming.


When you stay at The Pavilions Phuket in Choeng Thale, you'll be near the beach, a 5-minute drive from Bang Tao Beach and 9 minutes from Surin Beach. This 5-star villa is 6.3 mi (10.2 km) from Kamala Beach and 7.1 mi (11.4 km) from Phuket Fantasea.
Make yourself at home in one of the 93 air-conditioned rooms featuring minibars and DVD players. Your bed comes with premium bedding, and all rooms are furnished with sofa beds. LCD televisions with satellite programming provide entertainment, while complimentary wireless Internet access keeps you connected. Private bathrooms with separate bathtubs and showers feature deep soaking bathtubs and rainfall showerheads.
Pamper yourself with a visit to the spa, which offers massages, body treatments, and facials. You're sure to appreciate the recreational amenities, which include 2 outdoor swimming pools and a fitness center. Additional amenities at this villa include complimentary wireless Internet access, concierge services, and gift shops/newsstands. The complimentary beach shuttle makes getting to the surf and sand a breeze.
Grab a bite at The Plantation Restaurant, one of the villa's 3 restaurants, or stay in and take advantage of the room service (during limited hours). Wrap up your day with a drink at the bar/lounge. A complimentary buffet breakfast is served daily from 6:30 AM to 11 AM.


The scene where Siyanda Mjoli was necklaced in Daveyton, East of Johannesburg. A mob attacked and burned Mjoli with a tyre after being accused of being involved in gang related activity in the area.
A total of 657 women and children were killed in Gauteng during the 2017-2018 financial year. This is according to provincial police commissioner, Lieutenant-General Deliwe De Lange, who presented the annual provincial crime statistics in the legislature on Tuesday.
De Lange said 549 women were killed during the period under review and 108 children were murdered in the previous financial year, noting this figure contributed 16.8% to the overall murder rate in the province.
A total of 4 233 people were killed in the province in the year under review compared with 4 101 murders in the 2016-2017 financial year, which marked a 3.2% increase in the province's murder rate. De Lange broke down the motives, saying a high number of those killed was as a result of mob justice.
"Eighty-two people were killed as a result of business robberies, 58 died due to car-jacking, 264 people were murdered because of mob justice, and 110 murders were taxi-related," she said.
She pointed out that the Jeppe police station precinct came on top with a 42% increase in the number of people killed compared with the previous financial year. A total of 125 people were murdered in the precinct compared with 88 in the 2016-2017 financial year.
Locals had to resort to a drastically violent action to deal with a situation police should have been privy to for a long time.
It was followed by Ivory Park which, however, showed a decrease in the number of murders, but still had the second-highest murder rate in the province. Ivory Park recorded 108 murders, down from 122 in the 2016-2017 financial year.
Jeppe Community Policing Forum (CPF) chairperson Zola Dambula previously told Sowetan that the high rate of murders could be attributed to the ongoing taxi-related feuds stemming from KwaZulu-Natal. "We have been able to establish that the murders in this area are between people who know each other and those who live in the hostels," Dambula said at the time.
However, Dambula said the recent statistics were not an accurate reflection of the work being done by the police and the CPF. "In some cases you find that people who are killed are not even from this precinct. They just happen to be killed in this area but are not from here," he explained, adding that they have implemented measures to decrease murders by having forums with indunas (chiefs) from the hostels and leaders from the taxi industry.
"These people know who the troublemakers are and they often assist in pointing them out."


What documents are needed in a Share Sale Agreement?
Are you buying shares in a company? Are you selling shares in your company to a new investor? If you answered yes to either of those questions, you're going to need some legal documents drawn up for your Share Sale Agreement.
a full set of warranties to be provided by the vendor of the shares.
If the company has a shareholders agreement, the shareholders agreement should set out what rights each shareholder has. This may include the right of first refusal, which means that shares cannot be transferred to a third party, unless the same shares have first been offered (usually pro-rata) to the existing shareholders. If the shareholders agreement provides the shareholders with a right of first refusal, then, normally, the shareholders are required to agree in writing, or pass a special/unanimous resolution, to agree to the transfer of shares to a third party and waive their right of first refusal in this instance.
the company in which the shares are being sold/purchased.
Depending on the company's shareholders agreement and/or constitution, the board of directors may be required to convene for a board meeting and pass a resolution at the meeting, for the company to enter into the agreement.
At completion, the seller of the shares must handover to the buyer a signed share transfer form setting out the shares being transferred and the consideration received.
After completion, the company is required to cancel the seller's existing share certificate and issue new share certificates according to the new shareholdings.
If the seller is resigning as a director of the company upon completion of the share sale, the seller should handover a signed letter of resignation prior to or on completion.
Once a share sale has been effected, the company is required to notify ASIC within 28 days of the change. This can be done by completing a Form 484, which is available on the ASIC website.
Each document is imperative in ensuring that a share transfer has been carried out properly. Problems can arise in the future if share ownership is not properly transferred from one party to another. If you are looking to purchase or sell shares in your own company, speak to an experienced commercial lawyer from LegalVision. Simply call us on 1300 544 755 and our Client Care team will be able to assist!
What warranties should a vendor make in a Share Sale Agreement?


text:
Q: CollectionView cell does not change backgroundColor As the title says, I'm incurred in a little trouble using UltraVisualLayout class. When I change the background color to my cell (using UltraVisualLayout as custom layout in the collectionView) cells do not appear to have color, instead if I change to standard flow layout, the cells change their background colors.
I use these lines to color the cells:
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell
{
    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "squadraCell", for: indexPath)

    switch (indexPath.row % 5)
    {
        // ho provato anche con cell.contentView.backgroundColor ma non funziona nemmeno così
        case 0: cell.contentView.backgroundColor = UIColor.yellow()
        case 1: cell.contentView.backgroundColor = UIColor.orange()
        case 2: cell.contentView.backgroundColor = UIColor.red()
        case 3: cell.contentView.backgroundColor = UIColor.green()
        case 4: cell.contentView.backgroundColor = UIColor.blue()
        default: break
    }

    return cell
}

Here my custom layout (https://www.raywenderlich.com/99087/swift-expanding-cells-ios-collection-views)
//
//  UltravisualLayout.swift
//  RWDevCon
//
//  Created by Mic Pringle on 27/02/2015.
//  Copyright (c) 2015 Ray Wenderlich. All rights reserved.
//

import UIKit

/* The heights are declared as constants outside of the class so they can be easily referenced elsewhere */
struct UltravisualLayoutConstants
{
    struct Cell
    {
        /* The height of the non-featured cell */
        static let standardHeight: CGFloat = 100
        /* The height of the first visible cell */
        static let featuredHeight: CGFloat = 280
    }
}

class UltravisualLayout: UICollectionViewLayout
{

    // MARK: Properties and Variables

    /* The amount the user needs to scroll before the featured cell changes */
    let dragOffset: CGFloat = 180.0

    var cache = [UICollectionViewLayoutAttributes]()

    /* Returns the item index of the currently featured cell */
    var featuredItemIndex: Int
    {
        get
        {
            /* Use max to make sure the featureItemIndex is never < 0 */
            return max(0, Int(collectionView!.contentOffset.y / dragOffset))
        }
    }

    /* Returns a value between 0 and 1 that represents how close the next cell is to becoming the featured cell */
    var nextItemPercentageOffset: CGFloat
    {
        get
        {
            return (collectionView!.contentOffset.y / dragOffset) - CGFloat(featuredItemIndex)
        }
    }

    /* Returns the width of the collection view */
    var width: CGFloat
    {
        get
        {
            return collectionView!.bounds.width
        }
    }

    /* Returns the height of the collection view */
    var height: CGFloat
    {
        get
        {
            return collectionView!.bounds.height
        }
    }

    /* Returns the number of items in the collection view */
    var numberOfItems: Int
    {
        get
        {
            return collectionView!.numberOfItems(inSection: 0)
        }
    }

    // MARK: UICollectionViewLayout

    /* Return the size of all the content in the collection view */
    override func collectionViewContentSize() -> CGSize
    {
        let contentHeight = (CGFloat(numberOfItems) * dragOffset) + (height - dragOffset)

        return CGSize(width: width, height: contentHeight)
    }

    override func prepare()
    {
        cache.removeAll(keepingCapacity: false)

        let standardHeight = UltravisualLayoutConstants.Cell.standardHeight
        let featuredHeight = UltravisualLayoutConstants.Cell.featuredHeight

        var frame = CGRect.zero
        var y: CGFloat = 0

        for item in 0..<numberOfItems
        {
            let indexPath = NSIndexPath(item: item, section: 0)
            let attributes = UICollectionViewLayoutAttributes(forCellWith: indexPath as IndexPath)
            /* Important because each cell has to slide over the top of the previous one */
            attributes.zIndex = item
            /* Initially set the height of the cell to the standard height */
            var height = standardHeight
            if indexPath.item == featuredItemIndex {
                /* The featured cell */
                let yOffset = standardHeight * nextItemPercentageOffset
                y = collectionView!.contentOffset.y - yOffset
                height = featuredHeight
            } else if indexPath.item == (featuredItemIndex + 1) && indexPath.item != numberOfItems
            {
                /* The cell directly below the featured cell, which grows as the user scrolls */
                let maxY = y + standardHeight
                height = standardHeight + max((featuredHeight - standardHeight) * nextItemPercentageOffset, 0)
                y = maxY - height
            }
            frame = CGRect(x: 0, y: y, width: width, height: height)
            attributes.frame = frame
            cache.append(attributes)
            y = frame.maxY
        }
    }

    /* Return all attributes in the cache whose frame intersects with the rect passed to the method */
    func layoutAttributesForElementsInRect(rect: CGRect) -> [AnyObject]?
    {
        var layoutAttributes = [UICollectionViewLayoutAttributes]()
        for attributes in cache
        {
            if attributes.frame.intersects(rect)
            {
                layoutAttributes.append(attributes)
            }
        }

        return layoutAttributes
    }

    /* Return the content offset of the nearest cell which achieves the nice snapping effect, similar to a paged UIScrollView */
    override func targetContentOffset(forProposedContentOffset proposedContentOffset: CGPoint, withScrollingVelocity velocity: CGPoint) -> CGPoint
    {
        let itemIndex = round(proposedContentOffset.y / dragOffset)
        let yOffset = itemIndex * dragOffset

        return CGPoint(x: 0, y: yOffset)
    }

    /* Return true so that the layout is continuously invalidated as the user scrolls */
    func shouldInvalidateLayoutForBoundsChange(newBounds: CGRect) -> Bool
    {
        return true
    }
}

Here my Xcode project https://www.dropbox.com/sh/7xcu118a9zb7673/AAD6t5zhIgKC5fUUpUTb-yA1a?dl=0
Could you help me?

redpajama_set_name: RedPajamaStackExchange


Here at the Inn at Manchester every room is slightly different, so you'll always find something new on every visit. Explore the rooms below and book your favorite.
Lovingly restored, the Main Inn features 14 custom-designed rooms, each with their own individual character and charm. Downstairs you'll find numerous cozy sitting areas, the dining room that hosts breakfast every morning and The Pub, an ideal spot for a cocktail.
First floor room with easy access. Park the car, drop your bags, maybe pet Chai (our house dog), and get on with your getaway! Located at the back of the Inn, the room shares a common space with Lavender and Black Eyed Susan, making it ideal for couples traveling together. Blue Phlox features a queen bed plus additional daybed, TV and bathroom with shower only.
Super convenient first floor room located directly off the shared den (the red room at the back of the Inn) near Blue Phlox and Black Eyed Susan. It features a king bed, TV and bathroom with shower only.
First floor room at the back of the Inn conveniently located near the den, Lavender and Blue Phlox. It features a queen bed, TV, and bathroom with a shower only. Plus, with a private porch, you'll have the best view in the house!
Second floor suite with a king bed, abundant natural light and views of the Inn's pristine lawns and pine gardens. Unwind in the private sitting room with desk and TV. The compact bathroom is outfitted with a roomy tile shower.
Second floor suite with a king bed. The northern exposure provides soft even light among the towering pines. The private adjacent sitting room has a bonus full-size sofa bed, desk and TV. The bathroom is outfitted with a combination tub and shower.
Second floor suite with a view of the side acres and tall pines. Relax while watching TV from the queen bed or lounging in the separate sitting room with full-size sofa bed. The bathroom is outfitted with a shower only.
This second floor suite – with a fireplace and TV at the foot of the king bed – is located at the very heart the Inn. Traveling with others? This suite directly adjoins Cinnamon, allowing for easy room-to-room access when wanted (but don't worry, it can also be double locked if you're traveling with the in-laws!) The room also features a cozy sitting alcove with a twin size sleeper chair. The bathroom is outfitted with a combined tub and shower.
Despite being our smallest room in terms of size, this second-floor charmer remains an unforgettable guest favorite for cozy comfort. It features a queen bed, TV and bathroom outfitted with a shower only.
Second floor room at the back of the Inn with a queen bed, TV, bathroom with shower only and views of the Inn's vast lawns. Need more room? Cinnamon directly adjoins the Garden Suite – providing an additional king bed and sitting area – plus has easy access to Sunflower.
Second floor room at the back of the Inn. With a private staircase, Sunflower and Cinnamon are perfect for couples traveling together… it almost feels like a mini inn within the Inn. The room features a queen bed, twin-size sleeper chair, TV and bathroom outfitted with a shower only.
Third floor suite (don't worry, someone is always here to help walk your bags up the stairs!) with a separate, cozy sitting room for reading and watching TV. The fireplace at the foot of the queen bed provides a little extra romantic sparkle for couples. The bathroom is outfitted with a jetted bathtub and combined shower.
Top floor room with a double bed, additional twin bed, TV and a front row view of the Taconic Mountains. Exceptionally tall? Do watch your head as the sloping ceiling has a special way of making an impression. The bathroom is outfitted with a shower only.
Top floor room with a double bed plus companion twin bed in a space reminiscent of a secret attic getaway. Take in the double view of the lush lawn and Taconic Mountains from the dormer windows or catch your favorite TV show. The bathroom is outfitted with a shower only.
Top floor room with a cozy nook for reading or daydreaming while taking in the views of Mount Equinox. Watch your favorite shows from your warm double bed. The bathroom is outfitted with a compact shower only, so you're not likely to lose the soap should you drop it!
The Carriage House was originally restored under the National Register of Historic Places in 1985. Then in 2011, it was completely renovated once again to house four spacious suites. The building stands directly behind the Inn, beside the pool.
Second floor room with two queen beds, a fireplace sitting area and tall cathedral ceilings. Snuggle up and relax on the cozy love seat or comfy wing chair while watching TV (located over the fireplace). The bathroom is outfitted with a shower only. You won't be alone in claiming this as your favorite room.
First floor room – the largest in the Carriage House – with a private exterior entrance and king bed. The room's "L" shape floor plan provides a cozy and natural sitting area with sofa bed and fireplace. The bathroom is outfitted with a combination tub and shower with glad-to-have- them-when-you-need them grab bars.
First floor room with private exterior entrance, king bed and fireplace sitting area (with TV over the fireplace). The spacious bathroom is outfitted with a shower only.
Second floor room with fireplace and tall, vaulted ceilings. The particularly roomy bathroom has a surefire stress-relieving sunken tub and separate shower. Watch your favorite show from the comfort of your king bed or cozy armchair.
Opened in 2015, the Celebration Barn houses three wonderful accommodations on the second floor.
Spacious second floor room – accessible by lift – with a king bed, hardwood floors, gas stove, TV and large bathroom with roll-in shower. Handicap accessible.
Spacious second floor room – accessible by lift– with a king bed, hardwood floors, gas stove and TV. The bathroom is outfitted with a shower only.
Spacious second floor room – accessible by lift – with a king bed, hardwood floors, and a separate living area to lounge by the gas stove and TV. The large bathroom is outfitted with a surefire stress-relieving sunken tub and separate shower.


Design Templates, Address Labels Template was posted December 9, 2016 at 6:54 pm by elizakingsford.net . More over Address Labels Template has viewed by 339 visitor.
Design Templates, Free Printable Address Labels was posted February 2, 2017 at 10:54 am by elizakingsford.net . More over Free Printable Address Labels has viewed by 3446 visitor.


text:
State of emergency comes to an end
Observer September 18, 2020
Andrew Kathindi
The six-month state of emergency which was put in place in March, and lapses at midnight on Thursday 17 September, will not be extended, President Hage Geingob has announced.
This comes as it emerged that Geingob did not have the legal power to make an extension without making overtures to the opposition as the move will require parliamentary approval.
The President, however, said his government had assessed and weighed both the positive and negative impacts of the regulations and considered the additional capacity created during the six-month period, which led to the decision.
"This is a defining moment in our trajectory to combat COVID-19. The rate of transmission correlates directly to our personal conduct and is driven primarily by our movement and behavioral choices with regards to social and physical distancing, hygiene and commitment to wear facemasks to suppress the spread," Geingob said.
Geingob revealed that government will, however, monitor the situation for a period of 14 days, to determine the way forward, under a new dispensation.
"When warranted, risk-appropriate measures will be introduced. As from 18 September 2020, new directives will be issued by the Minister of Health, in terms of the provisions of the Public and Environmental Act."
He further said, "The possibility of a second wave of infections remains real and is a risk that we must manage, proactively. We are not out of the woods yet and not by a long shot. Now is the time to exercise maximum personal responsibility and vigilance."
Under the new dispensation, gambling houses, restaurants and clubs would be allowed to operate until 10pm and sell alcohol onsite. Contact sport been is permitted and the Hosea Kutako International Airport has opened for business.
The travel restriction which was enforced in Windhoek, Okahandja and Rehoboth will also lapse; similarly, the curfew will go.
Attorney General Festus Bandeka announced that certain restrictions will remain in place to deal with COVID-19.
"Wearing of masks remains mandatory and the restrictions in place for public transportation will remain in place. Public gathering will remain at 50."
Justice Minister, Yvonne Dausab argued that the Minister of Health and Social Services Kalumbi Shangula, was empowered by Section 29 of the Public and Environmental Act to make additional adjustments to the regulations even after the end of the state of emergency.
According to the Act, "if the President has declared a public health emergency as contemplated in section 28(1) or if the occurrence or threatened outbreak of a formidable epidemic disease necessitates it, the Minister may in writing issue directives or make regulations as he or she considers to be necessary or desirable to alleviate the public health emergency, occurrence or threatened outbreak of a formidable epidemic disease."
Part of these actions could include, among others, the control of the movement to and from the affected areas, the closing of schools and the restriction of school attendance and other learning institutions and the closing of places of public entertainment, recreation or amusement, or where intoxicating liquor is sold.
"We are observing a consistent decline in the number of new Covid-19 cases. We are convinced that the measures we have taken since the first two index cases in Namibia have served us well. The responsibility for Covid-19 control has shifted from government to individuals, families and communities," Shangula said.
president Hage GeingobState of Emergency
Previous Post"If I don't win, it was rigged"
Next PostVenaani hits back at SWAPO over Zim motion


text:
How the U.S. Is Empowering Iran in Yemen
Washington's Policy Is a Strategic Blunder and a Humanitarian Disaster
By Daniel Byman
The Trump administration's top goal in the Middle East is clear: counter Iran, which U.S. President Donald Trump and his senior officials have denounced as a duplicitous and murderous state sponsor of terrorism and sower of regional chaos. In May, the Trump administration invoked Tehran's regional ambitions to justify U.S. withdrawal from the 2015 Iran nuclear deal. Just this week, Secretary of State Mike Pompeo warned that Iran's regime was bent upon "the export of Islamic revolution and the destruction of its neighbors."
Yet such warnings of the Iranian threat miss a key factor: the United States' own policies have at times advanced rather than hindered Tehran's regional ambitions. Nowhere is this clearer than in Yemen. U.S. support for a brutal Saudi-led military campaign in the country has created a humanitarian crisis of staggering proportions, while offering an opening for Iran to expand its influence in the country. Military intervention has made insurgents more reliant on support from Tehran and is turning civilians against U.S. partners. If Washington wants to counter Iranian influence, it needs to reverse course—ending its disastrous support for the Saudi-led coalition and throwing its weight behind peace talks. Doubling down on the military effort will serve only to further Iran's regional ascendance.
The roots of the current conflict in Yemen trace back to the early 2000s, when Houthi rebels from the northern region of Saada repeatedly rebelled against the regime of then resident Ali Abdullah Saleh, hoping to increase their share of state patronage. Arab Spring protests in 2011 forced Saleh to step down and hand power to his second-in-command, Abd Rabbu Mansour Hadi. Behind the scenes, however, Saleh schemed with loyal military forces to retain his influence. Taking advantage of the ensuing chaos, Houthi rebels conquered the capital, Sanaa, in 2014. By the following year, they controlled much of Yemen. Fighting against the Houthis—and among each other—were supporters of Hadi's government, a local al Qaeda branch, southern separatists, and a collective of local actors.
Blithely ignoring this complexity, Saudi Arabia and the United Arab Emirates entered the war in March 2015, seeking to put Hadi back in power and fight the Houthis, whom they saw as a proxy of their archenemy, Iran. Saudi and Emirati leaders feared that, through the Houthis, Iran would gain a foothold in Yemen much as it had done in Lebanon, where Tehran has a powerful proto-state ally in the form of Hezbollah. Saudi leaders predicted that the intervention would quickly tip the scales and that the civil war would end after only a few weeks.
Three years later, what was supposed to be a short, decisive intervention has ground on, with no end in sight. The campaign has reclaimed parts of southern Yemen from the Houthis. But the insurgents have kept control over the capital, Sanaa, and still boast tens of thousands of armed fighters.
There has been good reason for policymakers in Saudi Arabia, the UAE, and Washington to worry about Iranian ascendance across the region. Tehran's closest ally, Syrian dictator Bashar al-Assad, has made steady headway against insurgent groups, including forces backed by the United States and its allies. In May, elections in Iraq and Lebanon boosted the influence of Iranian-backed groups, while the United States' and the Saudis' favored candidates suffered setbacks. An Iranian member of parliament has famously boasted that his country controls "four Arab capitals"—Baghdad, Beirut, Damascus, and now Sanaa.
Yet it's easy to overstate Iran's hold on the region overall—and on Yemen in particular. In reality, the Houthis and Iran are allies of convenience against the U.S.-backed Saudi military campaign. Although the Houthis are commonly referred to as Shiites, their faith more closely resembles Sunnism than Shiism as practiced in Iran. Unlike the Lebanese Hezbollah, they do not profess loyalty to Iran's Supreme Leader. The Persian-Arab divide, the Houthis' focus on accessing state patronage in Yemen, and a strong sense of Yemeni independence also complicate the idea that the Houthis are Tehran's proxies.
But because of the Saudi-led campaign meant to push back on Iran, Tehran now has an opening in Yemen it might otherwise not have had. Iran gives the Houthis arms, including short-range ballistic missiles, and in exchange the Houthis have offered it an entry into a part of the world where its influence had once been limited. Houthis have threatened ships off the Yemeni coast with Iranian missiles, even hitting a Turkish ship delivering humanitarian aid. And their slogans, speeches, and media strategy increasingly echo those of Hezbollah, lending some support to Saudi fears that the group may be turning into a Yemeni version of Iran's Lebanese proxy. In addition, Shiites in other countries are embracing the Houthi cause as part of what they see as a larger struggle against Sunni hegemony.
Because of the Saudi-led campaign meant to push back on Iran, Tehran now has an opening in Yemen it might otherwise not have had.
The UAE has deployed significant ground forces, while Riyadh has flown over 100,000 sorties and spends $5 billion to $6 billion a month on the war—far more than Tehran spends on support for the Houthis. The war has killed around 10,000 people, and a Saudi blockade of Yemeni ports has exacted a bitter humanitarian toll. Last year, Yemen suffered the world's largest cholera outbreak. Starvation and disease have killed more than 50,000 children, and hundreds of thousands more are malnourished. The blockade has been loosened, but the damage it brought has turned many Yemenis, long distrustful of their Saudi neighbor, even more hostile. It has also hurt Saudi Arabia's image in Europe and other parts of the world that care about the suffering of the Yemeni people.
CODE YELLOW
Even as Yemen implodes, U.S. allies sink into the quagmire, and Iran's influence grows as a result, the United States has provided tacit support for the Saudi-led military campaign. Under Barack Obama, U.S. policy in Yemen was often confused, struggling to balance humanitarian concerns with a desire not to alienate U.S. allies. When Saudi Arabia and the United Arab Emirates launched their intervention in 2015, the Obama administration neither wholeheartedly embraced nor strongly opposed it, eventually settling into lukewarm acceptance. Quietly, the United States—along with France and the United Kingdom—provided intelligence and air refueling along with other logistical support. Before leaving office, Obama gave the Saudis a symbolic wrist slap, halting the sale of smart bombs to the kingdom because of the war. This proved to be the worst of both worlds, angering allies while doing nothing to stop the intervention or improve the situation in Yemen.
Trump quickly lifted Obama's smart bomb ban, but his administration has not veered dramatically from Obama's policy of cautious and grudging support, especially after a botched special operations forces raid in Yemen led to the death of a U.S. Navy SEAL and perhaps over 20 civilians in early 2017. In June, the United States rebuffed a request to join the UAE-led offensive on Hodeidah, a crucial port through which food and other supplies go into Houthi-held areas. Still, the International Crisis Group has described the U.S. State Department's messaging on the offensive as a subdued "yellow light" that allies can confidently ignore. More broadly, the Saudis and the UAE feel empowered by the strong embrace the Trump administration has given them up to this point and see no need to change course in Yemen.
ENDING U.S. POLICY DISARRAY
Washington should end its casual support for its allies' ill-fated and destructive efforts. Doing so is in its own strategic interest: Iran is stronger in Yemen than it was at the outset of the Saudi-led intervention. The United Arab Emirates and Saudi Arabia have spent tens of billions on the war, and many Yemeni hate them for the destruction they have brought. Even with a Houthi defeat in Hodeidah, the war will likely drag on.
Moreover, the United States' yellow light does not absolve it from its complicity in the humanitarian disaster gripping Yemen. Although the Trump administration has done little to suggest that it cares about humanitarian crises, especially in the Middle East, its logistical and intelligence support for the intervention ties it directly to the Yemenis' suffering. This is true even though leaders claim that the United States is not at war and few U.S. citizens know of their country's role in the conflict. As Senator Mike Lee (R-Utah) has noted, "It stretches the imagination, and it stretches the English language beyond its breaking point, to suggest the U.S. military is not engaged in hostilities in Yemen."
Ironically, Trump may need the goodwill of the Saudis and Emiratis much less than his predecessor did. Both allies support the U.S.-led coalition against ISIS, but the campaign's success has largely driven the caliphate underground in Iraq and Syria. Notionally, the Saudis and the United Arab Emirates also play a role in Trump's Arab-Israeli peace plans, but given that these are deeply unrealistic and unformed, this is of little relevance. Even within Yemen, the United States has tremendous leverage over its allies—it just won't use it. As researcher and aid expert Alex De Waal argues, the in-flight refueling, presence of U.S. advisers, and arms sales all offer tools for the United States to exert pressure on its allies.
Although the Trump administration is unlikely to seize it, the UAE's current assault on the strategic, Houthi-held port of Hodeidah offers an opportunity to renew negotiations. The United States should support the ongoing efforts of Martin Griffiths, the UN's new envoy to Yemen, to halt the offensive and conduct peace talks. Congress could encourage such efforts, using its influence over the approval of arms sales and control over U.S. military spending to push the administration. Hearings on growing Iranian influence and the humanitarian crisis in Yemen that involve public criticism of publicity-sensitive allies such as Saudi Arabia also can shift the debate. An attack on Hodeidah by the Saudi-UAE coalition forces is likely to be costly to both sides, but a defeat would be particularly devastating for the Houthis, who would lose a supply port as well as a visible symbol of their military might. To prevent such an outcome, the Houthis could be encouraged to enter a deal on the condition of reducing ties to Tehran. In the absence of such a deal, however, they are likely to double down on Iran's support, which would become their primary lifeline. U.S. allies, for their part, can claim victory in Hodeidah and enter negotiations with a "win," allowing them to at least reduce the scale of their interventions. That won't solve Yemen's problems or fully remedy the problem of Iran's growing regional power, but it would be a step in the right direction.
https://www.foreignaffairs.com/articles/middle-east/2018-07-26/how-us-empowering-iran-yemen
Categories: America, Americas, Arab World, Asia, Iran, United States, Yemen
Tagged as: arms sales, arms trade, coalition, hODEIDAH, Houthis, humanitarian disaster, Saudi-UAE
Suicide bomb attack on Afghan Shi'ite mosque kills 39, 80 injured
Duke Divinity School's first woman dean, steps down after a short two-year tenure
Rafiq A. Tschannen says:
Main aim achieved anyway: Destabilization and Destruction. Everything else is secondary…
Opinion: The UAE's philanthropy boom


text:
Issuing political statements not helping his cause, troubles knocking at doors of J&K
Jammu, Feb 15: In the aftermath of terror attack which martyred more than 45 CRPF jawans at Lethpora in south Kashmir's Pulwama district on Jammu-Srinagar highway, Governor Satya Pal Malik is trying to pass the buck and is blaming everyone except his administration. Soon after the attack Governor Malik blamed PDP President Mehbooba Mufti for communalizing the situation in the state by issuing "communal statements." An analyst while talking to Early times said that Governor Malik is now "crying over the split milk." "Someone needs to tell him that the people around him are no saints. He needs to take a look around him and see what is happening under his very nose," the analyst added. He said that he is blaming Mehboooba and other politicians, who at present are not accountable is not going to help his cause. Former Jammu and Kashmir Chief Minister Omar Abdullah wrote on twitter: "The Governor of J&K has failed in his primary responsibility. He compounds things by preferring to appear on every single news channel he can find rather than rush to the valley to meet the injured and yet somehow Mehbooba & I are to blame for everything (sic)." The analyst said that Governor Malik's assertion that Mehbooba Mufti as Chief Minister took some wrong decisions which led to terrorism getting a boost and morale of security forces going down has vindicated the stand of the nationalist people that PDP played into the hands of Pakistan and its stooges when it was ruling the state. "The unfortunate part is that the Bharatiya Janata Party too was part of the anti-national regime which ruled the state from 2015 to 2018," the analyst added. A politician said that when Mehbooba Mufti was heading the state she increased the incentive for the terrorists for laying down the arms. She directed the security forces to ensure that they catch the terrorists alive. She announced amnesty for 10,000 stone-pelters and made every attempt to rehabilitate them. The politician said that Central government announcing a unilateral ceasefire during the holy month of Ramadan in Kashmir proved lowered the morale of the security forces as the ceasefire turned our jawans into sitting ducks. "During Mehbooba's tenure Kashmir witnessed spurt in militancy related incidents in the Valley and the recruitment in terror ranks increased. Mehbooba, who also held the Home portfolio was aware about the developments despite that she just kept quiet and allowed the situation to deteriorate," the politician added. He said that had the "home grown terror" been curbed when it was growing "we would not have lost more than 45 CRPF jawans in the terror attack. This dastardly act should serve as an eye opener for all those who go out of way to appease Kashmir centric leaders," he said.


An easy way to record calls is finally coming to iPhone and it's not an app, it's a case.
Just In Case, currently on Indiegogo, is an iPhone case that records your phone conversations and stores them on a microSD card — no app or other physical device required. Just hit the record button on the back and the microphone located near the phone's ear speaker will start recording. According to the campaign, JIC is designed for iPhone 5 and above, not including Plus models.
You can playback the MP3 files through a speaker on the case, but with only two buttons on the device — record and play — it might be too simplistic for users who want to rewind or fast forward through their recordings. There is also the option to upload the MP3 files to a computer with either the removable microSD card or with a USB cable.
Current iPhone call-recorders can be a pain to get working and often have certain limitations. The Google Voice app only records incoming calls, some apps require you to put your call on hold to merge in a third line and many recording apps require in-app purchases or charge you by the minute.
You can also get a physical recorder and use a hollow ear bud with a built-in microphone to pick up sound at your ear, but that can prove uncomfortable and requires some extra physical finagling.
JIC records with the click of a button, saves MP3 files and is able to play them back.
JIC cases will come in multiple colors, with black, white and red silicon padding and red, yellow, green, blue, black and white plastic covers. According to the Indiegogo campaign, the cases can withstand drops of up to 10 feet and 220 pounds of pressure. The rechargeable battery lasts up to 8 hours when recording and up to a year when not in use.
The microphone can also record in-person conversations, reaching distances of up to 16 feet, according to the campaign.
If you're thinking about recording all your conversations, be wary that different countries and states have very specific recording laws. For example, New York allows phone recording if you are part of the conversation, but Illinois requires consent from all parties. You can see a breakdown of United States recording laws at the Reporters Committee for Freedom of the Press.
If JIC is funded, the team will move into production and expects to start shipping cases in May.


text:
Antoine Jean Marie Thévenard – ammiraglio francese
 Antoine René Thévenard – militare e ufficiale di marina francese
 Patrice Thévenard – corridore ciclista francese
 Rachel Thevenard – attrice canadese

redpajama_set_name: RedPajamaWikipedia


#WrestleMania34 Match Card Mix-up; Impact Wrestling Improvement?
WrestleMania 34 Match Card Could Use a Mix-up as WWE looks at a potential 5-way IC Title match, a teased John Cena EC3 match at NXT Takeover: New Orleans and the return of Lashley.
Plus, even though Eric Bischoff might not think it, Impact Wrestling could be making some significant improvement, plus the All American American might be chanting We the People inside the Lucha Underground temple.