teleren/devto huggingface dataset:
If you’re at a professional crossroads, this software engineering training might help.
Tags: softwareengineering, training, sanjeevnanda
Published: 2020-05-02 07:26:23

TLDR: You can embark on a path to a lucrative new career with the training in The Complete Introduction to Software Engineering Bundle.

From transportation to commerce to hospitality, entire industries in the U.S. and abroad are all suffering deep across-the-board losses in the wake of COVID-19 after effects.

While many industries face uncertain futures, software development and engineering isn’t likely to be one of them. Technology and the web is more vital now than ever, with software already supporting one in every 10 American jobs. With the average software developer making $114,000 a year —more than twice the annual U.S. salary for all jobs — it’s definitely a career worth exploring for anyone looking to transition into a new line of work.

You can get the broad overview training needed to break into this lucrative field with the instruction in The Complete Introduction to Software Engineering Bundle. It’s on sale now from TNW Deals for just $59.99, hundreds of dollars off the regular price.

This package of 13 beginner-level courses can help anyone with designs on a software career get started. 

First, a handful of bedrock courses start exploring core engineering areas, including then fundamentals of web design and electronics.

Of course, no programmer is truly ready to create without a wealth of coding language knowledge — and this bundle features no less than six courses each focused on a different programming discipline. 

The instruction on uber-popular languages like Java and Ruby work nicely with deep delving into more fringe coding frameworks like Perl, Rust and Lua, allowing students to more clearly see where each can best be used throughout the development process. Meanwhile, training in the use of NodeJS and AngularJS helps expand the possibilities for using old-school languages like JavaScript and HTML in new dynamic ways.

Read More @ https://thenextweb.com/offers/2020/04/04/if-youre-at-a-professional-crossroads-this-software-engineering-training-might-help/
GRAIL Appoints Satnam Alag as Senior Vice President of Software Engineering
Tags: softwareengineering, sotwsurvey, sanjeevnanda
Published: 2020-05-02 07:25:06

GRAIL, Inc., a healthcare company whose mission is to detect cancer early, when it can be cured, today announced the appointment of Satnam Alag, PhD, as Senior Vice President of Software Engineering. In his new role, Dr. Alag will be responsible for providing the leadership, strategic vision, and operational execution for GRAIL’s software teams. 

 “We are very pleased to welcome Satnam, who brings extensive experience in designing, building, and leading software systems within the genomics space,” said Matthew Young, Chief Operating Officer and Chief Financial Officer at GRAIL. “Satnam will drive the development and execution of GRAIL’s software strategy, and will be a tremendous asset as we advance our multi-cancer early detection test with the ultimate goal of decreasing cancer mortality.”

“GRAIL is a truly innovative company that is leveraging the convergence of advances in genomics and machine learning to transform healthcare through the early detection of cancer,” said Dr. Alag. “I'm thrilled to join GRAIL and lead its best-in-class software engineering team. I look forward to supporting the development of its multi-cancer early detection test, and being part of the transition from screening for individual cancers, to screening individuals for all cancers.”

Dr. Alag joins GRAIL from Illumina, where he most recently served as Vice President of Software Engineering, Product Development. Over his tenure, Dr. Alag led the development of most of Illumina’s cloud software products and oversaw Illumina's cloud product security, privacy, and clinical compliance. Prior to this, he was the Chief Technology Officer at NextBio, a big-data platform that aggregates and analyzes large quantities of phenotypic and genomic data that was acquired by Illumina in 2013. 

Dr. Alag has also served in other senior software architecture positions, including as the Chief Software Architect at Deem. Dr. Alag, who holds five AWS certifications, has approximately 24 years of software development experience, including in genomics and healthcare, with expertise in SaaS, machine learning, and clinical-grade software development. He is the author of the book “Collective Intelligence in Action” published by Manning. He received a BE (HONS) from Birla Institute of Technology and Science (BITS), Pilani, an MS from Rutgers University, and a PhD from the University of California, Berkeley. 

Read More @ https://www.businesswire.com/news/home/20200429005403/en/GRAIL-Appoints-Satnam-Alag-Senior-Vice-President
I just published my first npm package. It's a dates-generator for javascript.
Tags: javascript, react, vue, angular
Published: 2020-05-02 07:10:56

---
title: I just published my first npm package. It's a dates-generator for javascript.
published: true
description: I have just published my first ever npm package. I have created a package which generate a dates for a given month and year.
tags: javascript, react, vue, angular
cover_image: https://static.npmjs.com/338e4905a2684ca96e08c7780fc68412.png
---

I have recently encountered a problem when developing my app using React Native. My team UI/UX designer come up with totally customise-able calendar UI. I have been looking through few calendar and date picker library and end up it is not what I exactly wanted to develop the calendar.

So I decided to develop a custom calendar by my self. This calendar is more customisable than ever. By creating this custom function to generate the calendar, I was able to achieve everything that my designer wanted. From the UI to logic. Everything is customised and you can achieve anything when you are in full control.

Here is the customised UI I develop

<img src="https://dev-to-uploads.s3.amazonaws.com/i/n3wf5unsax68gas1jem8.png" width="300">


If any of you are interested in making a custom calendar or date picker. You guys may try this out.

I have published the NPM package here [https://www.npmjs.com/package/dates-generator](https://www.npmjs.com/package/dates-generator)
Book review: It’s About Damn Time
Tags: startup, books, inclusion, womenintech
Published: 2020-05-02 06:59:17

**Heuristics:** If I can concentrate on reading a business book during *the great lockdown of 2020*, it must be good! 

And yes, Arlan Hamilton's unexpected journey ([It's About Damn Time](https://www.itsaboutdamntime.com), 2020) to venture capitalist, was a catching read. She started with her resourcefulness and practically without any money, and is now investing in high-potential founders who are people of color, women, and/or LGBT.

Arlan writes that she wrote this book for **mentoring** others like her - the book is for anyone, who wants more than society has allotted for them. Book is also for allies - for those who want to understand how diversity can be our greatest superpower.

And yes, I did get mentoring. And what was great - advice given in the book didn't felt patronising (that is something I find difficult in some self-help books). Arlan's story is about being resourceful and honest and building on top of what you already have. She gives insights into many topics, such as how to handle getting no's, stage fright, importer syndrome, substance abuse, taking care of yourself, and what venture capitalists are looking for when they make their investment decisions. 

The book is funny, and also very queer. I felt warm feelings when seeing chapter  "Shane is my homegirl" (Shane is one of the main characters in the iconic TV show The L Word that was aired when I came out from my lesbian closet in the mid-2000s):

![Screenshot from Instagram story: book reader in hand.](https://dev-to-uploads.s3.amazonaws.com/i/aqzqxjpscm6xsbyj4rfh.PNG)
**To whom I recommended the book:**
- To someone, who is dreaming of going big and longes for an inspirational read
- For those, who know their privilege and are maybe little ashamed of that. Book does not shame or blame but gives insights into how that privilege can be used for good.


To read more reviews, check [Goodreads](https://www.goodreads.com/book/show/49646727-it-s-about-damn-time).

(I got my copy of the book by participating in a book launch team.)
30 Days of API Testing  - Learn API Testing Even As a Complete Beginner.
Tags: tutorial, beginners, webdev
Published: 2020-05-02 06:00:19

In this series of 30 Days of API Testing - Introduction, We are going to start a 30 API testing challenge.

You are going to learn the about the concepts of API, API testing, web services, and HTTP Methods basics which are helpful in API testing interview questions. you will learn about everything API Testing Using Postman, SOAPUI, PAW, and many more API Testing Tools in these 30 Days.

[![30 Days of API Testing](https://i.imgur.com/NgNhg2q.png)](https://youtu.be/apoxlzW2abg "30 Days of API Testing")


Master API Testing(Full Course) -  https://www.learnapitesting.com

--
Be sure to subscribe for more videos like this!

[![ TheTestingAcademy](https://dev-to-uploads.s3.amazonaws.com/i/r7vcy6wbvyjbk1y1uu0o.png
)](https://www.youtube.com/TheTestingAcademy?sub_confirmation=1 "TheTestingAcademy")
OAuth with Fastify
Tags: fastify, oauth, google, rest
Published: 2020-05-02 05:39:10


I was recently trying to setup authentication using OAuth2 for the first time and chose my fastify as my web server. Honestly the amount of information about OAuth on the web is huge and some of it is obsolete, hence this post.

**Pre-requisite**
 - Register your app at Google Cloud Platform 
 - Enable the Google+ API
 - Generate credentials - Client ID, Client secret 
 - Setup the authorized origin(front-ends) and redirect(server-routes) URIs like so:
![Google OAuth](https://lh3.googleusercontent.com/WH6PWr5_WF8uW9DBnWho1XWKtUhfVRHTYZQkPoTLrcqdMExtVRnNcSqwnxCQFMsFaB9SwleGbo8vZfbZcIMOgHZbhKtVT7L4vjJ883UoHTeqj_ex-DJj9NHlAf9pM8fJIeHzNMawHg=w754-h495-no)

**User-interface**
Serve a basic HTML page on port 3002. Tip: use [Live server](https://www.npmjs.com/package/live-server) for a quick start.

    <body>
	    <!-- Fastify server runs on localhost:3000 -->
	  	<a href="http://localhost:3000/api/auth/google>
		  	Google Login
	    </a>
    </body>

**Setup**
Install the fastify plugins required

    npm i fastify-cors fastify-oauth2

Create a fastify server

    const fastify = require("fastify")({});

Register the CORS plugin

    fastify.register(require("fastify-cors"), {
    	origin: "*" // allow all origins (BAD)
    });

Regster the OAuth2 plugin (using Google OAuth in this example)

    const oauthPlugin = require('fastify-oauth2');
    
    fastify.register(oauthPlugin, {
	    // Can be any valid variable name you prefer
	    // Fastify instance will now have this as a property
    	name: 'googleOAuth2', 
    	
    	// Gets user's full name, email and profile picture URL
    	scope: ['profile email'], 
    	
    	credentials: {
    		client: {
    			id: process.env.GOOGLE_OAUTH_CLIENT_ID,
    			secret: process.env.GOOGLE_OAUTH_CLIENT_SECRET
    		},
    		
    		// plugin-provided configurations for Google OAuth
    		auth: oauthPlugin.GOOGLE_CONFIGURATION, 
    	},
    	
    	// This is automatically registered as a 
    	// GET route in your app
    	startRedirectPath: '/api/auth/google', 
    	
    	// Can be a relative path that serves HTML 
    	// or an absolute URL to your front-end app
    	callbackUri: 'http://localhost:3000/api/auth/google/callback'
    });

Register a route where Google will callback (send the response)

    fastify.get("api/auth/google/callback", {}, async  function (req, res) {
	    // Fastify instance gets decorated with this method on OAuth plugin initialization
	    const token =  await fastify.googleOAuth2.getAccessTokenFromAuthorizationCodeFlow(req);
	    
	    console.log({ token }); // Just for debugging

	    // Redirect to a route serving HTML or to your front-end
	    res.redirect("http://localhost:3002/?token="  + token.access_token)
    })


*And that's it!*
Start the server. Launch the UI in a browser and click the link.
Join my startup 
Tags: statup, android, graphics, webdev
Published: 2020-05-02 05:35:40

Huury up! 

I am going to form a startup.

For this I require 
android app developers
Database manager 
Artificial intelligence worker
Graphics related person. 

If anybody want to join me as partner. 
E-mail me: intelligentsiahub@gmail.com

email me with your 
name, 
phone number, 
skills,
Experience

Unexperienced persons are also most welcome
JavaScript values are data
Tags: javascript, value, data, basics
Published: 2020-05-02 05:24:37

 This is one of the most important things if you arrive at JS world: there are only **two (2) main types of values**:
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/6wobsho1eo9q9a8pu5yy.png)


For both **primitives** and **objects** there are sub-types, let's expand our vision a little more:
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/lavtmoogg9l26mzutho4.png)
There is no specific reason in the order for JS, I just order it that way because is the way I use to remember all of them: **BUSN** (boolean, bigint, undefined, string, symbol, null, number)


#### What about objects?
Well, we can say that everything else is an object or derive from an object.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/pbrl1m9t9ps62vitn4fl.png)

Functions like arrays are a special kind of object (sub-types).

#### Datatypes
You can check the type of a value using the `typeof` operator.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/4w36ogzjt3gkaosusalw.png)

There are two "wild" data types that can be confused:
**functions** and **null**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/tumwxmn3yaqjivpf48hs.png)

As I mention before **functions** are special kind of object. In this particular case *function* is a shorthand response; at the end of the day, the Function constructor is derived from Object constructor.

The case of the **null**, well this is a little tricky one... I'm going to let that homework for you.

#### Conclusion
* There are 2 main value types in JS: *primitives and objects*.
* There are 9 sub-types: *(BUSN) boolean, bigint, undefined, string, symbols, numbers, null, objects and functions*.

> The latest ECMAScript standard defines nine types.

That's All Folks, hope you learn and enjoy it.
Hello, Cloud 2!
Tags: 100daysofcode, 100daysofcloud, gads, cloud
Published: 2020-05-02 04:32:32

1,4.
My 4th day of #100DaysofCloud.

Today I learnt about GCP App Engine from the intermediate course Architecting Scalable Web Applications Using Google App Engine on pluralsight.
Python and Flask(Which I have no experience with) came in handy.
🎵 Productivity / Focus / Brain Music and It's Effect
Tags: discuss, music, productivity, focus
Published: 2020-05-02 04:28:53

Dev community!

**How many of you listen to music for productivity, focus, brain stimulation? Share your experiences and opinions on this subject.**

Here are some services that I know.
## 1. [Listen on repeat](https://listenonrepeat.com/)

> In her book, On Repeat: How Music Plays the Mind, psychologist Elizabeth Hellmuth Margulis explains why listening to music on repeat improves focus. When you're listening to a song on repeat, you tend to dissolve into the song, which blocks out mind wandering (let your mind wander while you're away from work!).
> [source](https://www.inc.com/benjamin-p-hardy/this-music-is-incredible-for-focus-creativity.html)


## 2. [brain.fm](https://www.brain.fm/)

They are using [science approach](https://www.brain.fm/science) to create different music that affects the brain in the way you need.

## 3. [Focus music for productivity and concentration]( https://www.youtube.com/playlist?list=PLnOC9rlyvdSkWQt5YqEsVJKzrsvfnid_-)

One of many channels on YouTube that claim that their music affects creativity, productivity, focus, and mental state.

---

**What your thoughts on this?**
Run debug and production react native app on same phone.
Tags: reactnative, android
Published: 2020-05-02 04:03:44

When developing a mobile application in react native, we can use our phones to test the debug build. Sometimes, meeting the client, we have to build production (release apk) and show him or her. Building and installing this production release means we have to uninstall the debug from our phones. 

This article shows a simple way to be able to have the same app installed twice on your device; one production release and one debug release. 

This article is based on the assumption you already have a react-native project created / cloned from github. 

1. Go to your **'android/app/build.gradle'** 
2. Locate the line which contains the app id, example ```applicationId "com.xxxxxx"``` 
3. Change the app id to any name, good example is using adding a .debug, eg ```applicationId "com.xxx.debug"```
4. Not a must but you can locate`android/app/src/main/res/values/string.xml` and change the name of the app `<string name="app_name">Digital Renter</string>` to `<string name="app_name">MyAppName.Debug</string>`

Now each time you run android, it will install a fresh new application, not overriding any production release you have installed giving you both debug and production on same phone.
Playing with NCurses Cursor (Part 2)
Tags: cpp, linux, ncurses
Published: 2020-05-02 04:14:28

Hey there, if you haven't read [Part-1](https://dev.to/tbhaxor/introduction-to-ncurses-part-1-1bk5) of this series, I would suggest you read it first.

In ncurses, a **screen** is described by x, y coordinated graph in the ncurses, and by default cursor is at (0, 0) or the top left corner.

To move cursor you should use move(int y, int x);  function declared in ncurses.

For example &rarr; _print hello world at `y = 10`, `x = 20`_

```cpp
move(10, 20);
printw("Hello World!!");
refresh(); // you should do this frequently, to flush changes from memory to screen
```

The operation of **`move` and `printw`** is combined in one function is **`mvprintw`**

```cpp
mvprintw(10, 20, "Hello World!");
refresh();
```

**Note:** To clear screen you must use **`clear()`** function followed by **`refresh()`**.

```cpp
#include <ncurses.h>
using namespace std;

int main (int argc, char ** argv)
{
	initscr();

	// moving cursor, x = 20, y = 10
	move(10, 20);

	printw("I am here...");

	move(21, 10);
	printw("Now i am here");

	refresh();
	getch();
	endwin();
	return 0;
}
```

![](https://i.ibb.co/znyt9Rm/image.png)
Run debug and production react native app on same phone.
Tags: reactnative, android
Published: 2020-05-02 04:05:33

When developing a mobile application in react native, we can use our phones to test the debug build. Sometimes, meeting the client, we have to build production (release apk) and show him or her. Building and installing this production release means we have to uninstall the debug from our phones. 

This article shows a simple way to be able to have the same app installed twice on your device; one production release and one debug release. 

This article is based on the assumption you already have a react-native project created / cloned from github. 

1. Go to your **'android/app/build.gradle'** 
2. Locate the line which contains the app id, example ```applicationId "com.xxxxxx"``` 
3. Change the app id to any name, good example is using adding a .debug, eg ```applicationId "com.xxx.debug"```
4. Not a must but you can locate`android/app/src/main/res/values/string.xml` and change the name of the app `<string name="app_name">MyAppName</string>` to `<string name="app_name">MyAppName.Debug</string>`

Now each time you run android, it will install a fresh new application, not overriding any production release you have installed giving you both debug and production on same phone.
Landing Wave
Published: 2020-05-02 03:45:52

On my way to continue improving my skills he made this beautiful landing following the tutorial of [AlexCG Design](https://www.youtube.com/watch?v=HH_SMpxV7qQ)  on youtube.

It is always important to recognize your teachers ❗

## 💡 Learning of the day:
### 1.Effect header
I discovered that this property existed

`Background attachment: fixed;`

This property allows me to effect the scrool on the image.

The background image will be fixed on the screen and will not move with the container block.

![Con titulo](https://user-images.githubusercontent.com/32285482/80853216-78038880-8bf4-11ea-8062-51ed588f4620.gif "Header")

### 2.Wave
The wave figure shown in the header was created with SVG. There is a resource to generate these figures and can be found at this link: [Generador de Wave](https://smooth.ie/blogs/news/svg-wavey-transitions-between-sections)

Here you will find tools to create quickly and easily and also gives you the html code. !It is a wonder!

~~~
<div class="wave" style="height: 150px; overflow: hidden;">
    <svg viewBox="0 0 500 150" preserveAspectRatio="none" style="height: 100%; width: 100%;">
    <path d="M0.00,49.99 C287.25,161.94 349.20,-49.99 500.00,49.99 L500.00,150.00 L0.00,150.00 Z" style="stroke: none; fill: #fff;">
    </path>
  </svg>
  </div>
~~~
 ![Con titulo](https://user-images.githubusercontent.com/32285482/80853319-6d95be80-8bf5-11ea-97f3-0eb4ea911b00.PNG "Web")

### 3.Hover effect
I have made in my way of front hover different effects, but this when I saw it I thought it had some javascript and I am amazed to learn that it was only with css.

Using transform and transition amazing things can come out. So let's play around with those properties and let's start experimenting.
~~~
.hover-gallery {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    transform: scale(0);
    background: rgba(131, 96, 195, 0.774);
    transition: transform .5s;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.img-port:hover .hover-gallery {
    transform: scale(1);
}
~~~

![Con titulo](https://user-images.githubusercontent.com/32285482/80853415-61f6c780-8bf6-11ea-9b4d-bc9b92a32a9b.gif "hover")

It was very interesting to follow this tutorial and learn more. I will continue on my way to improve my skills every day and teaching what I am learning.

### Landing
![Con titulo](https://user-images.githubusercontent.com/32285482/80852839-6b316580-8bf1-11ea-94a8-d9851bc687c0.png "Web")

⭐ "Because the one who teaches learns twice" ⭐

Link Github : https://github.com/carlacentenor/landing-3
The Evolution of React js - TerminusDB Discussion #8
Tags: javascript, react, beginners, talk
Published: 2020-05-02 03:42:20

---
title: The Evolution of React js - TerminusDB Discussion #8
published: true
description: Every week the TerminusDB core team get together to hear a talk led by one of our members. The discussions are always very interesting, so we thought we'd share. This week we have our software engineer talking the Evolution of React js.
tags: Javascript, React, beginners, talk
---
Every week the TerminusDB core team get together to hear a talk led by one of our members. The discussions are always very interesting, so we thought we'd share. This week we have our software engineer talking the Evolution of React js.

As we are a FOSS community, it is an open and free discussion.