teleren/devto huggingface dataset:
Tired of technical windmills
Tags: android, platforms, technology, philosophy
Published: 2019-01-25 19:46:56

---
title: Tired of technical windmills
published: true
description: Philosophical point of view about progression of technologies
tags: Android, platforms, technology, philosophy 
---

Let me start with my story. I have been involved in programming for 12 or more years now - doing all kinds of applications - Desktop, Web, Enterprise, Mobile, Front-End, Back-End, cross-platform, native, a little bit if embedded (IoT). 
Went trough IE, jQuery, Flash (Flex), Java Swing, and at last Android UI - with Cordova, cross-platform, native variations.
Yes, For the last several years I have been developing around 10 Android applications for clients and around 20 personal. Some of them stopped working because of legal conflicts, changes in the guidelines, and lastly - changes in the OS itself. 
And this year Android is getting a desktop alternative:
https://www.androidpolice.com/2019/01/16/stable-version-of-android-x86-8-1-oreo-now-available/ with a free window option. So Good luck to me and to my colleagues that do application development. Every static UI - not handling different screens phone / 7' tablet/ 10' tablet and more - a desktop view (the same as Responsive UI for Web) will have very clumsy applications.
Lately I am experimenting with voice interactions, that have totally different approach and interrelation of the human with the software. And who knows that else will come in the future.

The form-factor is changing so rapidly that I'm starting to lose faith in technology, lose the passion for fighting endlessly technical stuff and ever new changes for the same task - doing something useful with Software (plus hardware). 

Yes, it pays the bills and I'm working in warm office instead of out there in the field, but I'm starting too lose the meaning of it all. Technology should have bean something that minimizes labor instead of increase it. And yes, there are some small areas where it does, but so much of it - it doesn't. 

Are out there any other people that love technology in general, but are longing for something else, something more, something that I don't seem to be able to define.
Project looking for contributors: ClassicPress
Tags: contributorswanted
Published: 2019-01-25 19:42:09

---
title: Project looking for contributors: ClassicPress
published: true
description: 
tags: contributorswanted
---

[ClassicPress](https://www.classicpress.net/) is a fork of the battle-tested, proven WordPress 4.9 branch with the Classic Editor, and without Gutenberg.  You can find more information about why we decided to fork WordPress and about our plans for the next few releases on [our roadmap](https://www.classicpress.net/roadmap/).

Our current release is `1.0.0-beta2` and **we're looking for dev help** to get the `1.0.0-rc1` and `1.0.0` releases out soon.  You can see our current task list at the [`1.0.0-rc1` milestone on GitHub](https://github.com/ClassicPress/ClassicPress/milestone/5).

If you have any questions, feel free to chime in on the individual GitHub issues or [on our Slack group](https://www.classicpress.net/join-slack/) - the `#core` channel is a good place to chat about development of ClassicPress itself.

{% tag contributorswanted %}
Interactive commit using terminal
Tags: git, bash
Published: 2019-01-25 19:21:56

---
title: Interactive commit using terminal
published: true
description: icommit is a simple script for making commit simple and interactive
tags: git, bash
---

Hello Everybody! My first post here was looking forward to having something adequate to share :)

### icommit

I create a simple script for having an interactive commit using the terminal, you can see the instructions here

![icommit demo gif](https://media.giphy.com/media/ORTSU6rH3XxonpcV5z/giphy.gif)

[Instructions for icommit](https://gist.github.com/cutiko/1a1f5c43daa0e4b14c740b56710f0cf2)

#### The problem

Usually, a commit will be something like this:

```
git commit -am 'ADD: new feature'
```

Then the next commit will be something like this:

```
git commit -am 'FIX: the feature was broken'
```

In every commit always the same pattern is repeated `git commit -am 'THE_MESSAGE'` so I was wondering how to do it faster.

My first attempt was to press up arrow and delete, but it was tedious, then it hit me:

 > It would be really cool if I could have something like `scanner.readline`

Like in the text base adventure games, the interaction was basically writing lines, the program read the input and then do something.


So there you have a bonus, now your version control is an adventure game as well!
Cannot read property 'props' of undefined
Tags: react, props, state
Published: 2019-01-25 18:31:08

---
title: Cannot read property 'props' of undefined
published: true
description: 
tags: React, props, state
---

I get the error: "Cannot read property 'props' of undefined" if I run the following  code. Both files are in the same folder. Can you please explain what am I doing wrong?

**App.js**
```
import React, { Component } from 'react';
import SeasonDisplay from './SeasonDisplay';

class App extends Component {
  state = {
    lat: null,
    errorMessage: ''
  };

  componentDidMount() {
    window.navigator.geolocation.getCurrentPosition(
      position => {
        this.setState({
          lat: position.coords.latitude
        });
      },
      err => {
        console.log(err);
        this.setState({ errorMessage: err.message });
      }
    );
  }

  render() {
    if (this.state.errorMessage && !this.state.lat) {
      return <div>Error: {this.state.errorMessage}</div>;
    }
    if (!this.state.errorMessage && this.state.lat) {
      // return <div>latitude is {this.state.lat}</div>;
      return <SeasonDisplay lat={this.state.lat} />;
    }
    return <div>Loading...</div>;
  }
}

export default App;

```

**SeasonDisplay.js**
```
import React from 'react';

const SeasonDisplay = props => {
  return <div>{props.lat}</div>;
};

export default SeasonDisplay;

```
What Bootcamp did you attend and would you recommend it? 
Tags: discuss, help, beginners
Published: 2019-01-25 17:44:43

---
title: What Bootcamp did you attend and would you recommend it? 
published: true
description: What Bootcamp did you attend and would you recommend it?
tags: discuss, help, beginners
cover_image: https://thepracticaldev.s3.amazonaws.com/i/ymrelqqxpky40kbhalzq.jpg
---

Calling all bootcamp grads or those currently in bootcamp! I need your help! 

A couple of my friends are looking to make a career switch to coding and were asking me about Bootcamps. I have heard of [Flatiron school](https://flatironschool.com/), which seems pretty awesome but not much beyond that. One friend asked about this [Northwestern University](https://drive.google.com/file/d/0B6MV3osqMQYUN0Y0NzV0dGY5MEU/view?fbclid=IwAR0GzzqOu-6asUQZJVrzjhmOSS5XcDOX2NQUaPejdQV2euHn86qs-tiUs-o) one, which looks great based on the brochure, but I would rather get REAL feedback from those who have done them. 

Give me all the juice so I can actually make a good recommendation for the next generation of coders! Please and THANK YOU! 😃 

PS If you could include what language or part of the stack the bootcamp was focused on that would be super helpful as well!
FYI: Dev Connect
Tags: fyi, meta
Published: 2019-01-25 17:05:11

I never realised that this existed:

[https://dev.to/connect/](https://dev.to/connect/)

![](https://thepracticaldev.s3.amazonaws.com/i/fjfezwpd9n9jjz95yaja.PNG)

It's a private messaging app inside Dev.To! If you want to talk to someone, you aren't limited to simply writing on their posts.

Honestly had no idea this existed until I stumbled across it today.
Objects as Primitives?
Tags: discuss
Published: 2019-01-25 17:00:17

I've been mulling over a weird idea for a while now and I want to pitch it for discussion. I call it "objects as primitives", although you could call it "strictly-typed loose typing" if you enjoy a good oxymoron.

The idea is this: a strictly-typed language (say, C#) would have a couple of built-in interfaces that allow an object to be evaluated as a primitive in certain contexts. The best way to demonstrate this is a code sample:

```cs
class Animal : IAsString, IAsBoolean {
  private string name;

  public Animal(string name) {
    this.name = name;
  }

  public string AsString() {
    return this.name;
  }

  public bool AsBoolean() {
    return !String.IsNullOrEmpty(this.name);
  }
}
```

*(yes, I know strings are not technically primitives. I find that very annoying.)*

Then in another part of the code:

```cs
public bool IsCat(Animal animal) {
  return animal && animal == "cat";
}
```

So in `animal && animal == "cat"`, the compiler would understand that the first `animal` is syntax sugar for `animal.AsBoolean()` and the second `animal` is syntax sugar for `animal.AsString()`. And presumably there would be other "IAsPrimitive" interfaces for `byte`, `char`, and number types.

So here are my questions:

1. Do any languages have this? I know C# allows you to overload operators, so the `animal == "cat"` part is possible, although not in the way I've described.
2. Is this even a good idea? Does it introduce unwanted ambiguity, or is it just a piece of syntax sugar we would learn to recognize?
3. What about doing this in a loosely-typed language like JavaScript? Would it be an advantage to be able to describe the kind of typecasting we want the interpreter to do, or would it just create a ton of gotchas for people who really understand JavaScript?

Let me know what you think.
Detect faces in photos and draw overlay filters
Tags: python, opensource
Published: 2019-01-25 16:48:51

---
title: Detect faces in photos and draw overlay filters
published: true
description: 
tags: python, opensource
---

Detect faces in photos and draw overlay images on it, the overlay drawn using a neural network that detects face key points.

<img src="https://thepracticaldev.s3.amazonaws.com/i/g3u81uhrhlhfyv1vlhst.png" width="300px"/>

- draw glasses
- draw mustache
- draw hat
- draw ears
- draw any overlay
- draw text

Go to try it: http://ahmadai.com/snappy2/

Note: the code open sourced with love
Who is hiring? (As of January 2019)
Tags: whoishiring
Published: 2019-01-25 16:34:26

---
title: Who is hiring? (As of January 2019)
published: true
description: Members of the dev.to community sharing open job opportunities at their companies.
tags: whoishiring
---

This is our monthly thread where community members share openings at their companies.

Here a few ground rules:

- Please only post if you are personally part of the hiring company (no recruiting firms)
- Please provide brief background on what your company does
- Only one post per company (you can list multiple openings in the post)

Consider using this template:

```
Company Name | Job Title | Location | Remote or Onsite | (optional) Salary Range | Sponsor visa?

About the company — background, size, etc (1-3 sentences)

About the role(s) — languages, requirements, etc (1-3 sentences)

Do you sponsor visas?

How to Apply — email or application link
```

---

We also wanted to share some quick careers-related notes from our fantastic Sustaining Sponsors.

### Digital Ocean

> At **DigitalOcean**, we're simplifying cloud infrastructure for developers. Here you'll get to work with some of the smartest and most interesting people around; solving unique and complex technical challenges on a scale matched by few companies. If you get excited about stretching yourself in new ways, developing yourself to your fullest potential, with amazingly supportive friends and colleagues; [we want to talk to you](https://www.digitalocean.com/company/careers/?utm_source=devto&utm_medium=display&utm_campaign=Devto_2018_Brand)!

### Raygun

> **Raygun**’s Crash Reporting, Real User Monitoring, and APM tools help thousands of businesses deliver exceptional software experiences to their customers. If you love coding and care deeply about user experience, get in touch! Raygun is looking for a [customer success associate](https://raygun-engineering.workable.com/j/56C906B9F0) in Seattle, and [software engineers](https://raygun-engineering.workable.com/jobs/252302) to join the team in beautiful Wellington, New Zealand.

### Triplebyte

> **Triplebyte** now hires software engineers for top tech companies and hundreds of the most exciting startups like Apple, Dropbox, Mixpanel, and Instacart. They identify your strengths from an online coding quiz and let you skip resume and recruiter screens at multiple companies at once. It's free, confidential, and background-blind. [Apply here](https://triplebyte.com/a/YU8fSn0/whoishiring-jan).
What is your "Coder/Language Fit"
Tags: discuss, languages
Published: 2019-01-25 15:29:40

---
title: What is your "Coder/Language Fit"
published: true
description: 
tags: discuss, languages
---

In tech startup jargon you hear this convention a lot:

### Product/Market Fit
### Founder/Startup Fit
### Product/Founder Fit
### Etc.

It's basically the idea that a product isn't inherently going to succeed but if it's found the right market fit, things will go well. Or that no founder is inherently great, but with the right project, they can really succeed.

So what is your coder/language fit? The language that works for you because of how you are as a person—not necessarily because of its inherent greatness. No language is without flaw, nor is any language totally terrible. It's about the fit with the project, or in the case of this question—the person.
Junior developer struggles
Tags: beginners, devstruggles, dev
Published: 2019-01-25 10:08:07

---
title: Junior developer struggles
published: true
description: Hoping i can find some people who may have experienced the same and can give me some advice!
tags: #beginner #devstruggles #dev 
---

So, i've been struggling lately to keep myself motived and going after getting rejected so many times already.

I got hired at a pretty big consultancy company as a junior IT "professional". The promise that they made me was that i would get a frontend track to learn more about frontend and to potentially get a job. Once i started i realised they didn't have a track for me and basically do some more self-study and trying to find some projects within the company at different business units. 

I've been here since October and i've been struggling to keep motivated to learn everything. Company's that ask for developers usually look for people who eat, sleep and breathe code and although i love coding and learning etc. When im home i don't really wanna code anymore. 

I've been learning Angular(2+) for a while now and i'm also interested in Java (but also because company's look for java developers rather than frontend developers) and i just wanna start anywhere. I like frontend a lot more but im pretty desperate to get out into the big world and actually work in scrum teams and kickstart my career. 

I have knowledge of HTML, CSS and Javascript. I do need to learn OOP a lot better but i'm planning to learn that with Java as i find Javascript pretty tough sometimes.

Anyone else experienced the same as a junior trying to get started? Got any tips for me?
One-way data binding in vanilla JS (POC)
Tags: showdev, javascript, webdev, databinding
Published: 2019-01-25 11:05:33

---
title: One-way data binding in vanilla JS (POC)
published: true
description: Proof-of-concept of one-way data binding in vanilla JS
tags: showdev, javascript, webdev, databinding
cover_image: https://thepracticaldev.s3.amazonaws.com/i/kakq5tuqgbvj4l7z23vm.jpg
---

**Code and Demo**
{% stackblitz one-way-data-binding %}


### Let's break it down in small pieces

I assume you are already familiar with [data-binding](https://www.quora.com/What-is-data-binding).


Most of the modern front-end frameworks offer data-binding out of the box, just ready to use, but what there is under the hood?

I tried to implement a basic version of one-way data binding and it was really fun :)

So, what do we need to have one-way data binding?

- A **view**, in our example HTML.
- A **state**, kept in memory with JavaScript.

The Key feature is:

>Everytime the state changes, the view need to be updated

So let's assume we have an HTML **view**:
```html
    <div data-binding="quote"></div>
```  
and a **state**:
```javascript	
    const state = {
      quote: 'Either you run the day, or the day runs you.'
    };
```
		
We can easily set the view the first time:
```javascript
    document.querySelector('[data-binding="quote"]').innerHTML = state.quote
```
We want some magic, so that when we update the state:
```javascript	
    state.quote = 'We become what we think about'
```	
the view should magically change. To achieve this, we could modify the default behaviour of the `set` property for the `state` object, so that other than update the model, it would also update our **view**.

One way to do that in JavaScript is using the [Proxy Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy):
```javascript
    const createState = (state) => {
      return new Proxy(state, {
        set(target, property, value) {
          target[property] = value; // default set behaviour
          render(); // updates the view everytime the state changes
          return true;
	}
      });
    };

    const state = createState({
      quote: 'Either you run the day, or the day runs you.' // creates initial state
    });
```
	
With the power of the Proxy everytime we update our `state`, the `render` function will be called.
A possible implementation of `render` can be:
```javascript
    const render = () => {
     document.querySelector('[data-binding="quote"]').innerHTML = state.quote
    };
```
	
Now if we modify the state with: 
```javascript
    state.quote = 'We become what we think about.'
```	
The `render` function will be called and the view will update! *MAGIC*! 👨‍💻
What are SaaS and PaaS?
Tags: help
Published: 2019-01-25 10:31:35

---
title: What are SaaS and PaaS?
published: true
tags: help
---

I kept on hearing these terms and I cannot understand. Most recently I heard using BaaS as a PaaS. Kindly help to understand these. Also, I have a doubt like how kubernetes and docker related to these. Are they related?

Thanx!
IPLocation 2 - Geolocalization for your IP
Tags: mac, showdev
Published: 2019-01-25 09:06:07

---
title: IPLocation 2 - Geolocalization for your IP
published: true
description: 
tags: #mac #showdev 
---

[This major update is the best IPLocation yet and is the result of months of development, and design.](http://www.valentinourbano.com/apps/mac/iplocation/) I hope you'll love it!

[I've made a short video that showcases IPLocation for new and old customers along with all the new features of IPLocation 2.](https://youtu.be/Bq_qGeKXC9g)

Some of the new features:

- A whole new History View to see a complete timeline of your IP changes over time with all the information you care about (like location and date).

- An improved map view with more details

- An updated UI that supports Dark Mode on macOS Mojave

- Ability to hide part of the IP Address you don't want to show

[More Info](http://www.valentinourbano.com/IPLocation2-Release.html)
[Buy](https://itunes.apple.com/us/app/iplocation-2/id1438343930?&at=1010lHG?mt=8)
This is I always wanted
Tags: begineer, carrer
Published: 2019-01-25 08:42:47

---
title: This is I always wanted
published: true
description: First blog
tags: #begineer, #carrer, #productivity
---

<img src="https://thepracticaldev.s3.amazonaws.com/i/onhets76oezx8kihrrdd.jpg" alt="introimg" />

<b>B</b>eginning of 2018 has been in and out of learning web development, couldn't really focus on completing courses but always kept track on the latest developments in various web technologies , kept reading blogs, stories just so I don't completely alienate myself from the world of web development.

<b><i> Time to be consistent </i> </b>

By first week of October,2018 I decided I needed to make a big change and be on the right side of things, so I focused myself on completing courses that I left in between and in advancing my skills followed by long frustrating nights after work and spending most of my weekends learning.

<b> So far down the road </b>

<ol>
<li> Completed beginner's courses on HTML, CSS, JavaScript.</li>
<li> Learned basic UI designing.</li>
<li> Started working on my portfolio.</li>
<li> <b> Made my first blog post :D. </b> </li>
</ol>

Though there is so much to learn,so much to make but there is some satisfaction knowing that each day I move closer to my goal.

I'm going to document/blog as much as I can about my journey and share my experiences.

Completely overwhelmed with joy and <b> Happy Coding. </b>

Cheers!!
ErrorBoundary does not re-render app when place below react-router
Tags: help, reactrouter, react
Published: 2019-01-25 06:13:21

---
title: ErrorBoundary does not re-render app when place below react-router
published: true
tags: help, react-router, react
---

I am adding ErrorBoundary to my app but I found that when I add ErrorBoundary below react-router, the app doesn't re-render on route change until I manually force refresh.  

Here's the sample code.  I'm using BrowserRouter here. I would like to understand why the order of placement is important here.


# App doesn't re-render until force refresh
```
<Router>
    <div className="app-shell">
        <ErrorBoundary>
            <Navbar />
            <div className="app-main">
                <Sidebar project={this.props.currentProject} />
                <MainContentRouter />
            </div>
            <ToastContainer />
        </ErrorBoundary>
    </div>
<Router>
```

# WORKS FINE
```
<ErrorBoundary>
    <Router>
        <div className="app-shell">
            <Navbar />
            <div className="app-main">
                <Sidebar project={this.props.currentProject} />
                <MainContentRouter />
            </div>
            <ToastContainer />
        </div>
    <Router>
</ErrorBoundary>
```
Basic Node Server Stuff
Published: 2019-01-25 04:47:03

---
title: Basic Node Server Stuff
published: true
description: 
tags: 
---
If you have been thinking to start NodeJs in 2019. Here are some cool code snippets that can give you kickstart and let you know, how easy it is.

1) A simple server setup
![a-simple-server-setup](https://thepracticaldev.s3.amazonaws.com/i/c8ad35g4jegzp9pen9jx.png)

2) Implementing routing in a simple server setup
![routing-a-simple-server-setup](https://thepracticaldev.s3.amazonaws.com/i/2fwtplktv4cyxj4k4o9b.png)

3) Code to parse the incoming request body from the client
![code-to-parse-request](https://thepracticaldev.s3.amazonaws.com/i/m22zjinz7wtx0r9gfuxm.png)

I hope these code snippets might have helped you. This is my first ever blog post, any feedback or ideas for any other articles are quite welcome!
Use AJAX for Instant Results
Tags: discuss, funny
Published: 2019-01-25 04:30:04

---
title: Use AJAX for Instant Results
published: true
description: Jokes for folks
tags: discuss, funny
---

...when cleaning.

![](https://thepracticaldev.s3.amazonaws.com/i/1uo7sbxuwdo7kufadjgi.jpg)