teleren/devto huggingface dataset:
Kick off "Better Than Yesterday" Challenge
Tags: productivity, python, mlops, betterthanyesterday
Published: 2021-12-26 03:20:59

**Better Than Yesterday** is the thing I want to do all the time but currently not hard enough to make any difference.

So, I rely on this channel as rocket fuel to myself. Every day, I will try my best to learn something, even a small one, and push some notes here as a record. If I fail any day, I will donate 5$ to a free educational stuff that has helped me learn in the past.

Contents are about: Python, AI in Computer Vision, MLOps and Productivity. Notice that I'm not an expert in any domains above so please don't expect any fancy things. It's all simple at the beginning of the journey.

> Consistency is the key.

Let's see what will happen. 😉


*Photo by <a href="https://unsplash.com/@brett_jordan?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Brett Jordan</a> on <a href="https://unsplash.com/s/photos/consistency?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>*
How to understand long contracts with a visual tool: Sol2Uml
Tags: solidity, contract, sol2uml, visualaid
Published: 2021-12-26 03:04:08

Have you ever faced difficulty in understanding a large solidity contract? If you answer in affirmative, you are in good company. Commercially deployed contracts on mainnet typically runs in ~800 to 1000 LOC. To wrap your brain around the whole contract just by scrolling might not be so useful. So let us explore a visual aid for this purpose: "Solidity to UML".


Let us first see its example on [BSC scan][1] (blockchain explorer-mainnet). On the contract page, click the on the "outline" button to get an overview of different interfaces, library and available abstract contracts(zoom in the image for clarity). 


![verified contract tab on BSC scan ](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tvptzdpzeo5apl4npm0u.JPG)



To get a visual representation click on the  "more options" dropdown list, and click on the "Sol2Uml" button(zoom in the image for clarity).


![verified contract tab on BSC scan](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1c3hkthc8j2sgv2s1nff.JPG)

A vector file(SVG) is generated which can be zoomed infinitely to view the call diagrams between class like structures of your contracts. 

You can also use it to view contracts in your local environment by installing it as npm package. See details [here][2].

Comment or ask if any further queries down below the box.

[1]:https://bscscan.com/address
[2]:https://github.com/naddison36/sol2uml
WebRTC and Svelte Demo
Tags: svelte, webdev, javascript, tutorial
Published: 2021-12-26 01:13:51


**Update**

 I decided to deploy this **[repo](https://github.com/Yakumwamba/google_webrtc_svelte)** with **Vercel** because it gives me the flexibility. 

Kindly check out the **[demo here](https://webrtc-n3gpq25i9-yakumwamba.vercel.app/)**. (Will buy a proper domain name later but for now this is just for testing) nonetheless thanks for Supporting this project I hope to have more collaborations with you in the future. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nugywyop0z7llr59ybu2.png)
============================================
**What is WebRTC?**

WebRTC is a protocol used for having real time communications in the web. With WebRTC, you can add real-time communication capabilities to your application that works on top of an open standard. It supports video, voice, and generic data to be sent between peers, allowing developers to build powerful voice- and video-communication solutions. The technology is available on all modern browsers as well as on native clients for all major platforms. The technologies behind WebRTC are implemented as an open web standard and available as regular JavaScript APIs in all major browsers. For native clients, like Android and iOS applications, a library is available that provides the same functionality. The WebRTC project is open-source and supported by Apple, Google, Microsoft and Mozilla, amongst others.


**Why I am doing this project?**

I feel like svelte is new and has come with some solutions to some of the pain points in today's front end frameworks like react.js and vue.js, and I felt inspired to implement a webRTC application using Svelte only.

If you like WebRTC and would like to learn more about or you want to support me with some code, here is the [repo](https://github.com/Yakumwamba/google_webrtc_svelte)

This repo includes all the tutorials that are on https://webrtc.github.io/samples/. The aim of the project is to convert all the sample code to a Svelte app.

Please kindly star the project and also follow the account.
Thanks, Your support really means a lot to me :) 

Happy coding
How to Visualize Your MySql Database with One Command (and Nothing to Install)
Tags: database
Published: 2021-12-26 00:42:09

---
title: How to Visualize Your MySql Database with One Command (and Nothing to Install)
series: Document Your Database
published: true
description: Generate a diagram of your MySql database with one command.
tags: database
//cover_image: https://direct_url_to_image.jpg
---

Ever wondered what the tables in your MySql database look like, and how they are related to each other? Generate a diagram of your MySql database with one command. You can run this on any system that has Docker installed. 

On a Linux system, run a command like:

```sh
docker run \
--mount type=bind,source="$(pwd)",target=/home/schcrwlr \
--rm -it \
schemacrawler/schemacrawler \
/opt/schemacrawler/bin/schemacrawler.sh \
--server mysql \
--host mysql-rfam-public.ebi.ac.uk \
--port 4497 \
--user rfamro \
--password= \
--database Rfam \
--info-level standard \
--command schema \
--output-file rfam.pdf
```

The command will generate an entity and relationship diagram of the [the Rfam database of the European Bioinformatics Institute](https://docs.rfam.org/en/latest/about-rfam.html). A file called "rfam.pdf" will be generated with the database schema, including foreign key relationships. 

If you are using PowerShell on Windows, replace the trailing backslash on each line with a back-tick, and map the current directory differently. Run this command:

```powershell
docker run `
--mount type=bind,source="${PWD}",target=/home/schcrwlr `
--rm -it `
schemacrawler/schemacrawler `
/opt/schemacrawler/bin/schemacrawler.sh `
--server mysql `
--host mysql-rfam-public.ebi.ac.uk `
--port 4497 `
--user rfamro `
--password= `
--database Rfam `
--info-level standard `
--command schema `
--output-file rfam.pdf
```

You can generate PDF files, and other types of output too. Go through the [SchemaCrawler tutorials on Katacoda](https://www.katacoda.com/schemacrawler) to learn more SchemaCrawler commands.
Complete Roadmap 2022🔥🔥
Tags: python, machinelearning, java, cpp
Published: 2021-12-26 00:40:49

In this blog we are going to see complete Roadmap for Python programming, Machine Learning, C++ and Java. Guys I will mention only topics in roadmap, Not describing Complete topics in my Post. If you like my post then follow me. Lets Start:-

##Complete Roadmap 2022:-
[Python Complete Roadmap 2022](https://codexashish.blogspot.com/2021/12/complete-roadmap-of-python-programming.html)
[Machine Learning Complete Roadmap 2022](https://codexashish.blogspot.com/2021/12/complete-roadmap-of-machine-learning.html)
[C++ Complete Roadmap 2022](https://codexashish.blogspot.com/2021/12/complete-roadmap-of-c-programming.html)
[Java Complete Roadmap 2022](https://codexashish.blogspot.com/2021/12/java-complete-roadmap-2022.html)
[Data Structure Complete Roadmap 2022](https://codexashish.blogspot.com/2021/12/complete-roadmap-of-data-structure.html)


##Some Laravel Tutorial for developer:
[Laravel 8 Interview Questions and Answers in 2022 (Part #1)](https://codexashish.blogspot.com/2021/12/laravel-8-interview-questions-and.html)
[Laravel 8 Interview Questions and Answers in 2022 (Part #2)](https://codexashish.blogspot.com/2021/12/laravel-8-interview-questions-and_22.html)
[Advance Laravel 8 Interview Questions and Answers 2022](https://codexashish.blogspot.com/2021/12/advance-laravel-8-interview-questions.html)
[Everything About Laravel 8 Composer 2022 | Composer in Laravel 8](https://codexashish.blogspot.com/2021/12/everything-about-laravel-8-composer.html)
[Laravel Jetstream vs Laravel ui  vs Breeze](https://codexashish.blogspot.com/2021/12/laravel-jetstream-vs-laravel-ui-vs.html)

##Python Concept and Projects:-
[10 Best Python Libraries For Machine Learning](https://codexashish.blogspot.com/2021/12/10-best-python-libraries-for-machine.html)
[Alarm Clock in Python with GUI](https://codexashish.blogspot.com/2021/07/alarm-clock-in-python-with-gui.html)
[Tic Tac Toe Game Using Pygame in Python](https://codexashish.blogspot.com/2021/06/tic-tac-toe-game-using-pygame-in-python.html)

**Thankyou for reading my blogs.**
#####My Website:
[CodexAshish](https://codexashish.blogspot.com/)
How to Visualize Your PostgreSQL Database with One Command (and Nothing to Install)
Tags: database
Published: 2021-12-26 00:00:56

---
title: How to Visualize Your PostgreSQL Database with One Command (and Nothing to Install)
series: Document Your Database
published: true
description: Generate a diagram of your PostgreSQL database with one command.
tags: database
//cover_image: https://direct_url_to_image.jpg
---

Ever wondered what the tables in your PostgreSQL database look like, and how they are related to each other? Generate a diagram of your PostgreSQL database with one command. You can run this on any system that has Docker installed. 

On a Linux system, run a command like:

```sh
docker run \
--mount type=bind,source="$(pwd)",target=/home/schcrwlr \
--rm -it \
schemacrawler/schemacrawler \
/opt/schemacrawler/bin/schemacrawler.sh \
--server postgresql \
--host castor.db.elephantsql.com \
--user yourusername \
--password yourpassword \
--database yourdatabase \
--info-level standard \
--command schema \
--output-file output.png
```

The command assumes that you have created a sample database on the excellent [ElephantSQL](https://www.elephantsql.com/) service, including some tables and foreign keys. You will need to obtain the username, password and database name of your ElephantSQL instance. A file called "output.png" will be generated with the database schema, including foreign key relationships. 

If you are using PowerShell on Windows, replace the trailing backslash on each line with a back-tick, and map the current directory differently. Run this command:

```powershell
docker run `
--mount type=bind,source="${PWD}",target=/home/schcrwlr `
--rm -it `
schemacrawler/schemacrawler `
/opt/schemacrawler/bin/schemacrawler.sh `
--server postgresql `
--host castor.db.elephantsql.com `
--user yourusername `
--password yourpassword `
--database yourdatabase `
--info-level standard `
--command schema `
--output-file output.png
```

You can generate PDF files, and other types of output too. Go through the [SchemaCrawler tutorials on Katacoda](https://www.katacoda.com/schemacrawler) to learn more SchemaCrawler commands.
We can't afford automation right now
Tags: cicd, automation, continuousdelivery, continuousdeployment
Published: 2022-02-09 18:58:39

---
title: We can't afford automation right now
published: true
date: 2021-12-26 00:00:00 UTC
tags: cicd,automation,continuousdelivery,continuousdeployment
canonical_url: https://jhall.io/archive/2021/12/26/we-cant-afford-automation-right-now/
---

You’ve just joined a new team, and their software is a mess. They do manual deployments, which take a few hours. Rollbacks are even worse. After you write a 3-line fix, it takes several hours to fire up all the test instances to test it.

“If only they had automated these things!” you think to yourself.

Now jump back in time 6 months or a year, and imagine you’re on the same team. You’re under time pressure. You’re not sure if the launch will be a success. And there are a thousand other things going on. Could you see yourself saying “We can’t afford automation right now”?

* * *

How can you balance the need for speed with the desire for automation?

Here’s my simple approach:

- Everything that you do more than once or twice should be documented, to guide a fellow human through the process. This document should be updated every time things change, or it’s found to be incomplete or unclear. Think of this as “Manual automation”. Remember: [humans are Turing-complete](https://jhall.io/archive/2021/03/19/humans-are-turing-complete/).
- Look for opportunities to automate small parts of the task. Focus on error-prone or toilsome tasks. If your deployment involves typing a long `tar` command, turn it into a shell script. If the build process requires 5 different commands in sequence, each of which takes 5 minutes to execute, turn it into a script so you don’t have to sit at your terminal the whole time.

Bit by bit your “manual automation” checklist will turn into a set of automation scripts. All the while, you’ll have complete confidence that you’re only automating tasks that warrant automation, because they provide an imediate return on investment.

* * *
_If you enjoyed this message, [subscribe](https://jhall.io/daily) to <u>The Daily Commit</u> to get future messages to your inbox._
Seeing what triggered a build for confidence in each commit
Tags: netlify, development, workflow
Published: 2021-12-25 23:27:04

---
title: Seeing what triggered a build for confidence in each commit
published: true
description: Every Netlify deploy triggered by a code change includes a link to its git commit, giving you insight into what changes were responsible for the latest updates on your site. Here's where to find it.
tags: Netlify, Development, Workflow
cover_image: https://www.netlify.com/img/blog/og-commit-trigger.png
canonical_url: https://www.netlify.com/blog/2021/12/25/seeing-what-triggered-a-build-for-confidence-in-each-commit/
series: Netlify - a feature a day 2021
---
> Throughout December we'll be [highlighting a different Netlify feature each day](/blog/2021/12/01/highlighting-a-different-netlify-feature-each-day-in-december/?utm_campaign=featdaily21&utm_source=devto&utm_medium=blog&utm_content=link-to-commit). It might just be the thing you need to unlock those creative juices, and [dust off that domain](https://www.netlify.com/blog/2021/12/01/dusty-domains-your-forgotten-domains-raise-money-for-charity/?utm_campaign=featdaily21&utm_source=devto&utm_medium=blog&utm_content=link-to-commit) you registered but never deployed! Keep an eye [on the blog](https://www.netlify.com/blog/2021/12/01/highlighting-a-different-netlify-feature-each-day-in-december/?utm_campaign=featdaily21&utm_source=devto&utm_medium=blog&utm_content=link-to-commit) and on [Twitter](https://twitter.com/netlify) for each feature!
There are a number of ways to deploy a site to Netlify, or to trigger a build. So it can be helpful to see what code or content changes brought about an update to your site.

Perhaps a build was initiated by a [build hook](https://www.netlify.com/blog/2021/12/22/power-your-site-with-apis-and-build-hooks/?utm_campaign=featdaily21&utm_source=devto&utm_medium=blog&utm_content=link-to-commit), in which case you’ll see that indicated in your Deploys page. But what if you are using [Netlify Build](https://netlify.com/products/build/?utm_campaign=featdaily21&utm_source=devto&utm_medium=blog&utm_content=link-to-commit) to build your site whenever you push code changes to you repo?

Once again, the Deploys page in your project’s [Netlify admin](https://app.netlify.com/?utm_campaign=featdaily21&utm_source=devto&utm_medium=blog&utm_content=link-to-commit) holds the answer.

{% youtube mlvLwiDZR_E %}

Every deploy which was triggered by a code change includes a link to the commit. It gives you complete insight into what changes were responsible for the latest updates on your site. And into what to expect in the build.

Click on the git hash visible in each deploy summary to take you directly to that commit in your GitHub, GitLab, or Bitbucket repo.

## More information

- [Docs: Configure continuous deployments](https://docs.netlify.com/configure-builds/get-started/?utm_campaign=featdaily21&utm_source=devto&utm_medium=blog&utm_content=link-to-commit)
- [Docs: Creating deploys](https://docs.netlify.com/site-deploys/create-deploys/?utm_campaign=featdaily21&utm_source=devto&utm_medium=blog&utm_content=link-to-commit)
The Brain**** interpreter I made is on Sololearn.
Tags: javascript, webdev, watercooler, sololearn
Published: 2021-12-25 23:24:32

The Brain\*\*\*\* interpreter I made in my other post, ["How to make a simple Brainf**k interpreter using ParseJS. \[CW: Light 'profanity'.\]"](https://dev.to/baenencalin/how-to-make-a-simple-brainfk-interpreter-using-parsejs-cw-light-profanity-45ea), is now on [SoloLearn](https://www.sololearn.com/) for anyone and everyone to play around with. Even on mobile!

Here's the URL: [https://code.sololearn.com/WMO3B752fdOj](https://code.sololearn.com/WMO3B752fdOj).
🎄 Christmas Tree in terminal with Ruby
Tags: ruby, cli, terminal
Published: 2021-12-25 23:01:03

---
title: 🎄 Christmas Tree in terminal with Ruby
published: true
description: 
tags: ruby, cli, terminal
//cover_image: https://direct_url_to_image.jpg
---

I made a ruby gem to display animated Christmas tree in terminal:

https://github.com/NARKOZ/xmas

Install it via `gem i xmas` and then run `xmas`

Screenshot:

![screenshot](https://github.com/NARKOZ/xmas/blob/main/screenshot.png?raw=true)

Happy Holidays!
if/else in CSS
Tags: css, webdev, beginners, news
Published: 2021-12-25 22:53:31

As we know, there are no conditional statements in CSS, but this may soon change with new `@when` and `@else` operator

Currently, the only way to perform a conditional statement was to use media queries like this:

```css
@media (min-width: 600px) {
  /* ... */ 
}
@media (max-width: 599px) {
  /* ... */
}
```

It works perfectly, but in the new proposal it looks much cleaner and very similar to many programming languages.

```css
@when media(min-width: 600px) {
  /* ... */ 
}
@else {
  /* ... */ 
}
```

We can do multiple conditions as well by using multiple `@else` statements, and not just use @media, but @supports too. 

```css
@when media(width >= 600px) and media(pointer: fine) and supports(display: grid) {
  /* A */
} @else supports(caret-color: red) and supports(background: double-rainbow()) {
  /* B */
} @else {
  /* C */
}
```

There may be questions about the naming of this new feature. Some people think that `@if` would be a better name than `@when`, the reason behind this naming is probably that Sass already uses `@if`, and it would be annoying to many developers if they had to refactor their Sass logic.

The bad news is that it's not supported by any browser at this moment, it's not even listed on `caniuse.com`.

What do you think about this new proposal?
tailwind css flexBox | flex basis | flex initial | flex 1 |  flex auto
Tags: webdev, tailwindcss, css, tutorial
Published: 2021-12-25 22:27:50

tailwind css flexBox | flex basis | flex initial | flex 1 |  flex auto
https://youtu.be/bX3jqK8EpRQ
If you liked our content help us by subscribing on the channel and leaving a nice comment
SCOPE,HOISTING,WINDOW
Published: 2021-12-25 21:17:40

The scope is an accessibility part of you your code. Javascript has three types of scope. Today we will explain all three types of scope.

**Block scope:** Block scope is called when you declare a variable inside a curly bracket and it can be accessed only inside from curly bracket. If you call that variable outside of the curly bracket it will give you an error. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lfbmf8qrokpq29t436ex.png)
In this example, I declared a constant variable inside a curly bracket and I log that value inside that curly bracket it will show that value. On the bottom, you see that I log that variable outside the curly bracket and the result showed that the variable is undefined.

**Function scope:** when you declare a variable inside a function and that can be called inside from function and it can’t be called outside the function that is called function scope. Let’s see an example.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/85pt97jf7hc1j85dj4si.png)
This function scope is like that curly bracket, when you call the variable outside the variable that will give us an error.

**Global scope**: Global scope is when you declared a variable top of your codes and it can be called from anywhere that’s called global. Let’s see an example and I will explain it. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zh5ch4qevhm32340l7dy.png)
I declared that greeting variable on top of code and it can be called from inside function and it can be called from anywhere from that’s why that is called global scope.

**Hoisting:** hosting is when you assigned a variable before the declaration. Hoisting allows functions to be safely used in code before they are declared. The variable is hoisted to. But const and let throw error when you use that code before declared but the var didn’t throw any error. Using var you can use that variable before declared.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fckgxhgm72q99ongymsi.png)
In that example, var created hoisting and that output is undefined but var didn’t throw an error. if you use const or let it will throw an error.
Var is not recommended to use because it creates hoisted. Hoisted is good for function but it’s bad for variables and class.

**Window:** The window keyword gives us objects which represent a window of a browser. This window is a global object of javascript in the browser and exposes the browser‘s functionality.
Dec 25: Dev Holidays Guide ⛄️
Tags: stateofdevs, bahhumbugtip, mentalhealth, tips
Published: 2021-12-25 21:15:02

Bah Humbug Tips are my own way of coping & recovering from burnout & holiday stress.

###🎄  Today's Bah Humbug Tip of the Day. 
{% twitter 1474774455754760192 %}

######🎁 Today's Options 
{% twitter 1474774457361186816 %}

You can find more tips here & on [Twitter](https://twitter.com/stateofdevs). Let me know in the comments if any of these tips helps.

> If you're struggling w/ burnout & open to sharing your story, please [take the State Of Devs survey](https://stateofdevs.com/helps/dev). 🗳 Thanks!