Monday, March 29, 2021

JavaScript Streams

 Streams—The definitive guide

"The Streams API allows you to programmatically access streams of data received over the network or created by whatever means locally and process them with JavaScript. Streaming involves breaking down a resource that you want to receive, send, or transform into small chunks, and then processing these chunks bit by bit. While streaming is something browsers do anyway when receiving assets like HTML or videos to be shown on webpages, this capability has never been available to JavaScript before fetch with streams was introduced in 2015."

Diagram of a pipe chain consisting of a readable stream coming from a call to the fetch API that is then piped through a transform stream whose output is teed and then sent to the browser for the first resulting readable stream and to the service worker cache for the second resulting readable stream.

Sunday, March 28, 2021

WD HDD: Blue, Red, Black, Ultrastar, My Passport?

Difference Between WD Blue, Red, Black, Green, Purple, Gold – NAS Compares

What are the WD colors and what do they mean?




Amazon.com: Western Digital 8TB Ultrastar DC HC320 SATA HDD - 7200 RPM Class, SATA 6 Gb/s, 256MB Cache, 3.5" - HUS728T8TALE6L4: Electronics

  • Up to 2.5M hours MTBF with a 5 year limited OEM warrant direct with Authorized Reseller

WD My Passport: 5TB of shingled disk capacity in my shirt pocket – Blocks and Files

Shingling


The 5TB drive, claimed to be the thinnest such drive available, uses drive-managed shingling. This slows the data rewrite process as blocks of tracks have to be read, the data altered, and then the block re-written to the drive. Fresh data writes to empty tracks proceed as normal. 

Large sequential files are accepted by the drive and written with no interruption. Smaller randomly-addressed files are stored temporarily in a cache and then, when the drive is idle, written out in a sequential manner, with address translation to speed the writing process.


WD 5TB My Passport Ultra USB 3.0 Type-C WDBFTM0050BBL-WESN B&H

AWS Step Functions + SQS

Call Amazon SQS with Step Functions - AWS Step Functions

Service Integration Patterns - AWS Step Functions


            SQS task waiting for a task token to be returned


cloud tool: Vantage: AWS Console Alternative

podcast interview with creator

Vantage: AWS Console Alternative with Ben Schaechter - Software Engineering Daily


Vantage - Your AWS companion

Understand your cloud costs
Stop getting confused by your AWS bill and let Vantage transparently show where your money is going.


Saturday, March 27, 2021

security: OWASP info

OWASP 2017 Top 10: Understanding the Security Risks | Pluralsight

Corresponding PDF: https://github.com/OWASP/Top10/raw/master/2017/OWASP%20Top%2010-2017%20(en).pdf

Secure coding is a comprehensive look at protecting client data and the steps required to do so.

https://app.pluralsight.com/library/courses/secure-coding-preventing-sensitive-data-exposure/table-of-contents

newline/fullstack: Effective (Book) Authoring + tool "cq"

podcast interview with creator and  author of popular programming books (ng-book etc)
from fullstack.io, renamed to newline.co

Effective Authoring with Nate Murray and Matt Harrison | newline


related: MetaSnake Products: Effective Book Authoring (course)


newline | Learn to build React, Angular, Vue, GraphQL, and Node.js Apps with real-world projects


GitHub - tree-sitter/tree-sitter: An incremental parsing system for programming tools

Tree-sitter is a parser generator tool and an incremental parsing library. It can build a concrete syntax tree for a source file and efficiently update the syntax tree as the source file is edited.


A query language and toolkit to query lines of code for blogs and documentation - without copying and pasting or using manual line numbers

Try the demo

Supports JavaScript ES5, ES6, JSX, and TypeScript as well as any Treesitter language: Python, Ruby, Rust, C, Java, etc.

Code Query - extract code snippets using selectors

Self-replicating Python code | Quine

Self-replicating Python code | Quine - YouTube


Quine (computing) - Wikipedia


Self-replicating and growing code in Python | by Cem Yusuf AydoÄŸdu | Medium


How to write your first Quine program | by David Bertoldi | Towards Data Science

Friday, March 26, 2021

ChatOps: "Abbot"

 A Very Serious Bot with Phil Haack @ .NET Rocks! vNext


The Updated .NET Core Event Pattern



ChatOps the easy way

Abbot is a platform to build and run automation scripts from Slack or Discord without a lot of hassle. We take care of the annoying parts of getting up and running so you can focus on the fun stuff.







Thursday, March 25, 2021

Photino: Native, Cross-Platform Web UI Desktop Apps with .NET Core (vs. Electron)

Photino: Native, Cross-Platform Web UI Desktop Apps

 Photino: Native, Cross-Platform Web UI Desktop Apps

Photino Hello world screen for Windows 10

TryPhotino @GitHub

Photino enables developers to use fast, natively compiled languages like C#, C++, Java and more.
Use your favorite development frameworks like .NET Core 5.

Photino is an incredibly light, cross-platform framework for creating apps up to 110 times smaller than Electron apps! And it uses far less system memory too!


Photino is a collection of packages that can be used for different platforms and technologies. The different packages use Photino.Native as their base package. Photino.Native is a C++ (and Objective-C) wrapper around the OS’s built-in WebKit-based browser control in it. On Windows it uses the Chromium Edge based WebView2 control, on macOS it uses Safari’s WKWebView and on Linux it uses WebKitGTK+ 2. The Photino.Native package is compiled for each platform and distributed via NuGet.

Using the native browser control reduces the overall footprint of a Photino application since there is no need to bundle WebKit in the application. Photino is cross-platform because the application communicates with the wrapper in exactly the same way on any OS. This means developers only need one code base for all desktop platforms.

While we’re concentrating on using Photino with .NET Core 5, it could be used to build Web UIs for desktop applications written in any language, like C++, Go, Rust, Java, Objective-C and others!


Monday, March 22, 2021

Sunday, March 21, 2021

GCP Kubernetes Autopilot

Google Cloud puts its Kubernetes Engine on autopilot | TechCrunch

Introducing GKE Autopilot | Google Cloud Blog

AWS Step Functions: AWS Toolkit for VS Code

AWS Step Functions adds tooling support for YAML

"AWS Step Functions now supports YAML state machine definitions within the AWS Toolkit for Visual Studio Code and in AWS CloudFormation, making it possible to define workflows in the same language as your infrastructure as code.

AWS Step Functions allows you to build resilient serverless workflows using AWS services such as AWS Lambda, Amazon SNS, and Amazon DynamoDB. The AWS Toolkit for Visual Studio Code is an open source plug-in for Visual Studio Code that makes it easier to create, debug, and deploy applications on Amazon Web Services. AWS CloudFormation gives you an easy way to model AWS resources such as state machines as infrastructure as code. Together, you can now define, visualize, and deploy Step Functions state machine-based workflows using both YAML and JSON object format, providing you with greater choice in how you build your workflows."


AWS Step Functions: Nested workflows - YouTube

Serverless Land - YouTube

AWS Step Functions: Handling errors - YouTube

Advanced Serverless Orchestration with AWS Step Functions - AWS Online Tech Talks - YouTube

AWS Step Function Deep Dive | Service Integration Patterns | Sync vs Callback Vs Activity Worker - YouTube

Complete guide to AWS Step Functions | Udemy

Saturday, March 20, 2021

Intel problems & AMD for Crypto

Intel - From Inventors of the CPU to Laughing Stock [Part 1] - YouTube

Intel - From Inventors of the CPU to Laughing Stock [Part 2] - YouTube


Intel’s Andy Grove on Looking at Problems from an Outsider’s Perspective

"By 1985, when Grove was President, Intel’s executives engaged in an intense debate on how to respond to the onslaught of Japanese competitors in the memory business. One faction of engineers wanted to leapfrog the Japanese and build better memory chips. Another faction was in favor of disposing the lucrative memory business and betting Intel’s future on its promising microprocessor technology—something they believed the Japanese couldn’t match.

The “Revolving Door Test:” Getting an Outsider’s Perspective

In the middle of this intense debate, Grove was at a meeting with Intel’s CEO, Gordon Moore (of the Moore’s Law fame.) Grove had an idea for Moore; he recalled this episode in Only the Paranoid Survive,


I remember a time in the middle of 1985, after this aimless wandering had been going on for almost a year. I was in my office with Intel’s chairman and CEO, Gordon Moore, and we were discussing our quandary. Our mood was downbeat. I looked out the window at the Ferris Wheel of the Great America amusement park revolving in the distance, then I turned back to Gordon and asked, “If we got kicked out and the board brought in a new CEO, what do you think he would do?” Gordon answered without hesitation, “He would get us out of memories.” I stared at him, numb, then said, “Why don’t you and I walk out the door, come back in and do it ourselves?”"



diagrams.net

 Diagram Software and Flowchart Maker: diagrams.net


Example diagram


Friday, March 19, 2021

EV flying taxi: Joby

Flying taxi start-up Joby to go public in deal with LinkedIn and Zynga founders | Financial Times

Please use the sharing tools found via the share button at the top or side of articles. Copying articles to share with others is a breach of FT.com T&Cs and Copyright Policy. Email licensing@ft.com to buy additional rights. Subscribers may share up to 10 or 20 articles per month using the gift article service.

It plans to start manufacturing aircraft later this year on a 450,000-square-foot facility it designed with Toyota. The Japanese carmaker last year led a $620m investment round in Joby, which led to closer co-operation between engineers of both companies.


Joby tests its new prototype last week

AWS Global Accelerator

 AWS Global Accelerator - Amazon Web Services

AWS Global Accelerator is a networking service that sends your user’s traffic through Amazon Web Service’s global network infrastructure, improving your internet user performance by up to 60%. When the internet is congested, Global Accelerator’s automatic routing optimizations will help keep your packet loss, jitter, and latency consistently low.


Single Region_edit

Wednesday, March 17, 2021

AWS Well-Architected Framework

 Map of the AWS Well-Architected Framework

AWS Well-Architected Framework - AWS Well-Architected Framework

The Five Pillars of the Framework - AWS Well-Architected Framework


Creating a software system is a lot like constructing a building. If the foundation is not solid, structural problems can undermine the integrity and function of the building. When architecting technology solutions, if you neglect the five pillars of operational excellence, security, reliability, performance efficiency, and cost optimization, it can become challenging to build a system that delivers on your expectations and requirements. Incorporating these pillars into your architecture will help you produce stable and efficient systems. This will allow you to focus on the other aspects of design, such as functional requirements.

Monday, March 15, 2021

security: Mozilla SOPS and AWS KMS

Secrets as a code with Mozilla SOPS and AWS KMS | by Gabriel Abdalla Cavalcante | mercos-engineering | Medium

"Mozilla SOPS is a cli tool to works with filetypes that relies on key:value format (json, yaml, env) and does that by **encrypting only the values**, allowing us to see the keys and thereby comprehend the set of secrets that are present on that file without leaking the values."

mozilla/sops: Simple and flexible tool for managing secrets


Introduction · SOPS

Saturday, March 13, 2021

AWS certification info

Post | Feed | LinkedIn

"(aws )Professional Certifications? Is it seriously more difficult? any suggestions on preparing?"

by Neal Davis

My AWS Certified Solutions Architect Professional Exam Experience - YouTube

Digital Cloud Training - YouTube




"I recommend that you take the free Exam Readiness course from AWS. It’s a 7-hour video course that covers various DevOps topics in AWS: https://www.aws.training/Details/eLearning?id=34146"

"It is difficult but you can definitely pass it with proper training and time management. There are some nice courses on Udemy by Stéphane Maarek , Scott Pletcher , Neal Davis Adrian Cantrill practice tests by whizlabs and tutorialdojo Jon Bonso"


Tuesday, March 09, 2021

Starbase, Texas

 Making Starbase, Texas, Sustainable & Resilient, Part 1: General Principles

Elon Musk on Twitter: "Creating the city of Starbase, Texas" / Twitter

API mock/proxy: mbtest / mountebank

mountebank - over the wire test doubles


mountebank is the first open source tool to provide cross-platform, multi-protocol test doubles over the wire. Simply point your application under test to mountebank instead of the real dependency, and test like you would with traditional stubs and mocks.

bbyars/mountebank: Over the wire test doubles @GitHub

mountebank supports mock verification, stubbing with advanced predicates, JavaScript injection, and record-playback through proxying. It also supports extensions that allow you to build custom protocol implementations in the language of your choice.






Sunday, March 07, 2021

Azure vs. AWS

apples vs oranges?

 Microsoft Wallops Amazon in 2020 Cloud Revenue

  • Q1: AWS $10.22 billion, Microsoft $13.3 billion
  • Q2: AWS $10.81 billion, Microsoft $14.3 billion
  • Q3: AWS $11.6 billion, Microsoft $15.2 billion
  • Q4: AWS $12.74 billion, Microsoft $16.7 billion
Full year: AWS $45.4 billion, Microsoft $59.5 billion



Friday, March 05, 2021

sunset/sunrise api

 Twilight - Wikipedia

Twilight on Earth is the illumination of the lower atmosphere when the Sun is not directly visible because it is below the horizon. Twilight is produced by sunlight scattering in the upper atmosphere, illuminating the lower atmosphere so that Earth's surface is neither completely lit nor completely dark. The word twilight is also used to denote the periods of time when this illumination occurs.[2]


mourner/suncalc: A tiny JavaScript library for calculating sun/moon positions and phases. @GitHub

web services - I need a sunrise/sunset webservice api - Stack Overflow

Sunset and sunrise times API - Sunrise-Sunset.org

since this is a pure mathematical calculation, there is no benefit of calling external web service api

API for sunrise, sunset, moonrise and moonset timing @ip geolocation

Sinclair ZX81: 1KB, 40 years

ZX81 - Wikipedia

"The ZX81 is a home computer that was produced by Sinclair Research and manufactured in Dundee, Scotland, by Timex Corporation. It was launched in the United Kingdom in March 1981 as the successor to Sinclair's ZX80 and designed to be a low-cost introduction to home computing for the general public. It was hugely successful; more than 1.5 million units were sold. In the United States it was initially sold as the ZX-81 under licence by Timex. Timex later produced its own versions of the ZX81: the Timex Sinclair 1000 and Timex Sinclair 1500. Unauthorized ZX81 clones were produced in several countries.

The ZX81 was designed to be small, simple, and above all, inexpensive, with as few components as possible. Video output is to a television set rather than a dedicated monitor. Programs and data are loaded and saved onto compact audio cassettes. It uses only four silicon chips and a mere 1 KB of memory. There is no power switch or any moving parts with the exception of a VHF TV channel selector switch present in some models. It has a pressure-sensitive membrane keyboard. The ZX81's limitations prompted a market in third-party peripherals to improve its capabilities. Its distinctive case and keyboard brought designer Rick Dickinson a Design Council award."

Sinclair-ZX81.png