teleren/devto huggingface dataset:
Best articles about ML and stuff of @20/10/2021 #filteredContent
Tags: news, filteredcontent, machinelearning, internet
Published: 2021-10-20 15:52:30

1️⃣ AI writes Songs from incomplete notes
    * Read at [scientificAmerican.com/...](https://www.scientificamerican.com/podcast/episode/beethovens-unfinished-10th-symphony-brought-to-life-by-artificial-intelligence)

2️⃣ ⭐️ Mystery of Deep Learning
    * Read at [quantaMagazine.org/...](https://www.quantamagazine.org/a-new-link-to-an-old-model-could-crack-the-mystery-of-deep-learning-20211011/)
    * Note :- "kernel methods" in ML are somewhat equivalent to deep Neural Network

3️⃣ 😂 Bars are horrible places
    * Read at [waitButWhy.com/...](https://waitbutwhy.com/2014/05/secretly-hate-bars.html)
    * Note:- gonna try couple of times to experience this s#!t…

4️⃣ Graph neural networks for ETA in Google maps
    * Read at [deepMind.com/...](https://deepmind.com/blog/article/traffic-prediction-with-advanced-graph-neural-networks)
    * Note:- graph neural network can represent any data.

5️⃣ one algorithm to rule them all
    * Read at [ventureBeat.com/...](https://venturebeat.com/2021/10/12/deepmind-is-developing-one-algorithm-to-rule-them-all/)
    * Creating a ML model which can be flexible enough to be able to work for different problems.

6️⃣ Finding roots of equations (insights)
    * [3blue1brown](https://www.youtube.com/watch?v=-RdOwhmqP5s)
    * Note :- borders in math for 3 regions
    * [Follow up video](https://www.youtube.com/watch?v=LqbZpur38nw)


✅ Reading complete. 👍
Learn DSA with LeetCode
Published: 2021-10-20 15:52:08

Data Structures and Algorithms is one of the most important concept that you should be thorough with regardless of which language you code.

Every interviewer is going to ask you questions on the same.
From Competitive Coding to Software development.. You are going to stumble upon Data Structures. 

![interview](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8r8f0xy3ith3b2klfmgg.gif)

And I noticed a lot of my classmates including myself was weak in DSA. Hence this blog is to **learn DSA by spending not more than 20 mins per day**

I tried various websites to practice coding problems and I found [leetcode](https://leetcode.com) very convenient and best for this purpose.

Before you dive into it make sure you are clear with the following basic concepts-
- Basic Arithmetic and logical Operations
- Loops 
- Logical conditions
- Functions
- Classes

You can find a large collection of tutorials and YouTube videos about these topics in the web.
![Leetcode](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/piigjyftzrl1kdyra0fx.png)

> LeetCode

[leetcode](https://leetcode.com) offers daily challenges which we will be solving and will also discuss the concepts of the same.

The aim is to complete daily challenges regularly and the best part is **you only need to spend about 20 mins a day**🥳🥳. 
![yay](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j4pfxhg47yu6qclvoe9s.gif)

So lets start!

> ## [LEARN DSA](https://github.com/kiransbaliga/DSA-with-leetcode/blob/main/LeetCode/Aug_end.ipynb) </span> 


#### **click on the above link to follow to my GitHub repository for an interactive python notebook and solved LeetCode challenges and concepts**.

So what you waiting for? 
Come on seize this opportunity!!

## *carpe diem*✨<br><br>
<pre>
    ❤️ <a href="https://kiransbaliga.me">Portfolio</a>  |  📷<a href="https://www.instagram.com/kiransbaliga">Instagram </a>  |  💼<a href="https://www.linkedin.com/in/kiransbaliga">LinkedIn</a>   |  🐥<a href="https://twitter.com/kiransbaliga">Twitter</a>    
</pre>
Running Docker Containers created using docker-compose
Published: 2021-10-20 15:37:05

So, Recently I was experimenting with docker, and it occured to me that, how can I access the docker containers that are created using, `docker-compose`.

when I used, the `docker ps -a` command, I can see all my containers that are created by docker-compose.

![docker ps -a result](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nb7ywiycnvuzjsbznan4.png)

But when I tried to run a container, It didn't run.

![docker run result](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ddnvjbgetvj6l13tgih4.png)

The answer to this was quite simple.

1\. To start a container use-
```bash
$ docker container start container_name
```

> Note: The configuration specified for the container in the docker-compose file will be applied to the container by default so, you don't have to do them manually.

![docker ps result](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2q8m2olnos5xc3hd8qpd.png)

2\. To stop a container use-
```bash
$ docker container stop container_name
```

3\. To open up bash in the container use-
```bash
$ docker container exec -it container_name bash
bash-5.1# 
```

And that's it!
Thanks for reading!
Have a marvelous day!😇
Vim y no morir en el intento
Tags: vim, beginners, productivity, programming
Published: 2021-10-20 15:26:57

![Welcome](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6jsot1ern76h8t6z806m.png)

### Modo: NORMAL 🕹
`ESC`: Sale del modo 'Insert'/'Inserción' para introducir comandos
`.`: Repite el último comando ingresado
#### 💾 Archivo:
`:w`: Guarda el archivo (no cierra)
`:wq!`: Guarda y cierra el archivo
`:x!`: Guarda y cierra el archivo
`:q!`: Cierra el archivo sin preguntar

#### ♻ Movimientos:
`h`: Mueve el cursor un carácter a la izquierda
`l`: Mueve el cursor un carácter a la derecha
`j`: Mueve el cursor a la línea inferior/abajo
`k`: Mueve el cursor a la línea superior/arriba
`Shift` + `h`: Mueve el cursor a la primera línea que se ve en la pantalla
`Shift` + `l`: Mueve el cursor a la última línea que se ve en la pantalla

`w`: El cursor avanza hacia la primera letra de la siguiente 'palabra'
`b`: El cursor retrocede y se sitúa en la primera letra de la palabra anterior
`o`: El cursor se sitúa en la línea siguiente/inferior a donde esté y entramos en modo Inserción/Insert
`Shift` + `o`: El cursor se sitúa en la línea anterior/superior a donde esté

#### 🏗 Edición:
`dd`: Cortamos la línea completa donde se encuentra el cursor
`dw`: Cortamos la palabra desde donde se encuentra el cursor
`dl`: cortamos la siguiente letra desde donde se encuentra el cursor
`yy`: Copiamos la línea completa donde se encuentra el cursor
`d<número>d` || `d<número>w` || `y<número>y`: Copiamos o Cortamos la cantidad de líneas que pongamos entre las letras. Ejemplo: `d5d`, `d7w` o `y6y`
`p`: Pegamos lo que hayamos 'copiado' o 'cortado' 1 carácter después de donde se encuentra el cursor
`r`: Entra en modo inserción/reemplazar para que reemplacemos la letra donde se encuentra el cursor y luego vuelve al modo 'Normal' (salimos con la tecla: 'ESC')
`Shift` + `r`: Entramos en modo inserción/reemplazar para que reemplacemos desde la letra donde se encuentra el cursor (salimos con la tecla: 'ESC')
`x`: Borra el carácter anterior a donde se encuentra el cursor
`Shift` + `x`: Borra el carácter siguiente a donde se encuentra el cursor

`u`: Deshacemos los últimos cambios
`Ctrl` + `r`: Rehacemos los últimos cambios

### Modo: INSERCIÓN 📝
`i` || `Insert`: Entramos en modo de inserción y podemos insertar texto en donde se encontraba el cursor
`Shift` + `i`: Entramos en modo de inserción y podemos insertar texto al inicio de la línea donde se encontraba el cursor

### Modo: VISUAL 📑
`v`: Entramos en modo visual, para seleccionar texto
`gg`: Mueve el cursor al principio del archivo
`Shift` + `g`: Mueve el cursor al final del archivo
`>` || `Shift` + `.`: Indenta las líneas previamente seleccionadas.
`d`: Cortamos el texto seleccionado
`y`: Copiamos el texto seleccionado
`p`: Pegamos lo que hayamos 'copiado' o 'cortado' 1 carácter después de donde se encuentra el cursor
`/<texto>`: Busca el <texto> introducido
- `n`: Mueve el cursor a la próxima ocurrencia encontrada en el archivo
- `Shift` + `n`: Mueve el cursor a la anterior ocurrencia
Tmux
Tags: tmux, programming, productivity
Published: 2021-10-20 15:25:12

### Antes que nada necesitamos instalar y luego abrir Tmux:
- `sudo apt-get install tmux`
- `tmux`

### "Atajo principal"
`Ctrl` + `b`: Activamos por unos segundos la escucha de Tmux de comandos/atajos. Inmediatamente podemos intentar ejecutar los siguientes "sub-atajos":

- `Shift` + `.`: (esto es para teclado inglés o para otros teclados la combinación de teclas tiene que resultar en un: `>`) Este comando nos permite abrir un menú con opciones como: 
```
Horizontal Split (h)
Vertical Split (v)
---
Swap Up (u)
Swap Down (d)
Swap Marked
---
Kill (x)
Respawn (r)
Mark (m)
Zoom (z)
```

- `Arrow left`: Para ir a la consola de la izquierda.
- `Arrow right`: Para ir a la consola de la derecha.
- `Arrow up`: Para ir a la consola de arriba.
- `Arrow down`: Para ir a la consola de abajo.

- `x`: Cerramos la consola en la que esté el cursor, nos pedirá confirmación y tendremos que apretar `y`.

- `c`: Abrimos una nueva consola tmux ocupando todo espacio de la Shell.
Para movernos entre ventanas abiertas podemos utilizar:
 -`n`: Nos movemos a la siguiente ventana.
 -`p`: Nos movemos a la anterior ventana.

---
### Cambiar el atajo principal:

Si queremos cambiar el atajo principal (`Ctrl` + `b`) por otro tendremos que ir a:
`/etc/tmux.conf`: Para que el comando se aplique a todos los usuarios del sistema.
`~/.tmux.conf`: Para que el comando se aplique a algunos usuarios.
> Si no existen los archivos hay que crearlos.

En el siguiente ejemplo reemplazo `Ctrl`+`b` por `Ctrl`+`a`: 
```
unbind C-b
set -g prefix C-a
bind C-a send-prefix
```
LaTeX: Numbering the Pages & Customization
Tags: codenewbie, latex
Published: 2021-10-20 15:21:09

Hello, how are you? :) 

In this post I tell you
- How to start the page numbering from other number, different of 1
- How to mix the numbering style and the page numbering

Let's start!!!

## Page Numbering

Do you remember that in [this](https://dev.to/latexteada/latex-numbering-the-pages-1k1a) post I tell you how to customize the style of the numbering in the page, now you can use 

```LaTeX
\setcounter{page}{n}
```

Where ***n*** is the desired starting page number

- If we put this instruction in the preamble the starting page of the document is going to be ***n***

But we can put this instruction on the body of our document and have different enumerations inside the document 

## Mixing Styles

What if I want to have multiple styles of numbering in my document, we first need to put the style and then the number, it is 

```LaTeX
\pagenumbering{style}
\setcounter{page}{n}
```
- You can check the *style* [here](https://dev.to/latexteada/latex-numbering-the-pages-1k1a) 


![Code to try](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tyv64lj1ffkl32ltl0od.png)

Check this code by yourself :) 
 

This is all, thank you!!!

Do not forget to follow me on Twitter `@latexteada`

Greetings :)
Tracking Key Development Metrics
Tags: devjournal, programming, productivity, management
Published: 2021-10-20 15:13:44

> How can you measure productivity, efficiency, and effectiveness, along with other indicators that can tell you about the quality of the overall development experience?

Let’s start with terminology. This may seem pretty basic, but software development is a human-intensive process. Much of its success hinges on a developer’s productivity and efficiency. These terms are often used interchangeably but they are actually different metrics:

- Developer productivity is the ratio of output (i.e., the quantity of work completed) to input (i.e. effort, time). This metric is easy to measure, but it doesn’t tell the whole story.

- Developer efficiency is measured by the amount of resources (i.e., time, computation power, human resources) used per unit of best possible output. It accounts for all the input required, so you can see if the team is doing enough of the right kind of work.

- Developer effectiveness evaluates important contexts that allow your organization to address low morale, stress/burnout, and other factors that can contribute to poorer quality and high turnover in the long term.

Below you’ll find a list of other metrics that you can use to verify a successful impact on your software development process:

**Number of merges per developer/day**
Less time spent jumping between different tools and looking for information means more time to focus on shipping code. A second level of bottlenecks can be identified if you categorize contributions by domain (services, web, data, etc).

**Deploys to production**
A close cousin to the metric above. How many times does an engineer push changes into production?

**MTTR**
With clear ownership of all the pieces in your microservices ecosystem and all tools integrated into one place, its quick for teams to find the root cause of failures and fix them.

**T-shapedness**
A T-shaped engineer is someone who is able to contribute to different domains of engineering. Teams with T-shaped people have fewer bottlenecks and can therefore deliver more consistently.

**Fragmentation**
Software Templates help drive standardization in your software ecosystem. By measuring the variance in technology between different software components, it's possible to get a sense of the overall fragmentation in your ecosystem. Examples could include: framework versions, languages, deployment methods and various code quality measurements.

In conclusion, there is no universal answer on how to measure development success, but a healthy mix of qualitative and quantitative metrics mapped to your organization’s goals are key to that evaluation.

---

_Follow me on Twitter for the upcoming updates [@dominguezdaniel](https://twitter.com/dominguezdaniel)_

---
What is Artificial Intelligence
Tags: beginners, ai, datascience, machinelearning
Published: 2021-10-20 15:07:19


*什麼是AI？*
*什麼是機器學習（ML）？*
*什麼是深度學習（Deep Learning）？*
*什麼是資料探勘（Data Mining）？*
*什麼是大數據（Big Data）？*

儘管身為近幾年[最熱門](https://www.simplilearn.com/top-technology-trends-and-jobs-article)的科技名詞，也有許多人每天接觸這些科技，但這些名詞仍舊非常容易被混淆。

---

## TL;DR

**Artificial Intelligence**
原本是用來指稱「如何使機器通過[圖靈測試](https://en.wikipedia.org/wiki/Turing_test)」的一系列研究。現今AI已逐漸成為商業與行銷用詞，可能泛稱所有與自動化相關的技術。

**Machine Learning**
機器學習用於在資料中尋找pattern，進而分類、辨識、預測、估計一系列未知標的。現已逐漸成為*非*深度學習的機器學習技術的代稱。

**Deep Learning**
深度學習是一種機器學習技術。其應用強項為影像、聲音、時間序列、語言等具備[局部性](https://en.wikipedia.org/wiki/Locality_of_reference)性質的資料。

**Data Mining**
資料探勘是一門從巨量資料中尋找未知洞見的技術。其中可能牽涉統計、機器學習、domain know-how等一切手段。

**Big Data**
大數據探究的是如何處理巨量資料。其中包含如何系統性的取得資料、如何有效率的存取資料、以及資料探勘這種挖掘商業價值的工作。

---

## What is Artificial Intelligence

> *I propose to consider the question 'can machines think'?* 
> *<small>Turing, Alan</small>*

1950年，計算機之父Alan Turing提出著名思想實驗——[Turing Test (圖靈測試)](https://en.wikipedia.org/wiki/Turing_test)，嘗試去回答機器是否可能像人類一樣思考。圖靈測試中，你需要去分辨一個封閉的房間中的受試者是人類還是機器。當然不是瞎猜，你可以在紙條上面寫上你想問的問題，傳入房間內。受試者會回答你的問題，並把答案回傳給你。如果你無法通過這種問答模式分辨出房內是人還是機器，則該受試者通過了圖靈測試，而通過圖靈測試被認為是擁有如人類般的思考能力。

在此之後，計算機領域的各路好手開始去研究如何能使機器通過圖靈測試。這一系列研究在後來被統稱為人工智慧(AI)。有專門下棋的deep blue與alpha go，有專注聽懂人話的Siri和Alexa，也有Tesla的自動駕駛，這些都是比較廣為人知的AI應用領域。

**但事實上，應用領域並非判斷是否為AI的標準，實作方法才是。**

---

> *AI泛指一切能根據自身<u>環境</u>，採取最大可能達成目標之<u>行動</u>的系統* 
> *<small>Poole, Mackworth</small>*

以偵測垃圾郵件為例。有兩套專門偵測垃圾郵件的軟體，姑且稱他們A-ware與B-care。在收到信件後，他們都會檢查信件主旨、寄件者、以及內文，來判斷信件是否為垃圾郵件，但兩者判斷方式是不同的。

A-ware有一個黑名單，只要信件是黑名單中的某人寄的，就將該信件標示為垃圾郵件，而使用者也可以編輯這個黑名單。另外，A-ware的使用者也可以自行輸入某些例如「廣告」、「特價」的關鍵字，只要將來有任何郵件的主旨包含這些單詞，A-ware就會把他歸類為垃圾郵件。最近，A-ware也提供了黑名單共享機制，讓使用者不必自行定義黑名單，也可以匯入別人建立的黑名單，使得垃圾信件的防護更加完善。

另一方面，B-care公司在研發階段就收集了大量的垃圾郵件以及一般郵件，通過[自然語言處理](https://en.wikipedia.org/wiki/Natural_language_processing)分析郵件語意，將數以萬計的語意[聚類](https://en.wikipedia.org/wiki/Cluster_analysis)為數百種大方向，再通過[二元分類器](https://en.wikipedia.org/wiki/Binary_classification)將這幾百種語意方向歸類為垃圾或一般。產品發佈後，B-care的使用者可以透過反饋錯誤判斷的類別，使B-care得以藉此強化現有的分類方法。

同樣都是垃圾郵件偵測軟體，A-ware和B-care都能夠成功的幫助使用者排除垃圾郵件。但即便兩者都需要人的幫助（A-ware有人工輸入的黑名單，B-care擁有大量人工分類好的垃圾與一般郵件），只有B-care才有使用AI技術，而A-ware則會被認為是[rule-based system](https://en.wikipedia.org/wiki/Rule-based_system)。因為A-ware的過濾規則是人設計的（是否在黑名單），而B-care的過濾規則不是人設計的，人設計的是「**生成過濾規則**」的流程，諸如自然語言處理等等。

> *我們能夠很快的辨識一個人是否禿頭，卻很難給出少於幾根頭髮算是禿頭。*
> *<small>the bald man paradox</small>*

然而近期，AI一詞愈發氾濫，許多自動化工程也被冠上AI的噱頭。比起指稱產品的實作方法，AI更像是一個行銷用詞。例如一台標榜具有AI省電功能的冷氣，就算工作原理是低於25度就用低速運轉、反之就用高速運轉，也完全不會令人感到意外。

---

*什麼是機器學習？敬啟期待下一篇文章。*
3 MS teams tips to boost your productivity
Tags: productivity, msteams, reminder, chat
Published: 2021-10-20 15:06:08


The popularity of MS teams has been increased tremendously because of lockdown. Today most of the organization uses MS teams for team-level communication and chat.

##### Here I'm sharing a few of simple yet mostly unknown apps/tricks that can increase your work productive

### 1. Remind
   Set a reminder for yourself, a group chat, or a channel by simply sending a message to the Remind bot.


   Very handy to use, just type `"@remind "Deploy code" on Monday at 8pm"` in a group chat or a channel and it will remind you there. I use remind app almost daily.

![RemindApp](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y0jaij5fp2x9w6idsua9.gif)

**Some examples are** :
  * "Project Meeting" every monday at 4pm
  * "turn in all reports" on the last weekday of every month
  * "update server" every Monday, Wednesday, Saturday at 10am


You can also remind yourself about any Teams message.
![RemindYourself](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i3eqpkmfzhkg1dux1pib.jpeg)

#### How to use:
Just click on Apps(see left bottom corner of your msteams app/browser), search for remind. Click Add and it's done. on typing help to remind bot you will get a better idea of how to use it.




### 2. quicklink

You can easily add links such as some company's ip, custom webservices or research paper's link etc. in the group chat or channel itself.
Again very easy to use. You can add this too in the same way as remind app.

![QuickLink](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/51zjntoleaq1bzcsy0ft.png?)


### 3. Incoming Webhook

Using webhook you can send custom messages on teams channel through MS teams API.

For example
  * Notify on teams once service completed it's job.
  * Notify if some x service gets down.
  * Notify on teams channel if someone tweeted about some XYZ stuff etc.


*Note: It sends messages to the channel only.*


<h4>How to use it : </h4>
Go to apps, search for incoming webhook. Now here it will ask on which channel you want to add webhook. Once added it will generate a URL.
On that URL, you can send messages using HTTP requests(for ex using curl etc).


<h4>For more information :</h4>
* [How to add incoming webhook](https://docs.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook)
* [Send message using curl and powershell](https://docs.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/connectors-using?tabs=cURL#send-messages-using-curl-and-powershell)

Tell me in comments which ms teams app/tricks you use more to increase your productivity.
Is Hacking legal 🤔⁉️ 
Tags: bash, python, programming
Published: 2021-10-20 14:56:27

firstly we need to know about the hacking, what is it?, What kinds he is?, how it works? 

![img](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6x3m2szdfvxhz5zotlrq.jpg) 

## 1. What is Hacking?

i cant tell you the meaning of hacking becuase it has a Many definitions, i like the google definition<br>
<blockquote cite="google.com">
Definition: Hacking is an attempt to exploit a computer system or a private network inside a computer. Simply put, it is the unauthorised access to or control over computer network security systems for some illicit purpose.
</blockquote> 
but in many things the hacking is a legal thing. how? see the below text.

## 2.What kinds he is? 

the hacking has many kinds like: 

- Informations
- Games 
- Data

and more...<br> 

But the hackers are divided into two types **moral and unmoral**<br> 

Moral: its a legal hacking uses to self-defense & the companies use it detect errors.

Unmoral: its non-legal hacking uses to penetration peoples and companies and collect data.

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

## How it works?
if you ask any hacker how he is hacking his answer will be "Terminal", but wich Terminal? 
the best Terminal is [Linux Terminal](https://www.linux.com/what-is-linux/) 
ok.. how? 
with [bash](https://opensource.com/resources/what-bash)...Sometimes [Python](https://www.python.org/doc/essays/blurb/). 

## 4. Conclusion 

the hacking will be a legal thing When it comes to self-defense or work with companies, anything else he is non-legal.
Fighting Bots - How does Bax Shop do it?
Tags: discuss, security, webdev, news
Published: 2021-10-20 14:37:31

There are two perspectives (at least) in every web scraping story: one of the website being scraped and the other of the scraper itself. In this article, we’ll talk about this relationship using a specific example. On one side, there’s Bax Shop, a website selling and renting musical equipment. On the other, there’s Price2Spy – an advanced web crawler, looking to monitor prices on Bax Shop.

We’ll start off by talking about how Bax Shop came to be and give you a glimpse into its roots. Then we’ll focus on the period when they first launched their online store and how initially they fought bots on their website. Afterward, we’ll go over other methods they employed and also cover how Price2Spy adapted to these defenses, in this back-and-forth game of price monitoring. 

To read the rest of the article follow the link: https://botmenot.com/blog/how-bax-shop-fights-bots/