teleren/devto huggingface dataset:
Hi. I'm a tech recruiter & I believe recruitment sucks.  
Tags: career, hiring, healthydebate, startup
Published: 2020-05-18 01:02:37

I was googling 'recruiters are...' when I came across dev.to. So, I had to sign up once I saw this: 

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/tyvebgwpvua2uyeiegq7.png)

I loved [this](https://dev.to/dvddpl/wtf-is-wrong-with-recruiters-14gk) post, he's right! I actually own a [tech recruitment agency](https://www.omnesgroup.com) and I am aware of each and every bad practice in the industry. 

When I started it, I thought my agency will make everything different. I figured the key to devs’ hearts was through candidate experience. So, we got 4,6/5 for that. We have the candidates’ trust.

To start, we’ve never practiced cold calling. We’ve made our stance on calling people without their consent clear [on our website.](https://web.archive.org/web/20190126003253/https://www.omnesgroup.com/)

We always try to be as transparent as possible, and we were among the first to openly communicate the names of the companies we’re recruiting for. 

This speaks volumes about the culture.

But, it’s still not enough. 

External recruitment is expensive and talent hates the process. In my career as a recruiter, I’ve learned a simple fact: 

👉 Experienced, quality candidates hate being contacted out of the blue by strangers and bombarded with LinkedIn messages and emails from random recruitment agencies. The only way I managed to reach serious prospects was through referrals by other people from their field. 

Cold outreach is hurting your companies reputation and you're wasting time vetting unqualified candidates. **Referrals** are the fastest, most reliable hires than any other. So I created a platform for that. 

Meet [Recrooit](https://www.recrooit.com), a referral platform that helps companies find and hire qualified candidates by harnessing the expertise and the power of the community. As a Recrooiter, you will recommend people from your network, and if they get hired, you'll get a bounty fee. 

We will be launching in June, but I still want to learn about your experience with recruiters. 

So, tell me - what do you think about cold outreach? 
Did any of you get a job through a referral? 
Would you bother referring people to get a bounty?
Building my first Pro site
Tags: javascript, webdev, netlify, github
Published: 2020-05-18 00:58:43

Hi. I am a recent graduate that has built a lot of sites from scratch, some using JS and Sass, some using WordPress and other CMS's. I've just been asked by a friend to build a pro website for his business in New Zealand that will do very well over the next 2 years. (he's in Corporate Fraud Investigation). It just occurred to me that I've only ever used GitHub and/or Netlify to run my sites. The wordpress sites have been managed through Blue Host. Is the backend of this pro site I am about to build simply managed through the host of my choice's C-panel? Or do I really need to dive deep into backend tutorials to make this work?
I'd really like to deploy to Netlify via github (for git pushing purposes) but I'm nervous about the site's size as it grows over time.
I will be building something similar to this https://www.k2intelligence.com/ (content and style)
Many thanks
Let's talk about InterviewCake
Published: 2020-05-18 00:47:35

I was first to introduced to InterviewCake when I was still in my Bootcamp. I didn't know much about it besides that it was just a place where you can practice and learn about different data structures and algorithms. In this small post, I'll tell you my pros and cons of InterviewCake.

### Pros
- They have carefully selected problems for you to do. These problems are essential in getting better at data structures and algorithms. I wouldn't be surprised if a couple of companies give you problems straight from InterviewCake.
- Parker (the guy who created InterviewCake) made this targeting Bootcamp graduates. He helped his friend get into Facebook and that's when he decided he loves helping me get into their dream company. Anyone besides bootcamp graduates can use InterviewCake.
- Parker explains how to go from a brute force solution to an optimized solution with a lot of explanation. 
- They have many languages to choose from.

### Cons
- I wish they offer more problems.
- They don't have any video explanations. 

That's all from me! Have you tried InterviewCake? If you have, tell me about your experience with it. Did it help you land a job?
Deno trial
Tags: deno
Published: 2020-05-18 00:44:23

# Install Demo
```bash
brew install deno
```

Still Apple Spell checker invites me to change the spelling to demo.
I guess we all have to get used to it.

# Trying the script
Installation is easy. Now I try with a simple typescript from [deno.land](http://deno.land)
## Trying out the script
```typescript
import { serve } from "https://deno.land/std@0.50.0/http/server.ts";
const s = serve({ port: 8000 });
console.log("http://localhost:8000/");
for await (const req of s) {
  req.respond({ body: "Hello World\n" });
}

```

```bash
deno run denoDemo.ts
```


That comes up with 
``` 
error: Uncaught PermissionDenied: network access to "0.0.0.0:8000", run again with the --allow-net flag
```
oh 👌🏼...

```bash
deno run denoDemo.ts --allow-net
```

still
```
error: Uncaught PermissionDenied: network access to "0.0.0.0:8000", run again with the --allow-net flag

```
Now I have to turn myself into Google.com

it is actually and should be

```bash
> deno run --allow-net denoDemo.ts
http://localhost:8000/
```
Ta da well hello, world!
How do you decide when to share an app idea?
Tags: mobile, android, discuss, development
Published: 2020-05-18 00:20:59

I've been pretty quiet on here so far this year. I mean to do a post a week and then I went through moving, I got a job within a week, I explored the area a bit, I got furloughed and I've been writing a lot more on my lifestyle blog and I've even started doing YouTube. But my favorite thing I've started is to learn Android App development and I've decided to create my own app.

I feel like one of those frat boys that comes up to you and is like "I got an idea for an app. Can you make it?" Except it's me all the way. And that's a pretty amazing feeling. Granted, I know I'll need help along the way.

However, I've been debating whether or not to share it. I'm in the very beginning stages of gathering information and designing before I start coding.

On one hand I'd love to be able to talk to people about it and share and it'd be a lot of content creation. On the other hand I'm kind of worried someone will decide to code it faster and get it in the app store and I'll have to redo the design or functionality.

I think part of it is that I like hiding all the work I do and then shocking people when I show them what I've done and I'm trying to battle that and show the process to encourage other people to start learning how to code and to get experience from more advanced developers.

I think what I will be doing is writing up posts and sharing after I've gotten past a certain point that will be decided in the future.

<h3>When do you start sharing?</h3>
Eleventy - initial impressions, and Turbolinks
Tags: eleventy, ssg, nunjucks, turbolinks
Published: 2020-05-19 10:47:55

---
title: Eleventy - initial impressions, and Turbolinks
published: true
date: 2020-05-18 00:00:00 UTC
tags: eleventy, ssg, nunjucks, turbolinks
canonical_url: https://pnodseth.dev/posts/eleventy-initial-impressions/
---

I’m really glad I settled on using [Eleventy](https://www.11ty.dev/) for [my blog](https://pnodseth.dev). After the initial “finding my way around”, I feel like I’ve got the hang of how Eleventy works.PS: If you don’t know what eleventy is, I write about it in my [first blog post](https://pnodseth.dev/posts/so-i-decided-to-start-a-blog/)

## What I like about Eleventy so far:

- The ability to mix different input formats for my web pages. So far I’m using [Nunjucks](https://mozilla.github.io/nunjucks/) templates for web pages that need some logic handling, and markdown files for my blog.
- They way you create pages and content from data. I love that I can simply write a function that returns whatever data I need, which is then fetched on build-time and ready for use in my templates. [Check out this example of how to create pages from data](https://www.11ty.dev/docs/pages-from-data/). So far I’m getting data for my bookshelf page and my top Spotify artists page. Feels good not having to fetch that data in the client.

## Turbolinks

I've also added [Turbolinks](https://github.com/turbolinks/turbolinks) to my site. Turbolinks works this way: Whenever you click a link on my site, instead of doing a full page reload Turbolinks hijacks the click event. It then fetches the page and basically swaps out everything inside the body tag. Getting Turbolinks up and running couldn't be easier. You just drop the script tag in your and it works. 🥳 It's a nice and easy way to get the instant page load you get with a SPA.

I’m looking forward to juice up my blog some more going forward. While I love a minimalistic approach to most web sites, I also want to sprinkle some fancyness here and there.
Leetcode - Longest Common Prefix (with JavaScript)
Published: 2020-05-17 23:42:49

Today I am going to show how to solve the Leetcode Two Sum algorithm problem.

Here is the problem:
![problem](https://raw.githubusercontent.com/Urfan196/MyFIles/master/Screen%20Shot%202020-05-15%20at%209.08.19%20PM.png?token=AMQWY7CQJWJPIM6OPGVK4RS6X5VYS)

These are the 2 most common solutions for this problem: 

1. Horizontal method - With this method we are taking the first and the second words from an array and comparing them letter by letter to see whether the beginning of each word is the exactly the same. Then, we take the common prefix and compare it one-by-one to the subsequent words in the array. 
2. Vertical method - With this method, instead of comparing two words at a time you, you compare all of the words at once, one letter at a time. I’m going to solve the problem with this method.

Both of these algorithms have exactly the same time and space complexity.  But the vertical method is faster in solving the problem in the worst case scenario. Let’s just take a look at a really contrived example where you have an array of hundred words and all of the words are exactly the same except for the very last one. Using the horizontal method means that you have to make a comparison 99 times before you finally get down to the last word and realize that there is no common prefix. But with the vertical method all you need to do is go through the first letter of every single word and immediately realize that there is no common prefix. 

```javascript
var longestCommonPrefix = function(strs) {
    let prefix = ""
    if(strs === null || strs.length === 0) return prefix
    
    for (let i=0; i < strs[0].length; i++){ 
        const char = strs[0][i] // loop through all characters of the very first string. 
        
        for (let j = 1; j < strs.length; j++){ 
          // loop through all other strings in the array
            if(strs[j][i] !== char) return prefix
        }
        prefix = prefix + char
    }
    
    return prefix
}
```
CSS Combinators and Specificity
Tags: css
Published: 2020-05-17 23:28:40

---
title: CSS Combinators and Specificity
published: true
description: CSS Combinators do not count when calculating the specificity. But why?
tags: css
---

There is something that puzzles me when writing CSS: combinators do not count when calculating the specificity.

Let's see the following code as an example:

{%codepen https://codepen.io/alvaromontoro/pen/pojQoyE default-tab=css,result%}

At first glance, `section > div` looks more specific than `section div` as it targets a more precise set of elements (the `div`s that are direct children of `section`). So "Text 1" should be red, while "Text 2" should be blue.

...But when you run the code above,  you see that that's not the case. All the text is blue. Even when `section > div` is intuitively more specific than `section div`, it is not more specific in CSS. 

That is because [the universal selector (`*`), combinators (`+`, `>`, `~`, ` `, `||`), and negation pseudo-class (`:not()`) do not have any effect on specificity](https://developer.mozilla.org/en-US/docs/Web/CSS/Specificity). 

Both rules `section > div` and `section div` then have the same specificity ([0-0-2](https://specificity.keegan.st/)), and the last one in the code takes precedence.

But why is that? Digging online, one can find this [question on StackOverflow](https://stackoverflow.com/q/8096829/3695983) that leads to a [2004 W3C thread with a discussion about the topic](https://lists.w3.org/Archives/Public/www-style/2004Jul/0042.html) in which they ended up discarding the possibility.

While that decision makes sense from a practical point of view: if combinators were given a specificity weight –even something lower than a tag–, that change could unexpectedly affect the styling of millions of websites.

We could argue that it was not the right time to make such a change, but we could also argue that it won't be the right time ever. Even when, in my opinion, it is a change that should be done.

Because it makes sense from a semantic point of view: combinators add meaning and precision (therefore specificity) to a selector. From the example above, `section > div` will always be a subset of `section div`. It is more specific.

...Just not for CSS.
Stop setting the language of your website based on user location
Tags: language, location, webdev, ux
Published: 2020-05-17 23:20:31

---
title: Stop setting the language of your website based on user location
published: true
description: Location-based language setting is a bad idea. It's much better to use the browser's language.
tags: language, location, webdev, ux
---

Please, stop!

# Why

Setting the language of your website based on the user's location is not the best user experience. People travel, people move and not always do they speak the language of the place they're in.

I'm currently living in Germany for a while, and I know next to nothing of German, so it serves nothing showing me your content in German.

The worst offenders are the ones that first load the default (most of the times, in my experience, English) and then reload or re-paint to show me a language I don't understand.

# The solution

A much better way (and probably easier) is to use the user's browser/system language. That's the language I want to read on 99% of the time. Otherwise, why would I have my machine in that language? And if it's not, I will change it myself.

So if my preferred language is English, it doesn't matter where I am, the content will be delivered in that language and I will understand it.

It's also super easy:

```
var userLang = navigator.language || navigator.userLanguage; 
```

Thank you. Signed,
Everyone
Building Multiarch Images
Tags: docker, arm, githubactions
Published: 2020-08-31 19:11:03

---
title: Building Multiarch Images
published: true
date: 2020-05-17 22:28:55 UTC
tags: ["docker", "arm", "githubactions"]
canonical_url: https://www.joshkasuboski.com/posts/build-multiarch-image/
---

I wanted to use [fathom](https://github.com/usefathom/fathom) on my Raspberry Pi k3s cluster, but they didn't publish a compatible ARM image. Not to be deterred I forked the repo and built my own.

## How does one build for multiple architectures easily

Docker has a tool called buildx. It acts as a frontend to buildkit and allows building images for multiple platforms at once.

I followed [this](https://www.docker.com/blog/multi-arch-build-and-images-the-simple-way/) guide to create a GitHub Actions workflow to build it.

## GitHub Actions it up

You can skip ahead and look at my final workflow [here](https://github.com/kasuboski/fathom/blob/master/.github/workflows/docker.yml).

There was already a buildx action. The workflow ends up seemingly simple.

- Checkout the repo
- Set up buildx
- Login to DockerHub
- Build for linux/amd64,linux/arm/v7,linux/arm64

That last part includes the platforms I would care about (for now). amd64 is for your run of the mill computer, arm/v7 being what is on my Pi thanks to 32-bit Raspbian, and arm64 being a potential if I switch the OS on my Pi.

I did have to make a change to the repo other than just adding the workflow. The build step had the `GOARCH` variable set to `amd64`. This caused the build to always output an `amd64` binary, unsurprisingly. I realized this after two 16 minute builds…

The workflow works well, but every run so far was between 14mins and 30mins… not exactly fast.

## Moving Forward

There have been a number of images that aren't multi-arch that I want to run. I may look into forking and building those, but it would be nice to have a simpler solution with me not managing it.

I could contribute to [multi-arch-images](https://github.com/raspbernetes/multi-arch-images) instead. They seem to be doing something similar but just copying the Dockerfiles needed.
tsParticles family is growing!
Tags: news, showdev, javascript, typescript
Published: 2020-05-17 23:11:00

# tsParticles suite has become larger

tsParticles after plain Javascript and ReactJS with a 3rd party component now has its own jQuery, VueJS, ReactJS and Preact official packages, maintained with the main project.

## tsParticles ❤️ ReactJS ❤️ VueJS ❤️ Preact ❤️ jQuery

You can find all repositories here:

### Plain Javascript

The core library, every specific library wraps a component around this project.

[**tsParticles**](https://github.com/matteobruni/tsparticles)

#### What is tsParticles?

If you don't know this project, well... It's what particles.js should be if that project wasn't abandoned years ago. Lots of new features, many bugs fixed (particles.js has bugs, yes) and actively maintained.

Want to see some cool new features?

Check out this collection: https://codepen.io/collection/DPOage

### jQuery

The jQuery plugin for tsParticles

[**jquery-particles**](https://github.com/matteobruni/jquery-particles)

### VueJS

The VueJS component created with tsParticles

[**particles.vue**](https://github.com/matteobruni/particles.vue)

### ReactJS

The official ReactJS component wrapped around tsParticles

[**react-tsparticles**](https://github.com/matteobruni/react-tsparticles)

### Preact

The official Preact component wrapped around tsParticles

[**preact-particles**](https://github.com/matteobruni/preact-particles)
Resource: The Complete Guide to Centering in CSS
Tags: css, webdev
Published: 2020-05-17 21:51:24

> _This is the eleventh post in a series examining modern CSS solutions to problems I've been solving over the last 13+ years of being a frontend developer. Visit [ModernCSS.dev](https://moderncss.dev) to view the whole series and additional resources_.

<!-- [Flexbox, Grid, Layout, Resources] -->

How could I write a series called "Modern CSS Solutions _to old CSS problems_" without covering the classic question:

> "How do I center a div?"

Well, this new resource has you covered! We'll look at 3 categories:
- Vertically and Horizontally (XY)
- Vertical (Y)
- Horizontal (X)

---

Each category shows solutions that explore using grid, flexbox, and block element layout.

Check out [the full guide](https://moderncss.dev/complete-guide-to-centering-in-css/) or jump to one of the following sections:

1. [Vertically and Horizontally (XY)](https://moderncss.dev/complete-guide-to-centering-in-css/#vertically-and-horizontally-xy)
    - [XY Grid Solution](https://moderncss.dev/complete-guide-to-centering-in-css/#xy-grid-solution)
    - [XY Flexbox Solution](https://moderncss.dev/complete-guide-to-centering-in-css/#xy-flexbox-solution)
    - [XY Alternative Flexbox Solution](https://moderncss.dev/complete-guide-to-centering-in-css/#xy-alternative-flexbox-solution)
    - [XY Centering for Block Elements](https://moderncss.dev/complete-guide-to-centering-in-css/#xy-centering-for-block-elements)
2. [Vertical Centering (Y)](https://moderncss.dev/complete-guide-to-centering-in-css/#vertical-centering-y)
    - [Y Grid Solution](https://moderncss.dev/complete-guide-to-centering-in-css/#y-grid-solution)
    - [Y Flexbox Solution](https://moderncss.dev/complete-guide-to-centering-in-css/#y-flexbox-solution)
    - [Y Centering for Block Elements](https://moderncss.dev/complete-guide-to-centering-in-css/#y-centering-for-block-elements)
3. [Horizontal Centering (X)](https://moderncss.dev/complete-guide-to-centering-in-css/#horizontal-centering-x)
    - [X Grid Solution](https://moderncss.dev/complete-guide-to-centering-in-css/#x-grid-solution)
    - [X Flexbox Solution](https://moderncss.dev/complete-guide-to-centering-in-css/#x-flexbox-solution)
    - [X Centering for Block Elements](https://moderncss.dev/complete-guide-to-centering-in-css/#x-centering-for-block-elements)
    - [X Centering for Dynamically Positioned Elements](https://moderncss.dev/complete-guide-to-centering-in-css/#x-centering-for-dynamically-positioned-elements)
Tailwind CSS for skeptics - Interactive Tailwind CSS tutorial
Tags: css, tailwindcss, javascript
Published: 2020-05-17 21:42:54

Tailwind CSS is an amazing framework, but when people first see this:

```html
<div class="md:flex bg-white bg-gray-200 rounded-lg p-6">
    <img class="h-16 w-16 md:h-24 md:w-24 rounded-full mx-auto md:mx-0 md:mr-6" src="https://via.placeholder.com/150">
    <div class="text-center md:text-left">
      <h2 class="text-lg">Erin Lindford</h2>
      <div class="text-purple-500">Customer Support</div>
      <div class="text-gray-600">erinlindford@example.com</div>
      <div class="text-gray-600">(555) 765-4321</div>
    </div>
</div>
```

Well, ... It looks horrendous, doesn't it?

Turns out it comes with a ton of great benefits and **once you try it, it's hard to go back**.

But you don't have to do it alone, I've created an interactive tutorial to walk you through the benefits, let you play with it and feel the productivity.

You can check it out [here](https://learning-by-vueing.netlify.app/tailwind/pre/). Tailwind isn't hard, in fact, the tutorial is less than 20 slides!

So if you are skeptical about Tailwind, or want to find out why it has gotten this popular, please take a look ;)