teleren/devto huggingface dataset:
How to Deploy Angular on Nginx remote Server Example – Use Vultr VPS Hosting
Tags: deployment, vultr, nginx, vps
Published: 2021-05-10 12:32:28

https://grokonez.com/frontend/angular/angular-deployment/how-to-deploy-angular-on-nginx-remote-server-example-use-vultr-vps-hosting

How to Deploy Angular on Nginx remote Server Example – Use Vultr VPS Hosting

In the tutorial, We show how to deploy Angular Client with Production mode on Nginx Remote Server with Vultr Hosting.

Related post:
– <a href="https://grokonez.com/frontend/angular-6-dynamic-navigation-bar-add-remove-route-dynamically">Angular 6 dynamic Navigation Bar – add/remove Route dynamically</a>

<!--more-->
<h2>Technologies</h2>
– Vultr Hosting
– Nginx Server
– Angular
<h2>Goal</h2>
<h3>Video Demo</h3>
<iframe width="853" height="480" src="https://www.youtube.com/embed/iPYgCYb2tZg?rel=0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
<h3>Objectives</h3>
Deploy Angular Client on Nginx remote server:
<ul>
<li>Normal deployment ->

<img src="https://grokonez.com/wp-content/uploads/2018/11/deploy-angular-client-on-nginx-server-with-vultr-hosting-result-2-1.png" alt="deploy-angular-client-on-nginx-server-with-vultr-hosting-result-2-1" width="424" height="259" class="alignnone size-full wp-image-15645" />
</li>
<li>Sub-folder deployment ->

<img src="https://grokonez.com/wp-content/uploads/2018/11/deploy-angular-client-on-nginx-server-with-vultr-vps-hosting-sub-folder-deploy.png" alt="deploy-angular-client-on-nginx-server-with-vultr-vps-hosting-sub-folder-deploy" width="509" height="262" class="alignnone size-full wp-image-15646" />
</li>
</ul>	

<strong>How to achieve it</strong>?

Start with production build <code>ng build --prod</code>.
-> Then copy output folder (<code>dist/</code> by default) to Nginx server.

<img src="https://grokonez.com/wp-content/uploads/2018/11/deploy-angular-client-on-nginx-server-with-vultr-vps-hosting-copy-production-build-from-local-to-remote-1-2.png" alt="deploy-angular-client-on-nginx-server-with-vultr-vps-hosting-copy-production-build-from-local-to-remote-1-2" width="670" height="219" class="alignnone size-full wp-image-15647" />

What are Production <code>--prod</code> optimizations?
<ul>
<li>Ahead-of-Time (AOT) Compilation: pre-compiles Angular component templates.</li>
<li>Production mode: deploys the production environment which enables production mode.</li>
<li>Bundling: concatenates your many application and library files into a few bundles.</li>
<li>Minification: removes excess whitespace, comments, and optional tokens.</li>
<li>Uglification: rewrites code to use short, cryptic variable and function names.</li>
<li>Dead code elimination: removes unreferenced modules and much unused code.</li>
</ul>

More at:

https://grokonez.com/frontend/angular/angular-deployment/how-to-deploy-angular-on-nginx-remote-server-example-use-vultr-vps-hosting

How to Deploy Angular on Nginx remote Server Example – Use Vultr VPS Hosting
Write better code with AI
Tags: ai, codereview
Published: 2021-05-10 12:24:44

Artificial intelligence is most of the significant technology nowadays. It opens new ways on how we look at the data.

It can:

* categorizing user’s messages to check the intention of the writer
* writing an article for us
* creating a whole application from mock-ups

**So, why we don’t use them to write review code written by us?**

## Deepcode meets those needs

[Deepcode](https://www.deepcode.ai/) is “The first real-time semantic code analysis — powered by AI” as it’s stated on their website. It’s created by [Snyk](https://snyk.io/). They take care of scanning your code in search of vulnerabilities. That’s why Deepcode has a strong background in scanning and analyzing the codebase.

![](https://cdn-images-1.medium.com/max/1600/1*pB9Y3m2nVl8QzJLVvSZ7TQ.png)

Deepcode not only points code that can lead to bugs or vulnerabilities but also gives you a hint on how to solve it. It’s a quick and effective way how we can improve our codebase.

Deepcode support 6 different languages:

* JavaScript/TypeScript
* Java
* Python
* C/C++
* C#
* PHP

and that’s everything for free.

## Using Deepcode

We can integrate deepcode with several IDE. We can use extensions for VS Code, Sublime Text, IntelliJ, and Atom. Also, we can integrate Deepcode’s bot into our repository. Bot is leaving comments about code analysis and bugs founded in opened pull requests.

![](https://cdn-images-1.medium.com/max/1600/1*QTEfYoWq1yYjrzpOSKf1cw.png)

More information about where and how you can use this you can find on the [Deepcode integrations](https://www.deepcode.ai/integrations) page.

## Where to use it?

I realize that’s not every project can take benefits from using Deepcode. Not in every project, you can use a tool that scans your whole codebase. It’s great for projects that have only one dev. The second pair of eyes is always at a premium. Deepcode can replace the second developer for finding minor bugs and common mistakes.

## Summary

Artificial intelligence is amazing. Helps in more and more ways. Deepcode is perfect for side projects without many developers. It can help you assure that your code doesn’t contain common mistakes. But it’s not limited to that, it can help also you in big projects where complement developer code review. Try [Deepcode](https://www.deepcode.ai/) yourself and let me know your thoughts.
Starter Project - Georce Commands
Published: 2021-05-10 12:19:46

I have created another [project](https://anluke.github.io/gource-generator/).

Simple static page with some of the gource commands that are copied to clipboard when clicked.
The idea is to start simple and build it as I progress through my learning journey.

I made the site from scratch using HTML/CSS & very little JavaScript (with a bit of help from Google😀).

I didn't want to push it too far so I stuck with the things I know.
For example: I wanted to create a popup "Copied!" when clicked on the command section but the solutions I found online were a bit advanced so I stuck with "Alert" option which is not great but at least I can explain it.

I will update the project as I develop more skills.
Do I need to do private side projects to be/become a professional web developer?
Tags: webdev, codeiscolorful, discuss, career
Published: 2021-05-10 12:17:31

Disclaimer: professional in this case means making a living as a web developer. 

 
This is a question I asked myself and discussed with other developers over my career multiple times. It seems like most web developers have at least one private side project ongoing or they are planning to. 
For me personally I also felt some need in the past to have a side project because all the cool kids I follow on Twitter have some and they have fun with it and are successful, at least that is what it looked like for me. And I wanted to have fun and be successful too. 

If you were on the job hunt in the last years as a web developer or talked to some devs that were you might asked yourself the same.  It often even feels like if you do not have an open source (e.g. GitHub) account and add that to your CV nobody will even look at it. 

So that specifically developers that are new to the profession get the feeling there is a need for private side projects to become and stay a web developer, is no miracle to me. 

From my experience, after more than 10 years of software development, private side projects are not a good indicator if someone is a professional web developer. Over my career I had years with and without side projects and I wasn't the only one, even the cool kids take breaks from their side projects.  
But I will say that private side projects can be quite helpful if you want to improve your coding skills or want to get into some new technology because you can do everything on your own terms. 
They are no requirement though. 

And please do not forget there are web developers out there which do not have any private time to spare for side projects and this does not make them any less a professional web developer. 


What are your thoughts and experiences with this?
Getting started with Hasura cloud
Tags: android, hasura, graphql
Published: 2021-05-10 12:08:58

First post in the series [Android app with Hasura cloud backend #1]

### What is Hasura?

Hasura cloud is a GraphQL engine provider for your data source. 

For this example, I'll connect my postgres db hosted in heroku with the cloud. 


---



### Getting started

To start with the cloud, go to https://cloud.hasura.io/ and create an account. It is free for dev usage.



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



Once account created by verifying the email, you'll land in dashboard —> Projects.



![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/20xsyc1f984hgsrremvr.png) 



Go ahead, and click on New project. It might ask you to select Free / Standard tier. I'm selecting Free. Now you should see a new new project created (even named?!) for you. 



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



I like the part where they took away the painful part of coming up with a name for the project. With few clicks, I already have a working graphQL engine to consume. But the source??



Launch the project console and ***onwards***.



---



### Connecting data source



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



Once the project console launched, you will land in API explorer. Without a data source, we don't have much to do here. Head over to the **Data** tab, where we create/connect the data source.



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



Click - **Connect Database** and switch to Heroku tab



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



Now click on **Create Database**, if you have logged into Heroku - the session would connect. Otherwise signup for a free heroku account and authorise to connect Hasura.



![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2mb449t6afftmvm1pion.png)



You should see a nice animation and a database created and connected with your project.



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


In case, you wonder what happended with Heroku, headover to https://dashboard.heroku.com/apps.

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

---

In the next post, I'll cover creating a table for an expense manager.
Daily Developer Jokes - Monday, May 10, 2021
Tags: jokes, dailydeveloperjokes
Published: 2021-05-10 12:00:08

---
title: "Daily Developer Jokes - Monday, May 10, 2021"
description: "Check out today's daily developer joke! (a project by Fred Adams at xtrp.io)"
series: "Daily Developer Jokes"
cover_image: "https://private.xtrp.io/projects/DailyDeveloperJokes/thumbnail_generator/?date=Monday%2C%20May%2010%2C%202021"
published: true
tags: #jokes, #dailydeveloperjokes
---

Generated by Daily Developer Jokes, a project by [Fred Adams](https://xtrp.io/) ([@xtrp](https://dev.to/xtrp) on DEV)

___Read about Daily Developer Jokes on [this blog post](https://xtrp.io/blog/2020/01/12/daily-jokes-bot-release/), and check out the [Daily Developer Jokes Website](https://dailydeveloperjokes.github.io/).___
### Today's Joke is...
![Joke Image](https://private.xtrp.io/projects/DailyDeveloperJokes/public_image_server/images/5e12588f481d4.png)

---
*Have a joke idea for a future post? Email ___[xtrp@xtrp.io](mailto:xtrp@xtrp.io)___ with your suggestions!*

*This joke comes from [Dad-Jokes GitHub Repo by Wes Bos](https://github.com/wesbos/dad-jokes) (thank you!), whose owner has given me permission to use this joke with credit.*

<!-- 
Joke text:
___Q:___ How many Prolog programmers does it take to change a lightbulb?

___A:___ Yes.
 -->
Your Handy Guide to Create the Good Work Plan (GWP) for Agile Teams
Tags: taskmanagementtool
Published: 2021-05-10 11:56:49

Your Handy Guide to Create the Good Work Plan (GWP) for Agile Teams
Team Task Management Tool
It all started back in 2017 when Matthew Taylor gave the solutions of the issues encountered in the workplace in Taylor Review. These solutions are known as Good Work Plan (GWP) and they are bringing revolutions in the modern workplaces. Let’s understand GWP with team task management tool from scratch and dig deep into its fundamentals. 

Introduction of Good Work Plan (GWP)
A good work plan is just another name for the Project Management Plan. It is aimed at achieving the ultimate goal at either a department or a company level. A GWP has an outline of the steps necessary to be taken by breaking tasks into subtasks or smaller milestones, considering resources and deliverables under the given deadline. 

Whether you are handling larger projects or planning for a venture, the Good Work Plan is essential. However, it is useful at any level in your enterprise as a roadmap for the entire project or process. It assists project managers to keep their teams involved in the project in an organized manner. Once the Good Work Plan is prepared, a robust task management tool can be used to keep the entire team in sync. 

Before going through five fundamentals of the GWP, let’s go through its objectives. 

Core Objectives of Good Work Plan
A GWP is designed to improve three main aspects of the working life in the UK and other countries globally. 

– Fair and just employment

– Clarity for employers and workers alike

– Legal transparency through tighter enforcement
Original Source: https://www.taskopad.com/blog/guide-to-create-good-work-plan/
My takeaways from Shape Up
Published: 2021-02-07 18:05:11

Ryan Singer, head of Strategy at Basecamp, in his book _Shape Up_, describes an interesting approach for the development process used by Basecamp that focuses on shipping work that matters.

Below you can find my favorite takeaways:
 
 1. Use appetite not estimation. Appetite says how much time you want to invest in the given idea. It prevents a situation that you spend plenty of time on the feature that improves your product only a little bit.
 2. Default response to any idea should be "Interesting, maybe someday". Ideas are cheap.
 3. Backlogs are big weight we don't need to carry. Reviewing items in a huge backlog it's a waste of time. A huge backlog demotivates a team that feels constantly behind the schedule. 
 4. Define cool down periods in your project. If you are doing scrum, don't organize Sprint review and Sprint planning back-to-back.
 5. No automatic extension of unfinished work. If it took more than you defined it as an appetite maybe it is not worth doing? This is also an additional stimulus for your team, to decide about priorities, what is a must-have and what is only nice-to-have if their work can be completely abandoned.
 6. Assign projects, not tasks. Talented people don’t like being treated like “code monkeys” or ticket takers.
 7. What to build first: something core, small, novel.	
 8. Use the hill diagram to visualize your progress. There’s the uphill phase of figuring out what our approach is and what we’re going to do. Then, once we can see all the work involved, there’s the downhill phase of execution. Use gut feeling instead of concrete numbers like a number of finished tasks.
 9. When it is good enough and you can finish a project? Compare to the baseline, initial state, not to the ideal solution to avoid frustration.

**Shape Up** book is available for free at https://basecamp.com/shapeup
Let's write a tiny JSON parser in Kotlin! Part 3: Bools & Nulls
Tags: kotlin, tutorial, json
Published: 2021-05-10 11:30:47

Lets learn how to read the two simplest elements: Booleans and Nulls. These don't get their own diagrams due to their simplicity, but they can be seen in the grammar diagram for values:

![A diagram showing the grammar for a JSON value](https://willbl.dev/img/json/value.png)

## Booleans

A boolean is super simple, of course - `true` or `false` (no `yes`es and `no`s [like YAML has](https://hitchdev.com/strictyaml/why/implicit-typing-removed/)!)

So we can use the `read(String)` method we defined earlier to read either `true` or `false`:
```kotlin
fun readBoolean(): Boolean? {
    val oldCursor = cursor
    if (read("true") == "true") {
        return true
    }
    cursor = oldCursor
    if (read("false") == "false") {
        return false
    }
    cursor = oldCursor
    return null
}
```
It will attempt to read `true`, if that's not there it'll backtrack and try to read `false`, and if that's not there it'll give up and give you `null`. Simple.

But not as simple as Null!

## Null

Null is the simplest data type (is it even a data type (in JSON)?)

```kotlin
fun readNull(): Boolean {
    val oldCursor = cursor
    if (read("null") == "null") {
        return true
    }
    cursor = oldCursor
    return false
}
```

Now you can probably see how this works - try to read the symbol `null`: if it's there, return `true` ("yes, there is a null here"); if it's not there, put the cursor back to where it was before and return `false` ("nope, no nulls here")

## Conclusion

Awesome, we've learned how to read our first two JSON data types! These, of course, were the simplest - next up we'll be doing Strings - definitely trickier!
Visual Studio Code - Dark Theme
Tags: vscode, help
Published: 2021-05-10 11:14:36

I recently created [Phillow Dark](https://marketplace.visualstudio.com/items?itemName=philecker.phillow-dark&ssr=false#overview), a dark theme for VS Code. Please check it out and let me know what you think, or provide me back of what I can improve or languages to add. Thank you!
Adding port "8080/tcp" using UFW
Tags: linux, ubuntu
Published: 2021-05-10 11:10:35

Hello there!!1 
I have recently done a research on **how to add the port 8080/tcp** in my system and list all the active ports in a text file called **"zones.txt"**. I use a Linux Mint 20.1 XFCE system and I came across the apt-package named **Uncomplicated Firewall**. This package allows you to open ports on your system and makes them ready for use using ssh. 
_Here is a screenshot on how to progress with the procedures._

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

**I am also attaching my GitHub gist which provides an detailed explanation on how to implement this in your system.**
 

{% gist https://gist.github.com/RitabrataDas343/5607a09f9080b660fefc73f68117d227 %} 

#### Best of Luck and May the Source be with You 🐧💗.
Spring Data Rest – How to create a RestAPIs with JPA One-to-Many relational entities | SpringBoot + MySql + HAL Browser
Tags: springdata, mysql, hal, onetomany
Published: 2021-05-10 11:08:22

https://grokonez.com/java-integration/spring-data-rest-create-restapis-jpa-one-many-relational-entities-springboot-mysql-hal-browser

Spring Data Rest – How to create a RestAPIs with JPA One-to-Many relational entities | SpringBoot + MySql + HAL Browser

In the tutorial, I will show you how to build a Spring Data Rest One-To-Many relational entities with SpringBoot JPA.

Related posts:
- <a href="https://grokonez.com/spring-framework/spring-boot/spring-data-rest-create-restapis-jpa-many-to-many-relational-entities-springboot-mysql-hal-browser">Spring Data Rest – How to create a RestAPIs with JPA Many-to-Many relational entities | SpringBoot + MySql + HAL Browser</a>
- <a href="https://grokonez.com/spring-framework/spring-boot/access-mysql-database-spring-data-rest-application">How to access MySQL database with Spring Data Rest application</a>
- <a href="https://grokonez.com/spring-framework/spring-boot/configure-spring-jpa-one-to-many-relationship-springboot">How to configure Spring JPA One to Many Relationship – SpringBoot</a>

<!--more-->
<h2>I. Technology</h2>
– Java 8
– Maven 3.6.1
– Spring Tool Suite: Version 3.8.4.RELEASE
– Spring Boot: 1.5.4.RELEASE
– MySQL
- Hal Browser
<h2>II. Practice</h2>
The tutorial creates a SpringBoot project with 2 Jpa entities {<code>Company</code>, <code>Product</code>} which have <a href="https://grokonez.com/spring-framework/spring-boot/configure-spring-jpa-one-to-many-relationship-springboot">One-to-Many</a> relationship. We use <strong>Spring Data Rest</strong> to <a href="https://grokonez.com/spring-framework/spring-boot/access-mysql-database-spring-data-rest-application">build restfulAPIs for accessing MySQL data</a> which are created by 2 entities. Then using <a href="https://grokonez.com/spring-framework/spring-boot/use-hal-browser-spring-data-rest-springboot-mysql">HalBrowser</a> to consume the rests.

<strong>Step to do</strong>:
- Create SpringBoot project
- Create Jpa entities
- Create Rest repositories
- Implement CommandLineRunner client
- Run and check results

<img src="https://grokonez.com/wp-content/uploads/2017/07/spring-data-rest-jpa-one-to-many-entities-project-structure.png" alt="spring data rest - jpa one-to-many entities - project structure" width="336" height="364" class="alignnone size-full wp-image-6752" />

<h3>1. Create SpringBoot project</h3>
Using <strong>SpringToolSuite</strong> to create a SpringBoot project. Then add dependencies:

More at:

https://grokonez.com/java-integration/spring-data-rest-create-restapis-jpa-one-many-relational-entities-springboot-mysql-hal-browser

Spring Data Rest – How to create a RestAPIs with JPA One-to-Many relational entities | SpringBoot + MySql + HAL Browser
Building a 3D library with playcanvas
Tags: javascript, gamedev, webdev
Published: 2021-05-10 10:56:02

{% youtube wgY27SAqMVY %}
{% youtube 4M0z_v82skU %}

I walk you through methods to create a prototype 3D virtual gallery using the Playcanvas engine which you could build on and utilise in a number of different ways. Hopefully this gives you some foundations if you want to create a virtual library or similar project.
Have you learned Rust?
Tags: watercooler, rust, programming
Published: 2021-05-10 10:53:24

---
title: Have you learned Rust?
published: true
description: 
tags: watercooler, rust, programming
cover_image: https://www.rust-lang.org/static/images/rust-social-wide.jpg
---
According to StackOverflow [survey](https://insights.stackoverflow.com/survey/2020#most-loved-dreaded-and-wanted), Rust has been the most loved lang for multiple consecutive years.

Have you learned it and maybe you can share some awesome projects that you have built with it?