teleren/devto huggingface dataset:
Get Started  with reliable SFTP Client for Mac Commander One
Tags: sftp
Published: 2021-08-26 13:13:09

There are a lot of SFTP clients for Mac. They all differ from each other by the price and set of features.Therefore let's talk about best FTP client-Commander One. 

Commander One is a reliable [SFTP client for Mac](https://mac.eltima.com/sftp-client-mac.html) OS users. Furthermore, the Mac Terminal emulator makes it extremely easy for users to manage their data from various environments. With its help you can perform various file operations like copying, viewing, deleting, editing. The most important is that everything is securely encoded.
Top 3 best Laravel CRM Packages
Tags: laravelcrm, opensourcecrm, crm
Published: 2021-08-25 16:38:53

[DayBydayCRM](https://daybydaycrm.com/), [Krayin](https://krayincrm.com/), [LaraAdmin](https://laraadmin.com/) are the top 3 active open source laravel CRM packages currently in the ecosystem.

**Laravel** is the most popular PHP framework in the developer ecosystem due to its simplicity, clarity and flexibility that make projects more secure and scalable.

CRMs play a very important role in day to day business of every size. In the laravel ecosystem, there are many laravel CRMs to be made use of. Here we are going to discuss the most commonly used opensurce laravel CRM packages:

## DayByDayCRM:-
DayByDay CRM is an open source CRM system written in PHP Laravel.
The platform allows you to easily **create projects** and assign them to clients and users.

Github Repo: https://github.com/Bottelet/DaybydayCRM

![DayByDayCRM](https://daybydaycrm.com/clients_overview.png)

The platform provides Lead Control features so that you and your team will not forget to follow up with the clients and DayByDay CRM collects all the important notes from previous meetings and details about the clients.

It offers many other features like **task control**, **user access**, managing contracts and documents and many more.

Live Demo:-https://demo.daybydaycrm.com/login

## Krayin:-

Laravel CRM helps to manage your business more effectively. Krayin CRM is powerful software that connects all the data from sales leads and customers all in one place.

Github Repo:- https://github.com/krayin/laravel-crm

It offers functionality like [Lead Management](https://krayincrm.com/how-to-create-leads-in-krayin-crm/), **Activities Management**, **ACL system** and Contact Management, Custom Fields and much more.

![Krayin CRM Software](https://krayincrm.com/wp-content/themes/krayincrm/images/webp/krayin-lead.webp)

Krayin is very flexible and easy to use even for non-tech savvies and as It is open source project customization can be done very easily even at the core level too.

Live Demo:- https://demo.krayincrm.com/admin/login

KrayinCRM offers Kanban view displays so that leads can be organized based on their stages to give an idea of their progress and how much revenue is expected to be generated.


## LaraAdmin

LaraAdmin is a Open source CRM for easily starting Admin applications with features available like Advanced CRUD Generation, Schema Manager and Workflows.

![LaraAdmin](https://laraadmin.com/img/laraadmin/laraadmin-row-view.jpg)

Github Repo:https://github.com/dwijitsolutions/laraadmin-crm

*Let us know your thought on the above CRM system in comments below*
Updating Firmware in Ender 3 with an SD Card (2021) - Auto-Level Feature With No Sensors
Tags: 3dprint, ender3, creality
Published: 2021-08-26 12:59:01

*Writing this post mostly so that I remember how to do it again later.*

For some time now, the Creality Ender 3 printer is being shipped with the V4.2.2 32-bit board - *with a bootloader*. This means that upgrading the firmware involves just booting up the machine with a new `firmware.bin` file, and you no longer need to wire it up to an Arduino or what not.

#### Step 0: Make sure the board inside is V4.2.2
Unscrew the left panel. The board inside should have its version written on top of it.

#### Step 1: Install prerequisites 
Install [VS Code](https://code.visualstudio.com) if you don't have it installed already and the [PlatformIO IDE VS Code extension](https://marketplace.visualstudio.com/items?itemName=platformio.platformio-ide). Download [the zip file with latest release of the Marlin firmware](https://marlinfw.org/meta/download/) and the corresponding [config files](https://github.com/MarlinFirmware/Configurations/releases).

#### Step 2: Download the firmware
In the downloaded folder with the config files, find the `config\examples\Creality\Ender-3\CrealityV422` subfolder. This naming may change depending on the version - look for the name of your printer and the name of the board. Copy all the files into the `Marlin` subfolder inside the other downloaded folder with the Marlin firmware - overwrite the previous config files there.

#### Step 3: Prepare the `firmware.bin` file
Launch VSCode in the folder with the Marlin firmware and open the `platformio.ini` file. Set the value of `default_envs` to `STM32F103RET6_creality` (for example `default_envs = atmega2560` to `default_envs = STM32F103RET6_creality`).

#### Step 4: Add auto-leveling
Open the `Configuration.h` file and uncomment (remove the preceding `\\`) the following definitions:
- `#define MESH_BED_LEVELING`
- `#define LCD_BED_LEVELING`
- `#define RESTORE_LEVELING_AFTER_G28`

#### Step 5: Build the `firmware.bin` file
Click the check mark in the bottom left corner (*PlatformIO: Build*) or find the *PlatformIO: Build* command in the command palette (`ctrl + shift + P`).

#### Step 6: Flash the firmware
If the build succeeded, go to the folder with the Marlin firmware and find the `.pio\build\STM32F103RET6_creality` subfolder. Copy the `firmware-[timestamp].bin` file into the empty SD card. Turn off your printer, insert the SD card, and turn it on. After a few seconds, the splash screen should appear and the firmware should be successfully updated. 

#### Troubleshooting
If you're getting an error about the eeprom version error, choose `Ignore`, and in the printer settings choose "Store settings".

#### This post was based on the following videos:
{% youtube kFRy_5lh2IQ %}
{% youtube Rij29oy6t70 %}
Next.js!
Tags: webdev, nextjs
Published: 2021-08-26 12:58:09

Hey Folks! I hope you are doing great.

In this post we will be learning next.js and why you should use it for your next project. 

### What is next.js?
The react framework for production. [Next.js org](https://nextjs.org/)
Next.js is a framework built on the react library. It helps you create server side rendering and static applications which improves user experience and SEO.  

### Why Next.js?
Next.js simplifies the process of building a react application. I'll give you 10 reasons why Next.Js should be used for your next project.

1. **Image optimization** 
Next.js has its own image component which helps in resizing, optimizing and scaling images. 

1. **Fast Refresh** 
Any change or edit you make in your react component is instantly reflected in your browser.

1. **Zero Config** 
No or little configuration is needed when creating or building your app. Automatic compilation and building.

1. **Authentication** 
It supports various authentication patterns each designed for different use cases.

1. **Routing**
Next.js has a file base routing system. In a typical react app you will need to install a third party library to help with routing in your app but with next.js it is made available for you with no config needed.

1. **API Routes***
You can create API endpoints inside your next.js application. 

1. **CSS Support** 
Next.js by default is styled using CSS modules which saves you the time of choosing a CSS library. You are allowed to use any CSS framework like tailwind CSS or CSS in JS library like styled components. 

1. **Server Side Rendering(SSR) and Static Site Generation(SSG)**
Pre-renders your pages at build time(SSG) or when the page is requested(SSR).

1. **Code Splitting**
Next.js automatically breaks your code to speed up page loading. 

1. **TypeScript Support**


### Websites that use Next.js
*  [coinmarketcap](https://coinmarketcap.com/)
*  [Binance](https://www.binance.com/)
*  [Zapier](https://zapier.com/)
*  [TikTok](tiktok.com)
*  [GoDaddy](dcc.godaddy.com)


### Conclusion
All the features above makes next.js an amazing framework to work with. It provides you with the best developer experience.
If you know other features of next.js or websites that use next.js then let me know about them in the comments.
Thanks!
XSS exploits explained
Tags: webdev, devops, security
Published: 2021-08-26 12:55:18

## Introduction
XSS stands for **C**ross-**S**ite **S**cripting. The web works using HTML which uses angular brackets which act as an instruction to the web browser, for example by specifying text in the `<b>` tag, you are instructing the browser to display some bold text. If you want to write an angle bracket as text and not as an instruction, you do something which is called **escaping**, it is using some specific codes in the text so that the browser renders the specific codes to something else, like the browser would render `<` as `&lt;` and it would render `>` as `&gt;`. Web apps usually take inputs from the user and store it in their database, and then render the data when required. So when a hacker, sends html as data to the database via the web app, the html is stored in the db, and when the same data is rendered as html, they affect the page and get inserted as HTML into the specific web page. This is what is called cross-site scripting. This was harmful to the users of the web app as suppose you set `</html>` as your bio, when a user visits your profile and see your bio, the html tag would end for them, thus not rendering the remaining web page. This was a deadly attack for the websites.<br><br>

Then JavaScript comes along, and XSS attacks get even more deadlier for the websites, you can insert JavaScript in a website just by including a `<script></script>` tag in the HTML and specifying the JavaScript inside the script tag. This is really dangerous as when it is executed on the victim's device, it may steal sensitive information. Suppose you write a script tag along with JavaScript which steals the cookies of the victim as your profile bio on a website that does not filter the tags, so whenever some user would visit your profile the script would get executed and the victim's cookies would be stolen.<br><br>

HTML tags are not the only possibility for exploiting a website using XSS. There other vulnerabilities as well. Anything that acts on a user input, can be used to exploit the website, e.g.: functions. Attributes like `onerror` could also be used to exploit a website using XSS.

## Preventive Measures
- Websites must use XSS filtering on their websites, so that the HTML tags are filtered out.
- Websites must escape the Html tag angle brackets while storing some user input in the database
- Websites must test their user interface, so that they leave no XSS vulnerability.

<br>
XSS vulnerabilities can be endless, therefore websites organize bug bounty programs to find these vulnerabilities.

## Links
You can use the following websites to find out how XSS exploits work:
- [Google XSS Game](https://xss-game.appspot.com/)
- [alert(1) to win game](https://alf.nu/alert1)
- [XSS Polygot Challenge](https://polyglot.innerht.ml/)
Self and This
Tags: javascript, ruby
Published: 2021-08-26 12:53:40

The `self` keyword in ruby is used to access the current object, depending on the context in which it is used. For example, when used in an instance method, `self` refers to an instance of the class. When used in a class, `self` refers to the Object of whichever class it's used in. This allows for code that's easier to read and change, and also useful for debugging purposes.

The `this` keyword in javascript has some similarities to `self` in ruby, but also some key differences. 

The value of `this` depends heavily on the context in which it is called, and also whether it is called in strict-mode or non-strict-mode. In the global context, `this` will refer to the global object, which is often the window object. In the context of a function, the value of `this` will depend on how the function is called. If the value of `this` is not set by the call, it will automatically default to the global object.

In the context of a Class, `this` is a regular object, similar to `self` in ruby. `This` can be used in the constructor function of a class, and becomes self-referential. 

When the `bind()` method is used, `this` will become bound to the first argument of `bind`, regardless of the context in which it is used.

`This` seems like a more confusing keyword than `self` in ruby, but it is also extremely useful and important when using Javascript.
ĐỊNH VỊ XE MÁY TẠI BÌNH PHƯỚC
Published: 2021-08-26 12:32:08

Bạn muốn lắp https://dinhvixemay.org/dinh-vi-xe-may-tai-binh-phuoc.html Định Vị Xe Máy Tại Bình Phước để theo dõi giám sát người thân, hoặc chống trộm cho xe máy. Hãy liên hệ ngay với chúng tôi để được tư vấn sản phẩm.

ĐỊNH VỊ XE MÁY TẠI BÌNH PHƯỚC
"Chỉ vài thao tác trên điện thoại bạn có thể hoàn toàn biết xe mình đi đâu "
ƯU ĐÃI
Giá Trọn Bộ Chỉ: 1,250,000đ
» Bạn sẽ được tặng ngay 1 sim 4G Data để lắp đặt vào trong thiết bị, trị giá: 200.000 vnđ
» nhận ngay 1 gói phần mềm theo dõi 1 năm trị giá: 600.000 vnđ
» Bảo Hành 2 Năm, 1 Đổi 1
»  BẢO MẬT CAO
Ngoài ra chúng tôi còn lắp đặt tại các tỉnh thành khác như:
- https://dinhvixemay.org/dinh-vi-xe-may-tai-binh-thuan.html
- https://dinhvixemay.org/dinh-vi-xe-may-tai-cao-bang.html
- https://dinhvixemay.org/dinh-vi-xe-may-tai-can-tho.html
- https://dinhvixemay.org/thiet-bi-dinh-vi-xe-may-o-to-tai-da-nang.html
- https://dinhvixemay.org/lap-dinh-vi-xe-may-tai-dak-lak.html
- https://dinhvixemay.org/lap-thiet-bi-dinh-vi-xe-may-tai-dak-nong.html
- https://dinhvixemay.org/lap-dinh-vi-xe-may-tai-tp-bien-hoa-dong-nai.html
- https://dinhvixemay.org/lap-thiet-bi-dinh-vi-xe-may-tai-dong-thap.html
- https://dinhvixemay.org/lap-dinh-vi-xe-may-tai-ha-giang.html
- https://dinhvixemay.org/dinh-vi-xe-may-tai-ha-nam.html
- Định Vị Xe Máy Tại Hà Tây
- https://dinhvixemay.org/lap-dinh-vi-xe-may-tai-hai-duong.html
- https://dinhvixemay.org/dinh-vi-xe-may-tai-hoa-binh.html
- http://https://dinhvixemay.org/lap-thiet-bi-dinh-vi-xe-may-tai-hung-yen.html
- https://dinhvixemay.org/dinh-vi-xe-may-tai-nha-trang-khanh-hoa.html
- https://dinhvixemay.org/lap-thiet-bi-dinh-vi-xe-may-tai-kien-giang.html
- https://dinhvixemay.org/lap-thiet-bi-dinh-vi-xe-may-tai-kon-tum.html
- https://dinhvixemay.org/dinh-vi-xe-may-tai-lai-chau.html
- https://dinhvixemay.org/dinh-vi-xe-may-tai-lang-son.html
- https://dinhvixemay.org/dinh-vi-xe-may-tai-ninh-thuan.html

- https://dinhvixemay.org/dinh-vi-xe-may-o-quang-binh.html
- https://dinhvixemay.org/lap-dinh-vi-xe-may-tai-quang-nam.html
- https://dinhvixemay.org/tag/dinh-vi-xe-may-tai-quang-ngai
- https://dinhvixemay.org/dinh-vi-xe-may-tai-quang-ninh.html
- https://dinhvixemay.org/lap-dinh-vi-xe-may-tai-thai-binh.html
- https://dinhvixemay.org/lap-dinh-vi-xe-may-tai-thai-nguyen.html
- https://dinhvixemay.org/dinh-vi-xe-may-tai-thanh-hoa.html
- https://dinhvixemay.org/dinh-vi-xe-may-tai-hue.html
- https://dinhvixemay.org/lap-dinh-vi-xe-may-tai-tp-my-tho-tien-giang.html
- https://dinhvixemay.org/dinh-vi-xe-may-tai-tra-vinh.html
- https://dinhvixemay.org/dinh-vi-cho-xe-may-tai-vinh-phuc.html
Liên Hệ Bảo Việt Technology 
https://dinhvixemay.org
Hotline: 0903108661
Setting up a Monorepo with NX for React & NestJS
Tags: typescript, monorepo, react, nestjs
Published: 2021-08-26 12:06:22

### #FirstPost

Have you ever been asking yourself "How do I actually set up a mono-repository from Scratch that contains pretty much everything I need to get started with a Full-Stack Web-App 🤔"? 

Well this might be the answer if you don't mind giving `nx` a try. It's basically a tool that can be used as an abstraction layer on top of `npm` or `yarn` respectively to help managing "huge" repositories containing multiple apps, modules and libraries. 

So... "Why do I need yet another tool instead of just using `yarn` or `npm`"?
* **Caching**: No more "run `tsc` on `preinstall`" when changing a branch or installing dependencies 🙌
* **Task execution management**: you can e.g. lint all affected files rather than the whole workspace 🎉
* **Boilerplate Scripts**: No (or at least just a minimum) manual configuration of Script-Setup required to run, build, test or lint each application. 

Enough theory let's dig into the steps required for an initial setup.



### TL;DR
First of all make sure you have `nodejs` and `npm` installed.

* Install `nx` globally (I'll continue with `npm` you can use `yarn` tho).
```
npm i nx
```

* Initialize a new `nx` workspace with a default React-App called `client`. I just found it easier to add the NestJS Application afterwards, the other way round should work as well. ;) 
```
npx create-nx-workspace@latest
```
I chose `react` as preset, `client` as name and `scss` as stylesheet when prompted.

* Install required dependencies for NestJS.
```
npm install -D @nrwl/nest
```

* Add a new NestJS Application called `api` to the workspace.
```
npx nx g @nrwl/nest:app api --frontendProject=client
```

* (Optional) Add a new library for shared types.
```
nx g @nrwl/node:library types
```

#### Done 🥳 
Your app is now ready to go and you can start to try out some basic `nx` commands, e.g.  

* `nx build <app>`
* `nx serve <app>`
* `nx lint <app>`
* `nx test <app>` 
where `<app>` is `client` or `api`.  

Or you could do some format checks or linting:
* `nx format:check`
* `nx lint:affected`
* `nx lint` 
... but wait it's only linting the "default" project `client` 🤔 

#### Not quite - some optimisations

Usually you'd want to perform tasks like
* "run all tests" or even "run all tests in parallel"
* "lint all projects"

That's where we'll have to add some scripts to our root `package.json` manually. So let's add the following scripts that makes use of some of the [CLI-Parameters](https://nx.dev/latest/node/cli/run-many#parallel) that `nx` provides:

```
"test": "npx nx run-many --all --target=test --parallel"
"lint": "nx workspace-lint && npx nx run-many --all --target=lint --parallel"
```

Aaaaand that's it - now you should have everything ready to go with your new Full-Stack React + NestJS project :)

The sample project can be found as a template-repository on [Github](https://github.com/kevelopment/nx-nestjs-react-starter).

Thanks a bunch and keep coding clean 🤙
AWS Architecture Blog
Tags: aws, kinesis, datascience
Published: 2021-08-26 12:04:30

In this blog post, authors of [Scalable Data Streaming with Amazon Kinesis](https://www.amazon.com/Scalable-Data-Streaming-Amazon-Kinesis/dp/1800565402/) are describing the architectural considerations needed to scale a low latency FIFO messaging system built with Amazon Kinesis Data Streams.

Check out the whole blog here: (https://aws.amazon.com/blogs/architecture/field-notes-how-to-scale-opentravel-messaging-architecture-with-amazon-kinesis-data-streams/)
A Quick 10-Second Programming Joke For Today
Tags: jokes, dailydeveloperjokes
Published: 2021-08-26 12:00:04

---
title: "A Quick 10-Second Programming Joke For Today"
description: "Check out today's daily developer joke! (a project by Fred Adams at xtrp.io)"
series: "Daily Developer Jokes"
published: true
tags: #jokes, #dailydeveloperjokes
---

Hi there! Here's today's Daily Developer Joke. We hope you enjoy it; it's a good one.

![Joke Image](https://private.xtrp.io/projects/DailyDeveloperJokes/public_image_server/images/5e12592f4bd15.png)

---

For more jokes, and to submit your own joke to get featured, check out the [Daily Developer Jokes Website](https://dailydeveloperjokes.github.io/). We're also open sourced, so feel free to view [our GitHub Profile](https://github.com/dailydeveloperjokes).

### Leave this post a ❤️ if you liked today's joke, and stay tuned for tomorrow's joke too!

_This joke comes from [Dad-Jokes GitHub Repo by Wes Bos](https://github.com/wesbos/dad-jokes) (thank you!), whose owner has given me permission to use this joke with credit._

<!--
Joke text:
___Q:___ Why do Java developers wear glasses?

___A:___ Because they don't C#!
 -->
Un Dev Junior parle aux Dev Juniors
Tags: junior, javascript, french, frontend
Published: 2021-08-26 11:32:55


> 
Ta-da-da-daaam!

### Commençons déjà par se présenter.
Je me nomme Benjamin De Mot, *aucun lien de parenté*. Si vous captez les ref', vous pouvez probablement en déduire mon âge (i.e., 42-7).

Je suis en reconversion dans le développement web. Et d'ailleurs, ça y est, je suis officiellement diplômé Dev Web 👏 après une formation de 6 mois chez OpenClassrooms.
Tournée de Champomy! 🎉

J'adore créer des machins avec mes gros doigts, mon clavier et ma cervelle (parfois). J'aime vraiment chercher et trouver (parfois) des solutions à des problèmes logiques ou esthétiques.


> Hey d'ailleurs j'viens de trouver une [implémentation JS giga-easy](https://flaviocopes.com/merge-sort-javascript/) du [Merge Sort Algorythm](https://fr.wikipedia.org/wiki/Tri_fusion).

Mais surtout, j'aime apprendre et comprendre. On en reparlera plus bas.

Mon kiff à moi, c'est le JavaScript. Mais je ne suis pas sectaire. Une fois que je serai Dev JS Senior (*il est l'ooooor*) ou avant, je me pencherai sur d'autres langages, ne serait-ce que pour ma culture perso et la compréhension plus profonde de l'informatique. 

*Bref.*

Suivant les conseils de [Nicolas Brondin-Bernard](https://blog.nicolas.brondin-bernard.com/pourquoi-vous-devriez-creer-un-blog-en-tant-que-developpeur-junior/), je me lance dans l'écriture d'un blog. Je vais y partager mon expérience de la reconversion, de la formation que j'ai suivie et de ma recherche d'emploi. Mais pas que.

### Je veux tenter de produire un contenu de Junior pour Juniors.

Durant ma formation, pour compléter les cours, j'ai dû faire pas mal de recherches sur le net. Parfois pour approfondir un sujet vu en cours, parfois simplement parce que l'explication donnée ne correspondait pas à la façon dont mon cerveau appréhende les choses🤯.
 Et il y a deux choses qui m'ont beaucoup frustré:  

- 
Le manque de ressources pour les "faux-débutants". C'est-à-dire, ceux qui connaissent déjà les bases du développement mais sont encore loin d'être experts.
M'est avis qu'il y a un vide à combler entre les cours "introduction aux variables" et la documentation froide et ésotérique.

- 
La surabondance de tuto et le manque de théorie. Okay, y'a sûrement un intérêt à ces centaines de tutoriels sur "comment réaliser une restful API en Node.js, Express et MongoDB", mais à long terme, ne serait-ce pas plus intéressant d'insister plus sur le "pourquoi" que sur le "comment" ?


> 
Si tu donnes un poisson à un homme, il mangera un jour, si tu lui apprends à pêcher, il mangera toujours.


Plus haut, je disais "tenter de produire un contenu". Je n'ai pas le niveau d'expertise suffisant pour faire des cours. Mais je peux déjà partager ce que j'ai lu et compris à mon niveau de Junior. Et avec votre aide, tenter **d'expliquer simplement des choses compliquées.**
*En vrai, ça m'obligera à bien comprendre les sujets abordés car le but n'est pas de passer pour une 🍌 sur le net (je joue à LoL pour ça).*

Ah puis on fera de la veille aussi.
Parce que les histoires de veille, c'est classe.