teleren/devto huggingface dataset:
secure password holder
Tags: security, blockchain
Published: 2021-02-10 15:10:12

I had this idea in mid, and I wanted to write it down, is ungrammatical, and you can skip this post xd.

a product to keep passwords safe.
A kind of small card holder that can be opened.
It will have to be managed by a company that keeps the list of passwords and encrypted description.
The password to decipher will have to be remembered by the person, and will have to worry about finding it
a place for his password, maybe with an extra service of the company, or kept hidden by the person himself.
The portapassword will open and will contain a copy of the encrypted password list of the central database.
When connecting to the internet the password holder will synchronize these two copies according to the person's choice, with a change-log of the changes in git style, also encrypted along with the list of passwords.
When the customer enters the password in the password holder, with optionally fingerprints or other identification marks (in this case, they will be part of the password to encrypt / decrypt).
There will be a list of password descriptions, to view the corresponding password you have to press and hold next to the selected description. When the wallet closes, it ajar, or too many passwords are displayed in the same session, it automatically logs out.
In the same session you can see different passwords with a lapse of seconds between one display and another.
If the password holder is stolen or lost, just contact the password holder service through the phone and there is the possibility to block that account, identified by an ID.
To unlock it you need to make a detailed identification at the service, if the identification was successful you have to wait a fixed number of days for the account to reactivate (in case a person has pretended to be someone else, time is given to the scammed person to call the company, so in this case, it will be necessary to make further investigations, comparing the people concerned).
The viewing angle of the password holder screen can be restricted, allowing only those who are perfectly in front of them to be able to read.
You can put a sensor that when the password holder is not held by a pair of hands immediately interrupts the session, or in a hand pass.
To enter the password, the keys can be under the password holder, in order to better hide the entry
Monitor your cluster k8S and track event notifications to Slack,Discord,Teams with Botkube
Tags: monitoring, kubernetes, webdev, productivity
Published: 2021-02-10 15:07:34

## Concepts

![Alt Text](https://www.botkube.io/images/monitor.gif)


BotKube is a messaging bot for monitoring and debugging Kubernetes clusters.

BotKube can be integrated with multiple messaging platforms like - Slack, Mattermost, Microsoft Teams to help you monitor your Kubernetes cluster(s), debug critical deployments and gives recommendations for standard practices by running checks on the Kubernetes resources.

## Example Installation for Slack

* Install BotKube Slack app to your Slack workspace


* Click the Add to Slack button provided to install BotKube Slack application to your workspace. Once you have authorized the application, you will be provided a BOT Access token. Kindly note down that token as it will be required while deploying BotKube backend to your Kubernetes cluster.


* Add BotKube user to a Slack channel

* After installing BotKube app to your Slack workspace, you could see a new bot user with the name “BotKube” added in your workspace. Add that bot to a Slack channel you want to receive notification in. (You can add it by inviting @BotKube in a channel)

* Install botkube via helm chart


```bash
helm repo add infracloudio https://infracloudio.github.io/charts
helm repo update
```
  
```bash
helm install --version v0.12.0 botkube --namespace botkube \
--set communications.slack.enabled=true \
--set communications.slack.channel=<SLACK_CHANNEL_NAME> \
--set communications.slack.token=<SLACK_API_TOKEN_FOR_THE_BOT> \
--set config.settings.clustername=<CLUSTER_NAME> \
--set config.settings.kubectl.enabled=<ALLOW_KUBECTL> \
--set image.repository=infracloudio/botkube \
--set image.tag=v0.12.0 \
infracloudio/botkube
```

## Configuration for Corporate Proxy

* Pull locally the helm chart

```bash
helm pull infracloudio/botkube
```

* Add theses environment variables *HTTP\_PROXY*, *HTTPS\_PROXY* and *NO\_PROXY* in *botkube/templates/deployment.yaml*

```yaml
...
            - name: HTTP_PROXY
              value: http://my-proxy:port
            - name: HTTPS_PROXY
              value: http://my-proxy:port
            - name: NO_PROXY
              value: 10.90.0.1,k8s-ip
...
```

## Links

* [https://github.com/infracloudio/botkube](https://github.com/infracloudio/botkube)

* [https://www.botkube.io/](https://www.botkube.io/)
New and Fresh Steam API 
Tags: steam, api, java
Published: 2021-02-10 15:07:03

## A new steam API why ? 

I am making this because the actual steam API is quite bad, in fact you neither have a documentation and the community market access.

### Why in java ?

Mainly because this is my favorite language but also because you can do almost everything from android apps to desktop apps and many others.

### Add it to your project

This is in java so you can add it to any java project using maven or gradle.

Maven: 
```XML
<dependency>
  <groupId>fr.renardfute</groupId>
  <artifactId>SteamAPI</artifactId>
  <version>1.0</version>
</dependency>
```
Gradle:
```YML
implementation 'fr.renardfute:SteamAPI:1.0'
```

### How to start ?

I though this api could be used with multiple account at the same time so you can initialize multiple instances of it.

##### Step n°1

Initialize an api instance:

```Java
SteamAPI api = new SteamAPI("YOUR_STEAM_LOGIN_SECURE_COOKIE");
```
Here you will have to give a steamLoginSecure cookie because steam needs it for many request. I plan to add a steam login thing to disable the hard codding of this cookie.

##### Step n°2

Use it.
Now that you have the api instatialized you can use it as you want.
In the v1.0 you can do:
- Get apps infos (price, ranking, screenshots, player count and much more)
- Get item market infos (price, history, picture)

###### How to get an app ?

- By it's name :

```Java
SteamAPI api = new SteamAPI("YOUR_STEAM_LOGIN_SECURE_COOKIE");
List<App> apps = api.searchApp("Rust");
App rust = apps.get(0);
```
In this exemple I getted rust by only knowing it's name.
But you may ask "why apps.get(0)". And this is for two reason the first is that there is not only one game that is called rust so ``.searchApp("")`` will return a list of game that match that name and the second is that ``.searchApp("")`` order the app list by their player count so rust is obviously most played game which is called rust.

- By it's id:

```Java
SteamAPI api = new SteamAPI("YOUR_STEAM_LOGIN_SECURE_COOKIE");
App rust = api.getApp(252490);
```
Here I putted *252490* because it's the rust steam app id. You can find them by going on the steam page of a game and it will be in the url.
![A screen capture to show where is the app id](https://dev-to-uploads.s3.amazonaws.com/i/p3sih3p9lkhd7aq2rqh2.png)

###### How to get an item ?

There is actually two ways of getting an item:
```Java
SteamAPI api = new SteamAPI("YOUR_STEAM_LOGIN_SECURE_COOKIE");
App rust = api.getApp(252490);
Item blackoutHelmet = rust.getItem("Blackout Helmet", Currency.USD, api);
```

```Java
SteamAPI api = new SteamAPI("YOUR_STEAM_LOGIN_SECURE_COOKIE");
App rust = api.getApp(252490);
Item blackoutHelmet = new Item("Blackout Helmet", rust, api, Currency.USD);
```
In the two cases I gave the item name here "Blackout Helmet", the app here *rust*, and api object (for requesting steam) and a currency.

Actually there is only two available currency USD and EUR but I will add others in next updates.

### End

I hope you will like this api and this post. Let me know in the comments if you have ideas or things to change. I am waiting for your returns ^^.
Autoboxing နဲ့ Unboxing ဆိုတာ
Tags: java
Published: 2021-02-10 15:06:19

**Autoboxing** ဆိုတာ primitive types များဖြစ်ကြတဲ့ `boolean`, `byte`, `char`, `float`, `long`, `int`, `short`, `double` တွေကို Wrapper class များဖြစ်ကြတဲ့ `Boolean`, `Byte`, `Char`, `Float`, `Long`, `Integer`, `Short`, `Double` အဖြစ်ပြောင်းလဲပေးခြင်း ဖြစ်တယ်။

အရှင်းဆုံးပြောရရင် primirtive types တွေကို object အဖြစ် သုံးလို့ရအောင် Wrapper Class တီထွင်လိုက်တာဖြစ်တယ်။ သူမှာလည်း သက်ဆိုင်ရာ methods တွေ အပို ပါဝင်လာပါတယ်။
![image](https://dev-to-uploads.s3.amazonaws.com/i/awsjo86c9paxg9p6a99n.png)

**Unboxing** ဆိုတာက Object ဖြစ်နေတဲ့ တန်းဖိုးတွေကို primitive types အဖြစ် ပြန်ပြောင်းတဲ့ ဖြစ်စဥ်ကို ဆိုလိုတာ။

**မေးခွန်း** Object နဲ့ Primitive Types တွေက Memory ပေါ်မှာ ဘယ်လို အလုပ်လုပ်လဲ? Space ဘယ်လောက်ယူလဲ?
View GitHub repository on VS Code online
Tags: github, vscode, productivity, programming
Published: 2021-02-10 15:01:58

# GitHub1s

Just came across an awesome new productivity trick for GitHub called `GitHub1s`!

You can now browse through the source code of any repository on the Web VS Code editor simply by adding `1s` to `github` in the URL.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/6aj55vmfsckdh2clwoah.gif)

`GitHub1s` aims to be an extremely fast way to load up any Github project in "one second" with the same feel as if you opened it up locally on VSCode.

# Pros

- **Fast**: Browse through a code base in an editor has its own perks. You won't have to jump between hundreds of tabs on your browser anymore.

- **Convenience**: Hands down, the biggest perk, you don't have to clone the repository anymore to go through the code base, just 2 characters are all it takes to view the repository in an editor.

# Cons

- **Github API Limits**: The biggest con is that you are limited to 5000 requests per hour if you are authenticated and only 60 per hour for unauthenticated users. Since the app uses the Github API to load the repositories and fetch all the files, once you finish off the quota, you have to wait for 1 hour to use it again.

- **Minimal Functionality**: The main purpose of this project is to allow you to browse code. It is not a full fledged editor and lacking several functionalities like `integrated terminal`

Don't forget to check out [GitHub1s](https://github.com/conwnet/github1s) project

Finding **personal finance** too intimidating? Checkout my **Instagram** to become a [**Dollar Ninja**](https://www.instagram.com/the.dollar.ninja/)

# Thanks for reading

Reach out to me on:
- [Portfolio](https://tapajyoti-bose.web.app/)
- [GitHub](https://github.com/ruppysuppy)
- [LinkedIn](https://www.linkedin.com/in/tapajyoti-bose-429a601a0/)
#CodepenChallenge Disappear: Swipe, and delete action for mobile devices
Tags: codepen, javascript, react, webdev
Published: 2021-02-10 15:00:26

# Swipe, and delete action for mobile devices

This is for the second week of [Codepen challenge Action!: Disappear](https://codepen.io/challenges/2021/february/)

## Description

Example interactive design for data list.

The design is based on the latest trend 'glassmorphism' design.

This design and action is more optimized for mobile devices. Although, the interactivity will also respond to mouse click event.

When you swipe a data to left or right, you would be able to see the delete button. When you click on it, the data will be disappear from the list (or deleted).

I tried to make the disappearance having a 'dispersed' effect, by adding ```opacity: 0;``` and ```filter: blur(5rem)``` to the CSS.

I also added some micro interactions on the other elements, although they're not working.

The 'menu' button will be a 'x' mark, and menu list will appear when clicked.

The search icon will extend, and then the handle of magnifier will be a 'x' mark. Clicking the 'x' mark will clear the data.

The tabs menu will change its active state when clicked.

---

I used [React JS](https://reactjs.org/) to create all these interactions, so Javascript must be active to see the actual design.

This is my first time to use [React hooks](https://reactjs.org/docs/hooks-intro.html), so there is a chance that I misuse its usage. Though I read the [Rules](https://reactjs.org/docs/hooks-rules.html) before proceeding.

The only function of the hook I used is the [useState](https://reactjs.org/docs/hooks-state.html) hook.

```Javascript
const [test, setTest] = useState("");

setTest("test");
```

---

I used [Font Awesome](https://fontawesome.com/) for the icons at the bottom menu, and the delete button.

---

## Resources

Javascript library: [ReactJS](https://reactjs.org/)

Fonts: Open Sans (Look at 'Assets/Fonts')

Icons: [Font Awesome](https://fontawesome.com/)

---

## Demonstration

{% codepen https://codepen.io/takaneichinose/pen/yLVJEWm %}
Quick reference: react HTTP ( axios , fetch, interceptors ) 
Tags: programming, react, javascript, beginners
Published: 2021-02-10 14:55:29

Casual learning is a method of learning the topics that are split into simple self-contained content ( preferably within 500 characters ). Programming is a wonderful area for casual learning as you can understand the concepts as simple explanations. It's a simple approach for beginners to get started as well as experienced programmers to refer to as reference cards.

Please find the content for the react HTTP ( Axios, fetch, interceptors )  explained as ideations.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/wlvqkwvgi7nl89tqn5ia.jpg)
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/456wa44wug6s0xwabcq3.jpg)
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/d0zemzch9nl7cf3nymxc.jpg)
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/cys1u4619z8yjumlduuc.jpg)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/nhbeqamma0axjiee1o0e.jpg)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/wuvpszagpybars4sbs8c.jpg)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/hfdzcg9gvacfwjw9qu8c.jpg)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/aa0txkghmicql582vp62.jpg)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/fx6o26hm4nblzywdru3r.jpg)


For this and more content on react and other programming topics, you can download and use the microideation app for free ( no mandatory registration). You have the ability to view related ideations or to freeze an interesting topic/subject and follow.

https://play.google.com/store/apps/details?id=com.microideation.app

More details
https://www.microideation.com
Talking CI/CD on Changelog’s Go Time Podcast
Tags: cicd, devops
Published: 2021-02-10 14:49:25

---
title: Talking CI/CD on Changelog’s Go Time Podcast
published: true
description: "I had an honor to speak on Changelog’s Go Time podcast along with Jérôme Petazzoni on Continuous Integration and Delivery (CI/CD)."
tags: cicd,devops
canonical_url: https://semaphoreci.com/blog/talking-cicd-changelog-go-time-podcast
---

{% podcast https://dev.to/gotime/we-re-talkin-ci-cd %}

I had an honor to speak on [Changelog’s](https://changelog.com/) [Go Time podcast](https://changelog.com/gotime/) along with [Jérôme Petazzoni](https://twitter.com/jpetazzo) on [Continuous Integration and Delivery (CI/CD)](https://semaphoreci.com/cicd). We discussed:

- What problems does CI/CD solve?
- What does it look like when it’s done well?
- What are the pitfalls in doing CI/CD and how to avoid them?

🎙 [Listen and/or read the transcript here — I hope you enjoy the show](https://changelog.com/gotime/162)!
Day 48 Of 100DaysOfCode: Linked List
Tags: womenintech, 100daysofcode, codenewbie, beginners
Published: 2021-02-10 14:43:22

Today is my 48th day of 100daysOfCode and python learning. Today I learned about capstone: Retrieving, Processing, and Visualizing Data
from [Coursera.](https://www.coursera.org/learn/python-data-visualization/supplement/VFgOv/spidering-and-modeling-email-data-introduction)

Also learned about linked list data structure in python. A linked list is a sequence of data elements, which are connected together through link.

#Python Code
A linked list is created by using node class. We create a node object and create a another class to use this node object. We pass appropriate value through the node object to point to the next data elements.
python code is,
```python
class Node:
    def __init__(self, dataval=None):
        self.dataval = dataval
        self.nextval = None

class SLinkedList:
    def __init__(self):
        self.headval = None

    def listprint(self):
        printval = self.headval
        while printval is not None:
            print (printval.dataval)
            printval = printval.nextval

list = SLinkedList()
list.headval = Node("Sun")
e2 = Node("Mon")
e3 = Node("Tue")
e4 = Node("Wed")
e5 = Node("Fri")
e6 = Node("Sat")


list.headval.nextval = e2
list.headval.nextval = e2
list.headval.nextval = e2
list.headval.nextval = e2


e2.nextval = e3
e3.nextval = e4
e4.nextval = e5
e5.nextval = e6

list.listprint()
```
Output of the above program is

```python
Sun
Mon
Tue
Wed
Fri
Sat

```
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">Day 48 Of <a href="https://twitter.com/hashtag/100DaysOfCode?src=hash&amp;ref_src=twsrc%5Etfw">#100DaysOfCode</a> and <a href="https://twitter.com/hashtag/Python?src=hash&amp;ref_src=twsrc%5Etfw">#Python</a> <br>Linked list data structure in python<a href="https://twitter.com/hashtag/WomenWhoCode?src=hash&amp;ref_src=twsrc%5Etfw">#WomenWhoCode</a> <a href="https://twitter.com/hashtag/DEVCommunity?src=hash&amp;ref_src=twsrc%5Etfw">#DEVCommunity</a> <a href="https://twitter.com/hashtag/100DaysOfCode?src=hash&amp;ref_src=twsrc%5Etfw">#100DaysOfCode</a> <a href="https://twitter.com/hashtag/CodeNewbie?src=hash&amp;ref_src=twsrc%5Etfw">#CodeNewbie</a> <a href="https://twitter.com/hashtag/Python?src=hash&amp;ref_src=twsrc%5Etfw">#Python</a> <a href="https://t.co/ECZeM6c7yw">pic.twitter.com/ECZeM6c7yw</a></p>&mdash; Durga Pokharel (@mathdurga) <a href="https://twitter.com/mathdurga/status/1359508749421973504?ref_src=twsrc%5Etfw">February 10, 2021</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
The ugly truth of the CDP
Tags: bigdata, marketing, cdp
Published: 2021-02-10 14:39:08

---
title: The ugly truth of the CDP
published: true
description: CDPs suffer from a variety of problems, many of which are familiar to anyone in the data infrastructure industry. It makes sense, because at the end of the day a CDP has to solve many of the same problems a data warehouse is also traditionally trying to solve. 
tags: bigdata, marketing, cdp
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/7sbyh8n6hp1qrv6o6daj.jpg
---
*cover image of the Loppi drill core archive by [kallerna](https://commons.wikimedia.org/w/index.php?curid=82535433), CC BY-SA 4.0*

What do we know about our customers? The promise of half a dozen tools over the last decade has been a complete picture of our customers: everything from what they're doing on our platform to their sales info and their favorite color.

Time and again tools have promised us that they will solve every problem we have: consolidating data, offering analytics, interoperating with other technologies, and unifying customer profiles. 

The latest new term for these end-all and be-all products is a Customer Data Platform or CDP: a tool that consumes customer data from everywhere and resolves customer data quickly and authoritatively. The problems with CDPs lies within their very design, and they are in short:
* high cost
* data lock-in
* failure to really do *everything* you need
* data reliability

These problems, again, aren't the result of a single vendor failing to deliver, it's more that you really can't rely on a single SaaS tool to know everything and do everything related to your customer.

In a recent post on The New Stack, [Gavin and Kostas go in to more detail](https://thenewstack.io/why-you-dont-want-a-customer-data-platform/) on the promise and the disappointment of the CDP.
How to  make JSON file to tree structure
Tags: node, javascript, question, help
Published: 2021-02-10 14:34:13

I give front end data from back-end (Node.js and Firebase/firestore)
Data: 
![image](https://dev-to-uploads.s3.amazonaws.com/i/3vwwvh1yhbg4g5n00rtt.png)
 
How does front-end (Vue.js) render this data as a tree, like this:

![image](https://dev-to-uploads.s3.amazonaws.com/i/e6z6a8zjyg2clvpllxyw.png)
Experiments with JIMP 
Tags: node, javascript, svg
Published: 2021-02-10 14:34:13

Over Christmas I had some time on my hands and decided to revisit a project I was working on a couple of years ago.

Inspired by some poster art I had seen ( I wish I could remember where to attribute ) I decided to use the [JIMP library](https://www.npmjs.com/package/jimp) to essentially pixilate images in interesting ways. JIMP gave the ingredients to find colour averages over sections of images from there I converted these values to SVGs:

 - [The code is here](https://github.com/netotaku/pix)
 - [The results can be found here](https://netotaku.github.io/pix/)
Lawyer Cat Zoom Filter Software
Tags: lawyercat, zoomfilter
Published: 2021-02-10 14:19:52

---
title: Lawyer Cat Zoom Filter Software
published: true
description: How to Use a Cat Filter Like the One in the Viral Zoom Courtroom Video
tags: lawyercat,zoomfilter
//cover_image: https://direct_url_to_image.jpg
---

# How to Use a Cat Filter Like the One in the Viral Zoom Courtroom Video

{% twitter 1359207169091108864 %}

TLDR
Here is the [link](https://www.reallusion.com/creativeupgrade/Help/Enu/Default.asp)

## Viral 'I'm not a cat' filter is decades-old software.

![I'm not a cat](https://ichef.bbci.co.uk/news/976/cpsprodpb/ED89/production/_116890806_catfilter.png)


Last night right before I fell asleep, I thought to myself (probably like thousands of others)

> HOW DO I GET THAT FILTER?

Unfortunately, it can't be run on Mac OS and looks like it has been designed to work on Windows 2000, XP, and Vista. From a security perspective I wouldn't touch the software. Here are a couple of snap filters that you can use for snap camera, but without the worried-wondering eyes it doesn't have the same effect.
* [Cat - Not a Lawyer](https://www.snapchat.com/unlock/?type=SNAPCODE&uuid=04b596246a234995b6fd23f26a760dab&metadata=01)
* [LawyerCat](https://www.snapchat.com/unlock/?type=SNAPCODE&uuid=d581a33325ca40ad907a2102ae16aee1&metadata=01)
How to check that an element does not exist on the screen with Cypress
Tags: cypress, testing, automtion, e2e
Published: 2021-02-10 14:11:01

## In today's “Pinches of Cypress”, learn how to check that an element is not present at the DOM

This post's motivation came from the following question, by Anderson Faria, in a comment in another post.

> How can we ensure that an element does not exist on the screen (e.g., a button or a menu option)?

Thanks for the question, Anderson!

The answer is simple.

Let's look at an example.

```js
describe('Pinches of Cypress', () => {
  it('"Pinches of pepper" is not present at the DOM', () => {
    cy.visit('https://example.com')

    cy.contains('Pinches of pepper')
      .should('not.exist')
  })
})
```

The same is true when identifying elements by a CSS selector (see below.)

```js
describe('Pinches of Cypress', () => {
  it('element with class "foo" is not present at the DOM', () => {
    cy.visit('https://example.com')

    cy.get('.foo').should('not.exist')
  })
})
```

That was easy.

Soon there will be more!

___

What do you think about the series?

I'm looking forward to hearing your feedback.

___

This post was originally published in Portuguese on the [**Talking About Testing**](https://talkingabouttesting.com/2021/02/08/como-verificar-que-um-elemento-nao-existe-na-tela-com-cypress/) blog.

___

Would you like to learn about **test automation with Cypress**? Get to know my online courses on [**Udemy**](https://udemy.com/user/walmyr).