teleren/devto huggingface dataset:
Daily Developer Jokes - Sunday, Jan 31, 2021
Tags: jokes, dailydeveloperjokes
Published: 2021-01-31 13:00:12

---
title: "Daily Developer Jokes - Sunday, Jan 31, 2021"
description: "Check out today's daily developer joke! (a project by Fred Adams at xtrp.io)"
series: "Daily Developer Jokes"
cover_image: "https://private.xtrp.io/projects/DailyDeveloperJokes/thumbnail_generator/?date=Sunday%2C%20Jan%2031%2C%202021"
published: true
tags: #jokes, #dailydeveloperjokes
---

Generated by Daily Developer Jokes, a project by [Fred Adams](https://xtrp.io/) ([@xtrp](https://dev.to/xtrp) on DEV)

___Read about Daily Developer Jokes on [this blog post](https://xtrp.io/blog/2020/01/12/daily-jokes-bot-release/), and check out the [Daily Developer Jokes Website](https://dailydeveloperjokes.github.io/).___
### Today's Joke is...
![Joke Image](https://private.xtrp.io/projects/DailyDeveloperJokes/public_image_server/images/5e1258922d1b9.png)

---
*Have a joke idea for a future post? Email ___[xtrp@xtrp.io](mailto:xtrp@xtrp.io)___ with your suggestions!*

*This joke comes from [Dad-Jokes GitHub Repo by Wes Bos](https://github.com/wesbos/dad-jokes) (thank you!), whose owner has given me permission to use this joke with credit.*

<!-- 
Joke text:
I’ve been hearing news about this big boolean.

Huge if true.
 -->
How does Composer help you manage php libraries?
Tags: php, composer, beginners
Published: 2021-01-31 12:56:54

**1.What is Composer?**
Composer helps you manage php libraries. Let's assume that you want to use library A that depends on library B. Without Composer, you would need to install library A and B by hand. Meanwhile, if you use Composer to install library A, you don't care about library B because Composer automatically installs libraries required by library A.

**2.How to install Composer on Centos7**
- Add EPEL and REMI repositories
```
sudo yum install epel-release

sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
```
- Install Composer
```
sudo yum install --enablerepo=remi,remi-php73 php-pecl-zip composer
```
- Check the Composer version to confirm that Composer has been property installed
```
composer -v
```

**3.How to install libraries using Composer**
There are two ways to install libraries with Composer.
Let's take the installation of monolog library as an example.
- Use `composer require`
Simply implement the following command to install monolog.
```
composer require monolog/monolog:"^2.0"
```
The library information consists of `vendor name/project name:version`, which is recorded in `composer.json`. With the command above, you can use monolog.
- Use `composer install`

Add the following code in `composer.json`.
```
"require": {
    "monolog/monolog": "^2.0"
}
```
Implement the following command.
```
composer install
```
`composer install` installs the libraries written in `composer.json`. Now, you can use monolog.


The installed libraries are stored in `/vendor`, and you need to add `require("vendor/autoload.php");` to your php program in order to use the libraries.

**4.What is the difference among `composer require`, `composer install` and `composer update`?**
As mentioned earlier, `composer require` is used to install a new library, and the installed library is recorded in `composer.json`. `composer install` installs the libraries in `composer.json`, and their versions depend on the `composer.lock`, which manages library versions. For example, if you want to install the libraries you're currently using onto a different development environment, you should copy `composer.json` and `composer.lock` and execute `composer install` so that the same libraries will be installed there. `composer update` is used to update the versions of the libraries recorded in `composer.json`. Aforementioned, the version information is recorded in `composer.lock`.
Windows Subsystem for Linux Installation Guide for Windows 10
Tags: wsl, windows
Published: 2021-01-31 12:44:10

#WSL Installation Steps
##Step 1 - Enable the Windows Subsystem for Linux
You must first enable the "Windows Subsystem for Linux" optional feature before installing any Linux distributions on Windows.

Open PowerShell as Administrator and run:
```PowerShell
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
```

##Step 2 - Enable Virtual Machine feature
Before installing WSL 2, you must enable the Virtual Machine Platform optional feature. Your machine will require virtualization capabilities to use this feature.

Open PowerShell as Administrator and run:
```PowerShell
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
```
Restart your machine to complete the WSL install and update to WSL 2.

##Step 3 - Download the Linux kernel update package
1. Download the latest package:
  - [WSL2 Linux kernel update package for x64 machines](https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi).

Once the installation is complete, move on to the next step.

##Step 4 - Install your Linux distribution of choice
1. Open the Microsoft Store and select your favorite Linux distribution.
 ![View of Linux distributions in the Microsoft Store](https://dev-to-uploads.s3.amazonaws.com/i/dztiwuy1h5zkxrjgyzn9.png)
 The following are some example of distributions:
 - [Ubuntu 20.04 LTS](https://www.microsoft.com/store/apps/9n6svws3rx71)
 - [Kali Linux](https://www.microsoft.com/store/apps/9PKR34TNCV07)
 - [Debian GNU/Linux](https://www.microsoft.com/store/apps/9MSVKQC78PK6)

2. From the distribution's page, select "Get".

The first time you launch a newly installed Linux distribution, a console window will open and you'll be asked to wait for a minute or two for files to de-compress and be stored on your PC. All future launches should take less than a second.

You will then need to create a user account and password for your new Linux distribution.

Ubuntu unpacking in the Windows console

CONGRATULATIONS! You've successfully installed and set up a Linux distribution that is completely integrated with your Windows operating system!
Sprint in Scrum Methodology, Sprint workflow and process.
Tags: beginners, testing, devops, tutorial
Published: 2021-01-31 12:43:01

**What is the Sprint?**

Sprints are iterative cycles where to produce new increments, the functionality is developed or enhanced. Sprint Planning Meetings, Sprint Backlog, and Daily Scrum meetings are the team's operating tools.
It is planned that one Sprint will last from one week to one month.

**Sprint workflow and process:**
![Random 2](https://dev-to-uploads.s3.amazonaws.com/i/29j4dp1m6gb0zqm7sufs.png)

**Sprint Planning meeting:** A **two-phase meeting** organized by the Scrum Master is a Sprint Planning Meeting. In the **first phase** of the meeting, the customers, users, management, product owner, and Scrum **Team participate in deciding on the objectives and functions of the next Sprint**. The Scrum Master and the Scrum Team will hold the **second phase** of the meeting **focusing on how the production increase will be implemented** during the Sprint.

**Sprint Backlog:** The **starting point for each sprint is the Sprint Backlog**. This is a list of selected products for the Product Backlog to be introduced in the next Sprint. In the Sprint Planning Meeting, the items are chosen by the Scrum Team along with **the Scrum Master and the Product Owner on the basis of the prioritized items** and priorities set for the Sprint. 
The Sprint Backlog is stable before the Sprint (i.e. 30 days) is finished, as opposed to the Product Backlog. A new version of the method is delivered when all the things in the Sprint Backlog are done.

**Daily Scrum meeting:** To **keep track** of the progress of the Scrum Team constantly, regular Scrum meetings are scheduled and they also act as planning meetings: **what has been done since the last meeting and what needs to be done before the next one. In this short meeting** (approximately 15 minutes) held daily, issues and other variable issues are also addressed and regulated. Scrum meetings are **run by the Scrum Master.**

**Sprint Review meeting:** On the last day of the Sprint, in an informal meeting, the Scrum Team and the **Scrum Master introduce the results of the Sprint to the management, clients, users, and the Product Owner**. The **participants analyze the rise in the commodity and make the decision** on the following operations. New backlog things may be brought out at the review meeting and also alter the course of the system being designed.
OAuth2 Authorization Grants
Tags: python, fastapi, oauth, jwt
Published: 2021-01-31 11:48:49

## What is OAuth?
OAuth is an open standard used for authorization;i.e to grant access to data or functionality etc without having to deal with the original authentication.
## Authentication vs Authorization 
Authentication is confirming your own identity whereas authorization is giving access to the system.
## Different type of Authorization Grants
There are four Authorization Grant type and used in different contexts
**Authorization code:** used for backend web apps
**Implicit:** used for SPA applications executing on the browser
**Client credentials:** used for machine to machine authentication of service accounts
**Resource owner password credentials:** used for highly trusted applications
## Actors in OAuth2.0 workflow
**User/Resource Owner:** end-user;i.e. owner of a user resource
**User-Agent/Device:** Browser or native application
**Client Application:**API's;i.e. application that is attempting to get access to the user's account. The application could be a website, mobile app, etc
**Authorization Server:** The server where the client applications are registered. Issued an access token to the client app.
**Resource Server:** Which hosts the secured and protected user resources on appropriate access token it shares the user resources.
## Workflow of Authorization Code Grant Type
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/o8ajaelpjcmxtfnlvohp.png)

remaining coming soon ...
10 Styles of social counters design
Tags: css, social, counters, twitter
Published: 2021-01-31 11:46:23

Social counters are used in many sites to help with two things. Firstly they show the number of social following you have, and secondly they link back to those social networks so visitors would follow you. 

The designs needs to be clear and engaging to maximize their use. 

Here are some designs that you can add to your site with simple CSS to help visitors engage in your social networks. 

{% codepen https://codepen.io/khr2003/pen/zgxqgx %}
I've launched my own startup :)
Tags: startup, programming, productivity
Published: 2021-01-31 09:11:07

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/en42wkdg8px2rhofmu0f.png)

Yesterday I launched my own startup - Meetendly.com. I need your help. Please give me feedback on what you think about this project. I know it’s not something very unique but I have few ideas to make some disruption.

**What is Meetendly?**
Meetendly is an app which helps you schedule your meetings.

**It’s for you?**
Yes if you need one place where you can redirect your clients and give them the possibility to book a meeting with you.

**How it works?**
You create a meeting type for example:
Subject: JavaScript consultations
Duration: 60 min.
Price: $50

Then you will receive a unique link to your calendar where your customers can book an appointment. This is my own link for a PHP private lesson.
https://app.meetendly.com/meeting/octocode/konsultacja-php-60-min

**Payment gateways**
For now, you can use 3 payment gateways: PayPal, P24, PayU. I am working on Stripe integration. 

**Other features**
I created a release plan for this year. You can find it here :) https://meetendly.com/features/

**Questions for you**
1. What do you think about the brand?
2. What do you think about the app?
3. Will you use it?
4. Do you have someone to whom you can recommend Meetendly?
How to Create Marker Highlight Effect in CSS?
Tags: css, svg, design
Published: 2021-01-31 11:41:07

---
title: How to Create Marker Highlight Effect in CSS?
published: true
description: Learn to create marker highlight in CSS.
tags: css, svg, design 
canonical_url: https://svgbox.net/blog/create-marker-effect/
cover_image: https://images.unsplash.com/photo-1475154404624-07909433bbfb?ixid=MXwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=1866&q=80
---

Highlighting text in the copy is a great way to draw attention to certain phrases in a relatively long text. And there's an even better way to make it more effective: make the highlight look like it's actually marked. An example can be seen on Hotjar's landing page.

![Hotjar's Landing Page](https://dev-to-uploads.s3.amazonaws.com/i/y7bmxvkwfdzkbbd3ot29.png)

I run a side-project called [SVGBox](https://svgbox.net), where I offer the simplest way to start using icons. Recently, I added [pen-burshes](https://svgbox.net/iconset/pen-brushes) iconset, and using that you can create the same effect by using the brushes as background images and customizing the fill color. Let's see how:

## Creating the Marker Effect
I'll use the brush-1 to create the simplest effect possible.


```
<style>
    .highlight {
        background: url(//s2.svgbox.net/pen-brushes.svg?ic=brush-1&color=ffff43);
    }
</style>

<div>
    This is a <span class="highlight">
        highlighted part
    </span> of the text
</div>
```

![](https://dev-to-uploads.s3.amazonaws.com/i/j26s4i3mqfgr8c8sjylq.png)


This looks decent but the highlighted background could be positioned and sized better. It should stretch on both sides, and a little bit on the Y-Axis as well.

```
<style>
    .highlight {
        background: url(//s2.svgbox.net/pen-brushes.svg?ic=brush-1&color=ffff43);
        margin: -2px -6px;
        padding:  2px  6px;
    }
</style>

<div>
    This is a <span class="highlight">
        highlighted part
    </span> of the text
</div>
```

![](https://dev-to-uploads.s3.amazonaws.com/i/emmtwgyw023q7isu06kh.png)

This looks much better and is already pretty usable. You can also experiment with different colors. I really like using HSL color format here, since I can adjust lightness much more easily. SVGBox supports the most common [color formats](https://svgbox.net/p/docs), making this process easier.

![](https://dev-to-uploads.s3.amazonaws.com/i/kef8csq1guzz6x6cp87t.png)

And also different brushes:

![](https://dev-to-uploads.s3.amazonaws.com/i/czv3k4sfuwmbktnhvpfy.png)
 
And that's it, a really easy way to add this effect to your web page.
Update granularity of Javascripts frameworks
Tags: react, svelte, vue, fre
Published: 2021-01-31 11:38:19

Do you know that the update granularity of different Javascript frameworks is different? Let's talk about it in detail.

### Coarse grained

Almost all the framework updates based on vdom are coarse-grained. The unit they update is component, and then the whole component will be re rendered for reconciliation.

Such as react, fre……

There are the advantages of vdom, but it will cause unnecessary updates. The react team says that the performance of JS runtime is negligible, so the coarse-grained update of vdom has always been a good way.

I agree with this option, because if it is not for coarse-grained update, asynchronous rendering will not be easy, and the essence of concurrent mode is repeated parallel rendering.

### Fine grained

Some proxy based frameworks are fine-grained. Such as svelte, vue1. They hijack the keys of state and can update them accurately.

This is a good idea most of the time, but when there is a long list, too many proxies will be generated, and the performance will be degraded.

### Block grained

This is a compromise, that is, when a block is encountered, the runtime is used for reconciliation.

Such as vue3:

```js
<div v-for="item in items" key="item.key"/>
```
output like this:

```js
for(items, (item)=> item.key)
```
The for function is a runtime function that performs internal reconciliation.

### trade off

Three different granularity are good and bad, as a framework, the author should weigh the choice.

Fre uses vdom, so its updates are coarse-grained, which is more conducive to asynchronous rendering.

But I think that for frameworks like svelte, using block granularity is the best, because many algorithms are runtime optimizations.

https://github.com/yisar/fre

Finally, if you are interested in the new framework, take a look at fre.
Revisiting the I in SOLID
Tags: computerscience, cleancode, solid, java
Published: 2021-01-31 11:34:16

######*Photo by Pavel Nekoranec on Unsplash*

This is a continuation of the SOLID. In the last post, I covered the L and now we will be continuing with the L. So if you didn't check the last post, feel free to click on the link: https://dev.to/sightlessdog/revisiting-the-l-in-solid-116m


#Interface Segregation Principle 
The Interface Segregation Principle was defined by Robert C. Martin several years ago while consulting for Xerox. He helped them change their printing system which was difficult to develop. 

He defines it as : 
> No client should be forced to depend on methods it does not use. 

In other words, Changing one method in a class shouldn't affect classes that don't depend on it. 
Or we can say larger interfaces should be split into smaller ones. 

##Example: 
Let's suppose 10 people work at a restaurant, our restaurantWorker class would look like this.  

```java
public interface RestaurantWorker {
void washDishes(); 
void cook();
void serve();
}
```
Out of the 10 people, there is this guy who doesn't know how to cook (he can only wash dishes or serve). Then the method cook() is not really relevant to him.  

But sadly we have to implement the method cook() right? 

###To fix this, we would have to separate our interface into smaller ones 
```java
public interface Waiter {
void serve(); 
}
```
```java
public interface Cook {
void cook(); 
}
```
```java
public interface DishWasher {
void washDishes(); 
}
```

```java
public class theGuyNoCook implements DishWasher, Waiter {
public void washDishes() {

}

public void serve() {

} 
}
```

And now, we are free to implement only the relevant methods.

#Conclusion: 

##The ISP is intended to keep away the strong coupling between the different parts of the system. And that's what makes the code we are writing easier to change, refactor and redeploy. 

#Sources: 
https://en.wikipedia.org/wiki/Interface_segregation_principle
Robert C. Martin “Principles of OOD”
Meyer, B. (1997): Object-Oriented Software Construction, 2nd edition
http://www.cvc.uab.es/shared/teach/a21291/temes/object_oriented_design/materials_adicionals/principles_and_patterns.pdf
Flutter Push notification through Rest API (Laravel)
Tags: flutter, laravel, firebase
Published: 2021-01-31 11:32:25

In this post, we will learn that how we can send firebase push notifications by the Laravel admin panel.
Click the link to read the article. https://pkbhai.com/flutter-push-notification-through-rest-api-laravel-8/

You can take a look at my source code
https://codecanyon.net/item/learning-flutter-app/31209339
What is transition?
Tags: html, css, beginners, tutorial
Published: 2021-01-31 11:10:57

This post is a part of our "20 Days of CSS animation post"

{% link https://dev.to/atulcodex/20-days-of-css-animation-post-3g8d %}

In this post, we'll only see what are the visual difference between with transition effect and without transition effect.

hover over these two headings one by one and you will automatically feel the difference.

{% codepen https://codepen.io/atulcodex/pen/dyOPpqm %}

And if you are interested to learn CSS you can join [Eduonix E-Learning platform](https://www.eduonix.com/UHJvZHVjdC0xMzE1MDIw).
GraphQL Subscriptions With Apollo, Typescript and Node.js
Tags: softwaredevelopment, programming, graphql, javascript
Published: 2021-01-31 13:43:23

---
title: GraphQL Subscriptions With Apollo, Typescript and Node.js
published: true
date: 2021-01-31 10:53:32 UTC
tags: softwaredevelopment,programming,graphql,javascript
canonical_url: https://medium.com/swlh/graphql-subscriptions-with-apollo-typescript-and-node-js-4f50591b8b98
---

[![](https://cdn-images-1.medium.com/max/1920/1*E0PcXdWe_-xurIRvL6RJTQ.png)](https://medium.com/swlh/graphql-subscriptions-with-apollo-typescript-and-node-js-4f50591b8b98?source=rss-269f954fad8c------2)

Build a ToDo list that notifies its users when something changes

[Continue reading on The Startup »](https://medium.com/swlh/graphql-subscriptions-with-apollo-typescript-and-node-js-4f50591b8b98?source=rss-269f954fad8c------2)
email marketing tips
Tags: digitalshiksha
Published: 2021-01-31 10:34:36

build http://digitalshiksha.org.in/ targeted lists.Don’t ever shotgun email out just a broad list.You wanna have very targeted lists of people that have opted in that want your content.It’s so important to havethat, because if you don’t,you’re gonna have a high unsubscribe rate and a high spam rate, and you’re gonna run into problems.http://digitalshiksha.org.in/email-marketing-kya-hai-or-kese-kre/
Who are you gonna send to, and what are you going to send? So in other words, the type of content you send to potential customers or leads is gonna be different
than the type of content you send to your actual customers.And then also, think about just things like general campaigns.
strategy for connecting peoples is to personalize.Email software has ways of basically dynamically inserting names, and other information into the emails. This adds a level of personalization.So you’re gonna wanna do that with your emails ’cause it’s gonna do things like increase your opening rate, increase your click-through rate,
just increase your results overall. Even just by inserting somebody’s name,it’s gonna make it more personalized to make them feel more comfortable with the content.You can do that with most email software and also if you connect it to a CRM.
CRM-Service. Inception
Published: 2021-01-31 10:20:17

Почти год назад я впервые узнал, что такое web-разработка, и мне предстояло написать интернет-магазин, наподобие dodo-pizza, только сильно упрощённый.

Спустя 3 месяца проект был написан. Я изучил основы symfony, познакомился с доктриной и шаблонизатором twig. Но через месяц меня пригласили на стажировку как Junior Frontend Ingineer. Мне предстояло писать на React.

Уже полгода, как работаю в компании, изучил React, TypeScript, Redux, Reatom, а про Symfony благополучно забыл. "А что если написать полноценное web-приложение на React и Symfony?" - подумал я и решил реализовать это, попутно познакомиться с Bootstrap, вспомнить MySQL, Nginx и задействовать новые накопленные, не использованные на практике знания.

Решил создать CRM сервис для компании занимающейся установкой пластиковых окон. Сборка собрана, стартануть как всегда тяжело, потому что нет чёткой последовательности действий. Но сборка собрана и уже есть всё, чтобы написать первую страничку.