teleren/devto huggingface dataset:
The .NET Docs Show: Accessibility, Autonomous Systems 🤖, and more
Tags: dotnet, machinelearning, a11y, dotnetdocsshow
Published: 2020-09-28 18:46:03

---
title: The .NET Docs Show: Accessibility, Autonomous Systems 🤖, and more
published: true
description: The .NET Docs Show is joined by John Alexander for a discussion about accessibility and machine teaching with Project Bonsai.
tags: dotnet, machinelearning, a11y, dotnetdocsshow
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/qaj783v24si78c1vrpc4.png
---

In this episode of [The .NET Docs Show](https://dotnetdocs.dev), John Alexander ([@johnalexander](https://twitter.com/johnalexander)) provides an introduction to machine teaching with Project Bonsai.

The #HallwayTrack segment offered a live walkthrough of the quickstart doc shared in the #CheckUp segment. John started with a 3D simulation of a moab device and ball and then switched to a physical moab device with a ball. We learned how to balance a ball on the device using the power of artificial intelligence. Along the way, a declarative, strongly typed programming language called [Inkling](https://docs.microsoft.com/bonsai/inkling) was used as the teaching code. John also announced that a .NET SDK for Project Bonsai is in the works and that samples are coming soon!

This segment also covered some impactful accessibility initiatives of recent times at Microsoft. John shared his experience beta testing the Xbox Adaptive Controller. We heard about how the controller has changed his life as a gamer living with cerebral palsy. 

{% youtube TqiMDHhADi8 %}

If you liked this video and want to see more of our .NET content, subscribe on [YouTube](https://www.youtube.com/dotnet) and follow us on [Twitter](https://twitter.com/dotnetdocsshow). 

# #CheckUp

- [Quickstart: Balance a ball with AI (Moab)](https://aka.ms/bonsai-moab)

# Useful links

- [The .NET Docs Show](https://dotnetdocs.dev)

## Autonomous system links

- [Bonsai documentation](https://docs.microsoft.com/bonsai/)
- [Microsoft Project Bonsai Workshop Series](http://aka.ms/as/workshop)
- [Autonomous systems with Microsoft AI page](https://aka.ms/as)
- [Autonomous systems overview video](https://aka.ms/as/video)
- [Use Cases for Autonomous Systems](https://www.microsoft.com/ai/autonomous-systems-solutions?activetab=pivot1%3aprimaryr5)
- [Machine teaching: How people's expertise makes AI even more powerful](https://blogs.microsoft.com/ai/machine-teaching/)
- [Project Moab](https://aka.ms/moab)
- [Machine Teaching Demos](https://aka.ms/as/simcity)
- [Want to know more about Inkling?](https://docs.microsoft.com/bonsai/inkling/)
- [Introducing the Xbox Adaptive Controller](https://www.youtube.com/watch?v=9fcK19CAjWM)

## Accessibility links

- [Inclusive Design Toolkit](http://www.inclusivedesigntoolkit.com/)
- [Inclusive Tech Lab](https://inclusivetechlab.github.io/web/index.html)
- [Introducing the Xbox Adaptive Controller](https://www.youtube.com/watch?v=9fcK19CAjWM)
- [Mismatch (Inclusive Design book) by Kat Holmes](https://www.amazon.com/Mismatch-Inclusion-Simplicity-Technology-Business/dp/0262038889)
noobDEV is Calling!!
Tags: webdev, machinelearning, android, datascience
Published: 2020-09-28 18:46:00

Software development has never been an easy task, the more you do, the more you learn, and the more you learn, you understand that you know nothing..!!

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/8ljvc9l0voa6yrxzoj34.jpeg)

We present before you an opportunity to join such newbies; to work with them;
to taste a wide variety of development domains....and dive into the one which you find interesting..!!
*A place to learn, present and explore the skills*

We welcome you to join <noobDEV> ;
a developers’ society to help its members by guiding them through various domains of Development.
<noobDEV> is made by the newbies; for the newbies...!!

Come and Join!!!
link given->
https://www.linkedin.com/posts/gauravsingh9356_devlopment-opensourcedevelopment-opentoconnect-activity-6716413628955795456-DJwt
Salesforce Standup with Jae Taylor
Tags: career
Published: 2020-09-28 18:43:47

*Welcome to the Salesforce Standup, where we check in with employees in our Technology, Marketing, and Product organization from locations all over the world! At every Standup we ask our guest some questions to help us get to know them better. As any good standup should be, it's a quick chat where we’ll find out answers the questions that matter most—or maybe are just the most fun. You’ll have to watch to find out.*

Today's guest, Jae Taylor, is a director of Product Management for Service Delivery at Salesforce. That means he drives the efforts to make sure our platform, which so many people depend on, is highly available and highly performant.

Outside of work, Jae is passionate about the importance of mentorship, which he's seen at play throughout his varied career. He's not a morning person but has started running first thing and finds it makes him more alert and productive throughout the day. And, he loves spending time with his kids building video games.

![Jae is pictured with his wife and four children.](https://dev-to-uploads.s3.amazonaws.com/i/ng8xmxc5l1kf12fm9w8o.jpg)

Catch the whole interview to find out more about Jae!

<blockquote class="twitter-tweet"><p lang="en" dir="ltr">We caught up with <a href="https://twitter.com/JaeInTech?ref_src=twsrc%5Etfw">@JaeInTech</a> in the latest edition of the <a href="https://twitter.com/hashtag/SalesforceStandup?src=hash&amp;ref_src=twsrc%5Etfw">#SalesforceStandup</a>. He loves Korean food, building games with his kids in <a href="https://twitter.com/unity3d?ref_src=twsrc%5Etfw">@unity3d</a>, and starting his day on his <a href="https://twitter.com/onepeloton?ref_src=twsrc%5Etfw">@onepeloton</a> treadmill! Watch the video to learn what new gadget has changed the way he uses his phone <ahref="https://t.co/AGhR65IsYG">pic.twitter.com/AGhR65IsYG</a></p>&mdash; @SalesforceEng (@SalesforceEng) <a href="https://twitter.com/SalesforceEng/status/1309515251516420096?ref_src=twsrc%5Etfw">September 25, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
Announcing the third iteration of Front End News
Tags: news, frontendnews
Published: 2020-09-28 18:28:06

Hello everyone and welcome back to Front End News, the third edition. Several weeks ago I announced taking a break while I prepared an updated, better version. Well, we're almost there, for the first iteration of this season will roll out next week.

As you might know already (or not), Front End News is a weekly selection of carefully curated news from the web industry, major software updates and releases, and other useful information. You can get a taste of what I have in store from you by checking the previous editions hosted here on Dev.to: [Season 2](https://dev.to/adriansandu/1-million-netlify-devs-js1024-results-cfp-for-js12kgames-and-results-for-state-of-frontend-2020-front-end-news-1j0d) and [Season 1](https://dev.to/adriansandu/the-web-almanac-updated-front-end-developer-roadmap-and-v8-7-9-preview-front-end-news-27-4bdo).

There is one major change in this latest iteration, namely the distribution method. For the first time, this will be a true newsletter, so the fastest way to get the news is to receive them directly in your inbox, every Monday. A web version will also be syndicated here, as before, but with a delay of a day or two.

![Subscribe to the Front End News newsletter](https://dev-to-uploads.s3.amazonaws.com/i/88ykvhllxkrt4v2l7923.png)

To subscribe, all you have to do is head out to the brand new [Front End Nexus website](https://frontendnexus.com/), drop your email address in the form on the homepage, and click on the link in the confirmation email. That's it! Or follow the link below. It leads to the same place.

***

### [Click here to subscribe to the newsletter](https://frontendnexus.com/)

***

Further updates and notifications will be distributed via the Front End Nexus Twitter account [@frontendnexus](https://twitter.com/frontendnexus), so you should also head there and drop a follow.

Thanks a million for being with me all this time and I am looking forward to getting in touch with you again soon with this upcoming relaunch.

Have a great and productive week, keep yourselves safe and I will see you next time!
noREST - schema-less REST API
Tags: node, rest, nosql, typescript
Published: 2020-09-28 18:14:08

I finally got the courage to publish my side project which I am working on for nearly one year. It's called noREST -> and, as the name implies, the name is referring indirect to noSQL. That's because the concepts are quite similar. Like noSQL, the differentiating is the non-schema layout of noREST. So basically it's an API without a fixed interface. You might question, what do I need an API without an interface for? It's like buying a house without a contract, or not?

You might be right: Having no fixed schema/interface on an API mostly sounds strange and does somehow contradict the intention of an API. APIs are designed to give the programmer an interface that defines how the data needs to be shaped. Like a purchase contract when buying a house: Everything needs to be in place, there are rules and rights that need to be followed and there is a notary who ensures the contract. If something in the contract is invalid the deal will not be signed. 

However, even buying a coffee is already a purchase contract. And they mostly follow the same rules: The barista is offering the coffee and you are willing in on the contract by simply stating "Can I get grande latte chocolate whatever thingy". As soon as the exchange of money and "coffee" is done, the deal is closed. No notary, no fixed contract, no signing. Still a valid purchase contract.

The same goes for APIs: Sometimes the need for a simpler and easier contract then traditional schema bounded APIs is a valid use case. Especially when it comes to server-side-rendering or when you simply just scratching an app and want to focus on building the UI first.

That is what noREST is built for. By simply calling `npx @norest/cli` you get a REST-full server, which follows very simple rules (like buying a coffee). These rules are designed to allow rapid development. One of the core rules is, that there is no schema. Endpoints are defined by so-called `index fragments` which are simply data itself with a special prefix:

```
POST /api
{
   "name": "foo",
   "price": 10,
   "#_products": {}
}
```

Is the above data posted to the API, the data is requestable via a `GET /api/products` simply because the index fragment `"#_products": {}` is added to it. That way you can store any data to the API and still using it in a RESTfull manner. Like noSQL just for APIs. Simply called noREST.

What most people don't know: noSQL stands for **not only** SQL. Meaning that it allows more than just querying data. The same goes for noREST. Currently, there is authentication, metadata, references, and WebSocket support out of the box and more is planned as plugins. 

If you like the idea, you can see all that in action on the small interactive playground at [https://notonly.rest](https://notonly.rest). If you want to dig deeper into noREST, the best way to start is the [GitHub page](https://github.com/janhommes/noREST). 

Thanks for reading about my little side project. I would be happy to hear your thoughts about this?
Journal Entry #2: Hello World! ... The first code
Tags: cpp, nano, devjournal
Published: 2020-09-28 18:10:23

Today, I wrote my first "Hello World" code in C++. This seems to be the first code every developer writes. 

Before writing the code, there is a prerequisite. As you see, every code needs to be translated into machine code for computers to understand. The C++ code also needs to be translated into machine code. Compilers do the translating for us. 

C++ requires a compiler named GNU compiler collection ... GCC in short. This compiler seems like a common compiler for many programming languages. I had to install it before compiling my *Hello_world.cpp* file. All the installation and code compilation was done from terminal and the code was written in nano text editor. I performed all the tasks in Ubuntu 20.04. 

All the steps to write the Hello World code is as follows: 

**Step 1:**
Fire up a terminal by pressing *ctrl+alt+T* and install G++ (Linux OS) by typing
```
$sudo apt install g++
```
Do not forget to type your password. You will be seeing a bunch of lines running down after that.

**Step 2:**
Confirm if g++ is installed or not by typing
```
$g++ --version
```
You will see an output like this. 
```
g++ (Ubuntu 9.3.0-10ubuntu2) 9.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
```
**Step 3**
Create a new directory in your preferred location and change directory to the one you created. You might have to use sudo to create a directory.
```
$sudo mkdir hello_world
$cd hello_world
```
**Step 4**
Create a text file
```
$touch hello_world.cpp
```
**Step 5**
Edit the file using nano editor. In other words, type nano with the cpp file.

```
$sudo nano hello_world.cpp
```
A command-line editor will open. Here you will have to writer your code.

**Step 6**
Now the moment of truth! You write your first hello world code.
```
#include <iostream>
using namespace std;
int main(){
     cout<<"Hello World!" <<endl;
     return 0;
}
```
**Step 7**
Create a binary file.
```
$g++ hello_world.cpp -o hello_world
```
**Step 8**
Now run the binary file.
```
$./hello_world
```
This command will print a string in the terminal.
```
Hello World!
```
And Wala! You have your first code written in C++.
Hacktoberfest 2020
Published: 2020-09-28 17:49:11

Hello Everyone!
Since Hacktoberfest is around the corner, we came up with a very beginner-friendly project for you all to make open-source contributions. Hacktoberfest is a month-long celebration of open source software and is open to everyone in our global community.  

What's more? You will earn T-shirts and swags too 🥳🎉
 
Since most of us are beginners in the field of Python and Machine Learning, why not contribute to a project that is useful to others and meaningful to all.
So our project is all about having various Algorithms in Python as well as Machine Learning Algorithms together under one roof. Have a look at it:
https://github.com/geekquad/AlgoBook

For any issues or queries, please join our Slack Channel:
https://rb.gy/rzhhod
Upload Your Android Game To Google Play Using Google Console [Beta]
Tags: gamedev, mobiledev, indiedev
Published: 2020-09-28 17:38:23

First time sharing a blog with a link to one of my video. 

If there's a better practice to share a video, please let me know🙇‍♀️ and I promise ill do better for the image cover😅.

https://youtu.be/PbnYczkteSo
//
This little guide will help you upload your android game to Google Play Store using the Google Console [BETA].

»Player Setting [Keystore Doc]:
https://docs.unity3d.com/2020.1/Documentation/Manual/class-PlayerSettingsAndroid.html

»Google Play's Families policies:
https://playacademy.exceedlms.com/student/path/19753-understanding-google-play-s-families-policies
//
[Main Store Listing Graphic Size]
App icon : 
JPEG or 32-bit PNG
512 px by 512 px
Up to 1 MB

Feature Graphic: 
JPEG or 24-bit PNG (not transparent)
1,024 px by 500 px
Up to 1 MB

Phone Screenshots: 
JPEG or 24-bit PNG (not transparent)
Between 320 px and 3,840 px
16:9 aspect ratio (for landscape screenshots)
Up to 8 MB

====================

» Twitter = https://twitter.com/RehtseStudio

» Instagram = https://www.instagram.com/rehtse_studio

[ Want to learn more about Game Development ]
Visit GameDevHQ channel 
https://www.youtube.com/channel/UCR_3ge9-CEhA6USXMuthwDw
Day counter with JavaScript
Tags: html, counter, javascript, simpledaycounter
Published: 2020-09-28 17:24:19

[[clique aqui para ler português]](https://medium.com/walternascimentobarroso-pt/contador-de-dias-com-javascript-64b5674afda6)

Have you ever needed to know the difference in days between an end date and a start date? If so then we will create something simple to facilitate this counting of dates.

## CODE

First we will create the interface, we will do something simple, using only HTML.

```html
<h1>Calcular dias</h1>

<form name="form_main">
  <label for="date_ini">Date Inicial: </label> 
  <input name="date_ini" id="date_ini" type="date"> <br>
  <label for="date_end">Date Final: </label> 
  <input name="date_end" id="date_end" type="date"> <br>
  <label for="days">Dias passados: </label> 
  <span id="days"></span> <br>
  <button type="button" onclick="countDays()">Contar</button>
</form>
```

In the HTML structure, two inputs were created, one to receive the start date and the other with the end date.

Now let’s create the `countDays()` function.

```javascript
const second = 1000;
const minute = second * 60;
const hour = minute * 60;
const day = hour * 24;

function countDays() {
  let date_ini = new Date(document.form_main.date_ini.value);
  let date_end = new Date(document.form_main.date_end.value);

  let diff = date_end.getTime() - date_ini.getTime();

  document.getElementById('days').innerText = Math.floor(diff / day);
}
```

In this function (`countDays()`), the value of the start date and the end date is retrieved, and in the `diff` variable, the dates are subtracted and converted into a timestamp, after which a small calculation of the difference is made with the total of days.

ready as simple as that.

## Demo

See the complete project working below.

{% codepen https://codepen.io/WalterNascimento/pen/LYNbPPX %}

## Youtube

If you prefer to watch, I see the development on youtube (video in PT-BR).

{% youtube vdnRWeoH9Jg %}

## Thanks for reading!

If you have any questions, complaints or tips, you can leave them here in the comments. I will be happy to answer!

😊😊 See you! 😊😊
Typescript : Creating Chainable Functions
Published: 2020-09-28 17:19:43

A chainable function is one where we are able to do this:

```typescript
   // These functions are chained
   someFunction()
      .getSomething()
      .setSomething()
      .saveSomething();
  // These function are not chained
  let result = someFunction();
  result.getSomething();
  result.setSomething();
  result.saveSomething();
```
A very subtle difference in that chainable functions "hide" the object they are working with.

**Typescript Intellisense**

For a refresher on what Typescript is really about:
{% link https://dev.to/jwp/seriously-typescript-is-just-annotation-4gmc %}

Typescript's intellisense uses its own [language service](https://code.visualstudio.com/api/language-extensions/embedded-languages) to power autocompletion. Without diving too deep, if we as programmers adjust our thing to doing everything the Typescript way, we get, for free, classes and function which **always work** with Intellisense.
If we adopt the methods shown below we get the free Chainable option too.

Todo: Give examples

JWP2020 Chainable Functions in Typescript
Autoupdate days of the week from open weather data.
Tags: 100daysofcode, javascript
Published: 2020-09-28 17:15:05

I finally fixed the last bug in my weather app! The goal was to update the day of the week from the current date.

The static site:
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/8s2zaytdb2wgeqcoy1m2.png)
The code:
```javascript
const nextDay = [document.querySelectorAll('#nextDay')]
const daysOfTheWeek = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];

let dayOftheWeek = nextDay[0]
for (i = 0; i < 7; i++) {
		let timeInUnix = data[i].dt
		let dateFromUnix = new Date(timeInUnix * 1000)

		dayOftheWeek[i].innerText = daysOfTheWeek[dateFromUnix.getDay()]

if(i === 0 ){
			dayOftheWeek[i].innerText = 'Tommorrow';
		}
}

```
The code explained:
All the card elements have the same Id of `#nextDay`. I'm using `document.querySelectorAll()` to fetch all of them and store them in an array. I'll be looping through this array as i update the correct day of the week from today. I'm fetching the data from open weather API, the dt property is part of the data received from open weather. Since I'm fetching weekly data there are 7 dt properties hence I also have to loop through the properties updating them accordingly.
 
The dt property is in Unix, I'm multiplying by 1000 to convert to milliseconds then passing the value to the date object. The date object returns the date. From the date, I then attach a `getDay()` function which returns the day of the week as an integer between 0 and 6 where 0 is Sunday. I declared a variable with an array of the days of the week. To get the name of the day of the week ill pass in the integer generated by `getDay()` function as an index of my `daysOfTheWeek[] ` array.

The output from the code:
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/2ymfpohzxg1p93z6uars.png)

Link to app: [Weather app] (https://weatherapp-d2d7b.web.app/)


Key lessons from today, read the documentation! I didn't know the dt property existed until I asked for help.

_That's it for day 74_
_Let's do this again tomorrow_
What is database indexing and how it works
Tags: database, sql, postgres
Published: 2020-09-28 17:06:49

Let's say you have a dictionary book containing hundreds of thousands of words. Now, you may need to find the meaning of a word, say 'tenebrous'. What will you do? Will you search from the first page until you find tenebrous, or will you lookup for 't' index in your dictionary book and skip all other words to find the meaning of 'tenebrous'.

Indexing in the database uses the same concept as indexing in a dictionary book.

Suppose you have a table called Persons in your database, which has millions of rows containing First and Last Names of millions of Persons. For instance, here's an illustration of a similar table:

| id | first_name | last_name |
| ------ | ------ | ------ |
|1|Ahmed Ahmed | Khan |
|2| Sam | Curran |
|3| Sean | Jordan |
|4| Jeny | Stokes |
|5| Robert | Clarke |
|6| Patrick | Cummins |
|.| ... | ... |
|1000000| Luke | Wright |

Now, without indexing, when you perform a query to search for the person with the first name 'Sean' then your SQL query will look up all the 1 million rows to perform this simple operation. Now, think about how expensive such a simple query can be when data scales to ten million rows. This will be even more expensive when you join another table with another million records.

Hence, to tackle this issue, the database index comes to help. What indexing will do is sets up the column in sorted order to help in optimizing query performance and searching in a large record.

For example, if you create an index for the first_name from the above Persons table, which can be done by following SQL query:

```sql
create index person_index on persons("first_name");
```

Then, it will create a separate index named person_index for you in your database and store first_name column of the Persons table in sorted order. Similarly, along with the first_name, the index will also store the memory address of its corresponding column, so that to lookup for the data from other columns of the same row when the search operation is performed.

Now when you search for a person name 'Sean' in a Persons table, then it will only lookup for the words matching 'S' and will skip other words, just like a human being will search in a dictionary. With this, unnecessary searches can be skipped and the database performance can be boosted.

I hope this helps somebody.
Thank you.