teleren/devto huggingface dataset:
What would you like to read, Dear Reader?
Tags: discuss, beginners, tutorial, webdev
Published: 2020-02-26 13:04:40

Hi everyone

Today I am asking you Dear Readers, to tell me what would you like for me to cover in my articles?

Also for the new Readers and for everyone that didn't have a chance to read it yet. I have a series that I am quite proud of:

- [Absinthe Journey](https://dev.to/wolfiton/absinthe-journey-with-wolfiton-or-how-to-bring-the-absinthe-tutorial-up-to-date-part-1-introduction-5fgg) 

I will be looking forward to your suggestions Dear Readers!

Thank you in advance to all the participants of this discussion.
Top 10 Android devices will not be getting Google’s next big update
Tags: android, mobileapp
Published: 2020-02-26 13:02:13

The soon to commence Google’s IO developer’s conference will see some of the big decisions this time around. The company is one of the giants and surely the biggest one to have its roots on the Android devices. Every now and then it comes up with new and some of the fantastic apps, that have changed the view of ours to a great extent. But at this conference, the giant will not deliver updates to few of its apps.

The Google has started rolling out the developer’s preview of some of its latest Android operating system Android P. Along with this, the company has revealed that it will not offer updated to few of its smart phones. And such decisions are not a common talk for the giant.

#Why did the company come up with this idea?

Well, there is no such sadistic reason behind the same. The company has a policy and it is following the same. Few of the products that came in the year 2015 have a clear cut validity, that after the three years the Google cannot guarantee updates to them. The company is known for the best quality services to the users out there across the globe.
And the way, it put back the step to not give updates to few of the products is actually a sad thing. It is more or less on the hands of the developer that is the Google, to look for the updates. It may be the case the company has been looking for some new models to come up with. And merely giving updates to the products will shed the surprise of the new products to come in the market.

#How will it execute?

Execution of the idea is rather quite simple. It will involve the products to discontinue the updates, which usually comes up every now and then to enhance the user experience. In the steps unfolded the new products will be discontinued from the updates and in the subsequent ones, new ones will go through the phase. And soon will cover the whole spectrum of the products.

#How are they?

Most of the products in the line came up in the year 2015. And all of them are doing quite well in this time around. Let’s see the products, will see the debarring from the updates.

Nexus 5X,
Nexus Player,
Nexus 6P,
Nexus 6,
Nexus 9 LTE,
Nexus was launched with the view to take on the attention of the buyers out there.
Google Pixel C
Google Pixel
Google Pixel XL

Google Pixel is a product to have an upper footing on the Android devices.
The Google Nexus website has already stated about the same earlier also.
Google Pixel and the related products will get the security and other important updates from the company, however.
Daily Developer Jokes - Wednesday, Feb 26, 2020
Tags: jokes, dailydeveloperjokes
Published: 2020-02-26 13:00:18

---
title: "Daily Developer Jokes - Wednesday, Feb 26, 2020"
description: "Check out today's daily developer joke! (a project by Fred Adams at xtrp.io)"
series: "Daily Developer Jokes"
cover_image: "https://private.xtrp.io/projects/DailyDeveloperJokes/thumbnail_generator/?date=Wednesday%2C%20Feb%2026%2C%202020"
published: true
tags: #jokes, #dailydeveloperjokes
---

Generated by Daily Developer Jokes, a project by [Fred Adams](https://xtrp.io/) ([@xtrp](https://dev.to/xtrp) on DEV)

___Read about Daily Developer Jokes on [this blog post](https://xtrp.io/blog/2020/01/12/daily-jokes-bot-release/), and check out the [Daily Developer Jokes Website](https://dailydeveloperjokes.github.io/).___
### Today's Joke is...
![Joke Image](https://private.xtrp.io/projects/DailyDeveloperJokes/public_image_server/images/5e1259582acfe.png)

---
*Have a joke idea for a future post? Email ___[xtrp@xtrp.io](mailto:xtrp@xtrp.io)___ with your suggestions!*

*This joke comes from [Dad-Jokes GitHub Repo by Wes Bos](https://github.com/wesbos/dad-jokes) (thank you!), whose owner has given me permission to use this joke with credit.*

<!-- 
Joke text:
___Q:___ Why did the developer have to quit smoking?

___A:___ Because they couldn't afford to pay the new syntax.
 -->
Why do so many developers get DRY wrong?
Tags: todayilearned, career, programming
Published: 2020-02-26 13:00:10

*TL;DR notes from articles I read today.*

### [Why do so many developers get DRY wrong?](http://bit.ly/2STTeP4)

- Humans are good at pattern matching and developers do an even more excellent job of it. The more code you read/write, the more patterns you see coming up. And it is tempting to take those patterns, name them properly and keep referring back to them. 
- It feels really good to DRY up the code. It is really like the lowest common form of refactoring.  There were days you copy-pasted code because you did not have a hang of subroutines/functions and now that you have the experience and skill to condense this code, you go ahead and do it because it suddenly feels simpler & cleaner.
- ‘It was repetitive’ can be a trap. DRY is commonly misunderstood and leads to misguided refactoring.
- DRY has come to mean ‘don’t cut and paste’ but the original idea behind ‘don’t repeat yourself’ had to do with knowledge, and not code. The name is itself a leaky abstraction.  

*[Full post here](http://bit.ly/2STTeP4), 3 mins read*

---

### [ Great code reviews - the superpower your team needs](http://bit.ly/2PmPSSG)

Lessons from Shopify
- Keep your pull requests small (200-300 lines, or one single concern) so the reviewer won’t procrastinate or be interrupted and can dive deeper, yet respond to you faster. This way, you will also get more independent review units and therefore better quality review, affect fewer people and need to call on fewer domains of expertise, make it easier to identify problems for rollbacks, and separate the easy stuff from the hard. 
- Use work-in-progress (WIP) or draft pull requests (PR) to elicit early feedback that validates your choice of algorithm, design, API, etc., to ensure you are heading in the right direction before you start to build. This way you don’t waste time on documentation and details if you got it wrong. 
- When you are the reviewer, follow the principle of strong opinions loosely held, and focus on the code rather than the person. As a reviewer, take co-ownership of the code, frame comments as suggestions rather than instructions, and also offer positive feedback. As an author, assume the best intention rather than taking comments personally.
- Pick the right person as reviewer: someone with context on the feature or component you are building, someone with strong skills in the language, framework or tool you use, someone with opinions on the subject, someone who cares about the outcome of your project, someone who needs to learn about this (in case of a junior reviewing a senior’s code).
- Use a PR template where the description includes why the PR is necessary, who benefits from this, what can go wrong, what other approaches you considered, why you settled on this solution, and what other systems it can affect.  

*[Full post here](http://bit.ly/2PmPSSG), 10 mins read*

---

*[Get these notes directly in your inbox every weekday by signing up for my newsletter, in.snippets().](https://mailchi.mp/appsmith/insnippets?utm_source=devto&utm_medium=post08&utm_campaign=is)*
Quickly Create Github Release via Cli
Tags: devops, tech, git
Published: 2020-03-11 20:53:09

---
title: Quickly Create Github Release via Cli
published: true
date: 2020-02-26 13:00:00 UTC
tags:
- devops
- tech
- git
canonical_url: https://www.sheldonhull.com/blog/quickly-create-github-release-via-cli/
---


## Intro

I've been trying to improve modularization with Terraform.Using Terraform Cloud, you get a private module repository.The modules are linked to tags in git.

I've wanted additionally to specifically create releases for the versions in addition to the tags, to make tracking of usable versions a little cleaner.

There are several ways to do this, including using the GitHub API, npm modules, and more.I wanted a simple CLI tool to do this and ran across this great Go utility that worked seamlessly for me.

I've used the [Hub cli](http://bit.ly/2w1fZYu) but the create release syntax never really worked for me.

## github-release

[Github-release](http://bit.ly/32qoDM9) is a simple golang cli that worked great for me.Note that this is a fork.This fork is more up to date than the original.

With go installed just run this to get it installed and available in `PATH`.

```
go get github.com/itchio/gothub

```

To simplify GitHub access, ensure you set an environment variable for your user called GITHUB\_TOKEN.

With PowerShell you can do it quickly like this (you might need to close and reopen vscode/terminal for this to be recognized)

```
 [System.Environment]::SetEnvironmentVariable('GITHUB_TOKEN','tokenhere','User')

```

## Usage

To use this, you can chain together some steps and see how it can save you time on creating a GitHub release.

{% gist https://gist.github.com/sheldonhull/53055bbff368a4ebe4e0794076a56c37 %}

This helped me get moving faster ⚡ on using Github releases without the tedious work to create.If this helped you or have any feedback, drop a comment below and let me know!The comments are powered by Utterances which will open a Github issue to discuss further. 👍
The problem of remote access to USB security keys
Tags: dongle, usbkey, cloneusb, copydongle
Published: 2020-02-26 12:54:25

---
title: The problem of remote access to USB security keys
published: true
description: To remotely access the functionality of your device
tags: dongle, usb key, clone usb, copy dongle 
---
Having a licensed USB security dongle, you may face the need to remotely access the functionality of your device. It’s not infrequent that connecting a USB key to a virtual machine or a remote desktop becomes a real challenge. What’s more, it may happen that several employees in your office need to use the same USB key simultaneously.   

#How to resolve this challenge 

Probably the simplest way to provide remote access to a USB protection dongle is to share the device over the network. Donglify is a lightweight app designed to do just that. The software is powered by advanced port virtualization technology that allows redirecting USB dongles over any network (Internet, Wi-Fi, etc.) to any remote computer. With Donglify, you can share your licensed USB key with as many remote users as you need. A shared device will appear in remote systems like it was connected physically to those machines. 
![](https://cdn1.radikalno.ru/uploads/2020/2/26/9003bcc8da1a98ee972302472aa0e6f4-full.png)

##Here’s how it works:

1. You create a Donglify account on the [software website](https://www.donglify.net/) and download the app on your computer.
2. Start the program and log into your account.
3. Once logged in, you click the plus icon in the window that will open and see the list of local USB dongles available for sharing.
4. Check the radio button in front of the required USB key and click “Share”.

Note: the “Multi-connect” icon shown next to a USB dongle means you can share the device over the network and use it on multiple computers simultaneously. The “Single-connect” icon indicates that a shared USB key can be connected to one remote machine at a time. 

5. Now, you download and install Donglify on all computers that need to access the shared USB key remotely. 
6. Once installed, start the app and log into your Donglify account.
7. The shared USB key will be displayed in the list of remote USB dongles that are available for connection. 
8. All you need to do is click the “Connect” button below this USB key.

Once done, the shared USB security dongle will appear in the remote computer like it was directly connected to that PC.
What Is 6 Sigma Training?
Tags: spctraining, processcapabilitytraining, statisticalprocesscontrol
Published: 2020-02-26 12:53:38

6 Sigma training is an improvement <a href="https://www.integral-concepts.com/statistical-methods-training/spc-and-process-capability/">SPC process</a>designed to enable the business to identify and eliminate the defects or mistakes in their core process or service. 6 Sigma accomplishes this by placing the focus on the end product that is important to the customer or client. Finding and eliminating deviations in the process result in smoother, more error-free process performance Error-free process performance positively affects the bottom line by increasing revenue and saving money. 6 Sigma works across all industries, products, processes and company functions.
<a href="https://www.integral-concepts.com/statistical-methods-training/spc-and-process-capability/">Statistical Process Control</a>works for both the management and technical sides of the business. 6 Sigma enables management to focus and to choose the correct process metrics and goals for the company. Management is also better able to place the right people in the right situations in order to maximize processes for their duration. The focus on the technical or production side enhances process performance by reducing variation on the line. This is accomplished using data, statistical thinking or SPC, as well as disciplined methods known as the DMAIC toolbox. The tools in the toolbox are sequenced making for easy understanding and usage.
Another tool utilized is the process measurement scale. In other words, this measurement mandates the number of defects in a core process be no higher than 3.4 per 1,000,000 opportunities. This has become the industry standard, no matter the industry. An opportunity is defined as a chance to make a mistake, to put it another way. The 6 Sigma process capability assumes that the average may shift in the long run by one and a half sigma, no matter how well the process is under control. The number 3.4 defects in 6 Sigma is reached by assuming the specification limit to be six deviations either above or below the target value.
So why is Six Sigma different from older methods of quality control? 6 Sigma has three newer aspects of process control. These are the clearer focus for getting to the bottom line results, a method of sequencing and linking improvements to the overall approach, and more human interaction in the process toward improvements.
<a href="https://www.integral-concepts.com/contact/">Contact Us :</a>

<a href="https://www.integral-concepts.com/">Integral Concepts</a>
Summary for Heroku Products
Tags: heroku
Published: 2020-02-26 12:34:07

---
title: Summary for Heroku Products
published: true
description: 
tags: heroku
---

## Heroku Platform
- Heorku DX (Developer Experience)
  - Heroku Flow
  - Continuous Delivery
  - Continuous Integration
- Heroku OpEx (Operational Experience)
- Heroku Runtime
  - Heroku Dynos

## Heroku Data Service
- Heroku Postgres
- Heroku Redis
- Apache Kafka on Heroku

## Heroku Enterprise
- Heroku Private Spaces: 
  Network isolated group of apps and data services.
- Heroku Connect: 
  Bi-directional synchronization between Heroku Postgress and Salesforce.
- Heroku Shield: 
  Your heroku shield apps run in your own network isolated heroku shield private space using
  shield private dynos.

## Heroku Teams
Unified collaboration, administration & billing for all your apps.
Ruby/GTK3 - LinkButton
Tags: ruby
Published: 2020-02-26 12:33:20

---
title: Ruby/GTK3 - LinkButton
published: true
description: link button widget in Ruby/GTK3
tags: ruby
---


`gem install gtk3`

# LinkButton

a hyperlink widget.

![linkbutton](https://dev-to-uploads.s3.amazonaws.com/i/poskruv563ooq157goe6.png)

```ruby
require 'gtk3'

class LinkButtonWindow < Gtk::Window
  def initialize
    super
    set_title 'LinkButton Demo'
    set_border_width 10

    button = Gtk::LinkButton.new('http://dev.to', 'Visit DEV')
    add button
  end
end

win = LinkButtonWindow.new
win.signal_connect('destroy') { Gtk.main_quit }
win.show_all
Gtk.main
```

* [python version](https://python-gtk-3-tutorial.readthedocs.io/en/latest/button_widgets.html#id3)
Who said, “What are Components in React”?
Published: 2020-02-26 12:19:36

Disclaimer. It's one of the first blogs that I wrote on Medium. I decide to write my technical blogs on Dev so I just move some content here. Hope you would like it.


Really what it is?

According to React docs. Components let you split the UI into independent, reusable pieces, and think about each piece in isolation.

Components are a core concept of the React library. You can create magnificent things using that way of writing your code. But what is a component principle?

Also, React use two types of component. Components based on function ( traditional or arrow function ) and Class component. But both these components deserve separate posts for both of them.

But why bother to use components?

That all sound cool but why bother yourself with learning and implement this concept? The thing that’s if you do this, your code will be much cleaner, more readable, working with code that split into tiny pieces will be much easier.
Let’s take some examples.

We have some component, like the header of a website if we do it old way it looks like that:

![the main component built the old way](https://dev-to-uploads.s3.amazonaws.com/i/tqyv2dklj6jh5wzsu7wf.png)

Relatively hard to read all this stuff and think about new features, isn’t it? And it is just JSX murk up, without any interactivity. But what if we slice it to smaller parts.

![navigation](https://dev-to-uploads.s3.amazonaws.com/i/kvwkz2j7xj3c34l12t19.png)

Here we cut out the navigation part of markup and move it to a separate component.

And here we move our form in a separate file as well. 

![Login form](https://dev-to-uploads.s3.amazonaws.com/i/m5k7lpx0we90rwcg1g31.png)

The parent component looks like that right now. I also make a separate component for the logo and place it inside the parent component. It's another way to isolate code chunks and make the development process easier. 

![Final result](https://dev-to-uploads.s3.amazonaws.com/i/3wejknfk0thx77jw7uaq.png)

See how much cleaner code became, and now for us it’s easier to work with. It’s doing the same thing but all the parts are separated. Even if we add interactivity or state and state management to this, all the components will still much easier to maintain and modify.

But that not all. Your components can be used anywhere across the app and even can be put into the library or as npm packages and be used in other your projects. If you keep in mind, eventually you will start to build your components to use it across your app and other projects as well.

Wrapping things up. Components are the core concept of the React library. They provide the ability to divide our code into smaller parts for much faster development features and keep all the things smaller and reusable.
My Understanding of the Scrum Framework and Benefits Of the Scrum Events
Tags: agile, scrum
Published: 2020-02-26 12:10:18

One can not talk about scrum without mentioning about Agile since scrum is used to implement Agile software development methodology. So, let’s first know what is Agile software development methodology and why is it needed. 

Firstly, software development usually means writing code to most people, but it is actually more than that. Software development involves many strategized steps that lead to its completion in an organized manner, for the product to be evaluated and tested. Along with those steps, many people are involved responsible for different tasks that lead to the completion of the project.

Agile methodology came as an approach to assist software developers to effectively manage projects. With Agile, requirements and solutions evolve through the collaborative effort of the development teams that work hand in hand with their customers/end users.

Scrum is an Agile management framework. It follows the principle of agile, It is an iterative and incremental process. Those Scrum iterations are time-boxed, and they are called sprints. A sprint is basically 2 to 4 weeks long. Product owner, Scrum Master, the development team are all a part of a scrum team. Scrum has a set of events that are practiced to achieve an effective result. Those events are sprints, sprint-plannings, daily stand-ups, sprint reviews, and retrospection meetings.

Sprints are the actual set of a period a certain task should be completed, while sprint-pannings are held at the very beginning of each sprint to define the sprint backlog. Daily stand-ups are 15-minute stand-up meetings held on a daily basis with the purpose of synchronizing the work of team members. They highlight what has been done on the prior day, what needs to be done today and identify any blocker that might have risen.

Sprint reviews are held at the end of each sprint to demonstrate the added functionality. The goal is to get feedback from the product owner and other stakeholders to ensure that the delivered results meet the requirements. While retrospections meetings are also held at the end of each sprint, their purpose is to asses the overall performance and identify strategies for continuous improvement.

Scrum has many benefits, like allowing the development team to work simultaneously rather than sequentially. It allows all team players to start working on their parts without waiting until all questions to be answered. With Scrum, everything is flexible and changeable during the life of the project and even after. Hence with Scrum, there is adaptability since changes can be supported and integrated into a project currently in progress.

Another big benefit of Scrum is that it allows the team to prioritize. With Scrum, tasks are prioritized by order of importance and this usually means that tasks that will probably affect the project the most are completed first. And it is achieved through the constant communication associated with scrum.