Sunday, August 12, 2018

Blockchain in 5 Levels of Difficulty

Blockchain Expert Explains One Concept in 5 Levels of Difficulty | WIRED - YouTube

WebAssembly podcasts, repos, .NET Blazor, GoLang wasm





Here are links to some very interesting and informative interviews and GitHub repos with WebAssembly

Besides running compiled games in web browser, WebAssembly can be useful for "classic" web apps for re-using business logic and data validation code between web client-side apps and server side, in particular with web SPA (Single Page Apps) and micro-services APIs. 

Some developers may want to avoid JavaScript all together even on client side by using same programming language used on web server.

By all major web browsers now supporting WebAssembly, and available fall-back polyfills to JavaScript. WebAssembly can now run in all web browsers with reasonable performance. 
 
WebAssembly with Brendan Eich - Software Engineering Daily
"Brendan Eich created the first version of JavaScript in 10 days. Since then JavaScript has evolved, and Brendan has watched the growth of the web give rise to new and unexpected use cases.

Today Brendan Eich is still pushing the web forward across the technology stack with his involvement in the WebAssembly specification and the Brave browser."


"Lin Clark is an engineer on the Mozilla Developer Relations team, and has been working closely on the WebAssembly project. She is the author of a detailed series of illustrated blog posts that explain how WebAssembly works."






C# => WebAssembly

Blazor is a tool that runs .NET in web browser by converting to WebAssembly


"The Blazor project aims to bring .NET to the open Web using Web Assembly. Scott talks to Steve Sanderson about this experiment and it's future plans. How are they compiling C# and .NET to Web Assembly in a way that works everywhere? How does Mono and .NET Standard fit in?
https://blazor.net/"












GoLang => WebAssembly









C => WebAssembly





Azure Regions Map

This map details the spread of Azure data centers across the world | Windows Central

OpenStreetMap

OpenStreetMap

"OpenStreetMap is a map of the world, created by people like you and free to use under an open license.

OpenStreetMap is open data: you are free to use it for any purpose as long as you credit OpenStreetMap and its contributors. If you alter or build upon the data in certain ways, you may distribute the result only under the same licence."


used by Weather.com among others...


Saturday, August 11, 2018

GitHub Learning Lab


1973?s=140&v=4

free training classes

GitHub Learning Lab · GitHub Marketplace · GitHub

New courses on GitHub Learning Lab | The GitHub Blog

GitHub Learning Lab

GitHub Expands Its Learning Offerings @ InfoQ


Google Cloud Platform: IoT Edge + TPU

Google Cloud Platform Release Edge TPU and Cloud IoT Edge @ InfoQ

"Google announced it would bring two new products to their cloud platform to aid customers in developing and deploying devices close of end-users at the 'edge' of their networks. These products are the Edge TPU, a new hardware chip, and Cloud IoT Edge, an expansion of the Google Cloud AI capability for gateways as well as connected devices."

Quantum Computing in 5 Levels of Difficulty

Quantum Computing Expert Explains One Concept in 5 Levels of Difficulty | WIRED - YouTube

Friday, August 10, 2018

WebSockets & WebHooks: GoLang, ASP.NET Core, Node.js

WebSockets
Here are some useful links about WebSockets and WebHooks, for .NET, GoLang, JS

Moving Data over the Web: AJAX vs. WebSockets vs. Webhooks

"HTML5 WebSockets allow your client-side JavaScript to open and persist a connection to a server. With WebSockets, data is exchanged as messages, which can happen very quickly due to the persistent connection.
...
powerful aspect of WebSockets is a capability called full duplex, which is a fancy way of saying that both the Client and Server can send each other messages
...

A Webhook is really just a URL that accepts a HTTP POST (or GET, PUT, DELETE). One server/service will provide another with a callback URL that it should push data to when it has some data to send. Any old web server can be used really."


WebSockets - Web APIs | MDN

Writing WebSocket client applications - Web APIs | MDN




WebSocket - Wikipedia


"WebSocket is a computer communications protocol, providing full-duplex communication channels over a single TCP connection. The WebSocket protocol was standardized by the IETF as RFC 6455 in 2011, and the WebSocket API in Web IDL is being standardized by the W3C."
Webhook - Wikipedia

"A webhook in web development is a method of augmenting or altering the behaviour of a web page, or web application, with custom callbacks. These callbacks may be maintained, modified, and managed by third-party users and developers who may not necessarily be affiliated with the originating website or application."



gorilla/websocket: A WebSocket implementation for Go.

"Mail polling involves about 50,000 HTTP queries per second, 60% of which return the 304 status, meaning there are no changes in the mailbox."


WebSockets support in ASP.NET Core | Microsoft Docs

aspnet/WebSockets: Implementation of the WebSocket protocol, along with client and server integration components. @ GitHub


aspnet/WebHooks: Libraries to create and consume web hooks on ASP.NET Core

"Note: This repo is solely for the ASP.NET Core WebHooks projects (libraries to consume WebHooks on ASP.NET Core 2.0 and .NET Standard 2.0). For ASP.NET WebHooks (targeting .NET Framework 4.5), see the aspnet/AspNetWebHooks repo."

Sending WebHooks with ASP.NET WebHooks Preview | ASP.NET Blog


socketio/socket.io: Realtime application framework (Node.JS server)


How many system resources will be held for keeping 1,000,000 websocket open? - Stack Overflow

How do push notifications work? What is the basic concept behind them? - Quora

Push technology - Wikipedia

Adding Push Notifications to a Web App  |  Web Fundamentals  |  Google Developers

How does push notification technology work on Android? - Stack Overflow

600k concurrent websocket connections on AWS using Node.js - Jayway


Messaging in Distributed Systems - What's the Deal? - The Static Void Podcast

About Chromebooks

About Chromebooks – Chromebooks, Chrome OS and Chrome tablet news, how tos, views and reviews

If you want a laptop you can count on. You Chromebook. [Extended] - YouTube



Reader question: Does the Pixelbook use eMMC or SSD storage? (Answer: It depends) – About Chromebooks

Wednesday, August 08, 2018

ASP.NET Blazor Hands-On Lab (.NET + WebAssembly)



"Blazor is an experimental project and is not ready for production. It is not even released as an alpha. Significant changes to APIs and design are likely to occur and there is no official word on any timeframes or if the project will be seen through to completion."

dotnet new -i Microsoft.AspNetCore.Blazor.Templates
Official ASP.NET Blazor Repository

Wednesday, August 01, 2018

Ansible: automation tool


Ansible logo.svg

Ansible is Simple IT Automation

"Red Hat® Ansible® Tower makes it easy to scale automation, manage complex deployments and speed productivity. Extend the power of Ansible with workflows to streamline jobs and simple tools to share solutions with your team."
How Ansible Works | Ansible.com

Getting Started with Ansible | Ansible.com


Ansible (software) - Wikipedia

"Ansible is an open source software that automates software provisioning, configuration management, and application deployment.[2]. Ansible connects via SSH, remote PowerShell or via other remote APIs."


Written in Python, PowerShell