teleren/devto huggingface dataset:
The Perfect Private Project
Tags: productivity, selfimprovement
Published: 2020-05-12 07:00:26

---
title: The Perfect Private Project
published: true
description: Bored as software developer? Why not create something cool!
tags: #productivity #selfimprovement
---
<i>Beginner, intermediate or advanced, professional, or not, there is one thing all developers have in common - Curiosity.</i>

<h1>Developer by Day, Hacker at Night</h1>
Ever since I started my coding journey, I always had a side project going on next to school or work. Even if I was already very busy with keeping up with them or let's say: because I was so busy.

Private projects give you something ordered ones can not give you - Satisfaction on a higher level. It was your idea, implemented for you or maybe someone close, so there is this personal connection you build to all these lines, which is way stronger than when coding for a customer.
Anyhow, the benefits are there and everyone who at least started working on a private project knows them. But finding the ideal private project can be very hard. I found myself searching for terms like "<insert adjective here> <insert programming language here> project idea" till I stumbled upon the perfect answer to this question.

Of course, you can always work yourself through tons and tons of seemingly endless lists of ideas, but how about searching through your own PC? What I mean is creating clones of your favorite or most used programs!

<h1>Getting started</h1>
It not only has the side effect of making you a power user of the particular piece of software (if you are not already), but you may also come up with nice little modifications, which improve productivity, usability and much more.

Taking this idea, a step further, after finishing your clone or having a good insight into functionalities you want to improve or add into the software in question, you may check if it is in fact an open source project, which would enable you to make your wildest software engineering dreams come true.
The advantage of determining whether the software is opensource AFTER you thought through all the details is that you have far less pressure. Sure, if you see the slightest opportunity of you collaborating with someone you want to impress, it is natural and not bad at all to limit yourself in some way or another. But this potentially takes away this special little emotion which makes us one: <u>Curiosity</u>.

You would much rather give the code a quick look through if you already knew what is yet to come, limiting yourself in your own spectrum of ideas and being held back by maybe just one simple line of code. Routine is good but thinking outside the box is what keeps the world turning! For that you don't need to come up with the next big App Store hit or Steam best seller, but limit your information input so that your curiosity is not undermined by the convenience of taking the path of least resistance or the feeling of having to stick to an already introduced pattern.

How you are going to implement certain functionalities is not the important part, <u>the thoughts behind them are<u>.
QnA: I am planning to learn a JavaScript framework. So should I stick with vanilla js or typescript?
Tags: career, javascript, tutorial, react
Published: 2020-05-12 06:53:04

Excellent question. 

JavaScript language is getting more popular by the day as the world is moving on to the browsers and mobile.

If you want to succeed as a JavaScript developer, I highly highly recommend you to get your vanilla fundamentals super clear.

JavaScript language is notorious in that it is so easy to just start using it and creating stuff with it - but, it's a little tricky to use it correctly.


So, it's very important you know the concepts like how "this" works in JavaScript, or what are closures, why is hoisting important. The list is long.

[JavaScript closures made super easy](http://ngninja.com/posts/javascript-closures-made-super-easy)

Once you know the fundamentals of vanilla javascript, then I would encourage you to learn the importance of types in JavaScript applications. You wouldn't be able to justify the importance of TypeScript if you are not sure why you need them in the first place.

[Simplified explanation of 'this' keyword in JavaScript](http://ngninja.com/posts/what-is-this-in-javascript)

And, then when you have enough understanding about all the above - you should take up a JS framework and start building applications. You can start with React, Angular, Vue - these all are really good.

In today's world, I believe being a full-stack developer pays of a lot more. I can go into the details about this in the future. But, don't stop working on backend technologies while you are learning JavaScript.

---


If you liked this, I'd encourage you to check my other work -
[Blog - NgNinja Academy](http://ngninja.com/)
[Instagram](https://www.instagram.com/ranjana.ban)
[eBook -> HTML to React: The Ultimate Guide](https://gumroad.com/l/html2react)
Grammarly Discount 2020 Get Upto 70% Off
Published: 2020-05-12 06:51:29

Beyond Grammar and Spelling

From grammar and spelling to style and tone, Grammarly helps you eliminate errors and find the perfect words to express yourself.

Meet Grammarly’s Tone Detector

Check the tone of your message before you hit send. Be reassured that your reader will react the way you expect based on your intended tone.

Everyone Can Be a Great Writer

“Grammarly allows me to get those communications out and feel confident that I’m putting my best foot forward. Grammarly is like a little superpower, especially when I need to be at 110%.”

https://angel.co/company/grammarly-discount-code-1
If you ever need to put HTML/CSS/JS or Web server inside native window
Tags: kotlin, electron, webdev
Published: 2020-05-12 06:21:18

That is, webview; but the performance varies. Also, executable sizes.

{% post https://dev.to/patarapolw/performant-webview-alternatives-to-electron-3b5j %}

I know there is [Neutralino.js](https://github.com/neutralinojs/neutralinojs), but some options are not customizable to my liking. Also, I need a complex backend solution anyway, so I created k-neu.

{% github patarapolw/k-neu no-readme %}

Now, putting in a native window is very simple,

Get JAR files here, <https://github.com/patarapolw/k-neu/releases>

Create [config.json](https://github.com/patarapolw/k-neu/tree/master/src/main/resources/config.json) and put in alongside the JAR file of your OS.

```json
{
  "title": "app1",
  "url": "index.html",
  "maximized": true
}
```

Or,

```json
{
  "title": "app2",
  "server": ["java", "-jar", "server.jar"],
  "url": "http://localhost:${PORT}",
  "maximized": true
}
```

Of course, you can just edit [App.kt](https://github.com/patarapolw/k-neu/tree/master/src/main/kotlin/App.kt) directly. So that you can run server without multiple JAR files.

Now, you still have to ask the client to install Java Runtime Environment (JRE).
Tim Bourguignon is a guest on his own show... what I learned recording... my own DevJourney
Tags: devjourney, career, learning, podcast
Published: 2020-05-12 05:58:15

---
title: Tim Bourguignon is a guest on his own show... what I learned recording... my own DevJourney
published: true
description: Tim Bourguignon is a guest on his own show. After being interviewed for the DevJourney podcast, here are the key takeways I personally took out of the discussion.
tags: DevJourney, Career, Learning, Podcasting
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/176j6hpbrhc8d4cd4fmn.png
canonical_url: https://timbourguignon.fr/devjourney100
---

In order to celebrate the 100th episode of the [Software developer's Journey](https://devjourney.info) podcast, [Amitai Schleier](https://schmonz.com) took over the show and put me in the hot seat. It's hard to list my own takeaways, but I took a few things out of the discussion:
* I had forgotten that I spend time playing Lucas-Arts point-and-click games when I was 10-ish. Those games were in English only, and I had to play with a dictionary on my lap (I grew up in France) to decipher what was going on. This is how I started to learn English.
* When asked what were the biggest learnings for me as a host, I answered "deep listening" and "creating without expecting anything in return". Deep listening, not to answer, but t o truly be here in the moment is a crucial skill. This is one of my coaching tools, a tool that serves daily. I believe this is also mandatory to run a freestyle show like I do. The "ego-less" part is something I have been doing for years. Do something because it inherently feels good. It feels good to listen to all those stories and be inspired. It feels good to think that I might be helping others. If feels good to use my privileges to help others. And if/when somethings comes my way as a result, even better, but that's never the starting point. We also dwelled on success metrics, and I was happy to be able to put it out there: the only metric I have is "am I having fun?"
* When Amitai asked what my superpower is, I spoke about being able to lead and be followed. I still don't know how and why this happens, but it tends to happen. I am somehow able to lead people through fire, convince them to follow me there. It still bugs me that I cannot understand how that works...

Advice:
* You are at the steering wheel of your own life, don't let life happen by default!

Thanks Amitai for hosting this show!

You can find the full episode and the shownotes on [devjourney.info](https://devjourney.info/Guests/100_TimBourguignon.html) or directly [here on DEV](https://dev.to/devjourneyfm)

Did you listen to my story?

* What did you learn?
* What are your personal takeaways?
* What did you find particularly interesting?
Video: Interaction between Component with @Input and @Output in Angular
Tags: angular, angular9, webdev, node
Published: 2020-05-12 05:54:55

---
title: Video: Interaction between Component with @Input and @Output in Angular
published: true
description: Video: Interaction between Component with @Input and @Output in Angular
tags: Angular, Angular9, WebDev, Node
---

In this video, We are going to learn how we can do parent to child and child to parent component interaction with Angular @Input and @Output directive. 

We are going to learn how we can communicate and send a message from parent to child using @Input and Same way we are going to learn how we are going to send a message from the child to parent with help of event emitter and output directives.

{% youtube tN3oomhhLtk%}

Source Code for this video is available on - https://github.com/JalpeshVadgama/AngularComponentInteractionDemo

If you like this video and wanted to see a similar kind of video then, please subscribe to my youtube channel at - http://bit.ly/codewithjv.

Also, Do let me know, what kind of content you want to see for angular on my channel.
Some Useful Linux Commands I use at work.
Tags: terminal, webdev
Published: 2020-05-12 05:33:25

---
title: Some Useful Linux Commands I use at work.
published: true
description: Some Commands I keep forgetting but I use them a lot
tags: terminal, webdev
---

### Whats my ip address?

```bash
curl ifconfig.me
```

### Connect to remote server with ssh (via pem file)

```bash
ssh -i ./file.pem username@ip_address
```

### Copy File local to remote server (via pem file)

```bash
scp -i ./file.pem file.zip username@ip_address:/home/directory/file.zip
```

### Unzip a file

```bash
unzip file.zip -d /location
```

### Kill a unresponsive PORT

```bash
sudo lsof -t -i:PORT_NUMBER
```

```bash
kill PID
```

### Kill a unresponsive app

```bash
xkill
```

### Create a new file

```bash
touch FILE_NAME.EXTENSION
```

### Search all files inside directory with line Number

```bash
grep nr- 'Search Term' .
```

### List files

```bash
ls - (List files in current directory)
ll - (List files in current directory with file permissions)
```

### Folder size

```bash
du -sh *
```

### Unzip a .tar file

```bash
tar -xvf FILE_NAME.tar
```

### Connect to SSH with username and ip address (Digital Ocean)

```bash
ssh username@ip_address
```

### Display File content

```bash
cat FILE_NAME.js
```

### Download a website

```bash
wget https://google.com
```

### UBUNTU - Open current directory in File explorer (UI)

```bash
nautilus .
```
OTP Verification Using Sms4inida Api With Php and Mysql
Tags: php, beginners, codenewbie
Published: 2020-05-12 05:32:22


OTP verification is used for a security purpose during the registration time or login time. So here we made OTP Verification using the third-party API with some PHP functions and validation. Here we also used a database for a matching purpose OTP is right/wrong.

In this OTP verification, we used one form with and some basic input fields. Also, validation purposes we used submit function which we write in code. Here we used sms4india free API(25 messages only) with and basic of API key and secret keys.

How to create an account in Sms4inida:-

Step 1: Create an account in sms4india.

Step 2: After Login Click To Api and See over The Navbar.

Step 3: Then Click on Test Key Then Copy API Key And Secret Key, Paste “apikey=”&secret=”, here Then remove the Comma.

Step 4: Then They Provide Only 25 Test Free SMS.

After that, you have to create one database with one table. Under the table, you have added 3 Column’s contact number, OTP, and time. Then create a connection in the PHP file.

[Download source code](https://w3hubs.com/otp-verification-using-sms4inida-api-with-php-and-mysql/)
The Reference Architecture Disappointment
Tags: architecture, career, productivity, aws
Published: 2020-05-12 05:13:57



<!-- wp:paragraph -->
<p>There is a "phenomenon" that I have experienced through my career that I like to call the "Reference Architecture Disappointment". </p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>It´s a similar effect some people would experiment when they go to the MD´s consultation with several symptoms, just to find out that they may have a common cold. No frenzy at the Hospital, no crazy consultations, no House MD´s TV scenes. Just paracetamol, water and rest! </p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>So many years of Medicine School just to prescribe that? 
Well, yes. The MD was able to recognize a common cold between dozen of illnesses with the same set of symptoms, and prescribed the simplest and best treatment. Question is, would you be able to do it? </p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Same thing when a Solutions Architect deals with a set of requirements. The "Architect" will select the best architecture that solves a business problem, in the simplest and efficient manner possible. That means - sometimes - to use the "Reference Architecture" for that particular problem, with the necessary changes. </p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Those architectures emerge from practical experience and encompass patterns and best practices. Usually reinventing the wheel is just not a good idea. 

Keep it simple and Rock On!</p>
<!-- /wp:paragraph -->
Same Dockerfile for Production and Development
Tags: docker
Published: 2020-05-12 05:02:19

---
title: Same Dockerfile for Production and Development
published: true
description: You want your servers to run on docker and you want a consistent developer experience locally.
tags: docker
---

You want your servers to run on docker and you want a consistent developer experience locally.

Great! 

1. In your Dockerfile, COPY your source files as normal.
2. Create a docker-compose.yml file that mounts a volume from the host machine to the source directory (overriding the COPY from the dockerfile). Override the `command` inside docker-compose.yml as needed.

Build normally for production.
Use `docker-compose up --build` for development on your host machine.

Example: 

Dockerfile
```dockerfile
FROM node:alpine
WORKDIR /api
COPY package.json .
COPY yarn.lock .
RUN yarn install
COPY . /api

CMD ["node", "src/index.js"]
```

docker-compose.yml
```yaml
version: '3.6'
services:
  api:
    build: .
    volumes:
      - ./src:/api/src
    command: npx nodemon src/index.js
```
How to update Elasticsearch Version on AWS
Tags: aws, cloudformation
Published: 2020-05-12 04:27:39

---
title: How to update Elasticsearch Version on AWS
published: true
description: Short description how to upgrade ES on AWS without pain
tags: AWS, CloudFormation
---

In the AWS Elasticsearch documentation part of CloudFormation nothing writes about how to update the Elasticsearch version. First glance it is simple. Only change version number `ElasticsearchVersion`.

If you update `ElasticsearchVersion` in the Elasticsearch template, You would catch exception `AWS::Elasticsearch::Domain UPDATE_FAILED CloudFormation cannot update a stack when a custom-named resource requires replacing`

How to fix it. You need to add new section `UpdatePolicy` to your CloudFormation template like this:

```Yaml
  ElasticsearchDomain:
    Type: "AWS::Elasticsearch::Domain"
    Properties:
      ElasticsearchVersion: 7.4 #New version for example 7.1 -> 7.4
    UpdatePolicy:
      EnableVersionUpgrade: true
```
Other way. You can use AWS API call
```
curl --location --request POST 'https://es.us-east-1.amazonaws.com/2015-01-01/es/upgradeDomain' \
--data-raw '{
  "DomainName": "test-es",
  "TargetVersion": "7.4",
  "PerformCheckOnly": true # If `true` AWS run only check-update
}'
```
I use the Postman with AWS Signature. Take `AccessKey`, `SecretKey` and `Session Token` from `aws sts assume-role` or `aws sts get-session-token`. 

Documentation links
* [Upgrading ES](https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-version-migration.html)
* [ElasticSearch Cloudformation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html)
* [CloudFormation UpdatePolicy] (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html#cfn-attributes-updatepolicy-upgradeelasticsearchdomain)
* [Amazon ES Configuration API UpgradeElasticsearchDomain] (https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-configuration-api.html#es-configuration-api-actions-upgrade-domain)
asdasdasd
Tags: asdasd
Published: 2020-05-12 04:11:53

asdasdasdzxczxczxczxczxczxcxzczxczxc
asxzcdjzxczxczxczxczxczxczxc 
zxczxccccccccccccccccccccccccccccccccccccccasdasdasdsadasdasdasdsadsxzczxcxzc
Dicas de carreira para mulheres na TI - parte 1
Tags: portfolio, iniciante, carreira, curriculo
Published: 2020-05-12 04:08:44

Esse artigo foi escrito por [Silvia Coelho](https://www.linkedin.com/in/silvia-coelho/) e @daniclericuzi especialmente para o @elasprogramam.

Sabemos que o mercado de TI está aquecido e a demanda por profissionais só aumenta. No entanto, as empresas buscam pessoas com experiência profissional. Mas para quem está iniciando na área isso é uma grande barreira para se conseguir a primeira oportunidade. Gente, até para estágio exigem experiência. 

Antes de entrar nessa questão que pode ser "hackeada" através de um portfólio atualizado, vamos começar o artigo com uma dúvida bem mais recorrente:

###“Tá, comecei a estudar, já fiz alguns projetinhos, estou flertando com algumas empresas, buscando vagas mas...” 

Aí começam os “MAS”, e o primeiro: 

###"Ah, mas a empresa pede tantos requisitos! Não atendo TODOS esses requisitos"

Reflita bem: quem você conhece que atende todos os requisitos das vagas divulgadas pelas empresas. Indo mais além: quem faz a descrição dessas vagas?

Temos uma questão a trabalhar: segundo um [relatório interno da Hewlett Packard](https://hbrascend.org/topics/why-women-dont-apply-for-jobs-unless-theyre-100-qualified/?utm_source=linkedin&utm_medium=social&utm_campaign=HBR_Organic) mulheres só mandam currículo quando atendem 100% dos requisitos enquanto homens com apenas 60% se candidatam às vagas sem medo de ser felizes.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/7tqh1cndqf2esosxgtpl.jpg)

Depois de ler esse estudo, [Silvia Coelho](https://www.linkedin.com/in/silvia-coelho/), criadora do Elas Programam, reforça exaustivamente para que todas as mulheres mudem esse comportamento:
###"Mande seu CV mesmo que você não saiba metade das coisas que são exigidas. Não tenha medo. Você não vai conquistar o seu espaço se estiver paralisada pelo medo. Estude, mantenha uma rede de apoio sólida e se arrisque. Dificilmente o emprego dos seus sonhos vai cair no seu colo se você não se movimentar e acreditar em si mesma. Não é crime, não é imoral, nem faz de você uma mentirosa, mandar CV pra vagas que você não preenche todos os requisitos."

Não à toa, o mantra do [Elas Programam](https://www.facebook.com/groups/elasprogramam/) é:

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

Agora vamos para o outro “MAS”: 

###"Ah, mas a vaga pede experiência!"
Não tem experiência profissional registrada em carteira? Então, cria a experiência, use sua experiência de vida a seu favor. Em vez de se lamentar, movimente-se e crie sua experiência.

Produza conteúdo, faça trabalhos voluntários, replica um site, crie um site ou um app para uma ONG, contribua com alguma comunidade técnica, escreva um blog sobre os assuntos da área de interesse, crie um portfólio no [GitHub](https://github.com/). 

![alt text for accessibility](https://dev-to-uploads.s3.amazonaws.com/i/94cjnmb7v3ybvzfwea1r.png)

No próximo artigo vamos dar dicas de como criar esse tal de portfólio.
Is Kubernetes on Premise viable?
Tags: devops, kubernetes, cloud
Published: 2020-05-12 03:59:02

Public cloud providers are not always a choice. As cloud a lover, I prefer to use the cloud any time I can, but there are situations where simply we cannot. It can be due to data protection requirement, cost optimization, or just our boss that fear the changes. We probably would like It wasn’t so, but I’m sorry to say that we cannot always change the world. So, what to do in this case? The solution to reject Kubernetes advantages or avoiding container in favor of VMS is not an option at all. It easy to understand that the only option for us, k8s addicted, is to deploy it in on-premise. In this article, I will explain what are the critical points and what you have to take into account before starting this journey.


[Read the full article](https://towardsdatascience.com/is-kubernetes-on-premise-viable-8b488368af56?source=friends_link&sk=c279c55b104414ac32723ffd6dd22906)