teleren/devto huggingface dataset:
Reduce friction at checkout with 6 new Mastercard APIs
Tags: mastercardapis, mastercarddeveloper, checkout, payment
Published: 2023-03-14 15:19:45

Hello Dev.to community, 
I am the DevRel VP at Mastercard. We recently launched six new APIs on Mastercard Developers which reduce friction at checkout, when redeeming rewards or when paying bills.

[Account to Account Commerce](https://bit.ly/Account2AccountCommerce) 

The new API product: Account to Account Commerce which is an online checkout option that enables creditor service providers (CSP) to provide their creditors (merchants) and debtors (consumers) with an intuitive checkout experience through their mobile banking application that will reduce friction at checkout, reduce fraud, and improve customer conversions.

Check out the [reference app](https://bit.ly/Reference_App) to help you get started.

We’ve enhanced the [Mastercard Bill Pay](https://bit.ly/MastercardBillPay) platform with the addition of two new APIs that that make it easy to manage and retrieve creditors. The Bill Pay platform allows bill payers to view, manage and pay household and other personal bills within their financial institution’s banking app. Through the APIs provided by this platform, a bank can offer a much more intuitive bill paying experience for their customers. There are also benefits for the creditor (who is looking to get paid) who sees reduced customer queries and complaints and improved accounts management.

The [Loyalty platform](https://bit.ly/Loyalty_Management) delivers a convenient and secure way to provide valuable insights into the rewards program such as real-time point balance, transaction details, or the ability to incorporate consumer-level updates. The Loyalty platform APIs enable you to enroll consumers, update their profiles, view consumer transaction details, display points balance and adjustments and finally request replacement of a lost/stolen card.

Finally the [Ethoca Consumer Clarity](https://bit.ly/Consumer_Clarity) platform has released a new API for merchants to improve cardholder experience by reducing fraud and chargebacks. It does this by providing rich intelligence about the customer purchase journey and closes costly communication gaps between all stakeholders in the payments ecosystem.

Want to explore other APIs and services by Mastercard, visit our single platform here: https://bit.ly/mastercard-developers
Published my first .NET MAUI app
Tags: programming, mobile, tooling, maui
Published: 2023-03-12 15:22:35

Last week I published my first .NET MAUI app named Health Data Diary in the Microsoft and the Google Play Store.

Developing and publishing this app was really a tough ride and not as smooth as I expected.
.NET MAUI is the successor of Xamarin and Xamarin and its base Framework is out of support for some time now. Therefore, I thought the release of NET MAUI as general available would offer a ripe product for the development of multi-platform solutions.  
 
But there were a lot of unexpected problems along the way. Just to name a few:

- Apps crash without an error message when running as Release build but not in Debug mode. And the reason is for example a missing permission or a Style that is used but not declared.

- Controls behave different or have different bugs on the different platforms. For example, the Date and TimePicker have different bugs on the different platforms and localization of these control is more or less not existent. 

- You will have closer insights into the project file structure than in the past because some changes can only be made in the file and not with the UI

- Adding unit tests is not straight forward. It is necessary to edit the project file or to llink the files to be tested into the unit testing project

- The documentation is often not up to date and a lot of info is missing 
 
Maybe I should have taken a closer look at the more than 1000 open issues in Github shows that .NET MAUI has before I started my project. 

I spent much more time on finding workarounds or finding the reason for some strange behavior as usual and much more than I expected. 

Do you also have any experiences with .NET MAUI? Leave a comment with your experiences or whether you agree or disagree.
Do you know your CODE?
Published: 2023-03-14 15:16:29

•That any language isn't meant to be called a programming language!


Obviously, not  the common languages we speak, like English and others. But programming languages!

For example HTML, XML and CSS are not programming languages but Markdowns and Styling sheets.

A programming language is a language that is able to accept an instruction, process it and finalize to give a meaningful information.
	In the sense that, programming languages are able to, analyze, implement, characterize and classify **DATA.** To produce information and relevance.

So next time when considering a language as a language, try thinking if it's actually one!



### • You also didn't realize that products in the technology industry are named after animals.
 
Yes! Naturally, the first thought that comes to mind is the:

•**Mouse**.

![A mice on a mose!](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/a88vibejeqs28jey65lk.PNG)
Obviously, the mouse coined its name from another mouse 😂

###•Most codes aren't written from scratch!

**According to Quora**:
      "A good coder can certainly design a program from scratch, without copy-paste. However, he or she will rarely do so, because it's generally waste of time."

This proves that most codes and programs aren't written from the beginning to the end. But they are modified from another program.

But that doesn't mean you should be unserious as 👇


![Unserious girl!](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wb0i2bdyacwmii0mbi81.PNG)
Animation -4 : Tile loader CSS variables + Houdini magic
Tags: css, webdev, design, animation
Published: 2023-03-14 15:01:00

Are you looking for animations to enhance your website? We've got you covered with our wide selection of creative and engaging #animations. Say goodbye to endless searching and hello to seamless integration on your website!

#### We're excited to introduce our latest YouTube series, which features diverse creative and inspiring website animations.

---

In our short videos, you'll find a variety of #animations that can be easily implemented on your website to enhance user experience.


---

### Tile loader  CSS variables + Houdini magic 

---

{% youtube 4tmUWGFF5-o %}

 ---
### [Source code](https://codepen.io/thebabydino/pen/qzxpJK)


---
## For more information

1. Check my GitHub profile
[https://github.com/amitSharma7741](https://github.com/amitSharma7741)

2. Check out my Fiver profile if you need any freelancing work
[https://www.fiverr.com/amit_sharma77](https://www.fiverr.com/amit_sharma77)

3. Check out my Instagram
[https://www.instagram.com/fromgoodthings/](https://www.instagram.com/fromgoodthings/)

4. Linktree
[https://linktr.ee/jonSnow77](https://linktr.ee/jonSnow77)

5. Check my project

- EVSTART: Electric Vehicle is the Future
[https://evstart.netlify.app/](https://evstart.netlify.app/)
-  News Website in react
 [https://newsmon.netlify.app/](https://newsmon.netlify.app/)
-  Hindi jokes API
 [https://hindi-jokes-api.onrender.com/](https://hindi-jokes-api.onrender.com/)
- Sudoku Game And API
[https://sudoku-game-and-api.netlify.app/](https://sudoku-game-and-api.netlify.app/)

---
---
Abstraction, reusability and flexibility in software design
Tags: architecture, computerscience, programming, design
Published: 2023-03-14 14:51:32

These three concepts are very important to keep in mind as well as good practices to have when it comes to software design. In programming we should be always trying to increase the level of all these design principles when writing code.

## Abstraction

Abstraction is the opposite of concrete. So trying to increase the abstraction of your code means trying to keep it as generic as possible in terms of complexity and readability. Abstracting code can make it easier to read and understand, as it can help to eliminate unnecessary details and focus on the core functionality.

Below is an example of a not very abstract code vs a more abstract code. Let's say you want to calculate the area of a rectangle. 

```python
# not very abstract code
length = 10
width = 5
area = length * width
print(area)

# more abstract code
def calculate_area(length, width):
    area = length * width
    return area

print(calculate_area(10, 5))
```

So keeping the code abstract helps to make it more modular, readable, maintainable, reusable and flexible.

## Reusability

Reusability refers to the ability to reuse existing code in different contexts, rather than writing new code every time a similar task needs to be performed. Reusable code saves time and effort (which in turn increases productivity in most cases), facilitates collaboration once you're not the only one that can reuse the code, and avoids code repetition.

As an example we can think in a visual component such as a React component that will be used in many different pages or components. The idea is to make this component just once and reuse it wherever is needed, right? So keeping the code reusable also helps to make it more modular and maintainable since if a change is requested you can change it in just one place, in one piece that will reflect in the other pieces that are being reused.

## Flexibility

The idea here is trying to go against practices that make your code highly coupled and trying to make good use of the previously mentioned practices above, because they are also responsible for increasing the code's flexibility. This one allows us to make changes to software without having to completely rewrite it from scratch, which saves time and effort especially when there are new user needs or new business requirements. It's an important aspect of programming that can help ensure that software remains adaptable, scalable, integrable, maintainable, and user-friendly over time.

Good practices to increase the flexibility of your code: avoiding hard-coded code (which means using variables and constants), using functions to help modularize the code, increasing the cohesion, increasing the abstraction and the reusability as mentioned above.

## Conclusion

In software design, abstraction, reusability, and flexibility are closely related concepts that are essential for building **high-quality**, **scalable**, **adaptable** and **maintainable** software.
Flexify v0.1.3 has been released!
Published: 2023-03-14 14:46:55

---
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/itqwmlc5o5ejvjp3ijmq.png
---

New release everyone,

Today, I have added the following features:

- Allow users to change the default cursor.
- Unit testing, kind of.

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

## Resources

{% embed https://github.com/wiseaidev/flexify %}

{% embed https://github.com/wiseaidev/flexify-landing-page %}

Until next time!
Paracetamol.js💊| #203: Explica este código JavaScript
Tags: javascript, webdev, security, programming
Published: 2023-03-14 14:10:00

## **<center>Explica este código JavaScript</center>**
#### <center>**Dificultad:** <mark>Intermedio</mark></center>

```js
const one = () => {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      resolve("one")
    }, 2000)
  })
}

const err = () => {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      reject("err")
    }, 1000)
  })
}

const two = () => {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      resolve("two")
    }, 5000)
  })
}

const res = () => {
  return Promise.all([one(), err(), two() ])
}

res()
  .then(x => console.log(x))
  .catch(err => console.log(err))
```

- A. `"err"` (después de 5s)
- B. `"err"` (después de 1s)
- C. `["one"]` (después de 2s)
- D. `["one", "two"]` (después de 5s)

Respuesta en el primer comentario.

---
nfc-manager disable reading nfc
Published: 2023-03-14 14:01:05

mobile users have NFC stickers, stuck on the back of their mobile.
Using this nfc-manager to write new data on the NFC sticker:
1- The user has to remove away the NFC sticker and bring it closer again on the mobile to write new data (bug 1)
2- The user gets conflicts when bringing closer the NFC: The mobile reads the NFC and opens the URL before the nfc-manager of the application can write new data (bug 2)
scenario example:
https://www.youtube.com/watch?v=5PPJDUn9jQc
Resolvendo problemas no HackerRank: O dia perfeito para ver filmes
Tags: javascript, beginners, programming
Published: 2023-03-14 13:51:34

Olá, seja bem vindo a mais um Resolvendo problemas no HackerRank: no problema de hoje,vamos ajudar Lily a encontrar um dia perfeito para ir ao cinema,baseado em alguns dias com termos específicos. Vejamos agora.

**Beautiful Days at the Movies -**

Conhecemos nesse problema, Lily que gosta de brincar com números inteiros. Ela criou um novo jogo onde determina a diferença entre um número e seu reverso. Nesse jogo, pegamos o um número e o subtraímos pelo seu inverso, depois calculamos sua diferença, ela quer aplicar essa regra para o dia que irá ver um filme,querendo encontrar a data para os dias perfeitos de ir ao cinema que consistem em:

- Pegar um número inteiro
- Subtrair o número inteiro por seu inverso
- Dividir o número pelo valor divisível por `k`

Ela nos passa os seguintes parâmetros:

- [i] é começo dos dias em número
- [j] sua finalização
- [k] o divisor

Vejamos um exemplo abaixo: 

```
20 23 6

20-02/6 = 3;
21-12/6 = 1.5;
22-22/6 = 0;
23-32/6 =1.5

as opções 20 e 22 são os "dias perfeitos".
```
Vejamos agora o execução do código:


```
//i= inicio do intervalo de dias para o cinema
//j= final do intervalo, numeros que pegam de inicio [i] ate [j] seriam os dois primeiros pares de numeros apresentados, sendo asssim:
    
 // 3 parametrs:[25],[27],[4]. Temos os dias 25,26 e 27  desses pegaremos todas as opcoes e iremos pegar seu numero e subtrair por seu inverso dividio pelo numero 4(terceiro parametro),ficando:
//25- 52/4, 26-62/4 e 27-72/4.
 
//  


function beautifulDays(i, j, k) {
    // Write your code here
  let count = 0;
    
  for(let start = i; start <= j; start++){
const reverse = parseInt(start.toString().split("").reverse().join(""))
    
    if (Math.abs(start - reverse) % k === 0) count++;
    }
  return count;

}
```

Nesse código criamos uma variável `count` que irá pegar as mesmas regras anteriores ditas, e no `if` onde pegaremos o valor absoluto e subtrair os valores menos o seu reverso e caso o resto de sua divisão por `k` seja 0, adicione +1 a `count`.

O resultado será:

```
20 23 6

//2 opções disponíveis 
```
Com isso, concluímos mais um desafio do Resolvendo problemas no HackerRank: . Até a próxima!!!
Career Framework
Tags: career, productivity, programming, javascript
Published: 2023-03-14 13:47:23

---
title: Career Framework
published: true
description: Tips to progress in your career 
tags: career, productivity, programming, javascript
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2023-03-14 13:43 +0000
---

You are mostly dependent on your manager for your promotion, which is limiting because it is now manager's skills, expertise and reach which determines your career. 
You are lucky if your manager is capable of pushing you forward. Sometimes after putting time and effort with your manager, he/she decides to quit from company, then you have to repeat this with new manager. 
Do these instead to take control of your career. 


1. Don't get defined by your role. You might have more insights than executive team since you are on ground executing, share ideas, insights with your teammates, not only with your team but with other teams as well.


2. Do things proactively which will take you in front of people, create value for others and this will open up new opportunities for you. Do these things yourself instead of waiting for someone to give this to you.


3. Don't do things that will just support your manager, who in turn will promote you. Do this because it will be accelerator for yourself irrespective of your manager, also it will be accelerator for your manager as well. This is another way to bring back career momentum in your hands instead of relying on your manager.


4. Everybody is skilled at something which are not explicit to their role, taking initiatives outside your role will give you reach outside your team.


5. Growth mindset Vs Fixed mindset - Growth mindset is when you are open for learning instead of sticking with old approaches. It’s a belief that abilities and intelligence can be developed and improved over time through hard work, dedication, and learning from mistakes. People with a fixed mindset tend to avoid challenges, give up easily when faced with obstacles, view effort as fruitless, and feel threatened by feedback or criticism.


6. Victim mindset Vs Responsibility mindset - A victim mindset focuses on blaming external factors for one's problems and shortcomings, while a responsibility mindset takes ownership of one's actions and outcomes and seeks to find solutions and opportunities for growth.
Replit Radio!
Published: 2023-03-14 13:23:23

Replit now has a radio! For those that don’t know, replit is an online IDE that is widely popular, with over 10 **MILLION** users! It’s a shockingly high amount, and now, theres an online radio station for it! I’m so happy to do it. **CALLING ALL REPLIT USERS: If you use replit and you want to make a script for a show, just send it to me at grey41games@gmail.com and it will be read by ai and played on the show! Your show will be accepted or denied depending on if it’s appropriate or not, as well as some other reasons, so just consider what you want to do! Hope you decide to make a show!** By the way, the link is [here (click this).](https://zeno.fm/radio/replit-radio/) If you can’t click the link, it’s https://zeno.fm/radio/replit-radio. Well, thats all! So, Grey out!
-Grey41
Understanding the potential of chatGPT in Automating Business Processes
Tags: chatgpt, automating
Published: 2023-03-14 13:22:07

ChatGPT has Taken the World by storm. It is a conversational AI chatbot created by the OpenAI organization and released in November 2022. Automation and Ai have been adopted largely by businesses, making running the business much more straightforward. by now, both automation and AI have been used in different areas. But before we dive into where you can use ChatGPT in automating business processes, it is best to understand we process of automating workflows.

**Step By Step Process of Automating Business Processes Using ChatGPT**

1. Identifying Processes
2. Gathering Data
3. Training The Model
4. Integrating The Model
5. Testing and Monitoring

**Business Processes That Can Be Automated With ChatGPT**

**Marketing**

Creating high-quality content is one of the most difficult tasks that content marketers do like developing material that generates leads, and providing compelling content.

**Customer Service**

When your personalized chatGPT model is combined with a chatGPT, it may reply to consumer requests in a natural and conversational manner, nearly as well as a human would.

**Project Management**

ChatGPT is a chatbot that can assist you with project management chores ranging from establishing to-do lists to allocating tasks to team members. You may simply go back to prior talks or directions in this manner without having to hunt through many channels or files.

**Finances**

Managing money as a business owner might be difficult, but chatGPT can assist. It can keep track of all your earnings, spending, and bills, so you don't have to tackle the same.

We have explored various areas and business processes that can be automated with ChatGPT, and there are many other processes that you can do. [Read the full article](https://www.thetechdiary.com/chatgpt-in-automating-business-processes/#1_Identifying_Processes) to get complete information related to the potential of chatGPT in Automating Business Processes.
Stop doing git checkout master branch
Tags: git
Published: 2023-03-14 13:19:58

---
title: "Stop doing git checkout master branch"
published: true
description: My workflow when starting a new task for the project with git. How I checkout on a new branch based on origin/master branch.
cover_image: https://strdr4605.com/stop-doing-git-checkout-master-branch.jpg
tags:
  - git
canonical_url: https://strdr4605.com/stop-doing-git-checkout-master-branch
---

I see a common workflow when starting to work on new task:

```bash
git checkout master
git pull # or git pull -r
git checkout -b feat/4605-new-task
```

But I do things a bit differently. The main difference is that I don't care about the local `master` branch because the source of truth is always remote `origin/master`. 
I don't do commits on `master` branch, because all changes to the project are done through Pull Requests. So why should I keep the local `master` in sync with `origin/master`?

The first thing I do is fetch the remote master branch to get the latest commits.

I have an alias in my `.gitconfig` file:

```bash
[alias]
  fetch-and-clean-branches = "!git fetch -p && git branch -vv | grep ': gone]'|  grep -v "\\*" | awk '{ print $1; }' | xargs git branch -D"
```

> [How to locally delete all remotely merged git branches](https://morgan.cugerone.com/blog/quick-tip-how-to-locally-delete-all-remotely-merged-git-branches/)

Running `git fetch-and-clean-branches`, will fetch new updates on remote branches and will remove local branches that are not relevant anymore.

Next, I create a new branch based on `origin/master`:

```bash
git checkout -b feat/4605-new-task origin/master # --no-track
```

I also created an alias for this command:

```bash
[alias]
  fetch-and-clean-branches = "!git fetch -p && git branch -vv | grep ': gone]'|  grep -v "\\*" | awk '{ print $1; }' | xargs git branch -D"
  start = "!git fetch-and-clean-branches && git checkout -b \"$1\" --no-track origin/master #"
```

And I can use it as: `git start feat/4605-new-task`. 

---

> Related: [How I use Git](https:strdr4605.com/how-i-use-git)
Django Ecommerce Store
Tags: django, ecommerce, python, stor
Published: 2023-03-14 13:19:51


{% youtube Bp4dRyjrl8k %}


SOURCE CODE: https://rebrand.ly/36rzez7

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


In this project I have created fully responsive and functional ecommerce website.






Add product: You can easily add product by admin panel.



Add to cart: Add to cart function also is available.

Category: Users can visit a page that displays a list of all product categories.

Get orders easily: you can easily get orders and see it by admin panel when you want. 

Django Admin Interface: Via the Django admin interface, a site administrator can view, add, edit, and delete any listings, comments, and bids made on the site.



Product Features

Product Features
1. Add product: Add product easily by admin panel,

2. Get orders: Easily get orders and see it in admin panel.

3. Categories: Users can visit a page that displays a list of all product categories.

4. Django Admin Interface: Via the Django admin interface, a site administrator can view, add, edit, and delete any product.

In this project I have created fully responsive and functional ecommerce website.







Add product: You can easily add product by admin panel.



Add to cart: Add to cart function also is available.

Category: Users can visit a page that displays a list of all product categories.

Get orders easily: you can easily get orders and see it by admin panel when you want. 

Django Admin Interface: Via the Django admin interface, a site administrator can view, add, edit, and delete any listings, comments, and bids made on the site.



Product Features

Product Features
1. Add product: Add product easily by admin panel,

2. Get orders: Easily get orders and see it in admin panel.

3. Categories: Users can visit a page that displays a list of all product categories.

4. Django Admin Interface: Via the Django admin interface, a site administrator can view, add, edit, and delete any product.