teleren/devto huggingface dataset:
Installing Kubernetes on Ubuntu 16.04+, Debian 9+ and HypriotOS v1.0.1 using Kubeadm
Published: 2020-12-22 10:34:19


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

## Pre-requisite

-  Install Docker using ```curl -sSL https://get.docker.com/ | sh ```

## Installing kubeadm kubectl kubelet

Copy paste the below snippet one by one in your CLI terminal - This is for both Master and Worker Nodes

```
sudo apt-get update && sudo apt-get install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
```

## Initialize kubeadm - This is only for Master

```
kubeadm init
```

## Setting up kubeconfig - This is only for Master Node

```
  mkdir -p $HOME/.kube
  sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
  sudo chown $(id -u):$(id -g) $HOME/.kube/config
```


## Copying token from kubeadmn init snippet - This you should copy from Master. This you will get from Master node only

```
kubeadm join <control-plane-host>:<control-plane-port> --token <token> --discovery-token-ca-cert-hash sha256:<hash>
```


## Installing Network Plugin - This is only for Master Node

```
kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"
```


## Joining Worker Nodes - This is only for Worker Nodes

```
kubeadm join --token <token> <control-plane-host>:<control-plane-port> --discovery-token-ca-cert-hash sha256:<hash>
```

## Note:

Please do not run Master node snippet commands on Worker Nodes.

## References 
1. https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#installing-kubeadm-kubelet-and-kubectl
2. https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/#initializing-your-control-plane-node
De Laravel 5.5 à Laravel 8, j'ai manqué quoi?
Tags: laravel, french
Published: 2020-12-22 10:33:15

Suite à un projet client démarré en 2018 poursuivi sans montée de version, j'ai l'habitude de Laravel 5.5 et j'ai assez peu suivi les mises à jour du framework.

J'en profite pour faire un article avec les plus grandes nouveautés à ne pas manquer !

## Changement de méthode de versionning

Traditionnellement, Laravel utilise une version sous la forme paradigme.majeure.mineure. Comme Taylor est satisfait par le paradigme actuel, il n'y aura plus de modifications comme nous l'avons connu lors des passages de Laravel 4 vers Laravel 5. Il était donc tout naturel de laisser de côté cette information. Laravel suit maintenant une notation de semantic versioning classique : majeure.mineure.patch.

## Classes pour les channels

On a l'habitude d'utiliser un controller sous la forme de classe dans nos développements mais ce n'était pas encore possible pour les channels. C'est maintenant le cas !

## Passage à Bootstrap 4 et transfert vers un package

Il n'y a pas grand chose à dire de plus sur ce point, le framework suit les mises à jour de Bootstrap et a séparé le système d'inscription / connexion dans un package composer à part. Il existe au choix une version Vue ou React.

## Laravel Nova

Depuis Laravel 5.7, Nova est un dashboard d'administration créé pour Laravel et coûtant 99€ pour les développeurs individuels ou 199€ pour les agences. Cela permet de gagner un temps considérable lors du démarrage d'un projet compte tenu de l'omniprésence des panels d'administration.

Il est possible de personnaliser Nova et d'y ajouter des nouvelles fonctionnalités mais le produit n'est pas prévu pour être intégralement modifié. Il ne conviendra pas forcément à un besoin avec un design à intégrer.

## Laravel Telescope

Nouvel outil de debug présent dans l'écosystème Laravel, Telescope permet de lister les requêtes de cache, les commandes exécutées, les évènements, les exceptions, les jobs, les e-mails, les modifications de modèles, les requêtes SQL et même es tâches planifiées !

## Laravel Vapor

Nouveau produit créé par Taylor Otwell, il s'agit un système de déploiement de Laravel pour l'architecture serverless d'Amazon Lambda et l'interfacage avec les autres produits AWS.

## Laravel Sanctum

Nouvel arrivant dans l'écosystème Laravel, Sanctum est un système d'authentification clef en main pour vos applications Webs et mobiles. C'est un bon compromis entre Laravel UI qui concerne uniquement les applications web avec une connexion par session et Laravel Passport qui est un serveur Oauth 2 à part entière.

## CORS

Grand absent des middlewares de Laravel jusqu'à présent, il est maintenant possible de configurer le support des requêtes Cross Origin !

## Laravel Jetstream

Encore un nouveau projet dans l'écosystème Laravel. C'est un template de démarrage tout en un avec connexion, inscription, vérification d'email, 2FA, session, Laravel Sanctum et même une gestion d'équipe optionnelle. C'est un produit réalisé avec Tailwind CSS et Blade / Livewire ou VueJS / Inertia.
VIRTUAL REALITY
Published: 2020-12-22 10:25:48

WHAT IS Virtual Reality?
                 
* Virtual Reality is the use of computer technology to create a simulated environment. Unlike traditional user interfaces, VR places the user inside an experience. 

* Instead of viewing a screen in front of them, users are immersed and able to interact with 3D worlds. By simulating as many senses as possible, such as vision, hearing, touch, even smell, the computer is transformed into a gatekeeper to this artificial world.

* The only limits to near-real VR experiences are the availability of content and cheap computing power.


What you need for  virtual reality?

* The most important piece of a virtual reality kit is the headset, a device like a thick pair of goggles that goes over your eyes. 

* The more expensive, higher quality headsets need to be connected to a computer to run apps and games, while some cheaper ones use a cellphone clipped to the front of the headset.



Applications of Virtual Reality

•	Architecture and urban design.
•	Restorative nature experiences.
•	Healthcare and Medical.
•	Digital marketing,
•	Education and training. 5.1 Mining Industry. 5.2 Flight 
        and vehicular applications.5.3 Medicine. 5.4 Military.
•	Engineering and robotics.
•	Ente1ainment. 7.1 Video games. 7.2 Cinema. 7.3 Music, .
•	Fine arts.


Advantages of VR

1.Improvesrelention and recall Simplifies complex problems/situations The reality creates a realistic world.

2.It enables user to explore places.
Suitable for different learning styles Innovative and enjoyable.

3.Through Virtual Reality user can experiment with an artificial environment, Real scenarios Can be done remotely saving time and money.

4.Virtual Reality make the education more easily and comfort.


Disadvantage of VR

Simulator Sickness Symptom:
                
1.Simulatorsickness is by no means a new phenomenon. 

2.It is similar to motion sickness, which has existed for as long as humans have used additional I modes of transportation, but can occur without any actual motion of the subject. 

3.The first documented case of simulator sickness occurred in 1957 and was reported by Heron and Butler in a US Navy helicopter trainer. 

4.The most common identifiable symptoms are general discomfort, nausea, drowsiness, headache and in some cases vomiting.
Just another "Hello World!"
Tags: beginners, computerscience, girlswhocode, webdev
Published: 2020-12-22 10:23:06

Hi there! Thanks for stopping by. I've decided to start writing blog posts to keep track of my development as a front end developer and as well as my revelations with technologies I use (or will use along the way). 

So since I already have you here. I should start with an introduction. To make it easier, I'll do the intro in list form so here goes:

1. I'm Zahrea. A Caribbean raised, Cali-based girl in tech.

2. I am pursuing a Bachelor of Science in Computer Science at Sacramento State. 

3. Interested in full stack web development.

4. Currently codes in: HTML, CSS, JS and Java.

5. Currently learning: React, Node.js & Python 🐍

That's all for now. Thanks for reading! See you in my next post (hopefully) 😄

If you'd like to keep track of my progress, follow me on Github {% github zahreafranklin/zahreafranklin %}
My JavaScriptmas solutions
Tags: scrimba, javascriptmas
Published: 2020-12-22 10:19:44

---
title: My JavaScriptmas solutions
published: true
description: 
tags: scrimba, javascriptmas
//cover_image: https://direct_url_to_image.jpg
---
These are my solutions for [Scrimba's advent calendar](https://scrimba.com/learn/adventcalendar)

1. Javascript Challenge: [Candies](https://scrimba.com/scrim/co3894c1b99bf7846f521bb1c)

2. Javascript Challenge: [Deposit profit](https://scrimba.com/scrim/coaf247a19b40d240cd385b9e)

3. Javascript Challenge: [Chunky Monkey](https://scrimba.com/scrim/co5ae4ddeaac4978f7141d340)

4. Javascript Challenge: [Century from year](https://scrimba.com/scrim/coad441b8aac23411fffc5798)

5. Javascript Challenge: [Reverse a string](https://scrimba.com/scrim/co8074f5c89569a271e6e0881)

6. Javascript Challenge: [Sort by length](https://scrimba.com/scrim/co02b497386b1bbe4af402174)

7. Javascript Challenge: [Count Vowel Consonant](https://scrimba.com/scrim/coe8c44f0bfbe58b1dd52c26c)

8. Javascript Challenge: [The Rolling Dice](https://scrimba.com/scrim/coa8e46b7bf132dfe778f78e0)

9. Javascript Challenge: [Sum odd Fibonacci numbers](https://scrimba.com/scrim/co1054fa79e4d51eb081e3faa)

10. Javascript Challenge: [Adjacent elements product](https://scrimba.com/scrim/cob52440fbbb7bf156e7a6efe)

11. Javascript Challenge: [Avoid obstacles](https://scrimba.com/scrim/co79f4057bb2f576376e9bc2b)

12. Javascript Challenge: [Valid time](https://scrimba.com/scrim/co75d4086b66bcd08ba004c49)

13. Javascript Challenge: [Extract each Kth](https://scrimba.com/scrim/co4d34ec9b9fb5a9fc13e90ad)

14. Javascript Challenge: [Maximal adjacent difference](https://scrimba.com/scrim/co92b4a7b9eeed084a02c4f21)

15. Javascript Challenge: [Carousel](https://scrimba.com/scrim/co97b40a9b00366f6f40e2a72)

16. Javascript Challenge: [Insert Dashes](https://scrimba.com/scrim/coee84b229971a70efc227175)

17. Javascript Challenge: [Different Symbols Naive](https://scrimba.com/scrim/co32e410fab0ba18734da59dc)

18. Javascript Challenge: [Array Previous Less](https://scrimba.com/scrim/coe1143edb555f269b5a64691)

19. Javascript Challenge: [Alphabet subsequence](https://scrimba.com/scrim/coe4142a595162569e9b567ce)

20. Javascript Challenge: [Domain type](https://scrimba.com/scrim/coaa9495da18e7228ed931d7a)

21. Javascript Challenge: [Sum of two](https://scrimba.com/scrim/co39f4c1db56c6f57b09ef2db)

22. Javascript Challenge: [Extract Matrix Column](https://scrimba.com/scrim/coeb74b0489712bcc9c8d4f1b)

23. Javascript Challenge: [Social Media Input] (https://scrimba.com/scrim/cof284173b738640e26f4dbc4)

24. Javascript Challenge: [Test Your Agility] (https://scrimba.com/scrim/co4d24bf6a5f46e67533989a2)
Installing Kubernetes on CentOS 7, RHEL 7 and Fedora 25+ using Kubeadm
Published: 2020-12-22 10:16:56

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

# Installing Kubernetes with Kubeadm on CentOS 7/RHEL 7/Fedora 25+

## Installing kubeadm, kubectl & kubelet

1. Copy paste the below snippet one by one in your CLI terminal - This is for both Master and Worker Nodes

```
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kubelet kubeadm kubectl
EOF
```

## Setting up SELinux in permissive mode (effectively disabling it)

```
setenforce 0
sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
systemctl enable --now kubelet
```

## Initialize kubeadm - This is only for Master

```
kubeadm init
```

## Setting up kubeconfig - This is only for Master Node

```
  mkdir -p $HOME/.kube
  cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
  chown $(id -u):$(id -g) $HOME/.kube/config
```

## Copy token from kubeadmn init snippet - This you should copy from Master. This you will get from Master node only

```
kubeadm join <control-plane-host>:<control-plane-port> --token <token> --discovery-token-ca-cert-hash sha256:<hash>
```

## Installing Network Plugin - This is only for Master Node

```
kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"
```

## Join Worker Nodes - This is only for Worker Nodes

```
kubeadm join --token <token> <control-plane-host>:<control-plane-port> --discovery-token-ca-cert-hash sha256:<hash>
```

## Note:

Please do not run Master node snippet commands on Worker Nodes.

## References 
1. https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#installing-kubeadm-kubelet-and-kubectl
2. https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/#initializing-your-control-plane-node
3 ways to empty an Array in JavaScript
Tags: javascript, webdev, beginners, html
Published: 2020-12-22 10:07:12

The Arrays are for JavaScript developers like how screws and nails are for carpenters. Hence it is important to know the in and around with how it works. Emptying an array is one of the important concepts involved so here are the few methods I know.

##1) Using length property
The `length` property returns the number of elements in that array. And if we equate this to `0`, we will be able to empty the array elements. This method is quite popular but not the fastest way to do the job.
```javascript
baratheon = ["Robert", "Renly", "Stannis"]
baratheon.length = 0 // empties array

console.log(baratheon) // expected result: []
console.log(baratheon.length) // expected result: 0
```
##2) Assigning it to a new empty array
This is the *fastest* way of emptying an array. This is perfect if you don’t have any references from other places to the original arr. If you do, those references won’t be updated and those places will continue to use the old array.
```javascript
baratheon = ["Robert", "Renly", "Stannis"]
baratheon = [] // empties array

console.log(baratheon.length) // expected result: 0
console.log(baratheon) //expected result: []
```

##3) Using Array method splice()
This can be done using the `splice()` method from the list of JavaScript Array methods. The `splice()` method takes the index *(from which the splicing should start )* and the number of items to be removed as parameters and splices the elements.
We have to pass the `0` as index *(the first element)* and the length of the array as parameters which ends up emptying the whole array. The performance of this method is almost as fast as assigning the new array method.
```javascript
baratheon = ["Robert", "Renly", "Stannis"]
baratheon.splice(0, baratheon.length) // empties array

console.log(baratheon.length) // expected result: 0
console.log(baratheon) //expected result: []
```
And that sums it up. Comment below if you know any other ways to empty an array.
####Thank you :)
How to use the Bitcoin API with Java
Tags: blockchain, bitcoin, payment, payments
Published: 2020-12-22 09:59:22

This library can be used to:
 - Generate new Bitcoin Addresses;
 - Check the status of a payment and get a transaction receipt;
 - Check the balance of a Bitcoin Address (Unconfirmed and Confirmed);
 - And more.

GitHub Repository: https://github.com/Aaron-Akhtar/Blockonomics-Java-Wrapper
Blockonomics: https://www.blockonomics.co/
API Documentation: https://www.blockonomics.co/views/api.html

Hello, my name is Aaron, today I will be showcasing how my Java Wrapper of the Blockonomics API works and how you can use it. I am assuming you are an experienced developer so please do not expect a walkthrough of everything.

When you add the wrapper library to your workspace you will be required to set your authorization key for the Blockonomics API, this can be found over at the link below.
https://www.blockonomics.co/merchants#/page3

```java
import me.aaronakhtar.blockonomics_wrapper.Blockonomics;

Blockonomics.setApiKey("YOUR_API_KEY_HERE");
```

Now that we've set our API Authorization Key, we can move on to the integration part of things.

The Blockonomics API allows you to execute a variety of functions, and a large portion of those functions are available in this wrapper, below is some example integration:

```java
    public static void main(String[] args) {
        Blockonomics.setApiKey("YOUR_API_KEY_HERE");

        BitcoinAddressHistory bitcoinAddressHistory = Blockonomics.getBitcoinAddressHistory(new String[]{"1JJ5taVeiHcD6DXNkLLfocbHcE9Nzio1qV"});
        for (ConfirmedTransaction confirmedTransaction : bitcoinAddressHistory.getHistory()){
            System.out.println(Arrays.toString(confirmedTransaction.getAddr()));
            System.out.println(confirmedTransaction.getTime());
            System.out.println(confirmedTransaction.getTxid());
            System.out.println(confirmedTransaction.getValue());
        }
        
        for (PendingTransaction pendingTransaction : bitcoinAddressHistory.getPendingTransactions()){
            System.out.println(Arrays.toString(pendingTransaction.getAddr()));
            System.out.println(pendingTransaction.getTime());
            System.out.println(pendingTransaction.getTxid());
            System.out.println(pendingTransaction.getValue());
            System.out.println(pendingTransaction.getStatus());
        }
    }
```
```java
String btc_address = Blockonomics.newAddress(false);
System.out.println(Please send 0.001 BTC to \""+btc_address+"\");
```

Thank you for taking the time to read, I hope this was of good use to you all.

-  Aaron Akhtar.

Twitter: https://twitter.com/D3vAaron
Solving day 22 of Advent of Code 2020 in JavaScript
Tags: challenge, adventofcode, javascript, video
Published: 2020-12-22 09:53:22

---
title: Solving day 22 of Advent of Code 2020 in JavaScript
published: true
description: JavaScript walkthrough of Advent of Code 2020 (day 22)
tags: challenge, AdventOfCode, javascript, video
series: Advent of Code 2020 in Javascript
---

{% youtube FQvyr1l19Ow %}
3 Most Important GraphiC Tools For Designing
Published: 2020-12-22 09:44:54

[Graphic designers](https://propelguru.com/graphic-design/) or graphic designers create visual graphics intended to communicate a message to the public. Designers create graphics for websites and games, as well as for movies. Graphic designers also use illustrations and photographs to create designs for print media. Marketing companies often hire graphic designers to help create promotional displays and brochures for products. Graphic designers can be trained in schools with graphic design programs and degrees can also be obtained online. As in many fields, designers cannot complete their work without the right tools. Here is a list of what it takes for a designer to be successful.

**COMPUTER**

Most of today's graphics are computer-based, so this component is essential in graphic design. The computer is not only essential for graphic design; it is also necessary for business purposes and is necessary for email and communication. Computers are used to create illustrations, write copies for websites and publications, edit photos, and design layouts. Deciding which computer to buy can be difficult, but many designers prefer Apple's "Mac" because of its graphics capabilities.

**SOFTWARE**

Your computer can't design anything until prompted, and that's where software comes in. Software such as Adobe Photoshop and Illustrator help create and edit photos and images. Designers who specialize in creating websites can use editors such as Macromedia Dreamweaver or Microsoft FrontPage to create sophisticated web pages with rich color and content. Time management and project tracking software is also essential to the end of business design.

**OTHER CREATIVE PROFESSIONALS**

One of the most important resources a graphic designer can have is other colleagues in the field. Professionals can critique the work of others while receiving information and advice on their own projects. Complex tasks may require working with other designers, and having someone to brainstorm with can create the best ideas.

Through this blog we have discussed 3 Most Important Graphic Designing Tools For Designing. For more information regarding Graphic Designing and other digital marketing services visit Propel Guru, a [Digital Marketing Company](https://www.propelguru.com/).
#DevHack: Specifying what to run on Vercel dev
Tags: webdev, vercel, serverless
Published: 2020-12-22 09:39:58

While developing the integration with Strava on our cycling club website, I wanted to use serverless functions to simplify the data retrieval from Strava. The website runs on [Vercel](https://vercel.com), and if you're going to test out your serverless functions locally, you will need to use Vercel its CLI.

You can install the Vercel CLI by running the following command: `npm i vercel -g`.

![Installing the Vercel CLI](https://www.eliostruyf.com/uploads/2020/12/vercel3.png)<figcaption>Installing the Vercel CLI</figcaption>

Once installed, log in with the `vercel login` command and provide your email address, which you use for Vercel.

![Logging in to Vercel](https://www.eliostruyf.com/uploads/2020/12/vercel4.png)<figcaption>Logging in to Vercel</figcaption>

Once logged in, you can run the `vercel dev` command. If it is the first time for your repository, the CLI will ask you a couple of questions to connect your project.

![Linking the project](https://www.eliostruyf.com/uploads/2020/12/vercel5.png)<figcaption>Linking the project</figcaption>

When you provided all this information, the Vercel CLI retrieves this command's configuration from their website. 

When you want to change which scripts you want to run when initiating `vercel dev`, you will have to configure it in your project settings:

- Go to your Vercel dashboard
- Select the project
- Go to the project settings page
- Overwrite the **development command** under the "Build & Development Settings"

In my case, I changed this to `npm run start:dev`.

![Configuring the build and development commands](https://www.eliostruyf.com/uploads/2020/12/vercel1.png)<figcaption>Configuring the build and development commands</figcaption>

When running `vercel dev`, you will see it retrieves your config, and runs the specified command.

![Running the vercel dev command](https://www.eliostruyf.com/uploads/2020/12/vercel2.png)<figcaption>Running the vercel dev command</figcaption>


It is pretty neat that all of this can be configured from within their site. Great when you work within a team, and you all use the same configuration. Initially, I tried to configure this from the `package.json` scripts, where many others do this. 

*Article was first published on [https://www.eliostruyf.com/devhack-specifying-what-to-run-on-vercel-dev/](https://www.eliostruyf.com/devhack-specifying-what-to-run-on-vercel-dev/)*