teleren/devto huggingface dataset:
So I just got back to youtube after 7 years...
Tags: watercooler, youtube, video, startup
Published: 2020-01-03 11:00:10

## Heads up
This article contains some shameless plugs to my channels. If you find this offensive, I apologize in advance. 

![Shrug](https://media.giphy.com/media/4HcW7p5pIIeLdvkj2X/giphy.gif)

Please don't eat me 😅

-------------------------------

## We've all been there

We've all started something that we stopped doing. For me, one of those things was [YouTube](https://www.youtube.com/channel/UCB7kPKJ2gznFwBOaUW7k-8Q). I started [teaching the fundamentals of programming](https://www.youtube.com/watch?v=gT4CemTAjAg) and 3D stuff a year after I finished high school.

At the time, I knew nothing about YouTube and simply wanted to share knowledge regardless of whether or not the quality was good. My audio was **horrible** (as you'd see with multiple comments on the same) and I *never appeared on camera*. For some of the videos, the aesthetic was also horrid, but for some reason I kept making videos. 

I stopped YouTubing when I joined campus - studying Film & Animation. That made me a lot more critical of what I could put out as well as bombarded me with a tonne of work.  



Anyway. Fast forward to 2020, I figured it's time to get back to it. I bought a blue yeti mic & borrowed a camera from a friend. The first two videos (more like 100 takes) I recorded felt cringey as hell. ![Cringe](https://media1.giphy.com/media/cFKz0XrOLjQIM/giphy.gif?cid=790b7611a7a0f5a13362fdf8c1386ca92cddad6c641576ff&rid=giphy.gif)

So in the end I decided to say 🤷‍♂️ it (insert the word you're thinking of here.). It is quite thrilling, since I have no idea what kind of reception I'll get.

Not only did I decide to continue with my old channel. I also started [a new channel](www.youtube.com/channel/UC6pQpWMdnyxbYmCotBlUyMQ) where I've challenged myself to build a multi-million dollar company in the next 2 years, starting with $0 in Africa. For the most part, I think it's worth a try, given that I have tried a bunch of things, failed and learnt a tonne over the past 7ish years.

### So yeah...

I'll be posting new videos on Friday & Monday . 
[Making it in Africa] (www.youtube.com/channel/UC6pQpWMdnyxbYmCotBlUyMQ) - Fridays
[Tutorial channel](https://www.youtube.com/channel/UCB7kPKJ2gznFwBOaUW7k-8Q) - Mondays

Hopefully I can commit this time - this article is meant to hold me accountable as well.

I also figured I'd start doing bi-weekly (Probably on weekends) life tips on [my Instagram](https://www.instagram.com/theallanjeremy/) just to share what I've learnt over the course of my life and career.

## I could use some help
What would you suggest as tips for getting back into the game? Any YouTube tips? I've got a few more general video related questions that I'll ask in a different post.
Step By Step Guide of Choosing Right Admin Template
Tags: templates, webdev
Published: 2020-01-03 10:47:26

If you are looking for an admin template for your next project, you will find tons of admin templates out there. There are almost approximately 10k+ admin templates selling live on different platform like Themeforest, Wrapboostrap, etc. For one admin template, you will find hundreds and thousands of options.
 
Choosing the best fit [admin template](https://themeselection.com/item/category/admin-templates/) for a project is the most crucial decision a developer has to take before starting his project. If you are also stuck in choosing right admin template for your project then you are at the right place. Here, we have brought to you the complete step by step guide on how you can choose the right admin template for your web application. Go through the guide carefully, and you will be able to find the most useful and effective admin template as per your requirement.

**Steps to Choose Right Admin Template:**

-   Select Technology. It will provide you options of frameworks that suit your project requirements of that technology.

-   Select appropriate UI design and layout that best fits your project.
-   Make a list of components, applications, pages, etc. as per your project requirements and check whether it is provided in the template or not.
-   Always go through the documentation and also check the quality of codes of that template before buying it.
-   Make sure to check the support policy of an admin template.
-   Make a purchase decision after looking at reviews and number of downloads.

#### CONCLUSION

Research plays a crucial role in buying an admin template for any project. If you do not go through these important points, chances are huge that you might end up buying a template that does not suits your project requirements. Buy a  [premium admin template](https://themeselection.com/products/category/bootstrap-admin-templates/)  as these are the highly flexible and scalable templates that come with good documentation and good technical support. If you are looking for an admin template from market places like Envato, Wrapbootstrap, etc. then you have to go through this detailed guide to choose a perfect admin template.

Read Full Article here: https://themeselection.com/choosing-right-admin-template
How to build high available/fault-tolerant services in node.js
Tags: distributedsystems, node, javascript, opensource
Published: 2020-01-03 10:41:30

# How to build high available/fault-tolerant services in node.js

During my job for an important client , I was thinking about high availability and recovery NFRs , our tech stack included cassandra and kafka , two distributed systems of which I studied internal behavior.
<strong>Kafka</strong> used <strong>Zookeeper</strong> to keep track of assigned partitions to each consumer , <strong>Cassandra</strong> had a <strong>gossip </strong> algorithm between nodes and divides data in partition ranges .
So I was starting to think if there was any library ( not an external service like zookeeper ) that had an algorithm with gossip implemented so that people could build some new distributed systems more easily.
<strong>That library does not exist , and then I created <a href="https://github.com/pioardi/ring-election">ring-election</a> .</strong><br>
You can integrate ring-election into your node process and you will have some important NFRs already constructed !!!

<strong>What the ring-election driver offers you ?</strong><br>

- A default partitioner that for an object returns the partition to which it is assigned.<br>
- Mechanism of leader election<br>
- Failure detection between nodes.<br>
- Assignment and rebalancing of partitions between nodes<br>
- Automatic re-election of the leader<br>
- Listen for new assigned/revoked partitions <br>

<strong>What problems can you solve with this driver ?</strong><br>
- Scalability<br>
- High availability<br>
- Concurrency between nodes in a cluster<br>
- Automatic failover<br>


<strong>How it works under the hood</strong><br>
## Terminology

* Leader , the node that will handle the cluster and will not have assigned partitions
* Follower , a node that will have assigned partitions and will work on them
* Heartbeat , a message sent periodically from the followers to leader node to keep track that is alive.
* Heartcheck , a process that run on the leader and go to check the last heartbeat received by each follower
* Priority , is assigned to each follower based on the time that they joined the cluster , when a node die the priority is decreased by one . If the leader die the node with lower priority will become the leader
* Node id , each follower node has an assigned id that is unique into the cluster

## Start up phase described
![StartUp] (https://thepracticaldev.s3.amazonaws.com/i/3dmi5areu9qx9elg8jgf.png)

## Detect follower failures ( Heartbeat/Heartcheck )
![Detect Failures](https://thepracticaldev.s3.amazonaws.com/i/nifc6m07009tyw2wmh6a.png)

# Leader Failure
![Leader Failure]( https://thepracticaldev.s3.amazonaws.com/i/fdgwlxhq9v724olowbp9.png)

## How to integrate it ?
Join https://github.com/pioardi/ring-election to have more info .
If you want to suggest new features or you want help to integrate ring-election open an issue on github and I will be happy to help you.
How to Create and Use Query Scope in Laravel Eloquent
Tags: laravel
Published: 2020-01-03 10:08:00

Today, i would like to share example of how to use laravel eloquent model scope. i will show you how to create model eloquent query scope in laravel 6 and how it will easy for you. i will guide you to create custom query function in model eloquent using scope in laravel 6. You can easily use dynamic query scope in laravel 6 application.

Here i will give you simple with today() scope and it will get only today records. So let's see this example here:

https://www.codechief.org/article/how-to-create-and-use-query-scope-in-laravel-eloquent
How not to configure MongoDB on Docker
Tags: mongodb, docker, javascript, webdev
Published: 2020-01-03 09:48:45

Just as Thomas Edison made 999 attempts in inventing the the lightbulb and then said He discovered 999 ways a lightbulb could not be made. This post is about how I discovered how not to configure MongoDB on Docker.

I was working on my portfolio website, and I decided to use MongoDB on docker to just test out my knowledge on Docker since I have used PostgreSQL on Docker and it worked without any hassle.

this is the content of my initial docker-compose.yml file

```yaml
version: '3.7'

services:
  mongo:
    image: "mongo:4.0.4"
    container_name: "mongo"
    env_file:
      - .env
    environment:
      - MONGO_INITDB_ROOT_USERNAME:${USER}
      - MONGO_INITDB_ROOT_PASSWORD:${PASS}
      - MONGO_INITDB_DATABASE:${DB}
    volumes:
      - ./db/:/data/db/
    ports:
      - "27017:27017"
```

Then I fired up my terminal into the directory where my docker-compose.yml file was saved and did this:

docker-compose up -d

I waited for it to pull the mongo image and then build and start MongoDB as a service.

Then I did the following to see if I could connect,

docker exec -it mongodb bash
mongo -u admin -p

I enter the password on the password prompt, lo and behold I was denied access, for about 8 hours I battle with this issue, I went to stackoverflow, github and other website seeking for solution and I didn't find any.

Then I decided to do what I normally do when I install mongodb on my local machine. In order to do that, I stopped the containers on my terminal and ran this command:

docker-compose stop && docker-compose down

Then I edited my configuration to this:

```yaml
version: '3.7'

services:
  mongo:
    image: "mongo:4.0.4"
    container_name: "mongo"
    volumes:
      - ./db/:/data/db/
    ports:
      - "27017:27017"
```

I ran the following commands on my terminal:

docker-compose up -d
docker exec -it mongodb bash
mongo

and then, I was greeted with an interactive shell for mongodb and then I ran the following commands

```javascript
use admin

db.createUser(

 {

 user: 'admin',

 pwd: 'yourpassword',

 roles: [{ role: 'userAdminAnyDatabase', db: 'admin' }, 'readWriteAnyDatabase']

 }

)
```

followed by this other command too

```javascript
use your_db_name

db.createUser(

 {

 user: 'your_username',

 pwd: 'your_password',

 roles: [{ role: 'readWrite', db: 'your_db_name' }]

 }

)
```

viola! that's what solved the problem I was encountering.

Please drop a comment if you've encountered this kind of problem, and tell us what you did that solved it, and also drop a comment if this post has been helpful in one way or the other.

Cheers!
Why Angularjs Is Appropriate For SPA Development?
Tags: angularjsdevelopmentcompany, hireangularjsdevelopers
Published: 2020-01-03 09:36:00

Single Page Applications are everywhere today. Now it is no longer a new fad; instead, it becomes a necessity for web and mobile app development.

Although accepted, social media platforms are behind the success of SPAs and why not when they deliver better results and engagement to end-users.

What is Single Page Application?

Single Page Application is a web app or web site that interacts with the user by dynamically rewriting the current page rather than loading entire new pages from a server. - as defined by Wikipedia. 

Now you must be thinking if an app is only a single page, how then would it be dynamic? 

That is where AngularJS comes. Let's read more and understand how this new-age framework helps to build the best single page app and why you should contact angularjs development company for the next project. 

What is Angularjs?

Angular is a product of Google. The founders of Angular call the framework a "Superheroic JavaScript MVW Framework."

MVW is nothing but Model-View-Whatever. MVW stands for "whatever works for you."

Being supportive of MVW, Angular offers an abundant flexibility due to the following reasons:

1. Excellent UI Support

Single Page Apps deliver excellent user experience as it gets the power of breathtaking user interface developed using Angular js. The angular framework delivers a hassle-free experience to develop excellent UI that ultimately leads to better user experience. 

2. Better Performance

When an application developed using AngularJS, it gets super performance. The app not just loads quickly but builds faster. 

It is because, in Angular, the component router delivers automatic code-splitting that only load code in the browser as needed to view as requested. 

3. Flexibility 

One of the most significant advantages of Angular is that it is a complete framework. The framework ensures the smooth development of the single page app since the beginning. 

The framework lets developers build high-performance, complex choreographies, and animation timelines without investing themselves in several lines of code. 

The framework is well developed with libraries developers' needs at every step of development. Libraries not just help but also add enormous flexibility in developing interactive, user-friendly, and platform-independent web apps. 

4. Cross-Platform

Google remains Angular, an open-source platform. Being developed on the open-source platform, Single Page Application resides compatible with every platform. Progressive web app development and also consistent with Ionic Framework, NativeScript, and ReactNative. It helps the Angular team optimize single-page applications for high-performance, responsiveness, and zero stop installation. 

Angular is a javascript based framework and essential component of MEAN stack. If you are thinking of developing an excellent and high performing app, hire angularjs developers from a renowned firm today, and discuss project requirements.
Web scrapping part 2 (professionally)
Tags: webscrapping, java, python
Published: 2020-01-03 09:13:24

Yesterday I gave you a brief idea--------- let's make it continue.

You can scrape a website in python either by beautiful soup library or by scrapy framework In this article we will learn to scrape websites using scrapy framework.

Here I will be dealing with these important topics Below. 

------>Table of Content<------

1-Basic python
2-Scrapy framework
3-Practical example
4-Unique Tips while programming
5-Selenium webdriver
6-Applications of web scraping
7-Conclusions
8-References

So, are you guys ready to deal with these interesting topic {web scrapping part 2}
I am very eager to share this course: The only thing I need your motivation.
Stay tuned for 3rd part.
BASIC OF PYTHON-------------------
The Collab Lab Week 3 - Thursday
Tags: collablab
Published: 2020-01-03 08:29:42

No coding today. I listened in on Slack to see what the other team is working on. I also requested the a review of my pair's [pull request](https://github.com/the-collab-lab/tcl-3-smart-shopping-list/pull/49).

This is the [deploy preview](https://deploy-preview-49--tcl-3-smart-shopping-list.netlify.com/list) of our latest work. One of the two other team members approved. I think I should wait for both to approve before asking for a mentor review.

Something that has come up is how to make sure we are working separately in pairs but in a way that our code works as a whole. Maybe it takes some extra communication and taking cues from the code that has already been written by the other pair.

I love that we have this low-stakes environment to have The Collab Lab experience. The little things will get worked out and if we ever find ourselves on a team in a professional setting, we'll have some real life experience to draw from. It can be scary when you approach a problem or hit a snag for the first time ever. 

This is a great chance to get those first lessons out of the way. Some mistakes you only have to make once.
My First Laravel 6 and React App
Tags: laravel, react, webdev, javascript
Published: 2020-01-03 08:00:18

I have been developing for WordPress for a while and I have been working with jQuery mostly. 

Recently, I prepare for going to interview. As PHP dev, knowing Laravel and a JS framework is expected nowadays I guess. So I decided to create an app with Laravel and React to practice. 

After a week, here it is:

https://youtu.be/6s5-EOaV6tI

You can play with it at https://piggyspastel.com

The app basically let you search through a list of images and generate a one-page PDF file so you can print and fill with color. 

I sometimes play this with my daughter and we had a lot of fun.

# Thinks I learnt
1. You don't get value at element but from a central object at the root component
You need to plan your code quite a bit. For example, in jQuery, if you want to grab any input value, simply select that element and use val(). In react, my feeling is you need to store the value somewhere in the app (in the root component in the case of my app) and work on that value

2. Event handling quite strange
In jQuery, if you want to add a listener to an event, simply bind the event handle to that element directly. However, in React, many times you need to pass the event handler to child components through props. This may cause some headache if the components are a few levels deep

I think I need a lot more practices to really understand the way React works and get familiar with it. 

If you have any pointers that help me learn it faster, please share.

Thanks a lot!
Ethereum Application Development Company
Tags: ethereum, ethereumdapp
Published: 2020-01-03 07:45:42

5 Questions To Answer Before Investing In <a href=https://www.somish.com/blockchain/ethereum-application-development> Ethereum Application Development</a>

Before you invest in Ethereum Development, here’s what you should answer first.
1.	Ethereum is generally the default choice, however, there’s an increasing demand for platforms like EOS, Fusion, TRON. Have you done a comparative study?
2.	Do you know that with Ethereum Development you are investing in a permissionless network?
3.	Ethereum Smart Contracts, once published on the main net, are visible to everyone. Have you ascertained the business model of your idea?
4.	Is your target audience crypto native or have they never heard of Ethereum?
5.	How many transactions per second do you envision for your project?

Just some questions that should be answered prior to Ethereum development. Our team has answered them for 21+ projects since 2017.
A developers guide to Run Puppeteer on Elastic Beanstalk (no ubuntu linux)
Tags: aws, linux, tutorial
Published: 2020-01-03 07:41:55

The problem with running puppeteer on elastic beanstalk is that chrome is not included by default.

This has been published on [Medium](https://medium.com/@achillesmoraites/a-developers-guide-to-run-puppeteer-on-elastic-beanstalk-linux-no-ubuntu-linux-d137fa2641ae)


## Make sure you have
- **Installed EB CLI** [you can find it here](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb-cli3-install.html)
- **[Configured the EB CLI](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb-cli3-configuration.html)** make sure you setup ssh for your instances !

## Install chrome on elastic beanstalk
Connect with ssh to elastic beanstalk
To connect with ssh the easiest way is to use:
```
eb ssh
```

after you have connected, run the following command

```
curl https://intoli.com/install-google-chrome.sh | bash
```

the command above fetches and runs the installation script on elastic beanstalk.

## Lets Use it

After we have chrome installed we need to setup puppeteer to use it instead of the default chromium that will not work no matter what.

here you can see a simple snippet of how we can use puppeteer to take a screenshot of a page in www.example.com , note the executablePath is pointing to the directory where our installed chrome lives.

```
'use strict';                                               
const puppeteer = require('puppeteer');

(async() => {
 
const browser = await puppeteer.launch({executablePath: '/usr/bin/google-chrome-stable',
headless: true, args: ['--no-sandbox', '--disable-setuid-sandbox']});
                                   
const page = await browser.newPage();

await page.goto('https://www.example.com');                                                               

await page.screenshot({ path: 'screenshot.png', fullPage: true });

browser.close();

})();
```
Congrats you can now use Puppeteer on elastic beanstalk !




[cover photo by Magda Ethels](https://www.pexels.com/@magda-ehlers-pexels)
Adventures of a developer team
Tags: book
Published: 2020-01-03 07:41:43

---
title: Adventures of a developer team
published: true
description: I am going to publish a new book! :)
tags: book, 
---

So after the big success of [Your First Year in Code](https://leanpub.com/firstyearincode) with Isaac Lyman (@isaacdlyman) and the other co-authors, I just thought that I want to write a book, too :)

I guess this is a journey, and I want to experience it from the beginning to the very end.

So I went to Leanpub and created a book. 

I already have a plot outline, and the first 20-30 pages written. It is an interactive story, so while reading it, you will have to make a few decisions on how the story should go on.

Please check it here:

https://leanpub.com/adventuresofadeveloperteam/

![cover image](https://thepracticaldev.s3.amazonaws.com/i/883cm79ayohqw1pba5i5.png)