teleren/devto huggingface dataset:
Are we overusing SPAs?
Tags: discuss
Published: 2020-05-12 13:20:50

On my daily job I work on a typical Rails monolith app that uses rail for the API and business logic layer, and serves a SPA built in React.
The more my team and I work on the SPA side, the more I have the feeling that we are only really using the dynamic content loading and routing parts of a SPA, and the team that originally built this app could have gotten away with a much simple approach of using Rails views with sprinkles of React for the niceties it provides, like component state management, styled components, component libraries and so on.

I was first introduced to programming through JavaScript, and not very long after my initial introduction, I picked up React, and most online tutorials focused on building SPAs, so I had a hammer and everything looked like a nail. These days I am very reluctant to build a single page application for my own projects, and tend to only build a SPA when I want a completely decoupled API, but that is rarely the case, as the added complexity almost never adds enough benefits to justify it.

What do you guys think? Are we as an industry overusing SPAs, or are there legitimate reasons to always rebuild the browser's apis inside our javascript applications?
Developers Diary Ep 1 - Week #19
Tags: javascript, development, beginners, webdev
Published: 2020-05-12 14:12:13

---
title: Developers Diary Ep 1 - Week #19
published: true
description: I'm summing up my work week as a developer
tags: #javascript #development #beginner #webdev
---

I'm starting a new talk on my Youtube channel. Thought it could be of value to hear what "real life" code problems I experience in client work. That's why I do this talk.

It's one thing to learn from tutorials and articles but these are often fictive cases. So ... I want to do a down to earth talk about how the real working life as a developer is. From time to time on my Youtube channel.

{% youtube Cs4gC0Uw36A %}
The Story of Kubernetes Networking

Tags: kubernetes, devops
Published: 2020-05-12 13:57:13

Do you know Kubernetes does not provide networking, but rather relies on third party plugins for networking the pods ? When Kubernetes is so sophisticated, is not capable of networking pods by itself ? Why is it done this way ? How  Kubernetes networking evolved ? How does the networking really work with Kubernetes ? Why it picked up CNI vs CNM as networking standard. And yeah, how I ended up contributing to the Kubernetes eco system  and one of its CNI plugins rather unknowingly ?  Tune in to this episode of Being Devops to get the whole story of Kubernetes Networking.

[Tune in to Episode #4 of Being Devops here ](https://anchor.fm/beingdevops/episodes/Episode-4---Story-of-Networking-in-Kubernetes-edsar4/a-a25h5np)


What will you learn in this episode ?

When Kubernetes is so sophisticated, why does it not do the networking by itself ?
Why Kubernetes chose CoreOS' CNI standard instead of Docker's CNM for networking pods
What is the difference between CNI standard vs CNI Plugin
Which CNI plugin to choose ?



Originally published at http://blog.schoolofdevops.com on February 21, 2020.
Code of Conduct, huh... What is it good for?
Tags: codeofconduct, discuss
Published: 2020-05-12 13:56:12

I was reading a post here on dev.to, and one of the replies expressed concern that a certain project resisted adding a CoC directly to the repo. I never really thought about CoC's before, so I wanted to start a discussion and get other people's thoughts.

Here are some questions I'm pondering. Feel free to answer any/all of these, or ask your own.

* What are some examples of CoC's that you (dis)like?

* What do you think should be included in a CoC?

* What have you seen in a CoC before, that you think should not have been included?

* What do you perceive are the benefits of including a CoC?

* Once a project/repo has a CoC, then what?

* Who has personally added a CoC to their repo/project? Why?

* Who has personally resisted adding a CoC to their repo/project? Why?

* Which successful/popular projects, if any, are not using a CoC?

* Which types of projects/repos should have a CoC?

* Are there types of projects/repos where you wouldn't add a CoC?

* If a project/repo had a CoC, and it were removed, what would be the consequences?

* Has any project ever done this?

* What does it look like to you to enforce a CoC?

* Who does the enforcing?

* Has a CoC ever not been enforced?

* What did you expect to happen? What actually happened?

* Has there been any research on CoC's and their effects on a project/repo?

* When you see a project/repo has a CoC, how do you feel about that?

* When a project/repo doesn't have a CoC, how do you feel about that?

* Do you believe that you have ever personally benefited from a project/repo having a CoC?
Web Surgery - Ep.7 - Authentication for Netlify CMS on GitHub
Tags: webdev, github, netlificms, jamstack
Published: 2020-05-12 13:29:28

---
title: Web Surgery - Ep.7 - Authentication for Netlify CMS on GitHub
published: true
description: This episode we deploy a Heroku dyno for the Auth for GitHub, but before that, we set up an app on GitHub to grant access to the GitHub repo. This is needed as the Netlify CMS will send a PR to that repo. In the future, we may add more functionality to our wishlist website, tell me what you would like to suggest at my Twitch.
tags: webdev, GitHub, NetlifiCMS, Jamstack
---
This episode we deploy a Heroku dyno for the Auth for GitHub, but before that, we set up an app on GitHub to grant access to the GitHub repo. This is needed as the Netlify CMS will send a PR to that repo. In the future, we may add more functionality to our wishlist website, tell me what you would like to suggest at my [Twitch](https://www.twitch.tv/cheukting_ho).

The code is work in progress but if you want to check it out, it will be uploaded and updated in [this repo](https://github.com/Cheukting/animal-crossing-wishlist)
Funtabify | Change page title(text visible on a tab) whenever user switches browser tab
Tags: javascript, webdev, showdev
Published: 2020-05-12 13:09:00

Greetings fellas!

I hope you'll are doing well and keeping yourself safe at home.
Here I present a library for changing title of a webpage (Text visible on Tabs of a browser) whenever user switches to another tab. 

Total production code is less than 1KB and doesn't affect SEO of a page. In fact, this technique can lure the attention of users.

Show your love by star marking this repository.

{% github https://github.com/pagalprogrammer/funtabify %}

Follow me on [twitter](https://twitter.com/codewithankit) or [instagram](https://instagram.com/pagalprogrammer).

Regards 🙂
How to install Cluster Autoscaler (CA) and Horizontal Pod Autoscaler(HPA) on Kubernetes?
Tags: kubernetes, hpa, clusterautoscaler, aws
Published: 2020-05-12 13:02:29

Installing Cluster Autoscaler n Horizontal Pod Autoscaler on Kubernetes makes your applications highly available and zero down time. I am trying to explain how we can install CA and HPA on EKS (Kubernetes) Cluster on AWS in the video. I covered the following topics
- Installing EKS on AWS with Terraform
- Installing Cluster Autoscaler
- Installing Horizontal Pod Autoscaler
- Demo by deploying an sample php app and testing the Cluster scale out and scale down based on maximum pod deployed.
- Testing Pod auto Scaling when maximum resource limits crossed.

Check the link:https://youtu.be/tDNi-sS0LsA
Strings: A Neat Hexdump Alternative
Tags: bash, cli, steganography
Published: 2020-05-12 13:01:03

---
title: 'Strings: A Neat Hexdump Alternative'
published: true
description: I found a command that works even better than hexdump for some tasks!
tags: 
 - bash
 - cli
 - steganography
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/vwmpj63f3zz1m0d3bvot.png
canonical_url: https://www.assertnotmagic.com/2020/05/12/strings-better-hexdump/
---

I was working through my most recent class, Application Security, and one of the exercises required us to find a secret message hidden in an image.  Now, I know you can do this manually with `hexdump -C`.  That output looks something like this:

![A screenshot of the output of hexdump, showing rows of hex data with a sidebar of ASCII text.](https://assertnotmagic.com/img/hexdump-output.png)

This is fine unless your image is huge or your secret message has a bunch of garbage bytes mixed into it for extra secrets.  So I was trying to look up a way to get it to just kick out the ASCII output on its own so I could use other tools like `grep` to search through it, when I stumbled over a reference to the `strings` command.  What is the `strings` command?

> strings - find the printable strings in a object, or other binary, file

Well, OK then!  Granted, when you read through the man page for it, it proclaims itself as a very simple string-finding algorithm, but good as a first easy pass.

Instead of the above `hexdump` output, you get something like this:

```text
B*M)M1,
a&%5
%PJ)
XJ)FO
KL\I!D
Y}RJ
```

Which is *way* more searchable, `awk`able, etc.!

Take this image here:

![A cute picture of a puppy.](https://assertnotmagic.com/img/secret_puppy.png)

Cute puppy, right?  Yes, but it is also a *puppy full of secrets.*

Give it a try.  Download it and then run:

```bash
strings secret_puppy.png
```

Find anything fun?

This method won’t find every hidden string in every secret image or binary file, but it’s a quick, easy command and much more useful than `hexdump` for some things!
Random Transforms Using CSS Variables
Tags: css, variables, webdev
Published: 2020-05-12 12:50:20

---
title: Random Transforms Using CSS Variables
published: true
description: Using css variables to randomly transform pseudo elements
tags: css,variables,webdev,svelte
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/xc8ar35oqchoq21rv81y.png
---
[CSS variables](https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties) are fun! They can be used in many different ways, one thing which they are widely used for, is theming. Enabling themes which can be switched back and forth became a whole lot easier with them (as seen on this site ;). I have also published a JS utility, which you can check out [here](https://github.com/gobeli/css-var-theme), for this purpose.

But there are even more use cases. We will have a look at using CSS variables deeper down the DOM tree, to transform pseudo elements randomly. Full disclosure I found out about this by looking into how Wes Bos styles the links on his [website](https://wesbos.com/) :D. 

## Pseudo Elements
We will specifically focus on the `:before` and `:after` pseudo elements, which are often used to style an element in ways which are not possible with just one element. Let's assume we have a heading which is also a link to another page (as seen on many blogs). We can give the heading a neat looking border using pseudo elements:
```css
.heading::before {
  content: '';
  background-color: #c1dfc4;
  height: 5px;
  width: 100%;
  position: absolute;
  bottom: 5px;
  left: 0;
  z-index: -1;
  transition: all 0.2s ease-in;
  transform: rotate(-3deg) skewX(-20deg);
}

.heading:hover::before {
  transform: none;
}
```
Which could look like this:
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/y6ac2mjrusdhzno9ux5u.PNG)

## CSS Variables
Using CSS variables we can not only set variables at the root of our page but deeper down the DOM tree. We could for instance set variables on the  `heading` class: 
```css
.heading {
  --rotation: -3deg;
  --skew: -20deg;
}
```
And then use those variables inside the `before` pseudo element:
```css
transform: rotate(var(--rotation)) skewX(var(--skew));
```

## Random Transforms
If we put all of this inside a reusable component, in our example using [Svelte](https://svelte.dev/), we can randomly generate the transforms used on the heading (the following component is abbreviated):
```html
<script>
  const rand = (min, max) => Math.floor(Math.random() * (max - min)) + min
  const style = `
    --rotation: -${rand(1, 5)}deg;
    --skew: -${rand(10, 25)}deg;
  `
  export let href
</script>
<a {href} {style}>
  <slot></slot>
</a>
```
To see it live in action have a look at this [REPL](https://svelte.dev/repl/6943babbf6db4d01822ba6bbfa18ba4b?version=3.22.2).
Password generation with Python
Tags: python
Published: 2020-05-12 12:46:48

Passwords are everywhere. There are so many passwords, it's hard to keep track of them all without keeping some kind of record.

At the same time, "pass words" are no longer sufficient because of rainbow tables. That is why you need to generate passwords.

You could do that using the <a href="https://pythonspot.com/random-numbers/">random</a> module:

```python
from string import punctuation, ascii_letters, digits
import random

def generate_password(pass_length):
    symbols = ascii_letters + digits + punctuation
    secure_random = random.SystemRandom()
    password = "".join(secure_random.choice(symbols) for i in range(pass_length))
    return password

password = generate_password(15)
print(password)
```
source: <a href="https://gitpress.io/u/1246/python-script-generate_password">password generator</a>

When generating random passwords, the default could be easily compromised. On the web they were told "I think you worry too much.". The secrets module was created to resolve this.

But if you use Python 3.6 and newer there's  better way. The <a href="https://docs.python.org/3.6/library/secrets.html">secrets module</a> generates cryptographically safe passwords.

The secrets module lets you generate passwords:

```python
import secrets
import string

alphabet = string.ascii_letters + string.digits
password = ''.join(secrets.choice(alphabet) for i in range(15))
print(password)
```
May 12 — Daily CodeNewbie Check-in Thread
Tags: codenewbie, checkin, beginners, discuss
Published: 2020-05-12 12:45:08

---
title: May 12 — Daily CodeNewbie Check-in Thread
published: true
description: A daily thread to ask questions, share progress, and stay accountable!
tags: codenewbie, checkin, beginners, discuss
series: Daily Checkin
---

You are encouraged to use this daily thread to:
- Ask for help (all questions encouraged)
- Explore topics you’re curious about
- Share something you’ve written or read
- Celebrate your wins
- Stay accountable to your goals
- Support your fellow programmers

Happy Coding!

---

_Interested in joining the twice-weekly live [#CodeNewbie Twitter chats](https://twitter.com/search?q=codenewbie)?  You can find us [on Twitter](https://twitter.com/search?q=codenewbie) each Wednesday at 9pm ET (1am GMT on Thursday) and Sunday at 2pm ET (6pm GMT)!_
44: Before Artworking 
Tags: html, css, javascript, python
Published: 2020-05-12 12:43:59


###**Programming is about the mathematical process, It works line by line.**   
I now realized how important to keep value about the fundamentals in order. when especially, if I aim for a software engineer, I could go faster, if I only choose the way 'copy' and 'paste'. However, the more I spend time to understand the working system, I realized the valuable lesson,

---
*Starting over from people's advice may be the same as learning a framework, skipping from Vanilla JavaScript. Let me change, from a designer to the programmer, so then, the computer language does not matter anymore, It matters of problem-solving and focusing on my mathematical thinking process. It is my first time, and I feel so NEW!*


--- 

Data Structures and Algorithms
Why? To navigate the computer better

--- 
###**The good thing is that having independence, and finally out of my alternative-way of lifestyle.**  

Programming is too honest, and I do love it. I am excited to have the second chapter, it is going to be dynamic and I assure you that JS makes me grow, in the end, Happy Ending Story. :)
Matt's Tidbits #68 - Testing RxJava Observables
Tags: mattstidbits, rxjava, testing, tidbittuesday
Published: 2020-05-12 12:33:50

[Last week I shared some tips about working from home.](https://medium.com/@matthew.b.groves/matts-tidbits-67-some-tips-for-working-from-home-9c68f07a0e15) This time, I want to tell you about testing RxJava Observables.

Recently, I wanted to write a unit test that verified that a particular Observable had been subscribed to. I did a little quick Googling and came across the following:
http://reactivex.io/RxJava/javadoc/rx/subjects/TestSubject.html

However, when I tried to use this in my project, I couldn't find it! A little more searching turned up this document:
https://github.com/ReactiveX/RxJava/wiki/What%27s-different-in-2.0#testsubject

Because my project is using RxJava 2, `TestSubject` was not available because it has been deprecated.

I then discovered that the `PublishSubject` I have often used when unit testing Observables has a handy method: `hasObservers()`

However, I wanted to point out one possible source of confusion. The RxJava 1->2 migration document says:

*The 1.x `TestSubject` has been dropped. Its functionality can be achieved via `TestScheduler`, `PublishProcessor`/`PublishSubject` and `observeOn(testScheduler)`/scheduler parameter.*

The example code they provide shows calling the `.test()` method on the `PublishSubject`.

**WARNING**
If you do this, `hasObservers()` will always return true, as calling `.test()` on your PublishSubject is effectively subscribing to it, so it will by default have an Observer.

So, if you are trying to test that an Observable has been subscribed to (in my case, as a result of calling some other Observable) - only call `.test()` on the outer Observable. Then you can call `hasObservers()` on the secondary Observable you have passed in to verify that the outer one has subscribed to it.

What special strategies do you use for testing RxJava code? Leave a comment below! And, please follow me on Medium if you're interested in being notified of future tidbits.

*This tidbit was originally delivered on May 8, 2020.*
Web & React Native development in WSL
Tags: webdev, reactnative, wsl, windows
Published: 2020-05-12 12:26:48

# Intro
As many of You, I like Windows for it's simplicity, but developing software on that OS sometimes can turn into a nightmare. Recently Windows released WSL2 - big update to Windows Subsystem for Linux, which brought:
* new architecture
* full Linux kernel
* much, much faster IO
* easy to install Docker
* [more info here](https://docs.microsoft.com/en-us/windows/wsl/wsl2-about)

Although WSL2 has many improvements towards its predecessor, it has also some downsides like virtual network hidden behind NAT and lack of access to USB devices.

# Before
First, assure that You have WSL2 installed ([check this link](https://docs.microsoft.com/en-us/windows/wsl/wsl2-install)).

Secondly, I strongly encourage to check Windows Terminal (which is open-sourced on [Github](https://github.com/microsoft/terminal)) 


## Setup

Add the snippet below to the end of Your shell config file (usually `.bashrc` or `.profile`)

```bash
export $(dbus-launch)
export LIBGL_ALWAYS_INDIRECT=1

export WSL_HOST=$(tail -1 /etc/resolv.conf | cut -d' ' -f2)
export DISPLAY=$WSL_HOST:0

export ADB_SERVER_SOCKET=tcp:$WSL_HOST:5037
```
Now Your WSL is ready.
You can:
- install some GUI on linux and use Windows X Server to run graphic apps from linux (e.g develop some Electron-based apps)
- develop mobile apps using React Native (just follow official instructions for Linux)

## React Native & adb
There's one more thing about adb. You have to start it under Windows (e.g. cmd)
As You remember, there's no USB support in WSL :)

Final steps:
1) [Start adb server in windows](https://gist.github.com/bergmannjg/461958db03c6ae41a66d264ae6504ade#start-adb-server-in-windows)
2) [Enable port fowarding to metro bundler from Windows](https://gist.github.com/bergmannjg/461958db03c6ae41a66d264ae6504ade#enable-port-fowarding-to-metro-bundler-from-windows)
3) Follow [React Native docs](https://reactnative.dev/docs/running-on-device). Remember to execute commands under WSL, not Windows.



# Final note
That's my first post in the **DEV** community :) Please give me some feedback.
5 G : Era of Smart World
Tags: automation, git, 5g, docker
Published: 2020-05-12 12:20:08

Large-scale convergence(LSC),is not about the convergence of different technologies. It is about developing a comprehensive framework that will enable delivering of services as per the requirement of various applications.
According to Boingo wireless’s chief technology officer ,“ Beware, convergence is the future! Ubiquitous 5G is not economically practical,without coexistence between Licensed,unlicensed and shared bands. So, we must embrace converged solutions that leverage multiple bands & technologies.”

5G : catalyst for Industry 4.0

Industry 4.0 — the fourth industrial revolution -which will essentially set the paradigm of Everywhere and Everything connectivity.
Larger-scale phenomena will take different approach to take shape.

How 5G evolve?

Look at nomenclature through algorithmic way :-
1.Greedy approach : solving specify problem.
2.Dynamic approach:generic in nature and addresses problem with a broader vision.

The greedy approach will take place first and will continue with new applications. These approaches will take footage between 2018 and 2022 like 5G in fixed wireless,LTE -assisted network.
While dynamic approach will be the real transformation into a complete system of 5G. That’s why concept of LSC comes .The real period of focus will be from 2020 to 2025.

Technologies that will make LSC possible :-

1.Open Network Automation platform (ONAP)
2.VNFs
3.Multi-access Edge Computing (MEC)
4.3GPP north-bound APIs

Open Network Automation platform (ONAP)

This is an open source software platform that delivers capabilities for design,creation,orchestration,monitoring and life cycle management of virtual network functions (VNFS),carrier-scale software defined networks(SDNs) & higher level services that combines the above.

VNFs

VNFs and SDNs bring the required adoptability. The need is for a right framework for their harmonisation and interoperability. A well-orchestrated network can cater to large-scale abstraction from application demand.

Multi-access Edge Computing (MEC)

This is the kingpin in the facilitation of LSC. MEC brings application-specific affinity in 5G, which will be an application-defined network. End to End virtualisation is required economical & political reasons. So, MEC is defining and placing.

3GPP north-bound APIs

A north-bound API is an interface between an application server and 3rd generation partnership Project (3GPP) system via specified functions in a mobile operator’s network.

FUN FACT ABOUT LARGE-SCALE CONVERGENCE

1.LSC is about making 5G an application-defined network.
2.LSC is about comprehensive E2E approach while setting a 5G network.
3.LSC facilitates required abstraction to address versatile dimensions of various applications.
4.LSC defines the 5G landscape and network slicing.

visit :- 
https://medium.com/@shubhendushubham/
Free Printable Blank Holidays Calendar Wishes Images Template

Published: 2020-05-12 12:09:04

We have a Calendar Wishes Images and 2020 Printable Calendar for everyone. Whether you're looking for a Printable Blank Calendar or you need a Calendar with holidays to print, you can download it for free from here. Printable Calendar, Blank Calendar, Calendar Template, Calendar Holidays, Holidays Calendar, 2020 Calendar, Calendar 2020 all are available at this site.
Source: https://bit.ly/2L9LC6d