teleren/devto huggingface dataset:
What is your life number?
Tags: astrology
Published: 2019-10-24 12:56:42

Numerology is how we streamline numbers and apply it to understand all facets of our unique existence. Our career/business, love life, friendships, health, spirituality, family life, personality, and recreations can all be numerologically explained and understood. The practice of numerology is here to give us cues about our chosen path.

Numerology meanings helps us comprehend the prevalent energy of our being, and the vitality encompassing each life area. Angel numbers are often seen by many, for example the [angel number 444](https://virtueup.com/444-meaning). Numerological birthday meanings shed light on our life number purposes and destiny number meanings. Numerology love readings are used to discern how the dominant, distinguished numbers found in two people’s lives intertwine with each other, and what kind of a relationship they characterize.

Numerology will help you deduce what kind of a relationship you have, can have or should have. Some days or months are more promising than others, and some years everything goes really well or goes downhill, no matter how many efforts you put in. This is mainly because every single day, week, month and year comes with its own energy, which we can decrypt and realize using numbers, based on the digits of the numbers found in the dates.

Every particular date is made up of various numbers. [Numerologists](https://numerologist.com) tend to add all these numbers up until they arrive at a one-digit number. The life number is the most substantial number in a person's numerology. It is calculated from the date of birth and it unwraps the readings about opportunities, and challenges which you will encounter in the future. 

You can calculate your life number by reducing each number in your birth date (month/day/year) to a single-digit number. It is also likely to get Master numbers such as 11, 22 and 33. Decrease each of the resulting digits from the month, day and year(or Master numbers) by adding them together. View more at [VirtueUp](https://virtueup.com/). Lastly, add up the total to give a single-digit number or a Master number.

For example, if your birth date is on December 18, 1996, you can calculate your Life Path number like this:

The 12th month = 12.
The date of birth is 18. 1 + 8 = 9.
The year of birth is 1996. 
1 + 9 + 9 + 6 = 25
then 2 + 5 = 7; 

Now, add the results: 12 + 9 + 7 = 28.Reduce: 2 + 8 = 10;
Finally, 1 + 0 = 1.
The Life Path number in this example is 1.
Single Sign On of Micro-Service Architecture (Authentication and Authorization)
Tags: sso, microservices
Published: 2019-10-24 12:41:31

---
title: Single Sign On of Micro-Service Architecture (Authentication and Authorization)
published: true
description: Single Sign On on Micro-Service Architecture
tags: #SSO #microservice
---

How do you implement Single Sign On of Micro-Service Architecture?

* OAUTH with JWT
* Shared Session by Memory Database (Redis/Spring Session)
7 Important Tools for Your Woodworking Project
Tags: woodworking
Published: 2019-10-24 12:21:19


For making a <a href="https://www.ultrawoodworking.com">woodworking project</a>, you should have basic woodworking tools. You must have the basic hand tools when you start woodworking and these hand tools get the power from your muscles. This article shows you the important woodworking tools. 

<b>The claw hammer</b>

Claw hammer is the most basic tool in every house. The one kind of the head is counterbalanced by the finished head, which should be rounded. Waffle-head is the other kind of head. It creates a waffle mark on the wood when you drive the nail and it is most commonly used in construction.  
You should carefully handle the claw hammer. Because poorly handled claw hammer may twist in your hand. You will need to make sure that the fiberglass and metal handle provides good grip control and comfort. If you need to drive a lot of nails, the wooden handled hammer will be the best choice for reducing the stress on your hand.

<b>Tape measure</b>

The measurement tool is very essential to the woodworking project. Get the tap measure hand tool at least 25 feet long. If you buying longer tap measure, then you have a problem getting it to roll back. You have to be careful while taking the measurement. Because poor accuracy can make severe problems.

<b>The screwdriver</b>

The screwdriver is one of the important hand tools for woodworking. You will need a flathead screwdrivers, Torx drivers, star drivers and also medium and small slot screwdriver. You should purchase good quality screwdrivers and you need a long screwdriver with a straight blade.

<b>The chisel</b>

The chisel is one of the most important things and it should be part of every woodworker. All woodworkers have the chisel for clean out the saw cuts and joints. Chisels available in every shape and size and it comes with different materials. 

<b>Circular saw</b>

Circular saw is one of the handheld saw. It comes with the depth of the blade which able to make cut-offs, narrow slots, and dados. The downside of the circular saw has lightweight so sometimes it causes to move while cutting and the stability of the machine is important for the cut and safe. But the other hand it is the advantage. Because it has the mobility so it is easy to work anywhere. 

<b>The nail set</b>

The next essential tool is the nail set. You should have the several size nail tools. The nail tools used to drive the nail heads perfectly into the wood materials. This helps to fill the holes and you prepare for painting. 

<b>The moisture meter</b>

A quality wood moisture meter is the essential tool for the long-term success of any woodworking project. Sometimes wood is harvested from the wet areas but is going to be shipped to the other dry areas. To success your woodworking project, you need to measure the correct moisture levels of the wood. You have to buy the moisture meter that has the ability to account for different species for the wood.
Introducing manven
Tags: python, opensource
Published: 2019-10-24 12:09:23

I like to use `virualenv` (I'm not such a big a fan of `conda`), but it is sometimes annoying to keep track of created environments and to source the correct script depending on what shell you're using. For this reason I wrote `manven`, which can create, activate, list and remove created environments and quickly create and prune temporary ones. Feel free to checkout https://acksld.github.io/manven/ for how to install and use it :)

This is my first open-source project on my own so I'm very happy to hear any of your thoughts!

## How can `manven` be used?
After installing `manven` and adding the alias `smanven` as described in the [installation](https://acksld.github.io/manven/installation.html) you can create and activate an enviroment as
```bash
smanven activate myvenv
```

To list all the created enviroments
```bash
smanven list
```

To create and activate a quick temporary enviroment
```bash
smanven temp
```

For complete documentation of the full functionality and accepted flags, see the [docs](https://acksld.github.io/manven/usage.html).

Happy venv-ing! :)

(*After releasing `manven` I learnt about `virtualenvwrapper` which solves the same problem. However `virtualenvwrapper` is written in bash and can be tricky to extent to other shells such as `fish`. `manven` is almost completely in Python except for the tiny top-level script and can easily be extended to other shells (current support for bash, fish, zsh, dash.*)
AR vs MR vs VR: Intuitive Guide to Immersive Technologies and Tips on How to Secure AR Environments
Tags: augmentedreality
Published: 2019-10-24 12:03:25

 ![AR vs MR vs VR](http://perfectial.com/wp-content/uploads/2019/10/Ar_mr-03-04.jpg)

AR vs MR vs VR – same devices, different market value.

[Augmented reality](https://perfectial.com/blog/augmented-reality-for-business/) and mixed reality have already reached the usability phase thanks to the recent advances in computer vision, sensor fusion, and new-age display technologies. Their business applicability has been proven repeatedly, and now the community has moved on to researching, thoroughly, the security and privacy implications of AR’s adoption (which, turns out, are quite substantial.)

A person wearing a head-mounted device (HMD) captures lots of information about surrounding physical objects and locations and thus exposes, sometimes unwittingly, massive volumes of data to third-party applications that are meant to process the data and deliver relevant outputs. If these apps happen to be corrupted, sensitive (and potentially damaging) info can be leaked and used with malicious intent.

In this post, we shed light on the conceptual differences between the types of immersive technologies (since there’s still a great deal of confusion surrounding augmented reality vs virtual reality comparisons) and discuss how AR’s key security concerns can be addressed through the implementation of the latest protection approaches.

**AR vs MR vs VR**

The term **Virtual Reality** refers to software-generated simulations of real experiences. VR completely blocks out a person’s view of the world (typically through an HDM device) and immerses them into an artificial environment.

**Augmented Reality**, however, is about bringing digital information into a person’s view of the real world. Instead of shutting down reality, it superimposes computer-generated content onto the physical environment so that both can be experienced together.

**Mixed Reality** has a hybrid definition that blends aspects of both VR and AR. It is essentially an extension of AR that, on top of overlaying information, enables meaningful interaction between synthetic and physical objects to deliver rich, immersive experiences.

Though tech media loves lumping the two together, AR (MR) and VR are two distinct technologies that each have their own path. AR (MR) market is predicted to reach over [$149b by 2025](https://www.marketwatch.com/press-release/augmented-reality-market-global-industry-analysis-size-share-growth-trends-and-forecast-2018-2025-2019-09-27), while the global VR market is expected to grow [to $33.8b in the same timeframe](https://www.marketwatch.com/press-release/augmented-reality-market-global-industry-analysis-size-share-growth-trends-and-forecast-2018-2025-2019-09-27).

View blog and read more about [AR vs MR vs VR](https://perfectial.com/blog/ar-vs-mr-vs-vr/). The post appeared first on [Outsource Web Development Company Perfectial](https://perfectial.com/).
JavaScript Useful Array Methods! Part 1
Tags: javascript, tutorial, arrays, beginners
Published: 2019-10-24 11:41:00

### Examples & Scenerios 

Twitter: @JacobMGEvans
So it is still a work in progress but someone wanted some simple examples of a few commonly used array methods. I plan on explaining each one in more detail.

```javascript
const arrayOfAnimals = ['crocodile', 'gorilla', 'lion', 'wolf']
```

 So we need to make a list of animals that are in the zoo and the list will be rendered 
directly after updating the list we are given! 
```javascript
const newArrayMap = arrayOfAnimals.map(animal => `${animal} in zoo`)
console.log(newArrayMap) 
// [ 'crocodile in zoo', 'gorilla in zoo', 'lion in zoo', 'wolf in zoo' ]
```

 OH NO! We added an animal to the list that actually is no longer in the Zoo! 
Lets just remove it with .filter()
```javascript
const newArrayFilter = newArrayMap.filter(animalInZoo => !animalInZoo.includes('crocodile'))
console.log(newArrayFilter) 
// [ 'gorilla in zoo', 'lion in zoo', 'wolf in zoo' ]
```

  So we were also given an object with numbers as values...? Oh! its how many of each of those animals are at the zoo and the zookeeper wants a total of all the animals!? I have an idea of how to do this...I think lol

```javascript
const dataSheetAnimalCount = {
    'crocodile': 0, 
    'gorilla': 3, 
    'lion': 8, 
    'wolf': 10
}
```

 Alright we have an array of the animal counts... Now what? 
If interested in Object built-ins check out this article :) 
I am going to use .reduce() to get the total through aggregation of previous value returned with current value of element that reduce is on in the array. 
```javascript
const getValuesFromObject = Object.values(dataSheetAnimalCount) 
console.log(getValuesFromObject) // [0, 3, 8, 10]
const totalAnimalsInZoo = getValuesFromObject.reduce((aggregatedValue, currentValue) => aggregatedValue + currentValue)
console.log(totalAnimalsInZoo) // 21
```
 Seems like that is all we needed to do with the data, for today at least! :)
Filetype settings in .vimrc
Tags: linux, vim
Published: 2019-10-24 11:24:09

---
title: Filetype settings in .vimrc
published: true
description: Hack VIM automatically based on language
tags: linux, vim
---

Languages all have different settings.  The most common one is indentation style.  

How do you set VIM up to automatically use the settings you prefer, for your language?

Open up `.vimrc` (either a local one or your `~` one).  Then add the following:

```vim
autocmd FileType html setlocal <settings_you_want_to_set>
```

For example, I've just added:

```vim
autocmd FileType yaml setlocal ts=2 sw=2 expandtab
```

If you don't know the FileType, you can open up a file of the type in question (for me it was a `.yml`) and run `:set filetype?`

---

Hopefully this was useful for you!

Follow me on dev.to or on Twitter [@connorbode](https://twitter.com/connorbode) for more VIM, Linux, and other tips as I discover new things!
Celebrating 50 years of UNIX.
Tags: unix
Published: 2019-10-24 11:05:45

---
title: Celebrating 50 years of UNIX.
published: true
description: 
tags: unix
---
Subject: A UNIX Alphabet



         THE ABC'S OF UNIX
   
    A is for awk, which runs like a snail, and
    B is for biff, which reads all your mail.
   
    C is for cc, as hackers recall, while
    D is for dd, the command that does all.
   
    E is for emacs, which rebinds your keys, and
    F is for fsck, which rebuilds your trees.
   
    G is for grep, a clever detective, while
    H is for halt, which may seem defective.
   
    I is for indent, which rarely amuses, and
    J is for join, which nobody uses.
   
    K is for kill, which makes you the boss, while
    L is for lex, which is missing from DOS.

    M is for more, from which Less was begot, and
    N is for nice, which it really is not.
   
    O is for od, which prints out things nice, while
    P is for passwd, which reads in strings twice.
   
    Q is for quota, a Berkeley-type fable, and
    R is for ranlib, for sorting ar [sic] table.
   
    S is for spell, which attempts to belittle, while
    T is for true, which does very little.
   
    U is for uniq, which is used after Sort, and
    V is for vi, which is hard to abort.
   
    W is for whoami, which tells you your name, while
    X is, well, X, of dubious fame.
   
    Y is for yes, which makes an impression, and
    Z is for zcat, which handles compression.
Hacktoberfest2019 Swag Redeemed
Tags: hacktoberfest, opensource
Published: 2019-10-24 11:00:14

I just redeemed my #hacktoberfest2019 swag. Excited to receive, and have a selfie  with #hacktoberfest2019 T-Shirt.
![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/9myl3k7krbnzcntviopb.PNG)
Attack of the bots: The deeper you dig the more there are!
Tags: twitter, bot, python, aws
Published: 2019-10-24 10:45:40

I always knew that there were bots on Twitter but I am not sure I had truely gathered just how deep this network goes 🤦

I've been trying to debug a pretty weird issue with one of my own bots on and off for the last week or so and I couldn't work out what was going on. 

While it doesn't do a whole lot (it essentially justs retweets storm information to warn people who follow it that there might be storms in the area) this particular bot is relatively popular so I try to keep it somewhat functional.

Recently I noticed that another account was spamming some of the key words that the bot retweets with conspiracy theories. Usually this isn't much of an issue as the Twitter API allows you to filter out tweets from specific users with a query like `q=-from:user` 

I updated my code to exclude the user who was spamming and I expected it would solve the problem pretty much instantly. 

Unfortunately, over the next few days I kept seeing tweets from this user showing up in my bots feed 🤔

At first I thought I had messed up my query string but after digging into the logs a little more I could find no tweets from the user that I was trying to exclude at all yet they were still showing up in my bots feed 🤯

After a bunch more testing and a few wtf moments I worked out that somehow tweets from other users were appearing in my bots feed as if my bot had directly retweeted the spam account.

It turns out that my bot was retweeting other users who had retweeted the spam account. Each time I blocked a new user it would immediately be replaced by another retweet and it didn't take long for me to realise that there was a massive network of bots all retweeting the original spam account and my bot had inadvertently joined in on the party.

The eventual solution was pretty simple. All I needed to do was add `-filter:retweets`to my query string but it took a whole lot longer than it should have to arrive at that realisation. 

Hopefully this little story prevents someone else from heading down a similar rabbit hole in the future 👍
LIVE SPORTS STREAMING WEBSITE
Tags: livesport, soccerstream, epl, soccer
Published: 2019-10-24 10:31:08

JBLivestream is becoming a very popular free sports streaming website that is known by its name among all the people who prefer to watch live sports matches on the Internet. Also, it offers Entertainment from worldwide Cable and Satellite TV Channels. 

The site provides you with daily manually checked and working stream links and sources for worldwide sport events and IPTV channels. JBLivestream's broadcasts are working on almost all devices e.g. PC, computer, notebook, tablet, and mobile phones. 

Simply visit the website, select your favorite sports match and start watching it LIVE in full HD & for free without paying a dime

visit http://www.jblivestream.com/
Output to the Console, with Feeling
Tags: browserconsole
Published: 2019-10-24 03:41:39

---
title: Output to the Console, with Feeling
published: true
description: Did you know there are other levels of messaging that can be sent to the browser's console?
tags: browser console
---

Most of us are familiar with using `console.log` to debug our JavaScript code.  For those who are not familiar, `console.log()` simply logs messages to the console.  

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/hzy6e2rnj8hf6gv8wpzo.png)

Did you know there are other levels of messaging that can be sent to the browser's console? These levels let us convey the sentiment of a message in addition to the content of the text.  They are kind of like the emojis of the console.

Possibly more appropriate than `console.log()`, use `console.debug()` for debugging messages (or notes to yourself).

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/ldm5btjpswb2nvnbceno.png)


If you want to gently warn someone with a yellow alert message, use `console.warn()`.

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/4f5pko8ot36kebox76vr.png)

For more severe "code red" situations, use `console.error()`.

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/ixt2byl91yxvt76r0llb.png)

If you just want to stoicly pass on some information, use `console.info()`. 

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/7kovxycmwmsvyzquf3sz.png)

With these different options, it is easy to convey the types of messages sent to the console as well as filter on them.  

*NOTE: I'm using FireFox with the dark theme on the web console.*
Selling yourself as a self-taught developer: It’s not as hard as you might think
Published: 2019-10-24 09:59:55

Can’t find the optimal solution to the programming problem? Are you tired from the need to deal with complex assignments in programming daily? There is an effective way out – delegate the part of your programming homework to professionals. Have you never paid for custom writing services before? Still, doubt you need programming help online? Check why it’s a good idea to get your programming assignments done by experienced specialists.
Fixing GPG Keys missing public key in Ubuntu, Mint
Tags: linux, linuxmint, gpg
Published: 2021-05-24 12:58:26

---
title: Fixing GPG Keys missing public key in Ubuntu, Mint
published: true
date: 2019-10-24 09:48:17 UTC
tags: linux,linuxmint,gpg
canonical_url: https://medium.com/tech-epic/fixing-gpg-keys-missing-public-key-in-ubuntu-mint-3a0ef18931f5
---

#### The following signatures couldn’t be verified because the public key is not available

![](https://cdn-images-1.medium.com/max/868/1*F95D5Cq4ON0Vbpgoeft06w.png)

Err :

> W: GPG error: [http://repository.spotify.com](http://repository.spotify.com) stable InRelease: The following signatures couldn’t be verified because the public key is not available: NO\_PUBKEY 4773BD5E130D1D45

### SOLUTION

> sudo apt-key adv — keyserver ha.pool.sks-keyservers.net — recv-keys <missing-pubkey>

Ex :

> sudo apt-key adv — keyserver ha.pool.sks-keyservers.net — recv-keys 4773BD5E130D1D45

* * *
Actionable strategies for better data table design
Tags: datatables
Published: 2019-10-24 09:38:52

---
title: Actionable strategies for better data table design
published: true
description: If you think that there is no way you can do tables user-friendly and simple, our lead designer is here to talk you around and share her data table design secrets!
tags: datatables
cover_image: https://www.mindk.com/blog/wp-content/uploads/2019/10/feature-image-1-1920x1080.jpg
canonical_url: https://www.mindk.com/blog/better-data-table-design/
---
For business, software data is the most valuable asset. Without the ability to properly visualize and manipulate the data, it has zero value as it prevents users from making informed decisions. I decided to show where data table design steps into the breach and how it helps to fix this.

In 99% of cases when people work with data, they need to understand the whole set of information or a part of it, to compare different data parts and draw conclusions, to find required data units and to explore them further and to extract interesting data points from a wealth of information.

Just putting data into a table doesn’t help with any of these tasks.

The success of any system working with a large amount of data, combines the advanced collection of data and comprehensive representation focused on user experience (UX).

[Continue reading...](https://www.mindk.com/blog/better-data-table-design/)
Google's PageSpeed Insights API, C# version 
Tags: csharp, pagespeed, api, javascript
Published: 2019-10-24 09:31:41

Google's [PageSpeed Insights API](https://developers.google.com/speed/docs/insights/v5/get-started) offers solutions in cURL and JavaScript. Over on my github account there's a [C# implementation](https://github.com/axtens/PageSpeed). You still need an API key and what you get in return is still JSON. The parsing of that is left to the reader/user to implement.

In our case, we're only interested in a small subset of the data, so it works to use `Newtonsoft.Json.JsonConvert.DeserializeObject` on the JSON we receive and pull out what we need from a `dynamic`.

The project uses [RestSharp](http://restsharp.org/) for the retrieval.

Enjoy!
Completed Hacktoberfest!
Tags: hacktoberfest, beginners, opensource
Published: 2019-10-24 09:18:48

The first time I heard about Hacktoberfest, it was in 2017. I had very little knowledge about programming but since then I followed the event every year and learned step by step git and how to make a pull request.

Today I am a self-taught game developer, and when I look back after 3 years of personal development, I couldn't believe it could happen. This event not only pushed me to learn git, but I have also learned contribution and vision to open-source and community. 

So, this swag is a very milestone to prove myself and I'm proud of myself :) I'm looking forward to making more complicated PR and maybe my project to seek help from others. I want to thank you guys so hard and take good care, see you next year :)