teleren/devto huggingface dataset:
A shell and GNU awk oneliner
Tags: quick, shell, awk
Published: 2020-07-28 22:56:27

---
title: A shell and GNU awk oneliner
published: true
description: 
tags: quick, shell, awk
---

I'm updating a test suite for $work, and need to handle input data with differing numbers of columns. The input is CSV files, which is fairly friendly. The number of files I've got to test my code against is extensive and I wanted to quickly figure out how many of each type I have.


Enter the one-liner:

    $ for f in *csv; do awk -F, '{END print ARGV[ARGC-1], ":\t", NF}'
    file1:      10
    file2:      11
    file3:      14
    file4:      10
    ....
    file100:     14
    $

For each file in the list, when GNU awk has read it all in and parsed it using the , as a field delimiter (the `END`), we then print the filename (`ARGV[ARGC-1]`), and the number of fields `NF`. If I wanted to print the count of the number of records (lines) in the file, I could add `NR` to the arguments to print.

I hope you found this useful.

If you want to explore GNU Awk more, the documentation is at [https://www.gnu.org/software/gawk/manual](https://www.gnu.org/software/gawk/manual/)
Hello World
Tags: introduction
Published: 2020-07-28 23:22:27

---
title: Hello World
published: true
date: 2020-07-28 22:50:02 UTC
tags: introduction
canonical_url: https://blog.pastel.codes/hello-world/
---

 ![Hello World](https://blog.pastel.codes/content/images/2020/07/logo@3x-1.png)

Hello, I'm Esther!

I'm a student developer based in the UK, studying Computer Science and Artificial Intelligence. Oh, also I do some graphic design / art as a hobby.

As a Computer Science student, I mess around with computers a lot, I really enjoy programming, the [main domain](https://pastel.codes) website was programmed from scratch using node.js, express and a couple other libraries and was the second time I programmed a project in it.

I know a mix of:

- Java
- Python 3
- HTML, CSS and JS
- Node.js
- vb.NET (unfortunately)

I want to start to learn Rust as it seems pretty good. Plus it's icon is a crab and that's neat. Docker as well as it seems to be very useful.

I'm competent with Linux, this whole server was set up by me, I taught myself about the terminal when I first got my raspberry pi which was my first venture into Linux, now my laptop runs Arch and it's great.

I do some graphic design / art, I don't know what it's classed as, it's a mix of both really, I use my background of graphic design to create pieces which help me convey emotions I cannot describe very well.

Cyber Security is another thing I'm venturing down, I have completed two boxes on hack the box, and started to go through more beginner friendly boxes on TryHackMe. Ever since secondary school I have been interested and was almost a finalist in a cyber security competition called Cyber Discovery which was a programme curated by HM Government. There wasn't enough spaces for all of us, however I was entered into a different competiton with people in the same perdicament and won which was great!

I'm planning to write up the development of my different projects and other things I find interesting here, and hopefully you might too.

Thank you for reading!
5 Things to Help You Better Understand the Web.
Tags: beginners, webdev, codenewbie
Published: 2020-07-28 22:36:10

#The Web, what a guy!
Okay, if this isn't your first rodeo with webdev then I suggest that you stop reading this post, because it won't add much to what you already know. If you're new or have only heard of webdev then you've come to the right place. Here are 5 concepts that'll make the web less confusing.

#Here's the list! :smile:

## #1 Documents
What's a document. Everything that you see on the web is a document. All of it, videos, pictures, and text are all visible because they're displayed through the document. 
>So Youtube is a document?

What you see is, it's likely created using html, javascript, and css on the client-side for the looks, but all the data management and other server-side operations aren't actually part of the document. The document is mostly the structure, so the design, and everything other than the info. So the comments, videos, and recommended are all from the database. So everything that you see is a document.

## #2 Client-side
The client-side is your computer. That's all. It means that there is no interaction with a server. It means vanilla js, no node, no deno, no server runtime.

## #3 SPA's
Single Page Application is what SPA stands for. SPA's mean that the whole website or app only uses one html document. It doesn't actually mean everything, your styling, JavaScript and html are on the same document. It means that the separate pages on your app all exist on one html document. SPA's aren't really an efficient way of creating websites unless you're using a JS framework that is component based. That means that the framework is built to create DOM elements that can be embedded into the html.

## #4 HTTP
HTTP stands for Hyper-Text Transfer Protocol. Hyper-Text in directly refers to markup langs, like html, and Transfer Protocol means that it's the procedure to move the markup from one place to another. In this case from a server to your client(computer, or mobile device).

## #5 JSON
JSON stands for JavaScript Object Notation. If you're familiar with objects in JavaScript think of an object where everything except the curly-braces, commas, the opening and closing for other list types, and colons are double quote strings. It's a way to store info. Usually JSON is stored on web-servers. JSON is probably the most common way for websites to store their info and retrieve it easily.

That's that. Hope you learned something.
Generate .mobileconfig files to make mailbox set-up a breeze for your clients
Tags: ios, macos, javascript, tutorial
Published: 2020-07-28 22:23:16

https://mobileconfig.vercel.app/

Ever heard of `.mobileconfig` files?

`.mobileconfig` are small `.plist` files that can be used to deploy a configuration payload for various settings and apps on iOS and macOS devices.

Traditionally, they're used to set-up mailboxes that utilize custom a custom domain name or custom IMAP hostnames without the need to manually enter your mailbox username, password, and other data on each device.

This make is very useful for deploying a mailboxes to multiple devices with ease, and makes it **extremely easy to deliver access to mailboxes you host for you clientele, employees, or partners.**

They can skip all the complex manual configuration and simply tap on the `.mobileconfig` file you've sent them to automatically configure their inboxes.

![Generated `.mobileconfig` file](https://dev-to-uploads.s3.amazonaws.com/i/0bxtlyy1i64lbuyl9lhz.png)

I found myself manually creating `.mobileconfig` files too ofter, so [I built a solution I'd like to share with the world](https://mobileconfig.vercel.app/).

## Here's how you can generate `.mobileconfig` for your mailboxes.

https://mobileconfig.vercel.app/

![mobileconfig.vercel.app](https://dev-to-uploads.s3.amazonaws.com/i/xtd6qam3hhbpap7lw01v.png)

Utilizing the web-app is quite simple. Just enter your mailbox credentials including your IMAP + SMPT hostnames, usernames and passwords, and the intelligent super-computer robot will generate your file and present you with a button to download it or a button to copy the URL, should you chose to send it to someone.

The web-app also features a API, which allows you to enable your app to generate `.mobileconfig` files programatically.

![API Preview](https://dev-to-uploads.s3.amazonaws.com/i/2ccaw68wb2rcvhrh5fd4.png)

You can also preview the `.plist` file live on the website after it's been generated. Take a moment to read through and learn how they work. You could copy the contents of the preview into your own `email.mobileconfig` and it'll work just like the one the web-app offers for download.

The absolute best part about the web-app is that it **does not store anything** and **does not have a database**, so you can live 100% confidently that your data won't ever be misused. The source of the website + API is open source [available on GitHub](https://github.com/al5ina5/mobileconfig).

Now you're a master of all things email.

Never again spend 45 minutes explaining to your grandma how to set-up her custom @familyname.com email inbox you've set up for her.

I want to mention my happiness with the services at [Vercel](https://vercel.com/) which make this little app possible. The website uses Next.js and Vercel's Serverless Functions to make this possible.

Do yourself a service and check out [Vercel](https://vercel.com/), and while you're at it... why don't you follow me on [Twitter](https://twitter.com/al5ina5)?

<3
Error "Dart SDK not configured" al importar un proyecto de Flutter desde git
Tags: flutter, dart, git
Published: 2020-07-28 21:58:30

## Síntomas

Si se encuentran con este error, es muy probable que sea porque están usando Android Studio y no han configurado correctamente (o en absoluto) el SDK de Flutter (Si, de Flutter, no de Dart).

Otro signo del mismo problema es que cada vez que crean un nuevo proyecto de Flutter, tienen que especificar manualmente la ruta al SDK de Flutter.

## Solución

Acceder a `File > Settings > Languages and Frameworks > Flutter` e indicar la ruta al SDK de Flutter en `Flutter SDK path`.

![Flutter SDK path settings](https://dev-to-uploads.s3.amazonaws.com/i/2coqg2ankmmv6oc3wbvx.png)

En mi caso, uso Ubuntu 20.04 e instalé el SDK de Flutter mediante snap, por lo que mi ruta es `/home/usuario/snap/flutter/common/flutter`.

Luego de aceptar los cambios, abrir el archivo `pubspec.yaml` y tocar en `Pub get` 

![Pub get](https://dev-to-uploads.s3.amazonaws.com/i/3c5ji1nr1egdze3abifn.png)

Luego, abrir cualquier archivo .dart y actualizar las dependencias tocando en la notificación de la parte superior del editor.

![Get dependencies](https://dev-to-uploads.s3.amazonaws.com/i/exaj000xpol3ysgsya0m.png)

FINALMENTE, porque aparentemente todavía es 1995, cerramos el proyecto y volvemos abrirlo y las notificaciones y errores (relacionadas con este problema) deberían desaparecer.
Guru: The productivity app that understands you
Tags: productivity, startup
Published: 2020-07-28 21:29:29

---
title: Guru: The productivity app that understands you
published: true
description: 
tags: productivity, startup
cover_image: https://images.pexels.com/photos/4065864/pexels-photo-4065864.jpeg?auto=compress&cs=tinysrgb&dpr=3&h=750&w=1260
---
We’re setting out to build the best productivity app ever, a revolutionary way of managing our lives.

We’ve used many productivity apps over the years (todo apps, habit building apps, outliner apps, calendar apps) and while we appreciate the benefits they’ve given us we have still found them lacking in one way or another.

We want an app that:
Understands us as individuals and gives us a personalised experience.
Helps us to focus on what is most important to us.
Proactively tries to help us rather than passively following our instructions.
And teaches us about productivity as we use it.

Please help us by answering [a few questions](https://my.helio.app/t/01EEB1V45NRWHHJ57G72YHQVYB) so that we can help you to have a happier, more productive life.
Acknowledgement
Tags: kindness, acknowledgement, recognition
Published: 2020-07-28 21:25:31

---
title: Acknowledgement
published: true
description: 
tags: ["kindness", "acknowledgement", "recognition"]
//cover_image: https://direct_url_to_image.jpg
---

Just got a huge smile from the Amazon driver as he was walking back to his Sprinter, by telling him:

"In case nobody told you today, you're a hero, man."

He even pulled down his mask (20 feet away) to show me that he was beaming.

And they truly are heroes. Make sure they know it.
Just to get the ball rolling
Tags: beginners
Published: 2020-07-28 21:12:14

So, I still don't have much to say, this is mostly my "Hello world" type of post. 

I'm still finishing my studies and will be interning around March, as long as the Earth survives this crazy year. Hopefully I get an offer after the internship but my hopes are at an all time low considering the global pandemic and economic recession. 

Throughout these months without classes I've been pushing myself to get deeper into Java, which I'm finding very interesting and easy to understand and will be dipping my toes interacting with a GUI shortly. I can't wait for it, I've been doing algorithms for too long without actually using them outside the exercises. 

Until then, I'll stay around and learn from other people. 

Each one teach one. 
33.
The ES6 features that are popular to be asked in an interview!
Tags: javascript, codenewbie, webdev, 100daysofcode
Published: 2020-07-28 21:00:25

This post is a master ledger of all articles that I have written about ES6, so that, I can refer to them at a future time whenever I'm interviewing.

# ES6 Features
- [Arrow Functions](https://dev.to/skaytech/es6-arrow-functions-2m0l)
- [Var, let & const](https://dev.to/skaytech/the-war-var-vs-let-const-2a7l)
- [Destructuring](https://dev.to/skaytech/es6-understanding-destructuring-49np)
- [Promises](https://dev.to/skaytech/async-functions-chapter-2-promises-1c6i)
- [Async/Await](https://dev.to/skaytech/async-functions-chapter-3-async-await-89)
- [Spread Operator](https://dev.to/skaytech/es6-spread-operator-3ced)

# To Be Continued...
... I'll keep updating the master ledger, as I write more articles related to ES6 features.

If you did come here for interview prep, then you might also be interested in the following articles which are popular interview questions.

- [Understanding Closures](https://dev.to/skaytech/understanding-closures-1501)
- [Understanding Hoisting](https://dev.to/skaytech/understanding-hoisting-b48)
Day 183: The Feeling
Tags: hiphop, code, coding, lifelongdev
Published: 2020-07-28 20:44:20

_liner notes_:
- Professional : Pretty productive day. Had a couple of meetings. Made some changes to the tutorial based on the feedback from external developers. Did the PR and got it merged. Hoping to do one more walk through with another developer later this week with the new changes. Working on this bug in a Web Component. I think the problem may be that the element is being re-rendered and setting a value I need back to zero. Going to help with a virtual meetup tonight.

- Personal : Worked on my side project last night. Been trying to fix this issue with rendering text on a canvas. I'm using the text as inbetween scenes for the video being broadcasted. I need the canvas to be 1280 x 720 and the text to be on the side, got that working. It's just when I do the preview in the dashboard, it may not be 1280 x 720 and needs to be resized and the text moved in, but if I do that, I think the dimensions sent to the broadcasted video may change as well. I'll have to test it out. Also looked at the window covering I put in the van yesterday. They are still up, but the spray adhesive I used to wrap around the cloth and attach to the back came undone. I had the feeling this may happen and ordered some super strong tape that came today. Will try it tomorrow. Last night, I watched this movie called "Detective Dee: The Four Heavenly Kings". Really dope Kung-Fu flick with some pretty amazing visuals.

![View of a dock with a few boats and the mountains in the background in Pragser Wildsee, Italy](https://dev-to-uploads.s3.amazonaws.com/i/a93q3ig3otrtfdioqkug.png)

Going to help with an online meetup later, so I'm writing my blog post now because I'll probably be really tired afterwards. Going to get some work in on my side project.

Have a great night!

peace piece
Dwane / conshus
https://dwane.io / https://HIPHOPandCODE.com
{% youtube zc3SUQ_6wFA %}
2020 goals so far
Tags: watercooler, webdev
Published: 2020-07-28 20:16:18

At the beginning of the year I set myself [5 goals for 2020] (https://dev.to/brettjephson/5-goals-for-2020-2kg2). I had meant to write this update halfway through the year but it has been delayed. Better late than never.

What a difference 7 months makes. All the way back at the beginning of January, when no one was talking about covid-19, I set myself the following 5 goals for the year ahead:
* **Less commuting** - work from home at least 3 of 5 work days every week
* **Music** - master 6 bluegrass banjo songs
* **Reading** - read 26 books
* **Writing** - write 12 technical posts
* **Drawing** - draw 3 portraits


## Less commuting

This one was already in motion when the world completely changed. I had requested and been approved for working from home 3 days a week to help with child care. Then lockdown hit and the whole company have been working from home ever since. 

*Status:* Achieved

## Music

This is still in progress. I've improved my banjo playing and I play nearly every day. Even if it is for a few minutes some days. So far I have Cripple Creek going at a decent pace, I'm improving the speed of Worried Man Blues and then have a few songs I'm trying to improve at: Foggy Mountain Breakdown, John Hardy, Man of Constant Sorrow and Old Joe Clark. If I can improve my pace a bit I might still make that goal.

*Status:* In progress - 2 / 6

## Reading

This year I started reading at a much higher pace than last year. With audio books and some graphic novels, I've already hit my 26 book goal for the year. My stretch goal will be to keep that up for the rest of the year and hopefully hit about 50 books for the whole year.

*Status:* Achieved

## Writing

You win some and you lose some. My reading progress has been a win but my writing has not been great. 

I haven't written anything meaningful for a while and certainly haven't kept up a good routine. Even my twitter activity has slowed recently. I started the year with 3 articles in quick succession and this post is an attempt to kickstart things.

*Status:* In progress - 4 / 12

## Drawing

My goal for the year is to draw 3 portraits.

Not kept up the habit of drawing regularly. I mostly just do some drawing with my daughter and haven't really progressed with portraiture in the way I'd have liked.

Need to look at how I can add this into my daily habits.

*Status:* Not progressed - 0 / 3

### Summary

The year has obviously been a very strange one. Very difficult for everyone and really tragic for many. In light of the situation, this all feels pretty trivial but all-in-all my progress on these goals has been good.

I've probably had some spare time that wasn't expected due to lockdown. In particular, I have found that playing the banjo has definitely helped me find something calming to get through these limbo days. Not sure my partner and daughter would feel the same.
So richtest du deinen Shopify Newsletter mit Sendinblue ein
Tags: onlinemarketing, email, newsletter, sendinblue
Published: 2020-08-19 13:50:13

---
title: So richtest du deinen Shopify Newsletter mit Sendinblue ein
published: true
date: 2020-07-28 20:11:23 UTC
tags: OnlineMarketing,email,newsletter,Sendinblue
canonical_url: https://j0e.org/sendinblue-shopify/
---

![sendinblue integration in shopify](https://j0e.org/wp-content/uploads/2020/07/sendinblue-shopify.png)

Erfolgreicher Shopify Newsletter: Lerne wie du das Shop-System Shopify mit dem Mail-System Sendinblue verbindest, um …



Der Beitrag [So richtest du deinen Shopify Newsletter mit Sendinblue ein](https://j0e.org/sendinblue-shopify/) erschien zuerst auf [WordPress und Marketing](https://j0e.org).
React Native Simulator Debugging Shortcut
Tags: reactnative, react
Published: 2020-07-28 20:09:23

If you ever developing react native apps but don't know how to open debug mode in IOS/Android Simulators.
Here is the shortcuts:

![Image of Simulator](https://com-shindigital.s3.amazonaws.com/blog/Multiplatform.jpg)

- On **IOS Simulator** hover over the screen and press: CMD + D
- On **Android Simulators** hover over the screen and press: CMD + M

Extras: 
Use console.log or [react-native-debugger](https://github.com/jhen0409/react-native-debugger)
- After downloading and opening of react-native-debugger press CDM + T to connect to your app at specific port (ex: 19001)
- Then go any simulator and again press CMD + D or CMD + M and choose **debug remote JS** option.
What do you put on your website?
Tags: discuss, personal, webdesign, website
Published: 2020-07-28 19:55:54

I love my personal website, and I’m sure you love yours. My biggest goal would be to leave social networks and [silos](https://indieweb.org/silo) in favor of owning my content. I want to make my website my home on the Web, a place where people (even those without social network accounts) can find me. At this point, a question bother me: what do you think should be put on a personal website? Can professional content be put side by side with stuff about personal and private life? Would a website entirely focused on professional content be more “respectable” than one that stores everything about someone? Do you think a website should be focused just on one of those topics? Do you think someone should limit the details about his/her private life? I’d really like to get feedback from you!
Habit tracker API: Updating data
Tags: 100daysofcode, javascript, mongodb
Published: 2020-07-28 19:48:56

A simple semantic error cost me so much trouble [yesterday](https://dev.to/mtee/habit-tracker-api-get-post-58a3). I simply had to switch res and req in the get arrow function ~ _I owe the observation to @drumzminister: appreciated._
```javascript
.get((req, res) => res.json(req.habit))
```
Get by Id function is officially working.

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

I handled [updating data](https://dev.to/mtee/updating-data-put-patch-and-delete-http-verbs-2e6f):

* Put function
```javascript
.put((req, res) => {
    const { habit } = req;

    habit.title = req.body.title;
    habit.description = req.body.description;
    habit.done = req.body.done;

    habit.save((err) => {
      if (err) {
        return res.sendStatus(404);
      }
      return res.json(habit);
    })
  })
```
* Patch function
```javascript
.patch((req, res) => {
    const { habit } = req;

    if (!req.body._id) {
      delete req.body._id
    }
    Object.entries(req.body).forEach((property) => {
      const key = property[0];
      const value = property[1];
      habit[key] = value;
    })

    req.habit.save((err) => {
      if (err) {
        return res.sendStatus(404);
      }
      return res.json(habit);
    })
  })
```
* Delete function
```javascript
 .delete((req, res) => {
    req.habit.remove((err) => {
      if (err) {
        return res.send(err);
      }
      return res.sendStatus(204);
    });
  });
```
And In the spirit of experimenting I added data to my database from a json file: 
![Image](https://dev-to-uploads.s3.amazonaws.com/i/xz5zrclbdgqn83c2flx8.png)

_I love days like this, ending a day with no red lines!_

_Day 12_