teleren/devto huggingface dataset:
You Are Not A Software Developer
Tags: career, beginners, discuss
Published: 2018-12-09 13:22:52

---
title: You Are Not A Software Developer
published: true
description: When I became a developer, I thought that my job is to write software. When my customer had a problem, I was ready to write software that solves that problem. I was taught to write software. But what customers need is not software. They need a solution to their problem. Your job is to find the most cost-effective solution, what software often is not.
tags: career, beginners, discuss
---


When I became a developer, I thought that my job is to write software. When my customer had a problem, I was ready to write software that solves that problem. I was taught to write software. 

But what customers need is not software. They need a solution to their problem. Your job is to find the most cost-effective solution, what software often is not.

[Continue...](https://sizovs.net/2018/12/08/you-are-not-a-software-developer/)
Laravel Homestead for WordPress Theme and Plugin Development
Tags: development, wordpress, php, laraval
Published: 2019-04-07 14:01:18

---
title: Laravel Homestead for WordPress Theme and Plugin Development
published: true
tags: Development,WordPress,PHP,Laraval
canonical_url: https://kaspars.net/blog/laravel-homestead-wordpress
---

Turns out [Laravel Homestead](https://laravel.com/docs/5.7/homestead) is almost exactly [the development environment I was looking for](https://kaspars.net/blog/wordpress/wordpress-environment-composer) — it [can be added as a Composer dependancy](https://laravel.com/docs/5.7/homestead#per-project-installation) to any PHP project and configured using [a simple Yaml file](https://laravel.com/docs/5.7/homestead#configuring-homestead). The host machine needs only [Vagrant](https://www.vagrantup.com/) and [VirtualBox](https://www.virtualbox.org/).

**tl;dr:** See [this pull request](https://github.com/kasparsd/widget-context-wporg/pull/48) for how I added Homestead to the [Widget Context plugin](https://widgetcontext.com/).

## How it Works

First, we add a very minimal `Vagrantfile` to the project root which reads the Homestead’s configuration from `Homestead.yaml` (could be named anything) and triggers the provisioning logic in `scripts/homestead.rb` using the supplied configuration.

We install WordPress a development dependancy in `package.json` and configured it from the same `Vagrantfile` using an inline shell script (and [WP-CLI](https://wp-cli.org/) which comes bundled with Homestead):

```
config.vm.provision "shell",
	inline: "wp config create",
	privileged: false
```

and use a dedicated `wp-cli.yaml` which defines the database access parameters and credentials:

```
path: /home/vagrant/code

config create:
  dbname: homestead
  dbuser: homestead
  dbpass: secret
```

which are used as defaults during `wp config create`.

Note that `wp-cli.yaml` lives within our theme directory so we specify the `WP_CLI_CONFIG_PATH` environment variable in `Homestead.yaml` which points to `wp-cli.yaml` inside the virtual environment.

## Notes

Laravel Homestead runs the provision scripts as `root` inside the virtual machine so the regular non-privileged `vagrant` user can’t write to disk which prevents us from downloading and setting up WordPress from within the virtual environment. This can probably be adjusted with a few additional lines of configuration in `Homestead.yaml`.
List of Variables vs. Object
Tags: productivity, learning, journey, javascript
Published: 2018-12-09 12:26:39

---
title: List of Variables vs. Object
published: true
tags: productivity, learning, journey, javascript
---

Recently, I received a question on some JavaScript stuff:

> im not sure how it helps passing an object instead of a list of variables…


[Code with a more precise explanation ](https://repl.it/@miku86/list-of-vars-vs-objects)


Before:

```js
function createMessageWithListOfVars(firstName, lastName, age) {
  return `${firstName} ${lastName} is ${age} years old.`
}

console.log(createMessageWithListOfVars("Andreas", "Max", 30));
```

After:

```js
function createMessageWithObjectDestruct({ firstName, lastName, age }) {
  return `${firstName} ${lastName} is ${age} years old.`
}

console.log(createMessageWithObjectDestruct({
  firstName: "Andreas",
  age: 30,
  lastName: "Max"
}));
```
BxJS Weekly Episode 40 - javascript news podcast
Tags: javascript, node, podcast, news
Published: 2018-12-09 11:16:18

---
title: BxJS Weekly Episode 40 - javascript news podcast
published: true
description: Listen to the best javascript news of the week in a podcast form
tags: javascript, node, podcast, news
---

Hey dev.to community!

BxJS Weekly Episode 40 is now out! 🚀
Listen to the best javascript news of the week in a podcast form right here.
You can find all the mentioned links [here on github](https://github.com/BuildingXwithJS/bxjs-weekly/blob/master/links/18-49-Episode-40.md).

You can also watch or listen to this episode on:
- [YouTube](https://youtu.be/wdo7orUnrOI)
- [Castbox](https://castbox.fm/episode/BxJS-Weekly-Ep.-40-Dec-8%2C-2018-(javascript-news-podcast)-id1378315-id103145745?country=us)

Any feedback is appreciated 😁

Additional stuff:
- [Twitch channel](https://www.twitch.tv/yamalight)
- [Discord server](https://discord.gg/hnKCXqQ)
- [BxJS Weekly github repo](https://github.com/BuildingXwithJS/bxjs-weekly)

Social media links:
- [Twitter](http://twitter.com/yamalight)
- [Medium](https://medium.com/@yamalight)
- [Github](http://github.com/yamalight)

If you enjoy my content, please consider [supporting me](https://codezen.net/support.html) 😉
What were (or are) your initial thoughts about the technology/software development industry?
Tags: discuss, career, beginners
Published: 2018-12-09 10:45:28

---
title: What were (or are) your initial thoughts about the technology/software development industry?
published: true
description: Doesn’t matter if you’ve dispelled them now, or if they are actually true, or if you’re not yet a part of the industry (even better!) - what did you assume at the outset?
tags: discuss, career, beginners
---

“It’s all men.”

“You need a technical degree before you can even knock on the door.”

“Everybody is really clever.”

---

I’m curious... how do we, as a technical industry, initially present to groups like:
- new starts?
- juniors?
- graduates?
- people making lateral moves from other industries?

But also children, or parents? What do they think the unwritten rules of working in technology are?

Doesn’t matter if you’ve dispelled them now or if they are actually true - every viewpoint is valid:

What did __you__ think the rules were?
Get your Website developed on Easy Installment plan
Tags: webdev, webdesign, appdevelopment
Published: 2018-12-09 10:28:48

---
title: Get your Website developed on Easy Installment plan
published: true
description: Graphiters bring an easy monthly installment plan with no markups or hidden charges. Graphiters is an award-winning digital agency based in Islamabad, Pakistan. We are offering services such as Web design, App development, Social media marketing, SEO & Graphic design
tags: Web development, Web design, App development, Web development
cover_image: https://thepracticaldev.s3.amazonaws.com/i/x2emc8pw98aywek63ieq.jpg

---
A new way to contribute to Open Source Projects
Tags: net, netcore, opensource, github
Published: 2018-12-09 09:50:53

---
title: A new way to contribute to Open Source Projects 
published: true
description: How to install and use a new .NET Core Global tool called UpForGrabs
tags: #net #netcore #oss #github
---

Sometimes I want to learn something new or challenge myself but I don't have any new idea.
Often I go to GitHub and search for something new to contribute.

Some days ago Shayne Boyer (https://github.com/spboyer) had created a new tool for .NET Core Global tool to help people like to find a new project to contribute.

The project is called UpForGrabs (https://github.com/spboyer/dotnet-upforgrabs).

## Requirements

First of all this tool is only available for .NET Core 2.2.

![alt text](https://dotnet.microsoft.com/images/redesign/downloads-dot-net-core.svg ".NET Core Logo")

To install it, you can go to the official page on the .NET site: https://dotnet.microsoft.com/download

You can verify the correct installation with the command:

```
dotnet --info
```

After that, you can install the tool with the command:

```
dotnet tool install -g upforgrabs
```
## How to use

Open your favourite terminal (I use Hyper, for example) and type:

```
upforgrabs
```
You can change the number of the results with the parameter -n:

```
upforgrabs -n 15
```

You can also decide to open the issue automatically with the parameter -o:

```
upforgrabs -n 15 -o
```

Below you see this tool in action:

<img src="https://thepracticaldev.s3.amazonaws.com/i/pgeqb5wldz7yhsiftp1g.gif">

Enjoy your contribution to Open Source Project! :)
Write better code: Day 5 - Chronal Calibration
Tags: challenge
Published: 2018-12-09 07:58:36

---
title: Write better code: Day 5 - Chronal Calibration
published: true
tags: challenge
---

This post originally appeared on Arjun Rajkumar's blog. Arjun runs [web development company based in Bangalore, India.](https://www.arjunrajkumar.in) 

--


Day 5: Question 1 & Question 2 are from Advent of code: 
https://adventofcode.com/2018/day/1/answer

My answers are in the comments.
React Native Animated Floating Reactions like Facebook
Published: 2018-12-09 05:27:59

---
title: React Native Animated Floating Reactions like Facebook
published: true
description: React Native Animated Floating Reactions like Facebook
tags: 
---

Post Link :  <a href="https://www.skptricks.com/2018/12/react-native-animated-floating-reaction-like-facebook.html" >React Native Animated Floating Reactions like Facebook </a>

This tutorial explains how to create Animated Floating Reactions like Facebook in react native application. Floating emoji reactions are more popular in facebook live session, where you may have seen floating reaction in android activity screen.

<a href="https://www.skptricks.com/2018/12/react-native-animated-floating-reaction-like-facebook.html" >React Native Animated Floating Reactions like Facebook </a>

<img src="https://4.bp.blogspot.com/-0W9akgQIw70/XAv-O2hs_eI/AAAAAAAACPA/8-UDpMYMgTsYuBCJuJuJRWGY4VTEOPaXQCLcBGAs/s640/reaction.png" />
Function scopes and block scopes in JavaScript
Tags: javascript, react, es6
Published: 2018-12-09 05:24:22

---
title: Function scopes and block scopes in JavaScript
published: true
description: Function scopes and block scopes in JavaScript
tags: #javascript #react #es6 #js
---
Post Link : <a href="https://www.skptricks.com/2018/12/function-scopes-and-block-scopes-in-javascript.html" >Function scopes and block scopes in JavaScript </a>

In this tutorial we are going to discuss what is Function scopes and block scopes in JavaScript. In javascript Block scopes are different from function scopes and lets see the below example, then you will get more understanding on this.

<a href="https://www.skptricks.com/2018/12/function-scopes-and-block-scopes-in-javascript.html" >Function scopes and block scopes in JavaScript </a>

<img src="https://2.bp.blogspot.com/-6V6JdhTOLHE/XAn5M-x2iJI/AAAAAAAACNo/wu7dJ2RAa4s7Lw9jJSVXSJmwCVEtEq5wgCLcBGAs/s400/function.png" />
Convert a string to an array of characters using ES6 spread syntax
Tags: javascript, react, es6
Published: 2018-12-09 05:22:48

---
title: Convert a string to an array of characters using ES6 spread syntax
published: true
description: Convert a string to an array of characters using ES6 spread syntax
tags: #javascript #react #es6 #js
---

Post Link : <a href="https://www.skptricks.com/2018/12/convert-string-to-array-of-characters-using-es6-js.html" >Convert a string to an array of characters using ES6 spread syntax </a>

This tutorial explains how to Convert a string to an array of characters using ES6 spread syntax. Lets see the below examples, where we are using split method and spread operator to convert string to an array of characters.



Method -1 : 
Lets see this example, where we are using split method to convert string to an array of characters.
var word = "skptricks Blog"

// using javascript split function.
var getData = word.split("");

console.log(getData)

Output:-
----------------------------------
> Array ["s", "k", "p", "t", "r", "i", "c", "k", "s", " ", "B", "l", "o", "g"]

<a href="https://www.skptricks.com/2018/12/convert-string-to-array-of-characters-using-es6-js.html" >Convert a string to an array of characters using ES6 spread syntax </a>

<img src="https://4.bp.blogspot.com/-56NgYGTE4ag/XAiu90ljgnI/AAAAAAAACNc/eP0ssu6o4F0yRFtzHcHHqSfOpk0t-b2VgCLcBGAs/s640/spilt.png" />



<a href="https://www.skptricks.com/2018/12/convert-string-to-array-of-characters-using-es6-js.html" > continue reading... </a>
AoC Day 9: Marble Mania
Tags: adventofcode, discuss
Published: 2018-12-09 05:07:37

---
title: "AoC Day 9: Marble Mania"
published: true
description: "Day 9: We're calculating scores in the elves' favorite marble game."
cover_image: https://thepracticaldev.s3.amazonaws.com/i/f3o3kr08h81rfqiooeaz.png
tags: adventofcode, discuss
series: Advent of Code  
---

It's the weekend, and I'm using that to get caught up since I was starting fall behind throughout last week.  Hopefully, you're able to keep up with this hectic pace!

On [Day 9](https://adventofcode.com/2018/day/9)'s challenge, the elves are teaching us marble games!  Given a series of moves, we'll be simulating the game and calculating scores.

Let's get rolling!  (Eh?  Eh?  A little bit of marble humor there, just for you. 🎅)
Design.to | A community for designer
Tags: discuss, meta, design
Published: 2018-12-09 04:36:04

---
title: Design.to | A community for designer
published: true
description: Where designers share ideas and help each other grow. It is an online community for sharing and discovering great ideas, having debates, and making friends.
tags: discuss, meta, design
---

Hey [Ben Halpern](https://dev.to/ben),

This [dev.to](https://dev.to) place is awesome and I love this place since the day I have created an account, along the way I have [posted a bunch of article](https://dev.to/mittalyashu).

It would be nice to have a seperate place for designer too, just like dev.to

> designer.to

Hope you consider my suggestion.

Thanks
One Happy User of Dev.to
Owl effective IT manager 
Tags: beginners, career, react, humor
Published: 2018-12-09 04:31:58

---
title: Owl effective IT manager 
published: True
description: Owl hires new IT staff
tags: beginners, career, react, humor
cover_image: https://thepracticaldev.s3.amazonaws.com/i/jz5aqgyxy4wo6od4o0pa.png
---

![Owl IT manager](https://thepracticaldev.s3.amazonaws.com/i/jz5aqgyxy4wo6od4o0pa.png)
AoC Day 8: Memory Maneuver (Placeholder)
Tags: adventofcode
Published: 2018-12-09 01:47:14

---
title: "AoC Day 8: Memory Maneuver (Placeholder)"
published: true
description: "Day 8: Placeholder to make the number of links in the series work out."
tags: adventofcode
series: Advent of Code 
---

Hi!  This article is just a placeholder so that the dots that appear in this Advent of Code series of articles line up.  The real discussion for this week was graciously posted by @choroba [here](https://dev.to/choroba/aoc-day-8-memory-maneuver-1f93), allowing me to play video games and go to sleep last night 😀
Steam Roulette
Tags: react, javascript, steam, serviceworkers
Published: 2018-12-09 00:18:07

---
title: Steam Roulette
published: true
description: Random game selector
tags: react, javascript, steam, service workers
---

So I've created this small app which select a random game from your steam library for you to play, then I started to expand on the idea and wanted it to work offline.

It's not completely done but thought I should share it to get feedback on how to make it better and what should be my approach to make it work 100% offline.

here is the repo: https://github.com/linkinmedo/steam-roulette 
and the live version: http://steam.mohsh.com
It's wrong to treat "Draft" mode as a state on the way to "Final"
Tags: oop, cleancode
Published: 2018-12-08 23:24:28

---
title: It's wrong to treat "Draft" mode as a state on the way to "Final"
published: true
cover_image: https://thepracticaldev.s3.amazonaws.com/i/6431axapav7858n9llni.jpeg
description:  Draft mode should be other object. not same object as Final mode.
tags: OOP, Clean Code
---

When we build a system that needs to have a draft mode (for example an *order* we would like to complete later), It might be tempting to save the draft in the same model and save it in the same table/collection/whatever as a real order, with a bit/enum that shows that it's a draft.

The problem with this attitude is that it makes as create the model/table with less mandatory fields, less constraints, etc...

The solution is to refer to a draft as a totaly different kind of object, and act accordingly regarding where to save it and how to handle it.

I think I'll call it: DFRS
Draft/Final Responsibilty Segregation
(What's now? Can I make millions lecturing about it?)

What do you think?
Am I just reinventing the wheel here?
A month of Flutter: a list of posts
Tags: flutter, materialdesign, tutorial
Published: 2018-12-08 21:31:01

_Originally posted on [bendyworks.com](https://bendyworks.com/blog/a-month-of-flutter-a-list-of-posts)_


[Yesterday](https://bendyworks.com/blog/a-month-of-flutter-no-content-widget) I created a widget to display when there are no images available. Today I'm going to create the `PostsList` widget that will be displayed when there are images.


The widget will use a [`ListView`](https://docs.flutter.io/flutter/widgets/ListView-class.html), in part because I plan to use [Firebase Cloud Firestore](https://firebase.google.com/docs/firestore/) as a datastore and that's the pattern [cloud_firestore](https://pub.dartlang.org/packages/cloud_firestore) uses.

For now I'm going to replace the hardcoded `NoContent` widget with the new `PostsList`.
`NoContent` will temporarily go unused until [#13 load sample data and render homepage list items](https://github.com/abraham/birb/issues/13) is implemented.

For this initial list I'm going to iterate over a finite list and create a static Material [`Card`](https://docs.flutter.io/flutter/material/Card-class.html) for each list item. The card will have a fixed height and some simple `Text`.

~~~dart
class PostsList extends StatelessWidget {
  const PostsList();

  static const List<int> _items = <int>[0, 1, 2];

  @override
  Widget build(BuildContext context) {
    return ListView(
        children: _items.map((int index) {
      return Card(
        child: Container(
          height: 300.0,
          child: const Center(
            child: Text('Prim Birb'),
          ),
        ),
      );
    }).toList());
  }
}
~~~

I'll also create a simple test to make sure that `PostsList` renders two `Card` widgets and the expected text. You might notice that the test checks for two of each while the `_items` implementation should actually render three cards. But the screen size is not large enough to display all three cards so one of them is offscreen. When testing I only care about what's rendered to the user.

~~~dart
testWidgets('Renders list of posts', (WidgetTester tester) async {
  // Build our app and trigger a frame.
  await tester.pumpWidget(const MaterialApp(
    home: PostsList(),
  ));

  expect(find.byType(Card), findsNWidgets(2));
  expect(find.text('Prim Birb'), findsNWidgets(2));
});
~~~

The result is a simple list of cards:

![Screenshot of simple static cards](https://thepracticaldev.s3.amazonaws.com/i/ef41832etfgfawxolwc7.png)

## Code changes

- [#18 Add PostsList widget](https://github.com/abraham/birb/pull/18)
Gem markdown_helper Has Easier Page TOC
Tags: ruby, markdown, github, documentation
Published: 2018-12-08 19:31:00

---
title: Gem markdown_helper Has Easier Page TOC
published: true
description: 
tags: #ruby #markdown #github #documentation
---

I have updated Ruby gem <code>markdown_helper</code>.

Page TOC (table of contents) is improved:

- **Old**: You would first run the markdown helper to generate a page TOC, then run the helper a second time to include the page TOC where you want it.

- **New**: You specify the site for the page TOC in the page itself, and the page TOC is automatically generated and inserted there. See the [use case](https://github.com/BurdetteLamar/markdown_helper/blob/master/markdown/use_cases/include_files/include_page_toc/use_case.md#include-page-toc).

Note that the page TOC is created *after* any markdown file inclusions, so the TOC covers the entire finished page.

The old way is now deprecated.

- [Gem](https://rubygems.org/gems/markdown_helper) at RubyGems.org.
- [Documentation](https://github.com/BurdetteLamar/markdown_helper#markdown-helper) at Github.
The confusing way of sending emails in .NET Core and other goodies
Tags: beginners, netcore, aspnetcore, csharp
Published: 2018-12-08 19:30:42

---
title: The confusing way of sending emails in .NET Core and other goodies
published: true
description: The confusing way of sending emails in .NET Core and other goodies
tags: beginner, netcore, aspnetcore, csharp
---

Since I finally had some time to play more with C# I've encountered my next challenge when wanting to implement user registration with a confirmation email.

Even though the [official documentation](https://docs.microsoft.com/en-us/aspnet/core/security/authentication/accconfirm?view=aspnetcore-2.2&tabs=visual-studio) is clear on how to handle the one time code generation I didn't want to use Sendgrid but plain old SMTP authentication. Further more I don't agree with having the mail body as a string in my registration task.

Now, this is where things got complicated rather fast.
The tutorial says it includes [System.Net.Mail](https://docs.microsoft.com/en-us/dotnet/api/system.net.mail?view=netcore-2.2) and that has a [SmtpClient](https://docs.microsoft.com/en-us/dotnet/api/system.net.mail.smtpclient?view=netcore-2.2) but unfortunately the API is Obsolete.

Not all things are lost because It does recommend using [MailKit](https://github.com/jstedfast/MailKit) but since Mailkit doesn't handle any kind of template management I started ~~looking~~ googling around on how people are sending emails in net.core in general.

I would like to give a shout-out to [FluentEmail](https://github.com/lukencode/FluentEmail) since it was almost what I wanted to have (minus the MailKit handler).

Without further ado you can access the current version in this [github commit](https://github.com/rheoli-io/craidd/tree/dc6c974fb398cd9d576e3c6acf6c9121b26794fc) or check the [commit directly](https://github.com/rheoli-io/craidd/commit/dc6c974fb398cd9d576e3c6acf6c9121b26794fc)

I've used the [Options pattern](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration/options?view=aspnetcore-2.2) to simplify the dependency injection handling, [RazorLight](https://github.com/toddams/RazorLight) for the template handling (Maybe somebody over at Microsoft can extract the official thing as a library), and implemented a simple `sendEmailFromTemplateAsync` method in my `EmailsService`.

I had to hack around RazorLight's CompileRenderAsync since sending an anonymous object to `sendEmailFromTemplateAsync` and passing that directly as the __model__ in the `CompileRenderAsync` method somehow broke the variable parsing.
The workaround is making the __messageData__ as an _Dictionary_ and converting that into an object using _ExpandoObject_
```csharp
var localMessageData = messageData.Aggregate(
    new ExpandoObject() as IDictionary<string, Object>,
    (a, p) => { a.Add(p.Key, p.Value); return a; }
);
```

How are you guys handling emails in your applications ?