teleren/devto huggingface dataset:
Update on Release 0.4
Tags: opensource, javascript, beginners
Published: 2021-12-08 02:11:37


## Hey

This post is a bit late but I got some things to tell you since last time.

## How is the PR going?
The PR is almost complete, because the author decided to do  his entire project using Vanilla JS, I decided to not opt for [Slate](https://www.slatejs.org/examples/richtext).

--- 

## CKEDITOR
A rich text editor that I tried to use was [CKEDTIOR](https://ckeditor.com/), I got to know it because of WEB524, and decided to give it a try as I could use it through CDN.

#### On HTML
![CDN](https://i.ibb.co/ZNDBL1L/Inkedhtmltest.jpg)

Then at the bottom of my html file I just need to add another line of code:
![CDN2](https://i.ibb.co/47qQv4Y/Inkedhtmltest2.jpg)

#### On JS

And on my JS File I just had to access its content and replace it,
Getting the data:
![JSCK]( https://i.ibb.co/3mffcTw/Inked-GETTING-DATA-FROM-CK-EDTIRO.jpg)

Replacing the data:
![JSCK2]( https://i.ibb.co/qFZs9jR/Inkeddisplaying-data-on-ck-editor.jpg)

--- 

## It worked?

![No](https://media2.giphy.com/media/gnE4FFhtFoLKM/giphy.gif?cid=ecf05e47pnf2l6h9llpkr3kqshkjemjciy04uh9hr00ebixt&rid=giphy.gif&ct=g)

Because I am using span and CSS to set the colors of each character, I have do be able to input it into the text editor, but it won’t work.

---

## What now?
Following the Author, I think my best choice now is to keep going with Vanilla JS.
This way I can get input from the textbox, map it and apply the spans with colored classes and display it in a `<p>` tag or so.

This is how it is working now:

![working]( https://media2.giphy.com/media/N8x9xFktrPeXv9NY4A/giphy.gif?cid=790b76117e8fcd91f1238069160f6cb3b4f205bae928c341&rid=giphy.gif&ct=g) 

---

## When it’s going to be done
Wednesday of this week I should have it all complete.
On Friday I will post another update on how the PR and review with the Author was.

Thank you so much for reading!
2D puzzle "Tangled Stones"
Tags: gamedev, indiedev, puzzle, love2d
Published: 2021-12-08 01:35:26

Here is a technical demo of my game. It lacks a menu and any settings, and the graphics are highly sketchy. My main goal was to test the idea of the gameplay.

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

- **Title:** Tangled Stones.
- **Genre:** 2D puzzle.
- **Date of start of work:** Wed Nov 04, 2020.
- **Date of release:** Thu Apr 22, 2021.
- **Developers:** only me.
- **Game engine:** [LÖVE](https://love2d.org/).

**Summary:**

There is a set of paired connected stones on the game field. The player's task is to untangle them and place them in the hole at the bottom of the screen.

**Description:** [https://github.com/thewizardplusplus/tangled-stones/blob/master/docs/gameplay.md](https://github.com/thewizardplusplus/tangled-stones/blob/master/docs/gameplay.md).

**Controls:**

The stones are moved by the drag-and-drop mechanism using a mouse/touchscreen.

Resetting the game field is done with the <kbd>@</kbd> button.

**Builds:**

- [LÖVE game file](https://love2d.org/wiki/L%C3%96VE_Game_File) (410 KiB): [https://github.com/thewizardplusplus/tangled-stones/releases/download/v1.5.6/tangled-stones.love](https://github.com/thewizardplusplus/tangled-stones/releases/download/v1.5.6/tangled-stones.love)
- Windows (4.06 MiB): [https://github.com/thewizardplusplus/tangled-stones/releases/download/v1.5.6/tangled-stones-win64.zip](https://github.com/thewizardplusplus/tangled-stones/releases/download/v1.5.6/tangled-stones-win64.zip)
- macOS (5.67 MiB): [https://github.com/thewizardplusplus/tangled-stones/releases/download/v1.5.6/tangled-stones-macos.zip](https://github.com/thewizardplusplus/tangled-stones/releases/download/v1.5.6/tangled-stones-macos.zip)
- Linux (in [AppImage](https://appimage.org/) format; 4.1 MiB): [https://github.com/thewizardplusplus/tangled-stones/releases/download/v1.5.6/tangled-stones.AppImage](https://github.com/thewizardplusplus/tangled-stones/releases/download/v1.5.6/tangled-stones.AppImage)

**Source:** [https://github.com/thewizardplusplus/tangled-stones](https://github.com/thewizardplusplus/tangled-stones) (MIT license).
Collector Score on Flow - Dapp with the Hyperverse
Published: 2021-12-08 01:21:16

## What is an NFT?
_"Some tokens are fungible, this one is not"_ - [Sahib Singh](https://twitter.com/sahibcantsingh/status/1466596027754897408?s=20)

A non-fungible token (NFT) is a cryptographic token that represents a unique asset. NFTs enable digital property rights. They are not interchangeable with each other and introduce scarcity to the digital world.

NFTs are being created (minted) every day and many people use NFTs as collectibles. Some buy them as investments, some do it to support the creator or artist, others might just do it for the bragging rights that comes from owning a specific NFT.

## Problem: As a Creator, how do you give back to your community? 
A community is essential for the success of a Creator's collection. Many Creators know this and some Creators may want a way to give back to their communities. 
But how can one know how much each individual collector in the community should be rewarded? - As the impact of each collector will vary. Furthermore, a Creator would also be interested in knowing how Collectors could become even more motivated to continue supporting a specific collection.
This is where implementing a Collector Score could be beneficial.

## Learn from the Best

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c8qx81cczwmo4nmn7tmm.png)

We know from NBA TopShot, one of the biggest NFT projects out there, that a Collector Score help understand the engagement level of each Collector. It also indicates if a Collector is valuable to the community and it gives the Collector a sense of accomplishment and growth as one's Collector Score increases when one collects more new NFTs.

## Use and build Hyperverse Modules

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0og2h2484hskst90g3co.png)

Hyperverse is a platform and DAO (Decentralized Autonomous Organization) that has web3 modules that you can use to, for instance, create your own NFT collection and mint it.

I propose building a Collector Score module that can interact with any NFT module on Hyperverse.

Having a Collector Score would allow Creators to know how much each collector should be rewarded in terms of maybe an NFT airdrop or social token distribution.
The score enables for the potential Dapp (Decentalized application) creation of leaderboards and encourage more engagement in the community.

## Benefits of the Hyperverse

Using existing Hyperverse modules allows developers to build and launch Dapps in just a few minutes. The modules have been security audited and deployed on the blockchain. So you don't have to learn how to write smart contracts to get started.

Hyperverse allows anyone to build modules and provide the code to other developers. Every time your code gets used you would receive lifetime royalty from your module. [Learn more here](https://www.decentology.com/blog/composing-the-hyperverse)
My Reason Why
Tags: beginners, story, teambuilding, productivity
Published: 2021-12-08 00:25:41

When I was younger I knew I always wanted to do something with computers but I was never sure what I wanted to do. At first it was building computers, like hardware or lego pieces. At 16 I built my first computer and I was extremely proud of myself. I found some much satisfaction out of building something that I could operate and I started devoting myself to researching more and more about computer hardware and future careers. Over the course of the next two years I found out that depending on the area of computer engineering a person would take on heavily relied upon their math level. In HS, I was always decent at math but comparatively to other people in these fields I was far behind everyone else. So I figured I needed to get a decent education in order to pursue these dreams and I found my interest in physics in my senior year of HS. I was elated by physics and wanted to pursue it. I studied at community college for 3 years to transfer to UCSD. My major was sociology but at UCSD I planned on switching that major to something I actually wanted to pursue. I got in, and quickly scheduled a meeting with a counselor. In my meeting with them, they had told me that all transfer students could not switch majors if completing the major requirements took longer than 2 years and that this policy was implemented the year I got in. Essentially, no matter how much money I would be willing to spend to stay at UCSD they would not accept it, I was shattered. I felt like the world was crashing on top of me that all this time building to go to UCSD and do something with computers would never come to fruition. I completed my sociology degree cause I came to realize that my degree would show that I am capable of dedicating myself to education. I have always had this dream of pursuing computers but I never pushed myself to get into the field until I decided to take the plunge at Flatiron school. That is my reason why. My reason why is because this is my dream and I want to be able to show my friends and family that I am capable of pursuing my dream.
integrate automation to my personal blog website
Tags: actionshackathon21
Published: 2021-12-08 00:19:27


### My Workflow
integrates changes made to the main repository and automates the process of testing and building the code before merging it to the main branch


### Submission Category: 
Wacky Wildcards


### Yaml File or Link to Code:
https://github.com/ThembaGlen/Personal-blog/blob/master/.github/workflows/Continuous-Integration.yml
100 días de código: 35%, recuperando el ritmo.
Tags: spanish, 100daysofcode, webdev
Published: 2021-12-08 00:18:33

Photo by [Adelin Grigorescu](https://unsplash.com/@adelin_g?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) on [Unsplash](https://unsplash.com/?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)
  
¡Hey hey hey!

¿No les ha pasado que durante algunos días no logran concentrarse para lograr lo suficiente en los proyectos que les gustaría? Pues eso mismo me había pasado los días anteriores. 

Pero hoy es otro día, otra historia y por fin logre llevar mi productividad mas allá de los limites. Comenzar el día haciendo y no pensando en lo que se tiene que hacer ha sido el primer acierto y es lo que yo les recomendaría. 

Es bueno apreciarse a si mismo y alimentarse de una forma sana para sentirse en las mejores condiciones, si no te gusta prepararte de comer intenta hacer como que tienes que cuidar de alguien mas y ese alguien mas es tu cuerpo.
Puede sonar como que estas al borde de la locura por separarte de tu cuerpo pero te sirve especialmente si tiendes a cuidar mas a otros que a ti.

Hoy logre bastante asi que comencemos con la sección principal.

### Ayer: 
- Me puse manos a la obra para crear una aplicación de biblioteca mas completa que básicamente seria un CRUD sin el update. Avance bastante en ella en cuanto a la codificación pero aun me falta bastante.
- Practique 15 min de Touch Typing.

### Hoy:
- Gracias a mi concentración logre terminar con el proyecto de la biblioteca y avance hasta el proyecto Tic Tac Toe en The Odin Project.
- Me di cuenta que intentar prever metas semanales con antelación puede ser una tarea complicada asi que pensé en hacer una lista de tareas que vaya actualizándose en la semana para asi poder cambiar mis prioridades.
- Practique 30 min de Touch Typing.
- Aprendí algo de TypeScript.
- Aprendí sobre como crear funciones fabrica las cuales sirven cuando tienes muchos objetos que tienen caracteristicas especificas y similares y también como crear módulos para proteger la información del alcance global lo cual crea seguridad en los sitios web.

Ha sido un día productivo y estoy muy contento con ello.
Hoy comenzare a hacer la lista de cosas por hacer en la semana la cual es la siguiente:
- Terminar el proyecto Tic Tac Toe con una interfaz agradable y responsive desing para incorporar en mis proyectos principales.
- Hacer una entrada diferente a 100daysofcode en Dev.
- Obtener información para mi sitio web.

Por cierto ya que termine mi proyecto de biblioteca quiero compartirlo con ustedes. Pueden visitarlo [aquí](https://darito97.github.io/Biblioteca/). Cualquier recomendación pueden hacérmela saber.

Espero que tengan mucho éxito con sus proyectos y animo con todo.
Adiós mundo!
Lazy vs Eager Initialization
Tags: csharp, tutorial, programming, beginners
Published: 2021-12-07 20:23:14

If you liked what you read feel free to connect with me on [linkedin](https://www.linkedin.com/in/albert-bennett/) or follow me on dev.to :)
<br/>

Hi and welcome,
Today I'm going to go though the uses and differences of Lazy vs Eager initializing of objects.
As a bit of a disclaimer, I haven't seen lazy objects being used too often nowadays. Today was the first time that I had seen it in about 4 or so years but, I thought that it was an interesting topic to write a blog on. 
<br/>

**Introduction**
What Lazy initializing of an object means is to initialize an object when it is first accessed, instead of eager initializing an object.
<br/>

**Pros and Cons of using Lazy Initializing**
Below are a few of the advantages and disadvantages of using Lazy initialization vs Eager initialization.
- pro: Lazy initializing an object can save on resources (memory and computation mostly).
- pro: With lazy initializing you can defer the instantiation of the object. For example you can instantiate a large object or collection after some intensive processing which can help improve overall performance by free up resources.
- con: It's a bit overkill if the object that you are lazy loading is small and you know that you will need to use it soon after it has been defined.
- con: Can waste lots of resources if managed incorrectly such as wrapping many small objects instead of managing them in a Lazy enumerable object or statically.

<br/>**Code Sample**
See below for how you can define a lazy object in C#:
```csharp
    public class TestLazyInitialization
    {
        Lazy<MassiveObject> bigObject;

        public MassiveObject BigObject
        {
            get
            {
                return bigObject.Value;
            }
        }

        public void MyFunction()
        {
            bigObject = new Lazy<MassiveObject>(() => new MassiveObject
            {
                ReallyBigString = "This is a massive object"
            });
        }
    }

    public class MassiveObject
    {
        public string ReallyBigString { get; init; }
    }
```
The creation of the object inside of the lazy object happens when the Value property of the lazy object (bigObject.Value) gets accessed, in this case when a consumer access the BigObject property of the TestLazyInitialization class.

<br/>**Notes**
- Eager initializing an object is to initialize an object when it gets defined. Something like this:
```csharp
MassiveObject bigObject => new();
``` 
Or if you are old skool (⌐■_■)
```csharp
MassiveObject bigObject = new MassiveObject ();
``` 

<br/>Thanks for reading my post and I'll see you next time
ᕕ( ᐛ )ᕗ
Handling SIGTERM and SIGKILL on Spring Boot web applications
Tags: java, spring, docker, kubernetes
Published: 2021-12-08 00:01:29

This post was reproduced [here](https://www.renatofialho.com/blog/spring-boot-docker-orchestrators) as well

When debugging one system recently, I found out that every time that a deploy, downscale, container rotation or k8s updates happened I had a lot of connection errors in the ingress car.

In common on those situations, is that k8s sends a SIGTERM, then have a grace period for the application to handle it gracefully, and after N seconds, it sends a SIGKILL, and that is the end.

At first, being a little bit reluctant that the issue was with Spring Boot or the web server that I run with (Tomcat), I tried to check every possible misbehave from the load balancer, no success.


![This is usually how the service infra works](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/odv3qb3l8tkktyibzuqa.png)


One example on how this works, but mainly from AWS ECS:


![AWS ECS ELB Container Draining](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dj88paw4ie145rh34x3k.png)

Then, after some digging into the server properties in Spring Boot, we found out that the common behaviour for the web server is to shutdown immediately after receiving a SIGTERM, not waiting for any persistent`keep-alive` connections to be properly finished and closed.

## And how did I fix this?

So, in order to fix that, you must add a line to your `application.properties` or `application.yml` file like this:

```
    server.shutdown=graceful
```

OR

```yml
server:
    shutdown: graceful
```

Passing `graceful` to the server shutdown property allows the web server to support graceful shutdown, allowing active requests time to complete and close any persistent `keep-alive` connections towards your service.

Oh, and if in any case you ended up here but want to know more how Quarkus handles this, i suggest you to take a look [here](https://quarkus.io/guides/lifecycle#graceful-shutdown), because it explains in an easy way how to implement this on Quarkus.
What to do with broken tests
Tags: automatedtests, testing, tdd, codequality
Published: 2021-12-14 14:57:48

---
title: What to do with broken tests
published: true
date: 2021-12-08 00:00:00 UTC
tags: automatedtests,testing,tdd,codequality
canonical_url: https://jhall.io/archive/2021/12/08/what-to-do-with-broken-tests/
---

Imagine you’ve just started a new job or joined a new team. They have a working product, that’s already used in production by a large number of active users, but the code looks like a big pot of grandma’s spaghetti, complete with tomato sauce and meatballs.

This describes the majority of projects I’ve joined, so I expect you’ve run into something similar before, too.

Now further imagine that this project has a bunch of automated tests written, but they aren’t run regularly. Perhaps because they take too long (hours?), or perhaps simply because nobody took the time to set up a build server and CI pipeline to run the tests automatically.

Whatever the reason for the test disarray, how should you proceed, if your goal is to start receiving value from these tests again?

Below is my suggested approach, which I have used successfully on several projects:

1. **Disable broken tests.**

2. **Automate your tests.**

3. **Fix broken tests.**

4. **Delete broken tests.**

5. **Write tests for all functionality changes.**

* * *
_If you enjoyed this message, [subscribe](https://jhall.io/daily) to <u>The Daily Commit</u> to get future messages to your inbox._
🎥 ⬇️ 📦 - Public Video URLs
Tags: javascript
Published: 2021-12-07 23:50:08

**What is WatchVideoByLink?**

WatchVideoByLink is a web-app that allows you to watch, download and organise public video URLs.

**WatchVideoByLink provides:**
- Support for MP4/WebM/HLS/MPEG-DASH video types
- Custom video players
- Auto detect video files from URLs
- Download, Trim or Record streams and videos
- Organisation tools
- Search functionality
- Restore failed video downloads
- and more

Github - https://github.com/MohamedBakoush/WatchVideoByLink
Hire Ex-Founders
Tags: hiring, founders, startup, skills
Published: 2021-12-05 11:08:31

---
title: Hire Ex-Founders
published: true
description: 
tags: hiring, founders, startups, skills, 
---

Ex-founders are usually good hires. Especially if they are deeply skilled in something other than being generalists. 

There are bad hires who come in form of ex-founders, in fact many of them and they bring so much baggage enough to ruin not only the area of your business you hand over to them, but also your team dynamics.

The list of character issues can range from be very egoistical, being a know-it-all, expensive and unproductive, not-open minded, lacking the bones to execute. Too many to list here. On the other hand what you're really looking for in an ex-founder is ownership and resourcefulness.

If you have made an hire [maybe expensive] and you think because it took you so long and so much resources to find them, but you knew from Day 1 they were a bad fit. You need to let go them fast and move on, your expense is the cost of learning who **not** to hire.

It is hard to get it wrong when you rely heavily on the character of a candidate vs their abilities.
How to create Responsive Movie Website with HTML CSS JavaScript
Tags: css, beginners, webdev, tutorial
Published: 2021-12-07 23:30:08

{% youtube -ex2BO2DG2s %}

How to create responsive movie website with html css javascript.
In this video we'll learn how to create a complete responsive movie website using pure css and javascript.

---

### 📹 Recommended Videos
[How to use ionicon](https://youtu.be/TTrYjLOJeKs)

---

### 🔗 Essential links
[All Images](https://drive.google.com/file/d/1mxarqg0S7-Rh6yj4E-O9rO5fRc4z1xDR/view?usp=sharing)
[Html Text](https://drive.google.com/file/d/1Lxx19kxyPtqGHdepBy8nY5Mtk4O-Hfu_/view?usp=sharing)
[Font - Inter](https://fonts.google.com/specimen/Inter?query=inter)
[Ionicon](https://ionic.io/ionicons)
[Source Code](https://www.patreon.com/posts/source-code-59649299?utm_medium=clipboard_copy&utm_source=copy_to_clipboard&utm_campaign=postshare)

---

### 💜 Like - Follow & Subscribe Me
Twitter : https://twitter.com/codewithsadee
Github : https://github.com/codewithsadee
YouTube : [codewithsadee](https://www.youtube.com/channel/UC1PZHWV6VvICTL1LgFUZq6g)
Patreon : https://www.patreon.com/codewithsadee

---

[![Buy Me A Coffee](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9kn6vwn4mulhsx6o69is.png)](https://www.buymeacoffee.com/codewithsadee)