teleren/devto huggingface dataset:
Top 5 DEV Comments from the Past Week
Tags: bestofdev
Published: 2019-09-11 23:09:20

---
title: Top 5 DEV Comments from the Past Week
published: true
description: Highlighting some of the best DEV comments from the past week.
tags: bestofdev
cover_image: https://res.cloudinary.com/practicaldev/image/fetch/s--7VrAA2ln--/c_imagga_scale,f_auto,fl_progressive,h_420,q_auto,w_1000/https://thepracticaldev.s3.amazonaws.com/i/qmb5wkoeywj06pd7p8ku.png
---

This is a weekly roundup of awesome DEV comments that you may have missed.  You are welcome and encouraged to boost posts and comments yourself using the **[#bestofdev](/t/bestofdev)** tag.

Lots of great answers in the **[What common programming concept has the wrong name? ](https://dev.to/ben/what-common-programming-concept-has-the-wrong-name-5c5j)**, but none more well-loved than @ryancmcconnell's contribution:
{% devcomment f2bo %}

@dink shares a tip in response to the **[My favorite CSS hack](https://dev.to/gajus/my-favorite-css-hack-32g3)** article:
{% devcomment f20o %}

Replying to **[Rust or Go for web development?](https://dev.to/selengora/rust-or-go-for-web-development-36gg)**, @oliverjumpertz offers some great thoughts about both languages:
{% devcomment f1ol %}

Keeping with the theme, @shushugah jumps into **[Is Ruby worth learning in 2019?](https://dev.to/realtoughcandy/is-ruby-worth-learning-in-2019-38ao)** to talk about some big-time companies that use Ruby.  I'd add DEV to that list :):
{% devcomment f54i %}

Solo projects are fun because you can break all the rules if you'd like.  In **[Git Workflow: Do you commit to master on your solo projects?](https://dev.to/daveskull81/git-workflow-do-you-commit-to-master-on-your-solo-projects-hi4)**, @gnsp jumps in with their flow:
{% devcomment f68l %}

See you next week for more great comments ✌
Angular 9|8 Drag and Drop File Uploading with MongoDB & Multer
Tags: angular98, expressjs, mongodb, node
Published: 2020-02-01 19:15:32

---
title: Angular 9|8 Drag and Drop File Uploading with MongoDB & Multer
published: true
tags: Angular 9|8,Express JS,MongoDB,Node JS
canonical_url: https://www.positronx.io/angular-drag-and-drop-file-uploading-with-mongodb-multer/
---

The post [Angular 8 Drag and Drop File Uploading with MongoDB & Multer](https://www.positronx.io/angular-drag-and-drop-file-uploading-with-mongodb-multer/) appeared first on [positronX.io](https://www.positronx.io).

In this **Angular 8 drag and drop file uploading tutorial** , we will learn to upload multiple image files in MongoDB database using Node and Express. In this tutorial we will create a basic Angular app in which we will create a custom directive to build Angular drag and drop functionality.
### Tutorial Objective

- Building Angular drag and drop file uploading Layout with HTML/CSS
- Creating a Node server to upload image files
- Creating Custom Drag and Drop directive
- Using Multer for Multiple file uploading
- Multiple files uploading with progress bar

[Click here to read more](https://www.positronx.io/angular-drag-and-drop-file-uploading-with-mongodb-multer/)
Cross compiling Rust for Raspberry Pi
Tags: rust, raspberrypi
Published: 2019-09-11 22:05:32

In a previous [post](https://dev.to/h_ajsf/prepare-raspberry-pi-5cpa), I mentioned how to install Rust at RPi, this may not be accepted in order to save space in RPi and to get things done faster, the solution is to do `cross compiler`, that is compile in a given OS, and run in different OS, which is supported smoothly by Rust, what you need is a linker.

For compiling to RPi the linker required is `arm-linux-gnueabihf-gcc` which can be installed easily in Linux `sudo apt-get install gcc-arm-linux-gnueabi make git-core ncurses-dev` you can check [this](http://ozzmaker.com/how-to-cross-compile-the-kernel-for-the-raspberry-pi/) but it took half day from me to find how to do it in MacOS and Win 10, and here I'm sharing the final steps with you:

For MacOS better use: `musleabihf` as target, and for Windows you can use `gnueabihf` as bellow:

**Mac**

```bash
$ brew install arm-linux-gnueabihf-binutils
$ rustup target add armv7-unknown-linux-musleabihf
```

In `.cargo/config`
```toml
[build]
target = "armv7-unknown-linux-musleabihf"
[target.armv7-unknown-linux-c]
linker = "arm-linux-gnueabihf-ld"
```

With simple `src/main.rs`
```rust
fn main() {
    println!("Hello, Raspberry!");
}
```

Then things are fine:
```bash
Hasans-Air:rpi hasan$ cargo build
   Compiling rpi v0.1.0 (/Users/hasan/PycharmProjects/rpi)
    Finished dev [unoptimized + debuginfo] target(s) in 0.41s
Hasans-Air:rpi hasan$ scp target/armv7-unknown-linux-musleabihf/debug/rpi pi@192.168.1.43:
pi@192.168.1.43's password: 
rpi                                                                                         100% 2702KB   2.6MB/s   00:01    
Hasans-Air:rpi hasan$ ssh pi@192.168.1.43 'chmod +x ~/rpi && ~/rpi'
pi@192.168.1.43's password: 
Hello, Raspberry!
```

**Win 10**
 Get the linker from [here](https://gnutoolchains.com/raspberry/), and run:
```bash
rustup target add armv7-unknown-linux-gnueabihf
```
Creating file  `.cargo/config`  with content:
```toml
[build]
target = "armv7-unknown-linux-gnueabihf"

[target.armv7-unknown-linux-gnueabihf]
linker = "arm-linux-gnueabihf-gcc"
```

And with simple `src/main.rs`:
```rust
fn main() {
    println!("Hello, Raspberry! from Win 10");
}
```
I was able to get things done

[![enter image description here][1]][1]

[![enter image description here][2]][2]


  [1]: https://i.stack.imgur.com/QoeDt.png
  [2]: https://i.stack.imgur.com/epv7A.png
Are you using Angular Web Components in Production?
Tags: angular, webcomponents, discuss, ionic
Published: 2019-09-11 21:16:14

---
title: Are you using Angular Web Components in Production?
published: true
description: Let's share some public apps that are using Angular based custom elements
tags: angular, webcomponents, discuss, ionic
cover_image: https://thepracticaldev.s3.amazonaws.com/i/9d3pgbo9lx42f3j9e2qy.png 
---

> Update: Main issue was from ion-input see the series below for update 😸

# Angular Web Components

Let's talk about where you are using them!?! Post a link to the site in the comments.

## Why?

Last night I spent hours on an issue and had a minor break down! I started thinking I have used forms on the web since I was 10, why am I making this hard?

### Well I like to teach

So I don't often give up on things and I see others having the same issue!

https://stackoverflow.com/questions/56872969/no-value-accessor-for-form-control-with-name-email

So once I figure it out I will add it to the on going series 😁

{% link ajonpllc/adding-web-component-for-ionic-modals-3pej  %}
.Net wannabe
Tags: help
Published: 2019-09-11 20:56:06

Hello,

So I decided I want to pursue a career as a .net developer since I was doing C# at uni and I really enjoyed it. 

But the thing is that I am a bit lost.

I do not know where to start and what to search for. I signed up on skillshare but I don't think that the tutorials there will be very much helpful.

So, what do you suggest to do?

For the past two year I was mainly involved with php, css, html, vuej, js and jQuery. 

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/cjw45dqn33stn07aghur.jpg)
“Why would anyone hack me? I’m just a small business owner!”
Tags: security, dev, wordpress
Published: 2019-09-11 19:54:15

---
title: “Why would anyone hack me? I’m just a small business owner!”
published: true
description: 
tags: security, dev, wordpress
cover_image: https://thepracticaldev.s3.amazonaws.com/i/gn12hcfvw450vjdumdie.jpg
---

When I asked SME founders ^ this very question after they faced a security/malware incident, here is what they had to say:

+ Didn’t realize that anyone would hack us. What could possibly anyone gain from our low traffic website?
+ Our website is secured with HTTPS, so my developer told me that it is ‘un-hackable’
+ There’s so much to do, and everyone is wearing a lot of hats to get things done. We didn’t get the time to implement a proper security solution.
+ We thought security solutions are expensive, so did not budget it.
+ It’s too technical and we don’t have the relevant expertise
+ Security tools are confusing. There are soo many options to configure. I was afraid I would do something wrong, so I uninstalled it.
+ I managed to install a solution but it was blocking real customers/visitors, so I disabled it.

Unfortunately, SMEs only take security seriously for compliance purposes, or when they get to know that they are hacked!

Without adequate security mechanisms, SMEs remain vulnerable and easy targets. Hackers use tools to identify websites with known vulnerabilities and exploit them in large numbers. Some of these hacks are known as SEO spam, Pharma hacks, web page defacements, malicious redirections etc.

Security was always considered a luxury and not taken seriously until recently. Security solutions have evolved over the years and much simpler to implement. All you have to do now is install a plugin with a few button clicks :)
#InternationalProgrammersDay
Tags: challenge
Published: 2019-09-11 19:50:22

---
title: #InternationalProgrammersDay
published: true
tags: challenge
---

For all techies out there, **Happy 256th day of 2019**, this Friday 13.

Let's celebrate it as we all know best, by **coding**.

**Dare to code** a new app, a code snippet or whatever you want using a programming language/tool/API you don't know.

I'm learning how to develop apps for **Google Assistant** and I'm thrilled about it.  Here is what I've built: [Programmers Facts](https://assistant.google.com/services/a/uid/000000941f7dbef9?hl=en&source=web)

#daretocode,
And big thank you to all the coders out there changing lives for the better
EIG the famous WordPress hosting company (Hostgator, BlueHost) to Acquire eCommerce company Ecomdash for US$9.6 Million
Tags: eig, hosting, webhosting, eighosting
Published: 2019-09-11 19:41:39

From the press release:

“We are impressed with the Ecomdash management team, and the emphasis the company has placed on delivering valuable product features to its growing customer base,” said Jeffrey H. Fox, president and chief executive officer of Endurance.  “We see an opportunity to enhance the value we deliver to our customers by leveraging the team’s expertise and platform.  We look forward to welcoming the entire team to Endurance and to investing to make these capabilities available across our email marketing and web presence platforms.”

“We couldn’t be more excited to join the Endurance family,” said Nick Maglosky, chief executive officer of Ecomdash. “We believe our inventory and listing management platform will provide a strong complement to Endurance’s current product set as we continue to jointly serve our customer base in this large and growing market for SMB services.”

Ecomdash is located in Charlotte, North Carolina. Under the terms of the definitive agreement, Endurance will acquire substantially all assets of Ecomdash for approximately $9.6 million to be paid in cash. The closing of the transaction is subject to customary closing conditions and is expected to close on or before October 1, 2019. Subject to the closing of the transaction, the Company expects to provide additional information on its third quarter 2019 financial results conference call

Learn more: https://www.onlinetoolsexpert.com/endurance-international-to-acquire-ecomdash-for-us9-6-million/
react-native run-android failed ? Here is the solution
Tags: reactnative, beginners, codenewbie, discuss
Published: 2019-09-11 19:35:05

![Alt Text](https://media.giphy.com/media/dutcH7mC2GgiAJyY3m/giphy.gif)
I've faced a similar problem, and after spending so much time and lots of searching about this issue the only solution worked for me is:

 1. Please Install the Required SDKs as shown in this below image.
`Configure Required SDKs`
![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/5l1830a6609s3edsj004.png)
 2. If You have already installed it, so you must have to update the following SDKs:
    - `Android SDK Tool` (update it to latest version)
    - `Android SDK Platform-tools` (update it to latest version)
    - `Android SDK Build-tools` (update it to latest version)
    - `Android Support Repository` under `Extra` folder (update it to latest version)
 3. You Must have at least installed the same version `Android API` as the installed `Android SDK Build-tools` & `Android SDK Platform-tools` version as shown in the `Configure Required SDKs` image above.

> **Note:** Local Maven repository for Support Libraries which is listed as the SDK requirement in the official docs of React-native is now named as Android Support Repository in the SDK Manager.

![](https://media.giphy.com/media/lD76yTC5zxZPG/source.gif)
![](https://media.giphy.com/media/3o7qDEq2bMbcbPRQ2c/giphy.gif)
Understand What You Want
Tags: productivity, mentalhealth, psychology, motivation
Published: 2019-09-11 19:14:12

---
title: Understand What You Want
published: true
description: How do you know what to spend your precious time on
tags: productivity, mentalhealth, psychology, motivation
---

Hello, the amazing Dev.to community member,

Whether you’re a seasoned software engineer or just an aspiring developer, every time you engage with some project, you make a decision. A decision to dedicate your precious time and attention to something. It may be that you’ve barely thought of this or spent hours joggling those thoughts, as I have. 

Anyways, any decision to spend your time on something entails an implicit decision to give up on something else. Opportunity costs, as the economic theory names it. 

Either you start contributing to another open-source project, or assume a promotion at work, or anything else like pursuing a degree or dedicating more attention to your health, you implicitly decide to abandon, at least temporarily, something else. 

And there’s nothing wrong with the fact.

What may be wrong, though, is if you make decisions like that based not upon your true values, principles, and objectives but upon something that just casually captured your attention. 

On memes floating around, similar to “Launch a startup to get free from office routine” or “Pick up a remote work to travel”. On psychology complexes that may originate in your childhood. Or on purely material motivation like getting a raise for performing better at work.

These things, of completely different nature each, together with other stimuli form our behavior and drive our decisions. And ultimately define who we are and how proud we are of what we're doing and have done so far.

For me, having achieved something I’m proud of and being a person I would admire myself, is important. For you, something else may be important. 

Despite this possibly huge difference, I truly believe each of us shall be conscious and skeptical enough when it comes to deciding what to do. How to spend our time. How to live the life.

If that subject resonates with you, please take a look at my approach to How to [understand what you want](https://oleggromov.com/understand-what-you-want), where I cover things listed below.

- Introspecting into your past.
- Taking small steps from where you are.
- Discarding shallow and embracing helpful memes.
- Getting inspired by the right examples.
- Establishing a healthy examination routine of your values and progress.

In case you find the approach I describe to be controversial, please also share your experience and thoughts. I hope to get a good discussion around this. And thanks for reading up to this point 🤘
Hello World
Tags: career, beginners, codenewbie
Published: 2019-09-04 03:15:21

Hey there DEV community!

I decided I wanted to start documenting my learning process, so starting tomorrow I will be writing daily devlogs. I am beginning some app prototyping and am going to be building it using Ionic to see if I like it.

A little bit about me:

I grew up in the IT realm and have always been messing around with computers. I especially love Raspberry Pi's and Arduino. I've been programming on and off since I was about 15 and have used a variety of languages and frameworks. I really enjoy change and spontaneity.

I went to college for three years and bounced between electrical engineering, computer science, criminal justice, exercise science, and information security. I realized I was wasting too much money for not really getting anywhere and dropped out.

Currently, I'm working odd jobs and freelancing to get by while I figure out what I want to do. I think I want to end up in the software engineering world, but I also enjoy content creation(I run a YT channel and a podcast) and writing. I'm a jack of all trades who intends on mastering them all.

If you end up following along, enjoy the ride and thanks for tuning in!
Overtone: Music to keep my dynos awake
Tags: clojure, overtone
Published: 2019-12-08 18:12:12

---
title: Overtone: Music to keep my dynos awake
published: true
date: 2019-09-11 19:00:00 UTC
tags: clojure,overtone
canonical_url: https://alexanderoloo.com/blog/2019/09/11/overtone-music-to-keep-my-dynos-awake.html
---

In my earlier years, I worked with startups as well as the “idea guys” aka “Code this for me and I’ll give you equity in my idea”. So I quickly learnt to contain costs for each of the multiple ventures I was involved in.

I had many misadventures with `nohup`, `upstart`, and `systemctl`. My infrastructure of choice quickly became (and still is) Heroku. No frills. No nonsense. Just `git push`. They have a free plan that could go up to 1000 hours (there are at most 744 hours in a month). All you have to do was verify your account AKA **add your credit card** and you were right as rain.

![Heroku hobby pricing $0 per month](https://alexanderoloo.com/images/blog/heroku-dyno-pricing.png "Heroku pricing")

> _“Verified accounts come with a monthly pool of 1000 Free dyno hours; unverified accounts receive 550.”_

The only slightly annoying thing was that the dyno would sleep after 30 minutes of inactivity. It was more than slightly annoying. Every now and then you’d hit the site or the API and you’d have to cold start the JVM. Not on my watch!

I was pretty new to Clojure at the time and was pretty intimidated by all the complexity of scheduling libraries. So I figured that if I could find a music library (and there must be because Java) surely it would have a metronome or wave generator. And so I found `overtone`: the Open Source toolkit for designing synthesizers and collaborating with music.

After wading through the source code I found the timing part of the library: `overtone.music.time`. My approach was pretty straight forward. I’d run the `interspaced` function and ping the dyno every 5 minutes.

And so I sang to keep my dynos awake.

Here’s a REPL.

```clojure
; in your REPL with [overtone "0.10.3"] as a depdency
keepawake.core => (use 'overtone.music.time)
keepawake.core => (defn ping! [] (println "HTTP GET request")) ; this would be the actual get request
keepawake.core => (interspaced 1000 ping!) ; this was originally 300000 milliseconds

```

Eventually, it dawned on me to just use `overtone/at-at` seeing as `overtone.music.time` was using it anyway.So these days `at-at` solves all my scheduling needs, while taking me down memory lane to a galaxy far, far away…

_May your build always pass._

_Alex_

## References

- [https://github.com/overtone/overtone](https://github.com/overtone/overtone)
- Reading source code in depth
Introduction to Ansible Part 4
Tags: ansible, ubuntu, digitalocean, linux
Published: 2019-09-11 18:41:33

In the past 3 posts I did a quick Introduction to Ansible, a quick overview of some of the important config files that you should be familiar with and how to run Ansible commands.


In this part we will focus on what Ansible playbooks are, we create and run a few playbooks as well so make sure to have your 3 servers up and running and be able to follow along!


Part 4:

https://bobbyiliev.com/blog/introduction-to-ansible-part-4

Hope that this helps and feel free to reach out to me in case that you have any questions!
Day #5 - Popular Movies App
Tags: android
Published: 2019-09-11 18:04:31

---
title: Day #5 - Popular Movies App
published: true
description: Pratice Sharing Series
tags: android
---


Hello, I am practicing android application development every day. I will share my samples daily.

Note: There may be old techniques. The logic is the same.

- Feel free to contact me for any questions.

https://github.com/ardakazanci/Udacity_Popular_Movies_Stage_1
Be a boring and lazy developer 
Tags: productivity, career, architecture
Published: 2019-09-11 17:27:06

*Disclaimer:* sorry for abusing the term as boring is mentioned too many times in this boring article!

# Boring code and architectures

We have acronyms as SOLID, INVEST, KISS, DRY,... I made one on myself: *BORING*.

And what does BORING acronym means? Well, really not an acronym, is just boring. Aburrido. Ennuyeux.

Because I am thinking, no, not thinking,... *I solemnly state that boring code and architectures are the most important development principle.*

That good code should be mostly boring. Maybe I'll write a manifesto...

# How to boring

The key for boring code is using the right abstractions, tools and idioms.

> There's no problem in Computer Science that can't be solved by adding another layer of abstraction to it.

Cool or creative code is seldom needed. We should be honest: 99% of our problems are not a new deep learning library or controlling a spaceship; most of us develop a REST API, database access, we filter lists, validate inputs,... in this areas the business problems are the hard and complex  thing, but the technologies to apply are not R&D.

# Also be lazy

Lazy developers find a way to do things easier and, yes, boring.

# Standing on the shoulders of giants

The key point is that creating really boring code and architectures is not easy.

## The Law of Leaky Abstractions

The important thing is to master the abstractions, language idioms, tools and architecture principles. 

Ah! don't underestimate the abstractions. Because abstractions have leaks as Spolsky explain [here](https://www.joelonsoftware.com/2002/11/11/the-law-of-leaky-abstractions/)

And people don't mastering abstractions are dangerous: they fail, do "cool" things, clever but not clean code and such things.

## Overengineer

All engineer will have a dangerous trend to over-engineer 
and apply "all the tools I know"...

Well, at the end doing BORING code is not easy!

## [Overzealous Adopter Syndrome](https://medium.com/@rdsubhas/10-modern-software-engineering-mistakes-bc67fbef4fc8#577d)

Bacause of this I have seen tremendous generic abuse, optional misusage,
weird functional interfaces, model entities in libraries or
maven module-abuse, or reimplementing RFCs intead of search 
for the proper library...

# Finally 

Actually, the key is be boring and a bit lazy and at the same
time use just the minimal needed toolset without beeing 
a cowboy.

So you have to learn a lot, read a lot of blogs, books, and go to a huge number of conferences and beeing all the they preparing just for...

DOING YOUR CODE AND ARCHITECTURE A BORING THING.

Yes, that is the hard part of an architect/engineer.

## A list of boring things

This

- Boring architectures as hexagonal.
- Boring frameworks: as Spring Boot.
- Your language collections and idioms.
- Boring tools as lombok, apache, mapstruts,...
Introducing the dev.to/CHENist blog
Published: 2020-03-27 11:16:50

---
title: Introducing the dev.to/CHENist blog
published: true
tags: 
canonical_url: 
---

We are introducing our new CHEN.ist dev.to blog. Alongside [sec.chen.ist](https://sec.chen.ist/), the place where we announce the industry news, this dev.to blog will be used for more technical ("how to" types of) articles. 

We really hope you will enjoy reading it at least as much as we go writing it. Stay tuned for more articles.

Be brave, be safe!

Best,

Alin Mechenici – Founder & CEO [CHEN.ist](https://chen.ist/) Cybersecurity