Deeplearning.ai
by Andrew Ng
fast.ai · Making neural nets uncool again
by Jeremy Howard
Learning Deep Learning — fast.ai vs. deeplearning.ai
Two Sides of the Same Coin: Jeremy Howard’s fast.ai vs Andrew Ng’s deeplearning.ai
The Problem of Local Optima (C2W2L10)
Saturday, February 29, 2020
CockroachDB
Cockroach Labs - Wikipedia
Cockroach Labs, the company building CockroachDB
informative podcast interviews:
The Cloudcast: Scalable Databases on Kubernetes
Peter Mattis (@PeterMattis, Co-founder/CTO of @CockroachDB) talks about the evolution of scalable SQL databases, the challenges of globally scalable data management, how Kubernetes has evolved to manage stateful applications, and lessons learned running Kubernetes and CockroachDB.
Kubernetes Podcast from Google
CockroachDB, with Peter Mattis
licensed under the Business Source License 1.1 (BSL),
the CockroachDB Community License (CCL), the MIT license,
and BSD-style licenses.
Cockroach Labs, the company building CockroachDB
informative podcast interviews:
The Cloudcast: Scalable Databases on Kubernetes
Peter Mattis (@PeterMattis, Co-founder/CTO of @CockroachDB) talks about the evolution of scalable SQL databases, the challenges of globally scalable data management, how Kubernetes has evolved to manage stateful applications, and lessons learned running Kubernetes and CockroachDB.
Kubernetes Podcast from Google
CockroachDB, with Peter Mattis
CockroachDB @GitHub
GoLang
the CockroachDB Community License (CCL), the MIT license,
and BSD-style licenses.
Friday, February 28, 2020
Thursday, February 27, 2020
Learning Rust
An Introduction to Rust @ Heroku podcast "Codeish"
LINKS FROM THIS EPISODE
For books, you can get started by reading The Rust Programming Language Book or Programming Rust
For hands-on coding examples, the Rust Playground allows you to run snippets of Rust code; Rust by Example shows common programming problems solved through Rust implementations; the Rust Cookbook offers slightly longer code samples; and both Rustlings and Excercism.io have interactive tutorials
LINKS FROM THIS EPISODE
For books, you can get started by reading The Rust Programming Language Book or Programming Rust
For hands-on coding examples, the Rust Playground allows you to run snippets of Rust code; Rust by Example shows common programming problems solved through Rust implementations; the Rust Cookbook offers slightly longer code samples; and both Rustlings and Excercism.io have interactive tutorials
Rust in Motion is a video series Carol and Jake are producing to introduce developers to Rust
The Rust Belt Rust conference is where Rust developers and enthusiasts from around the world will gather to discuss production Rust usage, best practices, and what’s next for Rust.
crates.io is where Rust packages reside
The Rust Belt Rust conference is where Rust developers and enthusiasts from around the world will gather to discuss production Rust usage, best practices, and what’s next for Rust.
crates.io is where Rust packages reside
Wednesday, February 26, 2020
hybrid cloud: AWS Outposts
Amazon Releases AWS Outposts, Enabling Hybrid Data Center Architectures @InfoQ
"Amazon have announced general available of AWS Outposts, a fully managed service that extends AWS infrastructure, AWS services, APIs, and tools to "virtually any datacenter, co-location space, or on-premises facility". This solution allows customers to take advantage of AWS technology, but addresses local processing and low latency requirements. Customers place infrastructure orders online, and Amazon will ship the modular compute rack, and a trained AWS technician will connect, set up and validate the installation."
"Amazon have announced general available of AWS Outposts, a fully managed service that extends AWS infrastructure, AWS services, APIs, and tools to "virtually any datacenter, co-location space, or on-premises facility". This solution allows customers to take advantage of AWS technology, but addresses local processing and low latency requirements. Customers place infrastructure orders online, and Amazon will ship the modular compute rack, and a trained AWS technician will connect, set up and validate the installation."
Tuesday, February 25, 2020
Monday, February 24, 2020
Apollo GraphQL
Apollo GraphQL | Apollo Data Graph Platform— unify APIs, microservices, and databases into a data graph that you can query with GraphQL
Apollo GraphQL @GitHub
graphql.org/graphql-js/
graphql.org/learn/
flaviocopes.com/apollo/
softwareengineeringdaily.com/2020/01/17/apollo-graphql-with-geoff-schmidt
GraphQL Summit 2018 - Opening Keynote (Geoff Schmidt)
Apollo GraphQL @YouTube
GraphQL Tutorial #1 - Introduction to GraphQL
GraphQL Full Course - Novice to Expert
Apollo GraphQL @GitHub
graphql.org/graphql-js/
graphql.org/learn/
flaviocopes.com/apollo/
softwareengineeringdaily.com/2020/01/17/apollo-graphql-with-geoff-schmidt
GraphQL Summit 2018 - Opening Keynote (Geoff Schmidt)
Apollo GraphQL @YouTube
GraphQL Tutorial #1 - Introduction to GraphQL
GraphQL Full Course - Novice to Expert
Sunday, February 23, 2020
Code vs. Sudoku
rosettacode.org/wiki/Sudoku
Python program and detailed explanation by Dr Peter Norvig (AI, Google, Stanford, NASA...)
norvig.com/sudoku.html
mentioned by Bob Martin (Agile, SOLID)
cleancoders.com/video-details/clean-code-episode-61
Python program and detailed explanation by Dr Peter Norvig (AI, Google, Stanford, NASA...)
norvig.com/sudoku.html
4 8 3 |9 2 1 |6 5 7 9 6 7 |3 4 5 |8 2 1 2 5 1 |8 7 6 |4 9 3 ------+------+------ 5 4 8 |1 3 2 |9 7 6 7 2 9 |5 6 4 |1 3 8 1 3 6 |7 9 8 |2 4 5 ------+------+------ 3 7 2 |6 8 9 |5 1 4 8 1 4 |2 5 3 |7 6 9 6 9 5 |4 1 7 |3 8 2
mentioned by Bob Martin (Agile, SOLID)
cleancoders.com/video-details/clean-code-episode-61
web IDE online
StackBlitz: The online code editor for web apps. Powered by Visual Studio Code
CodeSandbox: Online IDE for Rapid Web Development
Codeanywhere · Cross Platform Cloud IDE
WebAssembly Studio
//github.com/wasdk/WebAssemblyStudio
Codeanywhere vs CodeSandbox vs StackBlitz | What are the differences?
Visual Studio Online - Cloud IDE - Code Editor Online
Saturday, February 22, 2020
Friday, February 21, 2020
Top 10 Real Python Articles of 2019
#1: How to Run Your Python Scripts
#2: 13 Project Ideas for Intermediate Python Developers
#3: 3 Ways of Storing and Accessing Lots of Images
#4: Speed Up Your Python Program With Concurrency
#5: Build a Recommendation Engine
#6: Your Guide to the Python Print Function
#7: How to Write Beautiful Python Code With PEP 8
#8: How to Use Python Lambda Functions
#9: How to Stand Out in a Python Interview
#10: Inheritance and Composition: A Python OOP Guide
WebAssembly Summit & Bytecode Alliance
WebAssembly Summit 2020 @ YouTube
WebAssembly Summit
Ben Smith — WebAssembly: Expanding the PIE - YouTube
Original developer of WAT, from Google V8 team; very informative
Lin Clark — WebAssembly: Building a new kind of ecosystem - YouTube
Vision for broad usage of WASM
standardizing on WASM:
Bytecode Alliance
"The Bytecode Alliance is an open source community dedicated to creating secure new software foundations, building on standards such as WebAssembly and WebAssembly System Interface (WASI).
The Bytecode Alliance is committed to establishing a capable, secure platform that allows application developers and service providers to confidently run untrusted code, on any infrastructure, for any operating system or device, leveraging decades of experience doing so inside web browsers.
We have a vision for a secure-by-default WebAssembly ecosystem for all platforms."
link from:
JavaScript Weekly Issue 476: February 21, 2020
excellent, very informative presentation:
WebAssembly Demystified - YouTube
by Jay Phelps of Netflix
image resizing lib in WASM
https://github.com/nodeca/pica
Online WASM IDE
http://mbebenita.github.io/WasmExplorer/
Another online WASM IDE
https://webassembly.studio/
"The Bytecode Alliance is an open source community dedicated to creating secure new software foundations, building on standards such as WebAssembly and WebAssembly System Interface (WASI).
The Bytecode Alliance is committed to establishing a capable, secure platform that allows application developers and service providers to confidently run untrusted code, on any infrastructure, for any operating system or device, leveraging decades of experience doing so inside web browsers.
We have a vision for a secure-by-default WebAssembly ecosystem for all platforms."
link from:
JavaScript Weekly Issue 476: February 21, 2020
excellent, very informative presentation:
WebAssembly Demystified - YouTube
by Jay Phelps of Netflix
image resizing lib in WASM
https://github.com/nodeca/pica
Online WASM IDE
http://mbebenita.github.io/WasmExplorer/
Another online WASM IDE
https://webassembly.studio/
Thursday, February 20, 2020
Amazon SimpleDB
AWS | Amazon SimpleDB – Simple Database Service
Amazon SimpleDB - Wikipedia
"Amazon SimpleDB is a distributed database written in Erlang[1] by Amazon.com. It is used as a web service in concert with Amazon Elastic Compute Cloud (EC2) and Amazon S3 and is part of Amazon Web Services. It was announced on December 13, 2007.[2]
...Free Tier for 1 GB of data & 25 machine hours.
Transfer to other Amazon Web Services is free of charge"
Amazon SimpleDB - Wikipedia
"Amazon SimpleDB is a distributed database written in Erlang[1] by Amazon.com. It is used as a web service in concert with Amazon Elastic Compute Cloud (EC2) and Amazon S3 and is part of Amazon Web Services. It was announced on December 13, 2007.[2]
...Free Tier for 1 GB of data & 25 machine hours.
Transfer to other Amazon Web Services is free of charge"
podcast & blog: The Data Exchange
Wednesday, February 19, 2020
Free resources for developers: AWS, Azure, GCP
Free for developers
This is a list of software (SaaS, PaaS, IaaS, etc.) and other offerings that have free tiers for developers.
AWS, Azure, GCP, ...
This is a list of software (SaaS, PaaS, IaaS, etc.) and other offerings that have free tiers for developers.
AWS, Azure, GCP, ...
Serverless
Serverless: A simple overview - O'Reilly Media
- Backends as a Service (BaaS) - BaaS provides serverless approaches to handle things like storage, authentication, and user management. AWS Aurora Serverless is an example of a BaaS offering.
- Functions as a Service (FaaS) - FaaS platforms run code in discrete “function” units that are invoked as needed. AWS Lambda is the canonical example and can be invoked from applications directly or triggered by other AWS services.
Tuesday, February 18, 2020
online event: AWS Innovate - Machine Learning & AI
AWS Innovate - Machine Learning & AI Edition
AWS Innovate Online Conference –
AI and Machine Learning Edition
February 19, 2020
//aws.amazon.com/events/aws-innovate/machine-learning/resources/
AWS Innovate Online Conference –
AI and Machine Learning Edition
February 19, 2020
//aws.amazon.com/events/aws-innovate/machine-learning/resources/
Monday, February 17, 2020
Google += "no code" AppSheet
Google acquires AppSheet to bring no-code development to Google Cloud | TechCrunch
"Google announced that it is buying AppSheet, an eight-year-old no-code mobile-application-building platform. The company had raised more than $17 million on a $60 million valuation, according to PitchBook data...
It is integrated with Google Cloud already integrating with Google Sheets and Google Forms, but also works with other tools, including AWS DynamoDB, Salesforce, Office 365, Box and others."
Add caption |
With AppSheet, Google gets a simple way for companies to build mobile apps without having to write a line of code. It works by pulling data from a spreadsheet, database or form, and using the field or column names as the basis for building an app.
Sunday, February 16, 2020
free eBook: Effective Feature Management
Effective Feature Management eBook | LaunchDarkly
A feature flag is like a powerful “if ” statement:
if(enableFeature(one.click.checkout, {...}))
then /*show the one-click checkout feature */
else /* show the old feature/
Deploy != Release
Test in Production
Percentage Deployments
A/B Testing
...
AWS 10-Minute Tutorials
10-Minute Tutorials with Amazon Web Services (AWS)
Get started with a simple “Hello, World!” tutorial to get hands-on with an AWS product
Get started with a simple “Hello, World!” tutorial to get hands-on with an AWS product
Deep Learning State of the Art (2020) | MIT
Deep Learning State of the Art (2020) | MIT Deep Learning Series - YouTube
by Lex Fridman
Lecture on most recent research and developments in deep learning, and hopes for 2020. This is not intended to be a list of SOTA benchmark results, but rather a set of highlights of machine learning and AI innovations and progress in academia, industry, and society in general.
by Lex Fridman
Lecture on most recent research and developments in deep learning, and hopes for 2020. This is not intended to be a list of SOTA benchmark results, but rather a set of highlights of machine learning and AI innovations and progress in academia, industry, and society in general.
This lecture is part of the MIT Deep Learning Lecture Series.
Website: https://deeplearning.mit.edu
Slides: http://bit.ly/2QEfbAm
References: http://bit.ly/deeplearn-sota-2020
Playlist: http://bit.ly/deep-learning-playlist
Saturday, February 15, 2020
AWS Toolkit for Visual Studio Code
AWS Toolkit for Visual Studio Code
The AWS Toolkit for Visual Studio Code is an open source plug-in for the Visual Studio Code that makes it easier to create, debug, and deploy applications on Amazon Web Services. With the AWS Toolkit for Visual Studio Code, you will be able to get started faster and be more productive when building applications with Visual Studio Code on AWS. The toolkit provides an integrated experience for developing serverless applications, including assistance for getting started, step-through debugging, and deploying from the IDE.
The AWS Toolkit for Visual Studio Code is an open source plug-in for the Visual Studio Code that makes it easier to create, debug, and deploy applications on Amazon Web Services. With the AWS Toolkit for Visual Studio Code, you will be able to get started faster and be more productive when building applications with Visual Studio Code on AWS. The toolkit provides an integrated experience for developing serverless applications, including assistance for getting started, step-through debugging, and deploying from the IDE.
event: Azure Power Platform Bootcamp
No PowerPoint :)
Global Power Platform Bootcamp
SATURDAY FEBRUARY 15th 2020
Power Apps
Turn ideas into organizational solutions by enabling everyone to build custom apps that solve business challenges.
Power BI
Make informed, confident business decisions by putting data-driven insights into everyone’s hands.
Power Automate
Boost business productivity to get more done by giving everyone the ability to automate organizational processes
Power Virtual Agents
Create conversational experiences that offer support by easily building and maintaining virtual agents—no coding required.
IoT Connected Home: Apple, Google, Amazon, ...
Apple, Google, Amazon, And Others Team Up to Create New Smart Home Standard @ InfoQ
"Connected Home over IP is a recently announced, joint effort by Apple, Google, Amazon, and the Zigbee Alliance to define a connectivity standard for smart home products. To accelerate this initiative, Apple has open sourced parts of its core technology for smart home connectivity.
According to the official announcement, the new open-source and royalty-free standard will leverage smart home technologies from Amazon, Apple, Google, and Zigbee Alliance members. Specifically, the new protocol aims to make it easier to build devices that are compatible with smart home and voice services such as Amazon’s Alexa, Apple’s Siri, Google’s Assistant, and others. Consumers should benefit from increased compatibility, too."
"Connected Home over IP is a recently announced, joint effort by Apple, Google, Amazon, and the Zigbee Alliance to define a connectivity standard for smart home products. To accelerate this initiative, Apple has open sourced parts of its core technology for smart home connectivity.
According to the official announcement, the new open-source and royalty-free standard will leverage smart home technologies from Amazon, Apple, Google, and Zigbee Alliance members. Specifically, the new protocol aims to make it easier to build devices that are compatible with smart home and voice services such as Amazon’s Alexa, Apple’s Siri, Google’s Assistant, and others. Consumers should benefit from increased compatibility, too."
Friday, February 14, 2020
Build WebAssembly Compiler
Build Your Own WebAssembly Compiler
Colin Eberhardt looks at some of the internals of WebAssembly, explores how it works “under the hood”, and looks at how to create a (simple) compiler that targets this runtime.
Colin Eberhardt looks at some of the internals of WebAssembly, explores how it works “under the hood”, and looks at how to create a (simple) compiler that targets this runtime.
https://colineberhardt.github.io/chasm/
ColinEberhardt/assemblyscript: A TypeScript to WebAssembly compiler 🚀 @GitHub
book @ OReilly
What Is WebAssembly?
by Colin Eberhardt
Publisher: O'Reilly Media, Inc.
Release Date: January 2020
ISBN: 9781492076896
Topic:
WebAssembly
ColinEberhardt/assemblyscript: A TypeScript to WebAssembly compiler 🚀 @GitHub
book @ OReilly
What Is WebAssembly?
by Colin Eberhardt
Publisher: O'Reilly Media, Inc.
Release Date: January 2020
ISBN: 9781492076896
Topic:
WebAssembly
HTTP/3
The Status of HTTP/3 @InfoQ
"QUIC is a key element of HTTP/3, since it provides the foundations for its main features. Built on top of UDP, QUIC attempts to solve the major issues experienced when using the TCP protocol, i.e., connection-establishment latency and multi-stream handling in the presence of packet loss.
"QUIC is a key element of HTTP/3, since it provides the foundations for its main features. Built on top of UDP, QUIC attempts to solve the major issues experienced when using the TCP protocol, i.e., connection-establishment latency and multi-stream handling in the presence of packet loss.
...
For several years, Google has been using QUIC for its own services, including search, YouTube, and others, and also supported it in Chrome. For a while, Chrome was the only way to use QUIC when communicating with Google services supporting it. Recently, Mozilla added support for HTTP/3 in Firefox 72, too, although still experimentally. The command-line tool curl also added support for HTTP/3 in version 7.66.0, along with many additional features. Server-side, HTTP/3 is supported by LightSpeed and Nginx."
Thursday, February 13, 2020
.NET Blazor & WebAssembly (WASM)
Focus on Blazor | Channel 9
Blazor WebAssembly Preview - Full-Stack C# Development for Web Applications @InfoQ
"Microsoft has released the 3.2.0 Preview 1 of Blazor WebAssembly, which adds support for a SignalR client, simplified startup and improved download size.
Blazor is a framework for building web applications using C#, HTML and CSS. The C# code is used for both client and server functionality meaning that duplicated business logic is no longer an issue. The C# code is compiling to run on WebAssembly."
Blazor WebAssembly Preview - Full-Stack C# Development for Web Applications @InfoQ
"Microsoft has released the 3.2.0 Preview 1 of Blazor WebAssembly, which adds support for a SignalR client, simplified startup and improved download size.
Blazor is a framework for building web applications using C#, HTML and CSS. The C# code is used for both client and server functionality meaning that duplicated business logic is no longer an issue. The C# code is compiling to run on WebAssembly."
AWS Cognito User Pools vs Identity Pools
Understanding AWS Cognito User and Identity Pools for Serverless Apps - The New Stack
An Identity Provider is a service that manages authentication, providing a user login and the ability to verify a user’s identity. AWS Cognito has its own Identity Provider (using User Pools, which are explained below), but it can also integrate with well-established third-party Identity Providers like Facebook and Google. Additionally, Cognito can integrate with any Identity Provider that implements the SAML or OAuth2 protocols. The process of integrating with a third-party for authentication is called Federation.
User Pools and Identity Pools (also called Federated Identities).
An Identity Provider is a service that manages authentication, providing a user login and the ability to verify a user’s identity. AWS Cognito has its own Identity Provider (using User Pools, which are explained below), but it can also integrate with well-established third-party Identity Providers like Facebook and Google. Additionally, Cognito can integrate with any Identity Provider that implements the SAML or OAuth2 protocols. The process of integrating with a third-party for authentication is called Federation.
User Pools and Identity Pools (also called Federated Identities).
User Pools provide a user directory for your application, including all the bells and whistles that come with user management, like sign-up, sign-in, group management, etc. User Pools also provide your app with information like the user’s ID and group membership, so that your code can handle authorization.
Identity Pools, in contrast, are used to assign IAM roles to users who authenticate through a separate Identity Provider. Because these users are assigned an IAM role, they each have their own set of IAM permissions, allowing them to access AWS resources directly.
Identity Pools, in contrast, are used to assign IAM roles to users who authenticate through a separate Identity Provider. Because these users are assigned an IAM role, they each have their own set of IAM permissions, allowing them to access AWS resources directly.
Wednesday, February 12, 2020
Role-based access control (RBAC)
Role-based access control - Wikipedia
"In computer systems security, role-based access control (RBAC)[1][2] or role-based security[3] is an approach to restricting system access to authorized users. It is used by the majority of enterprises with more than 500 employees,[4] and can implement mandatory access control (MAC) or discretionary access control (DAC).
Role-based access control (RBAC) is a policy-neutral access-control mechanism defined around roles and privileges. The components of RBAC such as role-permissions, user-role and role-role relationships make it simple to perform user assignments. A study by NIST has demonstrated that RBAC addresses many needs of commercial and government organizations"
Role Based Access Control | CSRC @ NIST
Role-Based Access Controls (PDF, original paper describing the concept)
"In computer systems security, role-based access control (RBAC)[1][2] or role-based security[3] is an approach to restricting system access to authorized users. It is used by the majority of enterprises with more than 500 employees,[4] and can implement mandatory access control (MAC) or discretionary access control (DAC).
Role-based access control (RBAC) is a policy-neutral access-control mechanism defined around roles and privileges. The components of RBAC such as role-permissions, user-role and role-role relationships make it simple to perform user assignments. A study by NIST has demonstrated that RBAC addresses many needs of commercial and government organizations"
Role Based Access Control | CSRC @ NIST
Role-Based Access Controls (PDF, original paper describing the concept)
Cruze Origin, a fully autonomous SUV
spectrum.ieee.org/view-from-the-valley/transportation/self-driving/uhoh-uber-look-out-lyft-here-comes-driverless-ride-sharing
Cruise unveils the Origin, a fully autonomous SUV designed for app-controlled urban transportation
"Cruise Origin is a six-passenger, autonomous, electric, SUV-sized vehicle intended to disrupt not so much the car industry as urban transportation overall. Cruise does not plan to offer the Origin on the retail market. Instead, it will operate fleets of the vehicles as a ride-sharing service; screens inside are intended to give information about upcoming pick ups and drop offs."
Cruise unveils the Origin, a fully autonomous SUV designed for app-controlled urban transportation
Tuesday, February 11, 2020
AWS Lambda Destinations: Asynchronous Invocation
Asynchronous Invocation - AWS Lambda
"Several AWS services, such as Amazon Simple Storage Service and Amazon Simple Notification Service, invoke functions asynchronously to process events. When you invoke a function asynchronously, you don't wait for a response from the function code. You hand off the event to Lambda and Lambda handles the rest. You can configure how Lambda handles errors, and send invocation records to a downstream resource to chain together components of your application."
"Several AWS services, such as Amazon Simple Storage Service and Amazon Simple Notification Service, invoke functions asynchronously to process events. When you invoke a function asynchronously, you don't wait for a response from the function code. You hand off the event to Lambda and Lambda handles the rest. You can configure how Lambda handles errors, and send invocation records to a downstream resource to chain together components of your application."
"AWS Lambda now supports Destinations for asynchronous invocations, a new feature that allows you to gain visibility to asynchronous invocation result and route the result to an AWS service without writing code"
Monday, February 10, 2020
In the Age of AI (full film)
In the Age of AI (full film) | FRONTLINE - YouTube
In the Age of AI [full film]
In the Age of AI is a documentary exploring how artificial intelligence is changing life as we know it — from jobs to privacy to a growing rivalry between the U.S. and China. FRONTLINE investigates the promise and perils of AI and automation, tracing a new industrial revolution that will reshape and disrupt our world, and allow the emergence of a surveillance society.
In the Age of AI [full film]
In the Age of AI is a documentary exploring how artificial intelligence is changing life as we know it — from jobs to privacy to a growing rivalry between the U.S. and China. FRONTLINE investigates the promise and perils of AI and automation, tracing a new industrial revolution that will reshape and disrupt our world, and allow the emergence of a surveillance society.
Sunday, February 09, 2020
Microsoft Vision AI DevKit
channel9.msdn.com/Shows/Internet-of-Things-Show/Unboxing-the-Vision-AI-DevKit
(aka.ms/iotshow/visionaidevkit), a smart camera for the intelligent edge. The developer kit uses the Qualcomm's Vision Intelligence 300 Platform which uniquely runs machine learning with hardware acceleration delivering results in milliseconds
(aka.ms/iotshow/visionaidevkit), a smart camera for the intelligent edge. The developer kit uses the Qualcomm's Vision Intelligence 300 Platform which uniquely runs machine learning with hardware acceleration delivering results in milliseconds
It took a while to create competitor for
Tesla Autopilot & Moore's Law
Great podcast interview, that co-designed many of CPUs that we are using today!
First selected section of interview about autonomous driving:
Here is a whole interview:
"Jim Keller is a legendary microprocessor engineer, having worked at AMD, Apple, Tesla, and now Intel. He's known for his work on the AMD K7, K8, K12 and Zen microarchitectures, Apple A4, A5 processors, and co-author of the specifications for the x86-64 instruction set and HyperTransport interconnect."
" is a microprocessor engineer best known for his work at AMD and Apple. He was the lead architect of the AMD K8 microarchitecture (including the original Athlon 64 and was involved in designing the Athlon (K7) and Apple A4/A5 processors. ... Tesla HW 3.0"
First selected section of interview about autonomous driving:
"Jim Keller, Tesla’s former head of Autopilot hardware and the designer of Tesla’s Self-Driving Computer chip, says that he is confident about solving autonomous driving after working at Tesla."
Here is a whole interview:
"Jim Keller is a legendary microprocessor engineer, having worked at AMD, Apple, Tesla, and now Intel. He's known for his work on the AMD K7, K8, K12 and Zen microarchitectures, Apple A4, A5 processors, and co-author of the specifications for the x86-64 instruction set and HyperTransport interconnect."
Saturday, February 08, 2020
Go.dev
Grokking Go.dev @ GoTime podcast
go.dev - A new hub for Go devs created by the Go team
pkg.go.dev - The package discovery portion of Go.dev
“Imported By” example - An example of a package and its imports on Go.dev
go-discovery-feedback@google.com - Feedback email address
go-licenses - A tool to check go package licenses
go.dev - A new hub for Go devs created by the Go team
pkg.go.dev - The package discovery portion of Go.dev
“Imported By” example - An example of a package and its imports on Go.dev
go-discovery-feedback@google.com - Feedback email address
go-licenses - A tool to check go package licenses
GoLang => Rust
Why Discord is switching from Go to Rust
Go is purple, Rust is blue.
"In Go, on cache key eviction, memory is not immediately freed. Instead, the garbage collector runs every so often to find any memory that has no references and then frees it. In other words, instead of freeing immediately after the memory is out of use, memory hangs out for a bit until the garbage collector can determine if it’s truly out of use. During garbage collection, Go has to do a lot of work to determine what memory is free, which can slow the program down."
Go is purple, Rust is blue.
"In Go, on cache key eviction, memory is not immediately freed. Instead, the garbage collector runs every so often to find any memory that has no references and then frees it. In other words, instead of freeing immediately after the memory is out of use, memory hangs out for a bit until the garbage collector can determine if it’s truly out of use. During garbage collection, Go has to do a lot of work to determine what memory is free, which can slow the program down."
Friday, February 07, 2020
Solar roof maps: Mapdwell from MIT, Google Sunroof
Mapdwell
Mapdwell builds software to help everyone work with the sun®, the sustainable source of energy, light and life.
Solar System™ is the best solar mapping tool in the world. Technology developed at MIT.
Thursday, February 06, 2020
Solar cars
Tesla’s Musk says solar panels on cars make little sense, but that’s not stopping Toyota, Hyundai
Hyundai released a version of its Sonata HEV with roof solar panels for the South Korean market
Hyundai released a version of its Sonata HEV with roof solar panels for the South Korean market
Wednesday, February 05, 2020
AWS Architecture Icons
K8S: Sservice Meshes
softwareengineeringdaily.com/2020/01/07/service-meshes
The major players in the service mesh space are
The major players in the service mesh space are
Tuesday, February 04, 2020
TSLA!
electrek.co/2020/02/03/tesla-tsla-jumps-high-700
Tesla (TSLA) jumps to new high over $700 – up 75% this year
Tesla stock soars, hitting $700 per share for the first time
Tesla (TSLA) jumps to new high over $700 – up 75% this year
Tesla stock soars, hitting $700 per share for the first time
Shares of Tesla soared 19.9% on Monday after Argus Research raised its price target to $808 from $556.
wolfstreet.com/2020/02/04/im-in-awe-of-how-tesla-is-now-a-supernatural-phenomenon/
Tesla: There Will Be Pullbacks - Tesla, Inc. (NASDAQ:TSLA) | Seeking
Alpha
cleantechnica.com/2020/02/04/tesla-tsla-stock-soars-over-900-why
wolfstreet.com/2020/02/04/im-in-awe-of-how-tesla-is-now-a-supernatural-phenomenon/
Tesla: There Will Be Pullbacks - Tesla, Inc. (NASDAQ:TSLA) | Seeking
Alpha
cleantechnica.com/2020/02/04/tesla-tsla-stock-soars-over-900-why
Monday, February 03, 2020
Protocol Buffers Encoding, VarInt
Encoding | Protocol Buffers | Google Developers
Base 128 Varints
"To understand your simple protocol buffer encoding, you first need to understand varints. Varints are a method of serializing integers using one or more bytes. Smaller numbers take a smaller number of bytes.
Each byte in a varint, except the last byte, has the most significant bit (msb) set – this indicates that there are further bytes to come. The lower 7 bits of each byte are used to store the two's complement representation of the number in groups of 7 bits, least significant group first.
So, for example, here is the number 1 – it's a single byte, so the msb is not set:0000 0001
And here is 300 – this is a bit more complicated:1010 1100 0000 0010
How do you figure out that this is 300? First you drop the msb from each byte, as this is just there to tell us whether we've reached the end of the number (as you can see, it's set in the first byte as there is more than one byte in the varint): 1010 1100 0000 0010 → 010 1100 000 0010
You reverse the two groups of 7 bits because, as you remember, varints store numbers with the least significant group first. Then you concatenate them to get your final value:000 0010 010 1100 → 000 0010 ++ 010 1100 → 100101100 → 256 + 32 + 8 + 4 = 300"
Protocol Buffers | Google Developers
developers.google.com/protocol-buffers/docs/proto3
Base 128 Varints
"To understand your simple protocol buffer encoding, you first need to understand varints. Varints are a method of serializing integers using one or more bytes. Smaller numbers take a smaller number of bytes.
Each byte in a varint, except the last byte, has the most significant bit (msb) set – this indicates that there are further bytes to come. The lower 7 bits of each byte are used to store the two's complement representation of the number in groups of 7 bits, least significant group first.
So, for example, here is the number 1 – it's a single byte, so the msb is not set:0000 0001
And here is 300 – this is a bit more complicated:1010 1100 0000 0010
How do you figure out that this is 300? First you drop the msb from each byte, as this is just there to tell us whether we've reached the end of the number (as you can see, it's set in the first byte as there is more than one byte in the varint): 1010 1100 0000 0010 → 010 1100 000 0010
You reverse the two groups of 7 bits because, as you remember, varints store numbers with the least significant group first. Then you concatenate them to get your final value:000 0010 010 1100 → 000 0010 ++ 010 1100 → 100101100 → 256 + 32 + 8 + 4 = 300"
The available wire types are as follows:
Type | Meaning | Used For |
---|---|---|
0 | Varint | int32, int64, uint32, uint64, sint32, sint64, bool, enum |
1 | 64-bit | fixed64, sfixed64, double |
2 | Length-delimited | string, bytes, embedded messages, packed repeated fields |
3 | Start group | groups (deprecated) |
4 | End group | groups (deprecated) |
5 | 32-bit | fixed32, sfixed32, float |
Let's say you have the following very simple message definition:
message Test1 { optional int32 a = 1; }
In an application, you create a
Test1
message and set a
to 150. You then serialize the message to an output stream. If you were able to examine the encoded message, you'd see three bytes:08 96 01
developers.google.com/protocol-buffers/docs/proto3
Sunday, February 02, 2020
Microservices => (Distributed) Monoliths ?
A controversial statement from Kelsey Hightower, prominent in K8S community,
co-author of book Kubernetes: Up and Running
co-author of book Kubernetes: Up and Running
(also available as free download from Microsoft)
Monoliths are the future |> News and podcasts for developers |> Changelog
"Monoliths are the future because the problem people are trying to solve with microservices doesn’t really line up with reality."
//changelog.com/gotime/114
//changelog.com/gotime/114#transcript-96
Monoliths are the future |> News and podcasts for developers |> Changelog
"Monoliths are the future because the problem people are trying to solve with microservices doesn’t really line up with reality."
//changelog.com/gotime/114
//changelog.com/gotime/114#transcript-96
AWS FireCracker MicroVM, Crome OS, Lambda, Rust
//firecracker-microvm.github.io
"Firecracker is an alternative to QEMU that is purpose-built for running serverless functions and containers safely and efficiently, and nothing more. Firecracker is written in Rust, provides a minimal required device model to the guest operating system while excluding non-essential functionality (only 5 emulated devices are available: virtio-net, virtio-block, virtio-vsock, serial console, and a minimal keyboard controller used only to stop the microVM). This, along with a streamlined kernel loading process enables a < 125 ms startup time and a < 5 MiB memory footprint."
//jaxenter.com/serverless-firecracker-aws-152371
Firecracker – Lightweight Virtualization for Serverless Computing @ aws blog
thenewstack.io/how-firecracker-is-going-to-set-modern-infrastructure-on-fire
"Firecracker is an alternative to QEMU that is purpose-built for running serverless functions and containers safely and efficiently, and nothing more. Firecracker is written in Rust, provides a minimal required device model to the guest operating system while excluding non-essential functionality (only 5 emulated devices are available: virtio-net, virtio-block, virtio-vsock, serial console, and a minimal keyboard controller used only to stop the microVM). This, along with a streamlined kernel loading process enables a < 125 ms startup time and a < 5 MiB memory footprint."
//jaxenter.com/serverless-firecracker-aws-152371
- Firecracker’s language of choice: Rust. Does this surprise you? It shouldn’t; Firecracker has roots in crosvm – the Chrome OS virtual machine monitor, which was written in Rust. Virtual machines written in Rust benefit from the language’s memory safety.
- Windows support? Not here. Firecracker is a Kernel-based virtual machine. It can only support Linux kernel v4.14 and higher.
Firecracker – Lightweight Virtualization for Serverless Computing @ aws blog
- "Secure – Firecracker uses multiple levels of isolation and protection, and exposes a minimal attack surface.
- High Performance – You can launch a microVM in as little as 125 ms today (and even faster in 2019),
- Battle-Tested – Firecracker has been battled-tested and is already powering multiple high-volume AWS services including AWS Lambda and AWS Fargate.
- Low Overhead – Firecracker consumes about 5 MiB of memory per microVM. You can run thousands of secure VMs with widely varying vCPU and memory configurations on the same instance.
- Open Source – Firecracker is an active open source project."
thenewstack.io/how-firecracker-is-going-to-set-modern-infrastructure-on-fire
Subscribe to:
Posts (Atom)