teleren/devto huggingface dataset:
Goodbye WordPress, Hello JAMstack!
Tags: vue, wordpress, serverless, javascript
Published: 2019-10-17 18:19:32

I've been running my "personal brand" blog at [47hats](https://47hats.com) since 2005 on one platform or another; for the past decade in WordPress.

I *hate* WordPress. 

I'm convinced that all that never-ending messing with plugins, theme configurations, broken wp installs and the like took all the joy out of blogging for the first generation of bloggers.

And performance **sucked**:

![This score sucked](https://thepracticaldev.s3.amazonaws.com/i/vh4czkv431wwtjmqpbte.png)

But the imperatives for blogging haven't gone away: we still need a public way to connect to people, to show what we are (mostly) good at, to register as a "thought leader" in whatever we are passionate about.

### Getting on the JAMstack movement

I've seen a lot of various movements come and mostly go in the tech industry: Windows OS (don't judge) at one time was revolutionary. Then, for me, there was Ruby on Rails. Then .js everything, React, Vue, and on and on. The difference between a tool (like webpack, gulp, etc.) and a movement is two things: people and affordances.

About a year ago after listening to [Wes Bos and Scott Tolinski](https://syntax.fm/) raving about [netlify](https://www.netlify.com/), I decided to give it a try with a demo Jekyll example blog. I sat there gobsmacked for 10 minutes because I had never, ever, seen such an easy deploy resulting in such a performant site.

I started noticing how many interesting people were moving over to the JAMstack and how many startups were springing up in the space: this is a movement, not a shiny new object.

### Making the switch, get to the punchline

So last month I decided instead of hosting my WP site in WordPress on Siteground (the best of the WP hosts, IMO) for another year, I'd see if I could stand up my blog in Vue on Netlify. 

I rapidly descended down several rabbit holes: first Nuxt, then VuePress, then Vuetify, then [gridsome](https://gridsome.org/). Gridsome is an awesome framework for someone who needs a home for their blog, with a few pages and wants to get it done **now**. 

Last night I threw the [dns] switch, and today my site looks like this:

![47hats not sucking](https://thepracticaldev.s3.amazonaws.com/i/t28zolwsx6p60fnss4i5.png).

My JAMstack journey is in its early days; HubSpot and Rails still pay the bills. But there are some amazing opportunities to create value that's performant, fun to build and looks good everywhere: I hope to find my place in the JAMstack Revolution.
Make your business more resilient in the digital age
Published: 2019-10-17 17:28:24

Very humbled to write a guest post on Adrian Hornsby excellent blog where he provides guidance to help customers build resilient architecture and champions operational excellence. 

In this post I talk about what you need to think about to build a more resilient business fit for the digital age.

Here is the link: https://medium.com/@adhorn/make-your-business-more-resilient-in-the-digital-age-888da3f5deaf
Postgres, Docker and Windows
Tags: postgres, windows, docker, dockercomposeyml
Published: 2019-10-17 17:09:53

---
title: Postgres, Docker and Windows
published: true
description: Making that postgres container work in windows.
tags: postgres, windows, docker, docker-compose.yml
---

This has had me tearing my hair out for a fair old chunk of time.

The main issue was I wanted to spin up a simple container with postgres in it for a little dev project I'm playing with.  Historically I've used Heroku but I wanted to be a good modern dev and slam some containers about the boat.

The initial article I found had a few decent bits in it but I did run into issues straight away.

The first one was that I needed to sort the Docker for windows sharing out.
![cloud app](https://talkbe-uploads.s3-eu-west-1.amazonaws.com/images%2F385%2F19%2F10%2F17%2Fezgif.com-video-to-gif.gif)

`Docker Settings (TaskBar Tray) > Resources > File Sharing > C:`
This then requested my admin user and password to allow permissions.

Next I set up the `docker-compose.yml` file.  This in itself caused a number of permissions problems.

```yml
version: "3"
services:
#  Create a service named db.
  db:
#   Use the Docker Image postgres. This will pull the newest release.
    image: "postgres"
#   Give the container the name my_postgres. You can changes to something else.
    container_name: "localpg"
#   Setup the username, password, and database name. You can changes these values.
    environment:
      - POSTGRES_USER=john
      - POSTGRES_PASSWORD=pwd0123456789
      - POSTGRES_DB=mydb
#   Maps port 54320 (localhost) to port 5432 on the container. You can change the ports to fix your needs.
    ports:
      - "54320:5432"
#   Set a volume some that database is not lost after shutting down the container.
#   I used the name postgres-data but you can changed it to something else.
    volumes:
      - postgresql-volume:/var/lib/postgresql/data
volumes: 
  postgresql-volume:
    external: true
```
The main errors being
```
Data page checksums are disabled.

fixing permissions on existing directory /var/lib/postgresql/data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 20
selecting default shared_buffers ... 400kB
selecting default time zone ... Etc/UTC
creating configuration files ... ok
2019-10-17 16:09:15.251 UTC [77] FATAL:  data directory "/var/lib/postgresql/data" has wrong ownership
2019-10-17 16:09:15.251 UTC [77] HINT:  The server must be started by the user that owns the data directory.
child process exited with exit code 1
initdb: removing contents of data directory "/var/lib/postgresql/data"
```
What I found with this was you needed to create a volume for docker as it just doesn't seem to play nice with the windows file system at its rawest.

This involved running this command.

```
$ docker volume create --name=postgresql-volume
```
And making sure this was in my compose file

```yml
volumes: 
  postgresql-volume:
    external: true
```
Why Does JavaScript Do THIS? - Question #1 
Tags: javascript, help
Published: 2019-10-17 16:25:32

Hello Wonderful Dev.To Community,  

I am doing my best to understand WHY JavaScript does WHAT it does. Sometimes I run into things I just can't wrap my mind around. This is one of these times... 

My question is: Why does the last item in the array show up correctly, but all the other values are skipped over and not displayed, UNLESS I use "+="? 

I am a JavaScript noob as you can probably tell from my question... But I would love to know WHY JavaSript is doing this. If you could let me know why that would help me a bunch. Thanks in advance. 

{% codepen https://codepen.io/Nova/pen/qBBaqLN %}
PDF Merge GUI, cross platform
Tags: pdf, electron, hummusjs
Published: 2019-10-17 16:21:25

---
title: PDF Merge GUI, cross platform
published: true
description: I made a simple cross platform gui tool for merging PDFs together
tags: pdf, electron, hummusjs
---

When doing some accounting at work, I was asked to merge some PDFs together. Having used Mac for this kind of work before I found it quite difficult to achieve on Windows, so I made this tool for it.

[PDF merger](https://github.com/stephan-nordnes-eriksen/pdf-merger) lets you simply drag-n-drop PDF files to merge them together.

Hopefully it is useful to others as well. It should work on most platforms, eg. Windows, Linux, MacOS.

I used [Electron](https://electronjs.org/) to build the GUI, and [HummusJS](https://www.npmjs.com/package/hummus) to do the actual PDF-merging. It uses [Github actions](https://github.com/features/actions) for automated releases.

Check it out here:
[https://github.com/stephan-nordnes-eriksen/pdf-merger](https://github.com/stephan-nordnes-eriksen/pdf-merger)

Also, this is my first post here on [Dev.to](dev.to). Let me know what you think!

## The current user interface
![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/nfopemhf1u9k995bo89w.png)
Building and Securing Web APIs with ASP.NET Core 3.0
Tags: aspnet, netcore3, aspnetcore3, dotnet
Published: 2019-10-17 16:16:54

---
title: Building and Securing Web APIs with ASP.NET Core 3.0
published: true
description: Learn how to build Web APIs with the new ASP.NET Core 3.0 and how to secure them with Auth0 authentication and authorization features.
tags: #aspnet #netcore3 #aspnetcore3 #dotnet
canonical_url: https://auth0.com/blog/how-to-build-and-secure-web-apis-with-aspnet-core-3/
---

This article will show you how to build your Web API with the new ASP.NET Core 3.0 and how to integrate with Auth0 in order to secure them. Following the steps described in this tutorial, you will end up building a simple Web API project.

[Read on 🛠️](https://auth0.com/blog/how-to-build-and-secure-web-apis-with-aspnet-core-3/?utm_source=dev&utm_medium=sc&utm_campaign=aspnetcore3_apis/) 

![Building and Securing Web APIs with ASP.NET Core 3.0](https://cdn.auth0.com/blog/illustrations/dotnet.png)
What is the Web
Tags: web
Published: 2019-10-17 16:10:06

---
title: What is the Web
published: true
description: A brief introduction to the World Wide Web
tags: web
series: FrontEnd Development Zero to Hero
---
The World Wide Web popularly called the __Web__ or __WWW__ is an information system made up of resources and users on the internet using protocols like HTTP (hypertext transfer protocol).

Invented by Tim Berners-Lee in the year 1989 who wrote the first web browser in 1990 while at [CERN](https://home.cern/).

The web is one of the primary medium people used to interact on the internet. Some media on the web such as web pages are presented in the HTML (Hypertext Markup Language).

To access a resource on the web you literally need the resource address which is either an IP address or a domain name.

IP Address can be __numeric strings__ separated by dots (.) e.g. `192.168.2.1` for __IPv4__ addresses or __digits__ separated by columns for __IPv6__ e.g `2031:0db8:85a3:0000:0000:8a1e:0370:7304`. You can read a short guide on IPv4 and IPv6 available at [Mashable](https://mashable.com/2011/02/03/ipv4-ipv6-guide/).

An __IP Address__  is used to locate resources on the web by typing it into the address bar of your web browser but most (except for a few) are not comfortable typing numbers all the time just to look up a resource online. Which brings us to the __domain name__.

The domain name is a more of a human-friendly version of an IP address, and it's quite easy to memorize (huh, [not all the time](https://0.30000000000000004.com/)).

Beginner's guide to a domain name can be found on [wpbeginner](https://www.wpbeginner.com/beginners-guide/beginners-guide-what-is-a-domain-name-and-how-do-domains-work/).

##__HISTORY OF THE WEB__

History is quite a big thing, and when it comes to the web it's almost the same. I will not be doing justice to this topic if I just write one or two lines and call it a day. But, we are in luck! Someone already did the grunt work for us. His name is Jay Hoffman. Jay Hoffman has a project dedicated entirely to the history of the web you can find at [thehistoryoftheweb](https://thehistoryoftheweb.com/complete-history/).

You can also read the [timeline of events](https://thehistoryoftheweb.com/timeline/).

[Follow his writing](https://thehistoryoftheweb.com/archives/) on the site's blog.

_Edited September 19, 2020: Grammar fix._
_Edited March 23, 2021: Grammar fix._
Video - How The GRANDstack Makes Handling Complex Data Easy
Tags: neo4j, graphql, grandstack
Published: 2019-10-17 16:06:16

---
title: Video - How The GRANDstack Makes Handling Complex Data Easy
published: true
description: My lightening talk for the Neo4j NODES online conference
tags: [Neo4j, GraphQL, GRANDstack]
---

# NODES Neo4j Online Developer Summit
## click on the picture for video

[![NODES](https://thepracticaldev.s3.amazonaws.com/i/26dx1muaxmmao4c2mtyt.png)](https://www.youtube.com/watch?v=Mt0crUU1BQY)
What is the Internet
Tags: beginners, internet
Published: 2019-10-17 16:05:49

---
title: What is the Internet
published: true
description: a brief description of the internet
tags: beginner,internet
series: FrontEnd Development Zero to Hero
---

The term __Internet__ is actually the short term for __International Network__ or __Interconnected Network__ which is a system of interconnected networks using standardized communication protocols such as TCP/IP which stands for Transfer Control Protocol and Internet Protocol.

##__HISTORY OF THE INTERNET__

Writing about the history of the internet is enough to fill a book, and you might get bored along the way, but I will like you to read a brief history of the internet available at the [sciencenode](https://sciencenode.org/feature/a-brief-history-of-the-internet-.php) website.

And if a video is kind of your thing, you can watch this short YouTube video

{% youtube 9hIQjrMHTv4 %}

The internet contains lots of technologies and services, some of which are

* EMAIL
* Internet Forums
* Social Networking
* Online Shopping

###__EMAIL__

E-mail short for electronic mail is a medium for sending messages using electronic devices. For further explanation on this subject checkout [computerhope dictionary on what email is.](https://www.computerhope.com/jargon/e/email.htm)

###__INTERNET FORUMS__

Internet forums serve as a medium where users can have a discussion on their topic of interest in the form of posted messages.

###__SOCIAL NETWORKING__

These are technologies that allow people to share ideas, information, interest via virtual communities and networks. Example [Pinterest](https://pinterest.com), [Twitter](https://twitter.com).

###__ONLINE SHOPPING__

The term is quite self-explanatory, you go shopping, but not to a local store rather than a virtual store accessible via a computer with a browser and internet connection. An example is [Amazon](https://amazon.com).

Other services you can find on the internet include:

* Web-enabled audio/video conferencing services
* Online movies and gaming
* Data transfer/file-sharing, often through File Transfer Protocol (FTP)
* Instant messaging
* Online shopping
* Financial services

The above list is taken from techopedia [definition of the term internet](https://www.techopedia.com/definition/2419/internet)

_Edited March 23, 2021: Grammar fix._
Compounding as an Unstoppable Tool
Tags: growth, mentalhealth, personaldevelopment
Published: 2019-10-17 15:13:41

---
title: Compounding as an Unstoppable Tool
published: true
description: Building on daily objectives
tags: growth, mentalhealth, personaldevelopment
cover_image: https://images.unsplash.com/photo-1505816014357-96b5ff457e9a?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=3891&q=80
---


Compounding.  I am often asked what traits/actions/paths are important for personal and professional growth.  The idea of compounding, I believe, is one of the more important ideas.  Continually building on top of previous goals and actions.  Just as dividends and investments compound and grow over time, we can continually grow results in many aspects of our lives.  From learning to health to happiness, with many small incremental steps we can incubate growth in our daily lives.


The idea of compounding is simple.  Every day build on the previous day's results.  This can be stringing together workouts, working on side projects or just maintaining a schedule.  Eventually as we build up our routines they will become habit.  I found it easiest to progress by breaking everything up into smaller pieces.  As I achieve even the simplest of items this gives me visual affirmation that I am moving towards my goal.  On a large Unity project I am working on, I like to break out all my weekly tasks into 4-5 items each with their own subtasks.  Over the course of a week I can clearly see my progress, where I am lacking and what I can prioritize.  


I also use this idea when I set my workouts and cardio for the week.  I found it difficult at first to set my objectives and goals, but by building little by little each day/week you begin to see progress.  Progress that is used as fuel to move you even further, you just have to light the embers.  Everything matters as far as keeping the mindset.  There are some days where I can only lift a few weights, or just walk on the treadmill because I am completely drained from the day.  Its ok to go 10/20/30% on some activities, but its important to do it anyways.  Train your mind that you can do it.  As a full time software engineer there are many times I come home and just cant write any code or even sit in front of a computer, but instead of throwing the day away I usually sit down and physically write down and review my objectives for the week (then I fire up some Destiny for some stress releasing crucible action).

Those are my rambles.  Any progress is still progress, regardless of how small you think it is.  Every stone makes the foundation stronger.
Done Is Better Than Perfect
Tags: career, general
Published: 2019-10-17 14:51:30

---
title: Done Is Better Than Perfect
published: true
description: 
tags: career, general
canonical_url: https://stevenmercatante.com/done-is-better-than-perfect
---

___
*This post was originally published at [stevemerc.com](https://stevenmercatante.com/done-is-better-than-perfect)*
___

How many side projects have you started, but never released? What about articles? Designs? Open source libraries? I have way more than I can count. They're collecting dust on external hard drives and in Github repos. Things that I got excited about, started, and never released.

This is nothing new for me, and maybe not for you, either. It's easy to fall into the trap of "this design needs to be pixel perfect before I can release it", or "this one last feature is _essential_; I can't ship without it." These thoughts are roadblocks. They prevent your creation from seeing the light of day.

"Done is better than perfect", "Good enough is good enough", "Perfect is the enemy of good". I didn't coin any of these phrases, and I'm not the first one to repeat them. I've been hearing them for years, but have only recently internalized them, and put them into practice. And that's led to me shipping the following in the last 6 weeks:

- 7 blog posts
- 9 videos
- 2 open source libraries
- 6 features to [my site](https://stevenmercatante.com)

For every one of the above items, there was a moment when I thought "let me just tweak this one thing, then I can release it." _Every single one_. But I knew that if I kept tweaking them until they were perfect, they'd never be done, and I never would have shared them.

A funny thing about shipping, is that it gets easier the more you do it. Patrick McKenzie has a [great quote](https://news.ycombinator.com/item?id=12671255):

> Being able to successfully ship things is a useful muscle to develop.

The more you ship, the easier it becomes. You start to doubt yourself less, and you put more out into the world.

Here's another funny thing about shipping: it can bring about unexpected opportunities. I've had people email me after reading or watching my content, and checking out my open source libraries. I now have ideas for more content to produce, related to the stuff I recently shipped. It's a virtuous cycle.

This makes me wonder: how many opportunities have I missed from not releasing my previous work? How many cool work opportunities and new clients could there have been? How many people could have learned something new from reading my source code and articles?

Starting things is easy. Shipping them is hard. So start exercising that muscle.

👋 **Enjoyed this post?**

Join my [newsletter](https://stevemerc.com/newsletter/?r=dev) and follow me on Twitter [@mercatante](https://twitter.com/mercatante) for more content like this.
Big Data and Hadoop Framework Tutorial for Beginners
Tags: database, machinelearning, tutorial, beginners
Published: 2019-10-17 14:42:12

Data analytics, Apache spark, hive, pig, Data Science, MapReduce, Machine learning, Aws EMR, Azure Machine learning

This course is focusing on Big data and Hadoop technologies, hands on demos, 

Section 1 - Big data 

1.1 Big data introduction

1.2 Big data history

1.3 Big data technologies

1.4 Big data characteristics

1.5 Big data Applications

1.6 Data Lake

1.7 Data Science and Data scientist

Section 2 - Hadoop

2.1 - Hadoop introduction

2.2 - HDFS-Overview

2.3 - Hadoop Architecture

2.3a - Hadoop Architecture - assumptions and goals

2.4 - Demo-Hadoop install - sw download verify integrity

2.5 - Demo-Hadoop install - Java ssh configure

2.6 - Demo hadoop access by browser

Section 3 - Machine Learning

3.1 Machine learning introduction

3.2 Machine learning algorithms

3.3 Machine learning softwares

Module 4 - AWS Machine Learning

4.1 AWS and Machine learning introduction

Below will be added soon.

4.2 Bigdata and aws

4.3 Hadoop on Amazon Elastic Map Reduce (emr)

4.4 What is EMR

4.5 EMR Architecutre

4.6 Demo - launch EMR cluster

2.6 - Hadoop single node cluster setup

2.7 - Hadoop single node - Pseudo-Distributed Operation

2.8 - Hadoop multi node cluster setup

2.9 - MapReduce

2.10 - Azure HDInsight

2.11 - HDFS-Operations

2.12 - Apache Spark and Big data analytics

2.15 - Hadoop, Hive and Pig

What you'll learn

* Understand Big data technologies, Data analytics and Hadoop framework

{% youtube D04lNSOk56o %}
Week 3 Assignment CNTRL+ALT Code School
Tags: weekthree, cntrlalt, code, school
Published: 2019-10-17 14:25:24

I was not aware until this week you can use HTML heading tags in Markdown.  I am still confused but love being able to create.

<h2> This is a 'h2' ta, you can use '##' instead

<h4> This is a 'h4' tag, you can use '####' instead 

The cool thing is learning the simple steps in coding that are allowing me to build on. "I am a newborn in the tech field ( 'Please do not judge me'); by posting stuff that is not important to anyone except '>'myself and my teacher"-Me.

'***'bold and italic 

[Week 3 assignment]

(https://github.com/elliottangela470/elliottangela470.github.io/tree/master)
Django 

Tags: django
Published: 2019-10-17 14:17:13

It's quick introduction to the famous python web framework Django. I hope you’re are familiar with python . 

Go to your command prompt. Install django with with this command.


` pip install django `


This will install django in your system. 

Make a folder anywhere you want. In the command prompt, use cd(change directory) command to navigate to that newly created folder. 
Once you are in that folder type the following command ,

 
` django-admin startproject mysite `

This command will start a project named “mysite”. You will see a new directory/folder named “mysite” in your directory.
Click on that you will see another mysite directory and a manage.py python file. That mysite directory is your main app(in django every independent feature is a app. Django projects are made of different apps. More about that later) or you can say that’s the entry point to your website.  
Django comes with a lightweight server and sqlite database. Now make sure you are in the same folder as your “manage.py” file in your terminal and you can just type the following command and run the server. 

` python manage.py runserver `

Your Terminal will show you a success message. To see if your server is really running go to that link  [http://127.0.0.1:8000/](http://127.0.0.1:8000/)
And you will see that webpage which is built in with django. 


Congratulations.