teleren/devto huggingface dataset:
Fight hipster culture in tech
Tags: team, culture, learning
Published: 2020-08-12 21:30:52

"You haven't heard of this?" is a phrase that we hear constantly from the hipsters in our lives. I am guilty of saying this. We all like to be in the know and stay ahead of the game. Tech is constantly changing at a rapid pace. The jokes about the abundance of JavaScript libraries, new frameworks, and new programming languages are everywhere.

There is an endless stream of awesome things to learn. The search engine has brought us so much information. It's awesome....until it's not. Many of us have heard a similar variation of this phrase ,and some of us ,including myself, have also said this. Has anyone ever questioned if using this language harms us more than helps us? This industry is amazing because there is so much we can learn about and there are many problems to be solved with new tools. We have to stay focused though.

What can you do to fight this? What works for me is keeping a list of what I want to learn. I stick with that list. If I come across something that I want to learn, I put it in another list that I call a "parking lot." I am sure this might seem boring and mundane to some of you. This has been key to helping me advance my skills ,and sometimes the easiest lessons in life are the hardest to learn.

What are you learning about? Do you have any tips or tricks for how you stay focused?
Pare de usar git push --force
Tags: ptbr, git
Published: 2020-08-12 20:01:05

---
title: "Pare de usar git push --force"
published: true
description:
tags: ptbr, git
canonical_url:
cover_image:
series:
---

<!--- Acima está o cabeçalho, com as informações do seu post, edite-as de acordo com sua necessidade. Para saber mais: https://dev.to/p/editor_guide
Apague tudo que está abaixo dessa linha e escreva seu post --->

> **[Esse conteúdo é abordado no meu treinamento de conceitos de git](https://github.com/PauloGoncalvesBH/treinamento-git)**

## Reescrevendo a história da branch com segurança

Ao reescrever a história da nossa branch, com `git rebase`, por exemplo, costumamos utilizar o `git push --force`. Essa opção força o envio das alterações e substitui todas as alterações remotas pela versão local.

O grande perigo é que, se outra pessoa tiver enviado uma alteração no repositório remoto e que não estava na sua versão local, esse trabalho será totalmente perdido.

## `git push --force-with-lease`

Para evitar essa situação (e muita dor de cabeça), adote o uso de `git push --force-with-lease` em detrimento de `git push --force`.

Esta opção permite forçar o push sem o risco de sobrescrever acidentalmente o trabalho de outra pessoa.

Ele atualizará a branch remota APENAS se o histórico dela for igual ao histórico que você alterou localmente, caso contrário o `push` será rejeitado. Nesse caso, você terá que levar a alteração remota da outra pessoa para a sua branch local antes de tentar fazer o `git push --force-with-lease` novamente.

*Exemplo de `push` rejeitado com o alerta de `stale info` (informação velha):*

![O que acontece com push --force-with-lease](https://raw.githubusercontent.com/PauloGoncalvesBH/Pare-de-usar-git-push--force/trunk/images/mensagem-terminal.png)

Pronto 😃 agora você pode garantir que não irá apagar acidentalmente alteração que alguém possa ter dado `push` enquanto você reescreveu o histórico!

Para aprofundar no tema recomendo a própria [documentação do git sobre _git-push_](https://git-scm.com/docs/git-push).

> Don't rewrite public history unless you're really sure about what you're doing. And if you do, be safe and force-with-lease.

---

###### _Esse post está sendo versionado e hospedado no [Github](https://github.com/PauloGoncalvesBH/Pare-de-usar-git-push--force)_
How to Close Chrome window after X seconds
Published: 2020-08-12 21:26:14

```
// ==UserScript==
// @name         Close window after X seconds
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://yoursite.com/*
// @grant        window.close
// ==/UserScript==

(function() {
    'use strict';

    setTimeout (window.close, 5000);

})();
```

https://stackoverflow.com/questions/19761241/window-close-and-self-close-do-not-close-the-window-in-chrome/34875656#34875656
How to build a personal brand and get noticed
Tags: beginners, career, motivation
Published: 2020-08-12 21:17:29

## What is it?
Let's get to the chase, getting noticed is difficult as is, and without getting noticed there isn't much you can do to gain any advantage in life. From getting a job to gaining a skill, if you know people and they know you, things get easier.

A lot of people make a mistake of thinking that just because they build something cool, people will somehow magically know about it and start noticing them, this happens so rarely that it's better to spend some extra effort and market yourself efficiently.

Here's a scenario, if you have applied for a job, and the employer asks you for a CV, would it be better to send them a PDF which they then have to download and then open in some kind of program, or send them a link to your website preferrably with a domain that's in your name with all the extra cool details about you.

Having a personal website gives you a huge empty canvas to draw on, you can do anything with it to present your true self, and you can present as much info about yourself as you like. Unlike the constraints of a PDF where adding images and links may not always work as expected.

A website allows you to present all of your projects in a form that you want them to be seen in. Spend some time on it, this can be your first impression and you can really impress the potential clients with this.

## On the note of projects
I see so many people, a lot of them just graduating from college who have absolutely no projects under their belt, these people then have to spend extra time after graduation to build up a portfolio so they can be hired somewhere. 

Listen, you are spending 4-5 years at a university, you will be doing lots of projects, spend extra time on these projects, nobody is going to ask you or care about what grade you had in that Data Structures class but if you have a project showing all those skills put to work, you'll be way ahead of a lot of people.

## Presentation
An amalgmation of my first and second point, you need to put effort to get noticed, and you need to build projects so there's something to notice. Presentation comes to play here, if somebody asks you to show them your project and the only way you can do that is by sending them a zipped up version of your project files which they then have to open, install dependencies, and then run, you have already fallen behind.

Here's a list of things every person getting started in tech should do:

## Build projects
Host the code on github, preferrably with proper commit messages and history

Write good documentation, examples, images -- A good Readme would do

Host the compiled project somewhere and give this link to anyone who wants a demo

There you have it.

Do these things and you will have such a huge advantage over yourself if you didn't do it.
[Day 1] Initial login to the server
Tags: ubuntu
Published: 2020-08-12 21:11:47

Hello guys!

Today is my very first day of my challenge. I'm going to log in to my server for first time and configure all necessary settings: updating server's dependencies and setting up user's permissions.

## Update

After logging in, the very first thing you have to do is make sure all dependencies are up to date. For updating in Ubuntu there are two commands:

```ssh
apt update
apt upgrade
```

_If you're getting error related to permissions, because you're not logged in as `root`, put `sudo` before each command._

Optionally, you can remove outdated packages by running command `apt autoremove`, which I did.

## New user 

Using `root` account on daily basis is not the best move as it is the most powerful one on the machine, especially when you want to use it from SSH. I need to create new user that will have administrative rights.

_I recommend you to use password manager for keeping your login informations. My first choice for storing passwords for free is [KeePass](https://keepass.info/)._

To create new user, I typed in:

```ssh
adduser johndoe
```

First I entered password and repeated it, then skipped all remaining fields and confirmed them. Second step of creating user is to grant permissions.

```ssh
usermod -aG sudo johndoe
```

That's it! For confirmation, I logged in to new account and run `sudo reboot now` command.

---

In next post I will talk about securing server by setting up firewall and disable `root` access from ssh. See you tomorrow!

## References

* [Digital Ocean documentation](https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-20-04)

---

Cover image: <span>Photo by <a href="https://unsplash.com/@markusspiske?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Markus Spiske</a> on <a href="https://unsplash.com/s/photos/sandbox?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></span>
Can someone #explainlikeimfive the concept of virtual private cloud ?
Tags: explainlikeimfive
Published: 2020-08-12 20:46:13

Hello ! 
I have just started with my cloud journey and so far have a fair understanding of what public,private and hybrid clouds are.However finding it a bit difficult to wrap my head around VPC. Any references to post/links would be appreciated as well !

Thanks !
Serverless Eventing: Cloud Native Messaging with NATS Streaming Server
Tags: serverlesseventing, eventingbus, nats, knative
Published: 2020-08-13 20:12:10

---
title: Serverless Eventing: Cloud Native Messaging with NATS Streaming Server
published: true
series: Serverless Eventing
date: 2020-08-12 20:43:03 UTC
tags: ServerlessEventing,eventingbus,nats,knative
canonical_url: https://thejaysmith.com/titles/serverlessjay/severless-eventing/serverless-eventing-cloud-native-messaging-with-nats-streaming-server/
---
We talked about the importance of an Eventing Bus earlier in the Serverless Eventing series. It is a generic term for a concept and doesn’t reflect a specific brand or technology. I previously showed you how can use Kafka as an Eventing Bus.
 [Continue reading - Serverless Eventing: Cloud Native Messaging with NATS Streaming Server](https://thejaysmith.com/titles/serverlessjay/severless-eventing/serverless-eventing-cloud-native-messaging-with-nats-streaming-server/) appeared first on [Jason (Jay) Smith](https://thejaysmith.com).
My Choice of Browser
Tags: internet, browser, software
Published: 2020-08-12 20:28:43

## First Choice
I use https://vivaldi.com

#### Vivaldi pros:
- based on chromium so it supports chrome extensions

- no google tracking

- I give it a 9.5 out of 10 for custom keyboard bindings support

- has the best bookmark organizer (implemented as left pane treeview like a File Explorer) and also dedicated bookmark manager. I've seen no other browser that competes.

- mouse gestures; the only two I use are going backward (right-hold left click) and forward (left-hold right click) in the current tab's browse history, 

#### Vivaldi cons:
- has a handful of bugs, but nothing showstopping

- is slower than Chrome and Chromium, especially with many dozens of tabs open

#### P.S.
They have a free web-based email service at https://webmail.vivaldi.net

## Second Choice
I also recommend the raw chromium browser

mac:
`brew install chromium`

windows:
`choco install chromium`
🔍 Which Product Has the Best Slogan
Tags: webdev, discuss, showdev
Published: 2020-08-12 20:23:55

[Screpy](https://screpy.com) - AI-Based SEO Analysis & Monitoring Tool
Treasure - Take back control of your data with Treasure!
ClipDish - Stop scrolling. Start cooking. Try ClipDish
Particle Systems - Supercharge your static website
Nodewood - Build your next app with Nodewood!
Wicked Templates - HTML responsive templates ready to customize out of the box.
Pllums - Portable Checkout API For Businesses
StockAlarm - Wake up when it matters most.
[Tractific](https://tractific.com/) - Receive solutions to convert more trial users into paid users.
Repatch - Repair your devices without leaving your home
Midnight - A virtual speakeasy for tired souls looking to lift their spirits.
Swaptoapp - Swap To App Any Website
Divjoy - Yak-shaving as a service
Buildfaster - HTML themes made easy as pie
Why should you send “thank you email” and “follow up email”?
Tags: jobs, career, webdev
Published: 2020-08-12 20:19:54


 [originally posted on blog.accolades.dev](https://blog.accolades.dev/2020/08/09/why-should-you-send-thank-you-email-and-follow-up-email/)
_Supposedly you had an interview and you feel that you did alright but you actually want to stand out from the regular job seekers. What do you do?_

**You send them two emails to make yourself memorable!**

######Hi, I am Luc, a frontend developer in his 40’s. If this is the first time you “bump” into my content, I am pleased you are here. 

#Why should you send “thank you email” and “follow up email”?

Finding a job regularly takes time, effort, and sometimes months of researches and applying. Sometimes the main job-seeking requires skills and techniques to actually find the job. 

This week I thought I will give you a hand on how to stand out from the crowd when it comes to job seeking. 

Since not many people send thank you emails this is an opportunity for you as a job seeker to improve your quality and being seen by the recruiter. 

####So let’s begin.

The “_Thank you_” email should be sent within 6-8 hours after the actual interview. As the recruiter still has you in his mind, your name has a face. That doesn’t mean necessarily that it will respond to you, but don’t worry I have you covered, we have the second opportunity. 

The “Follow up” email. This second email I recommend you’ll send ten days after the interview. The best will be if the days are business days. This way you make sure you will be remembered for the right reason.

####What to write?

Not all of us are inspired and prepared to write this kind of email. So, I made a research and create one template of each. They are short and concise as we want to thank the recruiters. 

Below there are two templates that hopefully you’ll find them fit for your needs. 

#####Thank you email:

_“Dear (Interviewer), Thank you very much for taking the time to see me today. I enjoyed our conversation and I am very interested in the role. 
(Add 2-3 lines reminding them about something positive in the interview or something that you wish you had mentioned)._

I look forward to hearing from you at your earliest convenience.”_

#####Follow up email:

_(Subject line) Your name, date/time Interview.
“Dear (Interviewer), I hope this finds you well. Since I am still very interested in this role, I was wondering whether you have any feedback for me at this time, please?”_

####As an ending note, I would advise you to don’t badger recruiters and hiring managers.

You want to be memorable for the right reasons, not as a stalker!

Thank you for your time and good luck in finding your best job. 🤞
Thank you for reading. If you want to connect with me on Twitter [I am here.](https://twitter.com/accolades_dev)
Agile and DevOps Test Expo Conference 2020
Tags: devops, agile, testing
Published: 2020-08-12 20:13:04

Unicom is organizing an Agile and DevOps Test Expo Conference 2020 on 14-16 October 2020 in London. There are many reasons for you to attend this conference. Some of them are:

1. Knowledge-sharing
2. The conferences bring together industry experts
3. An opportunity to showcase your company
4. Build brand awareness
5. Live interaction with speakers
6. Networking even after the conference is over
7. Digital vendor booths to visit & discover more about tools, solutions and services.

You can learn more about the conference and the speakers participating in it here: https://conference.unicom.co.uk/testexpo/2020/london/
Learning Graphs Part 1: Implementation
Tags: beginners, javascript, computerscience, algorithms
Published: 2020-08-12 20:13:03

Similar to [tree data structures](https://dev.to/123jackcole/learning-binary-trees-part-1-implementation-55bb), a graph is a non-linear data structure. Graphs are made up of nodes and edges. You may also see nodes referred to as vertices and edges referred to as lines. A real life application of a graph could be storing users of a social media network, where the node contains information about the user and the edges show their connections to other users.

![Image of Graph from Wiki](https://dev-to-uploads.s3.amazonaws.com/i/95ntd9qjow6rbewo9bti.png)

When implementing this graph we are going to be using an [adjacency list](https://en.wikipedia.org/wiki/Adjacency_list#:~:text=In%20graph%20theory%20and%20computer,for%20use%20in%20computer%20programs.). The basics of the list is that it is going to be a map where each value represents a node and each value will be an array containing all of the nodes edges.

![Graph class implementation](https://dev-to-uploads.s3.amazonaws.com/i/gkhx2tdg1jqzx5yvyop1.png)

To create our graph we are going to need two basic functions. One to add new nodes, and another to add edges.

For our node function we are going to simply add in our data for our node and associate that node with an empty array which will later store it's edges.

![Add node implementation](https://dev-to-uploads.s3.amazonaws.com/i/bim80w3dtztyu15xr4ek.png)

When adding our edges we pass in the two nodes we want to connect with an edge. We use the map's get method to find the node and add the other node to it's list. We need to do this for the other node as well because graphs are non-directional.

![Add edge implementation](https://dev-to-uploads.s3.amazonaws.com/i/b6hlr7q31voh6l47pzsp.png)

A third method that we can implement to help us better view our graph is print. Using ES6 syntax we use a for of loop to print every key value pair in our list.

![Print method implementation](https://dev-to-uploads.s3.amazonaws.com/i/35o7ed26ehp0pvc8teaq.png)

Voila! After creating some sample data and running it everything seems to be working. 

![Test Data](https://dev-to-uploads.s3.amazonaws.com/i/zonzxv5ofa7woc6p91y8.png)

![Terminal showing print method output](https://dev-to-uploads.s3.amazonaws.com/i/fgyf6bf61jlj8xmjk201.png)

Thanks for reading this far. Next week we'll look at how to search graphs. The code for this post can be found [here](https://github.com/123JackCole/graphs).
Python vs C# vs C++ vs Swift..... which is better? 
Tags: python, csharp, cplus, cpp
Published: 2020-08-12 20:08:29

So, I like JavaScript and vue,
But mainly JS when I’m using React because it adds structure.

But, I’m looking at wanting to do something more “precise” like Programming. It’s not so much up in the air of this color, font, box size, ect..... that always changes and varies by client. 


I like swift, but it’s limited,
I like how the code is a bit visual, but.... is that just the editor? 

Recently, I’ve been focusing on Python and I like it, and the Django side of desktop apps and also DS. 

But, which is more visual with when your coding, you see results other then a error in the console if something goes wrong?
Host Your Django Project in pythonanywhere Free
Tags: django, python, webdev
Published: 2020-08-12 20:07:09

**PythonAnywhere** is an online integrated development environment and web hosting service based on the Python programming language.
You can host your pet projects here which is free.
### Let's start :
- Go to [PythonAnywhere](http://pythonanywhere.com)
- Create account and login
- Go to consoles
- Select bash console
- Create virtual environment for python
```
mkvirtualenv --python=python3.8 envname
```
- Your environment will be activated and in bash you will see the envname in parenthesis
- Install django
```
pip install -U django==3.0.3
```
  - check django path
```
which django-admin.py
```
- install necessary packages 
```
pip instal xyz
```
- Clone git repo 
```
git clone repo.git
``` 
**Note :** You should have a git repo of the project or web application
- Go to dashboard of pythonanywhere.com and go to Web
- Select create new web app
 - next
 - select manual configuration
 - next next done !
- Here you will see the url for your project click and you will see hello world page which is default for python
#### Config WebApp :
- `setvirtualenv` path which you will find in console using

```
which django-admin.py
```
- set `source code` as `/home/username/projectname`
- static files
  - set `/static/admin/` as 	`/home/username/.virtualenvs/blog/lib/python3.8/site-packages/django/contrib/admin/static/admin`
  - set `/static/` as your project static folder path as mine is `	/home/jspw/shifat.com/blog/static`


* set `Virtualenv` dir as `/home/username/.virtualenvs/env_name`
* Edit WSGI configuration file as the file given below

```py
import os
import sys
## assuming your django settings file is at '/home/jspw/mysite/mysite/settings.py'
## and your manage.py is is at '/home/jspw/mysite/manage.py'
path = '/home/jspw/mysite'  #path of your project
if path not in sys.path:
    sys.path.append(path)
os.chdir(path)
os.environ.setdefault('DJANGO_SETTINGS_MODULE', "food_menu_project.settings")  #projectname.settings
import django

django.setup()
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
``` 
- Done ! Clik on the reload in the webapp page then go to the website url  and boom!!!

**Note :** Check settings.py file and you have allowed your host url.
Best way to deal with lots of images on a webpage?
Tags: discuss, help, performance, webdev
Published: 2020-08-12 20:01:58

On my website [francoscarpa.com](https://francoscarpa.com), I publish photos of my private life among other stuff. Since I’m so involved about performance and UX, I’d like to know from you what’s the best way to serve these photos. To give you an example of what I’m trying to accomplish, [here](https://francoscarpa.com/notes/riccione/)’s an example of Web page where I put some photos. I know about all the HTML topics like  `sizes`, `srcset` and `picture`, but it would be impossible to replicate the code to serve the right image for all of my images. It would be perfect if there was something that could serve the perfect image for the user “at runtime”. How would you deal with this issue?