teleren/devto huggingface dataset:
Does it matter how the cryptographic keys stored?
Tags: blockchain, opensource, security, cryptography
Published: 2019-03-22 16:57:08

---
title: Does it matter how the cryptographic keys stored?

published: true
description: Security just tells you to encrypt everything but won't tell you how to achieve that in your particular software stack.
tags: blockchain, open source, security, cryptography
---

Private key storing

Security just tells you to encrypt everything but won't tell you how to achieve that in your particular software stack. You have to store the encryption key in a protected manner. It could be stored at an HSM, a smartcard, a crypto token, at the server hard disk, even written in a paper (split and stored in vaults). The key can be unencrypted (in the clear) or encrypted with another key. If you are talking about encryption keys that are part of your business application, you have to store them encrypted but your software should be able to decrypt it without manual intervention.  

Public key storing

But what about the public key? Verification of digital certificates fails even more often than users loss their private keys because CA is a much bigger and interesting target for cybercriminals. As an alternative to a traditional system of chain of trust, [blockchain](https://github.com/Remmeauth/remme-core) provides a permanent and trusted timestamp by design. To undermine this timestamp would require massive computational effort — rewriting the entire blockchain . This ultimately gives Issuers the ability to rotate their issuing keys without undermining the ability of 3rd parties to reliably verify transactions. The blockchain is a distributed ledger that does not depend on any trusted party like a Certificate Authority. The effect is improved availability, the capacity to independently verify, and redundancy that avoids single points of failure.
React Native Wheel of Fortune Example 
Tags: reactnative, react, es6
Published: 2019-03-22 16:00:30

---
title: React Native Wheel of Fortune Example 
published: true
description: React Native Wheel of Fortune Example
tags: #reactnative #react #es6
---

Post Link : <a href="https://www.skptricks.com/2019/03/react-native-wheel-of-fortune-example.html">React Native Wheel of Fortune Example  </a>

This tutorial explains how to create wheel of fortune in react native application. In this lesson we’re going to be building a Wheel of Fortune in React Native using react-native-gesture-handler, D3 (d3-shape) and Expo for creating the react-native project.Also we do require below libraries as well.

Expo: https://expo.io/
React Native Gesture Handler: https://github.com/kmagiera/react-native-gesture-handler
Popmotion Popcorn: https://popmotion.io/popcorn
RandomColor: https://randomcolor.lllllllllllllllll.com
Pin SVG: http://clipartist.net/social/clipartist.net/G/places_pin_icon.svg

Source : https://github.com/catalinmiron/react-native-wheel-of-fortune

<a href="https://www.skptricks.com/2019/03/react-native-wheel-of-fortune-example.html">React Native Lucky Draw Spinner </a>
Lets see the below complete source code for react native wheel of fortune.

<img src="https://2.bp.blogspot.com/-79bHPfbRPug/XJS7U2U_F6I/AAAAAAAACjc/uy4B5lvhvU8qspZYK9qoZE0lpSItu4idgCLcBGAs/s320/spi.gif" />
Could you help me to deconstruct my learning path?
Tags: help
Published: 2019-03-22 15:47:16

---
title: Could you help me to deconstruct my learning path?
published: true
tags: help
---
![Alt text of image](https://thepracticaldev.s3.amazonaws.com/i/ubgwdi62swfev40muqyl.png)
According to you, what are the most important things I need/have to learn to become an experimented Python developer working on the machine learning field? I just started to learn the basics of Python and I already know my goal. I know that it's just the beginning of a long journey but I'm wondering if there is a deconstructed list of skills I need to learn to reach my goal. Starting from zero, what would recommend to learn after I get the basics of Python? I would really appreciate if you could list these subjects (anything you consider essential) so I can focus my energy/time to learn that skill when the time comes. Thank you very much!
Time Travel Debugger for React useReducer
Tags: react, reacthooks, redux, javascript
Published: 2019-03-22 14:54:45

---
title: Time Travel Debugger for React useReducer
published: true
description: Time Travel Debugger for React state hook useReducer
tags: react, react hooks, redux, javascript
cover_image: https://thepracticaldev.s3.amazonaws.com/i/mk3rgy3rh94a2oo4h1g0.jpg
---

<p align="center">
  <img src ="https://thepracticaldev.s3.amazonaws.com/i/m5v1ylsiv2radif0ppm4.gif" width="500"/>
</p>
<center>
<a href="https://github.com/reactrewind/react-rewind">React Rewind Github Repo</a> 


A couple friends and I wanted to learn more about the new features released in React 16.8. After playing around and building some mini apps, we noticed there was something that would help us debug our code a lot easier: <br>**Redux time traveling but for the *useReducer* hook.**


<br>So, we decided to build a dev tool that does just that: React Rewind.<br>**The first time travel debugger for React's *useReducer*.**<br/>

<br><br>

We're an open source tool and just launched our beta yesterday! We currently have full support for the useReducer hook. We plan to continue working on the tool and extending functionality.
<br>
We would love to hear any feedback/ideas/issues about the dev tool and get some ideas about where to head next.

<br>

<a href="https://github.com/reactrewind/react-rewind">Check out our github repo and let us know what you think.</a> 

<br>


### Application Features
<p align="center">
  <img src ="https://thepracticaldev.s3.amazonaws.com/i/b3sednix1286sgpunpga.gif" width="700" />
</p>

| Field  | Description |
| ------------- | ------------- |
| events  | action types and time since last dispatch |
| actions  | the action object that was dispatched |
| effects  | difference between the states before and after the action was dispatched  |
| state  | the state object after the action was dispatched  |

### Contributing

Feel free to fork our rep.  We welcome pull requests. For suggestions or to report bugs please log an issue.
Initialize a const variable inside a function getting called simultaneously
Tags: help
Published: 2019-03-22 14:45:20

---
title: Initialize a const variable inside a function getting called simultaneously
published: true
tags: help
---

### What is the good practice to initialize a variable inside a function that is getting called simultaneously like a call back function for search?


I have a function for search right now which is getting called with every key press in React. Is it good to do:


```
constructor() {
    this.searchResults = []
}


searchResult  = term => {
    this.searchResults = this.array.filter(arr => term == arr.something)
    this.setState({ searchResults: this.searchResults })
}

```

OR 

```
searchResult  = term => {
    const searchResults = this.array.filter(arr => term == arr.something)
    this.setState({ searchResults })
}

```

Will the const variable get garbage collected after each keypress?
Creating A CloudSigma Account To Build OpenBSD Servers
Tags: vps, cloudsigma, iaas, openbsd
Published: 2019-03-22 14:44:32

---
title: Creating A CloudSigma Account To Build OpenBSD Servers
published: true
description: CloudSigma, an IaaS company, supports OpenBSD. This post shows how to create a CloudSigma account. If you want to have OpenBSD servers in the cloud, CloudSigma must be a good option. I wish your pleasure of computing.
tags: vps, cloudsigma, iaas, openbsd
series: CloudSigma OpenBSD
---

## CloudSigma, An IaaS Company, Supporting OpenBSD

If you want to have [OpenBSD](https://www.openbsd.org/) servers in the cloud network, [CloudSigma](https://www.cloudsigma.com/) must be a good option.

CloudSigma is an infrastructure as a service, aka IaaS, company.
According to [one of their posts](https://www.cloudsigma.com/running-freebsd-netbsd-and-openbsd-in-the-cloud/):

> If you didn’t already know it, we’re one of the few cloud providers in the world that allows you to run unmodified [FreeBSD](http://cloudsigma.wpengine.com/landing/freebsd-cloud-hosting/), NetBSD and OpenBSD (including derivatives, such as pfSense).

Besides, their pricing is [here](https://www.cloudsigma.com/pricing/), which is followed by "Custom Cloud Infrastructure Calculator".
You can see more of their features [here](https://www.cloudsigma.com/features/).

## How To Create An Account

In order to start to use CloudSigma service, we need to create an account first of all.

Visit: https://gva.cloudsigma.com/

![sign-in page](https://thepracticaldev.s3.amazonaws.com/i/p33b7lqogf52bi49v4mq.png)

---

#### Notes \#1: Supported Languages

![languages](https://thepracticaldev.s3.amazonaws.com/i/zomow9avcyouyi2lzfr8.png)

#### Notes \#2: Regions

![regions](https://thepracticaldev.s3.amazonaws.com/i/u58crl3qfnhfn248s21e.png)

---

"Create your Account Now. Sign Up"
Use this form at the center/bottom in the page:

![sign-in form](https://thepracticaldev.s3.amazonaws.com/i/nbm2k3ooluoolao8ycev.png)

**Important**: remember to choose a region. ("Geneva, Switzerland", the default set, matches your need?)

![filled form](https://thepracticaldev.s3.amazonaws.com/i/8baxjaiejo1nnylh4cw3.png)

You'll have to give payment verification to complete signing up.
You'll be asked 3 photos:

- Your identification card
- Your bank/credit card showing just the last 4 digits
- Selfie with your bank/credit card in your hand

[Here](https://www.cloudsigma.com/questions/what-forms-of-payment-do-you-acceptx/) they say "bank transfer, Visa, Mastercard, American Express and Paypal" are acceptable.

---

#### Notes \#3: If You Have Any Trouble

![live support 24/7](https://thepracticaldev.s3.amazonaws.com/i/9bilkfndet1i039270e7.png)

I have been helped by "Live Support 24/7" for many times!
I greatly appreciate their support which is always quick and kind.

---

I wish your pleasure of computing :)
Full Stack vs Full Cycle developer
Tags: fullstack, fullcycle
Published: 2019-03-22 14:14:30

---
title: Full Stack vs Full Cycle developer
published: true
description: 
tags: fullstack, fullcycle
---
## Full Stack developer

In the last years, the term full stack developer grown in many job opportunities, mainly in startups. According to this post, a full stack developer is:

<!--more-->

> […] an engineer who can handle all the work of databases, servers, systems engineering, and clients. Depending on the project, what customers need may be a mobile stack, a Web stack, or a native application stack.

And the post, that is awesome, add a list of things that a person should learn to become a full stack developer: programming languages, databases, cache, design, UX, and so on.

If this can overwhelm to someone that is a developer for some years it is frightening for a newbie. I have an opinion about it, but before let see what is a full cycle developer.

## Full Cycle Developer

This name first appears [in a post](https://medium.com/netflix-techblog/full-cycle-developers-at-netflix-a08c31f83249) from Netflix’s technology blog, in 2018.

In this post the author explains the problems they were facing and how they achieve a model:

> […] we arrived at a model where a development team, equipped with amazing developer productivity tools, is responsible for the full software life cycle: design, development, test, deploy, operate, and support.

Ok, ok, probably you don’t have the same performance, scalability or complexity problems that Netflix had. But if you replace *development team* for *developer* we can reach the point that made me write this post.

Instead of learning superficially all technologies related to developing a software (backend, frontend, databases, UX, etc), is more important a developer that can manage a task, from design to deploy and support.

That is basically the scenario I’ve been working with in the last years. In this time I worked with specialists in their fields that was able to, thanks to their knowledge and tools, to manage all the development cycle cited in Netflix’s post.

I believe this is a is a healthier way to evolve in a software development career. That way, one can become a more responsible and complete professional, able to be a specialist and work well in teams, along with other experts. That is what more and more companies will look in the years to come.
Golang: using build tags to store configurations
Tags: go, buildtags
Published: 2019-03-22 14:07:19

---
title: Golang: using build tags to store configurations
published: true
description: 
tags: Golang, buildtags
---
One of the [12 factor](http://12factor.net), a methodology for building software-as-a-service apps, is:


> Store config in the environment

<!--more-->

This is really a good practice, but to achieve this you need to have control over the environment where your app will run. Although this is easy if we are developing an API or microservice the same can’t be said if our app is a CLI that will run in other environments.

In this post, I will show how to solve this using build tags, that are conditionals passed to Go compiler.

As the first step was to created a package called config:

[![bt-1](https://eltonminetto.net/images/posts/bt-1.png)](/images/posts/bt-1.png) 

In each file, I used a build tag related to the different environments, like:

[![bt-2](https://eltonminetto.net/images/posts/bt-2.png)](/images/posts/bt-2.png) 

The important part is the first line, that set the build tag:

	// +build dev

Now, we can use the tag in the go build command (or in go test, go run, and so on):

	go build -tags dev -o ./bin/api api/main.go
	go build -tags dev -o ./bin/search cmd/main.go
	
	
The compiler ignores files that have different tags and will use the others, so we do not need to change anything else in our project.

To use the configuration we just import the config package and use it:

[![bt-3](https://eltonminetto.net/images/posts/bt-3.png)](/images/posts/bt-3.png) 

Using build tags, along with automation tools like make and the excellent [GoReleaser](https://goreleaser.com/) we can greatly ease the process of building and deploying applications written in Go.

If you want to read more about build tags a good start is the [official documentation](https://golang.org/pkg/go/build/). And if you want to see the full example the code is in [Github](https://github.com/eminetto/clean-architecture-go).
How I'm able to take notes in mathematics lectures using LaTeX and Vim
Tags: vim, latex, mathematics
Published: 2019-03-22 13:56:59

---
title: How I'm able to take notes in mathematics lectures using LaTeX and Vim
published: true
description: 
tags: vim, latex, mathematics
---

Link to blog post: [Castel.dev](https://castel.dev/post/lecture-notes-1/)
Rubber Ducky Debugging!
Tags: duck, debugging, developer, fun
Published: 2019-03-22 13:29:44

---
title: Rubber Ducky Debugging!
published: true
description: I explain the developer phenomenon that is Rubber Ducky Debugging, why it helps, and how you can use it to boost your own debugging skills.
tags: Duck, Debugging, Developer, Fun
---

When I was first introduced to the concept Rubber Duck Debugging, my eyes lit up with wonder. Ducks? At work?! What is this fantastical madness?! I imagined developers with piles of ducks surrounding them, something like this person's desk perhaps...

![Duck Desk](https://thepracticaldev.s3.amazonaws.com/i/j5gosb9m8bdksjsitlmt.jpg)

Although a Duck Army is a bit extreme, it's not entirely uncommon to find at least one developer in any given team who has a rubber duck or three.

If you aren't familiar with this concept, you're probably wondering "What in the literal heck do rubber ducks have to do with software development?" You would be staring at me incredulously and probably chalk me up to being a loony. Well, let me explain so you can get in on the secret to some fantastic debugging productivity!

<h3>Rubber Duck Debugging, Explained</h3>
Imagine, if you will, a sneaky bug that you just cannot put your finger on. Your IDE has been less-than-helpful and you've read the suspect code top to bottom for the last 20 minutes; everything looks like it should work how you'd expect but it doesn't! You call a teammate over and ask them to hear you out for a minute. As you read through the code verbally, explaining to them every detail and decision, suddenly the bug LEAPS out at you. <i>It was so obvious!!</i> You probably smack your forehead, thank your coworker, they walk away chuckling at you, and you make the change that fixes the bug.

Now consider the fact that even though we love to help one another, we're all busy and have timelines to meet. What if we could mimic that "aha" moment that hits us by articulating each piece of code line by line without the human who has to stop what they're doing to listen? Enter the Duck. You can read the code to your happy little duck friend, be it a pirate, astronaut, devil, or not a duck at all (we support equal-opportunity debugging pals). Just as your coworker didn't have to say a single word, neither will your duck. The important part is reading and explaining everything as though it is actually listening - it won't work if you gloss over the details like you did in your mind the first 26 times you read it. Talk to the Duck.

Bonus Points: You can pretend your duck is at a Kindergarten comprehension level and practice explaining your code in more simple detail, a skill many developers could use some work in.

I recommend you go find yourself a duck or two! Have fun with it, find yourself a new debugging buddy!

---

Now a request:
If you have a duck (or ducks), show me some pictures! These are mine:
![My Ducks](https://thepracticaldev.s3.amazonaws.com/i/lbd8y5p9hkdvb8rjl9om.jpg)
8 project team roles that will define your software product success
Tags: softwaredevelopment, projectteam
Published: 2019-03-22 13:23:34

---
title: 8 project team roles that will define your software product success
published: true
description: Project teams are often made up of a mess of goals, deadlines, and emotions, but only clear-cut project team roles can drive your software product and make it stronger!
tags: software development, project team 
cover_image: https://www.mindk.com/blog/wp-content/uploads/2019/03/photo-1475506631979-72412c606f4d.jpg
canonical_url: https://www.mindk.com/blog/8-project-team-roles/
---
Oftentimes, project teams are made up of a mess of goals, deadlines, and emotions, but only well-structured teams can turn this into a force that drives your software product and makes it stronger.

As a software development company, forming project teams for our client ideas is a core part of MindK’s DNA. Every new project has its special nature, so we try to adapt our teams for each of them.

We consider people to be the greatest asset in every software development project. Clear-cut project team roles and responsibilities help the project to move forward and multiply chances of success for the client’s business.

In this article, we reveal our approach to setting up the project team roles and responsibilities in Agile software development process.

[Continue reading...](https://www.mindk.com/blog/8-project-team-roles/)
Planning and Priorities
Tags: planning, dev, software, enterprise
Published: 2019-03-22 12:53:17

---
title: Planning and Priorities
published: true
description: In the enterprise world, there are more tasks to be done than tasks which could be done in a timely manner. So to choose which of them we can complete and what features we can deliver we should have plan and priorities.
tags: planning, dev, software, enterprise
---


In the enterprise world, there are more tasks to be done than tasks which could be done in a timely manner. So to choose which of them we can complete and what features we can deliver we should have plan and priorities.

## Quality Attributes

The idea for this post came to me when I was watching [Introduction to Software Architecture](https://www.youtube.com/watch?v=x30DcBfCJRI) by George Fairbanks. He mentioned a good way to make math works for you when you need to work with quality attributes.

### [H,M]

George suggested using three grades L, M, H (from low to high) and two properties - the first one is *Business Value* and *Implementation Complexity* as a second one. In result, any feature which you plan to implement and to deliver can be estimated as [H,M] or [M,H] etc. This remembers me another man with partially the same idea.

## Risks

This was @yegor256 and my [favourite article](https://www.yegor256.com/2015/08/04/nine-steps-start-software-project.html#risks) on his blog where he described a method with two properties and ten grades to measure risks. It's one paragraph about that, please just read it.

## --Divide-- Measure and Conquer

So I will try to generalize this approach and map it into enterprise routine of planning and issues prioritization.

George's formula can be transformed into V \* C where V is a business value or "priority" from a customer perspective, C is system complexity or implementation complexity which can be examined from Jira issue for example. You have priorities (Blocker, Critical, etc.) and this is *V*, you also have estimations and this is *C*. Multiplying, sum or another function between them will provide a measure by which you can sort your Service Requests and understand which of them should go first and you can make a plan with due dates and this is very important thing to the customer.

In combination with Yegor's combination of probability multiplied by impact, you can also plan and prioritize risks mitigation.

It was a map part, now just reduce and you will have a sorted set of incoming tasks which could be spread across your team to solve.

Thanks for reading - keep calm and develop software!
How to Git?
Published: 2019-03-22 12:12:11

---
title: How to Git?
published: true
description: Ever Feel Like You're Saying Yes to Things You Don't Understand? Yeah Me Too.
tags: 
---

# My Method: Nod and Shut Up

<p> This weekend, my tech mentor addressed my folder structure on Git. (My working directories are trash, yo). He gave me pointers on how to tidy things up. I took notes and nodded in response stating that I'll incorporate these changes immediately although mentally I was in a state of "wtf?". I have no clue what terms like "checkout" and "merge" look like yet but thank Buddha for Google. What is your favorite Git resource? Help a sis outttt.</p> 

 *Update: I’ve learned how to structure the branches, but I’m still getting used to committing/checking out to each one. How long did it take you to master Git?*