teleren/devto huggingface dataset:
Coding Interview Q&A Project
Tags: coding, interview, showdev
Published: 2017-10-08 01:29:10

---
title: Coding Interview Q&A Project
published: true
description: 
tags: coding, interview, showdev
---

One of my biggest challenges of doing a successful whiteboard coding interview is that I don't practice writing algorithms that are asked during interview (For example, reversing a LinkedList, checking if Binary Tree is balanced, etc..) on my day-to-day tasks. Just like other skills, if we are not practicing, they will get rusty.

Over the past several years, I have had several coding interviews. After each interview, regardless of the outcome, I wrote down the interview questions and practiced them again when I got a chance.

Therefore I made an open source Test-Driven project, [Coding_Interview](https://github.com/rattanakchea/coding_interview) that is collection of common questions asked in interview. So far, I have some questions, answers, tests written in JavaScript, Python, and Java. This is on going project. More questions and answers are being added.

Some example questions include
1. How do find common numbers between two arrays of numbers?
2. Write a function to capitalize each word in a sentence except *a, the, to, at, in, with, and but, or* ?
3. Write a function to check if a string is unique? (i.e no duplicate character)

![project screenshot](https://raw.githubusercontent.com/rattanakchea/coding_interview/master/screenshot.png)

## Features
- Code written in JavaScript, Python, Java
- Testing with Mocha library, Unit Test for Python
- Each question is accompanied by instruction and example
- Organized and reusable code

## How to run
- Clone the repo, then `npm install` all dependencies
- `npm run test` to run all test cases for JavaScript
- `npm run test-p` to run Python test cases

## How can you help
- If you just want read more about it, please go to: [Coding_Interview](https://github.com/rattanakchea/coding_interview)
- If you would like to contribute, please submit a PR. I appreciate.
Gait Recognition by means of Biometric Surveillance
Published: 2023-07-16 08:18:59

---
title: Gait Recognition by means of Biometric Surveillance
published: true
date: 2017-10-07 15:15:07 UTC
tags: 
canonical_url: https://theuigirl.hashnode.dev/gait-recognition-by-means-of-biometric-surveilliance-5e4fdb5f5037
---

#### THE RESEARCH PROJECT

#### **Gait recognition** is the process where the features of human motion are automatically obtained/extracted.

W **ith the advancement of population, a lot of data needs to be stored, personalised and protected from outside intervention and fraud. Now, it sounds like a mammoth task, right?**

Of course, it is intimidating. Every time we access a new account, we need to enter our credentials or some other bio-metric information. Science has developed by leaps and bounds, so has hacking. Protecting data is now very tedious. Due to the challenges we faced due to replication of passwords, bio-metrics came into existence.  
Till date, we have come across fingerprint and iris as means of such types of screening which are now being widely used. But it requires device intervention, the user has to willingly give the data, touch the device, or bring the organ closer to the detector. Have we thought of any other means? Something that doesnt require the users co-operation or the willingness of the user. Sometimes a picture is captured by means of surveillance cameras, but we cant process it due to less clarity. What about your very own walking style? Is it unique? According to Brain Post, an average human walks about 5 times around the Earth, that accounts for a total of 216,262,500 steps. Well, that is a lot of steps. Many researchers have published papers regarding this, and achieved considerable accuracy.

> **Gait recognition** is the process where the features of human motion are automatically obtained/extracted and later these features enable us to authenticate the identity of the person in motion.

This clearly manifests that walking style which consists of positioning of joints and angles is a unique trait that every human being possesses. Thats cool. We got another unique trait. Can that be implemented in our day-to-day life? Yes. It has gained a upper hand in this application due to its advantages. The user neednt come near the detector .i.e. images can be processed from far. Low clarity images can also be protected in this way.  
Well, this new trait owns all the qualities of being used as an alternative to age-old bio-metric systems. Does it have the potential to be implemented in the long run? If so, then surely we need to probe deeper into this.

If you want to know more about the ongoing research, please refer to the paper, [Real time biometric surveillance with gait recognition](https://aip.scitation.org/doi/abs/10.1063/1.5031969).

_Let us your thoughts about the article in the comment section below and if you want to connect with me, here I am ->_ [_Twitter_](https://twitter.com/anishaswain) _or_ [_Linkedin_](https://www.linkedin.com/in/anisha1234) _or_ [_Instagram_](https://www.instagram.com/anisha_swain_/)
Do you ever get frustrated with your Junior Developer(s)?
Tags: juniordeveloper, frustration, impostersyndrome, discuss
Published: 2017-10-07 12:56:08

---
title: Do you ever get frustrated with your Junior Developer(s)?
published: true
description: Do you ever get frustrated with/annoyed by your Junior Developer's questions and need for help?
tags: Juniordeveloper, frustration, impostersyndrome, discuss
---

Having recently started a new internship as a Junior Software Developer, I can't help but feel like I (significantly) ***annoy*** everyone with my (very) ***frequent*** questions.

Don't get me wrong, I know in myself that it's a necessity to ask questions as a Junior Dev, because after all that's how you learn and gain experience, right? So I understand that I am not in the wrong by asking questions, but I often do wonder, does this get annoying for the people (most often Senior Devs) answering my questions? After all I'm taking them from their time pressured work, I'm asking them to explain something that I'm finding difficult but they probably can do in their sleep and I'm generally taking time from their day.

**So my question is, do you ever get frustrated with your Junior Developer?**
Which editors do you use?
Tags: editor, discuss
Published: 2017-10-07 07:11:46

---
title: Which editors do you use?
published: true
description: Vim? Sublime text? VSCode?
tags: editor, discuss
cover_image: https://thepracticaldev.s3.amazonaws.com/i/ew31yajfslfsddqq0vbr.svg
---

The question's in the title. Here's my answer: **VIM** and **Sublime Text**

Sublime text is better than vim except for the fact that it doesn't support fully (yet) VIM mappings (and plugins, but I could deal with this). I use the `Six` package, a python emulation of VIM (ST plugins are written in Python).

ST is absolutely beautiful, amazingly fast, supports proper project management (settings per project for example), a proper multi cursor (not a hack like vim-multiple-cursor), great syntax highlighting (engine and rules), and *much* more...

Despite all these advantages, I'm still using the actual VIM, sometimes giving another go at ST (like right now).

That's it! Your turn!
Setup Travis CI for Rust Diesel project
Tags: rust, travisci
Published: 2017-10-06 22:43:06

---
title: Setup Travis CI for Rust Diesel project
published: true
description: 
tags: rust, travisci
---

Rust is [supported on Travis CI](https://docs.travis-ci.com/user/languages/rust/), there are three main channels of Rust you can use: _stable_, _beta_ and _nightly_. You can just follow their instruction to get your Rust project build smoothly.

But when it come to [diesel.rs](https://diesel.rs), it will be a bit tricky.

The reason is, in order to build a diesel-based project, you will need to have:
- A database on your build machine
- A `.env` file with a configuration to connect to that database
- **diesel-cli** installed to run migration

So, it will require some more configuration.

Let's create a `.travis.yml` file in your project's root folder.

## Step 1: Rust version

You can select any version of Rust in your Travis CI, put this to your config file:

```yaml
language: rust
rust:
  - nightly
  // or
  - 1.22.0
  // or
  - stable
```

## Step 2: PostgreSQL (or what ever database you use)

Next, we need to add PostgreSQL as an extra service:

```yaml
services:
  - postgresql
```

If you're using a different database, just change it. For the complete list of supported database, please take a look at [this document](https://docs.travis-ci.com/user/database-setup/).

## Step 3: Init your database and migration

Now we need to do a lot of things, create a databse, install **diesel-cli**, create a database and run migration, let create a `before_script` section:

```yaml
before_script:
  - psql -c 'create database build_db;' -U postgres
  - echo "DATABASE_URL=postgres://postgres@localhost/build_db" > .env
  - cargo install diesel_cli --no-default-features --features=postgres
  - diesel migration run
```

## Step 4: Build and Test

Finally, build and test your project with `cargo`:

```yaml
script:
  - cargo build --verbose --all
  - cargo test --verbose --all
```

That's all you need!

If you are too lazy to follow the four steps, [this is a gist](https://gist.github.com/huytd/8438a0d3fe1510a483a0499e63a07925) for you.

**P/S:** It's worth to mention that due to a lot of `cargo` run, the build time is so freaking slow, with the above gist, my project took approximately 8 to 9 mins per build.

You might want to add some caching for `cargo` in your `.travis.yml`:

```yaml
cache: cargo
```

See more about [dependencies caching here](https://docs.travis-ci.com/user/caching/).
[Video] But What *is* a Neural Network
Tags: ai, deeplearning, neuralnetworks
Published: 2017-10-06 22:02:26

---
title: "[Video] But What *is* a Neural Network"
published: true
description: 3blue1brown makes amazing visual explanation videos on mathematical concepts. This one on neural nets particularly peaked my interest.
tags: ai, deeplearning, neuralnetworks
---

3blue1brown makes amazing visual explanation videos on mathematical concepts. This one on neural nets particularly peaked my interest, and I thought it'd be cool to share with the dev.to community.

{% youtube aircAruvnKk %}

I'm anxiously awaiting the next video in this series.
What are your favorite Company's Tech blogs?
Tags: discuss
Published: 2017-10-06 19:38:17

---
title: What are your favorite Company's Tech blogs?
published: true
tags: discuss
---

Hello,

I am a Back-end Dev and I start to dig into the tech blog world. These days I am interested into company's tech blog.

Do you have any recommendation?

Small or big company, it doesn't matter. I am looking for blogs written under a company's name!

Anyone on twitter is sharing such content?

I am digging on my side, if anyone is interested: I will be happy to share my finding. :)
Welcome Thread - v4
Tags: welcome
Published: 2017-10-06 19:13:06

---
title: Welcome Thread - v4
published: true
description: Introduce yourself to the community!
tags: welcome
---

Hey there, welcome to dev.to!

![WELCOME TO THE INTERNET](https://media.giphy.com/media/bcKmIWkUMCjVm/giphy.gif)

The last introduction thread got 200 comments! Stoked that y'all are introducing yourselves.ðŸ˜

### I'm going to leave some guidelines this time though, just to shake it up a bit:
1. Reply to someone's comment, either with a question or just a hello. ðŸ‘‹ 

2. Leave a comment below to introduce yourself to the community! You can talk about a project you've worked on, some advice for someone else (or your future self), or something that has helped you get where you are today.

Let's do it!
Looking for questions to ask developers in a fun interview series
Tags: meta, discuss, nyc
Published: 2017-10-06 17:18:43

---
title: Looking for questions to ask developers in a fun interview series
published: true
description: 
tags: meta, discuss, nyc
---

Hey fam, if you recall, we shot some videos [like this one](https://dev.to/thepracticaldev/moving-from-a-java-monolith-to-microservices-at-squarespace) and we're going to shoot a few more soon.

But with a slightly different format, and we're going to ask some devs from the community a variety of questions about their career, their stories, advice, thoughts, etc.

### Questions like:

- What was your worst bug?
- What advice would you give in some situation?
- Tabs or spaces?

### But we need some more questions.

So I urge you to drop some good questions in the comments below. No dumb questions, if we don't think it's the right question, we just won't use it. But I'd love to get some questions that we wouldn't have thought of, so anything goes.

P.S. If you're in the New York City area, we're shooting next week and still have a few slots still available if you want to take part. If you are a programmer and want to do a low-pressure interview to help other devs, please feel welcome to book a spot. [HERE IS THE LINK TO BOOK](https://calendly.com/willjones/dev-video-shoot/10-10-2017)

Thanks everybody for the help, happy coding.
A small gotcha with NodeJS Application settings on Azure that can surprise you
Tags: azure, node, azureappservices
Published: 2017-10-06 16:23:37

---
title: A small gotcha with NodeJS Application settings on Azure that can surprise you
published: true
description: 
tags: Azure, NodeJS, Azure AppServices
---

_Also posted on [Medium](https://medium.com/@kevinle/a-small-gotcha-with-nodejs-application-settings-on-azure-that-can-surprise-you-2e041cf783ec)_

The following code runs perfectly fine on a NodeJS server that’s hosted outside of Azure App Services:

```javascript
const apiAiApp = require("apiai")(Constants.API_AI_ACCESS_TOKEN);

module.exports = function(app, server) {
   //Do something with apiAiApp
}
```
During development, running NodeJS on a local server, the environment variable API_AI_ACCESS_TOKEN are set in package.json file. Just for completeness, let me show the constants.js file, since it only takes a few lines:

```javascript
const env = {
  API_AI_ACCESS_TOKEN: process.env.API_AI_ACCESS_TOKEN,
}
```
On Azure, the environment variables such as API_AI_ACCESS_TOKEN has to be set in the Application Settings blade. That’s the UI way of doing it. We can also set it using a command line. Either way, the setting of environment variable has to be done first.
But even then, when we try to access the web application, it gives an error page that looks something like

```
iisnode encountered an error when processing the request.
 
 HRESULT: 0x6d
 HTTP status: 500
 HTTP subStatus: 1013
 HTTP reason: Internal Server Error
```
IIS? What is that? If this is the first time you try to deploy your app on Azure, you might not feel so “pressured”. But in my case, my app used to work just fine in production. Suddenly, nothing works anymore on Azure and there’s no console to look at, like on my local server.
Here’s a good resource that helped me out:

[https://blogs.msdn.microsoft.com/azureossds/2015/08/19/debug-node-js-web-apps-on-azure/](https://blogs.msdn.microsoft.com/azureossds/2015/08/19/debug-node-js-web-apps-on-azure/)

Long story short, the fix is extremely simple. Simply restructure the code as follow:

```javascript
const apiAi = require("apiai");

module.exports = function(app, server) {
   const apiAiApp = apiAi(Constants.API_AI_ACCESS_TOKEN);
   
   //Now, do something with apiAiApp
}
```
JW Player is Hiring a Senior Javascript Engineer
Tags: hiring
Published: 2017-10-06 16:16:14

---
title: "JW Player is Hiring a Senior Javascript Engineer"
published: true
description: Join the JW Player team
tags: hiring
automatically_renew: true
---

# Senior Javascript Engineer

__New York, NY__

__JW Player is the world's most widely-adopted web video player, generating more than 15 billion video streams a month.__ We're looking for a JavaScript programmer to join a world-class team of front-end software engineers dedicated to building cutting-edge features while maintaining our best-in-class performance.

## In this role you will:

* Write clean and reusable code using the latest web technologies

* Participate in code reviews on github and with your peers

* Develop expertise in JavaScript, CSS and multi-browser development

* Improve performance, stability and user experience of the JW Video Player

* Take ownership of feature development and releases

## Requirements:

* Expertise in front-end web development with JavaScript, HTML5 and CSS

* Experience developing and deploying web applications

* Attention to detail implementing designs and testing across browsers

* Knowledge of best practices, frameworks, functional programming and OOP

* B.S. degree or higher in Computer Science or related technical field

## Bonus Points

* Strong portfolio or Github profile

* ES6/ES2015, W3C standards, CommonJS/AMD, Node.JS

* Experience with DASH, HLS and/or other streaming technologies

* Experience with 3rd party advertising and analytics frameworks and sdks

_This is a full time role based in our NY offices._

## About Us

If you've watched video on the web, you already know us. JW Player is the largest, and fastest growing, independent online video platform in the market today. We provide a popular suite of software products that enable over 2 million publishers to deliver and monetize their content on any device. Our flagship product, JW Player, is currently the most widely used video player in the world and is used in over nine billion streams each month. We recently finalized a $20 million round of series C financing to continue this upward momentum and invest in products that are changing the online video landscape.

We are an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status. 

<center><h2> [Apply For This Position](https://boards.greenhouse.io/jwplayer/jobs/846642?gh_src=a76vd81#.Wdep-hNSx0s)</center>

---------
Website gives error when screen size is small or mobile is in landscape
Tags: html, css, javascript
Published: 2017-10-06 15:01:01

---
title: Website gives error when screen size is small or mobile is in landscape
published: true
description: I copied a responsive template and have been working on remodeling it since weeks but in live testing, it shows that when the screen size is small or mobile is in landscape mode, it gives an error that, please get a big screen or put the device in portrait mode. Can someone help me??
tags: html, css, javascript
---
A thought about Twitter comments plugin
Tags: twitter, comments, discuss, facebook
Published: 2017-10-06 13:45:57

---
title: A thought about Twitter comments plugin
published: true
description: There are many comments plugins for websites like Disqus, Facebook, Google Plus why not Twitter making one?
tags: twitter, comments, discuss, facebook
---

![Twitter comments plugin](https://thepracticaldev.s3.amazonaws.com/i/tb78klrs6adqtcupc083.png)

I was working on my blog and thought of using [Disqus](https://disqus.com/) as my commenting system. I went to Disqus and copied their `widget` code and pasted on my website.

But wait... Now people will come over to my website and they have to signup or login to Disqus to start commenting...

Why can't we just use any twitter's plugin and use the features of twitter?

Here are few benefits we can enjoy if twitter creates a commenting system for websites:

- People can comment on a blog as they are just tweeting 
- They can include someone by just tagging them in the tweet
- People can like or retweet the comment so that others can see it and join (if they want)
- People will receive notifications right in their Twitter app

What are your thoughts about it?
Friday Blast #12
Tags: fridayblast, links, post
Published: 2019-01-20 15:19:03

---
title: Friday Blast #12
published: true
tags: friday_blast,links,post
canonical_url: https://horia141.com/friday-blast-12.html
series: "Friday Blast"
---

[Clocks for software engineers (2017)](http://zipcpu.com/blog/2017/09/18/clocks-for-sw-engineers.html) - hardware design is very different from software design. And it starts from the very basic concept of the _clock_, which is the periodic and square-ish signal which synchronizes all the other components of the design. There’s a whole bunch of hardware design tips on the website as well.

[Building ReplicatedLog: high-performance replicated log service (2015)](https://blog.twitter.com/engineering/en_us/topics/infrastructure/2015/building-distributedlog-twitter-s-high-performance-replicated-log-servic.html) - a quick overview of Twitter’s ReplicatedLog. The service is similar to Kafka, but with different tradeoff and a lower-level interface, upon which their pub/sub systems, databases etc. can build. Having lower-level systems with good abstractions and performance available, makes building other distributed systems much simpler. Indeed, their Manhattan distributed database is built atop this. Other systems like BigTable depend upon a reliable system like the Google File System, hwhich makes their design much simpler. In contrast, something like Amazon’s Dynamo has to take care of everything itself, leading to a much more complex design.

[Stacking up the next platform (2015)](https://www.nextplatform.com/2015/10/16/stacking-up-a-modern-platform/) - a description of what a “platform” should contain and provide from it’s users, with a decidedly Google/Facebook/Twitter-like approach. Things like container infrastructure (runtime management and registries), build systems, logging, load balancers etc. The article is from 2015, but it’s been quite predictive of what has happened in the meantime. The only thing not covered is the “rise” of Function-As-A-Service / serverless.

[Floating point visually explained (2017)](http://fabiensanglard.net/floating_point_visually_explained/) - I got a lot of bang out of this article. Like the author I struggled with the definition of floating point. This article cleared a lot of issues for me. Basically, the exponent part of the FP number selects one of a range of numbers, while the mantissa selects one element from that range. The ranges are exponentially increasing, so in each range the resolution decreases. Read on for more details and graphics.

[Essential facts about floating point calculations (2016)](https://mortoray.com/2015/07/06/essential-facts-about-floating-point-calculations/) - much easier to understand in light of the previous article. The core idea is that FP numbers are not reals, so many of our intuitions about them are wrong. Also, the hardware implementation might bite us. The most glaring example would be that both <script type="math/tex">x == y</script> and <script type="math/tex">x != y</script> are false at the same time, because x86/x64 machines use <script type="math/tex">80</script> bit precision FP units.
How do you handle lack of self-confidence and career-numbing doubt?
Tags: discuss, career
Published: 2017-10-06 04:17:06

---
title: How do you handle lack of self-confidence and career-numbing doubt?
published: true
tags: discuss, careers
---
I quit my first (programming) job almost two months ago after realizing that I was extremely burned out and wasn't really getting any work done. I thought to travel and take time off from anything tech-related for three months, recuperate, learn some new stuff and then start applying for jobs again. 

However, looking back on how little I've grown and accomplished in the 2+ years at my old job, I have zero confidence in my skills (if I have any) and myself. (My three managers said that I was good at the things I did, but I've never felt that way.) This has in turn sapped my willpower to try to learn. 

I guess my lack of confidence is holding me back, but I don't know how to break free of it. Each time I try and fail, I look at my past failures and conclude that programming is not for me.

How do/did you deal with issues of self-confidence and doubt?