teleren/devto huggingface dataset:
10 Mistakes I Did That You Should Avoid As A Automation Tester | Automation Testing Tutorial
Tags: webdev, beginners, programming, tutorial
Published: 2022-12-08 03:01:27

Learn Cypress Tutorial :  https://cypresstutorial.com/

In this video, I am going to discuss about the Top 10 Mistake I have made while doing automation Testing.  This is is a part of the series, Automation Testing Tutorial.

{% embed https://youtu.be/io1iYMdb3z8 %}

Automation testing is a Software testing technique to test and compare the actual outcome with the expected outcome. This can be achieved by writing test scripts or using any automation testing tool. Test automation is used to automate repetitive tasks and other testing tasks which are difficult to perform manually


-----------------------------------------------------
👪 Join our Community - http://bit.ly/learntesting2019

✅ Automation Community - https://thetestingacademy.com

🐦Follow us on Twitter  - https://twitter.com/itstechmode

📖 Like us on Facebook - https://www.facebook.com/scrolltest

🎤  Listen to our Podcast - https://anchor.fm/thetestingacademy

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

#automationtesting #manualtesting #testautomation #thetestingacademy #scrolltest

-~-~~-~~~-~~-~-
Please watch: "Cypress Tutorial For Beginners : Part 2
https://youtu.be/XS1iyb5ZT2Y
-~-~~-~~~-~~-~-

🚀 Tools and services I recommend:
Some of the courses that I recommend to become better Automation Tester 🙌🙌

✅Selenium Training and Certification -
https://scrolltest.com/go/edureka


✅Learn Jenkins for QA -
https://bit.ly/learnjenkins-p1


✅Programming Java -
https://bit.ly/learnjava2020-p1


✅Test Automation - 
https://bit.ly/learnautomation2020


✅API Testing - 
https://www.learnapitesting.com


✅Cypress Tutorial with LIVE Projects -
http://cypresstutorial.com
Day 55/100days: it's been a while
Published: 2022-12-08 02:43:46

In my last post, I mentioned that I created a blog and how I was working on an idea sharer. I am still working on idea sharer, but I also decided to join two high school hackathons. I decided to do so because I want to build my resume and apply my knowledge. For this project, I plan to use a language I haven't used before, React Native. I love how React Native is cross-platform and the hackathon is an opportunity to learn about web development.

I started today by setting up my laptop for React Native and reading documentation.

[Hackathon Link](https://www.falconhacks.tech)
So i tried to make a simple command line webshell that executes commands via an http request to avoid waf...
Tags: exploit, webshell
Published: 2022-12-08 01:57:57


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5gyireo9cuycnah8m0ay.png)

So, because I have little free time and don't know what to do with it, I created this simple webshell that I believe may be useful in the future. 

**How Install**


```
git clone https://github.com/elliottophellia/aizawa
cd aizawa
php aizawa.php [webshell url]
```

**How to Use**

Pick one webshell that you like in the `webshell` folder and then upload it to the targeted website, and then copy the webshell's url and paste it into aizawa.php.

**Note**

Remember that I am not responsible for any damage caused by this program.
To Be Known for our Kindness
Tags: death, community, ruby
Published: 2022-12-08 01:39:37

**Content Warning**: Death of a Ruby community member

We have lost a great man in the Ruby community in the last week. A man of immeasurable impact, of technical prowess and wisdom, but above all?:

We lost a man of true kindness.

The [passing of Chris Seaton](https://twitter.com/flavorjones/status/1600436490885947393) has impacted us all, and he will be sorely missed in our community.

## A Wise Man

Chris was one of if not the smartest Ruby developers I knew. Heck, he even had a PhD in Ruby and was actively involved in academic circles in pushing the boundaries of what was thought to be possible both in the language and in programming in general.

He was a mentor who guided so many folks, a teacher who empowered others, and a source of innumerable knowledge to anyone who would ask. It didn't matter how busy he was, he would take time, and he would make time to help others grow in their knowledge.

The careers and growth of several engineers can be directly attributed in part to his openness and knowledge sharing.

## A Kind Man

But why I respect Chris, and why I was proud to call him a friend, was his kindness.

He would go out of his way to help others at any time. He frequently spent significant time at conferences and other events bringing people together, making introductions, and celebrating with anyone and everyone around. He would always check in on others and make sure they were taken care of, and that they had what they needed.

Within the last month I was in a dark place regarding my involvement in the Ruby community, and whether I had a place here. Chris messaged me immediately and spent time to rebuke that notion, to make sure I was ok, and to get me back on track by reflecting the impact I had on others.

Now it's my turn to reflect on you my friend, though I wish you could have been here for it.

## To Be Kind

Chris lived a life of kindness, a life in service of others, of lifting them up and seeing them reach their potentials.

Of all the comments, threads, tweets, and posts around his passing one consistent theme rings out louder than the rest:

We loved him because he was kind.

Let us all seek to live such a life, a life that on our own passing it is said that we too were kind and made the world a better place. Let it be said that we cared for others, and that we raised each other up to greater heights.

Let us live a life as Chris lived, in his honor, and in his memory.

Rest in peace my friend, may you find comfort and solace, and know that now and forever more you have left an immeasurable impact on those of us in this community.

We will miss you dearly.
Why is no-code so important?
Tags: nocode, technology
Published: 2022-12-08 01:06:03

You might have heard about no-code before but why is it so important?

After more than a decade of being a software developer and working in different startups and large enterprises I realised the future should look very different. That's when I started to learn more about no-code and ultimately started a startup some of you might be familiar with, named [DoTenX](https://dotenx.com).

In this post I briefly mention some of the key reasons everyone in tech should consider using no-code.

---

No-code technology is revolutionizing the way businesses and individuals approach digital projects. With the rise of no-code platforms such as [DoTenX](https://dotenx.com), even those without a technical background can easily create their own websites, apps, and other digital solutions.

One of the biggest advantages of no-code technology is its accessibility. In the past, creating digital solutions often required a significant amount of technical expertise and expensive software. This meant that only large companies with dedicated teams of developers could afford to create their own digital products.

However, no-code platforms have democratized the process, allowing anyone with a vision and a willingness to learn to create their own digital solutions. This has opened up a whole new world of possibilities for small businesses, entrepreneurs, and individuals who want to build their own websites, apps, and other digital tools.

Another key benefit of no-code technology is its speed and efficiency. Traditional development processes can be slow and cumbersome, with many steps and a lot of back-and-forth between different team members. No-code platforms, on the other hand, allow users to quickly and easily build and test their ideas, making it possible to bring a product to market in a fraction of the time it would take using traditional methods.

No-code technology is also highly scalable. As a business grows, its digital needs can quickly outpace the capabilities of its existing systems. With no-code platforms, it's easy to add new features and capabilities as needed, without having to completely rebuild the entire system from scratch.

In addition to these practical benefits, no-code technology also has the potential to open up new opportunities for people who may have previously been excluded from the world of digital development. By making it possible for anyone to create their own digital solutions, no-code technology can help level the playing field and give people from all backgrounds the ability to innovate and create.

Overall, the rise of no-code technology is a major development in the world of digital innovation. Its accessibility, speed, scalability, and potential for democratization make it a valuable tool for businesses and individuals alike. As more and more people discover the power of no-code platforms, it's likely that we'll see an explosion of new and exciting digital products and solutions.

If you want to start with no-code today, you can create a free account at https://dotenx.com and boost your productivity and implement your ideas in no time.
Automatic translations on Every Pull Request
Tags: discuss
Published: 2022-12-08 00:27:33

Alright, so there's a TON of open source libraries that we can use to internationalize our web apps. e.g. `i18next`, `next-translate`, `@angular/translate`, `vue-i18n`, just to name a few. 

They all work pretty similarly actually. For the most part, they require you to store a set of locale files along side your code. e.g.

```
.
├── fr
│   ├── common.json
│   └── home.json
├── en
│   ├── common.json
│   └── home.json
└── es
    ├── common.json
    └── home.json
```

From there, they provide utility functions you can use within your code to lookup the translated string in the appropriate language given a path. 

There's lots and lots of tricky parts to getting this right (e.g. singular vs plural, dynamic variables, etc) and the libraries (in my opinion) do a great job at handling this stuff. 

What they **don't** help with, is actually translating the strings and managing the files as you develop. I don't speak french but it doesn't really work to ask my translators to log into a Github account and edit the files in my pull request branch before I merge it.

I've been asking around how people handle this and the solutions seem to be mostly along the lines of "we copy paste between an excel sheet and emails and just try to remember" or "we've written some custom scripts to help with some of this process"

There are lots and lots of translation management solutions out there, e.g. www.lokalise.com, www.phrase.com, www.localizejs.com

Typically with these solutions you wouldn't use the open source translation software and you'd instead use the custom SDK shipped by the provider. They basically try to do everything under the sun. They provide a web interface for the translators to log into. They provide a CLI to pull/push translations between the code and the server hosted by the provider (or they don't utilize locale files at all). The solutions also tend to be very very expensive. 

I don't want to pay extra for a bunch of features I don't really need when the open source solutions already get me 80% there. 

I really just want something to do a few things for me really well:
  - I want something that fills in my missing translations when I add new ones, automatically (using DeepL or Google Translate)

  - I want it to be highly configurable so that I can set up whatever workflow makes sense for my project

  - But, I don't want to spend any more time than I absolutely have to going back and forth with translators. I want the tool to raise pull requests automatically and when the code changes I want it to update the text that my translator sees too (2 way sync)

So, I started building this product myself! It's not ready yet, but I've got a landing page. www.git-translate.io

What do you guys think?
Hello World
Tags: beginners, codingninja, opentowork
Published: 2022-12-08 00:24:20

Hello world! For my first post on DEV, please allow me to introduce myself. After 13 years in the talent development field, I am transitioning to a career in software engineering. I've been studying on Codecademy for almost a year, and I'm excited to be starting a coding bootcamp through UC Berkeley Extension in a few days. 

I've been working through the prework for the bootcamp, and you can find my work at [github.com/rmoscoe](https://github.com/rmoscoe). During the bootcamp, I'll post here about what I'm learning.

When I'm not coding, I enjoy playing tabletop games and practicing martial arts. I've been studying ninjutsu for about a year now, so I am, quite literally, a coding ninja. That's all for now; I'll check in again next week.
The Mystery Calculator
Tags: python, streamlit, beginners, christmas
Published: 2022-12-07 22:51:43


There was one time my Christmas cracker contained a pack of six cards, the so-called Mystery Calculator, which provides a neat little party trick for the non-initiated.

It goes like this. The six cards all have 32 numbers on them, all between 1 and 63 and arranged in a matrix of 4 rows and 8 columns per card. The unsuspecting participant is asked to randomly pick one card from the deck of 6 and to silently memorise one of the 32 numbers on that card. The card is then handed back to the magician and the participant is asked to select from the 5 remaining cards those that also have the memorised number on them.

The magician, based on the initially chosen card as well as the cards selected in the second step, is then able to divine which was the number the participant had silently chosen in the first place. With a bit of magician's hocus pocus and mumbo jumbo, this neat little trick will draw some ooohs! and aaahs! from the party audience.

So what's the math behind the magic? All the magician has to do is to add the left hand corner numbers of the initial card and any other card where that number appears and the total is always the number the participant had silently memorised!

I had just started learning to program with Python. Fairly quickly I coded a working version of The Mystery Calculator I could run in my terminal. It sat neglected for a while until I decided to learn how to share my python projects with others. This is my first effort. I refactored the code and used Streamlit to turn my python script into this simple [web app](https://alxtrnr-streamlit-game-play-e5b2n1.streamlit.app)

[](url)
TypeScript: A beginner's guide with emojis 🤗
Published: 2022-12-07 22:02:32

Is basically telling what type something is.

For example let say we have a box,
and we want to tell people to only put eggs in the box.
```js
let myBox; // 📦
```
In real life we would put a sticker in the box saying "only eggs 
please 📄", in TypeScript we do the same, we add a "type" saying what something is and only accepts.
```js
  Variable           Type            value
┌────┴─────┐     ┌────┴─────┐      ┌───┴───┐
let myBox_📦  :  onlyEggs_📄   =   "🥚🥚🥚";
               ↑                ↑
               Separator        Assignment operator
```

There are 3 basic types in TypeScript
```js
let isDone: boolean = false;              // 😀 or 😟

let lines: number   = 42;                 // 0️⃣1️⃣2️⃣3️⃣4️⃣5️⃣...

let name: string    = "John";             // 📃
```

When it's impossible to know, there is the "Any" type
```js
let notSure: any = 4;                     // 🤷‍♂️ Not sure

notSure = "I'm a string";                 // I can change it later
 
notSure = false;                         // maybe a boolean
```

There are typed arrays
```js
let list: number[] = [1, 2, 3];

// or with emojis:
        Only chickens please!
              ┌─┴─┐ 
let chickens: 🐔[] = [🐣,🐤,🐥,🐓];
```
Alternatively you can use Array<Type> which It's same as Type[]
```js
let list: Array<number> = [1, 2, 3];

// or with emojis
let listOfChickens: Array<🐔> = [🐣,🐤,🐥,🐓];
```

Enumerations also known as enums:
```js
enum Square { Red, Green, Blue };         // 🟥, 🟩, 🟦

// This can be understood better by seeing what Enumerations 
// are compiled to in JavaScript:
Square = { 
           0       :   'Red', 
           1       :   'Green', 
           2       :   'Blue', 
           Red     :    0, 
           Green   :    1, 
           Blue    :    2,
          };

// Now that you know is just an object, 
// you can access it by name or number.
console.log( Square.Green );              //  🟩
console.log( Square[2] );                 //  🟥 

// or in a more complex way
let c: Square = Square.Blue;
console.log( Square[c] );                 //  🟦
```

Please Comment if you want to see more content like this!
👇 Follow me on Twitter

[![Twitter](https://img.shields.io/twitter/url.svg?label=Follow%20%40fsandovaldev&style=social&url=https%3A%2F%2Ftwitter.com%2Ffsandovaldev)](https://twitter.com/fsandovaldev)
Free tool to get SOC 2 compliance
Published: 2022-12-07 21:56:11

You know when your company try to sell to bigger customers, and they ask you if your data is secure?

They ask if you have a SOC 2?

Googling "SOC 2" leads you down a rabbit hole about compliance and policies. And you bump into a compliance tool that costs $10k-$15k to help you. There is no pricing... You had to find the pricing or ask around on forums like Indiehacker or Hackernews. Yeah its not for me.

https://www.indiehackers.com/post/soc2-as-a-solo-founder-868b173ed4?commentId=-NIiD_U-Bw4ud3LnluWv

This is disingenuous. Makes you wonder do your company even need SOC 2 compliance? https://news.ycombinator.com/item?id=24486697

Startup devs are just trying to show that their data is secure. Why is it so damn painful...

If you do still decide to pursue SOC 2, there is a startup program from Kintent made to help you get a formalized SOC 2 plan in a few minutes. And your company can showcase to those customers you are in-progress toward getting SOC 2 and restart the sales conversations.

Google Analytics is free
Github is free
AWS has a free tier
Segment.io is free
We believe SOC 2 should be free

Yeah free for startups. Really.
https://www.kintent.com/pricing/

We even brought the domain
www.freesoc2.com

I know it's all overwhelming. I am learning that SOC 2 is confusing, and to qualify for bigger customers, you need to show your SaaS tool and your data is secure. Doing that shouldn't be a $10k-15k problem...
OpenAI Code Helper extension
Tags: vscode
Published: 2022-12-07 21:06:03

Hello, I am happy to share with you my new extension for VS Code.

It generates code by query string with the help of OpenAI ([OpenAI](https://openai.com/)) API. Open AI account is required for an API Key.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ddjn30fa1eu691i2ddau.gif)

Updates - version 0.1.0
Now you can search on selected text from the context menu

Feel free to give it a try :)
Creating a custom CSS loader of a Yu-Gi-Oh card flipping 🃏
Tags: css, beginners, tutorial
Published: 2022-12-07 21:03:41

You read that right, it's time to bring out your Blue Eyes White Dragon and d-d-d-d-deliver some nice animations to your side projects. Bear with me while I revisit my childhood please, and in the meantime, let's have some fun with CSS 🥰

> If you wish to jump right into the solution, here's the [Codesandbox link](https://codesandbox.io/s/hopeful-worker-icrcnh?file=/index.html), enjoy !

![The animation taught in this post](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nusrv418m4kafficsvjj.gif)

## Step 1: Create the wrapper 🎁

```html
 <div class="card-wrapper">
     
 </div>
```

```css
// Our card flip animation, simply rotates the element on the Y 
// axis and then goes back to its original state
@keyframes cardFlip {
  0% {
    transform: rotateY(0deg);
  }
  50% {
    transform: rotateY(180deg);
  }
  100% {
    transform: rotateY(0deg);
  }
}

.card-wrapper {
  position: relative;
  transform-style: preserve-3d;
  animation: cardFlip 3s ease-in-out infinite;
  width: 100px;
  height: 150px;
}
```

Here `transform-style` defines each children element as 3D. When used in conjunction with `backface-visibility` and `transform`, it will allow us to use the back and front as tangible 3D objects that can be rotated.

## Step 2: Create each card face 🎴

```html
 <div class="card-wrapper">
    <img class="card" src="front.jpg" alt="" />
    <img class="card card-back" src="back.jpg" alt="" />
 </div>
```

```css
.card {
  position: absolute;
  backface-visibility: hidden;
  width: 100px;
  height: 150px;
}

// By default, we rotate the back of the card out of view
// This way, when the animation triggers, the front and back
// swap places back and forth
.card-back {
  transform: rotateY(180deg);
}
```

`backface-visibility` defines the back of the card as hidden by default, this way, when it turns, we won't simply see the same face twice.

----

And that's it, short and sweet.  
I struggled a bit to implement it at first and figured it would be worth documenting !  
Whether you play Magic: the Gathering, Yu-Gi-Oh!, Flesh and Blood, Vanguard or any other TCG, I'm sure you'll find that animation a bit nostalgic.

----

Feel free to follow me on [Twitter](https://twitter.com/christo_kade) (if it's still around by the time you read this article) - it's always fun chatting with some of you and sharing tips & tricks together 😄
13. Roman to Integer - JavaScript Solution - by Abu Saleh Faysal
Tags: javascript, leetcode, programming, computerscience
Published: 2022-12-07 20:42:59

Given a roman numeral, we need to convert it to an integer.

After seeing the problem, I thought that I can try with an object to store the roman symbol value and for loop to access the given string.

## Solution
**Step 01:** Store the roman symbol value in a variable called "romanSymbolValue".
**Step 02:** Declare a variable called "result" and set the initial value as 0.
**Step 03:** Run a for loop, and identify the string symbol value, if the first character symbols value is less than the next symbols value, subtract the first value from the next value and add with the result; Then increment the index value by one.
**Step 04:** If there is only one character or the first character's symbol value is not less than the next character's symbol value, then, add the first character's symbol value with the result.
**Step 05:** Return the result.

```
/**
 * @param {string} s
 * @return {number}
 */
var romanToInt = function(s) {
    const romanSymbolValue = {
        "I": 1,
        "V": 5,
        "X": 10,
        "L": 50,
        "C": 100,
        "D": 500,
        "M": 1000
    }

    let result = 0;

    for(let i = 0; i < s.length; i++) {
        const firstSymbolValue = romanSymbolValue[s[i]];
        const secondSymbolValue = romanSymbolValue[s[i+1]];

        if(firstSymbolValue < secondSymbolValue) {
            result += secondSymbolValue - firstSymbolValue;
            i++;
        } else {
            result += firstSymbolValue;
        }
    }

    return result;
};
```

👉 Support me: https://www.buymeacoffee.com/abusalehfaysal

👉 YouTube Video Link: https://youtu.be/c081jEHzsvo
👉 YouTube Channel: https://www.youtube.com/channel/UCW_09Nbobf4URLkAlEo84sw
👉 PlayList Link: https://youtube.com/playlist?list=PLUnklBXn8NSefCpBaLe39mds6dQx-tDDD

👉 Connect with me (LinkedIn): https://www.linkedin.com/in/abusalehfaysal
👉 Follow our LinkedIn Page: 
👉 Like our Facebook page: https://www.facebook.com/thebacklogprogrammer/
👉 Join our community (Facebook group): https://www.facebook.com/groups/5500588936676942/
👉 Follow me at: https://www.facebook.com/AbuSalehFaysal10
👉 Twitter: https://twitter.com/AbuSalehFaysal

👉 Abu Saleh Faysal’s Blog: https://abusalehfaysal.hashnode.dev/
👉 Hasnode: https://hashnode.com/@AbuSalehFaysal
👉 Dev Community: https://dev.to/abusalehfaysal
👉 freeCodeCamp: https://www.freecodecamp.org/abusalehfaysal
👉 Medium: https://abusalehfaysal.medium.com/

👉 GitHub: https://github.com/AbuSalehFaysal
👉 GitLab: https://gitlab.com/AbuSalehFaysal