teleren/devto huggingface dataset:
Build a Static Site with Hugo and Deploy with Netlify
Tags: hugo, netlify
Published: 2018-03-29 08:48:13

---
title: Build a Static Site with Hugo and Deploy with Netlify
published: true
description: 
tags: Hugo, netlify
---


![Hugo](https://giuliovdev.gallerycdn.vsassets.io/extensions/giuliovdev/hugo-extension/1.0.0/1503297014062/images/hugo-logo.png)

 I'll be highlighting how to build a quick site with Hugo and deploy to netlify in a jiffy. But we have to understand what Hugo and Netlify are before we start building.

 [**Hugo**](https://gohugo.io) is one of the most popular open-source static site generators. With its amazing speed and flexibility, Hugo makes building websites fun again.

 [**Netlify**](https://www.netlify.com) is a unified platform that automates your code to create high-performant, easily maintainable sites, and web apps.


#### Step 1: Install Hugo

 To be able to use Hugo we will need to install it by running this command for Mac or Ubuntu users.

```
brew install Hugo
```

```
sudo apt-get install Hugo
```

#### Step 2: Create a new Hugo site

```
hugo new site -siteName
```

#### Step 3: Pick a theme

One of my best features of Hugo is you get to pick from a diverse list of themes available here [hugo themes](https://themes.gohugo.io/), Go ahead and pick a theme I'll be using hugo-hikari-theme. Make sure you go through the instructions for using the theme.

Copy the theme.toml into your config.toml file.

#### Step 4: Running the theme

```
hugo server
```

You should get a build process and  a message like so:

```
Server is available at http://localhost:1818/
```

Feel free to modify the theme to your personal preference.

#### Step 5: Deploy to Netlify

This is pretty much the easiest step to finally get our site running live we simply need to create an account with netlify, connect your GitHub profile to netlify.

![alt text](https://cdn.netlify.com/6ce8bf46dcc8bfc6d6ef982c7870eb86e32d2b8c/89152/img/blog/step-2-hugo.png)

After that step create a new site from the Netlify dashboard and connect your remote repository on GitHub.

Create a deploy command with this setting and deploy.

![Screenshot](http://res.cloudinary.com/lauragift/image/upload/v1519148146/Screenshot_from_2018-02-20_18-30-47_zoifgr.png)

Viola, you have successfully built and deployed your site with Hugo and Netlify with these quick steps. This post is originally posted to my [blog](https://www.giftegwuenu.com/2018/03/20/build-a-static-site-with-hugo-and-deploy-with-netlify/)
Creating a short PowerShell command equivalent to "rm -rf" in Bash
Tags: powershell
Published: 2018-03-29 07:39:55

---
title: Creating a short PowerShell command equivalent to "rm -rf" in Bash
published: true
description: Creating a short PowerShell command equivalent to "rm -rf" in Bash
tags: PowerShell
---

###### (A Japanese translation is available [here](https://qiita.com/TomoyukiAota/items/f94c9b0dfdeeb8a092f7).)

In Bash, `rm -rf` deletes a file or a directory. In PowerShell, I would like to do the same thing in a short command as well. Therefore, I created a PowerShell function to do the job.


# Introduction

Let's say that I want to delete `target`. In PowerShell, the following command does the job.


```
Remove-Item -Recurse -Force target

```

This is a long command even with tab completion. The following command is shortened version using officially provided aliases.

```
rm -r -fo target

```

This is still long when compared to `rm -rf` in Bash.
Therefore, I decided to create a PowerShell function, `rmrf`, for this job.


# How to create the command

PowerShell profile needs to be created.
`echo $profile` displays the file path of the profile. If the file does not exist, create it first.

In PowerShell profile, add the following function.

{% gist https://gist.github.com/TomoyukiAota/05693e4f3e957ba9be343fc0486f3301 %}

After editing the profile, restart PowerShell to reload the profile.


# Result

Issuing the following command will delete `target`. It's short!


```
rmrf target

```
Considerations for Customer Service Surveys
Tags: b2c
Published: 2018-03-29 06:30:46

---
title: Considerations for Customer Service Surveys
published: True
description: In this blog some useful tips to different survey using customer service
tags: B2C

---
<img src="https://thepracticaldev.s3.amazonaws.com/i/3e383zdm7ysrff8wgmmh.png">
A considerable measure has been composed on <a href="https://www.google.co.in">performing client administration</a> or consumer loyalty studies. I might want to offer only a couple of best practices to consider in light of my own experience being on the two sides of the overview.
[AskDEV] How to learn building scalable distributed systems when its not part of your job?
Tags: softwareengineering, beginners, discuss
Published: 2018-03-29 06:27:09

---
title: [AskDEV] How to learn building scalable distributed systems when its not part of your job?
published: true
description: 
tags: softwareengineering, beginner, discussion
---

Where should I start to learn distributed systems? I know this is pretty vague thing to ask, but I am open to receiving vague answers.😊
Reminder on File Inputs, JavaScript, and Read Access
Tags: webdev, javascript
Published: 2018-03-30 18:00:55

---
title: Reminder on File Inputs, JavaScript, and Read Access
published: true
tags: webdev,javascript
canonical_url: https://www.raymondcamden.com/2018/03/29/reminder-on-file-inputs-javascript-and-read-access/
---

Let me begin by stating that what I'm covering today isn't actually new. It's stuff I've covered here before. But after a conversation with a reader via email I had to write up a quick test to confirm it myself. I don't believe this is a security issue, but I was kinda surprised and therefore I figured it was best to whip up a quick blog post.

Let's begin with some basics. I assume you know that JavaScript running in the browser does not have access to your file system. That's a really, _really_ good thing. Chrome used to support a file system API (and it may still support it, but it's definitely deprecated) that gave you access to a sandboxed file system, but it certainly was not allowed to touch the user's main file system. Now that binary support in IndexedDB is well supported, there isn't really a need for _writing_ files to the disk.

However, JavaScript can _read_ files that the user selects via an file type input field. You can see a simple demo of this below:

{% codepen https://codepen.io/cfjedimaster/pen/ZxrqEz/ %}

Be sure to select a text file only, but you can also read binary data too. (The code would just need to adjust for it.) Also, I apologize for not using Vue. I feel bad. ;)

So here is where the interesting little tidbit came up. In one of my [earlier demos](https://www.raymondcamden.com/2014/04/14/MultiFile-Uploads-and-Multiple-Selects-Part-2/), I showed selecting images and getting previews. It also supported multiple selections. So you could pick one image. Then pick another. And so on.

What that demo showed, and what didn't really click with me, is that **once a user selects a file, you have read access to it, even after they select another file.** As I said, I can see why that works, and it isn't a security issue per se. I mean, the user did select the file. But it kinda surprised me that after I cleared my selection, I could still read it. This CodePen demonstrates this, a bit poorly (I'll explain why in a second):

{% codepen https://codepen.io/cfjedimaster/pen/MVrLNo/ %}

This demo lets you pick a file, then some more, then more (etc.), and finally upload them all to Postman. Postman doesn't seem to handle the result very well, but from what I can see in DevTools, all files are definitely being uploaded.

I guess that's all I have to say about it. Is anyone else surprised or is it just me?
CryptoShadow
Tags: cryptocurrency, flutter, android, ios
Published: 2018-03-28 21:50:38

---
title: CryptoShadow
published: true
description: CryptoShadow is a cryptocurrency trakcer
tags: cryptocurrency, flutter, android, iOS
---
#CryptoShadow
**CryptoShadow** is a cryptocurrency tracker for Android & iOS made with the new Framework flutter.

##GooglePlay & AppStore
It's available now on GooglePlay: https://play.google.com/store/apps/details?id=com.huextrat.cryptoshadow
And a version will be release soon on iOS.

##GitHub
Also, if you want to test the new features now or check the source code, here is my GitHub: https://github.com/huextrat/CryptoShadow

#Screenshot
![CryptoShadow](https://thepracticaldev.s3.amazonaws.com/i/n89ukonygj3yfwcmxrpp.png)
Project structured_log Goes Public
Tags: ruby, github, opensource
Published: 2018-03-28 21:00:17

---
title: Project structured_log Goes Public
published: true
description: 
tags: ruby, github, opensource
---

GitHub project <a href="https://github.com/BurdetteLamar/structured_log/blob/master/README.md#structured-log">structured_log</a> goes public.

Soon to be a Ruby gem.
Screaming in the Cloud with Corey Quinn
Tags: crosspost, industry, launchdarkly, a11y
Published: 2018-04-03 06:45:44

---
title: Screaming in the Cloud with Corey Quinn
published: true
tags: Crosspost,Industry,LaunchDarkly,accessibility
canonical_url: http://www.heidiwaterhouse.com/2018/03/28/screaming-in-the-cloud-with-corey-quinn/
---

Corey Quinn, slasher of AWS bills and frequent conference speaker, had me as the first guest on his brand-new podcast, [Screaming in the Cloud](https://www.screaminginthecloud.com/episodes/2018/3/19/episode-1-feature-flags-with-heidi-waterhouse-of-launchdarkly). We had a great time talking about feature flags, the all-iPad conference setup, testing in production, and how I feel about technical documentation.

And if you’re like me and don’t always have time to listen to podcasts, there’s also a transcript!

(This is the third time I’ve been asked to help kick off a podcast. Feel free to ask me for your own podcast!)
My Twitter bots in action.
Tags: discuss, twitter, bot, node
Published: 2018-03-28 16:33:43

---
title: My Twitter bots in action.
published: true
tags: discuss #twitter #bot #nodejs
---

Hey DEVs,

Check out my Twitter Bots I made in the past 2 days.

[The Devel Bot](http://twitter.com/TheDevelBot) - This will retweet recent tweets with hashtags `#100DaysOfCode #DevDiscuss #CodeNewBie #freecodecamp`.

[The Shutter Bot](http://twitter.com/TheShutterBot) - This will tweet an adorable photo every now and then. 

[Math The Bot](http://twitter.com/MathTheBot) - This will tweet a fun fact about numbers.

I have set time intervel for every bot to make sure that it doesn't spam your feed.
Achieve Faster and More Controlled Management of MySQL Databases with Updated dbForge Studio for MySQL
Tags: mysqlclient, mysqlgui, mysqlguitools, mysqlmanager
Published: 2018-03-28 15:48:55

---
title: Achieve Faster and More Controlled Management of MySQL Databases with Updated dbForge Studio for MySQL
published: true
description: Devart introduced a significant update of dbForge Studio for MySQL with a bunch of new unique features, including support for Google Sheets, new schema comparison and synchronization engine, and much more.
tags: mysql client, mysql gui, mysql gui tools, mysql manager
---

Devart, a Czech software vendor of database tools and data connectivity solutions, has released a significantly improved version of its universal MySQL and MariaDB GUI tool, dbForge Studio for MySQL v.7.4. The most outstanding and notable updates implemented in dbForge Studio for MySQL are:  

1) Support for Google Sheets for easy migration of table data between MySQL tables and Google Spreadsheets. The feature is incorporated into handy Data Export / Import Wizard, and the only thing users should do now is to specify the URL/ID of a Google Spreadsheets table.

2) Improved SQL document management with Execution notifications and Transaction Reminder as well as highlighting of the current code line.

3) Enhanced Code Completion with dozens of new variables and functions supported (Percona Server variables, MySQL Server variables, variables for MariaDB Server, etc.)

4) Both, schema/data comparison and synchronization wizards feature a new progress window with the list of processes taking place and specification of time elapsed. A brand new schema comparison and synchronization engine is implemented as well.

5) Now, dbForge Studio for MySQL allows copying databases seamlessly through the command-line interface and alerts users about the result of database copying.

dbForge Studio for MySQL is a universal GUI tool for MySQL and MariaDB database administration, development, and management. The IDE allows you to create and execute queries, develop and debug stored routines, automate database object management, analyze table data via an intuitive interface, and much more. 

To see the full list of updates implemented in dbForge Studio for MySQL v.7.4, please visit: https://www.devart.com/dbforge/mysql/studio/.

About Devart

Devart is one of the leading developers of database tools and administration software, ALM solutions, data providers for various database servers, data integration and backup solutions. The company also implements Web and Mobile development projects.

For additional information about Devart, visit https://www.devart.com/.
What makes you want to stick with a programming language?
Tags: discuss, compiler, language, languagedesign
Published: 2018-03-28 15:17:05

---
title: What makes you want to stick with a programming language?
published: true
tags: discuss, compiler, language, language design
---

[My previous post](https://dev.to/17cupsofcoffee/how-do-you-feel-about-braces-and-semicolons-2bpc) generated a load of really interesting comments, so I'm back with another language design question - albeit this time a bit more of an abstract one!

> What factors make you want to keep investing time into a programming language beyond writing "Hello, world"? Or conversely, what things make you drop a language like a ton of bricks and run back into the warm, inviting arms of `${FAVOURITE_LANGUAGE}`?

For me, the biggest thing that keeps me motivated through the early stages is documentation - in particular, well written guides/tutorials, rather than simple API docs. I've noticed there's been a bit of a trend in recent years towards languages coming with a 'book' which goes through all the features of the language, and I'm a really big fan of that concept! The prime example of this is [The Rust Programming Language](https://doc.rust-lang.org/book/second-edition/), which is so good I might order the print copy when it comes out <3

On the opposite end of the spectrum, I think the main thing that puts me off a language is bad tooling (package management, command line tools, editor extensions, etc.). It's enough to put a damper on my enthusiasm for otherwise wonderful languages - I love Lua's design, but I find myself really missing code completion whenever I use it!

How about everyone else?
Future dev.to product concept: "Preview" button in index view
Tags: discuss, meta, ux, design
Published: 2018-03-28 14:21:53

---
title: Future dev.to product concept: \"Preview\" button in index view
published: true
tags: discuss, meta, ux, design
---

I was going to post this as a private GitHub issue but then I realized it fits better here.

### User Story
As a reader I might want to thumb through my home page and click a preview button, which would reveal the first ~ 15 lines of the post right there inline.

![](https://d2ffutrenqvap3.cloudfront.net/items/3Q1H1y2z2k2L3S1r311N/Image%202018-03-28%20at%209.55.26%20AM.png?v=d1b74253)

From there they can make the choice to read further, hit the `SAVE` button to add it to their reading list, or just move on.

The first bit of a post will typically let you know if you want to read further. It will also prime you to remember to come back a little better than just saving it.

Reddit has a similar feature with self-posts which just shows the whole content. It's a definitely useful but a bit brutish like most Reddit features.

Platforms that show the content as a "pop up" instead of a full new page achieve some similar ability to look at stuff without the context switch, but I think the inline preview does this a bit better.

The implementation of the proposed feature is pretty straightforward IMO, it's more a matter of whether it's the right direction. It's definitely the sort of thing that affects platform mechanics.

Feedback is super appreciated.
Get App, stand app! 
Tags: discuss, programming, quotes, javascript
Published: 2018-03-06 10:55:42

---
title: Get App, stand app! 
published: true
description: 
tags: discuss, programming, quotes, javascript
---

![Get App, stand app!](https://raw.githubusercontent.com/Drozerah/quotes-on-programming/f7be9d90d99e75428531067e0d01c2b6c223d76c/dist/img/getApp.png)

Hi there! I’ve coded a [quotes generator on the field of programming](https://quotes-on-programming.netlify.com/) as a training subject... The engine is based on a simple page that returns quotes randomly with some HTML5, CSS and Vanilla.js implementation …I don’t know if it must be more efficient, but it works well for that purpose.
 
Not only returning quotes, I ‘have added a Twitter share button that opens a pre filled input text in a pop up (quote text + tags + page link), like originals Twitter buttons do usually using meta properties (not in my case)… I’ve also added a CSS transition between quotes when a user asks for a new quote.
 
During the engine construction, I realized that it was a nice experience to be exposed to and read all the quotes and dive into it, kind of meditative way of coding something… So, I decided to share it with you as social experimentation, thinking to myself: “Hey!  It would make sense if other concerned people could enjoy adding quotes to the list, read them, and dive into it like I did!”

Anyway, at the actual state of its development, the engine can’t be really called “Application”, no form added, and a simple JS object to store the data, so, at that point, you can’t post anything but!
 
Feel free to request for new quotes - that make sense to you - using the form bellow this article, so that, I’ll be able to add them to the database witch is not a database.  You can also open pull requests directly using the [related GitHub repository](https://github.com/Drozerah/quotes-on-programming) which is a nice way to add quotes too...

https://quotes-on-programming.netlify.com/
 
Thank you all for reading, sharing, comment or participate!

Drozerah
Naming CSS classes with BEM
Tags: beginners, html, bem, css
Published: 2018-03-28 14:02:04

---
title: Naming CSS classes with BEM
published: true
description: 
tags: #newbies #html #BEM #css
---

This post is originally posted to [my blog](http://frugencefidel.com/blog/naming-css-classes-with-bem).

BEM - **B**lock **E**lemet **M**odifier is the way of naming CSS classes so that they can be more meaningful and reusable. 

BEM help to avoid name collisions and reduce the pain of modifying CSS classes when changes are need to be made. As you known when working with large project, modifying a single CSS class may lead to dozens of affected pages. BEM help to avoid all those problems. 

Let me explain what I known about BEM:

**B** - Block 

Block is an independent, reusable and standalone part of design. Blocks can be nested in each other.

```html
  <!-- hero block -->
  <section class="hero">
    <!-- btn block -->
    <a href="#" class="btn">Click Me!!</a>
  </section>
```

**E** - Element 

Element belongs to a block and can not standalone. Simply it can not be used outside of the block that it belongs to. Elements can be nested inside each other. CSS class is formed as block name plus two underscores plus element name.

```html
  <!-- hero block -->
  <div class="hero">
    <!-- content element belongs to hero block -->
    <div class="hero__content">

      <!-- title element belongs to hero block -->
      <h1 class="hero__title">I'm main title</h1>

      <!-- text element belongs to hero block -->
      <p class="hero__text">Cupiditate dolores iste reiciendis ea non iure est.</p>
    </div>
  </div>
```

**M** - Modifier

Modifiers are used to change the default behavior or state of an element or block. Also Modifier are not standalone, mean they can not used outside of blocks that they belongs to. They show what size, how difference or how does they behave from default ones. CSS class is formed as block name plus two 'minus sign' plus element name.

```html
  <div>
    <!-- default btn block -->
    <a href="#" class="btn">I'm OG</a>

    <!-- btn block modified by red modifer -->
    <a href="#" class="btn btn--red">I'm red</a>
    
    <!-- btn block modified by red and large modifer -->
    <a href="#" class="btn btn--red btn--large">I'm red and large</a>
  </div>
```

Also you can watch video here about BEM

{% youtube ifaof7_h7oA %}
Apache Storm - Topology Permissions
Tags: bigdata, apache, storm, topology
Published: 2018-03-29 10:29:53

---
title: Apache Storm - Topology Permissions
published: true
tags: bigdata,apache,storm,topology
canonical_url: https://risdenk.github.io/2018/03/28/apache-storm-topology-permissions.html
---

### Overview

[Apache Storm](https://storm.apache.org/) is a distributed system designed for processing streams of information. Each unit of processing is called a bolt and a group of bolts with an initial spout is called a topology. Multiple topologies can be deployed on a single Apache Storm cluster. Multi tenancy within an Apache Storm cluster requires the ability to prevent any user from killing a topology or viewing the topology logs. Much of the information comes from the [Apache Storm security documentation](http://storm.apache.org/releases/current/SECURITY.html) but it isn’t entirely clear what each setting does.

### Apache Storm Topology Permissions

By default when security is enabled for Apache Storm, only the user who deploys the topology has access to admin operations such as rebalance, activate, deactivate, and kill. The configurations below can be set at the cluster or topology level. If they are defined in the topology they will override the global configuration.

| Configuration | Description |
| --- | --- |
| `topology.users` / `topplogy.groups` | This allows the users/groups specified to act as owners of the topology. This allows users to perform topology admin operations such as rebalance, activate, deactivate, and kill. |
| `logs.users` / `logs.groups` | This allows the users/groups specified to look at the logs of the topology. |

### Apache Storm Cluster Admin Permissions

There is one cluster level configuration that will enable a set of users to be admins for the entire Apache Storm cluster.

| Configuration | Description |
| --- | --- |
| `nimbus.admins` | These users will have super user permissions on all topologies deployed. They will be able to perform other admin operations (such as rebalance, activate, deactivate and kill), even if they are not the owners of the topology. |