teleren/devto huggingface dataset:
Hi there - here's an introduction...
Published: 2020-08-11 23:29:12

## x-posting my comment from the [Welcome Thread](https://dev.to/sydtacticsugar/comment/13emm).


Hi everyone! ✨

I'm a Technical Support Engineer. My background is almost entirely customer support/service - including retail, waiting tables, and being a concierge. 💁🏾‍♀️ I'm an aspiring web developer and love learning new things in general.

My passions are security and accessibility. I'm currently working on OverTheWire's Bandit CTF series and Twilioquest, which is a game that helps teach you how to use Twilio's communication products. I also really like responsive design - especially browser compatibility testing/troubleshooting and different degradation/enhancement techniques.

My portfolio splash page is at: [syd-ney.com](https://syd-ney.com)
I hope to actually deploy the full site and showcase my portfolio by the end of this year.

Outside of tech - I like YouTube, Minecraft, language learning (Ich kann ein bisschen Deutsch 🇩🇪), and cats. 😸

<3

syd(tactic sugar)/syd(ney)
Guidance with Firebase and React.
Tags: help, react
Published: 2020-08-11 23:12:07

Hi guys! My name is Sergio, this is my first post.
I am new at React, so the intention of this post is to see if you could give me some feedback on this code.

I am trying to build a web that gets real time updates using firestore.

I wrote this custom hook to connect and check firebase.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/15farxs102bvejjtcein.PNG)

The idea of this custom hook is to get updates from a specific collection in the firestore, it gets the firebase object and the collection name as props and with useEffect i get the updates of the collections in realtime. 

Then i got the page (i call it client page) and made this custom hook.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/61o30lmob9p0dfu2njxq.PNG)

With this custom hook, i got another useEffect to check the changes on the collection and display a count and some snipper when the page is fetching the data for the first time. 

My page is working, but i don´t know if this is a good approach or if i am adding innecesary complexity.

I really appreciate if you could give me some feedback in order to improve my react skills.

Best Regards!
Sergio.
Keyoxide Proof
Published: 2020-08-11 22:46:09

---
title: Keyoxide Proof
published: true
---

This is an OpenPGP proof that connects [my OpenPGP key](https://keyoxide.org/4c9cbfad0069d6799660bcd540c2d9580349ed21) to [this dev.to account](https://dev.to/diddledan). For details check out https://keyoxide.org/guides/openpgp-proofs

[Verifying my OpenPGP key: openpgp4fpr:4c9cbfad0069d6799660bcd540c2d9580349ed21]
My 100 days of configuring VPS
Tags: webdev, ubuntu
Published: 2020-08-11 21:55:30

Hello guys!

With this post, I want to start my journey with servers. My main challenge is to configure and maintain my own VPS machine. I'm going to describe how and why install and setup certain packages or optimize my applications and websites.

## VPS choice

I picked VPS from OVH. In my opinion they have pretty good and cheap offer for private servers (starting from $3.50/month). I decided to go with "Essential" package that comes with 2 vCores, 4 GB RAM and 80 GB storage, which I consider to be enough for my needs. Also, during ordering server I chose Ubuntu 20.04 as operating system as that is my most favourite and known OS which I used to set up servers in the past.

## Why VPS?

My current position is software developer, I specialize in frontend. I have a bunch of ideas I would love to create in the near future, also I wanted to connect this with learning how to set up and maintain private server, as I've forgotten how to do that during past few years.

---

I hope you will enjoy this series and knowledge that I will share with you. Bear in mind that it won't be my original content, rather compilation of my new knowledge thanks to the Internet. At the end of each post I'm going to leave some links to documentation and sources which I used for each part of this process.

---

Cover image: <span>Photo by <a href="https://unsplash.com/@tvick?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Taylor Vick</a> on <a href="https://unsplash.com/s/photos/server?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></span>
Day 193: Just Coolin'
Tags: hiphop, code, coding, lifelongdev
Published: 2020-08-11 21:51:59

_liner notes_:
- Professional : So, I went through the review of my blog submission. Mostly small things like formatting and shortening things to make it flow better. So it should be posted this week. Looking forward to see it on the site. Other than that, I worked on an app to use my keypad Web Component to make phone calls. Got that working. I want to get a contact list included as well. There's a team meeting where we can demo what we've been working on and I'd like to show it.

- Personal : Last night, I went through some tracks for this week's radio show. Worked on the canvas element for my side project. Got an image and some text in an area I want depending on the state of the app. I think I figured out a better and easier way to switch between the scenes.

![The mountains of Geislergruppe, Italy with a redwood forest in front.](https://dev-to-uploads.s3.amazonaws.com/i/yjwev9vrwod4ripja8fl.png)

Some more stuff for the van came in today. Working on my shower. I put the futon back into the van. It takes up a lot more space that I remembered. haha Realized I never actually tried the fridge to see if it actually works. Got that plugged in, just coolin'. haha Going to get back to work on this shower and pack. Also want to get the last show recording submitted to the station.

Have a great night!

peace piece
Dwane / conshus
https://dwane.io / https://HIPHOPandCODE.com
{% youtube pWpVvQKN8OQ %}
What about Android Slices?
Tags: android, kotlin, jetpack, slices
Published: 2020-08-11 21:29:56

Does it exist on the Android right now? 

What's the latest status? 

How do we actually view it? (instead of just using the viewer)

What about the firebase app indexing?

I couldn't find any new resource since 2018? what happened? it looks like a cool feature.
Pinebook Pro first impressions
Tags: opensource, hardware
Published: 2020-08-11 21:26:26

---
title: Pinebook Pro first impressions
published: true
description: Initial thoughts on using the new Pinebook Pro
tags: opensource, hardware
//cover_image: https://direct_url_to_image.jpg
---


The [Pinebook Pro](https://www.pine64.org/pinebook-pro/) is a pre-installed Linux Laptop that aims at the low-end of the market where Chromebooks are popular. There's a commitment to open source software and hardware and being accessible outside of hobbyists. It cost me less than £300 including import taxes and fees and was delivered quickly direct from China.

My initial impression of the build quality is good, it's better than most budget laptops (like the HP Stream and the Chromebooks you get in the £250 range). It was definitely nice to have a UK keyboard.

I hadn't used the pre-installed [Manjaro](https://manjaro.org/) OS before and it is, as advertised, simple and straight-forward if not particularly sexy.

Installing Firefox and doing a bit of web browsing has been straight-forward and unlike other low-end laptops you seem to be able to get a lot of tabs going.

The two biggest problems I've encountered are suspension and wifi. Compared to the other laptops I use the connection to wifi is much shorter and temperamental.

Closing the lid on the laptop or suspending it doesn't seem to affect the power consumption and therefore if you don't complete stop the laptop then if you leave it unplugged overnight it runs out of power. On top of that it takes a long time to charge so it really isn't a great portable solution.

I haven't tried any more demanding tasks of it than consumer applications so far. When it has power it is doing a good job but I've fallen back on using an ex-Windows laptop running an old version of Elementary to write this, which isn't a good sign.

The Pinebook is an amazing achievement in terms of creating an open low-cost laptop and I don't want to diminish that achievement but it is frustrating that the result isn't as portable as it could or arguably should be.
My Ansible AWS EC2 Dynamic Inventory
Tags: aws, devops
Published: 2020-08-11 11:22:35

Start with the the Ansible configuration. This can be set in `/etc/ansible/ansible.cfg` or `~/.ansible.cfg` (in the home directory) or `ansible.cfg` (in the current directory)

My suggestion is use one of the first 2 (ie. `/etc/` or `~/.ansible.cfg` if you’re going to be managing instances from your machine. Update the configuration as needed.

```ini
[defaults]
inventory = ./ansible_plugins
enable_plugins = aws_ec2
host_key_checking = False
pipelining = True
log_path = /var/log/ansible
```

You may need other plugins, this one is for aws_ec2. In the /etc/ansible/ansible_plugins directory, create the *_aws_ec2.yml configuration file for your inventory

```YAML
# /etc/ansible/ansible_plugins/testing_aws_ec2.yml
---
plugin: aws_ec2
aws_profile: testing
regions:
  - us-east-1
  - us-east-2
filters:
  tag:Team: testing
  instance-state-name : running
hostnames:
  - instance-id
  - dns-name
keyed_groups:
  - prefix: team
    key: tags['Team']
```

You'll notice, I’m filtering using a `tag:Team == testing` and showing only `running` instances.

I’m also using the `instance-id` and `dns-name` attributes as hostname

And I’m using the `tag['Team']` as a grouping.

So now, I can do the following from any directory (since my configuration is global in `/etc/ansible`)

```
$ ansible-inventory --list --yaml
all:
  children:
    aws_ec2:
      hosts:
        i-xxxxxxxxxxxxxxx:
          ami_launch_index: 0
          architecture: x86_64
          block_device_mappings:
          - device_name: /dev/sda1
            ebs:
              attach_time: 2020-08-10 15:20:58+00:00
              delete_on_termination: true
              status: attached
              volume_id: vol-xxxxxxxxxxxxxx
...
    team_testing:
      hosts:
        i-xyxyxyxyxyyxyxyy: {}
        i-xyxyxy2321yxyxyy: {}
        i-xyxyxyxyxy89yxyy: {}
        i-xyxy1210xyyxyxyy: {}
        i-xyxy999999yxyxyy: {}
        i-xyxyxy44xyyxyxyy: {}
        i-xyx2323yxyyxyxyy: {}
        i-xyxyxyxyxy9977yy: {}
    ungrouped: {}
```

I can also use the `team_testing` or the individual `instance_id` in my Ansible `hosts` calls.
macOS Catalina doesn't like node-gyp
Tags: node, javascript, webdev, macos
Published: 2020-08-11 21:20:53

It seems to break every time I update macOS (on the OS part).

Not like there is no fix, but it is always so annoying. I am considering Linux or Windows instead now.

<https://github.com/nodejs/node-gyp/blob/master/macOS_Catalina.md>

{% github https://github.com/nodejs/node-gyp/issues/569 %}

{% stackoverflow 17980759 %}

[Xcode is easily what I hate most about macOS.](https://www.quora.com/Xcode-app-size-is-too-large-Is-there-a-minimal-version-to-use-for-simply-C-and-C-Qt-creator-Visual-Studio)
Third Month Update
Tags: javascript, webdev, codenewbie, beginners
Published: 2020-08-11 20:50:00

---
title: Third Month Update
published: true
description: 
tags: javascript, webdev, codenewbie, beginners
---

My third month with web development focused on a huge code along project that was difficult to document because of how much work went into behind the scenes. I have found that it is much easier to document concepts and theories than actual code along projects. I did an overview of my advanced web development course that I will be starting next week and it seems to flow better with smaller projects and a lot more concepts. I have technically finished the first part of my web development courses. I have learned a lot about the function and structure of web development from the first half of my course. I look forward to getting into more advanced web development in the coming months and then moving into data structures and algorithms.
Implement Dark mode on your website
Tags: javascript, react, webdev, design
Published: 2020-08-11 20:49:38

## How to implement dark mode on your website?

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

I will use [darkreader](https://github.com/darkreader/darkreader) npm library which has more than 7.5K stars.

You can use Dark Reader to enable dark mode on your website.

> Install the package from NPM 

```
npm install darkreader
```

you can import es modules in your main file from darkreader.
```javascript
import { enable, disable } from 'darkreader';
```
> enable - Enables dark mode for current web page
> disable - Disables dark mode for current web page

to enable dark mode on your website add just call `enable()` function in your file.

also, you can customize some filters by passing parameters in the enable method. 

for example,

```javascript
enable({
    brightness: 100,
    contrast: 90,
    sepia: 10,
});
```

It supports the following parameters which you can use it.
* mode: 0 | 1 
 * 1 - dark mode, 0 - dimmed mode
* [ brightness | grayscale | contrast | sepia ] : number 
 * value (0 - 100+)
 * Default [ 100 | 0 | 100 | 0 ]
* useFont: boolean
 * Specifies if custom font should be used
 * Default false
* fontFamily: string
 * Font family to use
* textStroke: number
 * Makes text look bolder (0 - 1px)
 * Default 0
* darkSchemeBackgroundColor: string
 * Background color to use for dark mode
 * Default #181a1b
* darkSchemeTextColor: string
 * Text color to use for dark mode
 * Default #e8e6e3
* lightSchemeBackgroundColor: string
 * Background color to use for light mode
 * Default #dcdad7
* lightSchemeTextColor: string
 * Text color to use for light mode
 * Default #181a1b
* scrollbarColor: string
 * Scrollbar color
 * Default auto
* selectionColor: string
 * Selection color
 * Default auto

### Resources
https://github.com/darkreader/darkreader
I created a MacBook Pro (MBP) using pure CSS and only 1 DIV
Tags: discuss, codenewbie, codepen, 100daysofcode
Published: 2020-08-11 20:28:38

This is created with only 1 DIV element and pure CSS - no images.

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

You can checkout the code here:

https://codepen.io/thadeuszlay/pen/pbRrON

Follow me for more. 

It's one of the things I do to challenge myself. I posted similar challenges in the past:
https://dev.to/pandaquests/i-created-an-iphone-using-pure-css-and-only-1-div-42ne

https://dev.to/pandaquests/i-created-the-android-logo-using-css-and-only-1-div-what-do-you-think-5ged

Opinions or recommendations of what I could do next is very much appreciated. 

P.S.: Guess how I did the web cam on the MBP? :D
How do you sell your SaaS company?
Tags: discuss
Published: 2020-08-11 19:52:17

---
title: How do you sell your SaaS company?
published: true
description: 
tags: discuss
//cover_image: https://direct_url_to_image.jpg
---

A couple years ago I built a consumer SaaS product (and registered a very simple LLC for it). It's grown quite a bit, and I could see myself selling it if someone makes a good offer. Have any of you done this before? How do you start the process? What should I know going in?
Keep the Marathon Going
Tags: career
Published: 2020-08-11 19:51:00

I'm a runner, and I run marathons. It's a crazy thing to run 26.2 miles, but boy, do I enjoy it.

I will tell you that for a marathon, runners strategically plan their race. When to eat. When to drink. Each mile carefully paced.

I will also tell you that I always rely on marathon volunteers during the race. Those aid stations typically come every few miles and water never tastes so good.

And the crowds, my gosh! Crowds are my fuel and motivation to keep going. Usually, people yelling at me is my worst nightmare but in a marathon? YELL LOUDER.

This past May, however, I embarked upon a different kind of marathon. 

The job hunt marathon. 

###The Starting Line

My job hunt marathon began in May after graduating from Flatiron and yes, there have there been so many ups and downs.

Those first few days and weeks were exhilarating. New schedule, new routines, and a brand new task ahead. Here I come, world!

Whelp.

Did you see it coming? Did you guess?

It didn't take long before overwhelm and uncertainty took over. 

Am I spending my time the right way? Does anyone really want the skills I offer? What was I thinking changing careers?!

Thank goodness for those aid stations. 

My Flatiron community! Tech Twitter! My coaches and mentors! My family! 

I never had to sweat for long before finding a kind word, a gentle nudge of encouragement or guidance. 

Rinse and repeat. 

That cycle would repeat on a *weekly* basis, folks, and that's no joke. 

I became so grateful for and relied heavily upon my aid stations, my community. They always helped me keep going in the right direction.

###Something Incredible

You're about to find out that I've made it to a landmark spot in the marathon - the halfway point.

###Mile 13.1 

A band is playing an earsplitting rendition of Eye of the Tiger, confetti is flying, the crowds are WILD, and you feel you could just burst. Happiness, exhaustion, pride, all of it.  

I am beyond honored and grateful to say that [aware3](https://aware3.com/) is mile 13.1 of my marathon.

They are graciously taking me on as an Associate Software Engineer.

###Keep Running

The marathon's not nearly over, but heck if this isn't the motivation and support to keep going. 

I can't believe I'm lucky enough to be a part of this, yes THIS, community. So grateful for the support that's carried me this far - can't wait to see what comes next.

If you're running your marathon and job hunting right now, leave a comment below! I always appreciated when folks would share with me how they found their job and what they learned along the way - would love to pay it forward!
Password authentication
Tags: 100daysofcode, mongodb, javascript
Published: 2020-08-11 19:41:16

A user will typically input the email/username and password to log into a system. How do we verify the inputs and successfully retrieve their account? 

I'm using mongoose `findOne()` inbuilt method, and passing in a condition to retrieve the User email similar to the email input from the request. I'm also passing an asynchronous error first callback function. If an error occurs during retrieval the function exists immediately. If the user is successfully retrieved the saved password and password input are compared using `bcrypt.compare( )`. 
```javascript
router.route('/users/login')
    .post((req, res) => {
      User.findOne({ email: req.body.email }, async (err, user) => {
        if (err) {
          return res.send(err);
        }
        if (await bcrypt.compare(req.body.password, user.password)) {
          return res.send(`Welcome back ${user.firstName}`)
        }
        return res.send('Wrong Password');
      })
    });
```

`bcrypt.compare( )` resolves to either true or false. If it results to true a welcome back message with the users first name will be sent back. If false we'll return wrong Password.

Lets Create a User
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/n46nwxipdrcwzpeakgpt.png)

Output using the correct Password
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/t2rpxuytndi2dpftduf9.png)

Output using the wrong Password
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/whnbinx15n0fldw7fnkd.png)

Nothing beats a working solution!
_Day 26_
The hard parts of my internship
Tags: beginners, career, codenewbie, webdev
Published: 2020-08-11 19:28:03

In less than a month my internship is going to be over. **I'm scared**, I'm not ready nor capable of taking a full-time job. This internship was supposed to help me to get ready for a job, but it's far from reality. I know this sounds pitiful, maybe this crushed my morale and I'm frustrated, maybe I'm exaggerating, we’ll never know.


![Pity man - me right now](https://dev-to-uploads.s3.amazonaws.com/i/g6ihnsh0xda3e3itehed.jpg)<figcaption>Right now I feel like this</figcaption>

During this time **I quit a lot of things that made me happy** and struggled with some others, and this pandemic doesn't make it easier for anyone. Between personal issues, family issues, the university, and being away from my loved ones broke me, at this moment I can't handle any of this.


![Too much for me](https://dev-to-uploads.s3.amazonaws.com/i/1j4697t2obmyut0wc06p.png) <figcaption>Too much for me</figcaption>

But I learned, finally I made it and this hell it's going to be over soon. This is enough drama for you and me, so let's talk about the *invaluable lessons*.

**1. Do not be a workaholic!** 

My contract says that I work from 8 AM to 5 PM from Monday to Friday. Due to my lack of experience, I allowed assignments outside of my working hours. After talking to a few friends, I noticed that this is a big NO! **They encouraged me to stand up and say NO!**

**2. Ask questions, a lot!** 

This is my first experience, so they need to teach me, I was scared to ask questions, I didn't want to look like a fool until now I had the feeling that I had to know everything because they taught it to me in the university, partly I knew some things, but the rest I had to learn as time went by.

**3. Ask for help, don't wait until it's too late!**

I had been struggling with a lot of technical issues, but I wanted to fix them without anyone's help, this is a silly mistake. You have a team, don't waste your time and ask for help at the right moment.

**4. Check your mental health!**

Yes, this is the MOST important thing in the world! I'm dealing with a lot of these issues at this moment, I'm broken. Sadly the family members that I live with don't understand this and I can't get their support.


![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/7oskxmaqpz5ic6eg66u4.jpg) <figcaption>Too much to handle</figcaption>

#Final words

Yes, I know this looks like catharsis and not a meaningful post, these are my thoughts. It's very hard for me to write this down, I do this because I need to drain these bad feelings, plus we all are humans and have problems, **I don't do this to draw attention to myself, I just want to raise people's awareness and invite them to talk about their problems**.
Mozilla Changing = Lots of Layoffs
Tags: news, mozilla, firefox
Published: 2020-08-11 19:16:45

Mozilla just recently announced their plans to restructure in a blog post titles _[Changing World, Changing Mozilla](https://blog.mozilla.org/blog/2020/08/11/changing-world-changing-mozilla/)_. 

From the announcement:

>> Mozilla exists so the internet can help the world collectively meet the range of challenges a moment like this presents. Firefox is a part of this. But we know we also need to go beyond the browser to give people new products and technologies that both excite them and represent their interests. Over the last while, it has been clear that Mozilla is not structured properly to create these new things — and to build the better internet we all deserve.

>> Today we announced a significant restructuring of Mozilla Corporation. This will strengthen our ability to build and invest in products and services that will give people alternatives to conventional Big Tech. Sadly, the changes also include a significant reduction in our workforce by approximately 250 people. These are individuals of exceptional professional and personal caliber who have made outstanding contributions to who we are today. To each of them, I extend my heartfelt thanks and deepest regrets that we have come to this point. This is a humbling recognition of the realities we face, and what is needed to overcome them...

## [Read more here.](https://blog.mozilla.org/blog/2020/08/11/changing-world-changing-mozilla/)