Friday, July 29, 2022

ELIZA bot: original source code found

The History and Mystery Of Eliza With Jeff Shrager - CoRecursive Podcast

Eliza, the chatbot, was built in 1964, and she didn’t answer questions like Alexa or Siri. She asked questions. She was a therapist chatbot and quickly became famous after being described in a 1964 paper.

But here is the mystery. We’re not sure how the original version worked. Joseph Weizenbaum never released the code. But Jeff tracked it down, and some of the things we thought we knew about Eliza turned out to be wrong.

The Genealogy of ELIZA

Sunday, July 24, 2022

Chess Engines intro

Chess Engines: A Zero to One (

This a guide on how to build a Chess engine from scratch, updated periodically as I further explore the space. This assumes some basic knowledge of Chess, search algorithms, and coding.

(JavaScript, GoLang)

0hq (0hq) / Repositories


0hq/chess-ai: Chess engine written in Javascript.

some alternatives:

notnil/chess: chess package for go @GitHub (MIT)


Chess Engine : markus7800/Beth: Chess engine written in JULIA.

Friday, July 22, 2022

DARPA: Bitcoin, Ethereum in-security research

Pentagon finds concerning vulnerabilities on blockchain | TechRepublic

"Defense Advanced Research Projects Agency (DARPA), engaged Trail of Bits—a security research organization—to investigate the blockchain. Trail of Bits focused on Bitcoin and Ethereum, the two leading cryptocurrencies in the global market.

Trail of Bits says that it only takes four entities to disrupt Bitcoin and only two to disrupt Ethereum. Additionally, 60% of all Bitcoin traffic moves through just three ISPs. Outdated and unencrypted software and blockchain protocols were also identified by the organization."

Wednesday, July 20, 2022

Apple "silicon": M2 Chip vs M1

 How Does Apple’s New M2 Chip Compare to the M1? - The Plug - HelloTech

Apple claims the new M2 chip is 18% faster than the M1 while using the same amount of power.

While the M2 is faster than the original M1, it is not the fastest Apple silicon chip on the market. Since Apple launched the first M1 chip, the company quickly followed it up with the M1 Pro and the M1 Max in 2021, as well as the M1 Ultra in 2022. 

Apple's Upcoming M2 Pro Chip for High-End MacBook Pro and Mac Mini Will Reportedly Be 3nm - MacRumors

Tuesday, July 19, 2022

Amazon CodeWhisperer: AI-powered coding assistant

ML-powered coding companion – Amazon CodeWhisperer – Amazon Web Services

Now in Preview – Amazon CodeWhisperer- ML-Powered Coding Companion | AWS News Blog

 AWS debuts Amazon CodeWhisperer and new synthetic data capabilities - SiliconANGLE

"currently in preview, that uses AI to generate software code automatically. According to AWS, the service can save time for developers by automatically producing code that otherwise would have to be written manually. The result is that software projects can be completed faster.

Software teams can access Code Whisperer using a tool called the AWS IDE Toolkit. The tool is designed to integrate with a developer’s integrated development environment, or IDE, a type of desktop application that programmers use to write code and perform related tasks. CodeWhisperer supports several popular IDEs as well as multiple programming languages, including Java, JavaScript and Python."

CodeGuru, its AI code reviewer and performance profiler, and DevOps Guru, its tool for finding operation issues, the company laid the groundwork for today's launch quite a few years ago.

Copilot, GitHub’s AI-powered programming assistant, is now generally available

AWS announces DevOps Guru to find operational issues automatically

Sunday, July 17, 2022

Cloudflare Workers + WebAssembly + R2 storage

Episode #142: Cloudflare Workers with Michael Hart - Serverless Chats Podcast

Michael Hart is currently a Principal Engineer for Cloudflare Workers at Cloudflare
...what's new with Cloudflare Workers, how to add state with K/V, Durable Objects, R2, and more, how and why WinterCG is defining a new set of Web API standards, maintaining open source

Twitter: @hichaelmart

"Under the hood, the Workers runtime uses the V8 engineOpen external link — the same engine used by Chromium and Node.js. The Workers runtime also implements many of the standard APIs available in most modern browsers.

The differences between JavaScript written for the browser or Node.js happen at runtime. Rather than running on an individual’s machine (for example, a browser application or on a centralized serverOpen external link), Workers functions run on Cloudflare’s Edge NetworkOpen external link - a growing global network of thousands of machines distributed across hundreds of locations."

V8 orchestrates isolates: lightweight contexts that provide your code with variables it can access and a safe environment to be executed within. You could even consider an isolate a sandbox for your function to run in.

A single runtime can run hundreds or thousands of isolates, seamlessly switching between them. Each isolate’s memory is completely isolated, so each piece of code is protected from other untrusted or user-written code on the runtime. Isolates are also designed to start very quickly. Instead of creating a virtual machine for each function, an isolate is created within an existing environment. This model eliminates the cold starts of the virtual machine model.

Announcing support for WASI on Cloudflare Workers

In 2017 Cloudflare launched Cloudflare Workers, a serverless computing platform for creating new applications, augmenting existing ones, without configuring or maintaining infrastructure. It has expanded to include Workers KV, a low-latency key-value data store; Cron Triggers, for scheduling Cron jobs; 

Cloudflare R2 Storage includes full S3 API compatibility

Traditional object storage charges developers for three things: bandwidth, storage size and storage operations.

R2 builds on Cloudflare’s commitment to the Bandwidth Alliance, providing zero-cost egress for stored objects — no matter your request rate. Egress bandwidth is often the largest charge for developers utilizing object storage and is also the hardest charge to predict. Eliminating it is a huge win for open-access to data stored in the cloud.

That doesn’t mean we are shifting bandwidth costs elsewhere. Cloudflare R2 will be priced at $0.015 per GB of data stored per month — significantly cheaper than major incumbent providers.

db: Litestream + SQLite vs Postgres

Postgres vs SQLite with Litestream featuring Ben Johnson from (Ship It! #59) |> Changelog

Ben Johnson, the creator of Litestream, joined
Ben Johnson – TwitterGitHubWebsite

Litestream is a standalone streaming replication tool for SQLite. It runs as a background process and safely replicates changes incrementally to another file or S3. Litestream only communicates with SQLite through the SQLite API so it will not corrupt your database.

links from this podcast:

Saturday, July 16, 2022

JVM, CLR, PVM => WASM (WebAssembly)?

 Understand WebAssembly: Why It Will Change the Web - Strumenta

WebAssembly, or wasm, is a low-level bytecode format for in-browser client-side scripting. If you are writing a compiler for a programming language one option is to target a platform, like the JVM or .NET, and compile your language to the target bytecode. WebAssembly occupies the same role, so when you compiling to WebAssembly you are making your software available for all platforms where it is supported, in other words all browsers.

Java virtual machine - Wikipedia

Common Language Runtime (CLR) overview - .NET | Microsoft Docs

An introduction to Python bytecode |

Understanding Python Bytecode. Learn about disassembling Python… | by Reza Bagheri | Towards Data Science

Friday, July 15, 2022

AWS DynamoDB parallelism

 Use parallelism to optimize querying large amounts of data in Amazon DynamoDB | AWS Database Blog

how to optimize querying a large amount of data in Amazon DynamoDB by using parallelism – splitting the original query into multiple parallel subqueries – to meet these strict performance SLAs for large DynamoDB database queries.

by Zoran Ivanovic

Wednesday, July 13, 2022

Native AOT in .NET 7

ReadyToRun deployment overview - .NET | Microsoft Docs

.NET application startup time and latency can be improved by compiling your application assemblies as ReadyToRun (R2R) format. R2R is a form of ahead-of-time (AOT) compilation.

R2R binaries improve startup performance by reducing the amount of work the just-in-time (JIT) compiler needs to do as your application loads. The binaries contain similar native code compared to what the JIT would produce. However, R2R binaries are larger because they contain both intermediate language (IL) code, which is still needed for some scenarios, and the native version of the same code. R2R is only available when you publish an app that targets specific runtime environments (RID) such as Linux x64 or Windows x64.

Tuesday, July 12, 2022

video clips search tool: KlipTok

KlipTok was built entirely with .NET 6, Blazor Web Assembly, Azure Functions, Azure Static Websites, Azure Storage, and Azure Search. A writeup of the architecture 

csharpfritz (csharpfritz) / Repositories @GitHub

Indexing Video using KlipTok with Jeff Fritz @.NET Rocks! vNext

"How do you find a great video clip after the fact? Carl and Richard talk to Jeff Fritz about his work building KlipTok, a tool for making Twitch video clips more discoverable and shareable. Jeff digs into the tricky bits of KlipTok, which is all about fast indexing and searching to get to the right clip. The conversation digs into various data storage techniques and using the cloud in a way that doesn't break the bank" + links:

Monday, July 11, 2022

Terraform SDK

Home - Plugin Development | Terraform by HashiCorp

Terraform is logically split into two main parts:

Terraform Core: This is the Terraform binary that communicates with plugins to manage infrastructure resources. It provides a common interface that allows you to leverage many different cloud providers, databases, services, and in-house solutions.

Terraform Plugins: These are executable binaries written in Go that communicate with Terraform Core over an RPC interface. Each plugin exposes an implementation for a specific service, such as the AWS provider or the cloud-init provider. Terraform currently supports one type of Plugin called providers.


Sunday, July 10, 2022

Awesome CDK

 Awesome CDK | Curated list of awesome lists |

The AWS Cloud Development Kit (AWS CDK) is an open-source software development framework for defining cloud infrastructure in code.

  • jsii - JavaScript interop interface, the technology that CDK uses to create language bindings (currently supports .NET, Java and Python).
  • cdk8s - Define Kubernetes native apps and abstractions using object-oriented programming.
  • cdktf - Define infrastructure resources using programming constructs and provision them using HashiCorp Terraform.

Saturday, July 09, 2022

JSII: JavaScript Interop Interface (TypeScript => C#, Go, Java, Py for CDK)

aws/jsii: jsii allows code in any language to naturally interact with JavaScript classes. It is the technology that enables the AWS Cloud Development Kit to deliver polyglot libraries from a single codebase! @GitHub

jsii allows code in any language to naturally interact with JavaScript classes. It is the technology that enables the AWS Cloud Development Kit to deliver polyglot libraries from a single codebase!

A class library written in TypeScript can be used in projects authored in TypeScript or Javascript (as usual), but also in C# (and other languages from the .NET family), GoJavaPython, ... More languages will be added in the future!

Introduction - The jsii reference

aws/aws-cdk: The AWS Cloud Development Kit is a framework for defining cloud infrastructure in code @GitHub

Friday, July 08, 2022

GoPlus (Go+) language (Python-like GoLang?)

goplus/gop: The Go+ programming language is designed for engineering, STEM education, and data science. @GitHub

gop/ at main · goplus/gop

Golang Weekly Issue 415: June 10, 2022

GoPlus (Go+) 1.1: A More Script-y Variant of Go — A confusingly named but well intentioned Go variant, of sorts, that leans more towards Python-style simplicity for scripting, educational, and data science use cases. v1.1 brings in a lot more module support. There’s a little demo on their home page.


Wednesday, July 06, 2022

goto: "The Ideal Programming Language" Zig?

Interesting and well informed discussion about programming languages.

"no one language for all purposes", but there are common "ergonomic" and "system" requirements

GOTOpia: The Ideal Programming Language

Clojure? Elm? Roc? Zig?!

The Ideal Programming Language • Richard Feldman & Erik Doernenburg • GOTO 2021 - YouTube

The Roc Programming Language

possible alternative for Rust lang:

Home ⚡ Zig Programming Language

  • No hidden control flow.
  • No hidden memory allocations.
  • No preprocessor, no macros.
  • Call any function at compile-time.
  • Manipulate types as values without runtime overhead.
  • Comptime emulates the target architecture.
  • Use Zig as a zero-dependency, drop-in C/C++ compiler that supports cross-compilation out-of-the-box.

ziglang/zig: General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software. @GitHub

Learn ⚡ Zig Programming Language

Code Examples ⚡ Zig Programming Language

why most of them "need" { curly braces? }

Zig (programming language) - Wikipedia

Sunday, July 03, 2022

SingleStore (MemSQL DB) + WebAssembly

Live WASM Demo from SingleStore’s Launch Pad!

WebAssembly Landscape 2022 - YouTube

A Multipurpose Database For Transactions And Analytics To Simplify Your Data Architecture With Singlestore | Data Engineering Podcast

SingleStore Joins Bytecode Alliance

“The key change required to handle large data is to push the compute to the data. WASM allows you to move the compute inside the database, which can dramatically change how databases and analytical systems interact. It is going to open up all sorts of opportunities to simplify analytics, make them faster and more interactive, and lower TCO.” - Jordan Tigani, Chief Product Officer at SingleStore

SingleStore - Wikipedia

SingleStore (formerly MemSQL) is a cloud-native database designed for data-intensive applications.[3] A distributed, relational, SQL database management system[4] (RDBMS) that features ANSI SQL support, it is known for speed in data ingest, transaction processing, and query processing.[5][3]

SingleStore primarily stores relational data, though it can also store JSON data, graph data, and time series data. It supports blended workloads, commonly referred to as HTAP workloads, as well as more traditional OLTP and OLAP use cases. For queries, it compiles Structured Query Language (SQL) into machine code. The SingleStore database engine can be run in various Linux environments, including on-premises installations, public and private cloud providers, in containers via a Kubernetes operator, or as a hosted service in the cloud known as SingleStore Managed Service

"Real-time database platform SingleStore raises $80M more, now at a $940M valuation September 2021

Saturday, July 02, 2022

AWS Graviton3 EC2

AWS Releases First Graviton3 Instances @InfoQ

AWS has recently announced the general availability of the C7g instances, the first EC2 instances running Graviton3 processors. Designed for compute-intensive workloads, they provide always-on memory encryption, dedicated caches for every vCPU, and support for pointer authentication.

Announced in preview at the latest re:Invent, the C7g instances are available in eight sizes, from 1 to 64 vCPUs supported configurations up to 128 GiB of memory, 30 Gbps of network performance, and 20 Gbps of EBS performance.

WD Security SW

to enable password protection and enable hardware encryption with WD portable drives
need to install and run this software

Software and Firmware Downloads | WD Support

WD Security

WD My Passport External Portable Hard Drive HDD (1 TB to 5 TB) | Western Digital WD 5TB My Passport Portable External Hard Drive HDD, USB 3.0, USB 2.0 Compatible, Black - WDBPKJ0050BBK-WESN : Electronics

Friday, July 01, 2022

GoLang Generics: useful?

ongoing by Tim Bray · Golang Diaries: Generics

by Tim Bray, one of the original co-authors of the XML spec) finds a use case for generics in his Quamima pattern matching library, only to find that there are some ‘bumps in the road’ which he shares here for everyone’s benefit.

Tim concludes: “I don’t hate Go’s generics, which is actually pretty strong testimony given that I spent the best part of a couple of days fighting all the stuff described above. But, my guess is the Go generics story is isn’t finished yet.”

Golang Weekly Issue 412: May 20, 2022