teleren/devto huggingface dataset:
How to Start Teaching?
Tags: discuss, teaching
Published: 2019-05-20 12:15:12

---
title: How to Start Teaching?
published: true
tags: discuss, teaching
cover_image: https://thepracticaldev.s3.amazonaws.com/i/ie3ysvxdrx4h2myxzfu0.jpg
---

*I'm taking an hours-long final later, so today's post is going to be super simple.*

What are your do's & don't's for getting started in teaching? I've enjoyed every opportunity to teach people about code or technology and want to do it more. Right now it's just a broad dream of mine, and it's hard to pare it down to take forward steps.

I'm open to all tips and stories here. Wherever you have taught, whatever age you have taught, I'd love to hear what you want to share.

---

Did you know I have a newsletter? 📬

If you want to get notified when I publish new blog posts or make major project announcements, head over to [https://ashleemboyer.com/newsletter](https://ashleemboyer.com/newsletter).

---

*[Image](https://unsplash.com/photos/VAJEea9u6k8) by [Joshua Eckstein](https://unsplash.com/@dcemr_e) on [Unsplash](https://unsplash.com).*
Review my Clojure code
Tags: codereview, clojure
Published: 2019-05-20 11:10:22

---
title: Review my Clojure code
published: true
description: I need a code review on my Clojure project
tags: #codereview,#clojure
---

Hi Everyone,

I'm starting to get a hang of Clojure and I started working on a project. I would be a great help if anyone gave me feedback. 

[Pull request](https://github.com/amexboy/multi-repo-project/pull/1/files)
Top 10 Java Frameworks in 2019
Tags: java, webdev, opensource
Published: 2019-05-20 11:05:21

---
title: Top 10 Java Frameworks in 2019
published: True
description: Top 10 Java development frameworks. Java is a standout amongst the most famous programming dialects. In a not so distant future, there is somewhat chance for some other language to supplant Java, not at any rate in 2019.
tags: #Java, #webdev, #opensource, #bestofdev
---

<img src="https://thepracticaldev.s3.amazonaws.com/i/e9ubr0752mkxci7t8i4m.png" alt="top java frameworks">

Top 10 Java development frameworks. Java is a standout amongst the most famous programming dialects. In a not so distant future, there is somewhat chance for some other language to supplant Java, not at any rate in 2019. The same goes for the Java Frameworks. Spring, JSF, and GWT are the main three structures that are generally utilized by Java Developers.

**Top 10 Java Frameworks in 2019**

**Spring MVC**
Spring MVC is one of the most seasoned Java Web Frameworks, but on the other hand, it's a standout amongst the best. Right up 'til the present time, it is utilized, and this is on the grounds that it is always adjusting and enhancing explicit changes and advancements with Java. With basic parts and arrangements, this secluded system empowers you to create endeavour level Java applications without any difficulty. Its DI-reliance infusion highlight and similarity with different structures, for example, Kotlin and Groovy make it Java developers' top choice.

**JavaServer Faces**
JSF stands for Java Server Faces and is a net utility system of Java, and it got Oracle's support. this isn't the most effortless structure to utilize, nor is it the speediest. Be that as it may, the enormous advantage of JavaServer Faces is the magnificent documentation that Oracle has made. Prophet has come out on top for a long time, so they are very solid and reliable.

Utilizing JavaServer Faces, Java developers can construct Native applications, Web applications, and Enterprise applications.

**Grails**
Grails is a web application framework that utilizes the Groovy programming language. Sweet is an item arranged language for the Java stage that plans to improve developer productivity. It works with Java advances, including Java EE holders, Spring, SiteMesh, Quartz, and Hibernate.

**Vaadin**
The Vaadin framework is open-source and authorized by the Apache Software Foundation, that has been instrumental in the creation and sustenance of apparatuses for programming dialects, for example, Java and C++.

Code is written in Java and can be executed on the server's Java Virtual Machine (JVM). UI in Vaadin rendered as HTML5 in the internet browser.

**Google Web Toolkit**: Read the full article here: https://www.decipherzone.com/blog-detail/Top-Java-Development-Frameworks-in-2019
Laravel E-Commerce Application Development – Backend Admin Authentication
Tags: laravelmutliauth, laravelguards
Published: 2019-05-20 10:38:05

---
title: Laravel E-Commerce Application Development – Backend Admin Authentication
published: true
description: This is the fourth part of the Laravel E-Commerce Application Development series, in this part will implement the admin authentication using Laravel guards.
tags: laravel mutli auth, laravel guards
---

This is the fourth part of the Laravel E-Commerce Application Development series, in this part will implement the admin authentication using Laravel guards.


 
I assume you should have the e-commerce application project on your machine or you can grab it from Laravel E-Commerce Application repository, we will start from where we left it in the last part.

In the last part, we created the admin model, migration and seed, in this post we will implement authentication for the admin area. Laravel’s default authentication works with the User model but we will implement our own login functionality for Admin model which means we are implementing adding multiple authentication for different models.

Read the full article at [https://www.larashout.com/backend-admin-authentication](https://www.larashout.com/backend-admin-authentication)
How do you stay motivated for doing less challenging tasks, as a developer?
Published: 2019-05-20 10:27:46

---
title: How do you stay motivated for doing less challenging tasks, as a developer?
published: true
description: 
tags: 
---

As developers, when we get something new we can do and become excited, it's all fun! but sometimes there will be those tasks that are easy, and a little boring, so it's hard to stay focused on them, and after a few minutes of doing it, you're already browsing the web looking for cat video's.

How do you guys deal with that? How do you keep your motivation, and attention when doing those tasks?
Blazorise - Component library for Blazor
Tags: blazorise, blazor, bootstrap, components
Published: 2019-05-20 10:14:01

Blazorise is a component library for Blazor that have support for CSS frameworks like Bootstrap, Material, Bulma and eFrolic.

To see Blazorise in actions there are demo applications available for each of framework implementation, links are in the readme on project page (best viewed on desktop).

GitHub: https://github.com/stsrki/Blazorise
Docs: https://blazorise.com/docs/
Kafka Monitoring in Production - eBook
Tags: kafka, devops, monitoring, bigdata
Published: 2019-05-20 09:44:33

---
title: Kafka Monitoring in Production - eBook
published: true
description: Apache Kafka Monitoring in Production - free eBook showing the key metrics to monitor, open source tools allowing you to get the metrics visualized and Sematext Cloud to monitor Kafka & friends 
tags: #kafka #devops #monitoring #bigdata
cover_image: https://thepracticaldev.s3.amazonaws.com/i/fppso0puclbrs3c5ty4u.png
series: Monitoring Kafka
---

Hello!

I love data and I love working with it. As a developer and consultant I spend time with data working on internal products that you can see in the form of [Sematext Cloud](https://sematext.com/cloud/) and for our clients as well. 

We decided to share the knowledge that we gained when working with Apache Kafka in a form of blog posts series, starting with [Key Kafka Metrics to Monitor](https://sematext.com/blog/kafka-metrics-to-monitor/). 

We also decided that it would be good to release that content as an eBook that you can download and have with you whenever you need it. Here it is - the official download link for [Kafka Monitoring - The Complete Guide](https://hubs.ly/H0hZ8pw0).

Feel free to reach out in the comments or through various social media channels if you have any questions, suggestions or comments!
How to Create WordPress Gutenberg Block Templates
Tags: php, devops, wordpress
Published: 2019-05-20 09:36:39


There are two ways of creating customized <a href="https://www.cloudways.com/blog/create-wordpress-gutenberg-block-templates/">Gutenberg block templates</a>. 

<strong>1. Registering Gutenberg Blocks</strong>

In the first step we create custom blocks templates that can be used to build pre-populated blocks. Add the following code to the functions.php.

<code>add_action( 'init', function() {
    $args = array(
        'public' => true,
        'label'  => 'News',
        'show_in_rest' => true,
        'template_lock' => 'all',
        'template' => array(
            array( 'core/paragraph', array(
                'placeholder' => 'Breaking News',
            ) ),
            array( 'core/image', array(
                'align' => 'right',
            ) ),
        ),
    );
    register_post_type( 'news', $args );
} );</code>

![](https://thepracticaldev.s3.amazonaws.com/i/r3ddurjq1bntifslpdib.jpg)

In the above code the array parameter ‘core/paragraph’ is responsible for the content of the block and array parameter ‘core/image’ allows you to upload images

For adding custom block to this template, use the ‘template’ sub-array. 

<code>
'template' => array(
            array( 'core/heading', array( 'level' => '4', 'content' => 'Heading' ) ),
            array( 'core/paragraph' ),
        )
</code>

<strong>2. Creating a Gutenberg Plugin</strong>
While working with custom templates, the best way is to create a Gutenberg editor  plugin.

To create the plugin, go to the wp-content/plugins directory and create a new folder. The name of the folder must be the name of the custom Gutenberg template plugin. Here I have named my plugin as Gutenberg Blocks.

Create a file named Gutenberg-blocks.php and add the following code

<code>
add_action( 'init', function() {
    $args = array(
        'public' => true,
        'label'  => 'News',
        'show_in_rest' => true,
        'template_lock' => 'all',
        'template' => array(
            array( 'core/paragraph', array(
                'placeholder' => 'Breaking News',
            ) ),
            array( 'core/image', array(
                'align' => 'right',
            ) ),
        ),
    );
    register_post_type( 'news', $args );
} );
</code>

![](https://www.cloudways.com/blog/wp-content/uploads/Gutenberg-block-template-using-plugin.jpg)
Solr Monitoring in Production - eBook
Tags: solr, devops, monitoring, search
Published: 2019-05-20 09:30:36

---
title: Solr Monitoring in Production - eBook
published: true
description: Apache Solr Monitoring in Production - free eBook showing the key metrics to monitor, open source tools allowing you to do that and using Sematext Cloud to get full observability over the metrics and logs. 
tags: #solr #devops #monitoring #search
cover_image: https://thepracticaldev.s3.amazonaws.com/i/l8k1l1wpqzx4hicsaemg.png
---

Hello!

One of the roles I have at Sematext is #Solr consultancy and training. Given that I decided to spend some time to share the knowledge about how to [Monitor Apache Solr](https://sematext.com/blog/solr-key-metrics-to-monitor/) in production.

We also decided that it would be good to release that content as an eBook that you can download and have with you whenever you need it. Here it is - the official download link for [Solr Monitoring - The Complete Guide](https://hubs.ly/H0hZ81t0).

Feel free to reach out in the comments or through various social media channels if you have any questions, suggestions or comments!
dev.to karma rank
Tags: algorithms, ruby, showdev, discuss
Published: 2019-05-20 09:11:23

---
title: dev.to karma rank
published: true
description: Dev.to karma rank algorithm
tags: algorithm, ruby, showdev, discuss
---

Hi

just for fun I implemented a very simple algorithm that allow to calculate "Karma" rank of dev.to website, based on actual dev.to v0 API.

This is a simple ruby code ( you must install rest-client gem )

```ruby
class DevToKarma 
  API_URL = 'https://dev.to/api'

  def initialize(username)
    @username = username
  end

  attr_reader :username

  def posts
    page = 1
    result = []
    
    loop do
      response = RestClient.get "#{API_URL}/articles?username=#{username}&page=#{page}"
      posts = JSON.parse(response.body)
      result << posts
    
      page = page + 1
      break if posts.size == 0 
    end
    
    result.flatten
  end

  def user
    response = RestClient.get "#{API_URL}/users/by_username?url=#{username}"
    JSON.parse(response.body)
  end

  def karma
    joined_at_timestamp = Time.parse(user.dig('joined_at')).to_i 

    posts_count = posts.size
    total_comments_count = posts.map { |r| r['comments_count'] }.sum
    total_positive_reactions_count = posts.map { |r| r['positive_reactions_count'] }.sum
    
    karma = ( posts_count + total_comments_count + total_positive_reactions_count ).to_f / ( joined_at_timestamp / 1000 / 1000 ) * 100

    karma.to_i
  end
end
```

Examples

```ruby
  DevToKarma.new('daviduco').karma # My own karma
  => 23 
```

```ruby
  DevToKarma.new('ben').karma # Ben Halper karma
  => 3529 
```

obviously it is a "stupid" and little mathematical solution. Many other considerations and variables to use are missing. But it's a start!
git cherry-pick is bliss. More than the git merge
Tags: discuss
Published: 2019-05-20 08:46:53

---
title: git cherry-pick is bliss. More than the git merge
published: true
tags: discuss
---
When you are working on separate branches with separate teams in parallel there are immense no of check-ins that we all do. The next big thing is to merge the code on git. I have started to feel that this becomes extremely easy if each functionality as a whole has a single check-in, which in-turn will have a commit id. It then makes it really easier to merge by cherry-pick rather than the whole branch merge. It also gives a power to pick just one part of the code base and not as a whole.

what do you guys prefer while merging? I would love to know and learn.
HTML & XML Sitemap Generator for Magento 2 
Published: 2019-05-20 08:34:36

---
title: HTML & XML Sitemap Generator for Magento 2 
published: true
description: 
tags: 
---


<br>
<b>Magento 2 Sitemap extension</b> allows users to generate SEO optimize XML  and HTML Sitemap. You can generate an unlimited number of Sitemap using this extension. 
<b>Create Multiple Magento 2 XML Sitemap</b>
With XML Sitemap  Magento 2 extension you can generate multiple XML Sitemap and Submit them to Google Webmaster Tool to get indexed. You can configure the following types of URLs.
•	Products
•	Categories
•	CMS Pages
•	Additional Links
Automatically ad Sitemap URLs to Robots.txt
By adding a new sitemap URL to Robot.txt file. This allows faster and more accurate indexing by Search Engine.

<b>Automatically Add New URLs to Magento Sitemap wit CronJob</b>
You can keep updating your Sitemaps automatically on adding new Products by setting up a Cronjob. 
•	Run Cronjob on a daily, weekly, or monthly basis
•	Error email settings – Send an automatic email notification if the server breaks during the sitemap generation.

<b>Powerful Key Features</b>
1.	Generate Multiple Sitemaps
2.	Include All or selected Products, Categories., CMS and other URLs.
3.	Configure Priorities & Change Frequency and other Details
4.	Setup Cronjob to Automatically Add new Products to Sitemap
5.	Categorize URLs by Alphabetical Order and URL type
6.	Include All or Selected Products, Categories, CS & Other

<b>Complete Detail and Live Demo <a href="https://marketplace.magento.com/fme-advanced-sitemap-generator.html">magento 2 html sitemap
</a></b>

<img src="https://thepracticaldev.s3.amazonaws.com/i/fmtq1hjxq4npm5gnj6r9.png"/>
<img srx="https://thepracticaldev.s3.amazonaws.com/i/ijlcnhbi34c4pwavgdet.png"/>
<img src="https://thepracticaldev.s3.amazonaws.com/i/1zy2bvee9y9tqp36urao.png"/>
<img src="https://thepracticaldev.s3.amazonaws.com/i/ea2zienwjfshy1qs17zg.png"/>
<img src="https://thepracticaldev.s3.amazonaws.com/i/23tfm9g7x9q2e2ehjqcm.png"/>
<img src="https://thepracticaldev.s3.amazonaws.com/i/qnbhl4e9rre21vacy7fe.png"/>
Friends and Friendly Leaderboards
Tags: css, game, codegolf
Published: 2019-05-20 06:41:35

---
title: "Friends and Friendly Leaderboards"
published: true
canonical_url: https://cssbattle.dev/blog/introducing-friends/
description: "Playing with everyone in the world can be intimidating. Let's play with just friends!"
tags: css, game, codegolf
---


![Friends leaderboard](https://cssbattle.dev/blog/images/2019/introducing-friends-1.png)

*Originally posted on [https://cssbattle.dev/blog/introducing-friends/](https://cssbattle.dev/blog/introducing-friends/)*

We've noticed that sometimes, the global leaderboards can get pretty intimidating when you're just starting out on [CSSBattle](https://cssbattle.dev/). So today, we are excited to announce **Friends**! 🎉

With Friends, you can now choose who you want to see in the leaderboards and see your standings among them.

To get started:

1. Visit your friend's profile (by clicking their avatar/name) and click on the `Add to Friends` button.
2. Go to any page with a leaderboard and check `Friends Only` at the top. Now all the leaderboards will show your standings among just your friends. 

**Note**: Adding someone as a friend sends them a notification so they can add you back!

[Share your thoughts on our forum!](https://spectrum.chat/css-battle/general/introducing-friends-and-friendly-leaderboards~4a379ab2-8649-4a4c-bdeb-65ca4b6f8077)
How to use Quarkus
Tags: java, reactive, api
Published: 2019-05-20 06:33:42

---
title: How to use Quarkus
published: true
description: We will look into using Quarkus, a framework for building java endpoints in a reactive manner. Change code, package structure or class names and the server will restart and just work.
tags: java, reactive, api
---

{% youtube UoIArHjqn6w %}
Uncertainty about starting development on a big task
Published: 2019-05-20 06:17:42

---
title: Uncertainty about starting development on a big task
published: true
description:
tags: 
---

Can anyone relate to the following scenario:
You receive a task, but you have no idea where to start (it's a big chunk of code that has to be written). After a more senior developer tells you the steps you should take, you still feel they're too big to deconstruct and start, which makes you anxious and causes uncertainty, even imposter syndrome. How should this be handled?
String Manipulation: C# Trim Whitespace
Tags: csharp, tutorial, beginners
Published: 2019-06-18 15:18:43

---
title: String Manipulation: C# Trim Whitespace
published: true
tags: csharp,tutorial,beginners
series: C# for Beginners
cover_image: https://wellsb.com/csharp/wp-content/uploads/sites/2/2019/03/beginners-remove-whitespace-featured-min.png
---

In this tutorial, we will write a string manipulation example to trim all whitespace from a string in C#. We will use a helper method to remove all whitespace and print the modified result to the console. In the previous tutorial, we wrote a console application that took a user’s input and printed their string backwards. In this example, we will write a similar string manipulation program...

[Source](https://wellsb.com/csharp/beginners/string-manipulation-csharp-trim-whitespace/)
Source code viewer of a website
Tags: replit, python
Published: 2019-05-20 05:09:44

---
title: Source code viewer of a website
published: true
tags: replit, python
---

Examining the source code of a website page was not possible, but not now. Check out the Source Code Viewer that can help you achieve that purpose here.

{% replit @SaptarshiHalder/Source-Code-Finder-of-html %}
Q Vault: An open source secret manager
Tags: opensource, blockchain, security, javascript
Published: 2019-05-20 02:32:57

Github: https://github.com/Q-Vault/qvault
Website (under construction): https:qvault.io

Q Vault is a new open source password manager built using electron, javascript, and vuejs. The goal was to create an open source password manager that:

1. Is user friendly

2. Secure enough to store cryptocurrency

3. Has built-in optional cloud storage backups

4. Can be used offline

5. Can require a physical key for extra security (Plastic Cards with QR Code used for dual encryption)
Kubernetes - Refresher Notes 
Tags: kubernetes, notes
Published: 2019-05-20 01:51:20

This post is for anyone to quickly refresh on the phrases in Kubernetes. If you are starting to explore Kubernetes then this can be used as a checklist on the areas you should be aware of. I have also included some basic commands to work with kubernetes.


## Concepts : 

- KUBECONFIG
- Cluster - Master & Worker
- Node
- Node Port
- ClusterIP
- Statefulset vs Statetless
- Deployment
- Service
- Pod
- Namespace
- Context
- PersistentVolume
- PersistentVolumeClaim
- HostPath (Local)
- Ingress
- LoadBalancer
- ConfigMap
- Secrets
- DNS (<servicename>.<namespace>.svc.cluster.local)
- KubeAdmin
- RBAC
- ServiceAccount
- Rollout
- Replica Scale


## Scripts

- Annotations,Labels & Selectors
- Kustomize (-k vs -f)
- Apply/Create/Patch



## Local Kubernetes Setup :
- Docker for Desktop Mac
- MiniKube


## Tools

- [Kubernetes Dashboard](https://github.com/kubernetes/dashboard) - web UI for Kubernetes clusters
- Kubectl and Proxy
- [Kubernetic Desktop](https://kubernetic.com/) - View Cluster Resources, Similar to Kitematic for Docker. 
- [Sekret](https://github.com/nownabe/sekret) - Encryption Tool for Kubernetes Secrets YAML
- [Kamus](https://github.com/Soluto/kamus) - Encryption and Decryption solution for Kubernetes applications
- [Kubectx](https://github.com/ahmetb/kubectx/) - Switch faster between clusters and namespaces in kubectl 
- [kube-ps1](https://github.com/jonmosco/kube-ps1) - Kubernetes prompt info for bash and zsh to see the current cluster context with namespace
- [Kubefwd](https://github.com/txn2/kubefwd) - Bulk port forwarding Kubernetes services for local development.

Basic Commands

### Contexts

```

# Get all contexts
kubectl config get-contexts 

# Get Current Context
kubectl config current-context


# Set the default context
kubectl config use-context nk-dev-cluster  

kubectl config set-context nk-dev --namespace=rafa-dev --cluster=docker-for-desktop-cluster --user=docker-for-desktop


```




### Describe K8 Resources

```
# kubectl describe <resource> <resourceName>
kubectl describe pods pod1

# Get the resource definition in yaml
kubectl get pod my-pod -o yaml 

```

### Expose a Service

```
#expose a app named web-app as a service 

kubectl expose deployment web-app --name=web-app --type=NodePort --target-port=8080


# For Testing Locally
kubectl port-forward servicename 8080:8080

```

### Connect to the running Pod Container

```

kubectl exec web-app-fcc6b5ddf-k2txq -it -- /bin/sh

```


### Troubleshooting

```

#Simple Container to quickly run some curl commands to the pods
kubectl run curl-test --image=radial/busyboxplus:curl -i --tty --rm

```

Thanks for reading this refresher.
Make Boilerplates for webpack typescript reactjs threejs
Tags: react, webpack, threejs, babel
Published: 2019-05-20 01:46:03

---
title: Make Boilerplates for webpack typescript reactjs threejs
published: true
description: js dev boilerpaltes
tags: #react, #webpack, #threejs, #babel
---

Made the following boilerplates
1. test webpack
2. webpack + threejs
3. webpack + reactjs
4. webpack + typescript
5. webpack + typescript + threejs
6. webpack + typescript + reactjs


## Why???
As many people know, there is `create-react-app` to generate a reactjs project which is very easy to use.
However, sometimes for a small project, the generated code is kind of too much to me. That is the biggest reason and also want to understand what I need for starting a project with webpack + typescript + react/threejs.


https://github.com/koji/webdev