teleren/devto huggingface dataset:
There Is No Substitute For Good Judgement, Especially if You Want to Be Data Driven
Tags: data, decisionmaking, statistics
Published: 2018-11-06 18:25:49

---
title: There Is No Substitute For Good Judgement, Especially if You Want to Be Data Driven
published: true
tags: data, decision-making, statistics
canonical_url: https://anaulin.org/blog/there-is-no-substitute-for-good-judgement-especially-if-you-want-to-be-data-driven/
---

My recent [entry on measuring a software engineer’s performance](https://anaulin.org/blog/on-software-engineer-performance/) led to an interesting comment: but if you rely only on judgement, isn’t that a recipe for bias?

It’s a really good question. We want to be as objective as possible in our evaluations. We want to make sure that we work against our prejudices, assumptions and biases. But is finding a metric or statistic a recipe against those pitfalls? I don’t think so.

To use a metric to come up with a decision or evaluation, we still need to apply our own judgement to make sure that this measure is accurate and objective, and does not introduce its own bias. And then you have to apply your own judgement to make sure you are computing and applying this metric correctly.

It would be wonderful if we could determine everything by fully objective data-driven measures, but the reality is that even interpreting numbers still requires judgement.

We can see examples of this everywhere. In the social sciences, studies are often re-interpreted from a new perspective, with the same data leading to different conclusions — see, for example, the [new analysis of the Stanford Marshmallow Experiment ](https://www.theatlantic.com/family/archive/2018/06/marshmallow-test/561779/), or [Gina Perry’s re-examination of the Milgram Experiment](https://www.amazon.com/Behind-Shock-Machine-Psychology-Experiments-ebook/dp/B00C4GTCNE/ref=sr_1_1?ie=UTF8&qid=1541527215&sr=8-1&keywords=behind+the+shock+machine), both of which cast doubt on the original findings. Perhaps the most startling examples of the influence of judgement on interpreting numbers is what we see in politics: the same statistic is often used to support opposing stances, the conclusions highly dependent on the worldview of the person analyzing the data.

I would argue that good judgement is even more important if you’re trying to use a seemingly-objective metric. When you're using numbers, it is easy to lull yourself and your audience into a false sense of security (“look, the data proves this!”) and come to the wrong conclusion.

So yeah, as scary as it might sound for those who insist that they can be perfectly objective and data-driven, there is no substitute for good judgement. If we want to avoid bias, there is no replacement for introspection, asking for and listening to feedback, and keeping an open mind. There is no magic metric that will save us from the hard work.
Total Guide To Angular 6+ Dependency Injection — providedIn vs providers:[ ] 💉
Tags: angular, javascript, node, webdev
Published: 2018-11-06 17:53:22

---
title: Total Guide To Angular 6+ Dependency Injection — providedIn vs providers:[ ] 💉
published: true
description: I know, I know… Angular 7 is out already but this topic is as relevant as ever! Angular 6 brought us new better providedIn syntax for registration of services into Angular dependency injection mechanism.
tags: angular,javascript,node,webdev
cover_image: https://thepracticaldev.s3.amazonaws.com/i/9edtkjosvu9ga4w2kfob.jpeg
canonical_url: https://medium.com/@tomastrajan/total-guide-to-angular-6-dependency-injection-providedin-vs-providers-85b7a347b59f
---

I know, I know… Angular 7 is out already but this topic is as relevant as ever! Angular 6 brought us new better providedIn syntax for registration of services into Angular dependency injection mechanism.

> As it turned out, this topic can evoke quite emotional responses and there is a lot of confusion across GitHub comments, Slack and Stack Overflow so let’s make this clear once and for all!

📖 What we’re going to learn
1. Dependency Injection (DI) recapitulation (optional😉)
2. The Old Way™ of doing DI in Angular  —  `providers: []`
3. The New Way™ of doing DI in Angular  —  `providedIn: 'root' | SomeModule`
4. Possible scenarios when using `providedIn`
5. Recommendation on how to use new syntax in your projects
6. Summary



[Read more...](https://medium.com/@tomastrajan/total-guide-to-angular-6-dependency-injection-providedin-vs-providers-85b7a347b59f)
Top 5 DEV Comments from the Past Week
Tags: bestofdev
Published: 2018-11-06 16:40:41

---
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.

@donita starts thing off in the **[What’s the most frustrating thing about the process of looking for work or interviewing?](https://dev.to/ben/whats-the-most-frustrating-thing-about-the-process-of-looking-for-work-or-interviewing-b30)** thread, capturing five frustrating aspects of many interview processes:

{% devcomment 6ik9 %}

In the **[Do you have any bad “sunk cost fallacy” stories?](https://dev.to/ben/do-you-have-any-bad-sunk-cost-fallacy-stories-3dkm)** thread, @cjbrooks12 proves that there really is an XKCD for everything:

{% devcomment 6h5f %}

In **[Minimalist browsing with Min browser](https://dev.to/wangonya/minimalist-browsing-with-min-browser-1p0c)**, @nmcain talks about the interesting aspect of using an Electron-based browser:

{% devcomment 6hmm %}

There's always something to learn, that's part of the fun and part of the constant struggle.  In **[What are you _not_ interested in learning?](https://dev.to/aspittel/what-are-you-not-interested-in-learning-57f0)**, @dmfay offers some thoughts:

{% devcomment 6j3f %}

In an awesome, 100+ comment thread discussing **[Which trend or advancement is being overlooked by most developers?](https://dev.to/ben/which-trend-or-advancement-is-being-overlooked-by-most-developers-4dle)**, @bennypowers drops some serious analysis.  And this was a reply to a reply!

{% devcomment 6hl2 %}

See you next week for more great comments ✌
#codevember - 6 - Web (Browser)
Tags: codevember, showdev
Published: 2018-11-06 17:52:43

---
title: #codevember - 6 - Web (Browser)
published: true
tags: codevember, showdev
canonical_url: https://nikol.as/blog/2018/11/codevember-6-web-browser/
---

[Sky scene](https://codepen.io/miffili/pen/KrKLdO) in embedded pen by [Klara Miffili](https://codepen.io/miffili).
{% codepen https://codepen.io/vintagesucks/pen/xQwGJE %}
Teach others to code.
Tags: question
Published: 2018-11-06 17:21:00

---
title: Teach others to code.
published: true
description: 
tags: Question
---
I am always telling everyone they should learn to code and how awesome being a software developer is. 

One day someone approached me and told me: teach me.

I froze! I know how to do code but I do not know how to teach someone to do it. 

So here I am, asking for your help. 

How would you do it? 

How would you help someone learning to code?
Episode 4: Building a JSON API - the C of CRUD
Tags: node, javascript, mongodb, api
Published: 2018-11-06 16:32:14

---
title: Episode 4: Building a JSON API - the C of CRUD
published: true
description: Episode four of a video series covering the start to finish of building an application with express.js using docker, and mongoose.
tags: nodejs, javascript, mongodb, api
series: building-a-json-api-with-express
cover_image: https://thepracticaldev.s3.amazonaws.com/i/dhqew8gzypolmhitok6b.png
---

This episode covers the Create of CRUD.

{% youtube wP2C-sFXxfc %}

Explore the source code here:

{% github NathanBland/core %}
Managing the State of React Apps with MobX
Tags: javascript, react, mobx, statemanagement
Published: 2018-11-06 16:31:37

---
title: Managing the State of React Apps with MobX
published: true
description: Learn how to use MobX to manage the state of your React apps with ease.
tags: #javascript #reactjs #mobx #statemanagement
canonical_url: https://auth0.com/blog/managing-the-state-of-react-apps-with-mobx/
---

MobX is one of the popular state management libraries out there frequently used with React. In this article, you will learn how to manage the state of your React apps with MobX.

[Read on 🏄🏾‍♂️](https://auth0.com/blog/managing-the-state-of-react-apps-with-mobx/?utm_source=dev&utm_medium=sc&utm_campaign=mobx_intro)

![Managing the State of React Apps with MobX](https://thepracticaldev.s3.amazonaws.com/i/9ii9x2gli9ktpa0qnvbh.png)
How did you get your first Dev job?
Tags: discuss, webdev, javascript, career
Published: 2018-11-06 15:10:00

---
title: How did you get your first Dev job?
published: true
description: 
tags: #discuss #webdev #javascript #career
cover_image: https://thepracticaldev.s3.amazonaws.com/i/spcx7kf3c919bfrz5dla.jpg
---

Yesterday's discussion on Ben's post:
[What’s the most frustrating thing about the process of looking for work or interviewing?"] (https://dev.to/ben/whats-the-most-frustrating-thing-about-the-process-of-looking-for-work-or-interviewing-b30), really intrigued me and I wanted to do a follow up. 


After many rejection emails, how did you finally get your first dev job?

Was it through a job site, networking, a meetup or etc? Share below, with advice! :)
What are Arrow Functions?
Tags: javascript, webdev, beginners, functions
Published: 2018-11-06 14:41:48

---
title: What are Arrow Functions?
published: true
description: There are a bunch of different types of functions in JavaScript. So let's clear up what arrow functions are.
tags: #javascript, #webdev, #beginners, #functions
---

There are so many ways to get stuff done in web development. You have functions, callback functions, methods, arrow functions, and all the other functions out there. The focus for this little explanation are the arrow functions because they're relatively new.

Arrow functions became a thing when EcmaScript6 (ES6) was released. They are really similar to regular functions except for a few things. First of all, the syntax for writing an arrow function is a lot more compact than a regular function. Here's what I mean:

*Regular function*

```javascript
function getPrice(cost, quantity) {
    return cost * quantity;
}
```

*Arrow function*
```javascript
(cost, quantity) => cost * quantity; 
```

With arrow functions, you don't have to write nearly as much code and you get the same results. There's more to it than that of course. A big thing is that arrow functions don't bind to the keyword *this* and that's not necessarily a bad thing. You can actually use the *this* that is bound to the code that contains the arrow function and that's pretty nice.

Arrow functions are really flexible too. You can use them with or without parameters. So if you only need one parameter, you can use an arrow function one of these ways:

```javascript
(day) => 5;
day => 5;
```

The parenthesis in this case are optional. Or if you don't need any parameters you can use the arrow function one of these ways:

```javascript
() => "Candy";
_ => "Candy";
```

Another thing to keep in mind is that you still have to follow the code block rules of functions. If you have more than one statement you need the function to execute, you still need to use curly braces like this:

```javascript
() => {
    let x = 7;
    let y = -23;
    return x * y;
}
```

I need to caution you with using arrow functions. Since they are anonymous functions (they don't have function names), it can be harder to debug your code. Tracing your way through the call stack might not get you to the root of the problem if you have a bunch of arrow functions.

The main time you want to use these is when you don't want to bind to *this*. If you know that you'll need to work with *this* from a different context, arrow functions are the most beautiful things to work with.

That's my quick breakdown of arrow functions. I hope it helped you out! If you have anything to add or a question, just let me know in the comments.

<hr>

Hey! You should follow me on Twitter because reasons: https://twitter.com/FlippedCoding
If you have a paid 4 years to do a research on Software Engineering, what it would be about?
Tags: softwareengineering, researchtopics
Published: 2018-11-06 14:34:03

---
title: If you have a paid 4 years to do a research on Software Engineering, what it would be about?
published: true
description: 
tags: Software Engineering, Research topics
---

Hello Dev Community,

Your advice/thoughts are needed!

I am about to start a 4 years PhD journey in Software Engineering. A PhD is a long and exhausting journey and I want to make the best out of it, I don't want to spend the coming 4 years working on some hypothetical Software Engineering practices or inventing some fantasy tool that generates or refactors code. I need my PhD to be as much related to the reality as possible and to be in correlation with the software industry.

I think you, the dev community, through your long experience in the field, have come through moments like "I wish I have enough time to research/enhance this thing". Well, here I am, I have the next 4 years to spend researching on a topic related to Software engineering. 

I am a developer, who spent some time between academia and industry, so I have been exposed to both worlds, still, a great community of devs like this must have great ideas.

Honestly, I think it will be a great waste of time and effort if a 4 years research in software engineering will not benefit the devs community in some way.

Your thoughts are appreciated.

Thanks,
Building my own blog with Laravel in a day
Tags: showdev, laravel, blogging, writing
Published: 2018-11-06 14:27:36

Hi All,

It's that time of the year when we celebrate Diwali here in India. I had a few days time all for myself, so I decided to rebuild portfolio site. The old site was a single HTML page it has my services, my projects, a few lines about myself and my contact info at the end. Pretty basic, nothing fancy. It was enough to grab the attention people and let them know who I was.

## What did I want in the new site
- A bit more space to talk about Me
- Adding new Projects
- Same for Services (changes from time to time)
- Since I started writing more often, I wanted a blog too
- And a dynamic contact form

I can hear you say, this is a perfect use case of WordPress. But me being me, I chose the shortest possible way and built my own mini-cms. I know this is not much and can build it with ease on WordPress. The thing is I hate customizing WordPress. Every attempt at creating a WordPress theme or a plugin have failed. I can already sense some of you nodding in confirmation. So I decided to build it with Laravel. I know the framework well enough, I have used it on some of my client's projects and I love how elegant it is to use.

## Why I chose to use Laravel
- Developer Friendly
- Can have control over the tiniest of details
- I know the framework inside out
- Built-in Authentication
- Built-in Caching

For a WordPress developer, this list may not be convincing enough to make the switch and build a CMS. But for me, Laravel was an obvious choice because I work with it day in, day out.
I never knew where this would go when I started, but it turned out better than expected. I am quite happy for a day's work, though there's room for a lot of improvements, you know what? those can wait.

This is my new site [SimplestWeb.in](https://simplestweb.in/?utm_medium=referral&utm_campaign=laravel-blog-article&utm_source=dev.to), take a look and let me know what you think and how you might improve it.

That's all for now. Thanks.

*P.S. If you would like to know the technical details or like tutorial let me know. I could write a follow-up article discussing only the technical side of it.*
Quick Sort
Tags: algorithms
Published: 2018-11-06 14:22:48

---
title: Quick Sort
published: true
description: Oh my quick sort
tags: 
- algorithm
---

Hey Chenge, this is for you.

{% youtube stWj4rowLAc %}

Here's my take at Quick Sort. I realised I didn't have the best example half way through the animation. It was too late. All the drawing and animating while on the train to work... Put it as a lesson learned.


Here's the code:

``` python

def quicksort(start, end, array):
    if start < end:
        pivot = partition(start, end, array)
        quicksort(start, pivot - 1, array)
        quicksort(pivot + 1, end, array)


def partition(start, end, array):
    actualPivotPosition = start
    pivotValue = array[end]
    for i in range(start,end):
        if array[i] < pivotValue:
            array[i], array[actualPivotPosition] = array[actualPivotPosition], array[i]
            actualPivotPosition += 1

    array[actualPivotPosition], array[end] = array[end], array[actualPivotPosition]
    return actualPivotPosition

array = [5,7,8,1,3,2,4,6]

quicksort(0, len(array) - 1, array)
print ("Array:", array)
# Array: [1, 2, 3, 4, 5, 6, 7, 8]
```

Steps:
1. Given an array, set the last position to be a pivot
2. Move the pivot to the actual sorted position in the array
3. Continue to sort the subarray before and after the pivot with Step 1


The worst case is when the pivot is always the smallest or biggest. To prevent that from happening, you can choose a random position, swap the random position with the last head, then continue with the same sorting thingy. 


Check out a better tutorial at https://www.geeksforgeeks.org/quick-sort/
Introduction to Rx (Swift & Kotlin) - Part 4
Tags: rx, flatmap, swift, kotlin
Published: 2018-11-06 13:29:06

---
title: Introduction to Rx (Swift & Kotlin) - Part 4
published: true
description: Part 4 of the Rx tutorial series
tags: Rx, flatMap, Swift, Kotlin
---

The next entry on my ongoing Rx tutorials. This time, we are investigating the `flatMap` operator. Read the one you are most comfortable with. Have a nice day!

https://blog.testfairy.com/rx-for-the-ultimate-beginner-part-4-swift/
https://blog.testfairy.com/rx-for-the-ultimate-beginner-part-4-kotlin/
What are your favorite books?
Tags: discuss, books
Published: 2018-11-06 13:26:24

---
title: What are your favorite books?
published: true
description: A call 
tags: discuss, books
---

There is an absolute wealth of technical knowledge found in books out there, but nobody has time to read them all.  What's on the top of your "must-read" list, either in your specific technology or in general?

I've got three.

First, [The Little Schemer](https://mitpress.mit.edu/books/little-schemer-fourth-edition) taught me how to think recursively more effectively than any other material I've read.  You don't come out understanding recursive solutions to a set of problems, you come out equipped to tackle any problem at all recursively.  It was a powerful experience, and a fun reading style.

Second, [Programming in Scala, 3rd edition](https://www.artima.com/shop/programming_in_scala_3ed).  This is a book about Scala but I learned a lot about programming in general from it and the author cleared up some misconceptions I'd held especially around closures.  I didn't end up going on to use Scala much but this book made me a stronger programmer.

Finally, I've only just begun [Mazes for Programmers](http://www.mazesforprogrammers.com/) but it's already a blast.  It's both a nice reintroduction to Ruby and a super fun way to explore a bunch of algorithms.  The subject matter is light and not academically presented but does not mean this book isn't absolutely packed with algorithmic goodness.

What else ya got?
Introducing Plek 3.0
Tags: serverless, ci, cd, github
Published: 2018-11-06 13:07:07

---
title: Introducing Plek 3.0
published: true
description: make continuous deployment delightful
tags: serverless, ci, cd, github
cover_image: https://thepracticaldev.s3.amazonaws.com/i/m6m174r8a6z4u61sukf8.png
---

[Plek](http://plek.now.sh/) is the glue between serverless services like [ZEIT Now](https://zeit.co/now) and GitHub, improving your continuous deployment workflow. [Serverless](https://martinfowler.com/articles/serverless.html) and continuous deployment go together like bread and butter, Plek accentuates on this with a defined flow and feedback to GitHub. Every deployment status is reported to GitHub and a domain is assigned based on the branch. On the main branch the deployment goes directly to your domain and for pull requests a subdomain is used to preview the changes. Resulting in a quick feedback loop where it is easy for everybody involved with a project to view changes.

![GitHub PR checks](https://thepracticaldev.s3.amazonaws.com/i/smst1psrnmx8bdcz2tdz.png)


## Flow
Does this sound like the recently announced [ZEIT Now for GitHub](https://zeit.co/docs/integrations/now-for-github)? Yes it does, these solutions certainly overlap. When releasing Plek this wasn't applicable since Now for GitHub got released about three weeks later. They serve different use-cases though because Plek runs from your CI as a CLI tool. This is a difference in responsibility, you have control over how and when Plek runs. This flexibility comes in handy for scenarios such as:

- deploying monorepos, a repository that contains multiple packages or projects;
- running tests before deploying;
- using private npm packages in a Node.js project.

Whereas Now for GitHub is limited but easier to run because it runs from Now’s environment, meaning no CI setup is needed but also limits the possibilities. So if the Now to GitHub pipeline is all you need Now’s integration works fine. But if you want more, use Plek, did I mention it is open source too? Check it out at **[voorhoede/plek](https://github.com/voorhoede/plek/)**.

## Fly
Plek is CI and service agnostic with the goal to support multiple serverless services and git platforms like GitLab. To prove that Plek is super flexible, we just released Plek 3.0 adding [Fly](https://fly.io/) as a service, more to come! Fly is an open source JavaScript runtime that gives you the power to create your own programmable CDN. With this power you can deploy anything from load balancers to static websites, combined with Plek it is easily deployed and tested.

{% vimeo 299021064 %}

## Conclusion
Serverless is a cost-effective and easy way to deploy apps, deploy code and let services take care of it. With this power, continuous deployment becomes a natural way of going live. ZEIT Now and Fly integration from your CI is just a command away with `plek now` and `plek fly`. 

<a href="https://plek.now.sh/guide/getting-started.html"">
  <img src="https://thepracticaldev.s3.amazonaws.com/i/8644whlikhn311ko17fu.png" alt="Let's get started">
</a>
Is animation always required when developing a website?
Tags: discuss, website, design, develop
Published: 2018-11-06 12:46:04

---
title: Is animation always required when developing a website?
published: true
description: 
tags: discuss,website,design,develop
---
Recently, a designer told me that every websites always needs animation. I am a minimalist. When i develop a website, i don't want to set too many CSS properties for animation except client requires. How do you think? Do you think a website always need eye-catching animation or it should be as simple as possible?