teleren/devto huggingface dataset:
Recommend an excellent HTML5 video player framework - MuiPlayer
Tags: video, html, player, muiplayer
Published: 2021-09-24 02:39:01

![Desktop](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f1gkbzufe463gqwj8xkv.png)

![Mobile](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tvz7whx9idi0ew2or025.png)

<a href="https://muiplayer.js.org/" target="_blank">Docs</a> | <a href="https://github.com/muiplayer/hello-muiplayer/" target="_blank">Github</a>

## Introduction

MuiPlayer is an HTML5 video playback plug-in, which is configured with exquisite and operable playback controls by default, involving common playback scenarios, such as full-screen playback, playback fast forward, loop playback, volume adjustment, video decoding and other functions.

Support mp4, m3u8, flv and other media formats to play, solve most compatibility problems, and adapt to play on PCs and mobile phones.

MuiPlayer has a wealth of parameters to customize the player instance, and the video playback of the customized scene can be completed through easy configuration.

## Features

MuiPlayer helped us solve some common problems in daily H5 Video application development:

1. The ui of different browser platforms cannot be unified
2. Conflicts between ui extensions and state processing are prone to
3. In different environments (android, ios, pc), h5 video api may trigger events at different times
4. There are various compatibility issues with media formats, muiplayer handles most of the compatibility issues when playing in different environments
5. Repeated stepping on some pits in the process of developing h5 video, we provide a complete solution, so that developers can avoid some detours
What skills do developers mostly employed on teams not learn (vs. those who work mainly as indie developers)?
Tags: discuss, career
Published: 2021-09-24 02:22:31

Following on from Ben's [post](https://dev.to/ben/what-skills-do-career-indie-developers-not-learn-vs-those-employed-mostly-on-teams-485j) I thought it might be interesting to turn the question around the other way...

Looking forward to the discussion.
CSS Specificity
Tags: css, webdev
Published: 2021-09-24 01:43:06

*This articles assumes a basic understanding of HTML and CSS*

Most beginners quickly come to understand that elements on a page inherit every rule that applies to it, accumulating styles. However, few understand what happens when multiple rules apply to the same element - **the selector which is more specific takes priority**. Conversely, rules that are less specific are overridden.


## Calculating Specificity

In order to determine how specific a selector is, we must first determine the number of items that are present in each of the 4 categories.

1. html `style` attributes
1. ids (`id` attribute)
1. other attributes (including `class`), pseudo-classes (e.g. :link, :hover)
1. elements, pseudo-elements(e.g. :before, :after)

When we have the number of items in each category, concatenate them back-to-back to form a final value. Like number systems with a large base, **a number in a larger category always beats the number in a smaller category**.

```html
<style type="text/css">
    /* priority: 0,0,0,1 */
    p {
        color: black;
        font-weight: bold;
    }

    /* priority: 0,0,1,1 */
    p.para {
        color: blue;
        margin-left: 1rem;
    }

    /* (smaller priority that p.para)
        priority: 0,0,1,0 */
    .para {
        color: green;
    }


</style>
<!-- (style attribute) priority: 1,0,0,0 -->
<p class="para" style="color: purple">
    Hello World
</p>
```

In this example, the text will appear *purple* because the style attribute has the highest priority and inherit other rules (font-weight, margin-left) that were applied.


## !important

The final consideration when trying to determine which CSS rules are applied is the `!important` keyword. By appending this to any CSS value, it  increases its priority by another degree. `!important` rules are sorted and applied in order of specificity with other `!important` rules before normal rules are considered.

However, using `!important` often breaks the design of carefully crafted style sheets and should be avoided!


## Conclusion

By developing a thorough understanding of how specificity works, we can easily control which styles are applied by increasing or decreasing a selector's specificity. This allows us to elegantly design succinct style sheets that follow DRY principles.


If you liked this article, give me a shoutout on Twitter at [@JoelLau93](https://twitter.com/JoelLau93) or let me know how I can do better!

Further Reading:
https://www.w3.org/TR/CSS2/cascade.html
Issues and pull requests on a Static Site Generator written in Javascript
Tags: beginners, javascript, github
Published: 2021-09-24 01:40:56

## Introduction
Hello everyone, my name is Tuan aka Dustin. This is my umm 5th or 6th blog about programming. Today I'd like to talk a bit about my (n)th time creating issues and pull requests for another project.

## Another introduction :) 
As I surfed through the people list in the course, I decided to partner up with Jenny who is using Javascript for this project just like me. The reason for choosing her project was that I wanted to get even better with my Javascript skills as I could learn a lot when reading others' code. 

## Reading her code part
I got unlucky as she is a very good coder, her code is understandable and clear. Every bit is made with a lot of attention and thoroughness. It took me like what 5 to 10 mins to fully understand her work thanks to her organization of file structure. 

## Filing issue part
As I couldn't find any other bugs but I got a new idea that could the project to a whole new level which will include converting mark down file to html file. So I went ahead and filed an issue that contains every detail of what I wanted to do to the project. Fortunately, It caught her attention right away.

## Sending pull request
So I spent a day or two to code the idea and sent a pull request with the code. So we had a little discussion about how things should work and what should be changed. Because we shared the same thought and agreed with each other, things went perfectly.

## Wrap up
I found this lab is very interesting and helpful as I've learnt a lot of new things and different styles of writing code.
Pulsar Summit
Tags: apachepulsar
Published: 2021-09-24 01:08:09

Pulsar Summit Europe 2021 is taking place virtually on October 6. Sessions include industry experts from Apache Pulsar PMC, CleverCloud, and Databricks. You’ll learn about the latest Pulsar project updates, technology. Register today and save your seat: 

https://pulsar-summit.org/en/event/europe-2021/
toString Hack
Tags: javascript
Published: 2021-09-24 01:02:27

```js
x=self+''
console.log(
  x[8],x[9],x[6],' ',
  x[3],x[1],x[2],' ',
  x[10],x[4],x[8],' ',
  x[5],x[1],x[11]
)
```

;)

_See more stuff like this over @ [Snippet Zone](https://snippet.zone/)_
Finally getting the hang of some of these methods
Tags: beginners, javascript, webdev, codenewbie
Published: 2021-09-24 00:33:41

Working through some labs in my Flatiron cohort and some of these methods are starting to feel a bit more second nature:

```javascript
function findMatching(drivers, str) {
  const result = drivers.filter((driverName) => driverName.toLowerCase() === str.toLowerCase());
  return result;
}
function fuzzyMatch(drivers, str) {
  const result = drivers.filter(driverName => driverName.startsWith(str));
  return result;
}

function matchName(drivers, str){
  const result = drivers.filter(driverName => driverName["name"] === str)
  return result;
}
```
September 23rd, 2021: What did you learn this week?
Tags: weeklylearn, discuss, weeklyretro
Published: 2021-09-24 00:28:43

It's that time of the week again. So wonderful devs, what did you learn this week? It could be programming tips, career advice etc.

<center>

![Yoda wooping someone's butt](https://media.giphy.com/media/yDYAHbqe5DfyM/giphy.gif)
</center>

Feel free to comment with what you learnt and/or reference your TIL post to give it some more exposure.

{%tag todayilearned %}

<!-- 
And remember, if something you learnt was a big win for you, then you know where to drop it as well.👇👇🏻👇🏼👇🏽👇🏾👇🏿

{%link https://dev.to/devteam/what-was-your-win-this-week-46ik %}

<center>

![Little kid making a fist as if to say "Yes!"](https://media.giphy.com/media/6brH8dM3zeMyA/giphy.gif)
</center>
-->
SSH into a server behind Cloudflare using an SSH config file
Tags: devops, linux, sysadmin
Published: 2021-09-23 23:51:52

---
title: SSH into a server behind Cloudflare using an SSH config file
published: true
description: 
tags: devops,linux,sysadmin,
//cover_image: https://direct_url_to_image.jpg
---

So you've proxied your website's traffic using Cloudflare, and now you can't access your server using `ssh user@mydomain.com`. I feel your pain. A quick Google search on how to get around this may return recommendations like "just don't proxy your traffic" or "add an unproxied ssh.mydomain.com entry to your DNS." Those suggestions are a bummer, and they negate some of Cloudflare's biggest benefits.

Thankfully there's a better way: you can add the domain as an entry to your `~/.ssh/config` file. This post will walk you through how to set this up on a MacOS or Linux machine.

Run the following command in your terminal to open the SSH config file in Nano:

```sh
nano ~/.ssh/config
```
Go to the first empty line of the file and insert the following, replacing the domain and IP address with your own:

```
Host mydomain.com
     HostName 151.101.2.217
```

Save the file by pressing <kbd>ctrl</kbd> + <kbd>o</kbd>, then press <kbd>enter</kbd> to save. You can then exit by typing <kbd>ctrl</kbd> + <kbd>x</kbd>.

Now you can SSH into the server using its domain name, just like you could before you proxied it with Cloudflare.

```sh
ssh user@mydomain.com
```

You may also save your username in the `~/.ssh/config` file if you like:

```
Host mydomain.com
     HostName 151.101.2.217
     User user
```

This will allow you to ssh into your server with no username:

```sh
ssh mydomain.com
```

Interestingly, you aren't actually required to use a domain name to identify the server in the config file. Instead of `Host mydomain.com`, it could be `Host mydomain`, `Host something_random` or nearly anything else you'd like.

## Things to keep in mind

A couple of things to keep in mind: if your server's IP changes, you'll need to change it in your config file as well.

If you're having trouble getting this to work, try opening a new terminal after modifying the config file. If you're on Linux and still having trouble, try restarting your ssh daemon using `sudo systemctl reload ssh`.
A importância do autoconhecimento na mudança de carreira
Published: 2021-09-23 23:49:39

*Em algum momento da vida, grande parte das pessoas passa por um questionamento pessoal de “o que eu estou fazendo da vida?”. Umas mais novas, outros numa idade mais avançada.*

Pra mim, essa chacoalhada veio perto dos meus 40 anos. Naquela altura, eu ocupava um cargo de gestão em uma universidade. Isso me afastava das salas de aula, que eu amava, e me aproximava de burocracias.

Demorei certo tempo até entender que o problema não era eu nem a minha dedicação (no caso, falta de), mas sim um modelo engessado, que limitava minhas capacidades e não me desenvolvia. Não estava alinhado ao tal do propósito.

**Fui mordida por esse bichinho e decidi que queria mudanças o quanto antes. A decisão é algo libertador.**

Tive muitos medos, é claro! Quem não tem? Mas eles nunca impediram a minha coragem.

Foram noites mal dormidas, pensando em muitos “ses”.

E se as empresas preferirem pessoas mais novas do que eu?

E se eu não for aceita em um ambiente só de jovens?

E se der tudo errado?

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

##O remédio para essas hipóteses foi o autoconhecimento.

Eu sabia da minha personalidade inquieta, produtiva, capaz… Eu sabia o que estava me fazendo buscar esse novo caminho. Sabia do meu potencial, enquanto profissional e que visão e dedicação nunca me faltariam.

Estava segura. Havia guardado uma reserva financeira boa, que me ajudaria a voltar a estudar e a me atualizar. E, também, sabia que seria natural uma diminuição dos meus ganhos, uma vez que estaria iniciando em áreas nunca antes experienciadas.

O recado que quero deixar aqui pode parecer clichê, mas é a mais pura verdade e digo com propriedade: vai dar medo, mas vai com medo mesmo!

Entenda que erros fazem parte de uma jornada de aprendizado e que eles, em algum momento, se transformarão em acertos, te levando ao lugar certo. Desenvolva a habilidade de adaptação, esteja aberto(a) para isso.

*O processo não é fácil, mas vale a pena! Ninguém precisa passar a vida toda fazendo a mesma coisa. Somos capazes de muito mais desde que estejamos dispostos a meter a mão na massa.* 😘
Git pre-hooks examples
Tags: git
Published: 2021-09-23 23:06:48

Here are couple of posts I wrote on how to configure pre-commit hook with Gradle and NPM projects. The way below examples are done, similarly other Git pre-hooks can be configured.

- [pre-commit hook for Gradle project](https://dev.to/akdevcraft/git-pre-hook-pre-commit-with-gradle-task-134m)
- [pre-commit for NPM project](https://dev.to/akdevcraft/git-pre-hook-pre-commit-hook-with-npm-project-44p2)
- [pre-push hook for Gradle project](https://dev.to/akdevcraft/git-pre-hook-setup-pre-push-hook-for-gradle-project-example-1nn6)


Above posts have Github repo examples as well. 
Let me know if you need examples on other Git pre-hooks.
Announcing the First Wave of XRPL Grants
Tags: xrplgrants, xrpl, blockchain, opensource
Published: 2021-09-23 22:52:34

We’re excited to announce the inaugural awardees of [XRPL Grants](https://xrplgrants.org/), presented by RippleX with XRPL Labs as a technical advisor. The XRPL Grants Program provides funding to independent developers building a variety of self-selected projects that leverage the XRP Ledger’s open-source technology and further accelerate the Internet of Value. The program welcomes applications from any project that builds on the [XRP Ledger](http://xrpl.org) (XRPL) and involves some technical development.

For the first wave of the XRPL Grants Program, we invited applicants to apply with any open-source project built on the XRPL and particularly encouraged projects focused on the development of non-fungible tokens (NFTs). 

In this wave, more than 100 grant proposals were submitted, and from this incredible batch of applicants, over 20 grantees have been awarded nearly $2 million in total value. Among the grantees are individual developers and teams from more than 10 countries around the world. We're also proud to award three grants to applicants from within Ripple’s [University Blockchain Research Initiative](https://ubri.ripple.com).

Inaugural grantee projects tackle a wide range of problems and opportunities, including:

* The development of NFTs for multiple industries (retail, art, music, sports, digital advertising and carbon capture)
* Learning tools and platforms to build on and interact with the XRPL
* Data visualization tools
* Payment and security solutions

You can learn more about the Wave 1 grantees on the [XRPL Grantees page](http://www.xrplgrants.org/grantees), at XRPL-related events—including [Apex: The XRPL Developer Summit](https://apexdevsummit.com/)—and on the [RippleXDev Twitch channel](http://twitch.tv/ripplexdev). 
 
The XRP Ledger is an open platform, and it is not necessary to apply for a grant in order to build on the XRPL. However, information regarding the application window for the next round of grants will be posted on [XRPLGrants.org](https://xrplgrants.org/).

🎉 [XRPL Grants - Wave 1 Awardees](http://www.xrplgrants.org/grantees) 🎉

Let us know if you have any questions or thoughts in the comments right here!
Kids + Reading = Fun? Part 2
Published: 2021-09-23 22:48:33

Starting off from where we last left off...

I started working for a company to create a project called Scribble Stadium. For this the project had the aim of creating a reading and writing game that would make both fun for kids. We made a game out of this, meaning there are turns and points scored.

Before we got there a few other developers had their hands in the code. They moved on to other pastures so it fell to us and the rest of my cohort to finish to the best of our abilities. It wasn't easy. One of the challenges our cohort faced was transferring the code from Okta to Auth0. They pulled this off well within time to obtain MVP.

The team I was involved with had a bit more trouble. We had to develop a bot that would play the game like a player when their weren't enough people to go around. It was challenging. None of us had ever created a bot before. However we came together and were able to figure out the basic logic behind the bot.

Still... this took us about 3 weeks to come up with the logic and how the bot should perform. Another month was spent coding and troubleshooting. Time after time bugs would pop up, or tests wouldn't pass. Luckily with perseverance we overcame the challenges and successfully made our MVP.
undefined method Illuminate\Auth\TokenGuard::attempt()
Published: 2021-09-23 22:30:53

Lors d'une configuration de JWT dans un projet laravel vous rencontrez le probleme suivant
```php
Symfony\Component\Debug\Exception\FatalThrowableError (E_ERROR)
Call to undefined method Illuminate\Auth\TokenGuard::attempt()
```
aller tout simplement dans le fichier config > auth.php et changer ceci

```php
      'api' => [
            'driver' => 'token',
            'provider' => 'users',
            'hash' => false,
        ]
```
en 
```php
      'api' => [
            'driver' => 'jwt',
            'provider' => 'users',
            'hash' => false,
        ]
```

Merci, bonne suite de code.
Day 458 : Lost In Time
Tags: hiphop, code, coding, lifelongdev
Published: 2021-09-23 21:52:15

_liner notes_:
- Professional : After the hectic day with the hackathon and everything, I decided to take it a little slower and do some training and start working on a new blog post. Speaking of blog post, my latest just got released. Had a couple of meetings. Not a bad day.

- Personal : Last night, I went through tracks for the radio show. Watched an episode of "Boruto" and forgot that it was Wednesday and watched a new episode of Marvel's "What If?". It was a really good episode. Didn't get too much done because the hackathon demos ended pretty late.

![Overhead shot of an island with palm trees in Thinadhoo, Maldives with some shallow blue water where you can see the rocks at the bottom.](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sog1xm9fbwm60sm3g0ov.jpg)

I say it all the time, but I can't believe it's already the end of the week. Feels like I'm lost in time. My new side project will hopefully help with that. Going to go through more tracks for the radio show, watch an episode of "Boruto" and continue working on my side project.

Have a great night!

peace piece
Dwane / conshus
https://dwane.io / https://HIPHOPandCODE.com
{% youtube E6YjQHUbz38 %}
Crypto latest news coinmarketbag.com 
Tags: crypto, bitcoin, blockchain
Published: 2022-02-23 21:53:35

---
title: Crypto latest news coinmarketbag.com 
published: true
date: 2021-09-23 21:40:28 UTC
tags: Crypto,bitcoin,blockchain
canonical_url: https://coinmarketbag.com/?13
---
A Personalized curated list of blockchain and crypto resources for you to explore, including the latest news, podcasts, videos and more. We provide a personalized feed of resources that are tailored specifically to your needs based on your interests, social media connections and other personal information
Dependency Injection Lifetime in .NET
Published: 2021-09-23 20:43:04

.NET supports the dependency injection (DI) software design pattern, which is a technique for achieving Inversion of Control (IoC) between classes and their dependencies.

All these dependencies are registered inside the `Startup.cs` within `ConfigureServices` method of our application and must have a specific lifetime.

#### Service Lifetimes

Services can be registered with one of the following available lifetimes:

- Transient
- Scoped
- Singleton

#### Transient Scope

When a service is been registered as transient it means a new instance of the service is created, every time you request it.
To register a service as transient use the `AddTransient` extension method. For example.

```csharp
public void ConfigureServices(IServiceCollection services)
{
    services.AddTransient<IMyTransientService, MyTransientService>();
}
```

#### Scoped Scope

When a service is registered as scoped, a new instance of the service is been created for each scope/request. Within the scope the existing instance of the service is used.
To register a service as scoped use the `AddScoped` extension method as shown in the following code snippet.

```csharp
public void ConfigureServices(IServiceCollection services)
{
    services.AddScoped<IMyScopedService, MyScopedService>();
}
```

#### Singleton Scope

When a service is registered as singleton it means that only one instance of that service is been created during the application lifetime.
To register a service as singleton use the `AddSingleton` extension method as shown in the following code snippet.

```csharp
public void ConfigureServices(IServiceCollection services)
{
    services.AddScoped<IMySingletonService, MySingletonService>();
}
```
Best Programming Stuff
Tags: programming, webdev, showdev, stuff
Published: 2021-09-23 13:51:27

I  have seen some of the programming stuff article on internet as usual sharing it with you guys...Some of the websites are having affiliate links

## 1. Best Monitors For Programming ##

When programming or coding for long periods, it's essential to have a comfortable monitor to keep eye strain to a minimum.

1. [Best Monitor For Programming](https://cmsinstallation.blogspot.com/2021/05/top-7-monitors-for-gammers-programmers.html)

2. [Best Monitor For Programming](https://www.rtings.com/monitor/reviews/best/by-usage/programming-and-coding)

3. [Best Monitor for Programming & Coding (2021 Update)](https://www.guru99.com/best-monitor-programming.html)

## 2. Best Keyboard For Programing ##

As developers we don’t need many tools to work, many would say that we just need a laptop or computer, and even though that’s true, there’s a difference between having the minimum required to work to have the tools that you need to work comfortably, productive and healthy.

1. [List of Best keyboard for programming India 2021](https://cmsinstallation.blogspot.com/2021/04/best-keyboards-for-programming-in-2021.html)

2. [8 Best Keyboards for Programming in India 2021](https://www.thecrazyprogrammer.com/2020/09/best-keyboards-for-programming-in-india.html)

3. [Best Keyboard for Programming & Coding in 2021](https://www.guru99.com/best-keyboards.html)

## 3. Best Mouse For Programing ##

Programmer, Gammers, and coders spend their whole day with computers. So they have comfortable things for use. A standard mouse is irritating to use for a long time. A mouse that puts your hand in an unprejudiced position is maybe the best way to reduce these problems you just have to find a vertical or trackball mouse. Here, I've listed the Best mouse for programming.

1. [7 Best Mouse For Developer / Gaming / Coding](https://cmsinstallation.blogspot.com/2021/05/7-best-mouse-for-developer-gaming-coding.html)

2. [Best MOUSE for Programming & Coding (2021 Updated List)](https://www.guru99.com/best-mouse-programming.html)

3. [The best mouse of 2021: 10 top computer mice compared](https://www.techradar.com/in/news/computing-components/peripherals/what-mouse-10-best-mice-compared-1027809)