fabiochiu/medium-articles huggingface dataset:
Part 4. Node.js + Express + TypeScript: Unit Tests with Jest
By: Alex Losikov
Tags: Mocking, Unittest, Typescript, Test Coverage, Jest

It is not possible to develop an application efficiently without Unit Tests. This statement is more than the truth about HTTP API server. Literally speaking, I never run the server when I develop new functionality, but develop Unit Tests together with the code, and run Unit Tests to verify the code, step by step until I finish the functionality.

In previous parts of the tutorial, we developed a Node.js+Express+Open API App with GET /hello and GET /goodbye requests. If you start from this part, you can get it by:

$ git clone https://github.com/losikov/api-example.git

$ cd api-example

$ git checkout tags/v3.3.0

$ yarn install

Initial Setup

I used different frameworks for the testing, but then I came to use jest only for all projects for all tests types. Jest has nice documentation. To develop and run the tests with TypeScript I use ts-jest. Let’s install them as dev dependencies (-D flag), and create default jest.config.js:

yarn add -D jest @types/jest ts-jest

$ yarn ts-jest config:init

To make jest tests files to see @exmpl scope, update just created jest.config.js and add moduleNameMapper property:

Now, we can run our tests with yarn jest command, but let’s add a new script to package.json for convenience:

"scripts": {

...

+ "test:unit": "ENV_FILE=./config/.env.test jest"

},

As you see, we pass it test env file. We don’t add any variables to it yet. Just create an empty file:

$ touch config/.env.test

Now, we can run our tests with yarn test:unit command. Let’s move on to our first unit test and try to run it.

Simple Test

The easiest function to test, which doesn’t have any dependencies is auth function in src/api/services/user.ts. Create src/api/services/__tests__ folder, and user.ts file in it. As you see, we put our test files in __tests__ folder where our tested file is located, and name it the same as a tested file. We follow this pattern all the time, unless there’s a specific case. Copy and paste the following content to it:

Analyze the content. Pay attention to line 3,4 and 9:

auth/it should resolve with true and valid userId for hardcoded token

auth/it should resolve with false for invalid token

Keep the naming clear to you and others. You can use it() or test(), and use the one which fits your naming style. To organize tests you can use multiple describe() levels.

In line 5 and 10, we perform an action, and on line 6 and 11 we validate the actions’ result with jest expect function. we use one of the methods toEqual. Refer to the documentation to find the method you need for a value validation.

Run yarn test:unit to see the result:
ORCA Telegram 2.0: Group Migration
Tags: Telegram, Startup, Cryptocurrency, Updates, Fintech

Getting back from a short holiday we’re starting our week with some important stuff right away. We’re migrating our Telegram Group and setting up a new one which is significantly better, faster, stronger and more efficient than our last one.

The decision of group migration has been approved for a number of reasons. First of all, due to the nature of Telegram coding, we suspect a significant number of accounts present in the legacy group might be bots. These accounts display peculiar inactivity in the group nor engage with other members, and may have compromising goals. These suspicious accounts were one of the reasons why we had to mute our group during the first hours of ORCA ICO Round I.

What is more, our admins and moderators have faced multiple challenges when trying to set up moderation rights and implement automated services within the group.

Inside the new group, we plan to initiate new measures oriented towards community building.

The most appropriate news and announcements will be shared within the group, community support will be available 24/7 coupled with the most relative news, tweets, and articles coming from the crypto industry.

To prevent issues that constituted problems in the legacy group, in a couple days time we’re initiating ‘prove you’re a person’ validation process similar to the CAPTCHA program you find in websites over the internet.

The updated policy of the group is structured to prevent bot accounts from joining and staying present in the group.

One more new implementation is that we will be awarding karma points to existing users for their active participation. Acquired points will be listed in group’s leaderboards and rankings. Community points will not only be earned through active chatting but also via engagement in weekly community activities. Other group members will have the option to dedicate points to each other based provided merits.

Address of the new group is (link) t.me/ORCA_Official. We are going to update the pinned message in the old group and will redirect all new entrants coming through the legacy links to the new one.

The changes to be set up are a part of the iteration process in order to achieve higher efficiency and user satisfaction. We believe that Telegram group quality and its functions are an important asset of our project and we are continuously striving to achieve this goal.

Be sure to check out our new Telegram Group and evaluate the changes for yourself. We are looking for feedback and are always open for suggestions on how to improve even more.

See you inside ORCA 2.0!
🤩 Meet the team 🤩
By: Sharik Khan
Tags: ICO, Blockchain, Ethereum, Entrepreneurship, Cryptocurrency

We find immense pleasure to release the Team Video that introduces people working at Mobigraph, the company behind PEP Network

Enjoy!

➡️ https://youtu.be/U0iKEu0x1nk
Creating chRistmas caRds
By: Greta Gasparac
Tags: Christmas Cards, R, Ggplot2, Plotly, Data Science

Diverging bar plot

Image by Author.

Let’s start with an easy one. The key point of a diverging bar plot is comparing data with a midpoint/baseline. We will use this idea to create symmetric bars that will represent our Christmas tree.

This is the most cumbersome of the approaches we present, since we need to create the data frame manually. What we need for this 5 level tree:

Specify each of the 10 bars (however, only 5 unique values, since we are specifying both, the left and the right side of the diverging bar plot). This is shown in the wish column, where we can be a bit sneaky and include a secret message!

Set divergence values. Values at the same level need to be the same in the absolute sense, with one of them being positive and the other negative.

Add labels for different parts of the tree (so we can color it later).

That’s it, we are ready for ggplot2 to do the magic. Create the bars, select your colors, throw in some ornaments in the end and your first card is ready!

Dirichlet sampling

Image by Author.

Now let us dip our toes into statistics.

Dirichlet distribution is a multivariate generalization of the beta distribution, parameterized by vector α of positive reals and length K. The support of a Dirichlet distribution of order K is the open standard (K-1)-simplex, which is a generalization of a triangle. For example, for K=3 we get an equilateral triangle.

A triangle? Hmm … Christmas tree is sort of a triangle, isn’t it?

All we have to do is sample uniformly from an equilateral triangle to get the points for the tree and the ornaments. Then we map the values from ℝ³ to ℝ² and plot them using ggplot2. To top it off, we also add a nice star on the top and wish everyone a merry Christmas!

3D spiral

Image by Author.

For the last one we move from 2D to 3D. We draw a simple spiral and decorate it with some bigger spheres for the ornaments, and some smaller ones for the twinkly Christmas lights.

In the 2D plane a spiral has the following parametric representation:

x = r(φ)cos(φ) and y = r(φ)sin(φ).

We set r(φ) = φ and φ= i/30, where i is the iteration index. To stretch it out in 3D we also need to add the third coordinate z, which can be just z = n_tree-i, where n_tree is the number of points we want.

We generate the data and then sample from that to get the coordinates for the ornaments and the lights. We reduce the z coordinate for the ornaments by some constant, so they appear below the line, and add some Gaussian noise to the lights, for them to spread out around the tree.

We plug the data into plotly, specify the colors, size and other details … and here it is! Our very first 3D Christmas tree.
From a Self-Taught Data Scientist, Here’s Why You Shouldn’t Use Bootcamps
By: Terence Shin
Tags: Data Science, Machine Learning, Opinion, Productivity, Education

1. Bootcamps are a sub-optimal solution.

A strategy that I constantly use in my education, in my career, and in my life is asking myself “what is the objective of doing this?” And so, I found myself asking “what is the objective of learning data science?”

Personally, there are two objectives for myself:

To develop and refine my knowledge in data science To gain credibility to show employers that I’m are a qualified candidate.

Now with these two objectives in mind, consider the image below:

Image created by Author

I’m not going to go through each point, but you can see that there are a number of alternatives that have a much higher impact in achieving the two objectives that I outlined above.

You might be thinking “well aren’t bootcamps good because I’m learning AND getting a certification?” and the answer to that is no. Generally, bootcamps are extremely surface-level, explaining only the “what” and not the “why”. And in terms of gaining credibility, bootcamp credentials get you nowhere — it’s what you do with it that matters (see point #3).

And to tell you the honest truth, I made the same mistake when I started out. Initially, I cared so much about “looking” certified on paper that I was more focused on piling certifications and less focused on developing my knowledge. What I got out of that was wasted time and useless certifications.

My goal isn’t to try to shut you down from learning. I understand that everyone has their own learning methods that work best for them, which is great. As I said in the preface, learning with bootcamps is certainly better than not learning at all! All that I want to do is make sure that you’re aware of more effective alternatives that will help you achieve your goals much faster (aka. becoming a data scientist).

So if you feel like you’re chasing certifications and not education, I strongly recommend that you take a step back and ask yourself what your objective(s) is (are).
Why Coding is More Fun than Engineering
By: Swizec Teller
Tags: Software Engineering, Work Life Balance, Coding, Software Development, Front End Development

Because coding is play and engineering is work.

What’s less obvious is that play gets more work done than work. Free from obligation, you can explore more options, discover new possibilities, and stay in flow for longer.

Let me show you.

Here’s a typical week of engineering according to my time tracker. I try to click the button every time I context switch for more than 5 minutes. Call it research into office culture, if you will.

This data is by no means perfect. Context switches happen within categories; I forget to click the button; and I’ve given up capturing the small distractions that happen.

I also spend too much time in faux meetings on Slack. Those don’t show up here.

But you can see a trend: most work happens in half-hour and aaaalmost-an-hour intervals. Then something comes up, and I have to switch. QA bugging out, absolutely horribly urgent code reviews that must happen right this instance, a deployment here and there, or a short meeting or two.

If I’m very lucky, I get to work on something for almost 2 hours. Sometimes, if the stars align just so, almost 3. That happened three times this week. Three times all week that I focused for more than an hour. 🙄
Simple Edge Detection Model using Python
By: Behic Guven
Tags: Programming, Deep Learning, Artificial Intelligence, Technology, Machine Learning

In this post, I will show you how to detect the edges in an image. Writing an edge detection program will give you some understanding of computer vision and self-driving cars. Edge detection is commonly used to understand objects in an image. It also helps the machines to make better predictions. Writing an edge detection program is a great way to understand how machines see the outside world. This will give us a better perspective when it comes to computer vision.

I covered a couple of computer vision concepts in my previous articles: face detection, face recognition, and text recognition. And today, we will work on edge detection using python.

Table of Contents
Feeling Enough
By: Shant Aumeta
Tags: Life, Poetry, Fun, 365 Days, Storytelling

An ongoing situation for real. Yet I get glimpses of it, and other times I feel it fully, and other times it starts to slip away, and I must cling to it like fire clings to wood.

The ways in which water flows down its path, is what we must learn. To flow down the path of energy, from our most ethereal aspects to our densest physicality. To flow down the path laid for us, that’ll satisfy every single thought, feeling, imagination, desire, and expectation we need and prefer to be satisfied. It’s a game nahmeeean?

A game that’ll go every which way, or go round every day which’ll lead one to stay, to stay, to stay, to stay stay stay stay stagnay.

But it’s always ok.

Always enough.

It’s always enough too.

It’s always enough.

See it, feel it, breathe it, know it, show it, act it, fun it, succeed in it, revel in it, relish in it, revere it, sincerely.

Sincerely,

Shant
Foresting Featured Among The 13 Most Promising Blockchain Startups in Korea
Tags: Blockchain Startup, Startup, South Korea, Blog, Fintech

Promising Blockchain Startups

Foresting is truly honoured to be featured among the top 13 blockchain startups in Korea. The list was curated and published by Fintech News Singapore.

It listed Foresting among other blockchain businesses likely to disrupt the industry.

Blockchain is a bit of a divided subject in Korea. With a few national controversies hitting the headlines such the controversial ban on ICOs and two crypto exchange hacks in as many weeks, you’d be forgiven for thinking that this is a volatile country for blockchain startups.

However, with the Korea’s expertise in advanced tech, it should be no surprise that there have been so many blockchain startups popping up in Korea. These startups come from a wide range of industries, including real estate, fintech and more.

Read more about the article here: 13 Most Promising Blockchain Startups in Korea.
Configure HTTPD server and setup Python Interpreter on Docker Container
By: Priyanka Bhide
Tags: Web Server, Docker, Python

Docker is a software platform that allows you to build, test, and deploy applications quickly. Docker packages software into standardized units called containers that have everything the software needs to run including libraries, system tools, code, and runtime. Using Docker, you can quickly deploy and scale applications into any environment and know your code will run.

Let’s do the task…

1. Configuring HTTPD Server on Docker Container

Step-1 : For the first time, We need to install Docker software in our system.

To install docker , first create a docker repository inside /etc/yum.repos.d/ folder. Write the following code in the docker repository.

Use yum install docker-ce — nobest command to install docker.

Check the version of docker : docker — version

After installation , We need to check whether the docker service is running or not : systemctl status docker

To start the docker service use : systemctl start docker

Now , Docker has been installed successfully.

Step-2 : Pull a CentOS image from Docker Hub to launch a container : docker pull centos:latest

Step-3 : Launch a container named “web-conf”using CentOS image : docker run -it — name web-conf centos:latest

Step-4 : Install the httpd webserver using command : yum install httpd

Step-5 : Create webpages in /var/www/html/ document root

Step-6 : Now , start the httpd service . As docker container doesn't support systemctl command , So use /usr/sbin/httpd .

To get IP address of the container we need ifconfig command but it is not installed in the OS , So install net-tools software that provides ifconfig command : yum install net-tools

Check the IP address using command : ifconfig

Step-7 : All configuration has been done. Now See the webpage in the browser by typing : http://172.17.0.2/webpage.html

2. Setting up Python Interpreter and Running Python Code on Docker Container

Step-1 : First We need to install python3 inside the Docker Container. command : yum install python3

Step-2 : To confirm python installation , check python version command :python — version

Step-3 : Now , Use Python3 REPL Interpreter to run your python code.

Task completed ✌️✌️

Thanks for Reading 😇
Google Docs template for summarizing your health history
By: Katie Mccurdy
Tags: Healthcare, Design, Patient Experience, User Experience, UX

I prefer a co-editing tool like Google Docs because it allows me to collaborate on the document with people in real time, and they can in turn opt to share it with other family members or caregivers.

It’s nothing too fancy, but it can help you start to get your thoughts together, determine your priorities, and start to see things in one place. Health records and patient portals just don’t capture or easily display many of the key things you may want to express (or that doctors want to know) — like detailed info about your symptoms, alternative treatments that are helping, what’s been ruled out, etc.

The ultimate goal of this document is to help you understand your health history and communicate better with your doctors — to build consensus on what’s happened in the past so you can agree on how to move forward.
Richard Brautigan in Heaven
By: Kara B. Imle
Tags: Poets Unlimited, Homage, Writing, Poems On Medium, Poetry

Richard Brautigan sketch by Oliver Dalmon

Somewhere in America

Richard Brautigan is still fishing for trout.

It is not this America

but if you close your eyes

you can see it from here.

He is casting a line silhouetted

against lemon-colored mist rising

off a stream that runs down

a mountainside in a place that looks

like Montana.

His floppy hat has blown off to somewhere

and his hair has grown into a map

of every trout stream he ever fished:

a wild tangle of rivulets

currents and flashing rainbows.

The lines on his face are tiny poems.

It might be strange for us

but not for Richard.

He has arrived at the silence of himself

and is listening to it.
Which wich for the witch?
By: Andy Anderson
Tags: Witch, Humor, Comics, Funny, Storytelling

If you purge your soul onto paper and are doing it for the love of writing. Then this publication is for you. We love gritty, raw, emotional, thought-provoking, rebellious, sexual, spiritual, nature-related writings and comic strips.

Follow
Seasons Come And Go Slowly
By: Pierre Trudel
Tags: Love, House Of Haiku Prompt, Seasons, Change, Environment

Seasons change without ever a twinkle light shining not so bright. One season leaves us to make way for another.

When was the last time you witnessed the ever-living forest take a huge breath and releasing it into the atmosphere?

Gentle change released into the environment giving us life for another…day.

Haiku/tanka prompt “gentle”
Scrum Is Dead. All Hail Kanban, the New King
By: Emanuel Marques
Tags: Programming, Agile, Technology, Startup, Kanban

We Adapted It to Our Team

Pure Kanban does not require you to do several activities that are necessary for Scrum. However, it gives you the flexibility to do them if you foresee value in adding them to your workflow.

Retrospective meetings are one of the most important meetings for a team. It’s where you can look to what you’ve accomplished, what didn’t go so well, and how you can improve. It’s a safe place where you can expose your problems and congratulate those who have done an excellent job.

Despite not being something required in Kanban (in Scrum, it is done at the end of each sprint), we saw value in it and kept it. In fact, we started to do them weekly instead of every two weeks, allowing us to have a quicker response when some problem arises. We also use these meetings to have a look over the team’s metrics and check for problems and bottlenecks.

Another optional activity that we chose to keep was the story estimation during the refinements. In Scrum, estimates are used to have a better understanding of what fits in a sprint. Since Kanban has no sprints, you would guess that this had no use.

Wrong!

Photo by Josh Calabrese on Unsplash.

Estimating a story helps to make sure that everyone has the same idea of what is to be done in a story. If someone votes 8 and other people vote 3, it’s clear that the story needs further discussion. Someone could be accounting for a problem that others are not aware of or the other way around, where someone includes extra work that is not to be considered in that story.

To estimate stimulates discussion.

When this happens, it’s clear that not everyone has a clear understanding of what needs to be done.

Another frequent scenario is when the whole team votes for high value (typically, everything above 8). A high value means uncertainty. There is either too much to do or the task has a high level of complexity that makes people uncomfortable. The best practice, in this case, is to split the story into smaller stories with more explicit objectives.
Having Fun With Impractical CSS
By: Spencer Hensel
Tags: CSS, Web, Design, Programming, Css3

Enough Theory, Let’s Get Coding

Background and main container

According to the structure chart, we want the background in html:before .

Then we want the html element to contain everything. This allows us to use relatively positioned elements that stack normally, instead of manually positioning every element ourselves.

Adding some content: the title area

Now that we have our container, we can start building our content out. We’ll start with the title area which shows the name of the Pokémon, their Pokédex number, and their types. We’re adding some SVGs in the next code block, so make sure you grab them from GitHub.

The title background used is a dynamic gradient that’s based on the types the Pokémon has. We’ll ignore the dynamic stuff and cover that in another article, using placeholders for now.

If you were to load the page right now, everything would be blank even though we just added the title area above.

This is because head:before is technically a child element of head , which hasn’t been styled yet. I ran into this issue a few times and would get confused, which is why I suggest planning the structure out. If something looks wrong, you should check that the parent isn’t making things wonky.

We’re going to add styling to the head tag so we can see the main content, and then finish off the title area by adding an image of Ludicolo using the head:after selector. Having the image change dynamically will be covered in another article.

There we go! Something is visible finally, and we’re already halfway there!

Tricks with text: multi-line content

Now that we’ve created the title area of the content by styling the head tag, we need to work on getting actual text content in. Though we did use the content property before for the Pokémon’s name, we’re going to need some line breaks to separate content. Generally, the content property text will act as a single line of text and wrap normally within the width of the parent, but we can force content to wrap with \a by setting white-space:pre-wrap; .

Using white-space:pre-wrap; allows us to create line breaks with \a

Add the description

Next, we’ll add the description to the page. This will be using the trick above so we can split the basic stats from the description. We’re also setting the width to 50% and adding a margin to the top to make room for the genus text and stats chart.

Finish up with genus and stat image
Philosophy As We Know It Is Dead
By: The Unlikely Techie
Tags: Philosophy, History, Science, Culture, Social Media

The Inability To Show What Constitutes Today’s Philosophy

An overview of contemporary philosophy has the particular problem of grasping its subject matter — how late Arthur Schopenhauer or Friedrich Nietzsche, for example, were received; Bernard Bolzano, for instance, would have fallen into oblivion without Edmund Husserl.

A further problem lies in the selection and interpretation — philosophy of the present means dealing with philosophers who are still alive or have recently died. Often a substantial part of the work has not yet been published. There are prominent philosophers such as Hilary Putnam, who changed their positions significantly during their literary work. However, the question of where the actuality for the present time lies by the wayside in this old-fashioned way of philosophizing.

In other words: Why cling to the old if it no longer reflects the reality of today?

I agree with Camille Paglia when she says that:

“The last truly important movement in the world of philosophy was existentialism, in the post-war Paris of Jean-Paul Sartre, Albert Camus and Simone de Beauvoir. There have been theories of language since then, but without the profound insight of the best philosophy. Post-structuralism and post-modernism, by their slippery relativism, have destroyed the concept of philosophy. No one cares about philosophers — cultural criticism has come to the fore. Media and glitzy pop culture dominate now, and people need help to negotiate and survive it.”

Has philosophy lost its claim to deal with the practical implications of our daily lives, or has it, at least in the western world, never been able to detach itself from this idea of the small circle of white men?

It must nevertheless be the goal of philosophy to concern itself with fundamental problems. As a guideline, philosophy must give a thought construct in which people can find themselves. Today, it appears that political goals and propaganda are surpassing philosophy. This is probably also the point of contact to existentialism. If there was a desire to redefine oneself after the Second World War, then there would have to be a renewed desire for identity constructs in the present day, wouldn’t there?
Book Coach Success Spotlight: Dani Abernathy
By: Terri M. Leblanc
Tags: Coaching, Freelancing, Coaching Skills, Writing, Success Story

Celebrating a book coach’s success

Author Accelerator is on a mission to help writers write books worth reading. We do that by training book coaches to support writers throughout the entire creative process. Meet Dani Abernathy became a certified book coach in May 2020. Today we are celebrating Dani getting her first two paying clients.

Q: So tell us, Dani, how will you be helping these clients (what service did they sign up for)?

Dani: I’ll be helping one client determine the building blocks of their book and another client get started on their revision.
Linear Regression With Ordinary Least Squared Method and Gradient Descent From Scratch In Python.
Tags: Ordinary Least Square, Gradient Descent, Linear Regression, Python, Data Science

Linear Regression With Ordinary Least Squared Method and Gradient Descent From Scratch In Python.

Linear regression is modeling the linear relationships between real-valued predictors and target variables. We find the function that best representative of the data.

Introduction

Linear regression is the first model we learn about regression analysis since high school. We are looking for regression line that fit the samples drawn from population with the most commonly used statistical method, ordinary least square regression (OLS). Weestimate model parameters. However, estimates functions get complex as we have more independent variables to be included in the model. Gradient descent (GD)is another option that is widely applied to a range of models training. It is simpler to implement for linear regression model.

Here, for simplicity, we are trying to build a linear regression from scratch for simple linear regression.

OLS

Ordinary least square method is non-iterative method to fit a model by seeking to minimize sum of squared errors. There is a list of assumptions to satisfy when we are applying OLS.

Assumption:

Function must be linear in parameters and error term.

Error terms are independent with each other and all independent variables.

Error terms are normally distributed with mean of zero and constant variance.

No independent variables are perfectly correlated.

Fig 1: OLS regression function and error term distribution.

Fig 2: Simple linear regression function.

Estimates of coefficients for simple linear regression are derived as below:

Compute sum of square error, SSE.

Fig 3: Sum of Squared Error.

2. Differentiate with respect to parameters.

Fig 4: Differential equations.

3. Let differential equation equal to zero. Solve the simultaneous equation to get estimates of parameters.

Fig 5:Derivation of estimates for parameters.

The process above gets lengthy and complicated as we have more independent variables included, and hence more estimate functions to be derived.
Eat me, I’m Tasty
By: A Singular Story
Tags: Humor, Food, Sexuality, Marketing, Poetry

I love how you always bring a friend.

But your friend is never ready so they watch as we indulge.

Afterward, they stay for a few days and take care of me.

Slowly, they become you, fleshy and firm then soft and squishy.

Desire unfolds fragrantly, your sweetness swells.
When people like you, they want to talk to you.
By: Aldric Chen
Tags: Communication, Attention, Technology, Social Media, Productivity

When people like you, they want to talk to you.

All the time.

Photo by Tim Mossholder on Unsplash

We have to ask ourselves the following question.

How much time do we have and how much time are we willing to spare?

Chatting is fun but they don’t pay the bills. The ability to focus is key. Distraction can be expensive.
I Love You for Us and Me
By: D. L. Shultz
Tags: Relationships, Love, Mental Health, Family, Long Distance

Illustration by Lisima

I say that I am in no rush to be with him in person even though I think about being with him on a continual basis. I encourage him not to worry about me because I am more experienced with relationships than he is and will be strong for us as he navigates the anxiety of his first romantic relationship. We have been dating long distance for a year and tomorrow he is coming to visit his family down the street for three months. We have never met in person before but our souls are intimately woven together in beautiful tapestries. I wrap myself in his energy to cease from trembling in the coldness of my ancestry. I am enchanted by his benevolent mysteries and sometimes catch glimpses of infinity in his eyes.

I practice learning Spanish on Duolingo whenever I eat alone, substituting sustenance for the feeling of his presence and our connection. He learns English with me and we no longer need a translator to communicate. Working to build a relationship with him is my favorite occupation — it consumes me and I devour it.

A panic attack has me shortly after he indicates that he is not nervous to meet me. I realize I had projected a reaction formation onto him by assuming he feels what I feel and cannot process. He is not worried about meeting me; I am worried about meeting him for reasons that reach into the wreckage of my last relationship. Six years ago my ex-lover broke up with me the night before moving across the country and into the apartment I helped him choose. He had become enraged when I asked him what he meant when he said he wanted to lose me. His skin erupted into hives the first morning of our visits. He also became enraged whenever I asked him why he decided to suddenly stop taking his eczema medication. The hooks of this troubled relationship reel me upstream. I must enjoy drowning.

My hole holder. My lover. Mi amor. I love you for us and me.
#EWasteDay: Increasing Recycling Rate of Electronics in Nigeria
By: Iccdi Africa
Tags: Recycling, Women, Waste, E Waste, Environment

ICCDI Africa like several organizations all over the world joined stakeholders, environmentalists, NGOs, Government agencies etc to mark the second international E-Waste Day which took place on the 14th of October 2019 at Adeyemi Bero Hall, Alausa Ikeja, Lagos State, Nigeria. A sensitization program on E-Waste management and the achievement of the SDGs in Nigeria. It was a remarkable event as crucial matters concerning environmental hazards in Nigeria and ways to obtain a sustainable and healthy environment was discussed.

There were various presentations from stakeholders present the likes of: the country director, United Nations Information Centre; Mr. Ronald Kayanja, the DG, NESREA (National Environmental Standards and Regulations Enforcement Agency) Prof. Aliyu Jauro on EPR as a regulatory tool for effective management of E-Waste, the GM, LASEPA (Lagos State Environmental Protection Agency) Dr (Mrs.) Adedolapo Ayokunle Fasawe on Hazard and Environmental Impact of Improper Management of E-Waste, Mr. Oluyomi Banjo of UNIDO (United Nations Industrial Development Organization) on E-Waste Global solutions; Best Practices and Experience Sharing, Mrs Chinyere Emeka Anuna of ILO (International Labour Organization) on Decent Work and E-Waste; Opportunities and Challenges in Nigeria and poem and drama presentations from schools on E-Waste awareness and proper management.
Getting my poetic on.
By: J M Jackson
Tags: Instagram, Poem, Writing, 100 Naked Words, Poetry

Getting my poetic on.

Or words to that effect…

I don’t know whether it is a good thing or not, but I have been posting some of my ramblings to a new Instagram account I recently set up (@jmjacksonwrites) and, in doing so, it has opened up a new writing style/method/mode/sais pas for me.

Let’s call it.. something like.. poetry? Poetic prose? Words across multiple lines with poetic.. qualités, n’est-ce pas?

Call it what you will, it condenses thought into short, sharp razor blades. I love it.

The visual aspect of Instagram has nudged me to think a little more about layout and form. I can only view this as a positive.

Despite the trash floating around Instagram, I have found that there are many accounts laying down insightful words, both prosaic and poetic. These serve as both inspiration and motivation.

Medium has been great for me in developing a tiny little network of mutual appreciators. It looks like Instagram may help me expand that tiny little network into an ever so slightly less tiny network.

Come and join me if you dare.

Onwards!
Mirrors of the Lost Heart
By: Paul Mulliner
Tags: Self-awareness, Yoga, Life, Poetry, Mindfulness

Sometimes there’s sadness

as moments pass,

and our experience of life disappears forever

like bath steam fading

from the surface of a mirror.

Those moments

when something in your eyes

dissolved all separation,

needing no words

though nothing was left unsaid,

nothing was left unknown,

are moments

also gone forever,

moments of our life

passing through awareness

like swirling eddies

passing through the surface of a river

or streams of light

passing through

the prism of our being.

And our acceptance

of the transience of all experience

helps us find an enduring

inner center of awareness,

a point of focus within

the conscious space

inside us,

and know our sadness

is the sadness of life’s

separation from itself,

just the empty echoes

of a heart adrift

from its moorings

in the center of our being,

lost within the consciousness

inside all life.

When our sadness lifts,

dissolves and blows away

like clouds across a windy sky,

we may know again

that all of life is a journey with meaning

to a place where we can see more clearly,

and every moment offers us the chance

to anchor our heart

in the consciousness

holding the Universe together.

And as light shines through leaves

on nearby trees,

their branches are tracing ovals

in the wind-blown sky.
Our Sadness
By: Priyanka Srivastava
Tags: Kindness, Writing, Empathy, Sadness, Poetry

Our Sadness

Micropoetry about sadness

Photo by Anthony Intraversato on Unsplash

we grow with our sadness

somehow we learn to fly.

our heart makes space

for the tenderness which

we need to survive.
[我的Team答應我的工作都做不完] — 一次學會如何摧毀PO制度
By: Yu-Song Syu
Tags: Product Owner, Scrum, Software Engineering, Agile, Agile Methodology

Kuma老師的軟體工程教室

Welcome to the Kingdom of Software Engineering
Evolution to Advanced Coding : Any Kid Can Code
By: Laxman Singh
Tags: Python Programming, Python3, Kids And Tech, Kids, Python

PYTHON IS OBJECT ORIENTED PROGRAMMING LANGUAGE.

What does this mean? In python, everything is an object and object has one good thing they can be assigned to variable and instance can be created for the objects.

What is OOP (Object oriented programming)?

OOP is the concept which preaches to create objects. And, objects contains their own properties and functions. Let us correlate this to real life, any object like computer mouse, has its own properties and functions. Properties: mouse has button (right/left), it has scroller on top etc. Functions: move cursor, click, scroll etc. I hope it makes easy to correlate coding to real life examples.

Here in programming, object is created as instance of class which is created using keyword “class” and then, inside class we can create different variables and functions (this we have learnt earlier). Those functions can be used by object and we can create any number of objects in a class. You can refresh your basic knowledge:

Here we go, we have exposure to most important concept of programming i.e, oOP. We are growing in the same manner as the word looking like.

Benefit of using OOP: Modularity, reusability and scalability. We will go in depth when the time comes or we will understood when we do practice.

How it makes code compact — Let us assume you bought a computer mouse, it has various functions and it works plug n play manner. If you want to attach it to laptop, TV or any other device, it will function as same. So, you need not to buy multiple mouse. This is just to understand the concept of object as an instance. We will deep dive into that as and when required.

Just focus that object is an instance of class and there can be many instances to the class. Animal is class and dog, cat etc are their instances with different functions

OOP has many other concept like polymorphism, inheritance, encapsulation and abstraction. We will learn all over the time.

You can understand how important and easy it will become, if we have class widgetObject which allows to create different instance and it has function of move object. Let us now wait too much. First do the program using loop and then use the concept just learnt. And, I will leave it to you to see the difference for understanding and easiness.
Cypress — January 22, 2020. Mental Health Boost Needed!!
By: Jennifer Hammersmark
Tags: Outdoors, Skiing, Vitamin D, Mental Health

Dr. Jen uses her own experiences, skiing, books, movies, and real people to help curb the pains of life

Follow
Dreams & Stories -A New Name For The Publication This Shall Be Our Story
By: Suraj Ghimire
Tags: This Shall Be Our Story, Writing, Dreams, Relationships, Family

Dreams & Stories -A New Name For The Publication This Shall Be Our Story

Our Stories connects each other as a family.

designed by author

Hey All,

After a few interactions with our regular writers and editors, we have decided to change our name to Dreams & Stories.

This change in publication comes because of our hunger to reach and appeal to more audiences. “This Shall Be Our Story” is a close and personal name, but to make our theme more clear, we give our publication a new name, “Dreams & Stories.”

Nothing else has changed. We will keep posting stories that resonate with each of us.

We accept stories on Relationship, Travel, Life advice, and spirituality in any form of poetry, essay, or fiction.

We hope you continue to write in Dreams & Stories.

We will love to have you as a writer if your stories connect with you or the audience in any way. Kindly have a look at our submission guidelines here.

We will soon come up with updated guidelines.

Till then, See you, take care and stay safe.
Bitfury AI Opens Offices in Italy and Netherlands
By: The Bitfury Group
Tags: Bitfury, Technology, Artificial Intelligence

Today the Bitfury Group announced its artificial intelligence division, Bitfury AI, has opened two new offices. The first office, focused on R&D, is now open in the Dutch city of Eindhoven, a leading tech and innovation hub. The second office is a regional location in Milan, Italy.

Beginning with the appointment of veteran technologist Fabrizio Del Maffeo in August 2019, Bitfury’s artificial intelligence team now has more than a dozen employees hailing from technology, AI and IoT powerhouses like Intel, Synopsys, Advantech and the ASUS Group. The team was also joined by two expert advisors in 2019, Prof. Dr. Luca Benini and Prof. Dr. Marian Verhelst. Prof. Dr. Luca Benini is the chair of Digital Circuits and Systems at D-ITET ETH Zurich, specializing in RISC V/CPU artificial intelligence accelerators. Prof. Dr. Marian Verhelst is the Senior Scientific Director of IMEC and professor at KU Leuven, specializing in digital and analog accelerators.

“Artificial intelligence is the emerging technology of the century,” said Valery Vavilov, CEO and co-founder of Bitfury. “This newly expanded team will help us fulfill our mission of making the world more trusted and secure by delivering intelligent solutions that help humanity take full advantage of the benefits of AI.”

“Eindhoven is renowned internationally as an engineering and technological center, with major companies like Philips, Intel, Synopsys operating R&D divisions here,” said Fabrizio Del Maffeo, head of Bitfury AI. “The expansion of our team into this region will help us have access to the best R&D expertise and resources in the Netherlands, while our Italy office will lead development of our AI turnkey solutions.”
Medium Stories Well Done
By: David Betz
Tags: Design, Data Science, UX, Inclusive Design, Mixed Reality

The breadth of expertise was impressive too, ranging from UX design, inclusive design, hardware design, game design, mixed reality, app and voice design, to Fluent Design—a design system that will unite these experiences across devices and beyond. There were also expert contributions from UX writing, research, and data science.

Here are the top 5 most read stories from the past year:

5. UX writing tips

Like designers, UX writers work very hard to make things look easy. Torrey Podmajersky shares 3 real world examples full of insights, tips, and common sense.

4. Digital archealogy

In order to see where you’re going, it’s helpful to know where you’ve been. Juliet Weiss’s first design project on a new design team produced a rich and useful perspective on Window’s design history. (Note to Microsoft design fans: The missing “Office design history” is in the works for 2018.)

3. Evolving iconography is a subtle art

User testing identified an opportunity for Paula Chuchro’s Design team. Find out how meaning, ubiquity, and familiarity factored into their icon redesign.

2. How far can design stretch?

What principles and best practices from 2D design will translate into emerging 3D mixed reality experiences—and where will new opportunities arise? Our design team of Cara Tyler, Ramiro Torres, and Oscar Murillo share a Fluent Design System exploration.

1. Myth busting

Our most popular story did not come from design, but rather from the allied discipline of data science. Bill Pardi breaks big data (and its attendant myths) down with practical examples and fascinating brain teasers.

In addition to being republished on several blogs internationally, this made The Best of 2017 for all Medium stories.

If you liked this, here’s Bill’s second installment.

Bonus: Creating a platform for impact

My favorite story (among many) came from Italy. Roberto D’Angelo’s personal journey went from being a parent to a founder and entrepreneur. He shares how he combined inclusive design with other products from the Microsoft ecosystem to create the Mirrorable app for his son. Roberto embodies the inclusive “solve for one and extend for many” principle with his Fight The Stoke non-profit org.
What to Read if You’re Learning French
By: Claire Handscombe
Tags: Language, Self Improvement, French, Reading, Books

What to Read if You’re Learning French

You don’t have to be fluent to enjoy these

Photo by Phix Nguyen on Unsplash

Are you learning French? Ready for the challenge of reading a whole book?

Stop! Don’t pick just any book. You may be feeling it now, but three pages into the latest translated Sophie Kinsella, your dictionary will be soaked with tears of frustration.

And let’s take chick lit as an example. It feels easy to read in our language. But it’s full of slang, in-fashion vocabulary, and the kind of words you probably aren’t learning at your intensive EU course. It’s hard. So you will feel stupid, even though you are not, and you feel doubly stupid because you will (wrongly) think that the thing you are finding difficult is in fact really easy.

Here are a few you can start with instead.

Le Petit Nicolas, by Sempé-Gosciny

I grew up reading Le Petit Nicolas, and he is ace. His adventures in a classic old-fashioned French primary school will raise a smile.

Not only that, but it’s written in the passé composé — ie, not in that odd tense we inexplicably call the passé simple, which makes it much easier to understand — and will painlessly reinforce all those past participles your French teacher has been trying to get you to learn.

Also, it’s not a novel, but rather a series of stand-alone adventures: much more manageable to tell yourself you will read one story this week than, say, one novel in three months.

Rendez-Moi Mes Poux, by Pef

Another childhood classic is the adventure of this little boy who finds headlice in his hair, and befriends them. It’s short, and funny, and full of word play (nothing too complicated, though), and the illustrations alone make it a worthwhile purchase.

Astérix, by Gosciny/Uderzo

Another oldie but goodie (okay, so I grew up in the 80s, and I’m not going to apologise for that) is Astérix. There is, of course, plenty of word play in this too, which makes it not the easiest of reads — though it also makes it fun once you work out what all the names are supposed to mean.

Bonjour Tristesse, by Francoise Sagan

If you’re more advanced, you might — might — want to try Bonjour Tristesse, by Francoise Sagan. It is as French as French gets — deeply philosophical musings on the inner life of a French teenager during her stifling hot summer in the South of France. It’s also beautifully written and — again — short. Honestly, you cannot underestimate the feeling of achievement that comes with finishing a novel — and those feelings fuel further learning.

Have you discovered any good French reads?
You really think the world would be better off without people?
Tags: Humor, Comics, Apocalypse, Environment

More from rstevens Follow

I make cartoons and t-shirts at www.dieselsweeties.com & @rstevens. Send me coffee beans.