teleren/devto huggingface dataset:
What is graphic design?
Tags: graphicdesign, photoedit
Published: 2021-03-05 00:04:40

The graphic is related to visual arts and designs. Everything is designed or the art created by colors is graphic. Doing graphics or creating graphics is graphic design. The mysterious art of a woman ‘Monalisa’ created my ‘Leonardo da Vinci’ is a graphic design. You may be used or seen a cover photo on a Facebook page which is maybe a vector design or maybe a combination of text and shapes in graphic design. When you walk around you can see some kind of design in front of a store is also a graphic designer. The Banner of a webpage, icon, illustration, advertisements all is the graphic design that is created by a <a href="https://zerowtech.com/what-is-graphic-design/">graphic designer</a>.
How to check if an opened browser window is closed or not in JavaScript?
Tags: javascript
Published: 2021-03-05 00:00:00

---
  title: How to check if an opened browser window is closed or not in JavaScript?
  published: true
  tags: JavaScript
  date: Fri Mar 05 2021 05:30:00 GMT+0530 (India Standard Time)
  canonical_url: https://melvingeorge.me/blog/check-if-opened-browser-window-is-closed-or-not-javascript
  cover_image: https://melvingeorge.me/_next/static/images/main-1bdf95ef72fe869c5787e1da1aaed0eb.jpg
  ---
  [Originally posted here!](https://melvingeorge.me/blog/check-if-opened-browser-window-is-closed-or-not-javascript)
  
To check if an opened browser window is closed, you can use the `closed` property in referenced window object in JavaScript.

```js
// Check if the opened browser
// window is closed or not

window.closed; // false
```

- The property returns a boolean `true` if the window is closed and `false` if the window is in the opened state.

For example to open a new browser window with `google.com` as the starting page, you can use `window.open()` method like this,

```js
// Open a new browser window
const openedWindow = window.open(
  "https://google.com",
  "Google Search",
  "width=800,height=600,resizable,scrollbars"
);
```

### Note: To know more about using the using `window.open()` method check out the blog on [How to open and close a new browser window using JavaScript?](https://melvingeorge.me/blog/open-and-close-new-window-using-javascript).

The `openedWindow` contains the reference to newly opened window properties and methods.

Now you can check if the newly opened window is closed or is currently in the opened state using the `closed` property in the `openedWindow` object.

It can be done like this,

```js
// Open a new browser window
const openedWindow = window.open(
  "https://google.com",
  "Google Search",
  "width=800,height=600,resizable,scrollbars"
);

// check if the window is in opened or closed state
console.log(openedWindow.closed); // false
```

That's it! 😃

### Feel free to share if you found this useful 😃.

---
Day 32: Shaker Sort
Tags: 100daysofcode, java
Published: 2021-03-04 23:59:02

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7l55xfaed431pwcabfjd.gif)

```java
import java.util.Random;

 

public class Day32 

{
    public static void printSequence(int[] sorted_sequence) 

    {

        for (int i = 0; i < sorted_sequence.length; i++)

            System.out.print(sorted_sequence[i] + " ");

    }

    public static int[] shakerSort(int[] array) {

        for (int i = 0; i < array.length/2; i++) {

            boolean swapped = false;

            for (int j = i; j < array.length - i - 1; j++) {

                if (array[j] < array[j+1]) {

                    int tmp = array[j];

                    array[j] = array[j+1];

                    array[j+1] = tmp;

                }

            }

            for (int j = array.length - 2 - i; j > i; j--) {

                if (array[j] > array[j-1]) {

                    int tmp = array[j];

                    array[j] = array[j-1];

                    array[j-1] = tmp;

                    swapped = true;

                }

            }

            if(!swapped) break;

        }

        return array;
    }

    public static void main(String args[]) 

    {

        System.out

                .println("Sorting of a randomly generated array with shaker sort");

        Random random = new Random();

        int N = 20;

        int[] sequence = new int[N];

 

        for (int i = 0; i < N; i++)

            sequence[i] = Math.abs(random.nextInt(100));

        System.out.println("\nOriginal: ");
        printSequence(sequence);

        System.out.println("\nSorted: ");
        printSequence(shakerSort(sequence));

    }
}
```
useIonViewDidEnter in the menu doesn't work 
Tags: ionic, react, ionicreact
Published: 2021-03-04 23:48:20

I'm working with ionic react and I want to use useIonViewDidEnter in the menu but useIonViewDidEnter in the menu doesn't work anyone can help, please?

const ManagerMenu: React.FC = () => {
  const history = useHistory()
  const dispatch = useDispatch()
  const company = useSelector((state: any) => state.company)
  const candidate = useSelector((state: any) => state.candidate)
  const userConnected = useSelector((state: any) => state.userConnected)
  const [isRemainder, setIsRemainder] = useState<boolean>(false);
  const [isAuthorizedToSeeContracts, setIsAuthorizedToSeeContracts] = useState<boolean>(false);
  const [isAuthorizedToSeeApplications, setIsAuthorizedToSeeApplications] = useState<boolean>(false);
  const [isAuthorizedToSeeOffers, setIsAuthorizedToSeeOffers] = useState<boolean>(false);
  const [isAuthorizedToSeeMissions, setIsAuthorizedToSeeMissions] = useState<boolean>(false);
  const [isAuthorizedToFillTimesheet, setIsAuthorizedToFillTimesheet] = useState<boolean>(false);
  const [isAuthorizedToSeeCollaborators, setIsAuthorizedToSeeCollaborators] = useState<boolean>(false);
  const [companyId, setCompanyId] = useState<any>();



  useIonViewDidEnter(() => {
    console.log('isAuthorizedToSeeContracts')
    getCompanyId()
    requestAuthorizationToSeeCollaborators()
    requestAuthorizationToSeeOffers();
    requestAuthorizationToSeeApplications();
    requestAuthorizationToSeeContracts();
    requestAuthorizationToSeeMissions();
    requestAuthorizationToFillTimesheet();
  })
Top 5 DEV Comments from the Past Week
Tags: bestofdev
Published: 2021-03-04 23:11:53

---
title: Top 5 DEV Comments from the Past Week
published: true
description: Highlighting some of the best DEV comments from the past week.
tags: bestofdev
cover_image: https://res.cloudinary.com/practicaldev/image/fetch/s--7VrAA2ln--/c_imagga_scale,f_auto,fl_progressive,h_420,q_auto,w_1000/https://thepracticaldev.s3.amazonaws.com/i/qmb5wkoeywj06pd7p8ku.png
---

This is a weekly roundup of awesome DEV comments that you may have missed.  You are welcome and encouraged to boost posts and comments yourself using the **[#bestofdev](/t/bestofdev)** tag.

---

Fair enough, @steelwolf180! 

What do you [hate most about being a developer](https://dev.to/xenoxdev/what-s-the-one-thing-you-a-developer-40i)? 

{% devcomment 1c3li %}

Great [web development advice](https://dev.to/atharvredij/need-advice-regarding-web-development-3olm), @merichard123! 

{% devcomment 1c0fp %}

Well said, @ellativity. If you haven't seen @nocnica's post about [how to be kinder to trans people](https://dev.to/nocnica/9-ways-to-be-kind-to-trans-people-2l9e), do check it out!

{% devcomment 1bpnc %}

A big welcome to @choryfdieg and [everyone else that joined DEV this past week](https://dev.to/thepracticaldev/welcome-thread-v114-2e9d) 🌈  

{% devcomment 1c47d %}

As a non-dev, @lornasw93, this is something I really try to avoid myself. I can definitely see how it would be beyond [frustrating](https://dev.to/xenoxdev/what-s-the-one-thing-you-a-developer-40i) to hear.

{% devcomment 1c406 %}

See you next week for more great comments ✌
Day 322 : Think I Am
Tags: hiphop, code, coding, lifelongdev
Published: 2021-03-04 22:44:02

_liner notes_:
- Professional : Had a few meetings today. In one, I got to see the GPT-3 AI stuff in action. Pretty cool. In another, got to demo an application I made using Web Components. It worked! Only had a couple of minutes to talk about it, but I think everyone got the idea. Other than that, I started taking some training for a platform. Not a lot of coding.

- Personal : Last night, I worked out the section of the admin dashboard to add new users. Just need to hook it up to the database so I can start saving data. I just don't know what structure I want to use for the data. This is the part that always takes me some time because I also need to think about how I want to pull in the data. I'll have it worked out eventually. Other than that, just did some more research.

![The desert of Vulcano El Teide, Spain at night under the stars, with different vegetation and mountains in the distance](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wpapm93r8x1cpwaz6dqo.jpg)

Going to do another lap around the park before I head out to my parking spot for the night. Got to have a quick chat with some folks from my coding bootcamp. Been a minute. For tonight, think I am going to work on another section of the admin dashboard of my side project. Hopefully I'll figure out the best way to store the data so I can pull it the best way when I need to use it. May also go through some tracks. I'll definitely be eating some of the sushi I got last night! haha.

Have a great night!

peace piece
Dwane / conshus
https://dwane.io / https://HIPHOPandCODE.com
{% youtube 6jgeY70WxMI %}
100 Bytes Of Wisdom: Day 19
Tags: career, journey, advice
Published: 2021-03-04 22:15:36

---
title: 100 Bytes Of Wisdom: Day 19
published: true
description: Bytes of Wisdom is a new project by Sam Jarman that brings together snippets of advice for software engineers
tags: career, journey, advice
//cover_image: https://direct_url_to_image.jpg
---

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qzel8gnkg753zzsm8knt.png)

Too often I've been sent some code to review without so much as a meaningful commit message. For most, that's not nearly enough to go on. When starting a code review I first need a couple of questions answered.  What is the task? What was your thought process for solving it? Did you want feedback on any specific bit? Were there any arbitrary constraints I should know about? 

How am I, as a reviewer meant to know if the code is good if I don't understand what it meant to do and the constraints on it? The more info you can give me upfront, the less time I try to understand what you're doing and the more time I can spend evaluating how well you've done it.

Heads up: As with any terse bit of advice, there will be exceptions of course, and subtleties and nuance that can't possibly be captured in a Byte of Wisdom. This has been what I've experienced, I'd love to hear yours in the comments too!

You can catch up with all the other bytes at http://bytesofwisdom.com/
Te invito a mi canal de youtube
Tags: javascript, codenewbie, programming, beginners
Published: 2021-03-04 22:05:32

Si tu idioma nativo es el español y deseas aprender sobre programación, te invito a mi [canal de Youtube](https://www.youtube.com/channel/UCbgKl85-V3F1MXw9Qep2RvA) donde comparto contenido en **Español** sobre este maravilloso mundo.

Aquí estaré añadiendo los enlaces a los vídeos que voy subiendo, ¡por si deseas aprender connmigo!

Mañana 5 de Marzo comenzaré la misma serie que estoy llevando aquí en DEV: "Javascript 101", en español, así que suscríbete para que no te la pierdas. 

- [¿Qué es un algoritmo?](https://www.youtube.com/watch?v=aSXxPpVFr6Q)
- [Los lenguajes de programación](https://www.youtube.com/watch?v=woQpVgbIlRY&t=25s)


**Redes Sociales**
[Twitter](https://twitter.com/vplentinax)
[Instagram](https://www.instagram.com/vplentinax/)
[Youtube](https://www.youtube.com/channel/UCbgKl85-V3F1MXw9Qep2RvA)
5 Developer Articles You Should Read From February 2021
Tags: ibmcloud, tutorial, video, education
Published: 2021-03-10 01:20:14

---
title: 5 Developer Articles You Should Read From February 2021
published: true
date: 2021-03-04 21:30:31 UTC
tags: IBMCloud,tutorial, video, education
canonical_url: https://maxkatz.org/2021/03/04/5-developer-articles-you-should-read-from-february-2021/
---

I want to share five developer articles, tutorial and videos from [IBM Developer](http://developer.ibm.com) North America team. These resources offer high-quality developer education so I believe you will find them valuable.

[![](https://katzmax.files.wordpress.com/2021/03/games-to-containers.png?w=1024)](https://katzmax.files.wordpress.com/2021/03/games-to-containers.png)

[What are Containers: How Video Games Have Inspired My Containerization Journey](https://dev.to/ibmdeveloper/what-are-containers-how-video-games-have-inspired-my-containerization-journey-222) by [Bradston Henry](https://twitter.com/BradstonDev)

[Setting Up Docker on Your Local Machine using Docker Desktop (Mac)](https://dev.to/ibmdeveloper/setting-up-docker-on-your-local-machine-using-docker-desktop-mac-3ckp) by [Bradston Henry](https://twitter.com/BradstonDev)

[Massively Scalable Realtime Voting Deployed on Hybrid Cloud](https://dev.to/drnugent/massively-scalable-realtime-voting-deployed-on-hybrid-cloud-1c4p) by [Dave Nugent](https://twitter.com/drnugent)

[Reflecting on Challenges, Changes and Growth in 2020](https://dev.to/poojamakes/reflecting-on-challenges-changes-and-growth-in-2020-5423) by [Pooja Mistry](https://twitter.com/poojamakes) (from January but a great read!)

[Creating your first SwiftUI Hello World application with Serverless Backend](https://medium.com/zero-equals-false/serverless-swiftui-981fd9e2f2b5) by [Marek Sadowski](https://twitter.com/blumareks) (from January, great tutorial)

One more thing. If you are looking to join our live online meetups, you will find weekly developer education events on our [Crowdcast channel](http://crowdcast.io/ibmdeveloper).
CloudSkills.io Cloud Native Bootcamp Week 1 Recap
Tags: devops, sre, cloudskills, cloudnative
Published: 2021-03-04 20:58:40

My name is Anthony and I have been in the tech industry for about 5 years now. Since the past year or so I've been very interested in the Cloud Computing space but the problem was I couldn't find any resources to learn. It wasn't until a few months ago on Twitter that I learned about a website called Cloudskills.io.  Last month they started a Cloud-Native DevOps Bootcamp which is a series of 10 livestream videos that covers topics like Azure and AWS, scripting using PowerShell and Python, Infrastructure as Code, Containerization and some other DevOps and cloud toolsets.

I have decided to jump into the series because I have a big interest in DevOps/SRE. While I do have some experience with Python and AWS, I have no experience with PowerShell, or Azure and so this was my opportunity to dive deep into those areas


Week 1 Discussion:

The first week discussion covered some basic DevOps tools. They ranged from Cloud Computing, Continuous Integration, Continuous Deployment, Continuous Delivery, CLI, Version Control and even some Security tools as well.

Michael recommended some books to read which are:

1. The Phoenix Project
2. The DevOps Handbook
3. Accelerate
4. The Unicorn Project


Week 1 Projects:

1. Creating a GitHub account: Fortunately I already have an account but it was a really good overview on how to create a new account

2. Setting up your first Azure environment: This was my first time setting up an Azure environment but it was pretty straightforward so I'm excited to do some project in Azure.

3. Setting up your first AWS environment: I also already have an AWS free tier environment set up but looking forward to deep diving in some more projects in AWS.

4. Setting up your first GitHub Actions: Michael was showing a brief exampled of how to set up GitHub Actions. We will be going over more of this later on in the Bootcamp


I'm looking forward to learning more about the Cloud world and I cant wait to share more with you all!

Check out my Github: https://github.com/ABeck617
Scaling your e-commerce business using hybrid fulfillment
Published: 2021-03-04 20:42:15

## Exponential growth

E-commerce is growing faster than many ever thought. More and more people are launching websites and creating Amazon seller accounts.

Why wouldn’t they? It has the lowest barrier of entry of any business you can start. You can get up and running in a few days. You don’t need a warehouse and you don’t necessarily even need inventory.

Some sellers will start by holding inventory and some will start by dropshipping. But how can a seller really gain an advantage in such a saturated market that more people are entering every minute? The answer is hybrid fulfillment. Hybrid fulfillment (or multi channel fulfillment) is fulfilling your orders using different channels. Your supplier, 3PL, any fulfillment provider are considered channels.

Let’s say you are dropshipping some products and shipping other products yourself.

Let’s say you are holding and shipping all of your inventory but decide to dropship 1 item to see if it’s worth buying in bulk.

Let’s say you want to sell your items in new geographical areas like the UK or Australia which will need their own supplier or warehouse.

## Hybrid fulfillment

All of these are examples hybrid fulfillment. It helps you increase your catalog size, expand to new places, and in the end, get more orders and scale.

You're wondering why all e-commerce businesses don't do this. The problem is that managing multiple fulfillment channels is not simple. The elite e-commerce brands and companies use expensive ERP systems like SAP to achieve this or build their own custom backend. They also have a team of dedicated engineers to maintain and update the system as they scale.

We sought out to bring the benefits of hybrid fulfillment to small and medium e-commerce businesses. That’s where Openship comes in.

## Openship

Openship’s humble beginnings were that of Zapier and Google Sheets which is how we handled hybrid fulfillment early on. It eventually grew into a full-fledged hybrid fulfillment platform where any supplier and fulfillment system could be connected and switched between seamlessly.

Internally, it helped us expand into new markets, grow our catalog size, and launch new stores in weeks, not months.

After years of hard work, Openship 1.0 is finally here. Use us to scale your e-commerce business and never be locked into a supplier or fulfillment system.

Be sure to check out the <a href="https://openship.org">website</a>, <a href="https://docs.openship.org" target="_blank">documentation</a>, and <a href="https://openship.org/?video=true">demo</a>. Let us know if you have any feedback.
Micro service architecture in .NetCore
Tags: csharp, dotnet, microservices, dotnetcore
Published: 2021-03-04 20:31:09

In this project we are going to develop micro service based **Blog** web api. The project is divided into several micro services that are **Identity Server**, **BlogApi**, **Notification Server** and **Api Gateway**.

# Project Overview
The backend server of the application has an **Api Gateway**  receives and manages all the API calls from the client application and route them to appropriate micro services.

Identity micro service works for authorizing client (mobile/ web) application to access **Blog Api** through user authentication. The identity server uses OAuth 2.0 and OpenID protocol. I will discuss detail about identity server in separate post.  

There is also a **notification** service that sends notification to user when any notification event is triggered by identity and blog api services. **RabbitMq** message broker is used to exchange these event messages to notification service. For an example, when a new user is being registered by Identity server then a new event message is generated and sent through **RabbitMq** message broker. Notification server receives that message and sends email notification to the newly created user's email account about successful registration into system.
> **Note:** Current implementation only supports email notification event for identity server.

All the micro services here are running as docker containers. 
The following diagram shows overall micro service architecture. 

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/xn4xul2vfqd3ok8l0a4g.jpg)
# Backend Server Workflow
1. The client (Web / mobile client) initiates an authentication request, api gateway redirects the request to identity server. Identity server authenticates the client and returns a login portal to client application. User then uses his/her login credentials. Identity server validates user credentials and authorize client application on behalf of user with **access token**. This access token will be used to access blog api. 
2. Client attaches access token to subsequent requests made to access blog api resource server through api gateway. The Blog Api server validates the access token and fulfill the request depending on client authorization rights.

Project link: [click here](https://github.com/silentrobi/BlogApp) 
or you can reach individual service from here. 
1. [**Blog Api**](https://dev.to/silentrobi/clean-code-architecture-and-cqrs-pattern-based-web-api-using-netcore-4a2e)
2. [**Identity Server**](https://dev.to/silentrobi/identity-server-in-netcore-9cm)
3. [**Notification Service**](https://dev.to/silentrobi/netcore-notification-service-using-rabbitmq-jhi)
4. [**Api Gateway**](https://dev.to/silentrobi/ocelot-api-gateway-in-netcore-1a78)
5. [**Blog backend application (all in together)**](https://dev.to/silentrobi/blog-backend-application-all-in-together-4pec)
6. [**React Sample Client**](https://dev.to/silentrobi/react-sample-client-21pf)
AzureFunBytes Episode 33 - CLI Goodies and @GitHub Codespaces with @bbenz
Tags: cloud, azure, beginners, tutorial
Published: 2021-03-04 20:05:16

Tricks and tips to make your Azure experience always help.  This time on AzureFunBytes we'll enjoy some command-line goodness with one of my favorite Cloud Advocates, [Brian Benz](https://twitter.com/bbenz).  Whether it's good ol' [Windows CMD](https://cda.ms/20f), bash, or Azure CLI we're always looking for ways to leverage the tools we can use for the cloud.  We will take a look together at how these CLI tools come together to give you an awesome experience on Azure.

Brian and I talk about GitHub Codespaces! The ability to have a dev environment almost anywhere is such a huge win for developers.  GitHub Codespaces can be found right in your [browser, Visual Studio, or even Visual Studio Code](https://cda.ms/20k).  With Codespaces you can set up ssh keys,  get your dependencies, and start committing your new changes to your application.

{% youtube FGaz7xoL3jU %}

Learn about Azure fundamentals with me!

Watch live every week on [Microsoft LearnTV](https://docs.microsoft.com/learn/tv/?WT.mc_id=devops-15966-jagord) and take part in the live Q&A and polls right from the browser!

Live stream is available on Twitch at 2 pm EST Thursday. You can also find the recordings here as well:

https://twitch.tv/azurefunbytes
https://twitter.com/azurefunbytes
https://aka.ms/jaygordononyoutube

Useful Docs:

[Microsoft Learn: Azure Fundamentals](https://cda.ms/1WL)
[Microsoft Azure: $200 Free Credit](https://cda.ms/20F)
[Windows Commands](https://cda.ms/20f) 
[PowerShell Documentation](https://cda.ms/20g) 
[Get started with Azure CLI](https://cda.ms/20h) 
[Create virtual machines with the Azure CLI](https://cda.ms/20j) 
[GitHub Codespaces](https://github.com/features/codespaces) 
[GitHub Codespaces Clients](https://cda.ms/20k) 
[Supporting Remote Development and GitHub Codespaces](https://cda.ms/20m)