teleren/devto huggingface dataset:
New Service For Early stage Startups - Idea Validation
Tags: startup, design, product, mvp
Published: 2019-10-05 23:02:55

It is a common practice among software house companies to offer product design discovery workshops (similar to famous Google Design Sprint) as the first step of the cooperation.

The purpose of such workshops is to brainstorm the idea, prototype it, and propose MVP to create a detailed cost estimate of the project.
The cost varies from $2000 to $7000, depending on the length of the workshops.

I hypothesize that early-stage startups may have misaligned needs and might not benefit from such workshops for several reasons:
- They already brainstormed and defined MVP, and even got mockups and clickable prototype, they just need to learn about development costs.
- They have a product in mind but haven't thought about the problem it solves. Therefore, all they need at this stage is a brainstorming session with professionals who help them find the right direction; there's no need for prototypes or system architecture blueprint.
- Their idea is inherently wrong or impossible to execute. The workshops should conclude after the first hour or so.
- They got techies and team members with specific knowledge in-house. They just need wireframes and hi-fidelity mockups

I think such workshops should be customized for every customer while being modular.

The scenario is as follows:
I visit a software house website and compose my workshops based on my needs. I see that wireframes cost X, product canvas costs Y, etc. I select modules and send the inquiry pretty much like cars can be customized online.

Do you think this would be a good idea?

Have you ever attended any paid product design workshops?
If so, do you think there's been anything missing that would undoubtedly increase the delivered value for you as a startup founder?

I look forward to getting your feedback!
GitHub template for Rust projects
Tags: github, rust, devops, template
Published: 2019-10-05 21:38:52

Photo by Marian Kroell on [Unsplash](https://unsplash.com/photos/Y5gqglvDL9Y)

I've just finished creating a GitHub template that you can use to set up a new Rust project that GitHub Actions for Rust as a [CI](https://www.thoughtworks.com/continuous-integration) pipeline.

What this means, is that your project from day one will always perform the following cargo commands against any code changes (PRs, pushes, etc): 

- `check` - Check a local package and all of its dependencies for errors
- `test` - Execute all unit and integration tests and build examples of a local package
- `fmt` - This utility formats all bin and lib files of the current crate using rustfmt
- `clippy` - Checks a package to catch common mistakes and improve your Rust code

Here's how to use it

- go to my template: https://github.com/booyaa/gh-actions-template-rust
- click on the "Use this template" button
- fill out the project details using the new project wizard
- clone your new project
- cd to your project
- initialise the project using `cargo init --vcs none` or copy files from your existing Rust project
- commit and push your changes up to GitHub
- sit back and relax as GitHub Actions will now perform checks against any code changes submitted to your new Rust project

If you're wondering why I don't include any Rust scaffolding, it's because `cargo` already does a great job of providing this. I didn't want to perform updates as changes occur to the new project process owned by `cargo`.

As an added bonus you also get Rust's dual license of MIT and Apache v2!

I'd love to know what you think of this template. :)
Disabling click events outside of your popup
Published: 2019-10-05 20:54:25

Never inject an overlay div again (unless you want to 😉).


```
useLayoutEffect(
    () => {
      const {current: menuDOM} = menuRef;
      const body = window.document.querySelector('body');
      if (menuDOM && isOpen) {
        body.style['pointer-events'] = 'none';
        menuDOM.style['pointer-events'] = 'initial';
      } else if (menuDOM && !isOpen) {
        body.style['pointer-events'] = null;
        menuDOM.style['pointer-events'] = null;
      }
    },
    [isOpen]
  );
```
Gatsby.js Global State w/ React Context & useReducer
Tags: react, javascript, gatsby
Published: 2019-10-05 20:03:41

---
title: Gatsby.js Global State w/ React Context & useReducer
published: true
description: Use React Context API & useReducer hook to make our Global State. We then add the Global State to our Gatsby.js website and explore how to get the state to persist between Gatsby pages.
tags: react, javascript, gatsby
cover_image: https://thepracticaldev.s3.amazonaws.com/i/3b4uqpx61zwrbokrsacp.jpg
canonical_url: https://codebushi.com/gatsbyjs-global-state/
---

*This article was originally published at [codebushi.com](https://codebushi.com/)*

In this video, we'll explore Global State and how to make it persist between pages when working with a Gatsby.js website. We'll first create our global state using React's useReducer hook and Context API. I'll then show you how to incorporate our global state with Gatsby and their `wrapRootElement` functions.

TLDR: In order to get state to persist between pages with Gatsby, you'll need to add `wrapRootElement` to both `gatsby-ssr.js` and `gatsby-browser.js`. Do not try to wrap it around any `<Layout>` components.

\*Edit: The part about `gatsby-ssr.js` in the video, I left out the `.default` when requiring `GlobalContextProvider`, it should look like this:

```javascript
// gatsby-ssr.js
const React = require('react');
const GlobalContextProvider = require('./src/context/GlobalContextProvider').default;

exports.wrapRootElement = ({ element }) => {
  return <GlobalContextProvider>{element}</GlobalContextProvider>;
};
```

{% youtube ThCfN5WJ0cU %}

If you like the YouTube content, please support it by [subscribing to the channel!](https://www.youtube.com/channel/UCS6lPt9btmTG3GkU82ELygA)

GitHub Repo: https://github.com/codebushi/gatsby-global-state
I'm launching a new programming magazine!
Tags: programming, magazine, education, softwaredevelopment
Published: 2019-10-05 19:58:27

---
title: I'm launching a new programming magazine!
published: true
description: Human Readable Magazine announcement
tags: programming,magazine,education,software development
---

![Human Readable Magazine on Kickstarter](https://thepracticaldev.s3.amazonaws.com/i/rhupruli4ttpn2abkwls.png)

Hi Dev.to community!

After months of hard work we are releasing [the first issue](https://humanreadablemag.com/issues/0/) of our new programming magazine called [Human Readable Magazine](https://humanreadablemag.com/).

Human Readable Magazine is a monthly subscription-based magazine for inquisitive developers. It's full of technical deep dives of all fields of programming written by industry experts like Jonathan Boccara of Fluent C++.

Check it out, and if you like what you see-I am confident you will-consider supporting us [on Kickstarter](https://www.kickstarter.com/projects/pekalicious/human-readable-magazine-for-the-inquisitive-developer).

As always, I'm open to feedback.

Thank you.
What language would you recommend for a beginner?
Tags: discuss, healthydebate, programming
Published: 2019-10-05 19:56:54

---
title: What language would you recommend for a beginner?
published: true
description: What would you consider as a beginner-friendly language? And what would be your criteria?
tags: [discuss, healthydebate, programming]
---

This post is inspired by this tweet:

<blockquote><p>1. First language: Basic / Java<br>2. Had difficulties: Java<br>3. Most used: JavaScript / Python<br>4. Totally hate: Java<br>5. Most loved: Go / Python<br>6. For beginners: Python / Ruby<br><br>What about you?</p>&mdash; Vx. Super Di 🦄 (@cotufa82) <a href="https://twitter.com/cotufa82/status/1179601883448655874?ref_src=twsrc%5Etfw">October 3, 2019</a></blockquote>

People mention all kinds of languages in responses including JavaScript, Java, C, etc. 

I wonder how would anyone consider JS as beginner-friendly? It has `this`, prototypal inheritance, complicated coercion rules and many more. 

I'm ok with JS. This is my primary language at the moment (TypeScript and JavaScript to be precise). I'm just would not consider it beginner-friendly.

As well I would not consider Java beginner-friendly and many others. (All those languages are ok, but not beginner friendly IMO).

**What would you consider as a beginner-friendly language?** And what would be your criteria?
6-10PM challenge problem #003 solution
Tags: challenge, programming, career, interview
Published: 2019-10-05 19:24:45

<a href="https://dev.to/akbhairwal/6-10pm-challenge-problem-003-2iel">Problem#003</a>

<b> Count Island </b>




	private static int findIslandCount(int[][] binaryMatrix) {

		int count = 0;
		int[] arr = new int[2];
		Queue<int[]> queue = new LinkedList<int[]>();
		for (int i = 0; i < binaryMatrix.length; i++) {
			for (int j = 0; j < binaryMatrix[0].length; j++) {

				if (binaryMatrix[i][j] == 1) {
					arr[0] = i;
					arr[1] = j;
					queue.add(arr);
					bfs(binaryMatrix, i, j, queue);
					count++;
				}
			}
		}

		return count;
	}

	private static void bfs(int[][] binaryMatrix, int i, int j, Queue<int[]> queue) {

		int[] arr;
		int x, y;
		while (queue.size() != 0) {

			arr = queue.poll();
			x = arr[0];
			y = arr[1];
			binaryMatrix[x][y] = 0;
			if (x - 1 >= 0) {
				if (binaryMatrix[x - 1][y] == 1) {
					arr = new int[2];
					arr[0] = x - 1;
					arr[1] = y;
					queue.add(arr);
				}

			}
			if (x + 1 < binaryMatrix.length) {
				if (binaryMatrix[x + 1][y] == 1) {
					arr = new int[2];
					arr[0] = x + 1;
					arr[1] = y;
					queue.add(arr);
				}

			}

			if (y - 1 >= 0) {
				if (binaryMatrix[x][y - 1] == 1) {
					arr = new int[2];
					arr[0] = x;
					arr[1] = y - 1;
					queue.add(arr);
				}

			}
			if (y + 1 < binaryMatrix[0].length) {
				if (binaryMatrix[x][y + 1] == 1) {
					arr = new int[2];
					arr[0] = x;
					arr[1] = y + 1;
					queue.add(arr);
				}

			}

		}

	}
A new open source deal for Web3
Tags: etcsummit, ethereum, opensource, video
Published: 2019-10-08 04:32:17

---
title: A new open source deal for Web3
published: true
date: 2019-10-05 17:55:56 UTC
tags: ETC Summit,Ethereum,open source, video
canonical_url: https://blog.fission.codes/a-new-open-source-deal-for-web3/
cover_image: https://images.unsplash.com/photo-1537151608828-ea2b11777ee8?ixlib=rb-1.2.1&q=80&fm=jpg&crop=entropy&cs=tinysrgb&w=1080&fit=max&ixid=eyJhcHBfaWQiOjExNzczfQ
---

I gave the morning keynote at the [ETC Summit](https://etcsummit.com) in Vancouver. Thank you to Bob Summerwill and the entire Ethereum Classic community for the opportunity.

While I do talk about next gen "code" technology a lot, I am increasingly talking about innovation in licensing, principles, and ways of organizing people as crucial "technology".

In this case, we may have new tools like blockchain to use for incentives and trust, but they themselves are built on open source as a foundation.

<!--kg-card-begin: image-->

![A new open source deal for Web3](https://s3.fission.codes/2019/10/stackgov.png)

<!--kg-card-end: image-->

I wrote about the [Ethereum Governance Stack on my blog explaining these layers](https://blog.bmannconsulting.com/ethereum-governance/). This pretty much applies to the Ethereum Classic community as well, just with some different companies and people involved.

Probably my most controversial point of view is that higher level dapp developers should be involved in lower level blockchain infrastructure:

<!--kg-card-begin: image-->

![A new open source deal for Web3](https://s3.fission.codes/2019/10/contributing.png)

<!--kg-card-end: image-->

If you're treating the built-on-open-source-contributors global blockchain as something you just pay gas fees to, you don't fully understand the network of code AND people you are involved with.

<!--kg-card-begin: image-->

![A new open source deal for Web3](https://s3.fission.codes/2019/10/makersandtakers.png)

<!--kg-card-end: image-->

[Dries Buytaert's post on Balancing Makers and Takers](https://dri.es/balancing-makers-and-takers-to-scale-and-sustain-open-source) is an excellent read about the nature of open source software systems that include commercial entities. It's a must read for an overview of the current state of things, as well as great links to many resources.

There is an excellent explanation of Public Goods and Common Goods that provided a real "ah ha!" moment for me about how different resources are shared or fought over when considering open source code / community.

<!--kg-card-begin: image-->

![A new open source deal for Web3](https://s3.fission.codes/2019/10/newdeal.png)

<!--kg-card-end: image-->

Getting involved in the evolution of data ethics, licensing, and many other open source adjacent topics is non-optional for blockchain & web3 builders.

Video of my talk is available at the beginning of the [ETC Summit Day Two Livestream, which you can view on YouTube »](https://www.youtube.com/watch?v=f4T9o0Ev26k&start=3240)

You can [view the full presentation on Notist »](https://noti.st/bmann/jdWV9f/)
Day 4/100 - Type Annotations and Type Inferences in TypeScript
Tags: typescript, javascript, 100daysofcode
Published: 2019-10-05 17:49:34

Sometimes it hard to sit on Saturday and fire up your laptop and work. You just wanna bail on it and relax. Still, I am very excited to learn TypeScript. So, today I learned Type Annotations and Type Inferences.

#### What are Type Annotations?
Type Annotations are the code added to tell TypeScript compiler that the value is of a particular type. 

For example: 
```javascript
let name: string = "Abhay Nikam";
let hasName: boolean = true;
```

In the example above, we are telling TypeScript that the name is of type string. It should always refer to the string type. If we reassign it to another type, TypeScript will throw an error.

Try following in [TS playground](https://www.typescriptlang.org/play/)
```javascript
let userName: string = "abhay";
userName = true;
```

#### What are Type Inferences?
Type Inferences is letting TypeScript figure out the type of value it refers to.

For example: 
```javascript
let name = "Abhay Nikam";
``` 

In the example above, TypeScript guesses what type of value name should refer to. Here it would be a string. If anything apart from string is reassigned to the name variable, TypeScript throws an error.

After understanding the differences and the definition of the Type Annotations and Type Inference, worked on trying to use them in code. Following is the usage of Type Annotations:
```javascript
let name: string = "Abhay";
let age: number = 25;
let hasName: boolean = true;
let nothingMuch: null = null;
let nothing: undefined = undefined;

// Built-in objects
let now: Date = new Date();

// Array
let colors: string[] = ["Red", "Green", "Blue"];
let myNumbers: number[] = [1, 2, 3];

// Classes
class Car {}
let car: Car = new Car();

// Object literal
let coordinates: { x: number, y: number} = {
  x: 10,
  y: 20,
};
```

Happy Coding.
What are your impressions of your self-taught co-workers?
Tags: discuss
Published: 2019-10-05 17:46:08

---
title: What are your impressions of your self-taught co-workers?
published: true
description: Work with a self-taught dev? What do you think they do well? Where could they improve?
tags: discuss
---

Do you have a self-taught coder as a co-worker?

What are your impressions of them?

What are some of their strengths?

Where could they improve?

Do you think those things are tied to their self-taught experience?

Are they confident?
Can someone explain this Kotlin expression.
Tags: kotlin, help, explainlikeimfive
Published: 2019-10-05 16:11:20

I am learning android development using kotlin. Being primarily a web developer, I am new to both technology.

While looking for API-29 Connectivity Solution (`NetworkInfo` and `getActiveNetworkInfo` are deprecated in `API-29`), I ran across this expression for variable declaration.

```kotlin
 protected var callbackFunction: ((Boolean) -> Unit) = {}
 
 abstract fun startListening(callback: (Boolean) -> Unit)
```

How would I interpret this? Do I say, _`variable callbackFunction is of type Boolean, Or of type Unit`_. Or something else. In that abstract function, is callback type of Boolean or Unit or something else? 

Also I am a bit confused, about the curly braces. Does it mean variable is initialized by an empty anonyms function ( something like in javascript ) or is it something entirely different concept?
LibreOffice: 日本語の漢字箇所に中国語のフォントが表示される現象
Tags: libreoffice, text, japanese, kanji
Published: 2019-10-05 16:52:23

---
title: LibreOffice: 日本語の漢字箇所に中国語のフォントが表示される現象
published: true
description: LibreOffice で日本語入力を行ったときに、漢字が中国語で表記されることがあります。LibreOffice 「言語設定」中の「アジア語表記」におけるデフォルト値が原因で、本事象が発生します。メニューバーの [ ツール (T) ] - [ オプション (O) ] の「言語設定」から修正できます。
tags: libreoffice, text, japanese, kanji
---

#### 事象

LibreOffice で日本語入力を行っていたときに「おかしいな」と違和感を感じることがありました。
漢字が中国語のフォントで表示されているためだと気付きました。

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/zq2as6xb9ic1somgu10i.jpg)

左がオリジナル、右が本記事の修正方法で修正を行った後、です。
「細」「図」の表記が異なっています。

#### 原因

LibreOffice の「言語設定」の内容が原因です。
設定項目「アジア語表記」におけるデフォルト値（インストール時に設定される値）が「日本語」では無く「中国語」である場合があります。
この場合、漢字の表示は中国語が優先されます。

#### 修正方法

メニューバーの [ ツール (T) ] - [ オプション (O) ] から修正できます。
[ 言語設定 ] - [ 言語 ] セクションを開きます。
「アジア語表記」で「日本語」を選択します。
「OK」を押します。

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/dmg05pqhnbpsr83aiskq.png)

日本語の漢字箇所に日本語の漢字フォントが表示されるようになります。
Is it possible to blend DevOps w/ Full Stack Dev?
Tags: devops, aws, help
Published: 2019-10-05 16:50:23

**MY QUESTION**
*Are roles that blend backend/devops skills or do developers need to be 
Full Stack or DevOps?*

**Background/POV**
I'm currently a junior full stack web developer that has only worked in the industry for about a year. With a genuine personal interest in becoming more self-reliant I committed to doing all the AWS Associate certs before Jan 2020. Stretch goal is the Software DevOps Engineer Professional; we'll see if I can sneak a professional in by then. Either way I'll be happy.

*Thank you in advance for any forthcoming comments and feedback.*
A Chrome Omnibox Extension to Search Oracle's Javadoc
Tags: hacktoberfest, javascript, java, showdev
Published: 2019-10-05 15:29:47

There used to be a really nice Chrome extension for searching Oracle's Javadoc (Java documentation) directly from the "Omnibox" (the search bar at the top of the Google Chrome browser).

But that extension hasn't been maintained since about Java 7 (pre-2014) and as a result was very out of date.

[My new extension](https://chrome.google.com/webstore/detail/java-api-search-jdk-9-13/nlgnliljjenkennnfnllgcolafcipoab) can be used to search the documentation of any JDK (Java Development Kit) version 9 through 13, inclusive.

Developing an Omnibox extension is a bit of work (especially if you're not very familiar with JavaScript callbacks, like me), but the end result is pretty cool:

![Screenshot of a browser using the Javadoc Omnibox extension](https://thepracticaldev.s3.amazonaws.com/i/66qz79n2wvfu7o51is8k.png)

![Screenshot of a browser using the Javadoc Omnibox extension, just before hitting "return" to see the search result](https://thepracticaldev.s3.amazonaws.com/i/o360d4k0tqxaun2f1xpf.png)

![Screenshot of a browser showing the search result, a page in the Oracle Javadoc](https://thepracticaldev.s3.amazonaws.com/i/zmhks431xzecg5iqyflp.png)

I've never done anything like this before, so my solution is definitely suboptimal (for instance, I simulate a search entry in an `input` field with key events, rather than interfacing with the search code itself). If anyone who knows a bit of JavaScript would be willing to help out, feel free to [submit a pull request!](https://github.com/awwsmm/java-api-search)

If you're interested in creating your own [Omnibox extensions](https://developer.chrome.com/extensions/omnibox), there are [some examples online](https://developer.chrome.com/extensions/samples#search:omnibox). If you know a bit of JavaScript, it's _really_ easy -- just a single function that gets called when the user uses a keyword in the Omnibox. Not very spoopy, but that's my Hacktoberfest contribution to the world!

---

If you enjoyed this post, please consider supporting my work by <a href='https://ko-fi.com/Z8Z811E9B'>buying me a coffee</a>!
Perform a POST request to API from React using Express Server
Tags: react, express, axios, node
Published: 2019-10-05 14:37:44

Hi, I am trying to perform a POST request to our API (on a seperate server) from React using Express Server.  All GET requests are working ok and when I do a POST request from a form in React, the req.body data is received by the express server and console.log shows this on the server.
My problem is taking this data and posting it back to the API.
I have a question here on stackoverflow so I wont retype it all out.  Just hoping somebody can help with this as ive been trying to figure out for a few days now.  Thanks.
https://stackoverflow.com/questions/58222743/sending-req-body-from-react-to-express-then-post-to-api
Hacktoberfest Owasp English
Published: 2022-03-14 20:58:17

---
title: Hacktoberfest Owasp English
published: true
date: 2019-10-05 14:26:27 UTC
tags: 
canonical_url: 
---

October is here and everyone is running after their 4 PR’s to win a digitalocean t-shirt!

For those who don’t know, in October there is Hacktoberfest, an online and global event where people are awarded for contributing open source code. More information you can see on the official website of the [event](https://hacktoberfest.digitalocean.com).

# OWASP and projects!

The information security crowd knows how important the tools that assist in the process of code and vulnerability analysis are, and now is the time to contribute these tools and materials.

Here’s a list of the most interesting OWASP projects that can help you with your work and also accept that you contribute code or documentation:

## OWASP Top 10

It is a web application security awareness document. It meets the most critical web application security risks. In this list you can find some vulnerabilities, such as checking if your application is not vulnerable to them and also some countermeasures. [Github](https://github.com/OWASP/Top10/issues)

## OWASP Zed Attack Proxy(ZAP)

ZAP is a popular vulnerability testing tool among security professionals and pentesters. It can help you in the process of finding and addressing vulnerabilities in your web applications. [Github](https://github.com/zaproxy/zaproxy/) [ZAP Extensions](https://github.com/zaproxy/zap-extensions/)

## OWASP Juice Shop Project

As they like to say, it’s probably the most modern and sophisticated insecure web application! Yes, that’s right, an insecure application for you to test and learn about the Top 10 vulnerabilities, with a complete learning support, book and tools to make learning easier. [Github](https://github.com/bkimminich/juice-shop)

## OWASP DefectDojo

A great vulnerability management tool, it streamlines the testing process with modeling, reporting, and metrics tools. Stop spending a fortune on other vulnerability managers and start contributing the code of this powerful tool. [Github](https://github.com/DefectDojo/django-DefectDojo/)

## OWASP Amass

DNS enumeration and infrastructure mapping with techniques for obtaining web-scraped subdomains, APIs, and querying public databases. All that power in one simple tool is worth putting in your utility belt-bat. [Github](https://github.com/OWASP/Amass)

## OWASP D4N155

OSINT In a smart way, this project creates wordlists based on the content of your target along with Google Dorks techniques. In the future some data intelligence features will be added and you can be part of the development of this tool. [Github](https://github.com/OWASP/D4N155)

These are some of the many projects, so if you want to know all the projects, you can check out the [project repository](https://www.owasp.org/index.php/Category:OWASP_Project#tab=Project_Inventory). If you would like to participate in the projects, log into the project github or contact your Project Leader.