fabiochiu/medium-articles huggingface dataset:
If One of These 7 Statements Applies to You, Don’t Date
By: Ellen Nguyen
Tags: Relationships, Advice, Love, Self, Dating

If One of These 7 Statements Applies to You, Don’t Date

The dating pool is full of undateable people — either they don’t care, or they just don’t know it yet.

Photo by LOGAN WEAVER on Unsplash

Are you wondering why modern dating is so painful and makes you want to punch everyone in the face? It’s because the dating pool is full of undateable people — either they don’t care, or they just don’t know it yet.

Thanks to technology, it’s easier than ever before to connect with someone and make something happen. But what that “something” turns out to be is subject to a number of factors. Even if you’re on a dating app that’s designed specifically for marriage-minded people, it’s not guaranteed that you will end up with a spouse.

It’s all up to the single people who participate in the dating market.

In other words, it’s all up to you.

While you can’t dictate the quality and behaviours of other daters, you have control over you. It’s not unwise to make yourself as mentally fit as possible to navigate the dating world with confidence and success.

If you ever wonder whether it’s a good time for you to put yourself out there, here are 7 reasons why you might want to hold fire.
TailwindCSS and Symfony’s Webpack Encore
By: Amir Bizimana
Tags: CSS, Tailwind Css, Webpack, Symfony, Programming

TailwindCSS and Symfony’s Webpack Encore

A quick guide to integrating TailwindCSS into Webpack encore

Photo by Tianyi Ma on Unsplash

I recently had the chance to choose and work with the TailwindCSS framework for a project at work.

After some initial hesitation about its utility-first CSS concept, I conducted a bit more research and interacted with the tailwind community. I eventually came away with enough buy-in to revise my initial judgement and give it a shot.

A most pleasant experience!

I’m currently working on a project that uses PHP’s Symfony framework on the backend and was tasked with integrating Tailwind into Webpack encore, Symfony’s version of Webpack.

Here’s how I went about integrating them.

Dependencies

First, we need to install a couple of dependencies:

tailwindcss itself.

itself. A package called postcss-loader required by tailwind.

required by tailwind. The autoprefixer package that helps with vendor prefixes.

Assuming you already have Webpack-encore installed, you can remove @symfony/webpack-encore , otherwise, all dependencies stowed together, we end up with the following command:

yarn add --dev @symfony/webpack-encore tailwindcss postcss-loader autoprefixer

Composer being our package manager. I’m using the yarn add command but the same outcome could be achieved with npm via npm install .

Configuration

There are four files I configured and/or created:

tailwind.css

tailwind.config.js

postcss.config.js

webpack.config.js

tailwind.css: I created this file under my project’s CSS assets directory — assets/css/tailwind.css — but you can put it anywhere you like. The “@tailwind” directive injects the base , components , and utilities styles into your CSS.

tailwind.config.js: This file is optional, but if you need to customize tailwind in any way (e.g., adding a prefix to class names, customizing a colour or font size, etc), you’ll need to create this file via the tailwind CLI by running npx tailwind init . This will generate the file in your root folder.

postcss.config.js: I created this file in the root of my project. This is where we specify the PostCSS plugins we want to use to process our CSS.

webpack.config.js: If you were already using Webpack-encore, the file should already be configured, otherwise this could help. The config for this file was just as swift as the others: I added .addStyleEntry('tailwind', './assets/css/tailwind.css') pointing to our injected styles in tailwind.css and enabled PostCSS loader, as shown below:

Templates
Access the world of fine art with Maecenas
Tags: Blockchain, Cryptocurrency, Investment, Technology, Art

Accessing the world of fine art is a dream for many — little wonder when considering some of the sales that have been made this year alone.

Many paintings are now being sold at auction for hundreds of millions. One of the latest is Modigliani’s Nu Couché (Sur le Côté Gauche), a 1917 oil painting that was sold at Sotheby’s New York auction house mid-May for an incredible $157.2 million USD.

Over at Christie’s and Phillip’s in Hong Kong at the end of May, works from Chinese-French Modern master Zao Wou-Ki dominated the auction scene. At an evening at Christie’s alone, Zao’s work 14.12.59 made HK$176.7m ($22.6m USD), representing the third highest price for the artist at auction.

For millions who want to join the world of fine art investment, taking part in these auctions is an unrealistic ambition. However, this could potentially no longer be the case — all thanks to blockchain technology.

Blockchain makes it possible to participate in fine art ownership

Fine art ownership isn’t only a world for those who can splash the cash. Many also explore the possibilities of an art investment to preserve their wealth and grow it in an alternative market that is less volatile than many others.

There are schools of thought within the industry, though, that the nine-figure sales sum is becoming ever more common. While this may be music to the ears of some investors, and auction houses who make large commissions on items sold, it also serves to underline how closed the art investment market is to so many worldwide.

Very few individuals can compete with investors and art funds with hundreds of millions — even billions — at their disposal to invest in the world’s most famous pieces.

Maecenas ultimate goal is to disrupt that market.

Enter the incredible world of art with Maecenas

Disruption can mean a lot of things. From our perspective, we’re building Maecenas to diversify the market and open up a huge new array of options for individuals to have access to art, presenting them with ways to enter this world outside the traditional avenues.

For centuries the art market has stayed relatively unchanged and unchallenged. The Maecenas platform has been built to decentralise and disrupt this, using blockchain technology to offer an alternative to the auction houses and allow investors across the planet to buy shares in some of the world’s most well-known and famous works of art.

Maecenas is designed to create an art market without intermediaries, to make information more accessible to potential investors, to open new avenues of capital generation for galleries and collectors, to reduce overall costs, increase liquidity and — essentially — open the global art market up to everybody.

Find out more about how the Maecenas platform is set to decentralise and democratise the art world with blockchain technology by reading our briefing documents.
How Do We Know if the Laws are Working?
By: Fsi Student Programs
Tags: Tecfsi, Brussels, European Union, Stanford, Fsi Students

About the author: Sarah Myers ’21 is an FSI The Europe Center intern at the Lisbon Council in Brussels, Belgium.

So far, the work I’ve done at the Lisbon Council has revolved around finding information. I’ve spent a lot of time researching particular policy areas, trying to find information about specific policies and their effects. Sometimes, this can be challenging.

One of the projects I’m working on is about intermediary liability. Intermediary liability, in this case, means the extent to which an online service provider is liable for content that it hosts. At the turn of the century, the US and European Union both decided that online service providers are not liable for content that they passively host. This allowed several tech giants, including Facebook and Google, to grow. Now, however, these governments are reconsidering this policy. In the last few years, Facebook has struggled to avoid passively hosting hate speech, disinformation, incitement to terrorism, and copyright infringement, and Google has sometimes directed people to the most popular websites rather than the most accurate ones. Both companies have taken steps to address these problems. Facebook has increased its efforts to remove damaging content, and Google has introduced a rating system for websites which is designed to move misleading entries lower down in the results list. Both companies, along with Twitter, voluntarily signed on to the European Commission’s 2016 Code of Conduct for social media platforms. Since then, all three have increased the speed at which they remove hate speech.

The European Commission’s Berlaymont Building, near the office where I work

Some policymakers and scholars believe that making these companies liable for the content they host will force them to take a more active, and therefore more effective, approach to removing illegal or damaging content. Unfortunately, as I’ve discovered while working on this topic, we have almost no evidence about how changing intermediary liability laws might change the internet. Some people believe that increasing liability for intermediaries will lead to a safer, better internet. Others believe that it will create an overwhelming and damaging censorship regime, as companies err on the side of caution to avoid legal problems and censor anything remotely controversial. But, because the EU and US adopted nearly identical intermediary liability laws and have not changed them since, we do not have real world evidence about the potential impacts of different laws.

China has adopted full intermediary liability, meaning that online service providers are liable for all content. This has effectively outsourced censorship of the internet to private companies, creating an effective and cheap (for the government) censorship regime. But many people in the US and EU view this as exactly the kind of censorship-run-amok scenario which we should strive to avoid.
Lab Data Visualization
By: Charde Alicyn
Tags: Data Visualization

Social Media Popularity Trend Bewtween Youtube and Spotify over 10 years time. This chart showcases the difference in poularity between spotify and youtube overtime. It compares how much both sites are used throughout the course of 10 years. //datawrapper.dwcdn.net/O1sMx/1/

This is a pie chart of student test scores. //datawrapper.dwcdn.net/9PHmY/1/

This is a bar chart recording the comparison of two NFL players for the title of NFL Best Player of All Time. //datawrapper.dwcdn.net/MVgJ5/1/

This Chart shows the amount of US Job Losses over time post recession. //datawrapper.dwcdn.net/PHiOC/1/
A Year in Review
By: Tanya Santos
Tags: Best Of, Articles, Photography, Community

Major Milestones

55,136,436,858 viewed images in 2019

195,038,108 downloaded images in 2019

In May, we reached 1 million images contributed to Unsplash, allowing more people to create, more problems to be solved, and more progress to be made. And we owed it all to our passionate, creative community.

It didn’t take too long after that to reach one billion all-time photo downloads in July. Which means, our community has inspired and enabled 1 billion creations — from presentations to paintings.
Ache
By: Matthew Broyles
Tags: Romance, Love, Sex, Poetry, Erotica

I know

There are things to do

Important things

Tasks which are necessary for survival

Self-actualization

Happiness

But when you are close

So close

The amount of restraint required

To leave you to your appointed rounds

It physically hurts

There is an ache

It doesn’t start where you think it might

First

My eyes attempt restraint

But they cannot help themselves

And gaze upon my treasure

Tracing over tantalizing curvature

Nature’s blessed gifts

To you and me

I stop to linger at the favorite places

Hands twitch

Fingers remembering familiar paths

Pressure points

Anchors

I feel it all again

Softness

Heat

Oceanic motion

I clench my fists

Shutting it down

Not now

But no

The tension simply moves

Elsewhere

I twist in my seat

And watch you

Lost in your craft

Paint-stained hands

Wheels turning in your head

It is when you are the most beautiful

Save for those…other times

I remember

All of me remembers

Fire

Knotted brows

Sharp breaths

Fingernails sunk deep

Walls echoing

Neighbors woken

Sigh

Looking away

I need to let you work

I need to work, too

So much to do

Always so much to do

So many tomorrows

That we have shunted this work off onto

To bathe in each other’s attention

Immolating ourselves in the present moment

Until the bill comes due

And yet

I think

Remembering the taste of your bare neck

The convulsions when teeth take hold

And you surrender

Couldn’t all the rest wait

Just one more day?
Tik Tok Mom
By: Background Noise Comics
Tags: Motherhood, Comics, Humor, Shelter In Place, Tiktok App

Written by

Daily comic by Lisa Burdige and John Hazard about balancing life, love and kids in the gig economy.
Nor. Cal. Hood Rat’s End
By: Steve B Howard
Tags: Street Life, Poets On Medium, Poetry, Poem, Life

poetry

Day in the life and life in a day.

Early 90’s hood rat living the

Street Code, morals and ethics

of the ruthless street soldiers.

Roll of twenties in your pocket

ill gotten gains with the rock

residue and a Glock in your waist

band.

Claiming the blue, but the dank cap don’t

quit hide the fear in your eyes. Too

bad the shit didn’t scare you quick

enough to out run the bullets that

cut your gang life short.

So sad you killed the kid you’d been,

the one with the skateboard

and green squirrel Mohawk,

just for some fake hardness and

street cred that paid out in

death.

Your mama and all your friends cradle

your memories in our soft laps. The ones of

the sweet kid before he got sucked into

something too big and too cruel for

his mortal coil to contain.
Time Is Everything
By: Mike Ortega
Tags: Poetry, Life, Culture, Self, Self Improvement

When I saw my Parents

Leaving this world

left me and my sister alone

I realized in my childhood

Time is everything.

I love her from bottom of my heart

She broke it By leaving me

Now I permanently live with her memories

I realized in my adolescent

Time is everything.

One day In my office

My Boss fired me

with no reason

I pulled out by Boxer

I Realized in my young age

Time is every thing.

We are zero in front of time

Time control us

Only thing we can do is

Let go things which we can’t control.
ICO is dead, long live TTO.
By: Attic Lab
Tags: ICO, Tto, Blockchain, Atticlab

At Attic Lab we think that retail investor participation in funding start-ups is of paramount importance for the blockchain sector to realise its full disruptive potential. We are pleased to announce we’re partnering with SignalX to bring their Trusted Token Offering (TTO) service to market to restore investor confidence in blockchain venture funding.

If you’re an aspiring project seeking to raise funds, this is your opportunity to build a decentralised trusted start-up venture funding model together with us. All you need to do is complete a brief survey.

“If we want the sector to move forward, we must rebuild capital formation from the ground up. We believe the SignalX TTO model empowers projects globally to raise capital with trust at the core, allowing investors to better assess their risk and make more informed decisions on the projects they choose to support.” Jonathan Hooker — CEO — SignalX

Recent research from Ernst & Young found as many as 83% of ICOs are scams that have destroyed billions of dollars of investor capital. Not surprisingly, investors have retreated and as a result, legitimate innovative projects now struggle to access funds they need to commercialise their concepts.

To restore confidence and trust we must answer two questions:

· Investors — Which projects can I trust?

· Projects — How do I prove legitimacy and trustworthiness to investors?

The SignalX TTO rebalances the risk between start-up founders and their investors, by placing investor protection at the core of the funding model. Project trustworthiness and legitimacy is established by making the founders accountable for their claims and performance.

In the SignalX TTO model projects failure to perform as contracted, may result in the unspent funds held in the custody contracts being returned to investors. Projects establish funding contracts up-front detailling the basis of their eligibility of funds to be released to them throughout the lifecycle. Investors no longer need to trust the project founders to do the right thing instead they can place their trust in the SignalX contracts and independent assurers to protect their interests.

We are excited to be working with SignalX, aspiring start-up projects and regulators to create the new standard for trustworthy capital formation in the blockchain sector. A standard that better serves all market participants and we believe can restore confidence and reinvigorate sector innovation.

The SignalX TTO model is the first decentralised capital formation model built with transparency and accountability at the core that was missing from ICO v1.0.

Again, if you’re a project rising capital, we would love you to take 5 minutes to complete this survey.

Follow us!

Website: http://atticlab.net/eos/

Twitter: https://twitter.com/atticlab_it

Facebook: https://www.facebook.com/atticlab/

Reddit: https://www.reddit.com/user/atticlab_it

Steemit: https://steemit.com/eos/@attic-lab

Medium: https://medium.com/eosatticlab

Golos: https://golos.io/@atticlab

Telegram Chat: https://t.me/atticlabeosb
¿Qué es la correlación?
By: Cassie Kozyrkov
Tags: Experiment, Correlation, Data Science, Ciencia Y Datos, Statistics

Head of Decision Intelligence, Google. Hello (multilingual) world! This account is for translated versions of my English language articles. twitter.com/quaesita

Follow
How to deal with sorting algorithms: Merge Sort
By: Anastasia Orlova
Tags: Data Structures, Sorting Algorithms, Algorithms, JavaScript

Speaking about sorting algorithms, one should always remember: there is more than one approach. Last time we talked about Insertion Sort and worked with one unsorted array. This time we’re going to try a different approach and more complicated pattern — Merge Sort. Our starter pack is two sorted arrays, our task is to combine them into one sorted array.

Let’s crush it!

Actually, our approach is not that different from what we did last time with Insertion Sort. Our first step is to find a minimum integer and remove it from the array but this time we’re checking two arrays instead of one.

let firstHalf = [2, 6, 7, 8, 11]

let secondHalf = [3, 4, 5, 9, 10] //our two sorted arrays function findMinAndRemove(firstHalf, secondHalf) {

let minfirstHalf = firstHalf[0];

let minsecondHalf = secondHalf[0];

//here is first item of each array if(minfirstHalf < minsecondHalf) {

return firstHalf.shift()

} else {

return secondHalf.shift()

}

}

//The shift() method removes the first element from an array and returns that removed element. This method changes the length of the array. findMinAndRemove(firstHalf, secondHalf)

//2 firstHalf

//[6, 7, 8, 11]

Our second step is — surprise! — actual merging. Inside of the merge function, we will call findMinAndRemove function until one of the arrays is empty,

function merge(firstHalf, secondHalf) {

let sortedArr = [];

let currentMin; while(firstHalf.length != 0 && secondHalf.length != 0) {

//we need BOTH condition to be true to make the loop run and when one of the arrays is empty, we know that the other one has only sorted elements, because well, it was a sorted array from the very beginning :)



let currentMin = findMinAndRemove(firstHalf, secondHalf)

sorted.push(currentMin)

//we add the minimum integer of both arrays

}

return sorted.concat(firstHalf).concat(secondHalf)

} //The concat() method is used to merge two or more arrays. This method does not change the existing arrays, but instead returns a new array.

So, that’s how we merge two sorted arrays. Now, let’s use the same logic with one unsorted array.

So, the first step we should take is to split an unordered array into subarrays until each one element is a separate subarray.

Our second step is to merge these subarrays. IMPORTANT: merge only works with sorted arrays, so when an array has only one element, it is automatically sorted. And then we can merge and merge until it’s one sorted array.

Here is the code.

function mergeSort(array){

let midpoint = array.length/2

//first step - we split array every time we call a function

let firstHalf = array.slice(0, midpoint)

let secondHalf = array.slice(midpoint, array.length) if(array.length < 2){

return array //when it's just one element, we return this one-element-array

} else {

merge(mergeSort(firstHalf), mergeSort(secondHalf))

}

}

That’s the basics of sorting and merging. Have fun!
Announcing the LGO Community Platform
By: Hugo Finkelstein
Tags: Exchange, Community, Rewards, Cryptocurrency, Blockchain

Dear LGOers,

We would not be where we are today without your ongoing support.

Today, we’d like to express our gratitude and are proud to announce the upcoming launch of the LGO Community Platform.

What is it?

After researching and analyzing different blockchain/crypto community platforms (including the success on Discord), we have decided to create our own platform. We have built a place where community members will be able to learn, interact and share resources around LGO while receiving rewards. Additionally, they will receive the latest LGO news and updates on there.

Get access to the exchange via the LGO community platform

The community platform will serve as a bridge between community members and our exchange. On a weekly basis, we will review batches of users who wish to gain access to the exchange. These batches will automatically be defined by a leaderboard, which is defined by users’ activity online. A countdown and live updates will be available to users in an effort to keep the community engaged.

Leaderboard, badges & point system

Initially, points will be given to a user for registering on the platform. Specific actions taken by the user will then generate points such as sharing content and referring other users. Based on their total score, users will go up or down on the leaderboard. Users with higher scores will gain access to more features on the platform. On top of that, different badges will be granted based on the amount of points received. These badges will allow users to get access to special features, prizes and other rewards to be announced.

Resources — Learn more about LGO, its products and the overall industry

Another aspect of our community platform and ecosystem we’d like to emphasize is knowledge.

On the LGO Community platform, users will be able to access unique resources in different formats. This will allow you to learn about the different features and products that make LGO unique. Technical guides, features, analyses, and updates will be included. Different categories of topics will reunite traders as well as cryptocurrencies and blockchain enthusiasts.

With these resources, users will gain points based on the content they post. Additionally, some users will have the privilege of posting resources based on their status on the platform.

When?

The community platform is currently under security testing and the goal is to launch it this month. We will keep you updated on our progress and will provide more details on the different features within the next few days.

Together, we will bring transparency, security, and fairness to the entire digital assets ecosystem. We are looking for your continued support to make this community-based platform excel.

The LGO team
Understanding Important Features in Marketing Campaign Analysis
By: Sidney
Tags: Eda, 데이터분석, Heartcount, Data Science, Statistics

This morning I encountered an article about marketing campaign data analysis using “correlation funnel”, which is basically a plot(visualization) that lists important(highly-correlated) variables to understand/predict a target variable.

[source: xkcd]

To use correlation funnel, you have to go through some data wrangling process and perform binary correlation analysis using R; anyhow, the plot shows all the correlated variables from the highest correlation to the lowest in a single chart, the major benefits could be:

Speeds Up Exploratory Data Analysis

Improves Feature Selection

Gets You To Business Insights Faster

And I downloaded the same dataset and compared the correlation funnel chart with HEARTCOUNT’s difference analysis chart:

[R correlation funnel plot vs. HEARTCOUNT difference analysis]
UPDATE ON FLAGSHIP
Tags: Steemit, Questions, Steem, Games, Crowdini

As you may remember last December I created a Steemit account called Flagship that runs as an upvote service. The primary goal of Flagship was to help get Crowdini more earnings on the results posts.

Initially I partnered with Bumper, another upvote bot. That partnership ended in March when Bumper decided to shut down.

From March on I have been running Flagship as an independent upvote service. And continue to upvote each Crowdini results post with 100% of Flagship’s voting power

In the last few weeks the STEEM price has dropped back to it’s levels from last November. Around a $1.05.

Because of this the rules I set in place for Flagship just aren’t working anymore. And the amount of money I need to put into Flagship each month to pay for the STEEM delegation just to get the votes for the Crowdini posts is getting close to not being worth it.

So IF the STEEM price stays below $2.00 through the end of the month I will be shutting down Flagship. I would then use the money I budgeted for Flagship on upvotes for the Crowdini results posts.

And that’s the update on Flagship.

All the best,

Jason
Over 600,000+ Transactions Recorded on Knowledge Cortex
Tags: Cryptocurrency News, Blockchain Technology, Blockchain Startup, Blockchain Development, Blockchain Application

The Knowledge Cortex blockchain has been recording thousands of transactions monthly since it’s launch September, 2018. As of February 2019, Cortex has recorded over 600,000+ transactions which can be viewed live on the knowledge.io website.

Cortex is recording question responses within the TriviaSpar app as transactions on the blockchain. With over 150,000+ downloads of TriviaSpar at present, Cortex will continue to grow in transactions recorded at a pace of hundreds of thousands monthly with an expectation to pass 1 million transactions by the end of Q1 2019. The Knowledge Team will continue to update the community as we reach further heights in number of transactions recorded.

Future updates for CORTEX will record interactions from the KnowledgeBot, and in addition more transaction types being recorded from TriviaSpar. Stay tuned to our Twitter & Medium blog for future update announcements.

To learn more about TriviaSpar’s Cortex integration, visit our website: https://triviaspar.com/

TriviaSpar: The only blockchain integrated trivia app on Google Play or Apple App Stores

TriviaSpar is a trivia quiz game app available for download on Google Play and Apple App Store.

As of Q1 2019, TriviaSpar is also now available on the Amazon App Store.

TriviaSpar contains over 19 million objective fact based trivia questions sourced from several data partners. Questions in the TriviaSpar app range across hundreds of categories from entertainment, to art, to science, to professional skills questions like programming languages. By playing TriviaSpar, user answers are recorded on the blockchain all while winning KNW Tokens in their trivia matches. KNW Tokens can be redeemed in app for real life products that ship directly to your home!

Download TriviaSpar & Win KNW Tokens:

https://triviaspar.com/download/
Code Smell 44 — Magic Corrections
By: Maximiliano Contieri
Tags: Programming, Software Development, Code Smells, Software Design, Clean Code

Code Smell 44 — Magic Corrections

Compilers are smarter than us. On a Friday night production deploy they betray us.

Photo by Senor Sosa on Unsplash

Problems

Fail Fast

Declarativeness

Ambiguity

Solutions

Fail Fast Do not trust magic coercion. Be Explicit

Examples

Type Casting

Sample Code

Wrong

Right

Detection

Many of this vicious are encouraged by languages themselves.

We should be very declarative and explicit and don’t abuse language accidental magic solutions.

Tags

Declarative

Smart

Conclusion

Programmers pretend to be smart by exploiting language features.

They feel they belong to community standards that enforce bad behaviors like a sect.

Relations

More Info

Credits
Linguistic Currents
By: Aaron Quist
Tags: Poetry, Ripple, Scripture, Water, Haiku

Haiku is a form of poetry usually inspired by nature, which embraces simplicity. We invite all poetry lovers to have a go at composing Haiku. Be warned. You could become addicted.

Follow
How to Read Paintings: The Resurrection by Piero della Francesca
By: Christopher P Jones
Tags: Art History, Christianity, Religion, Italy, Art

There were no direct witnesses to the moment of Christ’s Resurrection. Since there was no scriptural guidance, the church avoided the portrayal of the subject for many centuries. It was only in the 14th and 15th centuries that the representation became more widespread and in this growth, took on a more devotional rather than narrative emphasis.

Piero drew on Classical traditions in the composition of the work, with a stress on geometric order and harmony. This can be seen not only in Christ’s posture but in the entire layout, which uses a triangle as its basic form, where Christ’s head sits at the apex. This form adds a degree of formal gravity to the image. In addition, the trees of the landscape behind are placed almost-symmetrically on either side of Jesus. The trees on the left are leafless, indicating the barren setting of winter, whereas those on the right are in the flush of springtime — symbolic of the hope of the Resurrection.

Detail of ‘The Resurrection’ (c. 1460s) by Piero della Francesca. Fresco. Palazzo della Residenza in the town of Sansepolcro, Tuscany, Italy. Image source Wikimedia Commons

Piero was commissioned to paint the Resurrection sometime in the early 1460s. It was made as a fresco work for the civic hall of Sansepolcro in Tuscany, Italy. The specific room where the fresco sits was the meeting hall for the Conservator — the chief magistrates and governors of the town.

The location of the fresco has an important bearing on its meaning, since the building — the Palazzo dei Conservatori di Sansepolcro — played an important role in the civic life of the town. Placed high on the interior wall facing the entrance, the magistrates and governors would have prayed to the image before starting their councils.

Thus, the painting was not just a description of the glory of Christ’s Resurrection but also a comment on the eminence of the city of Sansepolcro. Indeed, the name of the city means Holy Sepulchre, deriving from the presence of two relics of the Holy Sepulchre carried by pilgrims in the 9th century. The magistrates and governors, about to undertake their civic duties, would pass before the painting and be reminded of the esteem of their city’s heritage — and the gravity of their present responsibilities.

My name is Christopher P Jones and I’m an art historian, critic and the author of How to Read Paintings. (Click link for Kindle, Apple, Kobo and other e-reader devices).

Read more about my writing at my website.

Would you like to get…

A free guide to the Essential Styles in Western Art History, plus updates and exclusive news about me and my writing? Download for free here.
FT achieves Cyber Essentials Plus Certification
By: Ft Product
Tags: Cybersecurity, Data, Ft, Cyber, Security Services

FT achieves Cyber Essentials Plus Certification

by Rosie Crocker

After significant effort the FT Cyber Security team has successfully achieved its Cyber Essentials Plus certification — the highest level of cyber security accreditation available, from the Government backed Cyber Essentials scheme.

The Cyber Essentials scheme was put in place to enable the UK government to reduce levels of cyber security risk in its supply chain. Achieving the basic level is necessary for bidding on central government contracts that involve handling of personal information, as well as for providing certain IT products and services.

Certification is carried out by a committee selected by the National Cyber Security Centre (NCSC). Our certifier carried out remote checks on our systems and then visited us to carry out a thorough investigation. They determined areas where change was necessary to be compliant and presented us with a list of necessary changes. Over a period of several months throughout 2017, we made the necessary changes and managed to achieve the highest level of accreditation.

Here we all are celebrating our success with our certificate! Incase you are wondering if this is a box ticking exercise that any organisation could achieve, this article (about how each of the 200 NHS Trusts assessed For Cyber Security vulnerabilities) explains how companies can fail to meet the Cyber Essentials Plus standard.
Winter With No Beginning
By: Isak Dinesen
Tags: Moon, Soul, Illumination, Poetry, Solstice

"Don't ask what the world needs. Ask what makes you come alive. What the world needs is people who have come alive. " - Howard Thurman

Follow
The Desertification Of the Soul
By: Moni Vazquez
Tags: Consciousness, Polític, Politics, Earth, Climate Change

Fires have been busy sanding neighborhoods and forests. We don’t have fire seasons anymore, it’s a first come first serve scenario. Both the southern and northern hemisphere have suffered from the worst fires in modern history, every million-acre destroying event more terrifying than the last.

A pandemic is burning bridges amongst humans, preventing shaking hands, hugs among family and friends, in person gathering and classes, taking away part of what makes us the social animal we are. Close relationships and physical contact. A last bite out of compassion and brotherhood.

Politicians are setting each other on fire by fueling divisions, discord, differences; none left to fight to find our nation’s common grounds. Hope for justice turned to ashes. Crumbles of a dream turned into nightmare.

Crowds cry, armed to fight an enemy they can’t see. Blind and deaf, on an unconscious quest for inner peace they can’t recognize as goal, drowning in debts, despair, unclenched fears of days and nights of uncertainty. No one leading, no one in charge but panic and ignorance. Loneliness is reigning the kingdom of dead souls.

Forests, gone. The unstoppable magnet of power sawing through our lungs, one here, one there, this time we cut Australia’s size… next months it’s going to be some more. And more, and more as we take but never give, asking 'experts' what phenomenon that is?

We kill all that is alive and suffer in the process. The kingdoms of Earth a transparent shadow of life. A kid woke up to show the way but hit fake ears filled with tar. Greta Thunberg and her following, with gusts of energy tried to take nails out of our collective coffin; new generations lack the speed of greed. Lost in an ether that will not save them anymore. Forgotten the way of Men.

We’re not dead. Yet. Some fight with every trash they save, others covered by the illusion of eternity. We sit and hope more might wake up in time but who can wake up? Those who’s worries can’t let them sleep? Those so hungry they have no forks, just knives to stab their neighbors with?

Please human. You’re not alone. It feels so far it feels so thick but we’re in this together. Blue white yellow, reds and whites…those are colors for masters to paint a world that lives! Alive. There’s time.
Pawn
By: Cyndi Rooney
Tags: Social Justice, Homeless, Poetry, Veterans, Blue Insights

Pawn

a poem

Photo by Benjamin Faust on Unsplash

fought for his country

one nation under god

happy to pay

for the fight

in the aftermath

reduced to nothing

more than a sign

held by fatigues

on the corner
The Tragic Story of Skylar Neese, Brutally Murdered by her Best Friends
By: Hannah Marland
Tags: True Crime, West Virginia, Crime, Murder

Skylar Neese was a sixteen-year-old girl who lived in Star City, a sleepy town in West Virginia. Skylar was the only child of parents David and Mary, so was often described as ‘spoilt rotten.’ In terms of academia, Skylar was a high achiever, excelling in almost every subject, including those she disliked.

Since being a toddler, Skylar’s best friend was a girl named Morgan Lawrence. The two were inseparable for most of Skylar’s early life, and the two families were extremely close as a result. Though the two slowly drifted apart as Skylar made new friends, Morgan insists to this day that the two would have always been ‘sisters.’

Skylar’s other best friend, Sheila Eddy, was also an only child, and the two entered freshman year together. It was around this time that a new girl named Rachael Shoaf joined the school, and the three became joined at the hip, often referred to as ‘The Three Musketeers’.

The trio gained a ‘rowdy’ reputation; they often snuck out after curfew, went to parties, drank, and did drugs. Their friendship was extensively documented on social media, mostly Twitter, on which the three girls were extremely active.

On July 6th, 2012, Skylar arrived home from a late shift at Wendy’s and retired to her bedroom. Little did her parents know, this would be the last time they saw their daughter.
How to Write a Concurrent FTP Server in Go (Part 2)
By: Angus Morrison
Tags: Go, Programming, Golang, Concurrency, Ftp

ls/LIST

Now that users can change directory, they’ll want to know what’s inside. The client-side ls path/to/file command reaches the server as LIST path/to/file , and it will come as no surprise that we have a (c *Conn) list handler function to match.

First, we build an absolute path out of the server rootDir , the connection’s workDir and the optional file path arg provided to ls . If the user didn’t provide a path argument, we list the contents of the current workDir .

ioutil.ReadDir is an extremely useful function that returns a slice of os.FileInfo , describing each file in a directory, or an error if the target folder is inaccessible. In this way, we can validate the path and retrieve the FileInfo in a single operation. If the path is good, we issue an initial response: 150 File status okay; about to open data connection.

This is a more complex operation than we’ve seen so far. When sending anything other than statuses, the server must establish a second, temporary connection to the client, known as the data connection, or dataConn . Moreover, the connection must be made to a specific port that the FTP client has selected in advance.

How is this achieved? Before sending the LIST directive to the server, the client sends another command behind the scenes: PORT . PORT has a six-byte argument, corresponding to the four parts of an IP address, plus two bytes to represent a port number up to five digits long, e.g., PORT [127,0,0,1,245,1] . Be aware that your client may use subtly different formats but, if your server has proper logging, you’ll soon spot the difference.

ftp.Serve has a case for the PORT command, routing the IP address argument to (c *Conn) port , below.

This is the mechanism by which we set the final missing field on ftp.Conn , dataPort . dataPortFromHostPort parses the six-byte IP address format into a struct of its parts that we store on the ftp.Conn instance. toAddress converts that struct to a traditionally formatted IP-address-plus-port that the server can connect to with net.Dial .

How do you create a port number up to five digits long from two separate bytes? p1<<8 + p2 . Start by left-shifting p1 by eight places. If p1 = 00011011 , p1<<8 = 0001101100000000 . When you add p2, it fills the eight bits left empty by the shift. p2 = 11111111 ; p1 + p2 = 0001101111111111 = 7167 .

Once we have the IP address provided by the client, the data connection is established with a call to (c *Conn) dataConnect , a simple wrapper for net.Dial . Note that dataConnect returns a struct satisfying the net.Conn interface ( net.TCPConn ), not our custom ftp.Conn .

As with our primary client connection, we have to remember to close it once finished, which necessitates a defer dataConn.Close() . From that point on, listing the directory contents is a matter of looping over the slice of os.FileInfo , writing each file name to dataConn , and applying the correct line terminators with EOL . Here’s the second part of list to recap:
App Startup: A New Architecture Component
By: Siva Ganesh Kantamani
Tags: AndroidDev, Android, Mobile, Jetpack, Programming

Introduction

Users expect applications to be responsive and fast. When your app fails to meet these basic requirements, users often rate it with poor reviews in the Play Store, or even worse, they might uninstall the application.

Either way, it’s no good for business. Lately, the Android team is focused on providing better tools like Hilt (to implement DI), CameraX (to handle numerous camera-related issues), and Paging3 (to implement paging comfortably than ever with Kotlin Flow).

Now there’s App Startup library — a new kid on the block. It’s time to optimize the app startup time. The App Startup library provides a straightforward and simple way to initialize components at application startup.

Both library developers and app developers can use App Startup to streamline startup sequences and explicitly set the initialization order. This will save tons of time for developers so that they can concentrate on what matters.
Before the Lights Flicker Off
By: Samantha Lazar
Tags: Poetry, Vision, Life, Self, Reflections

POETRY

Before the Lights Flicker Off

A poem of the self

Photo by Content Pixie on Unsplash

what if you just

stopped playing the game

what if you suspended

your disbelief just for a moment

would you see yourself there

in that ten-second pause

would you stare fondly

at your reflection and ask her to

write back more often

what if you didn’t come back

would you call after yourself

asking her to play again

could you keep saying no

until finally, fleetingly

like the shadow before the

lights flicker off

she stops asking
How Democrats Go Forward
By: Bernie Sanders
Tags: Democratic Party, Bernie Sanders, Politics, Democrats

Photo Credit: AP

It should be clear to every Democrat by now that when we’ve lost the presidency, the Senate, the House, and two-thirds of state legislatures, we need to seriously rethink who we are and how we best go forward.

The Democratic Party is the party of diversity. We have proudly led the fight against racism, sexism, homophobia, xenophobia, and for the rights of immigrants. Especially under a Trump administration, we are not turning back. We are going forward. There can be no compromise on bigotry.

Our job is to expand diversity. We want more women, more African-Americans, more Latinos, and individuals of all ages, colors and creed to be involved in the political process. But to think of diversity purely in racial and gender terms is not sufficient.

Yes, we need more candidates of diversity, but we also need candidates — no matter what race or gender — to be fighters for the working class and stand up to the corporate powers who have so much power over our economic lives. We need all of our candidates to have the courage to stand up to the Koch Brothers, Wall Street, drug companies, insurance companies, oil companies, and fight for working families — not just the top one percent.

Our rights and economic lives are intertwined. Now, more than ever, we need a Democratic Party that is committed to fulfilling, not eviscerating, Dr. Martin Luther King’s dream of racial, social, and economic justice for all.
How I Learned to Love Myself Without Getting to My ‘Goal Weight’
By: Estrella Ramirez
Tags: Self, Body Image, Self Love, Women, Lifestyle

What is the purpose of establishing a ‘goal weight’?

What does a goal weight mean to you?

Is it a weight at which you will be happy?

Is it a weight where you will become beautiful?

Each time I’ve set a goal weight for myself, it was because I thought that if I reached that number, I would be happy.

I would finally be comfortable in my own skin.

Full disclosure, I never achieved any of my goal weights. There had been a few times I was close, only 5lbs to 10lbs away. The closer I got to my goal, the more unhappy I became because it never felt like enough. Getting closer to my goal weight didn’t magically make me happier. The closer I got to my goal weight, the more critical I was about my body.

Physically I could run a 5K, which was a huge deal considering I’ve never been a runner, read as running was the bane of my existence. Instead of celebrating this achievement, I belittled myself. If I wasn’t so fat, I could run even faster. At this point, not only was I not taking care of my physical health, but mentally and emotionally, I was wrecked.

I wasn’t any happier, and I wasn’t any healthier.

I brought my weight down by skipping meals and taking an over-the-counter medication used to suppress my appetite as a side effect. Neither of these habits were healthy or sustainable.

Growing up seeing Kate Moss’s defined cheekbones, delicate collar bones, and stick straight frame was what I thought the ideal female body should look like. The easiest way to achieve this was to eat less and exercise more. Unlearning these types of abusive behavior against my physical body was hard.

In addition to unlearning these behaviors, I also had to change the way I talked to myself, about myself. Something that is much easier said than done.
Worn-out cotton sacks
By: Dan Mccarthy
Tags: Religion, Man Selling Electricity, Louis Rogers, Nature, History

At that time, my dad had bought an old truck. He said to my mother, “Prissy, we are going to load all these kids in the truck and we’re gonna drive to Pine Bluff. There’s a spiritual man coming to church who believes in prayer. I’m gonna fast and pray that we’re going to go down there. I have one hundred dollars and I’m going to give money in the offering. It’s all we have. I’m gonna pray and believe that God will send us some rain.”

We went down there. Daddy never went up to the front, but when that man asked if anybody had spiritual prayers, my dad stood up with a hundred other people, I guess, and he started praying. When they passed the offering plate, my dad gave one hundred dollars and my mother said, “You know, there’s so many things we need that we could use this one hundred dollars.”

Dad said, “If two or three are gathered together and pray and ask and believe, it will happen.”

That night, when we were driving home, we were in the back of the truck. The windows was knocked out of the truck. My dad always kept old worn-out cotton sacks that had tar on the bottom that he would hang over the door so he could slam the door and hold the sack in place so rain wouldn’t come into the truck. On the way back home, it started raining. My dad got out of the truck and stood there in the rain and just prayed! He finally got all those cotton sacks with tar over the windows so the rain wouldn’t come in. My sister and I were in the back and I remember crawling up into them old cotton sacks so we wouldn’t get just drenched. That year we had some of the best crops we’d ever had while everybody else’s was burning up.

as told by Kathryn Bajorek

Stories of Survival: Arkansas Farmers during the Great Depression by William D. Downs, Jr.
The best things in life are Always Free
By: Paul Guerin
Tags: Free, Always, Services, Oracle Cloud, Tier

Who doesn’t like something for nothing?

Especially when it comes to leading technology from the best cloud service providers.

Now when it comes to cloud services; most of the biggest cloud service providers offer 2 types of free offers:

Free for a limited time, or maximum credit amount.

Always free.

Either offer is generous, but the free offers don’t apply to all cloud services.

What if we had a specific criteria?

What if we are interested in an always free offer for just compute and relational database services?

So now the question is, what do the biggest cloud service providers offer for always free compute and relational database services?

Let’s find out.