teleren/devto huggingface dataset:
Reaching Out - Worries About my Journey as a Developer so Far
Tags: career, help, webdev
Published: 2019-04-15 17:08:53

---
title: Reaching Out - Worries About my Journey as a Developer so Far
published: true
description: Reaching out for help on finding my bearings in the developer community. Reaching out for social inclusion in the developer community.
tags: #career #help #webdev
---

Hi fellow Devs. I'm nearing the completion of my Computer-Science degree and am feeling rather lost, worried, and lonely in the world of development. I started college at 29 to change my career path from food service and live music to becoming a web/application developer. When I was younger I decided to delay my college education until later in life. Some reasons included family finance, having a secure job and a successful band which was allowing me to live my youthful dream of touring in a band and bringing my creative output to people. I went and toured the world with my punk band and made great connections there and found a lot of fulfillment and still preform from time to time. However, the music scene operates too late at night with too much partying so I'm off boarding from it quite a lot. This is leaving a huge scary void in my life.

My decision to attend college for CS was not an arbitrary choice. I began writing web sites in 1999, made Quake2 maps and stayed active with graphic design work in my adventures as a musician. We made all our art and products ourselves, 100% DIY. I love creating things in the digital domain and have had some success in doing so. I've been actively working on translating all the skills I've gained throughout my life to software development, which has shown some positive results from what I can measure.

Throughout my education I have managed to transition into a part-time IT job and am getting occasional freelance work as a web developer/digital designer. It seems like I've learned a lot of really valuable software development skills and theories, and have become a far better developer and problem solver due to my education. However, something feels like it's missing.

After doing some thinking I figured out what it is that is missing. I'm in need of a mentor. I am eager to be part of a community. I want to get involved! I have more time as my classes are mainly electives. I'm finding it difficult to navigate it all. I'm a social person and love being part of communities.

Any advice would be greatly appreciated.
The 7 Most Popular DEV Posts from the Past Week
Tags: top7
Published: 2019-04-15 17:08:11

---
title: The 7 Most Popular DEV Posts from the Past Week
published: true
description: A round up of the most-read and most-loved contributions from the community this past week.
tags: icymi
cover_image: https://thepracticaldev.s3.amazonaws.com/i/sfwcvweirpf2qka2lg2b.png
---
Every Monday we round up the previous week's top posts based on traffic, engagement, and a hint of editorial curation. The typical week starts on Monday and ends on Sunday, but don't worry, we take into account posts that are published later in the week. ❤️

#1. DIY primitive surveillance 🔍

Building a little surveillance system with a Raspberry Pi 3 B+ and a webcam that was laying around.  A quick and practical project.

{% link https://dev.to/nickitax/how-to-build-your-own-primitive-surveillance-system-with-raspberry-pi-in-less-than-one-hour-5ggl %}

#2. An inspirational AMA 👏

Arit Amana shares their story of juggling a career shift, coding bootcamp, and newborn!  It's 80+ comments of practical advice and perspective.

{% link https://dev.to/msarit/i-switched-careers-to-software-engineering-in-my-late-30s-while-nursing-a-newborn-ask-me-anything-1bbe %}

#3. Buzzword Bingo

While Chris jokes "how's that for a lot of buzzwords" in the intro, the article _does_ show how to dockerize microservices, combine them into a GraphQL API, and then query from a serverless function. 

{% link https://dev.to/azure/learn-how-you-can-build-a-serverless-graphql-api-on-top-of-a-microservice-architecture-233g %}

#4. The Great Migration 🐧

Helen shares the experience of migrating a SQL Server database to AWS Aurora.  From growing pains, to design challenges, to testing and the go-live process.

{% link https://dev.to/helenanders26/the-great-migration-from-sql-server-to-aws-aurora-4pfo %}

#5. What is UX Engineering?

Emma breaks it all down, from where UXEs fit, to what skills/qualifications they might need, to interviewing and more.

{% link https://dev.to/emmawedekind/ux-engineering-3hem %}

#6. That "I will never be good enough" feeling

Damien takes us along for the ride as they attend an open-source meetup in SF.  An incredibly relatable story of belonging, imposter syndrome, and finding confidence to lean in as part of the community.

{% link https://dev.to/dlionz/what-am-i-doing-here-1lg4 %}

#7. A Bootcamp Primer

Donita shares five observations and tips for people considering a bootcamp.  The write-up touches on community, resources, career prep, and more.

{% link https://dev.to/donita/5-things-no-one-tells-you-about-going-to-a-coding-bootcamp-40c0 %}

_That's it for our weekly wrap up! Keep an eye on dev.to this week for daily content and discussions...and if you miss anything, we'll be sure to recap it next Monday!_
JWT in dotnet core
Tags: jwt, dotnetcore, security, api
Published: 2019-04-15 16:25:38

One of the ways to secure the API's is using JWT. This is how it works, We will create a controller with an AllowAnonymous action. Make sure you have Authorize attribute over all of your controllers otherwise you have a potential loophole dangling in there.

![jwt flow diagram](https://thepracticaldev.s3.amazonaws.com/i/rr05xjzsnoi44ehhz8sx.png)

Here is the Action method

```
[AllowAnonymous]
[HttpPost]
public IActionResult Login([FromBody]User user)
{
    var authUserToken = _loginService.Login(user.Username, user.Password);

    if (authUserToken == null)
        return BadRequest(new { message = "Username or password is incorrect" });

    return Ok(new { AccessToken = authUserToken });
}
```
The login service is another entity which actually generates the Web Token using [Microsoft.IdentityModel.Tokens](https://www.nuget.org/packages/Microsoft.IdentityModel.Tokens/)

```
private string GenerateJSONWebToken(User user)
{
    //secret token and the algorithm to use
    var secretToken = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_settings.SecretToken));
    var credentials = new SigningCredentials(secretToken, SecurityAlgorithms.HmacSha256);

    // creating a with one hour validity. 
    var token = new JwtSecurityToken(_settings.TokenIssuer,
    null,
    null,
    expires: DateTime.Now.AddHours(1),
    signingCredentials: credentials);

    return new JwtSecurityTokenHandler().WriteToken(token);
}
```

To generate token we need to pass a secret string which ideally should be long enough otherwise, it will fail to generate. Here we are creating a token which is valid for 1 hour.

The generated token will be in this format `xxxxx.yyyyy.zzzzz` which is equivalent to header.payload.signature. You can verify the generated and the signature using [jwt.io](https://jwt.io/).

Any request to your API now should send this below header

`Authorization:Bearer {{jwt}}`

Which will be intercepted by the `Authorize` attribute and verified.

For Authorize attribute to work, we need to say dotnetcore using ConfigureServices like this in StartUp.cs file

```
services.AddAuthentication(a =>
{
    a.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
    a.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
}).AddJwtBearer(x =>
{
    x.RequireHttpsMetadata = false;
    x.SaveToken = true;
    x.TokenValidationParameters = new TokenValidationParameters
    {
        ValidateIssuerSigningKey = true,
        IssuerSigningKey = new SymmetricSecurityKey(secretToken),
        ValidateIssuer = false,// validate the server that generates the token
        ValidateAudience = false//validate the user who generates token is authorized
    };
});
```

Photo by ZSun Fu on Unsplash
Subtle zoom, Wikipedia search, Pre-load images | Module Monday 36
Tags: showdev, opensource, webdev, javascript
Published: 2019-04-15 16:04:13

---
title: Subtle zoom, Wikipedia search, Pre-load images | Module Monday 36
published: true
description: Module Monday 36
tags: showdev, opensource, webdev, javascript
cover_image: https://res.cloudinary.com/component/image/upload/b_rgb:ffffff,c_lpad,h_350,w_800/v1555282494/subtle-zoom_p4eghj.gif
canonical_url: https://guide.anymod.com/module-monday/36.html
---

## Open-source web modules you can use anywhere

All the mods below are open source and free to use in any project you choose. [Anymod](https://anymod.com) lets you quickly add features to any website or web app.

Click a mod to see it in action along with its source code.

## Wikipedia search
A module for searching Wikipedia's API from any page.
<a class="btn btn-sm" href="https://anymod.com/mod/bamlln">View mod</a>
<a href="https://anymod.com/mod/bamlln">
  <img src="https://res.cloudinary.com/component/image/upload/v1555282494/wikipedia_rdv3o6.png"/>
</a>

## Subtle zoom gallery
Beautiful, responsive gallery to add anywhere, inspired by Katherine Kato.
<a class="btn btn-sm" href="https://anymod.com/mod/bamlrn?v=20">View mod</a>
<a href="https://anymod.com/mod/bamlrn?v=20">
  <img src="https://res.cloudinary.com/component/image/upload/v1555282494/subtle-zoom_p4eghj.gif"/>
</a>

## Preload images
Add image URLs to preload before the next page in your flow.
<a class="btn btn-sm" href="https://anymod.com/mod/dkrnlk/readme">View mod</a>
<a href="https://anymod.com/mod/dkrnlk/readme">
  <img src="https://res.cloudinary.com/component/image/upload/v1555282494/preload_zu3z6m.png"/>
</a>

## Sidenav menu
Trusty side navigation for quick links.
<a class="btn btn-sm" href="https://anymod.com/mod/aladob">View mod</a>
<a href="https://anymod.com/mod/aladob">
  <img src="https://res.cloudinary.com/component/image/upload/v1555282494/sidenav_bat04y.gif"/>
</a>

## Simple footer
A colorful footer with the basics.
<a class="btn btn-sm" href="https://anymod.com/mod/dkrnok">View mod</a>
<a href="https://anymod.com/mod/dkrnok">
  <img src="https://res.cloudinary.com/component/image/upload/v1555282493/footer_fympfs.png"/>
</a>

<hr>

I post new modules [here](https://dev.to/tyrw) every (Module) Monday -- I hope you find them useful!

Happy coding ✌️
DevCast Demos launched!
Tags: demo, integration, api, webmethods
Published: 2019-11-05 10:01:15

---
title: DevCast Demos launched!
published: true
tags: #demo, #integration, #api, #webmethods
canonical_url: http://techcommunity.softwareag.com/techniques-blog/-/blogs/devcast-demos-launched-
---

# Get to know Software AG’s new webinar series

DevCast Demos is Software AG’s new webinar series focusing on powerful **integration and API** strategies so your organization can be “innovation-ready.” These webinars provide live, deep-dive software demonstrations to empower webMethods developers and partners with tools, tips and tricks for their projects.

Our first DevCast was devoted to unifying APIs and microservices across hybrid architectures. Some specifics included:

- Automating DevOps across both cloud and on-premises
- Reusing utility services across both cloud and on-premises
- Implementing flexible deployment of custom code (packages) from on-premises to cloud and vice versa

Going forward, DevCast Demos will also focus on SaaS-based products, such as webMethods.io API, webMethods.io B2B and webMethods.io iPaaS.

You’ll find DevCast Demos webinar posted on Software AG’s [events](https://www.softwareag.com/corporate/company/events/default.html) page.

If you missed the series opener, “Driving Digital Transformation with a Single, Unified API and Microservices Platform,” [watch it now](https://www.youtube.com/watch?v=liTEXI0dxWs&list=PL3HwmrSYjxiMsxqulgV8PxJY9flm8EC8K) and be sure to [subscribe to our YouTube channel](https://www.youtube.com/channel/UCWWOU4CbwPwkWtntoM0jlug).

 

<iframe allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="" frameborder="0" height="400" src="https://www.youtube.com/embed/liTEXI0dxWs" width="700"></iframe>
BASHing through the terminal
Tags: bash, automation, tutorial
Published: 2019-04-15 14:34:34

My fascination with Bash Shell Scripting started just 3 months ago. Prior to that, I never had any knowledge with what and how to bash. It has proven to be a powerful tool to help you automate basic routine tasks.

My first encounter with bash was when my lead developer told me to create a simple cronjob to execute a SQL script to import into the database. With limitations from the SQL like variable value replacement from a random source, SQL just couldn't do the job. That is when I "discovered" bash shell scripting. From then on, my journey with bashing through the terminal started.

As a UNIX Linux user, I do basic shell commands like `ls`, `sudo` or `cd`. I know just the ordinary commands from my bachelors but never have I thought you could do all sorts of basic algorithm constructs just like how a programming language would from handling files, array declaration, string replacement and down to looping, conditional statements and the like.

Learning to Bash, by `bash` I mean `shell scripting`, is intimidating but it is actually easy than it looks. Though, I must say developers with limited programming background might not be for bash. Learning Bash has a shallow learning curve.

Shell scripting allows us to extensively use the shell's abilities and automate a lot of tasks that would otherwise require long and complicated commands. It really does save time when you automate routine tasks like monthly backup compression or SQL import.

This article is the first part to my Bash tutorial posts. I hope you will not only enjoy but also will learn a thing or two from my Bash Shell Scripting tutorials soon.

But before you go, have you used Bash Shell Scripting yourself?
Spinning Up InfluxDB 2.0 (Alpha) with Docker
Tags: influxdb, docker
Published: 2019-04-15 14:27:56

**Warning**: InfluxDB 2.0 (Alpha) should **NOT** be used for any production workloads.

While InfluxData, the company behind InfluxDB, does not provide packages for alpha builds; we do run our own alpha's for various testing and performance purposes. For this, we provide a public Docker image through [Quay.io](https://quay.io).

## Getting Started

### Running with Docker

```shell
docker container run --port 9999:9999 quay.io/influxdb/influxdb:2.0.0-alpha
```

### Running with Docker Compose

```yaml
version: "3"

services:
  influxdb:
    image: quay.io/influxdb/influxdb:2.0.0-alpha
    ports:
      - "9999:9999"
```

### Persistance

If you need to persist your database across container restarts, you may feel free to add a volume mount directory `/root/.influxdbv2`.

## Configuring InfluxDB 2.0 (Alpha)

Now that you have a container running, you'll need to configure things. InfluxDB 2.0 is different from previous releases in that authentication cannot be ignored or disabled. InfluxDB 2.0 is also multi-tenant, which means you'll need to specify an organisation for your user during setup.

### Using the GUI

You can configure everything through our GUI, using [https://localhost:9999](https://localhost:9999).

### Using the CLI

You can configure everything through our CLI, though you'll need to get "inside" the container first.

```shell
# Docker
docker container exec -it container_name bash

# Docker Compose
docker-compose exec influxdb bash
```

Now that you're inside the container, you can use our `setup` command to configure everything interactively:

```shell
influx setup
```

If you'd like to do this through a script, you can also use the command line flags:

```shell
Flags:
  -b, --bucket string     primary bucket name
  -f, --force             skip confirmation prompt
  -h, --help              Help for the setup command
  -o, --org string        primary organization name
  -p, --password string   password for username
  -r, --retention int     retention period in hours, else infinite (default -1)
  -u, --username string   primary username
```

#### API Token

Specifying a token during setup will also allow you to set the API token for future requests. Omitting this will have one generated for you and stored in `/root/.influxdbv2/credentials` (Inside the container).

You can specify the token as such:

```shell
-t, --token string   API token to be used throughout client calls
```

---

That's it! Now you've got a working InfluxDB 2.0 ready for data.

Have fun!
GitHub Pull Request Comments Navigator
Tags: github, chromeextensions, webdev, productivity
Published: 2019-04-15 14:24:49

---
title: GitHub Pull Request Comments Navigator
published: true
description: Add an option to easily navigate through comments in any PR with this Chrome Extension
tags: GitHub, ChromeExtensions, webdev, productivity
---

Hello Devs, 

I’ve built something during the weekend. 

Add an option to easily navigate through comments in any PR with this Chrome Extension.

https://www.producthunt.com/posts/github-pull-request-comments-navigator

![](https://thepracticaldev.s3.amazonaws.com/i/9yow2l4g3tl1f324fr0c.jpg)

See it in action below.

![](https://thepracticaldev.s3.amazonaws.com/i/5wcw8czshp717ej2ooxq.gif)
Generating Passive Supplemental Income Part 2
Tags: business, income, tech, finance
Published: 2019-04-15 14:02:09

---
title: Generating Passive Supplemental Income Part 2
published: true
description: Part 2 of a series on how I generate extra income as a primarily WFH software developer
tags: business, income, tech, finance
cover_image: https://cdn.earnwithdrop.com/assets/share-facebook2-754567b006b2092f968690812310d50ee04616018662f16a19b3ff015517a4b3.jpg
---

## [$ ICMY: Find Part 1 here! $](https://dev.to/tevko/generating-passive-supplemental-income-part-1-4fb1)

Part 2: [Drop](https://www.earnwithdrop.com/) is an app that allows users to connect debit and credit cards in order to earn points on various transactions.

To be completely honest, I don't love the app. It's buggy, there's no web interface, and sometimes points get stuck "pending" for all eternity. But that hasn't stopped me from earning hundreds of dollars on the platform (more than with [Robinhood](https://share.robinhood.com/timothe535)!).

**The premise is simple:** After connecting your cards, certain transactions with Drop partners earn you points that can be redeemable as gift cards (Which you can use or [sell directly for cash](https://www.raise.com/raise-rewards/TEVKO6758)). This is an easy way to quickly generate income, as all you need to do is set up the profile, link your cards, and watch your points balance grow.

Points don't expire, which means that if you create an account and forget about it, you'll be greeted with a very large points balance next time you log in. (This may or may not have happened to me and may or may not have resulted in a few hundred dollars worth of Amazon and Starbucks giftcards). I'm currently sitting on over 50k points, the bulk of which have come from Uber, Starbucks, and Seamless transactions.

The app provides an easy way to generate a few extra hundred dollars per month if used correctly, by doing nothing more than connecting your credit / debit cards, and leaving it alone to watch the points accumulate. There are plenty of ways to accumulate extra points, including a generous referral program.

Speaking of which, if you decide to sign up, using the referral code **dadzf** will get you 5,000 points (worth $5) as soon as you link your first card.

![](https://i.imgur.com/ZxmPFNx.png)
How do I keep track of the vocabulary of my code?
Tags: help
Published: 2019-04-15 14:01:00

---
title: How do I keep track of the vocabulary of my code?
published: true
tags: help
---

I often find code I've written that uses different vocabulary for the same things. For example, we have a term `variant` (referring to a variant of our product), but sometimes it's written as `variation`. It's an absent-minded, honest mistake, but once it's in and used in different interacting codebases, it's really hard to get rid of.

Another common source of confusion is using the same word to mean different things. If I sat down I bet I could find at least three completely different usages of the term `build` (just from the top of my head, it could mean: a configuration, a build artifact, a ci job, a particular run of a ci job - hey, that's four already!). 

So my question is: how do I improve this? I'd like to be mindful of my word choices because I feel like it has a huge impact on the readability and maintainability of the code (not only positively: when it's less than ideal, those metrics suffer, too). At the same time, working on 6-7 interacting codebases, it feels impossible to keep all the wording the same. Any advice?
Weekly Coding Challenge - Week #7 - Portfolio
Tags: challenge, html, css, portfolio
Published: 2019-04-15 13:40:05

---
title: Weekly Coding Challenge - Week #7 - Portfolio
published: true
description: Week #7 of the Weekly Coding Challenge program - Portfolio
tags: challenge, html, css, portfolio
canonical_url: https://florin-pop.com/blog/2019/04/how-to-create-a-portfolio/
cover_image: https://www.florin-pop.com/static/85aebf1860eb854f43d4ffe0e0cf0349/ff993/how-to-create-a-portfolio.png
series: Weekly Coding Challenge
---

Theme of the week: **Portfolio**

### Description

As a developer it is highly recommended to have a portfolio with some of the projects that you've been working on. I say some, because maybe not all of your projects are worthy to be put in a portfolio. In order to impress your future employer or client, you should put in your portfolio only your best works.

## Useful Resources

Check out my submission for this challenge: [Portfolio](https://florin-pop.com/blog/2019/04/how-to-create-a-portfolio/).

See all the submissions in this [Codepen Collection](https://codepen.io/collection/nZywwd).

Are you interested in joining the challenge? :smiley: Read [The Complete Guide](https://www.florin-pop.com/blog/2019/03/weekly-coding-challenge/) to find out how. Don't forget to share your creation! :wink:

Happy Coding! :innocent:
Trunk.css - Lightweight framework for grids.
Tags: css, html, webdev
Published: 2019-04-15 13:38:15

---
title: Trunk.css - Lightweight framework for grids.
published: true
description: Trunk is a lightweight css framework that aims to achieve responsive grid layout. Trunk follows the same method as that of materialize to achieve this.
tags: css,html,webdev
cover_image: https://thepracticaldev.s3.amazonaws.com/i/o93x8gayhy1ce7rgt072.png
---

A lightweight css css framework that aims to achieve responsive grid layout. Trunk follows the same method as that of materialize to achieve this.

## Why trunk ?

* You may not need a heavy framework for grids (Trunk is only ~4kB)
* You may need an easily customizable framework ( .less file is included)
* Simple class names for columns (`s`,`m`,`l`,`xl` - Like in materialize.css)
* Wide browser support
* Optionally add flex for equal height columns

## Github

View the project on [github](https://github.com/akzhy/trunk) or check demo [webpage](http://trunk.akzhy.com)
MySigMail v1.9.0 is out 🎉
Tags: vue, githunt, opensource
Published: 2019-04-15 13:27:51

---
title: MySigMail v1.9.0 is out 🎉
published: true
description: 
tags: vue, githunt, opensource
---

Hi there 👋

MySigMail released to 1.9.0

Some features:

- Added new social icons: GitLab, Slack, Reddit, Gitter, Diaspora, Mastodon, OK
- Added avatar crop options: 1:1, 2:3, 4:3, 16:9, Free

MySigMail join to Twitter! Follow [@mysigmail](https://twitter.com/mysigmail) to be in touch 

{% github antonreshetov/mysigmail %}