teleren/devto huggingface dataset:
SOLID: resumo de bolso para consutas rápidas
Tags: php, webdev, programming, javascript
Published: 2022-02-02 01:33:08

S — Single Responsibility Principle (ou Princípio de responsabilidade única) diz que:
“Uma classe só deveria ter um único motivo para mudar” — Robert C. Martin

Usando o exemplo do que não é responsabilidade única seria da uma classe Pessoa que além de ser responsável por criar o objeto Pessoa, tamém seria responsável por salvar a pessoa no banco de dados.

O — Open Closed Principle (ou Princípio de Aberto Fechado) diz que:
“Entidades de software (classes, módulos, funções, etc) devem ser abertas para expansão, porém, fechadas para modificações” — Bertrand Mayer

L — Liskov Substitution Principle (Princípio de substituição de Liskov) diz que:

“Classes filhas nunca deveriam infringir as definições de tipo (ou funcionalidade) da classe pai”;

I — Interface Segregation Principle (Princípio da Segregação de Interface) diz que:

“Uma classe não pode ser forçada a depender de métodos que ela não utilizará” Robert Martin

D — Dependency Inversion Principle (Princípio da Inversão de Dependência) diz que:

“Módulos de alto nível não devem depender de módulos de baixo nível. Ambos devem depender de abstrações” ou “Abstrações não devem depender de implementações. Implementações devem depender de abstrações”. Robert C. Martin
Dealing with Discord Malicious Domains
Tags: discord, security, github, typescript
Published: 2022-02-02 01:02:56

Hi there, all of us as Discord users know how difficult it can be to deal with malicious Discord domains on a daily basis, especially fake Discord Nitro ones, with that in mind I'm back now to quickly show you about two of my latest projects published today:

### [Discord Guardian Action](https://github.com/daltonmenezes/discord-guardian-action)

> 🤖 An action that fetches the list of malicious domains on Discord in different providers and creates/updates a JSON file with them from time to time.

**Features**:
- 🤠 Creates/updates domain list from different providers
- ✨ Accepts your own maintained list file to be joined in the **domains.json**
- 👍 Accepts the custom filename and directory to save the domain list

---------------------------------

### [Discord Malicious Domains](https://github.com/daltonmenezes/discord-malicious-domains)

> 🤖 A list of malicious domains on Discord using the Discord Guardian Action.

The Discord Guardian Action will try to run at minute 0 past every hour, trying to update the list to give you always an updated one.

---------------------------------

The list can be used for your BOT to check and delete the messages containing that malicious domains, or even to BAN that infected user. Discord Guardian Action is licensed under MIT license, written in TypeScript and compiled with Vercel's ncc tool.

Both projects are only possible thanks to the following ones, don't forget to give them a star if the list was useful to you:
- [Discord Phishing Links](https://github.com/nikolaischunk/discord-phishing-links)
- [discord-scam-links](https://github.com/BuildBot42/discord-scam-links)

Thanks 💜
LetMeScroll.js - Scroll made easy!
Tags: javascript, vanillajs
Published: 2022-02-02 00:50:03

Hey guys,

I have been working on a "new project"...
It's a dependency-free javascript library to make Scroll easier to use and customize.

The challenge was, create a customizable and easy to use scrollbar while maintaining native behavior and add new features like.. callbacks, styling, etc..

Im still working on it, it needs a lot of improvements.. but you can check it on my github page.

Give it a try and tell me what you think :P

GitHub: https://github.com/BMSVieira/letmescroll.js
Day 521 : Architecture
Tags: code, coding, hiphop, lifelongdev
Published: 2022-02-02 00:15:03

_liner notes_:
- Professional : Spent the day finalizing, clean up and uploading the code I wrote for our demo application. After getting that done, I started working on my workshop that will happen later this month.

- Personal : Last night, I did some coding on my side project. Worked on how the markers show up on the map. Don't really remember what else I did. haha

![Photo of Kluane Nat'l Park, YT, Canada with a green pine tree forest in the foreground and snow covered mountains in the distance. ](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rmgkyvxaxhsjxl7mtbl7.jpg)

I got an idea for a new side project and started looking up domain names. haha Going to see if I can come up with the architecture of what I want to use, do a quick design and layout, and deploy a starter project. If I can get that up and running, I'll probably buy the domain name. I think it'll be useful for some things I have coming up.

Have a great night!

peace piece
Dwane / conshus
https://dwane.io / https://HIPHOPandCODE.com
{% youtube 5EkVT5AA_Ys %}
Using Sub Workflows in your Workflow - image processing
Published: 2022-02-14 16:23:06

---
title: Using Sub Workflows in your Workflow - image processing
published: true
date: 2022-02-02 00:00:00 UTC
tags: 
canonical_url: https://orkes.io/content/blog/image-processing-multiple-images-subworkflow
---

In our [initial image processing workflow](https://orkes.io/content/blog/image-processing-workflow-with-conductor) using Netflix Conductor, we initially built a workflow that takes one image, resizes it and uploads it to S3.

![workflow diagram](https://orkes.io/content/assets/images/Simple-image-workflow-5a4043a8cc44c7d8bdef5f2456fb4105.png)

In our [2nd post](https://orkes.io/content/blog/image-processing-multiple-images-forks), we utilized a fork to create two images in parallel. When building this workflow, we reused all of the tasks from the first workflow, connecting them in a way that allowing for parallel processing of two images at once.

![fork workflow](https://orkes.io/content/assets/images/workflow_fork-90793c4ddc3b3a67f69d0040850e6fab.png)

In both of these workflows, two tasks are reused: image_convert_resize and upload_toS3. This is one great advantage of using microservices - we create the service once, and reuse it many times in different ways.

In this post, we'll take that abstraction a step further, and replace the tasks in the two forks with a SUB_WORKFLOW. This allows us to simplify the full workflow by abstracting a frequently used set of tasks into a single task.

Read the full post at [Orkes.io](https://orkes.io/content/blog/image-processing-multiple-images-subworkflow)
GhostPen Dev log of sorts
Tags: devlog, webdev, python
Published: 2022-02-01 23:14:41

It's kinda late in the game to post dev logs, but hey no better time than the present.

A little backstory, I started a freelancing website called Ghostpen.org towards the end of last year, after working on it since around February.

Now I have a few users, all workers, and I need to get clients on the website to give them work to do. 

And on top of that, what started out as a simple idea turned into a very complex network of systems that are integral to the workings of the website, with more features coming soon.

For the past couple of weeks, I've been hacking at the code for the server (python with flask) and trying to implement a system that I used in another program I wrote (a database manager of sorts for the website). 

This newer system holds a dictionary of possible requests that might be sent from the website, and is routed to corresponding functions. I hadn't thought of it when I first started working on the main website for whatever reason, however it would save a lot of time and energy for the future.

The problem is that I spent too much time getting nowhere when I could've been rolling out more useful features for the users and incrementally changing the underlying structure, or even setting up a new fork to work on the new structure so that I could work in "parallel."

To conclude, I just forked the deployed version of the website and am implementing the user facing changes and am going to probably figure out a way to modularize the code in another branch so I can keep things going smoothly and be able to make changes without getting stuck like I just did.

(Note this is my first time writing something like this. Constructive criticism welcome.)
Clean Architecture vs Vertical Slice Architecture
Tags: architecture
Published: 2022-02-01 22:36:40

I was asked about clean architecture and vertical slice architecture during an interview, which caught me off guard. I use Clean Architecture, DDD and MediatR for my backend, but I had not heard about vertical slice architecture before. We learn a lot from interviews, we definitely should do more of these.

I was curious about vertical slice architecture, so I looked up. Ironically, it turns out that my application layer in Clean Architecture is all about Vertical Slice Architecture(VSA). The use of MediatR enforces VSA. MediatR and VSA have the same father, the famous Jimmy Bogard. 

MediatR is the library to help encapsulate each HTTP request into a single handler that takes a request and returns a response. The handler is a black box and does the necessary thing to produce a response, just like a pure function(strictly speaking, only queries). 

The result is vertically slicing the application into handlers. The main benefit of this approach is that requests(use cases) are isolated, input/output based and self-contained units like Lego pieces. It makes the code base simple, flat and easy to maintain. 

In my application([epicERP.app](www.epicerp.app)), I use both Clean Architecture and Vertical Slice Architecture. 

1. Clean Architecture: 
	* I have Domain and Application layer hosting all the business logic. 
	* The Presentation Layer is a web API layer, but the controllers have no logic. All they are doing are calling handlers inside Application Layer. 
	* The infrastructure depends on the Application Layer via interface Inversion of Control. 
	* Domain-Driven Design principle is implemented, i.e. domain logic is pushed down to the domain layer.
	* I do not have any services or a service layer, which is the main difference from traditional onion layered architecture.

2. Vertical Slice Architecture: my Application Layer consists of self-contained commands and queries; they usually inject a Unit of Work that contains repositories. Through the repository, the handlers have access to the database.

Implementing Clean Architecture, Vertical Slice Architecture and DDD together made my application extremely easy to maintain because use cases are translated into independent Lego pieces. Most of them are simple and stupid.

If you are curious about Clean Architecture and Vertical Slice Architecture, I recommend these videos:
[Vertical Slice Architecture](https://www.youtube.com/watch?v=SUiWfhAhgQw), Jimmy Bogard's presentation back in 2018. The Pipeline Behaviours mentioned in this video are very interesting. 
[Clean Architecture](https://www.youtube.com/watch?v=dK4Yb6-LxAk), by Jason Taylor.
Top 3 things you like about being an engineer?
Tags: javascript, programming, webdev, watercooler
Published: 2022-02-01 22:23:35

This delightful question came up on a recent survey at work. Not job specific but something that was in my Team's notifications.

Now I'm curious to hear others' answers.

My answers:
1. Hacking away at a problem and coming up with creative solutions
2. Writing the code to make that solution real
3. Iterating on feedback to make the solution better

These are also the top 3 things I liked about being a consultant and founder.

How alike are we in this particular field? 

What are the top 3 things you like about engineering or working in tech?

-----
Photo by Victoria Borodinova from Pexels
Perspectivas de Qualidade de Produto de Software 
Published: 2022-02-01 22:21:43


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/65jxhltwi591130jltwt.jpg)


De acordo com Marcelo Criscuolo, em sua dissertação apresentada ao Instituto de Ciências Matemáticas e de Computação, para obtenção do título de Mestre em Ciencias- Ciencias de Computação e Matemática Computacional-SP-fev/2008,ter o controle da complexidade do software, tornaria assim o software mais legível, menos suscetível a erros, facilitando o incremento de funcionalidades, com uma manutenção preventiva, inspeção constante, utilizando uma técnica de leitura PBR(Leitura Baseada em Perspectivas).
Já, Katia Cristina Duarte, Ricardo de Almeida Falbo (Mestrado em Informática - UFES Mestrado em Informática - UFES/2000)
"Uma Ontologia de Qualidade de Software", defende que a qualidade de software está intimamente ligada a qualidade do processo de desenvolvimento do software, e destaca a importância das métricas característica mensuráveis e não mensuráveis de software.
E ainda,Luiz Otávio Duarte, Antonio Montes Filho, Ana Cervigni Guerra e Ferrucio De Franco Rosa (Conferência IADIS Ibero-Americana WWW/Internet 2010), tem foco em Segurança de Software como item de Qualidade, e está relacionada diretamente com a maturidade do produto, difunde em seu texto que investir segurança desde a codificação até a implementação do produto  não é um custo e sim valorização da entrega final.
É certo que a qualidade de Software exerce papel fundamental, e é um diferencial que pode fazer uma empresa se destacar e não Ser esmagada pela concorrência, conseguir realizar a entrega de um produto que satisfaça ou melhor impressione seu cliente é uma necessidade num mundo tão competitivo e exigente.
As perspectivas de Qualidade de Software, tem a ver com processo, com suporte, com entrega, com segurança, engloba vários conceitos e técnicas que devem ser observados, ressalto que as padronizações através de normas e diretrizes tem o intuito de facilitar a entrega do produto, e facilitar a manutenção do mesmo, sabendo que iremos trabalhar em equipe, e que elas mudam. O cliente é parte importante da sua equipe, não existe sucesso sem esse ilustre integrante, ouvir e satisfazer seu cliente é parte do seu trabalho como desenvolvedor. Podemos dispor de todo o conhecimento em Qualidade de Software, se não soubermos agradar nosso cliente de nada irá valer.
Machine Learning and Data Science, Are They the Same ?
Tags: machinelearning, datascience
Published: 2022-02-01 21:52:37

Machine learning is a general term the has a lot of misconception around it? One of the main confusions is the interchangeable use of machine learning and data science. 

In fact, the term data science is a lot more broader than machine learning. Data science represents a conceptual pipeline through which the data flow from a data collection module passing through the modeling(machine learning) module and ending with the model deployment. We can see that machine learning is just one module in data flow pipeline. Machine learning is a specific field interested only with producing reliable models from cleaned and preprocessed historical data that we call experience. If we make an analogy with the medical field we can compare data scientists with  generalist doctors and machine learning engineers to specialist doctors.
Open Source Credit Survey
Published: 2022-02-01 21:31:08

_The University of Vermont is conducting a survey to help understand how people receive credit for tasks in open source, and are seeking your participation!_
_Survey: [https://qualtrics.uvm.edu/jfe/form/SV_1zUs19oVcZJ0SPA](https://qualtrics.uvm.edu/jfe/form/SV_1zUs19oVcZJ0SPA)_

---

Today's open source world has similarities to the world of open source when I [first wrote about this problem in 2015](https://opensource.com/life/15/10/octohat-github-non-code-contribution-tracker). I wrote a tool that helps discover who is contributing to GitHub projects based on the contributions that aren't code. In 2022, we are still contributing countless hours of time towards communities to drive and improve open source across many industries, but we don't know how much of that work is credited beyond automated tools like this. 

I'm a member of the [OCEAN](https://vermontcomplexsystems.org/partner/OCEAN/), a research team from the University of Vermont Complex Systems Center, and we're collaborating with industry experts from Google, OSI, IEEE, PSF, and OSSF, among others. You may have recently heard about our project on [CHAOSSCast](https://podcast.chaoss.community/50), or being shout-out on [SustainOSS](https://podcast.sustainoss.org/98).

As we've written in our correspondence in [Nature Computational Science](https://www.nature.com/articles/s43588-020-00011-w), we believe that having a recognition model for the work done in any open source community can help more in just gaining credit for code, but providing clear signaling of the work done for the community. 

As part of this work, the University of Vermont team is conducting a survey about how people receive credit for the tasks they do as part of open source projects.

The survey asks about your experiences with receiving credit on open source projects. The survey asks multiple choice questions about how often you received credit for the tasks you did, and written response questions about what did and did not go well on open source projects.

We hope that with this information, we can improve the  equity of contributions across all of open source.

---

Click on this link to participate in the survey: [https://qualtrics.uvm.edu/jfe/form/SV_1zUs19oVcZJ0SPA](https://qualtrics.uvm.edu/jfe/form/SV_1zUs19oVcZJ0SPA)

---

_[OCEAN](https://vermontcomplexsystems.org/partner/OCEAN/) is a partnership between the Google Open Source Program Office and the Vermont Complex Systems Center. Google does not have any influence on the survey, and will be unable to see any individual responses._
How you can learn Python with this 11 part series
Tags: tutorial, python
Published: 2022-02-01 21:30:01

---
title: How you can learn Python with this 11 part series
published: true
description: 11 new learn modules that will teach you Python, from beginner to intermediate level.
tags: tutorial, python
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kao3w5veebgoqg3yoclf.jpg
---

We just created 11 Learn modules to ensure you go all the way from beginner to proficient using Python. Here's the path [Python beginner path](https://docs.microsoft.com/en-us/learn/paths/beginner-python/)


The modules are:

- [Using Notebooks with Python](https://docs.microsoft.com/en-us/learn/modules/python-create-run-jupyter-notebook/) How to install and use Notebooks. Notebooks are a great way to mix text and code and have living tutorials.
- [Create and run your first Python program](https://docs.microsoft.com/en-us/learn/modules/python-create-run-program/) This teaches you how to create your first Python program.
- [Manage projects in Python](https://docs.microsoft.com/en-us/learn/modules/python-create-manage-projects/) When you start writing larger programs, you might want to use external libraries. Also how do youshare such a project with others?
- [Use boolean logic in Python](https://docs.microsoft.com/en-us/learn/modules/python-boolean-types/) Boolean logic is used to ensure your program can have more than one execution flow. 
- [Working with strings in Python](https://docs.microsoft.com/en-us/learn/modules/python-strings/) String is central to any program language. 
- [Use mathematical operators in Python](https://docs.microsoft.com/en-us/learn/modules/python-math-operators/) You will want to use mathematical operators to work on your data.
- [Introduction to lists in Python](https://docs.microsoft.com/en-us/learn/modules/intro-python-lists/) When you have many instances of your data, like a list of products, lists are a great structure to use.
- [Use for and while loops in Python](https://docs.microsoft.com/en-us/learn/modules/python-loops/) You will want to repeat some statements, loops is how you do just that.
- [Manage data with Python dictionaries](https://docs.microsoft.com/en-us/learn/modules/python-dictionaries/) Sometimes, you need to look up values. Dictionaries enables you to organize data in such a way where you have keys points to a values where the keys all have to do with each other, like portrait cards of a deck of cards.
- [Python functions](https://docs.microsoft.com/en-us/learn/modules/functions-python/) To avoid repetition, among other things, it's good to organize reoccurring statements in logical grouping you can refer to. Such a named grouping of statements is referred to as a function.
- [Python error handling](https://docs.microsoft.com/en-us/learn/modules/python-error-handling/) Errors will happen in your program, learn how to deal with errors.
Tigo ofrece la mejor experiencia en redes celulares, las velocidades de descarga más rápidas de Colombia

Published: 2022-02-01 21:20:20

El informe señala que este operador, con un ranking del 63,4% es el que ha ofrecido a sus clientes los mejores parámetros de Calidad Excelente y Consistencia. Se trata de un conjunto de pruebas en las que se deben alcanzar los umbrales establecidos por Tutela como "Excelente" en los casos de uso de mayor intensidad, incluyendo streaming de video 1080p, videollamadas en HD o juegos móviles.

Tigo también ofrece a sus usuarios la mayor Calidad Consistente Central (Core Consistent Quality) con un 82,5%, que representa la frecuencia con la que los consumidores tienen una conexión capaz de transmitir video SD, compartir medios sociales o navegar por la web.

Por su parte, Claro obtuvo la mayor puntuación en la cobertura 5G/4G con una puntuación de 527 y una puntuación total de 735, con una diferencia de 252 puntos por delante del segundo clasificado, Tigo.

Para llevar a cabo este estudio, Tutela ha analizado más de dos millones de pruebas de velocidad y de latencia tomadas entre los usuarios de smartphones dentro de las áreas de cobertura común, recogidas entre diciembre de 2020 y mayo de 2021


[ver mas...](https://tecnologia.ciudademprendedores.com/ver.php?url=monserratenoticias.co)