teleren/devto huggingface dataset:
Soft Skills Can Be Hard — with Liana Felt and Kristen Palana
Tags: discuss, podcast, career, softskills
Published: 2021-03-31 18:49:31

---
title: Soft Skills Can Be Hard — with Liana Felt and Kristen Palana
published: true
description: Listen to S4E8 of DevDiscuss!
tags: discuss, podcast, career, softskills
series: DevDiscuss Season 4
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wut11d47tmph6ajs76bj.png
---

I can't believe that the season 4 finale of DevDiscuss is already here!

{% podcast https://dev.to/devdiscuss/s4-e8-we-role-play-what-good-soft-skills-look-like %}

In this week's show (a crossover with our sister podcast, the [CodeNewbie Podcast](dev.to/codenewbie) ) I joined forces with @SaronYitbarek, Founder of CodeNewbie and Disco, to tackle a topic that frequently doesn't get enough attention in the realm of software development: soft skills. We role-play scenarios that involve a lot of sensitivity, empathy, and clear communication — all qualities that are invaluable in any field, including this one.  

### In S4E8, we were joined by two awesome guests...
- [Liana Felt](dev.to/liana), People Operations Manager here at Forem (and my wife!)
- [Kristen Palana](https://community.codenewbie.org/kristenpalana), United Nations Population Fund (UNFPA) Malawi - Animation and Digital Media Specialist

### After you listen to the episode, be sure to head to [this thread](https://community.codenewbie.org/kristenpalana/i-m-kristen-palana-teacher-author-and-artist-ask-me-anything-p53) on CodeNewbie Community Forem to ask Kristen anything about their career, experience handling situations with tact, and soft skills in general. 

Thanks for listening to this past season of DevDiscuss. We're already cooking up some awesome stuff for season five. I can't wait to share it with you.   
  

---

_You can [follow DevDiscuss](dev.to/devdiscuss) to get episode notifications and listen right in your feed_ — or subscribe on your platform of choice! Plus, if you leave us a review, we'll send you a free pack of thank-you stickers. Details [here](https://airtable.com/shr8oKAIMZgdYnBxx). 

## Quick Listening Links
- [Apple Podcasts](https://podcasts.apple.com/us/podcast/devdiscuss/id1513053883)
- [Spotify](https://open.spotify.com/show/4Jae2mPUqx0XnGychucsE4)
- [Google](https://podcasts.google.com/feed/aHR0cHM6Ly9mZWVkcy5kZXZwb2RzLmRldi9kZXZkaXNjdXNzX3BvZGNhc3QueG1s/episode/aHR0cHM6Ly9kZXZwb2RzLmRldi9wb2RjYXN0cy9kZXZkaXNjdXNzLzMz?sa=X&ved=2ahUKEwjIgezIl9vvAhUtA50JHYz1BnIQkfYCegQIARAE)
- [Listen Notes](https://www.listennotes.com/podcasts/devdiscuss/s4e8-we-role-play-what-good-Xx_-DoUHrCy/)
- [TuneIn](https://tunein.com/podcasts/Technology-Podcasts/DevDiscuss-p1324596/?topicId=161949673)
- [RSS Feed](http://feeds.codenewbie.org/devnews_podcast.xml)
- [Pocket Casts](https://pca.st/vvo2unz9)
- [DEV Pods Site](https://devpods.herokuapp.com/podcasts/devdiscuss/episodes/156)

---
_Acknowledgements_ 
- _@levisharpe for producing & mixing the show_
- _Our season four sponsors: DataStax, New Relic, Educative, and Ambassador Labs!_

# 🗣️🗣️🗣️
I Built a Workout Tracking App using Next.js and Firebase!💪
Tags: javascript, react, programming, beginners
Published: 2021-03-31 18:20:52

I recently finished building and deploying a strength training-focused [workout app](https://lift-next.vercel.app/). I wanted to share it here and see what you guys think about it. Love it, hate it, have suggestions to improve it further or features you would like to see added? I'm all ears!

The tech-stack used for the project:
* Next.js as my React framework of choice
* Firebase Authentication for logging in (Google and Facebook providers)
* Firebase's Firestore database to store all the workout data
* Tailwind and [Windmill UI](https://windmillui.com/) for all my styling needs

These are features I have added to the app so far:
* #### Sign in with Google or Facebook to create a profile:
After signing in, Firebase creates a special `user UID` for each email, thus allowing that person to access their account and track their workouts.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pdykkikpwn1tl9zqufm8.gif)

* #### Allows users to select body part specific exercises:
Each body part consists of various exercises including compound and isolation exercises.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v2murfrhrjfhc8il0ihh.gif)

* #### Add sets, repetitions, and weight for every exercise:
Add, remove, update or delete sets and exercises as you please!
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hkry687avba88qvezrji.gif)

* #### Add, update, and track your physical stats:
The app also allows users to track several physical stats such as weight, height, daily calories, and body fat percentage.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jj2b9lqk6ud6gfl86m83.gif)

* #### Go back and view, add, update or delete past workouts:
The calendar helps users to go back and add, update or delete previous workouts.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ev6vfbe2sc30g2ce3xiy.gif)

* #### Copy previous workouts and paste them to your current session:
If you are repeating a workout session on multiple occasions, you can now copy and paste it wherever needed and add/edit/delete those specific workouts.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/24g9cavsx4vvzrxr1v72.gif)

### Features I am planning to add in the future:
I am currently using this app for almost a month now and adding more features as I see they fit. Some of these include,
* Kgs to lbs and vice-versa conversion
* ~~Copy a particular previous workout and paste it to your current session~~
* A dashboard to track your body weight, and daily calories
* A dashboard to track strength gains for specific exercises

Please feel free to tinker around and let me know if you like it! 😊
The 3 most popular C++ posts of March 2021
Tags: bestofdev, cpp
Published: 2021-03-31 18:15:22

This is the second month that I share the 3 most popular [C++ articles](https://dev.to/t/cpp/top/month) of the month. Popularity is derived from the number of reactions, and I try not to include multiple articles from the same author.

Feel free to share your favourite one in the comments.

***
[Jason](https://dev.to/jasonalkain) is (re)learning C++ and he has some interesting thoughts on `for` loops.

{% link https://dev.to/jasonalkain/relearning-c-part-01-26i %}

***

[Artem](https://dev.to/aakatev) has introduced Conan an open-source and multi-platform package manager for C++.

{% link https://dev.to/aakatev/cross-platform-c-c-development-with-conan-2276 %}

***

[Sandor](https://dev.to/sandordargo) continued his series on one of the flagship features of C++20, concepts.

{% link https://dev.to/sandordargo/how-to-write-your-own-c-concepts-part-ii-46b4 %}

Happy coding!

## Connect deeper

If you liked this article, please 
- hit on the like button,  
- [subscribe to my newsletter](http://eepurl.com/gvcv1j) 
- and let's connect on [Twitter](https://twitter.com/SandorDargo)!
What are the phases of the Data Analysis Life Cycle
Tags: datascience, codenewbie, devjournal, todayilearned
Published: 2021-03-31 18:07:17

**Data Journal**: Data Analysis Life Cycles Visual Guide

Dear 👋💻🌎 **Data World**,

MAKING LEARNING HOW TO CODE
✧・ﾟ:* CUTE(◕‿◕✿) and INFORMATIVEᕙ(⇀‸↼‶)ᕗ!!!

**Data Analysis Life Cycle**: the process of going from data to decision.

**Welcome** to our data journal, and below is what we learn from my journey towards data.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8hzr9bo3xj8vy746gla0.gif)

---
I hope you enjoy the 6 phases that we learn about in the **Data Analysis Life Cycle**:

---
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qch5ajersowyetskliej.gif)
# 1. **Ask questions and define the problem.**
> Business Challenge/Objective/Question
---

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vpvh6eamupnipqiwlxem.gif)
# 2. **Prepare data by collecting and storing the information.**
> Data generation, collection, storage, and data management
---

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kx9vrihxcf6a1p3rws58.gif)
# 3. **Process: data by cleaning and checking the information.**
> Data cleaning/data integrity
---

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pur84fsq85pyeqvjy5ld.gif)
# 4. **Analyze: data to find patterns, relationships, and trends.**
> Data exploration, visualization, and analysis
---

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ma1jfksr8ywe63dysvfr.gif)
# 5. **Share: data with your audience**
> Communicating and interpreting results
---

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/aa5s6q9ghgbtdafgpaso.gif)
# 6. **Act: on the data and use the analysis results.**
> Putting your insights to work to solve the problem
---


**Thank you** for reading my **Data Journal** ❤ ,
**Kody the Coding Corgi** & **Bits the Adorable A.I.**

---

**P.S.**


If you enjoyed this **comic strip** and could help you in any way 


Please share this with your data friends, dev friends, and coding corgis friends so we can make more comics in the future with your support. **Thank You!** 

{% medium https://medium.com/codewithcorgis/what-are-the-phases-of-the-data-analysis-life-cycle-ffd64ea41839 %}
Is It Practical To Use Interface Segregation Principle?
Tags: programming, beginners, typescript, codequality
Published: 2021-03-31 18:05:02

SOLID is a very popular design concept in programming. Interface Segregation is part of SOLID Design. You may ask, what is **SOLID?**

> SOLID are 5 software development principles or guidelines based on Object-Oriented design making it easier for you to make your projects scalable and maintainable.

In code, you have best-practices and rules. SOLID designs are like best-practices.

### Interface Segregation
It says
> Clients Should Not Be Forced To Depend Upon Interfaces That They Do Not Use.

Pretty straightforward.

#### What This Means
:heavy_check_mark: Create smaller and specific interfaces (role interfaces).
:x: Classes can implement interfaces they don't use.


### Why do this?

Consider
> A client depends upon a class that contains interfaces the client does not use, but other clients do use, then the first client will be affected by the changes other clients force upon the class used by the first client.

The Goal of this principle is to avoid these situations. 

The pattern for other **SOLID** principles like **[Single Responsibility](https://dev.to/huzaifa99/why-you-should-be-following-the-single-responsibility-principle-1h2a)** and **[Open Close](https://dev.to/huzaifa99/explained-open-close-principle-in-2-minutes-29dd)** is much similar **:** To avoid code breakages in the long run.


### A Simple Use Case
Using the Bird example much similar to that discussed in **[Liskov Substitution.](https://dev.to/huzaifa99/is-the-liskov-substitution-principle-really-useful-3oce)**
```typescript
interface Bird {
  fly(): void;
  walk(): void;
}

class Duck extends Bird{
	fly(){
		// Duck can fly
	}	
	walk(){
		// Duck can walk
	}
}

class Ostrich extends Bird{
	fly(){
		// Ostrich cant fly... throw some error
	}	
	walk(){
		// Ostrich can walk
	}
} 
```
Here `fly()` is enforced to an Ostrich class by the Duck class, since both implement the same interface and Duck does use `fly()`. It is a clear violation of the Interface Segregation Principle. 

---
Using the Interface Segregation Principle we refactor our code to be
```typescript
interface BirdFly{
	fly(): void;
}

interface BirdWalk{
	walk(): void;
}

class Duck extends BirdFly, BirdWalk{
	fly(){
		// Duck can fly
	}	
	walk(){
		// Duck can walk
	}
}

class Ostrich extends BirdWalk{
	walk(){
		// Ostrich can walk
	}
} 
```
We have now made role-specific interfaces and there is no inadvertent coupling.

### Is It Practical?
Definitely, It is best to follow this principle whenever possible. However, if your requirements are satisfied and you can work around the inadvertent coupling, then sure you can avoid this principle.

---
Do you use Interface Segregation? Be sure to tell me your opinion in the comments.

### What's Next
Why The **[Dependency Inversion](https://dev.to/huzaifa99/why-the-dependency-inversion-principle-is-worth-using-opj)** Principle Is Worth Using.
Day 79,80,81,82,83,84:100DaysOfCode
Tags: 100daysofcode, programming, productivity
Published: 2021-03-31 18:03:37

good week,
long time no posts but here is another one-> :)
gave codejam this week got a global rank of 24k was able to solve only one ques on my own,

codeforces div2 -> solved 2 ques, 
atcoder beginner ->solved 2 ques
got kickstart round a rank 10k(solved one)

studied further trees , geometry for cp.....
further spring boot(more with dbms)

else just semester classes and End.


You can Follow me->
https://github.com/singhtaran1005
https://www.linkedin.com/in/taranpreet-singh-chabbra-27517918a/
NGRX Selector & async confusion
Tags: ngrx, angular
Published: 2021-03-31 17:59:34

---
title: NGRX Selector & async confusion
published: true
description: describing how to work with selectors, and async API calls
tags: #NGRX, #Angular
//cover_image: https://direct_url_to_image.jpg
---

# Angular & NGRX Gotchas
---
We have documented the trials and errors of previous developers so that you can avoid making the same mistakes and save time when building new features.

*Side Note: this information is also based upon research, and not being able to locate within documentation, or Stackoverflow questions about how to do this in a clear, and concise way...*

## Selectors
---
When creating selectors with NGRX, it is presumed that when trying to access that variable data, you will see specifically that data that you defined in the associated selector object.

```
this.caseFolder$ = this.store.pipe(
  select(fromCaseSummary.getCurrentCaseFolder)
);
```

This didn't seem to work for me.

When trying to visualize the data, or pass a specific attribute to a dispatch action from within a component, I have found that you must access that variable with a *subscribe* method provided by [RXJS][RXJS-ANGULAR] **(This assumes you are familiar with this angular library/observable pattern).**

Like so: 

`this.store.pipe(take(1)).subscribe(d => this.user = d);`

There are a couple different ways to handle subscribing, and unsubscribing (to prevent memory leaks, so be sure to do so!).


## Making API calls dependent on a response from a previous API call
---
Making an API call that is dependent upon a response from a previous API with NGRX effects is not as straight forward as calling it from the component right after the defined dispatch call of the specified action. 

```
23:this.store.dispatch(fromLoginActions.sessionRefresh({user: this.user, tokenInputText: this.tokenInput}));

24:this.store.dispatch(fromCaseActions.getSummaryDetails({caseFolderId: this.caseIdInput, user: this.user.userSession.user}));
```

The reason for this is NGRX effects are Asynchronous by design. Meaning that the next line that you defined *(24)* would be triggered immediately after, not once the previous call is completed. 

In order for us to properly do this, it seems we must call the subsequent action within the effects method for the specified action, within the response map, and using the corresponding *concatMap, mergeMap, SwitchMap* methods provided by RXJS.

Like so:

```
switchMap( (response: any) => [
 CaseSummaryActions.loadCaseSummarySuccess(response),
  patientActions.getPatient({			            
   patientID:response.data.attributes.patient_id,user:action.user
  }),
  groupPlanActions.getGroupPlans({
   groupID: response.data.attributes.group_id, user: action.user
  })
]),
catchError( (error: any) =>                                         
  of(CaseSummaryActions.loadCaseSummaryFailure(error))),
)
```

---
*If you have any additional insight, or can point me into the direction for more definitive answers, I will be grateful! *

This may not be the right way, but it got me unblocked in order to make my deliverable...



[RXJS-ANGULAR]: https://angular.io/guide/rx-library
NFT, Help me out! :)
Tags: blockchain, help
Published: 2021-03-31 17:42:00

So one of my other long lost loves is creating art. I haven't done it in years because I've been busy working and coding and being a dad. 

Recently I started getting back in to my art. I've also happen to be researching NFT and how it works (blockchain for digital content). Part of my learning process is joining some of the new communities that are the driving force behind the NFT community. 

The issue is that some of these require invite and part of the invite process is spreading the word about the site and its community. 

Long story short, can you please go to [https://t.co/3JlS1CI5fn?amp=1] and click on vote, for me? 

I really would appreciate it.
LF will be replaced by CRLF / GIT
Published: 2021-03-31 17:29:26

I'm new to git. I tried to commit a branch but i did forget to stage it and getting an error saying: "warning: LF will be replaced by CRLF in src/main/resources/fxml/TypeTarifView.fxml.
The file will have its original line endings in your working directory" after looking for a while i did fix it with that command line: "git config --global core.autocrlf false"
Create a Google Map Heatmap with Cellular and GPS Data
Tags: iot, cloud, gps
Published: 2021-03-31 17:24:01

---
title: Create a Google Map Heatmap with Cellular and GPS Data
published: true
description: Learn how to create a Google Map heatmap with cellular and GPS data acquired by a Raspberry Pi Pico and Notecard, using Python and Google Cloud Platform.
tags: iot, cloud, gps
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zcomz5m2n8nlmz8v8fzv.jpg
---

A heatmap overlaid on satellite imagery is one of the more tantalizing means of displaying map-based data. Considering my newfound love for the Raspberry Pi Pico, and having seen how easy it can be to [add cellular connectivity to the Pico](https://www.hackster.io/brandonsatrom/adding-cellular-to-the-raspberry-pi-pico-b8a4b6), why not combine these loves in a new project?

In this tutorial, we are going to build a cellular- and GPS-enabled IoT solution that collects cell signal strength and location data at defined intervals, stored in the cloud, with a web app to display said data in a heatmap.

![high level project diagram](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wzvwa83ea7m07wopgp0l.png)

*Specifically we will be developing with:*

1. [Raspberry Pi Pico](https://www.raspberrypi.org/products/raspberry-pi-pico/) (any compatible MCU works fine too).
2. [Notecard and Notecarrier](https://blues.io/products/?utm_source=devto&utm_medium=blog&utm_campaign=featured-project) from Blues Wireless (for cellular connectivity and GPS).
3. 1602 LCD module (for displaying in-action status updates).
4. [Google Cloud Platform](https://cloud.google.com/) (for cloud functions, storage, and maps)

If you'd like a quick 1.5 minute overview of the project, check out this video:

{% youtube aFaDIDqyjCE %}

The final result on the web will look something like this:

![completed web app](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9rfgtp666uxq0lrfwtni.jpg)
**Ready? Get started over at [hackster.io](https://www.hackster.io/rob-lauer/cellular-signal-heatmap-with-raspberry-pi-pico-and-gps-1e16df)!**
How to Resolve Merge Conflicts Quickly, Every Time.
Tags: git, bitbucket, devops, codequality
Published: 2021-03-31 17:16:48

# How to Fix Merge Conflicts

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1385gccer6d1x25bptis.jpg)
You have been working on a big nice new feature for a few days, or even weeks. All the code is refactored, all the comments are useful, no console prints or debugger lines to be found. It's all ready to ship. You make a pull request. It's almost there. *SMACK* You have unresolved conflicts. Please fix these before continuing.

The pain is immediate and intense.

Well not to worry. This is a quick step by step guide on how to handle conflicts when merging your branch into, for example, develop. It's simple and foolproof. Here we go.

1. Do the merge and resolve the conflicts locally:

        git fetch
        git checkout origin/DESTINATION
        git merge origin/SOURCE

2. ***resolve conflicts...***
    - Commit File(s)

          git add <RESOLVED-FILE(S)>
          git commit

3. Push the merge up as a **new** branch:

        git push origin HEAD:refs/heads/branch-with-conflicts-resolved


4. Create new PR in Bitbucket and merge it. You have two options to finish
the merge now that you have resolved all conflicts.
  
      _Option 1._

        Source:       <branch-with-conflicts-resolved>
        Destination:  DESTINATION

      ***Or...***
      
      _Option 2._

      - First PR:

            Source:       <branch-with-conflicts-resolved>
            Destination:  branch

      - Complete that PR. Then in another PR:

            Source:       branch
            Destination:  DESTINATION


5. Now you have resolved your conflicts and merged. :-)

It may seem trivial now, but this is one of the most confusing and frustrating things for developers working in a large agile team environment, where the develop and main branches are changing hour to hour, and week to week, respectively. Hope you are well and happy coding!
When to Ask for Help? | Podcast
Tags: webdev, podcast
Published: 2021-03-31 15:17:28

{% spotify spotify:episode:6Qha0MKHn9875N1yXxMqex %}

## What is HTML All The Things

HTML All The Things is a [web development podcast](https://podcast.htmlallthethings.com/) and [discord community](https://discord.com/invite/jweMCx9) which was started by Matt and Mike, developers based in Ontario, Canada. 

The podcast speaks to web development topics as well as running a small business, self employment and time management. You can join them for both their successes and their struggles as they try to manage expanding their Web Development business without stretching themselves too thin. 

## What's This One About?

In this episode Matt and Mike discuss asking for help. Even though it sounds simple, asking for help can be an anxiety-inducing activity because you don't want to bother your fellow co-workers, or be called out for not doing enough research if you ask on an online forum. There can also be hesitation to ask because you want to solve your problem yourself, but sometimes you're just way too stuck to go it alone. 

## Show Notes

3:50 - Introduction

5:00 - When to ask questions for junior developers

9:00 - Don't disturb someone in a deep work state

17:55 - Communication skills have broken down

27:30 - Asking questions the right way

29:50 - Toxicity in the online community

35:00 - Where to ask more complex questions (and why it's not stack overflow)

40:10 - When to ask questions for intermediate developers

46:30 - When to ask questions for senior developers

54:30 - How to ask the questions

58:35 - Onboarding techniques that can help developers ramp up quickly


##Key Takeaways

* Learn the process of finding answers. When you ask a question try not only get the answer but the process that the person used to find the answer
* Learning when your coworkers are in their deep work state will make it easier for you to figure out when to ask questions
* Before asking a question, document what you've already done to try to solve the issue

##Social Links

You can find us on all the podcast platforms out there as well as

[Instagram (@htmlallthethings)](https://www.instagram.com/htmlallthethings/)
[Twitter (@htmleverything)](https://twitter.com/htmleverything)
[Facebook (Html All The Things)](https://www.facebook.com/htmlallthethings)