fabiochiu/medium-articles huggingface dataset:
Warning Signs of a Bad Job
By: Ellie Daforge
Tags: Careers, Work, Self Improvement, Life Lessons, This Happened To Me

Warning Signs of a Bad Job

Red flags that it’s time to polish your resume

Photo by Debby Hudson on Unsplash

You know when you hate your job. You dread leaving for work in the morning. You get to work and a coworker says, “You should’ve called out. We’re in for a miserable day.” But everyone has rough patches at work. How do you know for sure that it’s time to leave?

There are some clear warning signs that you need to start polishing your resume. Here are a few that I’ve seen.

People are leaving

If several people quit or are laid off, that’s a big warning sign. Sure, your company can be weathering a storm — or you could be on a sinking ship. Be wary, and ask yourself: why are people leaving?

If it’s because other companies are treating employees better, you might want to get in on that. Similarly, if people are suddenly being fired or laid off, you could be next.

Compensation is low

How long has it been since you had a raise? If the answer is “never” and your performance is good, your employer is likely shortchanging you. What about your benefits or paid time off? If those aren’t generous, working there can be extra miserable.

In a lot of industries, the only way to substantially increase your pay is to switch jobs. If you bring up a solid reason why you deserve a raise and are rebuffed, or your benefits are cut year after year, it might be time to look for greener pastures.

The company plays favorites

Your vacation request gets denied, but someone else’s is approved. You have a stack of work on your desk, yet it seems a coworker is getting paid to watch YouTube videos. Playing favorites is not only annoying, it’s a bad business practice.

Generally, I try not to compare my schedule to others’; if someone frequently leaves early, for instance, maybe they have a family issue. And complaints of “our workloads aren’t equal” will never get resolved; people work at different speeds.

But if it’s compounded by other factors — say, you have to pick up your coworker’s slack, yet your vacation request got denied for the third time— your job can quickly become overwhelming. Who wants to toil away while others do nothing?

In my experience, if there’s dramatic favoritism, things won’t change. You can either deal with it, or go to a new job where (hopefully) everyone is treated a little more fairly.

Bosses are excessively punitive

I once worked a job where everyone suddenly started getting written up. If employees didn’t do anything wrong, the director would make up a reason. My boss called me up on my day off to go in and sign my write-up. I got tired of this pretty much instantly, and was able to secure a new job.

I handed in my notice, and wasn’t surprised when the director made no effort to keep me. I later found out that she was forcing out anyone with experience, in favor of hiring new employees who’d let her do whatever she wanted (and for less money). Last I heard, the company isn’t doing well. Go figure.
Kurt Vonnegut Walks Into a Bar
By: Electric Literature
Tags: Publishing, Writing Life, Memoir, Editing, Essays

The following is excerpted from The Accidental Life by Terry McDonell, out in paperback today. Electric Literature has partnered with McDonell to create terrymcdonell.com, which chronicles his storied career as a magazine editor with photos, memorabilia, and reflections not found in the memoir.

I was on the corner of Third Avenue and Forty-eighth Street, and Kurt Vonnegut was coming toward me, walking his big, loose-boned walk. It was fall and turning cold and he looked a little unbalanced in his overcoat, handsome but tousled, with long curly hair and a heavy mustache that sometimes hid his grin. I could tell he saw me by his shrug, which he sometimes used as a greeting.

I was on my way to buy dinner for some Newsweek writers who were suspicious of me as their new assistant managing editor. I had been brought in from Rolling Stone, and no one at Newsweek had heard of me. I didn’t know them either, but I knew Kurt, who was one of the first people I met when I moved to New York. We were neighbors on Forty-eighth Street, where he lived in a big townhouse in the middle of the block, and he’d invite me over for drinks. I had gotten him to contribute to Rolling Stone by keeping an eye out for his speeches and radio appearances and then suggesting ways they could be retooled as essays.

“Come have dinner,” I said. “I’ve got some Newsweek writers who would love to meet you.”

“Not in the mood,” Kurt said.

“They’re fans,” I said. “It’s part of your job.”

Kurt lit a Pall Mall and gave me a look, one of his favorites, amused but somehow saddened by the situation. He could act, Kurt.

“Think of it as a favor to me,” I said. “They’re not sure about me, and I’ve edited you.”

“Sort of,” he said, and I knew he had already had a couple drinks.

He never got mean, but he got honest.

“What else are you doing for dinner?” I said, knowing he seldom made plans.

“The last thing I need is ass kissing,” Kurt said.

“That’s what I’m doing right now.”

“They’ll want to know which novel I like best.”

“Cat’s Cradle,” I said.

“Wrong.” He flipped the Pall Mall into Forty-eighth Street, and we started walking together toward the restaurant.

The writers were already at the table, drinks in front of them. They looked up when we came in, surprised to see Kurt with me. There were six or eight of them, including the columnist Pete Axthelm, who was my only ally going into Newsweek because I knew him from Runyon’s, a bar in our neighborhood where everyone called him Ax.

I introduced Kurt around.

“Honored,” Ax said, or something like that, and the ass kissing began.
Musings
By: Liza Donnelly
Tags: Pollsters, Politics, Trump, Cats, Election 2020

More from Liza Donnelly Follow

Visual journalist/writer for New Yorker, New York Times, CBS News, CNN. TED, SXSW speaker. Looking to change world w humor. lizadonnelly.com
Campaign Gone Viral Without Spending a Penny
By: Atikul Islam Simon
Tags: Social Media, Social Media Marketing, Bangladesh, Digital Marketing, Viral Marketing

STORY

Doctorola.com is the first online doctor appointment service platform in Bangladesh who provides real time doctor information and free appointments through a fully integrated system.

Today, keeping audiences engaged & focused on social has been unimaginably challenging even after spending money. There are so many contents being published every hour on social media which makes it really difficult for an audience to keep pace with. Being a startup company, Doctorola wanted to reach & engage more audience organically. On the other hand, Facebook’s organic reach has been declined drastically (Currently only 1–2% organic reach). In such turmoil, they looked for our help and we took the challenge.

OBJECTIVE

Our primary objective was to create certain Facebook graphic contents for Doctorola and ensure they reach to more people than usual while also proving the statement “Facebook Organic Reach is Dead” wrong at the same time. It was important to create contents, which would be unique but relevant to the brand, offer value and encourage engagement for Doctorola’s target audiences. There were other related objectives as well. Like:

· To share something with audiences which is actually important for them and worth sharing while establishing the idea that Doctorola cares for its audiences · To improve the brand awareness of Doctorola.com

OUR APPROACH

As the objectives were already set, we sat with the Doctorola team and finalized the whole content planning within just a 15 minutes meeting. We along with Doctorola, decided to create a series of local vegetable’s infographic contents with their nutritious facts in it targeted for any kind of Facebook users literally. After working for couple of days, we finished creating the infographic contents. However, there is an obvious background story behind it. Before creating the contents, we went through real vegetables photoshoot, nutrition facts collection and authorized doctors’ verification. On this campaign, we kept the design minimal while focused more on the information to be delivered to the audience. Eventually, we came up with total 6 Facebook posts on different local vegetables with their nutritious value.

RESULTS

The contents created by OK GO Digital were successfully aligned with the need of Doctorola’s target audiences, as the campaign result was impressive. Followed by a weeklong Facebook campaign, Doctorola contents experienced total 5000+ Shares, 24,000+ Likes & Engagement, 5 Lacs+ Reach while spending ZERO DOLLAR! Besides all the figures, the most important result achieved after this campaign was, the double increase in regular organic reach and engagement for any posts of the Doctorola page. Sounds cool, right?

Want to work together? We’re always excited in hearing about new projects. Say hello to simon@okgodigital.com or Visit http://okgo.digital
Out of Control
By: Emma Briggs
Tags: Control, Resistance Poetry, Poetry, Social Change, 2020

This year

the day is today and I can’t remember yesterday

or tomorrow.

Last year

things felt more connected, as if actions had an effect

on outcomes.

This year

I feel trapped in a hamster wheel, where nothing can really

matter or happen.

Next year

I can’t begin to predict how we’ll exist, either in this cage

or outside it.

This year

all I expect is the very next step, as the treadmill spins

out of control.
We Don’t Need A Reason For Being Trans
By: Rhian Beam
Tags: Contrapoints, Trans, Transgender, Nonbinary, Cisgender

Lately, I watched Contrapoints on Youtube talk about the term “Trans-trenders” and as she does in all of her videos, battles the philosophy behind it, and shuts gatekeepers down with their bigoted opinions on what “counts” as Transgender.

Using her Nonbinary character “Baltimore Maryland”, she explains that because brain scans are not used to determine gender dysphoria, that the ‘feeling’ of distress to diagnose dysphoria, is similar to how nonbinary folks ‘feel’ a disconnect with their assigned gender at birth, and thus, binary trans folks and nonbinary trans folks aren’t so different. I only say ‘feel’ in quotes because that word is important here.

So many folks who still identify as transsexuals instead of transgender, and trans-meds, trans people who believe that being transgender is strictly a mental disorder and can only be diagnosed, like to say that these “transtrenders” or trans folks that they think are only being trans for a trend, are infiltrating the transgender community and making a “mockery” of it by perpetuating stereotypes.

These stereotypes tend to be related to the exploration that teens or young adults go through when they are figuring out their gender identity. Like coloring their hair, changing their style, gender expression, etc. But later on in the video, she explains that this is an extremely damaging way to think of things. For one, thinking everyone’s transition is going to be the same as yours is selfish and small-minded. And is definitely not intersectional and a diverse way of thinking.

This can also damage kids, teens, and young adults who are simply finding themselves. And instead of welcoming them into our community and letting them explore themselves, trans people in our community are telling these young people that they are invalid, that their feelings aren’t real, and that they are really just cisgender. This is exactly what these kids were afraid of, and then they are forced back into the closet because they are scared that they will never be accepted. And that is extremely harmful, especially since so many kids and teens in the trans community have depression.

She goes on to go back and forth between herself and her character ‘Tiffany Tumbles’, a self-described transsexual. Shutting down each other's logical arguments into what makes someone ‘Trans’ and what doesn’t. And because so much of dysphoria and disconnect with gender is related to how you ‘feel’ and that science can explain feelings, that trans people don’t really need a reason to give to people who are cis as to why we are trans. We just are.

I just think that is so so important. Because so many of us strive to explain it to cisgender people, so many of us try to quantify our gender experience into measurable science but it doesn’t work like that. It’s still science, it’s anthropology, it’s sociology or psychology. It’s the human experience. In your head and in your heart. And that’s what makes it so beautiful.
Kafiristan
By: John Edward Marks, Jem
Tags: Genocide, Poetry, Forced Conversion, Hindustan, Afghanistan

(a continuing genocide)

The Buddhas of Bamiyan (Dari: بت بامیان‎; د باميانو بتان) were two 6th-century monumental statues of Gautam Buddha blown up in March 2001 by the Taliban.

Nuristan, in eastern Afghanistan, was formerly known as Kafiristan (کافرستان, “land of the infidels”) until the inhabitants were forcibly converted from ancient Hinduism to Islam in 1895, and thence the region has become known as Nuristan (“land of enlightenment” — sic!)

The Hindu Kush:

Mountains of the moon

The valleys where we lived

With the faeries and the spirits of the wood.

We bred the Shen — the bravest of the horse tribe -

Grew the scented root — the Yu-kin -

We had our coins — copper, silver, gold -

Our open-faced, beautiful women.

They dressed so colorfully in furs and wool,

Loved as they wished,

Changed their husbands on a whim,

Grew old in love and children.

We men, we carved our wooden

Statues for the temples,

Decorations for the birthing huts.

We grew much fruit and grain.

We had many, many gods -

Every day was sacred for us.

Then the faeries cursed us,

Brought Abdur Rahman Khan,

With the plague of belief.

Invaders burnt our temples and our carvings -

Fire destroys the wood

That only time can make -

And all, all we had, was gone.

Our beautiful women covered

Their faces in mourning.

So many, many, many died,

Even the red Kafirs converted,

The Muslims called our land ‘Nuristan’

‘Land of the enlightened ones’.

Now, only the black Kafirs remain -

The brave Kalash -

All else is dust -

This is what it is to be a man.

The brave Kalash

John Edward Marks (JEM) 2020
Join The Making Of A Millionaire Community
By: Ben Le Fort
Tags: Community, Personal Finance, Money, Education, Life Lessons

Photo by Shane Rounce on Unsplash

Right now, our top focus is bringing together a group of supportive people and giving them a place to share their struggles and triumphs along their financial journey.

We have three places where we are doing that.

The 30-day money challenge (free to join)

Goal one of this publication is to provide an immense amount of value to our readers. With that in mind, I invite you to join the 30-day money challenge.
30 Years Left
By: Bogdan Tiganov
Tags: Poetry, Retirement, Time, Poetry On Medium, Poem

30 Years Left

A poem

Photo by Mohammad Faruque on Unsplash

What deep passion will find me next,

I’ve been searching everywhere for you.

But I figure everything’s fine

this foggy Wednesday morning,

I tell myself — you have 30 years left.

Cool it. Pace yourself.

Nobody mourns the death of a tree,

they just walk by.

30 years left of relighting rusty

survival mechanisms and

feeling Elliott Smith lyrics—

Give up the thing you love.

What are these numbers anyway,

and why is everything timed?

I might board a rocket to Mars.

Or find a fishing cabin in Scotland.

Retirement is your tired old cliche.

I refuse to comply.
Project Euler — Problem 12 Solution
By: Yan Cui
Tags: Project Euler Solutions, Programming, Functional Programming

Project Euler — Problem 12 Solution

Problem

The sequence of triangle numbers is generated by adding the natural numbers. So the 7th triangle number would be 1 + 2 + 3 + 4 + 5 + 6 + 7 = 28. The first ten terms would be: 1, 3, 6, 10, 15, 21, 28, 36, 45, 55, … Let us list the factors of the first seven triangle numbers: 1: 1 3: 1,3 6: 1,2,3,6 10: 1,2,5,10 15: 1,3,5,15 21: 1,3,7,21 28: 1,2,4,7,14,28 We can see that 28 is the first triangle number to have over five divisors. What is the value of the first triangle number to have over five hundred divisors?

Solution

[code lang=”fsharp”]

open System

let triangleNumber(n:int64) = [1L..n] |> Seq.sum

let findFactorsOf(n:int64) =

let upperBound = int64(Math.Sqrt(double(n)))

[1L..upperBound]

|> Seq.filter (fun x -> n % x = 0L)

|> Seq.collect (fun x -> [x; n/x])

let naturalNumbers = Seq.unfold (fun x -> Some(x, x+1L)) 1L

let answer =

naturalNumbers

|> Seq.map (fun x -> triangleNumber(x))

|> Seq.filter (fun x -> Seq.length(findFactorsOf(x)) >= 500)

|> Seq.head

[/code]

My solution here is simple, first create the triangleNumber function that calculates the triangle number for a given natural number.

I then created a modified version of the findFactorsOf function I first used in the problem 3 solution to find ALL the factors of a number including 1 and itself.

Again I used Seq.unfold to build up a sequence of natural numbers and to find the answer I iterate through the natural numbers and for each get its triangle number; find the factors of the triangle number; and check if the number of factors is at least 500.
Beatrice & Benedick
By: Cory Howell
Tags: Benedick, Much Ado About Nothing, Beatrice

Having recently watched an excellent production of Much Ado About Nothing on PBS’s Great Performances, I thought I’d share the excellent verbal banter of their first scene in the play. (Act I, Scene 1)

BEATRICE

I wonder that you will still be talking, Signior

Benedick: nobody marks you.

BENEDICK

What, my dear Lady Disdain! are you yet living?

BEATRICE

Is it possible disdain should die while she hath

such meet food to feed it as Signior Benedick?

Courtesy itself must convert to disdain, if you come

in her presence.

BENEDICK

Then is courtesy a turncoat. But it is certain I

am loved of all ladies, only you excepted: and I

would I could find in my heart that I had not a hard

heart; for, truly, I love none.

BEATRICE

A dear happiness to women: they would else have

been troubled with a pernicious suitor. I thank God

and my cold blood, I am of your humour for that: I

had rather hear my dog bark at a crow than a man

swear he loves me.

BENEDICK

God keep your ladyship still in that mind! so some

gentleman or other shall ‘scape a predestinate

scratched face.

BEATRICE

Scratching could not make it worse, an ‘twere such

a face as yours were.

BENEDICK

Well, you are a rare parrot-teacher.

BEATRICE

A bird of my tongue is better than a beast of yours.

BENEDICK

I would my horse had the speed of your tongue, and

so good a continuer. But keep your way, i’ God’s

name; I have done.

BEATRICE

You always end with a jade’s trick: I know you of old.
Like Light from Stars
By: Paul Mulliner
Tags: Poetry, Love, Life, Dreams, Philosophy

There are sometimes moments that arrive,

bringing with them something deeper

than the usual and everyday,

a sense of touching into meaning

so profound it can’t be said,

and while it lingers briefly in our mind,

we’re lifted into contact

with a spacious inner sky,

a consciousness

seeming larger

than our separate self.

And though we may sometimes wake

in the rainy, windy dawn

and find no meaning in the life we live,

there’s always meaning and value

in being human,

and life is a river of dreams,

dreamt by a conscious Universe

that knows all of us within itself,

and flows continuously

through the present moment.

And every day we’re woven

into the mystery,

and our intuition

brings clarity

and wisdom into our life.

Like light from stars

becoming love and dreams,

consciousness in the Universe

becomes the ordinary

and everyday,

as endless cosmic skies

drift through inner space

inside all of us.
Bitcoin Seed Security Analysis
By: Jameson Lopp
Tags: Seed Phrases, Cryptography, Security, Cold Storage, Bitcoin

An Anonymous Bitcoiner writes:

I’m trying to balance the concept of seed protection/memorization with seed entropy. I have added 10 random words to my seed (that my kids have memorized), along with deletion of the last seed word (which my kids have also memorized). I now intend to save these 33 words in plain sight… making them publicly available, to ensure they aren’t lost and forgotten. My question to you is, how safe is this wallet?
cPRO TOKEN
By: Cp Processor Team
Tags: Ethereum, Cryptocurrency, Token Sale, ICO, Bitcoin

Utility membership token

Functionality or utility seems to be the key characteristic that distinguishes a “blockchain token” from a financial security. A token which has a specific function that is only available to token holders is more likely to be purchased in order to access that function and less likely to be purchased with an expectation of profit. So, cPRO token represents user’s “ticket” to the functionality and usability of CP Processor Project Project on the public Ethereum network. Without this “ticket” CP Processor cannot function in full. So, every user must have exactly = 1,00 cPRO token to use CP Processor functions. Also, this token does not represent stock or investment asset and project does not guarantee for the market price and future open market trade. But if demand for tokens rises much more than fixed supply, because no one can know how many token users there will be in the future, the demand will increase the token price.

This token does not represent stock or investment asset, and no government in the world can forbid you to take a cinema ticket so they cannot forbid you to take a cPRO “TICKET”!
Accept Payments Using Google Pay Through Stripe in Flutter
By: Jaimil Patel
Tags: Google Pay, Flutter, Stripe, Firebase Cloud Functions, Programming

So Let's do back-end part first using Node.js, Cloud Function, and Visual Studio (Only for Server Side Development).

Create Project On Firebase Console And Get Blaze plan

After Upgrade your plan to Blaze Plan

Setup Firebase CLI To implement Cloud Function

Run the following commands in terminal :

npm install -g firebase-tools

firebase init

After running the last command you will get this window in the terminal.

Choose Functions: Configure and Deploy Cloud Functions.

After that please choose your project according to your project name and finish all the steps.Please install all the npm dependencies which it’s asking for. It generates some files into your functions folder.

Let's focus on the index.js file.

First seven lines from the top used for getting access to platforms.

Please replace<Your Secret Key> into your secret key provided on Stripe Dashboard.

exports.createPayment , exports.confirmPayment and exports.cancelPayment indicate our Cloud functions for Stripe Payment.

You can see these three lines in the above code. It's written from API documentation of Stripe to complete our payment integration from creating Payment Method to Confirm Payment and Cancel Payment.

To deploy firebase cloud functions run the following command :

firebase deploy --only functions

You can see cloud functions in your firebase console.
Waking Nightmare
By: Dermott Hayes
Tags: Politics, Resistance Poetry, Poetry, Deja Vu, Nightmare

Photo: funnyordie.com

Never, never, never

So you can lie and sugar coat the truth

the deaf can’t hear when all is dumb

The blind can’t see what’s right in front of them

The fools who’ll do your will can’t understand

The greater good they serve is filling your false hand

With spoils from wars and golfing trips

To feed your ego driven empty void

Until all they see is your visage

A chasm bigger than any chasm, ever

And standing there you hear faint voices echo

Never, never, never
Slackjaw Featured Theme: Sex & Dating
Tags: Sex, Dating, Romance, Humor, Satire

We feature a new humor theme every couple of months. Slackjaw’s current featured theme is Sex and Dating!

(Learn about submitting a featured theme piece in our submission guidelines.)
Civilization Bloom, Part II
By: Anna Ronan
Tags: Mutual Aid, Honesty, Relationships, Philosophy, Consent

So, what does it mean to allow relationships to emerge organically?

As previously discussed with the self, the fundamental thing upon which our entire interface with existence rests is feeling. What we feel is the only tool we have to relate to the outside world, and thus, the only thing on which a relationship can be built.

We can only truly control our side of our relationships (and what is true control, when everything that we are is an amalgamation of everything outside of ourselves?). We can only know for certain what our own feelings are. This makes relationships, understandably, complicated.

The feelings I have towards, say, my neighbor, are something only I can know for certain. I can communicate them authentically, but it is always possible that something will get lost in translation: what I mean when I say something is not what the other person perceives me to mean, and even if I’m understood perfectly, that person can never know for certain what my feelings are.

Now, instead of your neighbor, let’s talk about your relationship to your dog, or your house, or your city. You will never be able to know what your dog feels about you, let alone an entity that may not have feelings of its own, like a building or a place. But you still have a relationship to it: you interact with it in some capacity, and your side of the relationship, the only side over which you have control, still hinges on your feelings towards it.

To keep matters simple, I’m going to focus on interpersonal relationships (for now).
Node.js Coding Style Guidelines
By: Tarun Gupta
Tags: JavaScript, Programming Tips, Nodejs, Programming, Javascript Tips

Node.js Coding Style Guidelines

Make your code readable to others

Software developers are like lone wolves who prefer to work as individuals rather than in a group. I too come in that category. This can sometimes create problems when the need to work in groups arises in a project.

There are both pros and cons involved when working in groups. On the plus side, there are more insights available to a problem which can help get to a better solution, but at the same time there can be collaboration issues when one developer has to go through another developer’s code to debug or review it.

Each individual has his/her own way of writing code and more often than not, there is a high degree of variation among a group of developers. To avoid such problems when working in a team, most of the programming language communities follow standard coding guidelines. By following these guidelines every developer can write code in a specific way that is known to their teammates. This practice can help teams save time reading the code written by other members.

This article is a guide for writing consistent and aesthetically pleasing Node.js code. It is inspired by what is popular within the community, and also features some personal opinions.
The Miracle of Love in Transcending the Mind
By: Ruchi Thalwal
Tags: Life Lessons, Spirituality, Poetry, Love, Self

Mind — a clever master or dutiful servant

A den of thoughts or a peaceful lake

Maze of confusion or a clear path

A marshland or a lush green park

Saints say to go beyond the mind

What do they actually mean?

Is it possible to use the mind to transcend it?

Intellect and reasoning can never pierce

The basic thread of the spirit

The mind can heap many thoughts

Pushing deep the fundamentals

The saw of thoughts can never cut

the web of lies we feed ourselves

The licking of our ego

can never dissolve rigid patterns

Don’t believe hollow words

Experience is what can help

Not anybody’s but of self

Peel the coatings of beliefs

Bless yourself with a light feel

The mind asks, but it can never answer

When the question of the existence

is burning enough to lit the pyre of past

Flaming the old conditionings and patterns

Dive within to know and experience

Drop by drop it can quench your thirst

The journey may seem long and arduous

Don’t give up, it is like that for everybody else

Ups and downs,

consistent and lazy

No results lead to frustration

But who is asking and getting discouraged

are the mind and mind created stories

Don’t try to fight it,

you can never win

The battle will only get long

Be ready to accept it

Be mindful of the struggle

Going beyond can be easy or tough

Depends on the closeness of heartful living

By being close to heart and love

Dense layers shed effortlessly

Let love flow uninhibitedly

Let your heart smile like a flower

Away from the world’s closed mind

Open your heart, live, laugh, and celebrate!
How to Build a Command-Line Tool With Swift ArgumentParser
By: İbrahim Oktay
Tags: Programming, Swift, iOS, Xcode

Introduction

First of all, let’s learn some basics. We are going to create our command-line tool with Swift Package Manager (SPM). Then, we are going to make our code more elegant and type-safe with Swift ArgumentParser.

Swift ArgumentParser is a new open-source library that makes parsing arguments a lot easier.

Here is the GitHub repo:

Let’s get started

I will create a simple base64 converter for demo. So, let’s begin.

Create a folder and change the directory. Create a project with SPM.

$ mkdir base64Converter

$ cd base64Converter/

$ swift package init --type executable

Here is what you should see:

At this point, you can run your project with the code below:

swift run

Prints: Hello, world!

Note: If you are going to write tests, write all of your code as a library. Otherwise, you will not be able to test your code. It will not work. I will show you how to do it later in this article.

Back to the topic at hand. You can click the Package.swift file and it will open Xcode for you. Now, we can add the ArgumentParser library. Then, Xcode will automatically fetch and resolve the library for you. Your Package.swift file should look like this:

After that, you can start to implement the main.swift file, which is the entry point of your command-line tool:

Run this in the command line:

swift run base64Converter “Say hi”

See the result. It does not convert yet, but it prints “Say hi” . You don’t need to use the command line every time. You can just hit the play button in Xcode. It works too.

Let’s continue with some basics

You have probably seen @Argument() . This is how we get our value from the command line. ArgumentParser handles all the hard work for us with these property wrappers:

Argument

Option

Flag

Check out the documentation for more details.

This is how we want to use our command-line tool:

> base64Converter "this is an example" --encode

> base64Converter dGhpcyBpcyBhbiBleGFtcGxl --decode

You can achieve the same usage with different combinations. Therefore, pick the best option that suits your needs. Since we have two operations, the first one is to convert string to base64 and the second one is to convert base64 to string. We will choose @Flag() . But it will be a little different than the normal usage because it will be a custom enum. Yes, we can do that!

enum CodingType: EnumerableFlag {

case encode

case decode

}

This is the code:

That’s it. We have a command-line tool now. It is pretty simple and straightforward. It is also type-safe and you do not have to do the parsing manually. Let’s add some tests for our command-line tool.
Cartoon about illegal formation in football
By: Andy Anderson
Tags: Funny, Comics, Football, Sports, Humor

There’s more to laugh at here: AndyAndersonCartoons.com

If this made you laugh, share it and follow me for more cartoons.

On another note, Medium has a new feature: newsletters. Would you rather have the cartoons sent to your inbox or read them here in the publication?
Waiting
By: Suntonu Bhadra
Tags: Poetry, This Happened To Me, Literary Impulse, Letters, Poem

Not a distant memory,

When humans used to lay down their words onto paper,

Wrapped in an envelope,

Dropped into a box called letterbox,

Handled by the post office, and dropped to the destinations,

where the loved ones lived.

Handwritten Letters.

An emotion-filled, written form of verbal sayings

in line-by-line structure,

conveying diverse notions, portraying distinct moments.

Words, as if the sender is speaking now, with their inner voices,

in perceived tones, pouring the feelings, crafted into the piece of paper.

Scribed words, tucked inside an envelope,

marking the destination to reach,

marking the emotion-filled letter source.

And we waited! For love-wrapped letters,

awaited the printed emotions to inhale the loving touch.

Gone are those days!

Now, reaching out is instant.

Somehow, the instant made us more distant than ever before.

©️Suntonu Bhadra, 2020. Rights reserved, but the happiness is not.
“Falla rápido, falla barato”
By: Diana Bl
Tags: Design Sprint, UX, UX Design, UI, Español

Sign up for Design news

By UX Planet

Get the latest news from the world of UX design Take a look
The Tale of Unidirectional Dataflow in Angular
By: Aphinya Dechalert
Tags: Angular, Web Development, Software Development, Technology, Education

The Lowdown on Unidirectional Dataflow

Unidirectional dataflow is not a word we often see, nor is it something that organically comes up in conversations. However, it’s a neat little data management pattern that can simplify how your application responds to change.

For most apps, everything eventually boils down to data. The flow of data between the different layers, such as views, components, and services, can determine the effectiveness of an application’s modularity as it grows.

So what exactly is unidirectional dataflow?

Unidirectional dataflow is a programming pattern that deals with how data is updated. There are two main patterns currently in use — unidirectional and bidirectional. The uni part of unidirectional refers to the idea that data can only flow in one direction.

For the front end, once a view has been rendered, an action is required to change the data and re-render the entire or portion of a view from scratch.

React does this by default and there is no explicit binding available to allow the view to update without direct action from the layers beneath it.

Updates happen in one direction and one direction only. The data is not expected to change and is therefore considered immutable. When something happens and a change occurs, that state no longer exists and it is considered a new entity entirely by the view.

Change is caused by an external action. When this happens, the view is wiped clean and re-rendered with the new data. This is unidirectional in a nutshell: a one way dataflow where data can only move in one direction and cannot backtrace in the direction it just came from.

With unidirectional dataflow, there’s no need to track states because a change in data will result in a complete change in the view.

Hypothetical unidirectional dataflow

To understand this in an Angular context, we need to travel back in time — way back to the original iteration of Angular.js
Sign-verify messages using bitcoinjs with FLO/Bitcoin keys
By: Vivek Teega
Tags: JavaScript, Blockchain, Bitcoin, Programming, Digital Signature

Objective — By the end of this article you will be able to digitally sign messages with Bitcoin or any other blockchain’s public-private key pair. FLO blockchain is used in the example. bitcoinjs-lib and bitcoinjs-message modules of nodejs are used.

What is a digital signature?

Code

Pre-setup

At the time of writing, 13 Auguest 2018, bitcoinjs-message only works with version 3.x.x of bitcoinjs-lib.

mkdir projectDir

cd projectDir

npm init // creates packages.json file

npm install bitcoinjs-lib@3.3.2 // Install specific version

npm install bitcoinjs-message

I am also assuming you have your public and private key pair with you. Please let me know in the comments if I should make changes to the script to show how to generate public-private keys.

Main script

I am currently using FLO testnet addresses for the following script. You can use any network you wish by specifying the right address generation parameters ie. pubKeyHash, scriptHash, wif (Secret key), public and private headers. For Bitcoin and Bitcoin based blockchains these values can be found in the chainparams.cpp file.

var bitcoin = require('bitcoinjs-lib') // v3.x.x

var bitcoinMessage = require('bitcoinjs-message') // Parameters required for FLO address generation

const FLOTESTNET = {

messagePrefix: '\x19FLO testnet Signed Message:

',

bip32: {

public: 0x013440e2,

private: 0x01343c23

},

pubKeyHash: 0x73,

scriptHash: 0xc6,

wif: 0xef

} // Sign a message

// For Bitcoin network do not specify any network, its default var keyPair = bitcoin.ECPair.fromWIF('cRgnQe9MUu1JznntrLaoQpB476M8PURvXVQB5R2eqms5tXnzNsrr', FLOTESTNET)

var privateKey = keyPair.d.toBuffer(32)

var message = 'Hey this is Ranchi Mall' var signature = bitcoinMessage.sign(message, privateKey, keyPair.compressed)

console.log(signature.toString('base64'))

// => 'ILqvGGBI89K8Tk9/BgrGPSMTB9ZY+Z88Z0GjVsx7uPTwOfQ+eNj/VZKZ40iSbUPgz6mSBvo6w1Dkzns9DqfYa2o=' // Verify a message

var address = 'oWwrvqa3QP5EHHBiUn9eAQf7d1ts5BnChG'

var signature = 'ILqvGGBI89K8Tk9/BgrGPSMTB9ZY+Z88Z0GjVsx7uPTwOfQ+eNj/VZKZ40iSbUPgz6mSBvo6w1Dkzns9DqfYa2o='

var message = 'Hey this is Ranchi Mall' console.log(bitcoinMessage.verify(message, address, signature))

// => true

References
Yelp is calling out racist businesses
By: Shamontiel L. Vaughn
Tags: Yelp, Race, Business, Racism, Constructive Criticism

Now that you’ve wiped the sarcasm dripping onto your keyboard, let’s continue. On Oct. 8, Yelp tweeted, “Today, we’re announcing a new consumer alert to stand against racism. In the last few months, we’ve seen that there is a clear need to warn consumers about businesses associated with egregious, racially-charged actions to help people make more informed spending decisions.”

Merriam Webster defines “racism” as “a belief that race is a fundamental determinant of human traits and capacities and that racial differences produce an inherent superiority of a particular race.” While there are a distinct group of people (usually people of color) who have very strong opinions that minority groups “cannot be racist,” I’m not one of those people. (I understand the argument though.) My bigger issue is if Yelp’s goal is to point out discrimination based on race in any store or business, and a member immediately wants to wipe the program off his/her phone, that pretty much tells you what their state of mind is. At no point did the platform state, “egregious, racially-charged actions to [insert minority group here].” This is a free-for-all where everyone can weigh in.

It’s also a peculiar reason to be outraged, considering Elite Yelp members like me have been calling out racism, racial profiling and horrendous store experiences for years. If anything, Yelp is late to my review party because I’ve been warning people of everything from property managers to banks to retail stores to contractors.

If customers and businesses are more outraged about being called out for racism than handling actual racism in their stores, that saves me a lot of time to know where not to go. But somewhere in these outraged people’s heads, they truly believe that minority groups salivate at the opportunity to be racially profiled. They really think that we’re just happy as hell to point out how racism ruined our day.

I have a bone to pick with people who start sentences off with “Most people” because you don’t know most of the population. But this time I’m fairly confident I’m right. Most people of color — scratch that, no people of color — are smiling ear-to-ear and happy to call out people for disrespecting them based on melanin. No minority group that is often targeted — LGBQTI+ or African-American or Asian or Hispanic or Jewish, et cetera — is just waiting for the moment to be disrespected for something that they absolutely cannot control. So if we’re complaining about a business-to-consumer experience in your facility, trust me on this. We’re more outraged, disappointed, sad, frustrated, near tears and/or overwhelmed than you will ever be while reading a Yelp review. We had to live that experience over and over again.
Wilder
By: Hannah Miller
Tags: Apocalypse, Fiction, Escapism, Flash Fiction, Obsessions

Cici was browsing; browsing through the real estate sites online incessantly, obsessed to find a large homestead and acreage. Owen, her husband was dead, a massive heart attack had taken him to a swift death. He died beside her, clutching his chest in bed that night. It should have been her to go first.

She had to play the cards she was dealt. Now, as the aging matriarch of the family, she had one job. She was left with plenty of money and the means to look after the children and grandchildren.

There were signs all around her and she didn’t like what she was witnessing. The quiet little town that she had worked and lived in for over thirty years was changing for the worse. Cici’s reality was morphing. The once quiet little town was inundated with apocalyptic signs and symptoms. She drove by a burning car today as she had gone to get groceries just five minutes from her house. Crime was up, shootings once unheard of in good neighbourhoods. Meth labs everywhere.

She stopped reading the news and lived in her own little bubble but it all kept seeping into her quiet enclave.

Cici started going to the gym every day. The beast inside her, something alien, wanted more. She was pushing iron, using all the machines, going to yoga classes to stretch out her joints. She couldn’t stop. Something was possessing her to push herself to her limits. She felt no pain, just wanted more and more.

Her children did not heed her warnings. They were too busy working and raising their children to notice the signs. To her grandchildren, she was the perfect Nana. She looked after them often, sang them lullabies, rocked them to sleep, baked them cookies. She needed to protect them from this crazy world.

Cici was going to buy an acreage in a remote location up North, near her birthplace, stock it up with supplies that would allow them to live off the grid, if necessary. The beastly angel inside her pushed her relentlessly, although her own kids were beginning to question her sanity. She didn’t care. Someday, they would gratefully join her or she would die a hermit in the woods.

It didn’t matter what they thought now. Either the world was completely mad or she was mad. She was going to throw all her finances and all her energies at this obsession. Cici was going on the run, trusting her gut for one last roll of the dice. The only place that she could feel safe was within the wilderness and she had the money she needed to do just that. It all felt right and the very thing she had wanted to do all her life.
Artis Turba COVID-19 Update
By: Artis Turba
Tags: Ripple, South Africa, Blockchain, Ethereum, Bitcoin

With the recent COVID-19 outbreak and the World Health Organization declaring the coronavirus outbreak a global pandemic this leaves no country immune to the disease. On the 23 rd of March 2020, South African President Cyril Ramaphosa declared a national state of disaster with a nationwide lockdown for 21 days commencing at midnight on 26 March 2020 until midnight on 16 April 2020 in South Africa.

Artis Turba being a global community with physical offices in South Africa, Artis Turba’s offices would be closed from Thursday 26 March 2020 to Monday 20 April 2020 including telephone support. During this time our teams would be working remotely and email and ticket support will continue

uninterrupted.

As global citizens, Artis Turba strongly support these preventive measures to ensure we slow the spread of the virus and limit the social and economic impact as far as possible. We encourage our community to comply with recommendations, regulations and lockdowns as implemented by their governments and the World Health Organization to keep you and your loved ones safe.

Here are six basic protective measures against the new coronavirus as listed on the World Health Organization’s website;

1. Wash your hands regularly and thoroughly with an alcohol-based hand rub or wash them with soap and water

2. Maintain social distancing of at least 1 metre (3 feet) distance between yourself and anyone who is coughing or sneezing

3. Avoid touching eyes, nose and mouth

4. Covering your mouth and nose with your bent elbow or tissue when you cough or sneeze

5. If you have fever, cough and difficulty breathing, seek medical care immediately

6. Stay informed and follow advice given by your healthcare provider

You can find more information here https://www.who.int/emergencies/diseases/novel-coronavirus-

2019/advice-for-public

Since our community are depositors, buyers, sellers and investors of cryptocurrencies we would like to emphasise that normal disciplines will continue to apply. We cannot predict the impact in the difficult time ahead of us, but want to ensure our community Artis Turba is open for business with the support you have become use to. At Artis Turba we’ve got you and you are good to go.

Keep Safe and Happy Trading,

Nigel and Nickey
🥔 มันฝรั่งอบชีส แบบถึงเครื่อง ถึงชีส
By: Mattika Singtosee
Tags: Cheese, อบชีส, Cooking, มันฝรั่ง, Potato

in In Fitness And In Health
Placeholder thesis — Design update — Aliens Exist 👽
By: Anthony Mandelli
Tags: Erasure Protocol, Blockchain, Ethereum, Numerai, Erasure

There is now over $2 million staked on Erasure. Follow @ErasureBay on Twitter to see new requests. Post your questions for the next Erasure Bay Office Hours.

📜 Placeholder Erasure thesis

“Erasure solves the problem of bad information online.” — Joel Monegro, Placeholder

Venture capital firm Placeholder published their Erasure thesis. Joel Monegro breaks down the Erasure protocol into its three core elements (payment, recourse, and track record), and explains how these ingredients have combined to build the foundation for the protocol today.

His conclusion?

“It may be that the only way to distinguish good from bad information online comes down to how much value its creator stakes and their track record. That’s the vision of this protocol. And once you understand how it works, and its potential, it’s easy to see how it fits everywhere.”

🎓 Upcoming Office Hours

The next Erasure Bay Office Hours is May 12th at 10am PT. Join the call to ask questions, give feedback, or make feature requests!

Post your questions on Slido and follow Numerai on Twitter or join RocketChat for the link to the video call, which will be shared on Tuesday morning!

In the last office hours, we got a simple explanation of what Erasure Bay is, Richard Craib joined, and we learned about Jonathan’s dream to see a dating app built on Erasure.

👀 Reveal added

Erasure Bay saw its first new feature with the introduction of public reveals for requests.

After a request is fulfilled, you can now choose to reveal the submission to the world, allowing anyone to download the file. To date, 10 requests have been revealed.

🏖️ Frontend facelift

Erasure Bay saw some updates to its frontend to make requesting information smoother:

‘Request anything’ means request anything

🤖 Staked on Erasure bot adds DAI

Erasure’s number one fanbot @ErasureStaked updated its regular broadcasts to now include total value staked on Erasure denominated in DAI as well as NMR.

Tracking total DAI locked up in Erasure is one way to roughly gauge activity on Erasure Bay, which currently uses DAI for staking and rewards.

🍇 Protocol stats

Chart and statistics provided by DeFi Pulse as of 8:00 am EST, May 8

Total value locked is equivalent to:

$2.5M USD

11.8k ETH

252 BTC

NMR locked:

81K

0.74% of supply locked

📊 Community-built analytics

The data science specialists at Omni Analytics Group did an in-depth analysis of some Erasure Bay metrics and neatly packaged it into an infographic:

From Omni Analytics

Erasure Bay all-star Klim teamed up with Richard Chen to build an Erasure Bay dashboard on Dune Analytics:

Explore charts on Dune Analytics

🍕 Most interesting requests

Erasure Bay has seen nearly 200 requests, with 55 coming through in April! Here are some of the most interesting ones:

🍄 Mushroom ID

🎥 Video of the full Epstein deposition

🛹 Skate park scandals

🌌 Numerai-inspired Zoom backgrounds

👽 Aliens Exist?

💕True love