teleren/devto huggingface dataset:
Generate REST APIs on ANY MySQL database.
Tags: mysql, react, vue, webdev
Published: 2021-10-07 10:40:56

## [NocoDB](https://github.com/nocodb/nocodb)
NocoDB is an Open Source Airtable and also the easiest way to create instant REST APIs on any MySQL/Postgres databases. 


{%github nocodb/nocodb%}

## Why this ?
Generating REST APIs for **ANY** exisitng MySql/Postgres database which does not follow conventions of frameworks such as rails, django, laravel etc is a small adventure that one like to avoid .. Hence this.

## Getting started :
NocoDB is really simple and minimalistic to get started. NocoDB requires either node or docker installed on your machine.


#### Using npm
```
npx create-nocodb-app
```

#### Using docker
```
docker run -d -p 8080:8080 nocodb/nocodb
```

## Demo

{% youtube wSsyMmNjlHc %}

# Documentation
- [REST APIs generated](https://docs.nocodb.com/developer-resources/rest-apis)
- [Production setup](https://docs.nocodb.com/getting-started/installation#production-setup)

# Join our community :
- 📣   Github : https://github.com/nocodb/nocodb
- 📣   Discord : https://discord.gg/5RgZmkW
- 📣   Twitter : https://twitter.com/nocodb

Would love to hear your usecases & feedbacks. 🙌
LibreLogos.org -- Free logos for open source projects
Tags: showdev, contributorswanted, design
Published: 2021-10-07 10:37:49

Hi guys!

I designed 30+ free logos for open source projects and NGOs. If you have an eligible project, feel free to claim a logo. I'll try to add new logos regularly. I hope other designers will contribute to the project eventually.

- Website: https://www.librelogos.org/
- GitHub: https://github.com/enjeck/libre-logos
- Product Hunt: https://www.producthunt.com/posts/librelogos-org (I just launched on Product Hunt. If you can, please show me some love over there)

## Some logos
![Libre Logos](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8z23s3nf0kn20jskbkjc.png)
![Libre Logos](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yyp6jlasepwnypan8w6g.png)
![Libre Logos](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xhm952orewvk3ptn4zu5.png)
What is Tekton and how it compares to Jenkins, Gitlab CI and other CI/CD systems
Tags: tekton, jenkins
Published: 2021-10-07 10:25:44

---
title: What is Tekton and how it compares to Jenkins, Gitlab CI and other CI/CD systems
published: true
description: What is Tekton
tags: tekton, jenkins
cover_image: https://assets.mkdev.me/posts/covers/000/000/012/original/mkdev_article.png
---
Tekton is a new hot topic in CI/CD area - but what is it, really? Is it a replacement for Jenkins or something else? Let's find out!

{% youtube skcLi9-WTkA %}

***

*You can always hire [our mentors](https://mkdev.me/en/specializations) and learn directly from them!*
official.page
Tags: webdev, php, javascript
Published: 2021-10-07 10:19:59

Today we have signup an account on dev. to

#webdev  


The author found it a fabulous community to communicate with developers worldwide. 

Hello to all, we are getting started with a new web page for linking links inside and sharing peaceful knowledge with other fellows. #ConnectingWithDot


We would love to invite you to share your thought's opinion and about your professional journey on your page.

It's all about connecting.
Life is all about connecting with new thoughts, ideas, people and so on to go on. 

https://official.page/register
Selecting multiple values and applying them to a DetailsList
Tags: beginners, react, typescript
Published: 2021-10-07 09:45:37

Hi
I am trying to filter a DetailsList by getting the values from a Select.

I am able to filter the DetailsList by using hard-coded text but I'd like to be able to loop through the selected options and check for those.

Thanks
S

private handleChange = (selectedOptions) => {  
    
    
      this.setState({
        
        selectedOptions,
        Items: Text ? this._allItems.filter(i => i.Category.toLowerCase().indexOf("choice 1") > -1) : this._allItems
        
      });

    
    selectedOptions.forEach(function (value) {
      console.log(value);
      console.log(value.value);
      console.log(value.label);
    }); 
    
  }
🦋Learn How to Encrypt Data in Flutter
Published: 2021-10-07 09:35:59

## Use cryptographic algorithms to hash data in Flutter
Photo by <a href="https://unsplash.com/@swimstaralex?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Alexander Sinn</a> on <a href="https://unsplash.com/@swimstaralex?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
  
---

In this tutorial, we’ll look to make our mobile apps more secure and safe. We can achieve this, for instance, by encrypting sensitive user data. I will show you exactly how this works with Flutter.

We will take a closer look at cryptographic hashing algorithms and see how the algorithms SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256, MD5, HMAC (i.e. HMAC-MD5, HMAC-SHA1, HMAC-SHA256) can be used in Flutter to hash data.

To do this, we’ll create an app that receives a text and, if needed, a password and transforms it into hash values using the different algorithms named before.

Additionally, I will show you how to use a TextEditingController to change the hash value at runtime and copy the hash value itself with just one click.



Here’s a look at the app in action:

{% youtube q65Lmr8uvrU %}

### Continue reading ...

{% medium https://betterprogramming.pub/learn-how-to-encrypt-data-in-flutter-c999b4fc7340 %}
The Top 10 Text Analysis APIs to Use in 2021

Published: 2021-10-07 09:27:13

Text analysis, also known as text mining is a process that enables you to extract valuable insights from unstructured text. It uses natural language processing (NLP) to break down the data and machine learning to extract machine-readable insights from textual data.

Even if you have various options, choosing the right API can be difficult. To help you make it easier, this article lists some of the most effective text analysis APIs that you can use.

Link - https://www.bytesview.com/blog/top-10-text-analysis-apis-2021/
Rename your React Native project completely.
Tags: javascript, reactnative, android, ios
Published: 2021-10-07 09:21:00

Renaming your React Native project after it has been initialized is a hassle. React Native has a default way of being initialized which allows you to name your project from the start. This is achieved because the CLI uses the name you specify to create your Xcode and Android projects during setup. That’s a very handy feature, but what if you need to change the name of your project down the road? What’s the best way to rename your React Native project?

Without the right tool, you will quickly find yourself in a rabbit-hole of find-and-replace activity. Xcode and Android Studio errors can arise and cost you more time than you’re willing to spend investigating. Whether you began with react-native init or a starter kit you found online, read on to learn how to rename your React Native project the easy way.



#React-native-rename

In walks https://www.npmjs.com/package/react-native-rename to save the day. With one command, this package will sweep through your iOS and Android directories performing most of these changes for you! It makes it effortless to rename your React Native project.

The first step is to add the package globally:

`yarn global add react-native-rename or npm install react-native-rename -g`

This makes sure that it’s available for use no matter which project you need to rename. Due to the nature of its utility, there’s no need to install this as a dependency of any particular project.

Next, create a backup in case anything goes awry:

Lastly, run the react-native-rename command to set the rename in motion. For example if your want to rename your project “My New Project Name” and your bundle ID is “com.myorg.newproject” you’d execute:

`react-native-rename "My New Project Name" -b com.myorg.newproject`

It provides feedback on all of the items it could or couldn’t change.

Note that the bundleID will change automatically for Android, but for iOS you’ll have to update it manually in Xcode.

[Link](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ln3fwjuohbj2ohh3npu2.png)

*Make sure you select the correct target, then the “General” header to find and update your Bundle Identifier*



and finally globally search in your editor like VSCode ‘APP_NAME’ and replace with ‘NEW_APP_NAME’ as per your understanding.
Get Alerts and Adjust TP on 3Commas Based on SOs
Tags: 3commas, python
Published: 2021-10-07 09:16:18

A very unwieldy title, I know. But I couldn't think of a better one. The topic is also very specific to my requirements, but maybe it will help someone.

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

# The Situation
I'm running several [Urma v3 Lite](https://www.buymeacoffee.com/UrmaGurd) (update 2021-10-27: apparently the creator took that site offline) bots on 3Commas. If you don't know what I'm talking about then stop here, this blog post is not for you ;-)

Anyway, if you are familiar with Urma v3 Lite bots you know that they often get stuck after the 4th safety order (SO) as the spacing between the SOs is large. And if it goes down to the 5th or even the 7th SO, a bounce is very common. 

Hence I needed two things:

1. Alerts whenever the 4th SO is completed. So that I don't need to check 3Commas the whole time. I then can play with manual safety orders to bring the deal into profit more quickly.
2. Adjust the take profit (TP) value starting with the 5th SO. I usually go with 1.5% TP, but the value should be higher depending on the SO.

# The Solution
I wrote a Python script which does exactly the above. You can find it in my [GitHub repo](https://github.com/NobbisCrypto/Crypto/blob/main/3c_SO_manager). I'm not a Python expert, but the script gets the job done.

The script checks all active deals whether they have 4 or more SOs completed. If yes, you get an alert. The deal ID is then saved so that you don't get further alerts for that deal. Then, it checks if 5 or more SOs are completed and sets the TP accordingly. I'm running the script every 15 minutes via cron on a Ubuntu VPS.

You need to have Python and [py3cw](https://github.com/bogdanteodoru/py3cw) installed.

The alerts are send to Discord. Read [here](https://dev.to/nobbi/send-exchange-updates-to-discord-5efd) why and how.

The script has a variable section which you need to modify. There are a lot of comments in the script so I won't go over the variables here. Below the variable section for your reference.

```
# 3Commas API info
# BOTS_READ permissions are mandatory
# BOTS_WRITE permissions are only needed if you want to adjust the take profit value
API_Key = ''
API_Secret = ''
account_id = ''

# Discord webhook for notifications
DiscordWebhook = ''

# Adjust TP, too?
adjust_TP = True # Can be True or False

# Adjust TP percentages when SO is completed
TPSO5 = 3 # Safety order 5
TPSO6 = 7 # Safety order 6
TPSO7 = 10 # Safety order 7

# Trailing settings
trailing_enabled = False
trailing_deviation = 0
```
Exchange to Office 365 Migration
Published: 2021-10-07 07:56:17

As is the trend nowadays, many organizations are moving from Exchange Server to Office 365 to move their business to an online environment.

An efficient third-party solution is required to migrate Exchange to Office 365 quickly and reliably. One such solution is the Shoviv Office 365 Migration Tool.

<b>Shoviv Office 365 Migration Tool:</b>

This tool comes with a convenient GUI and performs <a href="https://www.shoviv.com/pages/migrate-exchange-to-office365.html">exchange to Office 365 Migration</a> hassle-free. It offers several user-oriented features that address itself as a first-choice even for non-technicians.

<b>Highlights:</b>

- There is no restriction on adding the number of mailboxes. Therefore, you can add multiple mailboxes to migrate Exchange to Office 365.

- It allows users to migrate Exchange mailboxes to PST format with a split option for oversized PST files.

- This tool also comes with email translation and folder mapping features.

- The Exchange to <a href="https://www.shoviv.com/pages/migrate-exchange-to-office365.html">Office 365 Migration</a> tool retrieves mailboxes and performs a preview of mailbox items.

<b>Important feature:</b>

I will apprise you that it has an incremental export option. It helps in resuming the process in the interrupted state and also eliminates duplicate items in the migration.

<b>Final words:</b>

Therefore, I suggest that utilize the above-mentioned professional approach to migrate Exchange to Office 365. Check out its user-friendly accessibility and security features by using the free trial version of the tool.
Have you sell anything using Gumroad?
Tags: watercooler, career, gumroad
Published: 2021-10-07 08:42:48

---
title: Have you sell anything using Gumroad?
published: true
description: 
tags: watercooler, career, gumroad
cover_image: https://livingwiseproject.com/wp-content/uploads/2021/06/Gumroad-Logo.png
---
Selling digital products like e-books, courses, videos and graphics can be an awesome source of passive income.

[Gumroad](https://gumroad.com/) provides a great platform for that and is one of the most popular choices among the developers.

Have you sold anything with it? Do you make a living of it?
Share your links below! 👇
When was the last time you asked for a raise?
Tags: watercooler, career, business, finances
Published: 2021-10-07 08:41:21

---
title: When was the last time you asked for a raise? 
published: true
description: 
tags: watercooler, career, business, finances
cover_image: https://getfullyfunded.com/wp-content/uploads/2018/06/money-small.jpg
---
Getting a raise keeps you motivated, lifts your self-esteem and adapts your income to all the increasing living costs.

When was the last time you asked for a raise?

Also, what arguments do you usually use in the discussion and have you ever switched the jobs due to not getting the raise?
T-SQL: How To UNION ALL Tables and Why
Tags: sql, database, tutorial
Published: 2021-10-07 08:39:04

In some cases, we need to combine the result of two tables where data types may be similar or identical. We could combine the data in one table using INSERT syntaxes, but with UNION ALL or UNION, we can achieve the same result instead of creating a new table. In the video, [SQL Basics: How To Use UNION ALL and Why](https://www.youtube.com/watch?v=c9kz_DhyWT8&list=PLHHm85xMQAYNScEs-nu9gzi2uoQ9JCCYA&index=12) we see several examples of this in action. One example we union tables with the same data type and in another example, we union two columns that have different data types.

Some questions that are answered in the video:

- Note the tables that we're using and what values are identical based on the column names and what values differ based on the column names. We'll be using these tables throughout these videos.
What is a like data type? Why does it matter in a union? What's the outcome when we union two like data types that slightly differ?
- Compare the results of the queries when we union identical data types versus when we combine two different data types.
- If we have a type of varchar and a type of integer, what tool could we use to combine the columns in a union?
- What should we know about union and security?
- While there are object oriented tools that may automatically convert data types, if we have mismatches, we should be aware of the underlying data if we use a union.

One applied example of using unions is error logs. Often we have error logs for the database, application and other possible layers. It's useful to identify when an error happened and how that error translated across layers. Unioning tables with the errors by combining the error and date can be useful when we order by the time of the error. We can often find out where the error originated and how it impacted all the layers of our application or service.
Python bin()
Tags: python, programming, codenewbie, tutorial
Published: 2021-10-11 13:48:01

---
title: Python bin()
published: true
date: 2021-10-07 08:30:00 UTC
tags: #python #programming #codenewbie #tutorial
canonical_url: https://itsmycode.com/python-bin/
---

ItsMyCode |

The **`bin()`** is a built-in function in Python that takes an integer and returns the binary equivalent of the integer in string format. If the given input is not an integer, then the **` __index__ ()`** method needs to be implemented to return an integer. Otherwise, Python will throw a [TypeError exception](https://itsmycode.com/tag/typeerror/).

## bin() Syntax

The syntax of the**` bin()`** method is 

```python 
**bin(num)**
```

## bin() Parameters

The **`bin()`** function takes a single argument, an integer whose binary representation will be returned. 

If the given input is not an integer, then the **` __index__ ()`** method needs to be implemented to return a valid integer.

## bin() Return Value

The **`bin()`** method returns the binary equivalent string of the given integer.

**Exceptions: ** Raises **TypeError** when a float value is given as an input to the **`bin() `**function.

## Example 1: Convert integer to binary using bin() method

```python 
# Python code to demonstrate the bin() function
number = 100
print('The binary equivalent of 100 is:', bin(number))
```

**Output**

```python 
The binary equivalent of 100 is: 0b1100100
```

## Example 2: TypeError: ‘float’ object cannot be interpreted as an integer

```python 
# Python code to demonstrate the bin() function
number = 100.66
print('The binary equivalent of 100 is:', bin(number))
```

**Output**

```python 
raceback (most recent call last):
  File "c:\Projects\Tryouts\main.py", line 3, in <module>
    print('The binary equivalent of 100 is:', bin(number))
TypeError: 'float' object cannot be interpreted as an integer
```

## Example 3: Convert an object to binary implementing \_\_index\_\_() method

In the below example, we are sending the  **TotalPrice ** class object to the bin() method.

The **`bin()`** method does not raise an exception even if the argument passed is not of integer type since we have implemented the **` __index__ ()`** method in our class, which always returns the positive integer.

```python 
# Python code to demonstrate the bin() function using __index__ ()
class TotalPrice:
    apple = 100
    orange = 50
    watermelon=22
    
    def __index__ (self):
        return self.apple + self.orange + self.watermelon
        
print('The binary equivalent of Total Price object is:', bin(TotalPrice()))
```

**Output**

```python 
The binary equivalent of Total Price object is: 0b10101100
```

The post [Python bin()](https://itsmycode.com/python-bin/) appeared first on [ItsMyCode](https://itsmycode.com).
Flux vs ArgoCD
Tags: help, discuss, flux, argocd
Published: 2021-10-07 08:01:03

---
title: Flux vs ArgoCD
published: true
description: Share your experience with Flux or ArgoCD!
tags: ["help", "discuss", "flux", "argocd"]
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3w65j07n4qwcxz12n6y0.png
---

Hey there!

Do you have any war stories about Flux or ArgoCD? Anytime they failed miserably? Did you have to fix manually your cluster? We want to hear those stories!

# Why do we ask?
We are exploring this GitOps trend at Playtomic. We have two k8s clusters running using Flux and ArgoCD. We have a [multi-tenancy setup](https://github.com/fluxcd/flux2-multi-tenancy), that is, one repo for the cluster itself, one repo for every application we deploy in the cluster. [Flux](https://github.com/argoproj-labs/argocd-image-updater) and [ArgoCD](https://github.com/argoproj-labs/argocd-image-updater) image updaters are in place.

To be honest, both are pretty similar and any of them would work for us. If you search for comparisons between Flux and ArgoCD, you will only get a few of boring list of features. So... we are looking for first hand experiences. 

Why did you choose one over the other? Did you have the chance to try the other one?
Techniques To Polish Your Woodworking Skills
Tags: beginners
Published: 2021-10-07 07:41:22

Many people have dreams of being a carpenter. Creating your vision from a simple slab of wood is very attractive. However, few people bother to learn the skills necessary to realize this dream. You don't have to be one of them. Keep reading to find out how you can acquire the woodworking skills of a carpenter.

Even if you have been doing woodworking for some time you may want to consider taking a class. There are different levels of classes available, so you should be able to find one that teaches you something and is challenging. There is never too much that you can know about woodworking.

Begin small with woodworking projects. It can be very exciting to get yourself ready for your first woodworking project, but don't let your excitement overtake your smarts. Buy only what you need, no more for right now. Don't fall for buying tools that you currently don't need as you may find better alternatives in the future.

Remember the quote, "Measure twice, cut once." When it comes to cutting wood, you always want to ensure you have the right measurements before you begin cutting. Otherwise, you will have to buy more wood, which will cost you a lot of money. You can avoid this dilemma by ensuring proper measurements.

Learn how to find the center in a piece of firewood every time. Mount some flat scrap wood to the lathe's faceplate. Attach an acrylic piece to it using some double-faced tape. Chuck that in your lathe. Turn your acrylic to a disc. Using a 1/16" bit in your tail stock chuck, drill a hole through that center-point. Scribe some concentric circles on to the disc at 1/2"� intervals using a skew chisel. Position this center-finder over the end of your stock and adjust it until one of your circles is inscribed completely in a portion of the wood that is solid and usable. Using an awl or nail set, mark your center through the central hole in the disc.

Woodworking can be expensive. It is a good idea to go over your plans before you start and make sure that the project fits within your budget. Price out all materials by making a list of the required supplies and then go to the local hardware store to figure out the total cost.

There are many tools used for woodworking, but you may not want the expense involved with acquiring them. Look at your project and see if there might be a more reasonable solution to this cost. You may find that a cheaper tool can give you the same result as some of the expensive ones.

One thing to keep in mind with woodwork is always crowning your wood. This is done by looking down the edge of your lumber and finding the high side. Always put the high side up, which will create a more uniform and more supportive floor and roof line for your home.

Now that you know a great deal more about woodworking, you should feel confident about your skills. You have what it takes to create a work of art from ordinary lumber. All you need now is the drive. Keep this advice in mind as you set out to realize your woodworking dream.