teleren/devto huggingface dataset:
Hacktoberfest - the collaborators side
Tags: hacktoberfest, opensource, contributorswanted
Published: 2020-10-05 16:38:12

This is my first Hacktoberfest and I don't believe what I saw in just 1 week.

I've been a collaborator in `tldr-pages` project since August 25th, because I like to learn new stuff and share new commands and apps with the community.

{% github tldr-pages/tldr %}

The `tldr-pages` is a collection of community-driven man pages with 8 examples at most where the users can find quick examples for a given command, either for Windows, Linux and macOS.

Usually, when I find a useful command combination and can be published, I try to add it to the `tldr-pages` - instead I add an alias in my OS when it is only useful for me.

In non-hacktoberfest time, we have an average of 20 pull requests open and 5 contributions per week.

But the Hacktoberfest has begun, and we received 100 pull requests in a week!

![Contributors sending pull requests](https://dev-to-uploads.s3.amazonaws.com/i/eurc7oxxti0zq05638hi.jpg)

No, I don't! I'm not here to complain about this fest, because the 99.9% of the pull requests are useful. New commands, and a lot of translations to share the knowledge with people who don't read English.

I know it is easier to collaborate with `tldr-pages` than an application because you don't need to know the code to add a man page.

But, we have `tldr` clients in every language if you want to code:
- Haskell for Debian and the Ubuntu family.
- Python for Arch Linux.
- Nodejs for easy installations with `npm`.
- Rust.

I use Arch Linux and I feel the Python client more comfortable than the Haskell client used in Ubuntu.

And we have a linter for the pull requests: <https://github.com/tldr-pages/tldr-lint>.

![I can't sleep if I have new pull requests](https://dev-to-uploads.s3.amazonaws.com/i/cp7hbtq7efuy92bj5bzy.jpg)

Please come and help with examples for obfuscated commands, or keep translations from the English pages up to date, even when this fest is over.
We may take some time to answer, as there is a lot of review work ahead!
Rotate Linked List with javascript (LEET CODE)
Published: 2020-10-05 16:35:13

**Problem**:-
Given a linked list, rotate the list to the right by k places, where k is non-negative.

Example 1:

Input: 1->2->3->4->5->NULL, k = 2
Output: 4->5->1->2->3->NULL
Explanation:
rotate 1 steps to the right: 5->1->2->3->4->NULL
rotate 2 steps to the right: 4->5->1->2->3->NULL
Example 2:

Input: 0->1->2->NULL, k = 4
Output: 2->0->1->NULL
Explanation:
rotate 1 steps to the right: 2->0->1->NULL
rotate 2 steps to the right: 1->2->0->NULL
rotate 3 steps to the right: 0->1->2->NULL
rotate 4 steps to the right: 2->0->1->NULL

**Algorithm**:-
Step 1 :- First we will find the length of linked list by traversing through it.
step 2:- after traversing through linked list we are at tail node
step 3:- connect tail node to head node 
step 4 :- comparing the length of linked list with passed rotation value(k) 
step 5:- after comaring it with k we will get new length to get new rotated linked list 


**SOLUTION**:-

var rotateRight = function(head, k) {
    if(head == null || k == 0){
        return head
    }
    let i = 1
    let tail =head
    while(tail.next != null){
        i++
        tail =tail.next
    }                   //i = 5(length of list)
    if(k == i){
        return head
    }
    while(k > i){
        k = k - i 
    }
    let j = i-k // j = 5-2
    tail.next =head;
    let newTail = tail;
    
    while(j-- > 0){
        newTail = newTail.next
    }
    let newHead = newTail.next
    newTail.next = null;
    return newHead
    
};
A Journey to Become a Web Developer - When To Learn GIT
Tags: webdev
Published: 2020-10-05 16:34:40

<!-- wp:paragraph -->
<p>The big question: When to learn GIT? My answer is as soon as you start working on your own projects. Why? I will answer that in a bit. First I would like to talk about what GIT is.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2>What is GIT?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>"<em>Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. Git is easy to learn and has a tiny footprint with lightning fast performance</em>"</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>This is is taken from the GIT <a href="https://git-scm.com">website</a>. But what does it mean? Let me try and explain. GIT is a tool that you use to help manage project version control. Version control, in basic terms, is keeping track of changes to your project. Not only will it keep track of the changes you make, you can revert back to a previous state of your project (GIT has saved me a number of times with this one).</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>It is also a must have tool to use when working with other developers.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2>Why is it so important to learn early in your journey?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>I have two reasons why I think it is important to get to grips with the basics of GIT early on. </p>
<!-- /wp:paragraph -->

<!-- wp:list {"ordered":true} -->
<ol><li>It helps keeps track of your projects. If you make an error or bugs appear that you can not fix, you can effectively go back in time to before the error/bugs and try again.</li><li>The earlier you start the more practice you get. This is important if you plan to work with other Devs as a hobby or as a day job.</li></ol>
<!-- /wp:list -->

<!-- wp:heading -->
<h2>Where to Learn GIT</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>There are hundreds of blogs and videos on GIT and there is also the official <a href="https://git-scm.com/doc">documentation</a>. I found a good starting place for me was this <a href="https://www.youtube.com/watch?v=SWYqp7iY_Tc">crash course</a> on YouTube by Brad Traversy.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>So that is it.  My thoughts on when and why you should learn GIT. So go out there, get a handle on the GIT basics and build some simple websites with HTML, CSS and GIT, and I will see you next time. Until then, don't forget to follow me on Twitter @MikePageDev, and - keep coding!</p>
<!-- /wp:paragraph -->
5 reasons to use a Design System
Tags: design, ux, webdev
Published: 2020-10-05 16:27:27

## What is a Design System?

*A Design System is a collection of reusable UI components with documented norms and standards.* 

This collection includes: 
* Color Palettes
* Typography
* Imagery
* Iconography
* Motion
* Layouts
* UI components, including code snippets.
* Documentations

## Examples
* [Material Design](https://material.io/design/)
* [Fluent Design](https://www.microsoft.com/design/fluent/#/)
* [Uber](https://brand.uber.com/)
* [Spectrum](https://spectrum.adobe.com/)

## Benefits

#### Documentation

From typography to UI components, in a Design System everything is documented. It is considered to be the only truth that developers can refer to when creating new UI's. 

#### User experience

Having a unified UI and UX concept for all the products of a company improves user experience. The things a user has learned about the interface of one product also apply to the other products. 

#### Development speed

The strict guidelines and the shared library of reusable components improves development speed when building new products and interfaces. 

#### Branding

Obviously, a Design System allows consistency in branding across all platforms of a company.

#### Scalability

A Design System allows a company to expand their products while maintaining a consistent concept.
It is a completely independent project with components and documentations that can be used in the conception and maintenance of different products of a same brand.

## Should I use one?

A Design System is only useful for companies working on multiple products for single brand. When working on a single project that will never scale (e.g. a personal website) a Design System does only complicate the development process. 

## Tools

- [Storybook](https://storybook.js.org/) (my favorite)
- [Fractal](https://fractal.build/guide/)
- [Docz](https://www.docz.site/)
- ...
Installing Ghost Locally.👻
Tags: ghost, cms, webdev, javascript
Published: 2020-10-05 16:16:07

In this post I will guide you how to install ghost locally.

With `npm install ghost-cli@latest -g` we will first install ghost cli and we will use it to intall ghost locally. We need to run this command once only.

Then go to the directory where you want to install ghost and enter the following command:

```
ghost install local
```

It will install ghost and download npm packages so don't freak out it may even take 5-6 minutes, it tests your patience.

Then when it is done then to run ghost type `ghost start` and open [http://localhost:2368](http://localhost:2368).

You are done 😊.

To stop server run command `ghost stop`.

Thank You.
How to get parts of an typescript interface
Published: 2020-10-05 16:15:57

Today i wanted to extract a part of an already existing complex typescript type or interface.

It's very difficult to google something when you don't know what to search for. This post will help you if you have one of these questions:
- How to get a nested type?
- How to get parts of an interface?
- How to get type of array elements?
- How to extract optional properties of a type?

I searched for this by myself and was not happy with the results.


### So let's start
Let's say we have this type:
```ts
type Person = {
    name: string
    age: number
    // nested object
    address: {
        street: string
    }
    // nested array
    tags: string[]
    // optional object
    info?: {
        eyeColor: string
    }
}
```



### Extract basic parts

To extract specific parts of this type we can use [lookup types](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-1.html#example-1)

```ts
type Name = Person["name"]
type Age = Person["age"]
type Address = Person["address"]
// deeply nested access is also possible
type Street = Person["address"]["street"]
```

### Extract type of array elements

To get the type of an typed array like `tags` we can use the lookup type for arrays:

```ts
type Tag = Person["tags"][0]
```


### Optional properties

But how get the type of optional properties like `info` correctly? Let's say we want the type of `eyeColor`. To get base type of optional types properties correctly we have to use [`NunNullable type`](https://www.typescriptlang.org/docs/handbook/utility-types.html#nonnullabletype)  

```ts
type Info = NonNullable<Person["info"]>
type EyeColor = Info["eyeColor"]  // string
```

### Get type from Array values

```ts
const languages = ['de', 'en', 'fr', 'it'] as const;

// extract type from languages above
export type Language = typeof languages[number]; // same as de" | "en" | "fr" | "it"
```

### Final thoughts

Another day for me with more typescript enlightenment 😆. Hope this post can help you as well.
update macOS mojave to latest version on vmware
Published: 2020-10-03 07:54:42

I am even thinking that most of the people confront issue while installing macOS on their Mac

Download Price: Free
Time to download: depend upon the internet speed.
version: macOS Mojave.
latest version: macOS Big Sur.

https://www.apple.com/macos/big-sur-preview/

[img]https://live.staticflickr.com/65535/50403679493_11f35e3131_w.jpg[/img]

[img]https://live.staticflickr.com/65535/50370918958_d7a9a3ddfd_b.jpg[/img]
https://techvatan.com/upgrade-macos-mojave-on-vmware-to-latest-version/   https://techvatan.com/remove-uninstall-application-in-macos-mojave/

[img]https://live.staticflickr.com/65535/50403679823_f790c8b3d1_b.jpg[/img]

[img]https://live.staticflickr.com/65535/50403679493_11f35e3131_w.jpg[/img]

[img]https://live.staticflickr.com/65535/50404538872_70ae8941a9_z.jpg[/img]

operating system observations. due to the conformation of macOS. there are two top-order operating systems. in the world. One is called macOS and the other is Windows OS. So, therefore, we have to tow top Operating systems tow. however, there are also many other operating systems in the world such as Linux ubuntu, parrot, and so on.
uninstall apps on macOS Mojave on virtual machines.
uninstall macOS Mojave applications 
uninstall applications on macOS Mojave 10.14 uninstall apps on macOS
macOS 11 macOS 10.15, macOS 10.14, macOS Mojave, macOS Mojave latest version., 
macOS Mojave to Catalina, upgrade macOS Mojave to the latest version.
update macOS Mojave, macOS 10.14 macOS Mojave.
DDD DDD DDD
gfffffffffff
eeeeeeeeeee eeeeeeeeeee 2345364576 3454 454 54 54 54 523 4523 462 3463 462 623 4623 4634 56 456234 5
 how to remove applications on macOS Mojave, uninstall applications on macOS Mojave,  macOS big sure, macOS Catalina, macOS Capitan, 
 the installation of macOS big sur is not so difficult. However, we know that it is time to install it. but first of all, you need to download the dmg file. f
34234
423 423 4234 235 345 4 665 756 74 5672 345
windows 10, macOS windows remove applications on the operating system. uninstallation of apps on the operating system. remove apps on apps. upgrade the operating system to the latest version. update macOS Mojave to latest version. upgradeing operating system to latest versions
“What DevOps and Parenting Have in Common” with Dawn Parzych of LaunchDarkly
Tags: devops, parenting, engineering, optimization
Published: 2020-10-05 16:15:18

Two things converged in Dawn's life at the same time: DevOps and parenting. As she learned about various DevOps principles, Dawn realized I could also apply them to my parenting strategies. Hear Dawn share stories over the last six years about how DevOps frames her parenting adventures.

Happening on October 6 at 10am Pacific Time.

**Register here:** https://lu.ma/dawn-parzych-1006
Git Revert to certain point in history in remote repo
Published: 2020-10-05 16:13:29

I am working on a project in which I pushed several commits (more that 10 commits) to master. For some reason I need to revert to the 11th commit back and make that head at master(Jenkins is listening at master), I have no idea the best way to do this coz I have seen some comments warning of a possibility that the repo could be rendered unfunctional...
Will realy appreciate any hint from someone who atleast understands abit of this coz am kinda noob to git/github
Nische finden und Domain wählen für die neue Website - Teil 2
Tags: wordpress
Published: 2020-10-07 15:03:49

---
title: Nische finden und Domain wählen für die neue Website - Teil 2
published: true
date: 2020-10-05 16:13:05 UTC
tags: Wordpress
canonical_url: https://j0e.org/nische-finden/
---

![Nische finden](https://j0e.org/wp-content/uploads/2020/10/nische-finden.png)

 Nun müssen wir erst mal eine Nische finden! Im ersten Teil dieser Website erstellen Serie …

[Nische finden und Domain wählen für die neue Website - Teil 2 Weiter Lesen »](https://j0e.org/nische-finden/)
Flask For Beginners 🍾
Tags: flask, python, webdev, beginners
Published: 2020-10-05 16:02:02

# What is Flask ?

**Flask** is a **micro** framework made in python language. It is a minimalistic framework. It is a micro framework but it can build full fledged apps like other made by Django. 

A simple flask server is as follows :

```
from flask import Flask # Importing Flask from flask

app = Flask(__name__) # Initializing Flask 

app.route("/")  # Routing Flask
def Home():
    return "Hello World"

if __name__ == '__main__':
    app.run(debug=True) # Running Flask Application

```

It is super simple to use. It can get full fleged framework by using libraries below, 

1. Flask Login for authintication.
2. Flask-SQLAlchemy for ORM like Django.
3. Flask-WTF for forms.
4. Flask-Mail for STMP Mails.
5. Celery for background tasks.

That's it. 😊

**Thank You**

---

You can checkout this complete series here :
{% post https://dev.to/ketanip/flask-for-beginners-5h5j/ %}
{% post https://dev.to/ketanip/routing-in-flask-23ff %}
{% post https://dev.to/ketanip/templating-in-flask-3hbo %}


---
Too Old To Be In Tech?
Tags: career, inclusion, discuss
Published: 2020-10-05 15:42:03

I’m in my 50’s and have been working as a software engineer for 11+ years now. I believe you can do anything if you have a passion for it. 

Let's talk about ageism in tech ; it’s rampant among hiring managers, recruiters and team leaders. That being said, I know many people in tech who focus on getting the job done - not how old their teammates are.

I’ve been out of work since this pandemic started and interviewing has been a nightmare.
**Here are some of the red flags of ageism I've seen in the interview process:**

First interview is a video interview
The focus is on regurgitating algorithmic computations - not on the technologies you will work with
They request a photo
The job description asks for “recent graduates”
Requesting graduation dates in the education section of the application
Its a start-up and they ask you if late night office parties will be a problem
They ask you how old your children are
The video interview includes the entire team and one person who is your age & gender

**Here are a few that are out and out illegal:**
Are you married?
How old are you?
Are you healthy?
When did you graduate?
When do you expect to retire?

If this sounds like I know a bit about this, its because I’ve been looking for a job for 8 months now and I’ve experienced all of it.

I have thought about consulting and freelancing as an alternative and that may be the direction I have to go in now. I’ve been successfully contributing to software development for more than a decade with some great work especially in online education and accessibility platforms.

It seems like no one values my experience. The attitude is what work did you do today? Which is fine, if you ask me to make an app; but if you want me to whiteboard some nebulous code to show you I understand a binary search - its not going to be a barometer to show what I can do as an employee.

Okay, rant over.

I love my work and as messed up as this issue is for people in my age group, I don’t let anyone tell me what I can do with my life. If I want to stick with it I will because it’s my life. No one tells me when it's time for me to quit except me. Opportunities are out there and I will find the right ones for me.
How to create your own middleware for User Role in Laravel without using a package?
Tags: laravel, middleware, php
Published: 2020-10-05 15:31:24

## Step 1

create a middleware for role checking logic

```cmd
~$ php artisan make:middleware RoleChecker
```
## Step 2

`Middlewere/RoleChecker.php`

```php
public function handle($request, Closure $next, $super_adminRole, $adminRole,  $sellerRole)
{
    $roles = Auth::check() ? Auth::user()->role->pluck('name')->toArray() : [];

    if (in_array($super_adminRole, $roles)) {
        return $next($request);
    } else if (in_array($adminRole, $roles)) {
        return $next($request);
    } else if (in_array($sellerRole, $roles)) {
        return $next($request);
    }

    return Redirect::route('home');
}
```
> In the above code we assume that there are 4 types of users. **Super Admin**, **Admin**, **Seller** and **Normal Auth User**. We don't need to check the normal users in the middleware. So we are checking the remaining three **Roles**.


## Step 3

`Kernel.php`

```php
protected $routeMiddleware = [
    'roleChecker' => \App\Http\Middleware\RoleChecker::class,
];
```

> Here we added the middleware

## Step 4

`web.php`

```php
middleware(['roleChecker:super_admin,admin,seller']);
middleware(['roleChecker:super_admin,null,null']);
middleware(['roleChecker:null,admin,null']);
middleware(['roleChecker:null,null,seller']);

```

> Use any of above code snippet to set middleware on any **Route**

## Note

- When you set null to any of these three roles, it means, that role is restricted. So if `middleware(['roleChecker:null,null,seller']);`, Then only seller can access...

Thanks... Share...
Beginner Guide to Pop!_OS, Make it your own!
Tags: linux
Published: 2020-10-05 15:29:09

I've been suggesting **Pop!_OS** to users wanting to switch to Linux. The reason being it uses the Ubuntu LTS base which is stable and there are a ton of articles available for ubuntu on the web.

There is an awesome company behind Pop which is System76. They provide updates of various packages faster than ubuntu and their developers simply made perfected ubuntu for everyone.

There is one problem though. After a fresh install of Pop!_OS the desktop users get is just a blank window. This might put away some new users because they are either used to a dock or taskbar.

So here is a simple guide for any beginner trying out Pop.

# Prerequisites 
### Do these before proceeding further
1. Install gnome-tweaks​. Open terminal and enter this command.

    `sudo apt install gnome-tweaks`
2. Install gnome-extension addon for firefox.
   1. Open Firefox
   2. Go to ​[gnome-extension](https://extensions.gnome.org/)​, there will be a message on the top asking to install addon. 
   3. Click and install it.

# Enable Minimize & Maximize buttons
There is no minimize and maximize button in Pop. Let's enable it.

1. Open gnome-tweaks that we installed earlier.
2. Click on **Windows Titlebars** option in left menu.
3. Enable minimize and maximize button.

# Taskbar
If you want a taskbar then install ​ [dash to panel](https://extensions.gnome.org/extension/1160/dash-to-panel/)​

### For a traditional start menu:
1. Open terminal and type this command

     `sudo apt install gnome-shell-extensions`
2. Install [ArcMenu](https://extensions.gnome.org/extension/3628/arcmenu/)

# Dock
If you want a dock like in ubuntu or macOS then install ​ [dash to dock](https://extensions.gnome.org/extension/307/dash-to-dock/)​

# Final words
Keep tinkering the settings available in gnome-tweaks and other extensions. You'll make your Linux look exactly how you want it.
Demystify Apache Spark with Azure Synapse Analytics
Tags: azure, database, datascience, bigdata
Published: 2020-10-05 15:18:36

#### 📺 034 - Adi Polak 🎙️ Jason Hand

{% youtube VKWa7tnw3g4%}

Spark is the leading Big Data analytics framework. However, it also has excellent features for Stream processing and machine learning development. Big Data systems are a new reality. Whether we're creating microservices-based solutions or machine learning-based products, we work with data, most often, big data. Apache Spark is your friend if you want to position yourself on the road for success as a Big Data Developer, Data Engineer, or Data Science with hands-on production experience. Come to this session to learn the basics of Apache Spark and how YOU can get started with it.

By attending this session, you will learn how to get started with Apache Spark, it’s capabilities, what Spark pools are and how to take advantage of Spark pools in Synapse Analytics. 

### Useful Links

🔗 [Azure Synapse Analytics](https://docs.microsoft.com/en-us/azure/synapse-analytics/sql-data-warehouse/?WT.mc_id=allaroundazure-devto-adpolak)

🔗 [Learn Module: Spark architecture fundamentals](https://docs.microsoft.com/en-us/learn/modules/spark-architecture-fundamentals/?WT.mc_id=allaroundazure-devto-adpolak)

🔗 [Learn Module: Introduction to Python](https://docs.microsoft.com/en-us/learn/modules/intro-to-python/?WT.mc_id=allaroundazure-devto-adpolak)

### Learn more about Adi Polak

🔗 [@adipolak](https://twitter.com/adipolak)

### Find Us On

📺 [Twitch](https://www.twitch.tv/microsoftdeveloper)

🔗 [Twitter](https://twitter.com/jasonhand)

☁️
Annnd., completed ! 🤩
Tags: hacktoberfest, discuss, beginners, opensource
Published: 2020-10-05 15:00:30

**Hello, Opensourcer** 👋

How is your _Hacktoberfest 2020_ going?
I have completed my entries for this year.
Really looking forward to getting approved ✅

Do share your entries in the comments.
You can organize your PRs [**here**](https://hacktoberfestchecker.jenko.me/)

You can check mine ▶  [TechLead-21](https://hacktoberfestchecker.jenko.me/user/TechLead-21)

> Also, I have completed my **10,000** posts views on DEV.to 🤸‍♂️✌