teleren/devto huggingface dataset:
Why chrome shows so many processes in Task Manager for only one tab?
Tags: webdev
Published: 2020-08-09 05:24:19

Chrome applies the same kind of __process isolation__ which we found in __Operating System__. Chrome by default launches each website you open in its own process. __It keeps web apps and plugins in separate processes from the browser itself.__

Browsers that put everything in one process face real challenges. If one web app causes a crash in the rendering engine, it will take the rest of the browser with it, including any other web apps that are open. Chrome avoids this by isolating each plugin and tab in separate processes.

Interestingly, Google Chrome has its own __Task Manager__ which you can get to by right clicking on the browser's title bar(Or __Press shift+Esc__).  This Task Manager lets you track resource usage for each web app and plug-in, rather than for the entire browser. 

Read the [Chome Introduction Comic](https://www.google.com/googlebooks/chrome/med_00.html) for more details!
Flutter Webview Google Sigin Issue (403)
Tags: android, ios, react, javascript
Published: 2020-08-09 04:56:35

Webview has been one of the great things in-app community that has helped developers to convert a responsive website into a mobile application. And with flutter, it has reduced the time and line of codes through a simple flutter webview widget that supports both android and ios platforms.

However, when things become simple it brings issues with it, which I faced while converting my site [https://www.codingnotesonline.com/] into a mobile application using flutter.

For my site, I used firebase as a database for storing data and using social signup methods (Google, Facebook & Github).

Facebook and Github work perfectly, while for google it showed a 403 error as seen in the below pic.

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

To make this work you just need to add Useragent into your flutter webview widget body.

```jsx
class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Welcome to Flutter',
       debugShowCheckedModeBanner: false,
      home: Scaffold(
        body:WebView(
          userAgent: "random", //Add this to resolve issue
          initialUrl: 'https://your-url/',
          javascriptMode: JavascriptMode.unrestricted,
        ),
      ),
    );
  }
}
```
I hope this helped you and saved a lot of your time finding the solution for it. I will keep you guys posted with other issues such as share options in flutter webview.
I learned Javascript, Ruby, Python and Java
Tags: java, javascript, ruby, python
Published: 2020-08-09 04:48:46

If anyone knows computer science history you probably know that in recent years, programmers now can write backend using Javascript, with NodeJs framework. So, why are we, the newbie programmers, even bother to learn other languages beside Javascript? We are new, we need it to be a little easy, but not so boring. We want to learn exciting things, and Javascript will let us create a complete app from the backend to the frontend. And once we know Javascript very well, converting to other languages isn't as challenge as it would be with other high-level language like Python or Ruby.
So, why spend time on other languages ?
I first learned Python. It's a beautiful language and I love it the most. All the indentations will save the most messy code writers. And then I moved to Ruby. Ruby is quite similar to Python. There are some differences between the two but, well, for learning purpose, they're quite easy to pick up. Perhaps the learning time was quick and I wouldn't say I know everything about Ruby and Python, but I have been learning Javascript for longer than all and still felt like I understand Javascript the least. 

Javascript learning path was even worst than Java. Java is a strict language, it requires us to explain everything to it. Without the correct input, Java will not let you code. 

Javascript will be really really free, it takes in any type of input, and return any type of data. Sometimes you need to know what it's returning, right? No, it won't let you know unless the definition is right in front of you. Javascript is just "messy" like that. 
Also, there are more memes about how weird Javascript is than the rest of the language. What's the difference between NaN, null, undefined, empty array, empty object, oh well...

Java is great for Object Oriented Programming (OOP). You probably wonder what OOP is, I don't know either. I will need to learn in the future.
Complete Roadmap to Learn data science / Machine Learning. How did I learn & how did my internship at an A.i startup help?
Tags: podcast, datascience, machinelearning, python
Published: 2020-08-09 04:34:29


## Listen in detail in the below podcast:

{% spotify spotify:episode:4K2dPdPDVkh0lIwjlzCGrq %}


## Key points:
1. Start by learning Mathematics like Statistics, Regression, Algebra, Calculus.

2. Learn the mathematics behind data science from Andrew NGs Coursera free course.

3. Learn machine learning algorithms and how to implement them in Python from Kirill Ermenko's Machine Learning course on Udemy.  Kirill Eremenko 

4. Practice more problems, learn from other's code.

5. Register on Kaggle and practice there.

6. Read research papers

7. Follow people who are into Machine Learning to stay up-to-date.

8. Get an A.i internship, don't focus on the stipend, get one where you can work closely with the artificial intelligence team.

Thank you
https://www.tharunshiv.com

{% user developertharun %}
Basic Tips to Over Write Custom CSS and SCSS
Published: 2020-08-09 04:25:17

I think a common problem for many new front end developers when using css and javascript frameworks like bootstrap, bootswatch, etc. Is when they run into a css customized object or function that can't be changed to their own preferences. I learned a simple tip which might not be the most biggest thing out there, and might be a little dangerous to use, but would surely be helpful for new front engineers. Before we get there, don't forget you can always switch off between Id's and classNames. The syntax to overwriting css is actually pretty simple, Syntax Example:
classname or id { "the css functionality": none !important; }. The !important is what overwrites, and if you need to overwrite the overwrite because of some special functionality then you can just wright it on a lower line then the first one.
LeetCode:442. Find All Duplicates in an Array
Tags: python, leetcode, algorithms
Published: 2020-08-09 04:20:38

https://leetcode.com/problems/find-all-duplicates-in-an-array/

## Solution

**set** is an collection of elements without duplicates, we use this property to solve the problem:

Execute an iteration cross the given array, meanwhile:
  1. check the length of current **set**
  2. add current element from the array into the **set**
  3. go back to **1.**, if there is no change in the length, then it indicates that the added element is duplicated 


## Submissions

* faster than 87.10%
```
class Solution:
    def findDuplicates(self, nums: List[int]) -> List[int]:
        myset=set()
        result=[]
        for i in nums:
            length=len(myset)
            myset.add(i)
            if length==len(myset):
                result+=[i]
        return result
```
Deploying Headless Strapi to Netlify and Digital Ocean — Part 1: Intro
Tags: strapi, netlify, digitalocean
Published: 2020-08-09 03:45:20

This is really my first tech article and it's a 4-parter. If you have any corrections, comments, or pro tips let me know!

Quick note: If you want the quick and easy solution Digital Ocean offers a 1-click install button for Strapi on a $10/month server. It's great if you don't have an existing Strapi project (Shameless plug: [Here's my referral link for $100 in credit](https://m.do.co/c/b0143b32b41c))

So why did I do the deployment myself?

1. Be cheap and save $5 a month by running it headless
2. I love figuring these things out
3. I thought it would be easier to configure the admin UI to be on a subdomain

**This guide assumes:**

1. You already own a domain and it's using Netlify DNS
2. You have a Digital Ocean account
3. You have an existing strapi project in a git repository
4. We will be using MongoDB as our backend through [MongoDB Atlas](https://www.mongodb.com/cloud/atlas) (they have a generous free tier!)

---

**Versions**
Strapi -- 3.0.1
Node -- 12.18.0
NPM -- 6.14.5

---

I've been wanting to build this side project for a while and this is a perfect opportunity to build it and share how I first deployed and set it up. My side project is Front End Cuts, a place to create, contribute, manage, and search for code samples for front end development. While writing this article the only thing you can do is signup/signin and create/view a cut. More will be added later so please don't comment on the ugly look 😂

This article is not for extreme beginners as I'm assuming you have some knowledge of strapi, linux/unix commands, and mongodb. Throughout the different parts I will link to guides for things that do not directly contribute to deploying Strapi.

**Here's what we want:**
frontendcuts.dev **-->** Frontend Nuxt site
admin.frontendcuts.dev **-->** Strapi Admin Panel (React app)
api.frontendcuts.dev **-->** Strapi server and API

Let's dive in!

[Go to Part 2: The Admin Panel UI](https://dev.to/elliottross23/deploying-headless-strapi-to-netlify-and-digital-ocean-part-2-the-admin-panel-ui-1lf8)
Hiring a DevOps engineer at Phone2Action
Tags: aws, devops, hiring, jobs
Published: 2020-08-09 03:43:35

---
title: Hiring a DevOps engineer at Phone2Action
published: true
description: We are hiring for an AWS admin and DevOps engineer to join our remote engineering team
tags: aws,devops,hiring,jobs
cover_image: https://i.imgur.com/0ojT9r4.jpg
---

We are seeking a talented DevOps Engineer to work collaboratively with our software engineering team to build the next generation of our SaaS product. Our product has driven more than 18 million connections with elected officials since our founding in 2012 and we're just getting started. If you have great problem solving, analysis and design skills, and a true passion for quality, you will be a great fit for the Phone2Action team.

## The Role

- Develop and manage infrastructure in AWS (CloudFormation, Terraform, etc)
- Monitor and maintain existing infrastructure (CloudWatch, New Relic, Lacework, etc)
- Manage automation and CI/CD pipeline
- Manage configuration and patching of servers
- Strategizes for scalability and performance
- Implement best practices in regard to security posture
- Support the software engineering team

## What Were Looking For

- 3+ years of DevOps experience.
- Strong background in Linux/Unix Administration.
- Expertise in managing and monitoring AWS.
- Expertise in Infrastructure as Code.
- Experience with Continuous Integration and Delivery toolchains (Jenkins, Sonarqube).
- Strong experience with SQL and MySQL.
- Strong experience with Queueing.
- Demonstrated experience with web application security.

##Other Preferred Qualifications and Skills

- Experience with automation/configuration management using Ansible or Saltstack or an equivalent.
- Experience working in an agile development process.
- Programming skills in one or more of the following: PHP, JavaScript, Ruby.
- Strong OOP skills and application architecture experience.

If interested please forward your resume with subject "DevTo - AWS" to cleech@phone2action.com.
LeetCode:680. Valid Palindrome II
Tags: python, algorithms, leetcode
Published: 2020-08-09 03:38:51

https://leetcode.com/problems/valid-palindrome-ii/submissions/

## Solution:Array
The goal of this problem is to find the 'the character which needs to be deleted',let's denote it as 'key'. The given string will be shown as a pattern of Palindrome after located and deleted the 'key',

###  Find the 'key'

We try to check the comparison of head & tail elements of the string, if they are identical characters, check the next pair, otherwise, one of them will be the 'key' we want to find.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/iyedctdgdanvdmf9zx56.jpeg)
(if the length of string is **n**, in this way, the time complexity can be reduced to **n/2** )


**Exception**:but here is a special scenario will break the algorithm of 'head-tail- comparison',for example: **'abbaa'**.

thus we design flow control as: 
1. **if** the 'key' located at head or tail, return True  
2. **else** we begin to execute our 'head-tail-comparison'.

###  Details of head-tail-comparison
```
(psuedocode)
if head!=tail:
  Construct a named 'List1'(removded head) 
  Construct a named 'List2'(removded tail)

then:
if ConstructList1==(in reversed ordered)ConstructList1-->return True
if ConstructList2==(in reversed ordered)ConstructList2-->return True
```

## Submission
* faster than 91.08% 
```
class Solution:
    def validPalindrome(self, s: str) -> bool:
#Step1:
        if s[1:] == s[1:][::-1] or s[0:-1] == s[0:-1][::-1]:
            return True
#Step2:
        else:
            for i in range((len(s) + 1) // 2):
                if s[i] != s[-(i + 1)]:
                    check1 = s[0:i] + s[(i + 1):]
                    check2 = s[0: -(i + 1)] + s[-i:]
                    if check1 == check1[::-1] or check2 == check2[::-1]:
                        return True
                    else:
                        return False
            return True
```
Amazing Azure's data redundancy strategies
Tags: azure
Published: 2020-08-09 02:33:30

I felt that there are no simple depiction of how Azure's data redundancy strategies work which made me to write this. 

Data center is a place where Microsoft is having a bulk of servers with it's own dedicated electricity, network, cooling system, security, etc., in a single physical location like how we see in Mission Impossible movies where everyone will try to insert a chip to hack the servers. But in reality, it is almost impossible because of dedicated high level security measures to protect our data by none other than Microsoft. 

Microsoft groups it's data center using these terms 
i) Region 
ii) Availability Zone 
iii) Geography

One or more data centers groups together and called Azure Region. 
3 data centers in a region form an Azure availability zone. 
Two or more Azure region groups together and called Azure Geography. 

Now we are good with basic terms. Let's see about data redundancy. What is it ? what is the need ? 
Well! Did you ever think of what are you gonna do if your mobile fell into water ? How are you going to backup or restore the data in that crashed mobile ? What if you have an another place where your mobile syncs all your data everytime whatever you make changes in your mobile. That is data redundancy. Whatever you save to Azure to a storage account based on the redundancy option you selected it copies or make similar copy of same data in other place as backup so that in case of a disaster our data is always safe in Azure and can be easily recovered. 

There are 6 redundancy options available in Azure. 

a. Local redundant storage (LRS) 
b. Zone redundant storage (ZRS)
c. Geo redundant storage (GRS)
d. Geo Zone redundant storage (GZRS)
e. Read Access Geo redundant storage (RA-GRS)
f. Read access Geo zone redundant storage (RA-GZRS)

Local redundant storage:

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/j1e5a9gnpwpm7mpz7g9d.PNG)

Zone redundant storage: 

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/0t6lm8vph2zrr6ah03lb.PNG)

Geo redundant storage (GRS):

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/25tlo5dptjvp9c458vy2.PNG)

Geo Zone redundant storage (GZRS):

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/q2s41kpomhukmzycgv2u.PNG)

Read Access Geo redundant storage (RA-GRS):

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/7hq6wbbr0iqmgr3yt254.PNG)

Read access Geo zone redundant storage (RA-GZRS):

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/y3hoc83dnwwjl8kt846v.PNG)
Day 69 : #100DaysofCode - Coming Up With An App Idea
Published: 2020-08-09 02:09:45

Today I focused on coming up with an app that will allow me to practice using various gems.

This is what I got so far:

<h1> Devise Gem & Onmiauth </h1>
User
Sign up, Log in capabilities - onmiauth (github, google, twitter, fb)
username 

<h1> Active Storage </h1>
Profiles for users
User_id
Bio
Profile Picture
Following functionality

<h1> API </h1>
Quotes - Quote generator API
Allows random quotes that users can add to their profile page. 

I am trying to think of other things that I can add to this random app to allow me to get as much practice as I can with using and implementing gems in rails. I want to show that I can read documentation and build amazing things to future employers.

Can not wait to share! 

As always, thanks for reading!

Sincerely,
Brittany

Song of the day:

{% youtube RZLdrhotgV0 %}
Sass Lead Responds to ‘Please Remove’ the Black Lives Matter Sass Site Banner Comment
Tags: opensource, css, github
Published: 2020-08-09 01:48:57


Recently, Lead Designer and Developer of the Sass project, Natalie Weizenbaum [responded](https://github.com/sass/sass-site/issues/461#issuecomment-663722319) to a Github issue post asking that the Black Lives Matter banner be removed from the site.

If you don't know much about Web development, Sass has built a strong reputation in the open-source community as being a mature, stable, and powerful professional-grade CSS extension language. Now, if you don't know what CSS is, don't worry about it. You still know enough to know some of the sites you go to these days have a banner at the top of the screen expressing support for the movement known as Black Lives Matter. On the [Sass site](https://sass-lang.com/), there is such a banner, and, in a Github issue, a developer asked that the banner be taken down. You don't have to know too much about Web development to understand Natalie's response:


![Natalie Weizenbaum | Lead Designer and Developer of Sass](https://mk0communityandqlc3m.kinstacdn.com/wp-content/uploads/2020/08/nex3-Overview.jpg)
<div align="center">Natalie Weizenbaum | Lead Designer and Developer of Sass</div>


_Technical work is inseparable from politics whether that's by causing or preventing harm to people, embedding biases in our products or working to highlight those biases so we move past them, pointedly avoiding any statement avoiding any statement that could be too political or standing up for the rights of our fellow human beings. Even you are engaging in political action by demanding our silence on the subject of Black Lives._

_Sass in particular has always been a political project. From its earliest days it sought to empower designers who tended to have a much stronger representation of marginalized groups than their engineering counterparts, and in so doing it gave these marginalized people a larger place and a louder voice in tech as a whole. The most prominent voices in the Sass community have always been people pf color, queer people, and women, and empowering these people is a political act in an industry dominated by straight white men._

_Saying "Black Lives Matter" isn't an abstract political point. It's a matter of life and death, particularly for our many Black users and contributors. Police violence is a part of their lives as Sass is a part of their lives, and we take a stand against that violence because we care about them as not just users but as whole people._

## References

1.  Sass Black Lives Matter Banner #461. [https://github.com/sass/sass-site/issues/461#issuecomment-663722319](https://github.com/sass/sass-site/issues/461#issuecomment-663722319)
Linked lists 
Tags: datastructures
Published: 2020-08-09 01:27:20

---
title: Linked lists 
published: true
description: Small post about single linked list data structure
tags: datastructures
cover_image: https://miro.medium.com/max/953/1*elJncKhH_P9oQglfI1aVQA.png
---

In today's post, I'm going to talk about the single linked list data structure, so let's begin.

##What is a linked list##
A Linked List basically is a linear data structure consisting of a collection of elements (nodes) in sequence, nodes don't store in order in the memory, instead each node points to another memory reference.

##Implementation##
Let's start by implementing the Node class, for our node class we only need two properties for our class, value and next, Value will currently hold the node value and the Next property will contain the next node location.

```java
public class Node {
        public int data;
        public Node next;

        public Node(int data) {
            this.data = data;
        }
    }
```

```java
public class MyLinkedList {
    Node head;

    public void appendFirst(int data) {
        if (head == null) {
            head = new Node(data);
            return;
        }

        Node newNode = new Node(data);
        newNode.next = this.head;

        this.head = newNode;
    }

    public void appendLast(int data) {
        if (head == null) {
            head = new Node(data);
            return;
        }

        Node currentNode = this.head;
        while (currentNode != null) {
            currentNode = currentNode.next;
        }

        currentNode.next = new Node(data);
    }

    public void removeFirst() {
        if (this.head == null) return;

        this.head = this.head.next;
    }

    public void removeLast() {
        if (this.head == null) return;

        if (this.head.next == null) {
            this.head = null;
            return;
        }

        Node currentNode = this.head;
        while (currentNode.next.next != null) {
            currentNode = currentNode.next;
        }

        currentNode.next = null;
    }

    public void traversal() {
        Node currentNode = this.head;
        while (currentNode != null) {
            currentNode = currentNode.next;
        }
    }
}
```
In a nutshell, this is the Linked List data structure, when is viable to use them? When we want to add to the beginning of the list since is an O(1) we only need to change next pointer.