Sunday, July 14, 2019

Electric V2G (Vehicle to Grid): Nissan Leaf vs Tesla

Tesla's big battery in South Australia is a 'complete waste of resources,' claims Nissan

"The Nissan executive noted that the Leaf’s V2G system has the potential to help homeowners save money, especially if the vehicle charges through a rooftop solar system during the day, and uses its stored energy to power appliances and lights at night...
While V2G technology has a lot of potential that even Tesla CEO Elon Musk recognizes, the Nissan executive’s casual dismissal of the 100MW/129MWh Hornsdale Power Reserve in South Australia seems misinformed at best. Since coming online, after all, the Powerpack farm, whose size is equal to around 2,500 40 kWh Nissan Leafs, has seen widespread acclaim for its speed and sophistication."

Tesla may revisit vehicle-to-grid (V2G) bi-directional charging solution

Saturday, July 13, 2019

Sonic: A Lightweight, Schema-Less Search

Sonic: A Lightweight, Schema-Less Search @InfoQ

"Sonic is an open source, schema-less search backend promoted as an alternative to full-feature search systems such as Elasticsearch. Sonic can normalize natural language search queries, provide auto-complete, and return the most relevant results for a search query."

Hermes JavaScript engine for React Native on Android.

open source, new javascript engine for React Native from Facebook
to get (much) better runtime performance it is using "Ahead Of Time" instead of "Just In Time"
compiling to byte code representation, an approach typical for "native" mobile apps anyway.

facebook/hermes: Hermes is a small and lightweight JavaScript engine optimized for running React Native on Android. @GitHub

React Native on Twitter: "Today Facebook is open sourcing Hermes, a small and lightweight JavaScript engine optimized for running React Native on Android. We are currently publishing a new patch release for React Native which will contain Hermes as opt-in."

Enabling Hermes · React Native

Chain React 2019: Hermes Engine Announcement - YouTube

the key advantage is speed, achieved by doing `Ahead Of Time` compiling to bytecode
instead of typical (for JavaScript) `Just In Time`. This way the size is smaller (faster load) and avoiding a step of compiling before running. Smart. This is typical for other mobile platforms, so it makes sense.

While the presenter claims that Node.js (server side) and browsers are not objectives,
this approach could be used for server side apps and it could be beneficial in particular for ‘serverless’ (cloud functions, i.e. AWS Lambda) deployments, as well as for embedded IoT.
Since V8 JS engine is open source, it could be "forked" to do similar.

Monday, July 08, 2019

IO speeds compared

Teach Yourself Programming in Ten Years @Norvig

pproximate timing for various operations on a typical PC:
execute typical instruction1/1,000,000,000 sec = 1 nanosec
fetch from L1 cache memory0.5 nanosec
branch misprediction5 nanosec
fetch from L2 cache memory7 nanosec
Mutex lock/unlock25 nanosec
fetch from main memory100 nanosec
send 2K bytes over 1Gbps network20,000 nanosec
read 1MB sequentially from memory250,000 nanosec
fetch from new disk location (seek)8,000,000 nanosec
read 1MB sequentially from disk20,000,000 nanosec
send packet US to Europe and back150 milliseconds = 150,000,000 nanosec

Sunday, July 07, 2019

Python vs. Go vs. Rust

Python, Go, Rust mascotsOne Program Written in Python, Go, and Rust – Nicolas Hahn

nicolashahn (Nicolas Hahn) @GitHub

nicolashahn/diffimg: Differentiate images in python - get a ratio or percentage difference, and generate a diff image

nicolashahn/diffimg-go: Image differentiation tool similar to the python diffimg: 

nicolashahn/diffimg-rs: image differentiation tool written in Rust

Image size: 1x1 2000x2000 10,000x10,000
Rust 0.001s 0.490s 5.871s
Go 0.002s (2x) 0.756s (1.54x) 14.060s (2.39x)
Python 0.095s (95x) 1.419s (2.90x) 28.751s (4.89x)

Authors conclusion:

"If I had to choose the language for the backend of a new web application, it would be Go."

Saturday, July 06, 2019

Function based web components: Vue 3.0, React Hooks

Vue 3.0 Discards Class-Based API for Reusable, Composable Function-Based Approach @InfoQ

"The Vue team recently opened a RFC which describes the proposed function-based component API for the upcoming Vue 3. Like React Hooks, the function-based component API seeks to allow developers to encapsulate logic into so-called “composition functions” and reuse that logic across components."

Thursday, July 04, 2019

Lambda School post-paid education

Lambda School Education with Andrew Madsen - Software Engineering Daily

"Lambda School is an education system that takes elements of other software education models and combines them with newer SaaS technologies such as Slack and Zoom videoconferencing. Lambda School is an online software engineering curriculum with an income sharing agreement.

“Income sharing agreement” means that the student does not pay for their education until they get a job. With this model, the student can pay back Lambda School after their software engineering education gets them a high-paying software engineering job."

9-5 using online video communication, 9 months, in blocks of 3 weeks followed  by 1 week real-world projects. Focus only on practical skills. Venture funded, about 100 people. 

Tuesday, July 02, 2019

Google Earth with WebAssembly

Google Earth Ported to Browsers with WebAssembly @InfoQ

"The Google Earth team recently released a beta preview of a WebAssembly port of Google Earth. The new port runs in Chrome and other Chromium-based browsers, including Edge (Canary version) and Opera, as well as Firefox. The port thus brings cross-browser support to the existing Earth For Web version, which uses the native C++ codebase and Chrome’s Native Client (NaCl) technology. Difference in multi-threading support between browsers leads to varying performance."

Monday, July 01, 2019

Sucrase, a Faster Babel for Modern JS Runtimes

Sucrase, a Faster Babel for Modern JS Runtimes @ InfoQ

 a gain in speed between 4x and 20x vs. Babel. 


Instead of compiling a large range of JS features to be able to work in Internet Explorer, Sucrase assumes that you're developing with a recent browser or recent Node.js version, so it focuses on compiling non-standard language extensions: JSX, TypeScript, and Flow.


alangpierce/sucrase: Super-fast alternative to Babel for when you can target modern JS runtimes @GitHub

"Sucrase is an alternative to Babel that allows super-fast development builds. Instead of compiling a large range of JS features to be able to work in Internet Explorer, Sucrase assumes that you're developing with a recent browser or recent Node.js version, so it focuses on compiling non-standard language extensions: JSX, TypeScript, and Flow. Because of this smaller scope, Sucrase can get away with an architecture that is much more performant but less extensible and maintainable."

Recharts: D3 + React = charts

BarChartStackedBySign | Recharts

recharts/recharts: Redefined chart library built with React and D3

Sunday, June 30, 2019

.NET open source: Core WF and Core WCF

WF and WCF Given to the Community @ InfoQ

.NET Foundation announced that they are formally adopting WCF under the new name Core WCF.

A company known as UIPath has agreed to adopt Windows Workflow Foundation. Now offered under the name Core WF,

Saturday, June 29, 2019

.NET Core DevOps

The Evolving Infrastructure of .NET Core | .NET Blog

Making a tiny .NET Core 3.0 entirely self-contained single executable - Scott Hanselman

Microsoft Azure Certification changes

getting closer to AWS certification "role based" naming; complicated and changing often

Free IT Training, Certification Offers, & Student Discounts | Microsoft

Microsoft Learning Blog post - Simplifying the Certification Path for Microsoft Certified: Azure Administrator Associate

Microsoft Technical Certifications | Microsoft Learning

Microsoft Certifications Program Paths: Browse All | Microsoft Learning fundamentals

Microsoft Certifications Program Paths: Browse All | Microsoft Learning associate

Microsoft Certifications Program Paths: Browse All | Microsoft Learning expert

strange JavaScript .map() "magic"

Why ['1', '7', '11'].map(parseInt) returns [1, NaN, 3] in Javascript

['1', '7', '11'].map(parseInt)
would expect [1, 7, 11]
but it returns [1, NaN, 3]

another "strange" result:

[1, 2, 3, 4, 5].map(console.log);

[1, 2, 3, 4, 5].map(console.log);// The above is equivalent to[1, 2, 3, 4, 5].map(
    (val, index, array) => console.log(val, index, array)
);// and not equivalent to[1, 2, 3, 4, 5].map(
    val => console.log(val)

ParseInt takes two arguments: string and radix (base, default is 10)

parseInt('1', 0, ['1', '7', '11']); => 1
parseInt('7', 1, ['1', '7', '11']); => NaN
parseInt('11', 2, ['1', '7', '11']); => 3

The Weird History of JavaScript - YouTube

Visual Studio Online

Microsoft Announces Visual Studio Online @ InfoQ

"Visual Studio Online is currently under a private preview, which requires a sign-up process to be able to participate when it is available. There are, however, other open source online editors supporting Visual Studio Code extensions that can already be used. One of the most popular alternatives is Coder, based on Visual Studio Code and available on GitHub. Another alternative (also available on GitHub) is Theia, a joint project between TypeFox, RedHat, IBM, Google, and others."

Microsoft announces Visual Studio Online, a web-based code editor - MSPoweruser

"Several year back, Microsoft had a service named Visual Studio Online. In 2015, they rebranded it as Visual Studio Team Services. Later it became Azure DevOps Services which offers development collaboration tools including high-performance pipelines, free private Git repositories, configurable Kanban boards, and extensive automated and continuous testing capabilities.
At Build 2019, Microsoft announced that it is bringing back Visual Studio Online brand. This time it is different, Visual Studio Online will be a web-based companion to Visual Studio and Visual Studio Code. It will allow developers to work on and edit code from any device with latest web browsers."

Friday, June 28, 2019

React Native: Hot Reloading

React Native on Twitter: "Six months ago the community told us  was a major pain point. A better Fast Refresh mode is on it's way into React Native. It's resilient to errors (no need for full reloads after a typo) and supports function components with Hooks. 

React Native · A framework for building native apps using React

Blog · React Native

Electric "Car" for Under $10,000

Electric Car for Under $10,000 @ Daniel Burrus - Techno Trends

"Due to become available at the end of 2020, the basic Bolt Nano will sell for $9,999, and pre-reservations are being accepted on the company’s Web site for a refundable deposit of $999. Owners will also be able to earn revenue by sharing their vehicle using the Bolt ride-share platform."

BOLT nano

"Designed for rides 5-15 miles

Compact enough to fit four Nanos into one standard parking spot.

50/50 Revenue share when rented out through our Bolt Platform."

Another "Segway" ?

Thursday, June 27, 2019

Google Ventures: 5% of Uber, 20x in 6 years

Alphabet Uber investment stake has gone up 20x since 2013

"Six years after making what at the time was its largest venture investment ever, Google’s $258 million bet on Uber has multiplied by about 20-fold to be worth more than $5 billion.

According to Uber’s IPO prospectus filed on Thursday, Google parent Alphabet owns a 5.2 percent stake in the ride-sharing company. With Uber reportedly looking to go public at a $100 billion valuation, Alphabet’s shares are worth about $5.2 billion,

...Alphabet also invested $500 million in Uber arch-rival Lyft through its late-stage investment arm, CapitalG, in October 2017. Its 5.3 percent stake in Lyft is worth $783 million"

Wednesday, June 26, 2019

Amazon Flex, Logistics

What It's Like To Be An Amazon Flex Delivery Driver - YouTube

Amazon Flex: Be Your Own Boss. Great Earnings. Flexible Hours.

Amazon Logistics

Amazon significantly ups order for delivery vehicles through deal with Mercedes - Logistics Management

"...ordered 20,000 Mercedes-Benz Sprinter vans to be deployed for the new package delivery offering..."

Amazon Logistics - OpenStreetMap Wiki

List of Amazon brands - Wikipedia


OBD: On-board diagnostics - Wikipedia

On-board diagnostics (OBD) is an automotive term referring to a vehicle's self-diagnostic and reporting capability. OBD systems give the vehicle owner or repair technician access to the status of the various vehicle subsystems.
DTC: Diagnostic Trouble Codes
OBD-II PIDs - Wikipedia

OBD2 standard fault codes - Full list - Outils OBD Facile

OBD-Codes OBD-II Trouble Codes - DTC Codes Car Repair

How to Read and Understand Check Engine Light (OBD-II) Codes | YourMechanic Advice

Complete List of OBD Codes: Generic OBD2 (OBDII) & Manufacturer | Car OBD Diagnostics, ECU Chip Tuning & Auto Repair Support

The Data Science Behind Predictive Maintenance For Connected Cars

Machine learning methods for vehicle predictive maintenance using off-board and on-board data

CAN Bus and OBD II Explained For Dummies, with Examples of how CAN Bus and OBD II Work!

Monday, June 24, 2019

Raspberry Pi 4 += 4K video

The new Raspberry Pi 4 is ready for 4K video - YouTube

The Raspberry Pi 4 brings faster CPU, up to 4GB of RAM | Ars Technica

"Raspberry Pi is introducing a new version of its popular line of single-board computer. The Raspberry Pi 4 Model B is the fastest Raspberry Pi ever, with the company promising "desktop performance comparable to entry-level x86 PC systems."

The new model is built around a Broadcom BCM2711 SoC, which, with four 1.5GHz Cortex A72 CPU cores, should be a big upgrade over the quad-core Cortex A53 CPU in the Raspberry Pi 3. The RAM options are the even bigger upgrade, though, with options for 1GB, 2GB, and even 4GB of DDR4. The Pi 3 was limited to 1GB of RAM, which really stung for desktop-class use cases.

There have been some upgrades and tweaks to the Pi 4 I/O, too. The Gigabit Ethernet returns, as do the four USB ports, but two of them get an upgrade to USB 3.0. Power is now supplied via a USB-C port, instead of the aging Micro USB of the Pi 3. The headphone jack returns, too, and it's still a four-pole solution providing audio and composite video.

One interesting choice is the removal of the single, full-size HDMI port of the Pi 3 in favor of two micro HDMI ports. The Pi 4 will now support two 4K monitors..."

Raspberry Pi 4 4GB @ CanaKit

internet outage from BGP misconfiguration

An internet outage caused by DQE and apparently Verizon shows how fragile the web is.

"A Small ISP in Pennsylvania Tanked a Big Chunk of the Web on Monday
And how Verizon apparently made it much worse."

The internet uses BGP, or border gateway protocol, which is basically a routing map or, as some call it, the USPS of the web. It takes internet traffic and data and picks the most efficient route to get that traffic to somewhere else on the internet (like you). That works great most of the time, but something went wrong on Monday. 

That something was a mistaken signal sent out by DQE Communications, a small commercial internet service provider that services about 2,000 buildings in Pittsburgh, Pennsylvania, according to Cloudflare Chief Technology Officer John Graham-Cumming. “This little company said, ‘These 2,400 networks, including some bits of Cloudflare, some bits of Amazon, some bits of Google and Facebook, whole swathes of the internet,’ they said those networks are ours, you can send us their traffic,” ...

That misconfiguration was probably the result of automatic route optimizing software and not someone intentionally screwing up the routes,

Verizon, which apparently accepted the faulty routes and then passed them on."

book online: Designing Web APIs

Writing OpenAPI (Swagger) Specification Tutorial - Part 1 - Introduction | API Handyman

OAI/OpenAPI-Specification: The OpenAPI Specification Repository

OpenAPI-Specification/examples/v3.0 at master · OAI/OpenAPI-Specification

About Swagger Specification | Documentation | Swagger | Swagger

OpenAPI Specification | Swagger

Sunday, June 23, 2019

Kubernetes: Service Mesh Interface (SMI) Istio vs Linkerd

SMI | A standard interface for service meshes on Kubernetes.

service mesh - Software Engineering Daily

Service Mesh Interface with Lachlan Evenson - Software Engineering Daily

"Whichever container deployment system you choose, your application and its multiple servers need a way to route traffic, measure telemetry, and configure security policy. A service mesh abstraction can help serve these use cases.

...Deis, a company which built an open source platform-as-a-service running on top of containers and Kubernetes... was acquired by Microsoft..."

The Deis team is behind one of the latest Azure contributions to the Kubernetes ecosystem,
the Service Mesh Interface (SMI).

"top three service mesh features
  • Traffic policy – apply policies like identity and transport encryption across services
  • Traffic telemetry – capture key metrics like error rate and latency between services
  • Traffic management – shift and weight traffic between different services"

How the Service Mesh Interface (SMI) fits into the Kubernetes landscape | Kinvolk

Service Mesh Wars with William Morgan - Software Engineering Daily

"A service mesh is an abstraction that provides traffic routing, policy management, and telemetry for a distributed application."

Linkerd @GitHub : from Buoyant (small company, provides support, training)

v1: Scala,  v2: Go (control) + Rust (proxy)

Istio / What is Istio?

Istio @GitHub : from Google (also using Envoy proxy from Lyft)

Go (control) + C++ (proxy)

Saturday, June 22, 2019

Podcast: Your Undivided Attention

insightful podcast interviews

Your Undivided Attention Podcast - Center For Humane Technology

CHT_ Undivided Attention Podcast, Ep.1 _What Happened in Vegas_ Transcript
CHT Undivided Attention Podcast Ep.2 Shouldve Stayed in Vegas Transcript

Flow ... has been described by Mihaly Csikszentmihalyi as optimal human experience...  
Too high skill is basically a right angle, it's too much effort it breaks the flow.
... to find that sweet spot in between anxiety and boredom,

human nature is misused by modern advertising technology

"four components of 'ludic loop': 
  • solitude, 
  • fast feedback, 
  • random rewards, 
  • continuity with no resolution.
... has become a toxic loop that is facilitated by contemporary technology"

A phrase you should know: “ludic loop” | NEXT Conference

"It's that circle of doing the same thing again and again because you get just enough reward to keep you trying for it:"
podcast interview:
Ex-Google Design Ethicist Tristan Harris on Technology and Human Downgrading

IoT: Evrythng

very interesting: RFID tags have become very affordable (< $0.05), now able to get unique tag ("serial number = serialization) on almost any thing.

Episode 220: The future of surveillance includes hacked data and biased AI – IoT Podcast – Internet of Things

"... Evrythng, a platform that connects unique tags to the internet. Brands ranging from Coke to liquor giant Diageo use the Evrythng platform to track individual items and connect brands to customers. Guinard discussed how Evrythng has changed with the times in the internet of things, how a new standardcould let consumer packaged good companies track individual items, and how the economics are finally in favor of connected tags. We also discuss the tech needed to track a trillion connected objects, salmon and why companies always turn to marketing first when it comes to IoT."

Friday, June 21, 2019

FedEx -=

Amazon, FedEx end shipping contract in US

"FedEx will no longer provide express delivery for Amazon packages in the U.S., as the e-commerce giant continues to expand its own in-house delivery network.
FedEx announced on Friday that it decided not to renew its express U.S. shipping contract with Amazon. The company said in a statement that it was a “strategic decision” and that the change won’t affect other existing contracts with Amazon, including international shipping.

...Amazon was not a huge customer, only accounting for roughly 1.3% of FedEx total revenue in 2018"

Wednesday, June 19, 2019

IoT: Google Sensor Board for the Raspberry Pi

Google Releases Coral Environmental Sensor Board for the Raspberry Pi

Google recently released a new sensor board under their Coral brand for the Raspberry Pi or the company’s own Coral Dev Board, which adds a range of sensors and an OLED display. The Coral Environmental Board is designed to connect to Google’s Cloud IoT Core service, allowing you to securely link your projects and then collect, analyze, and process the sensor data using Google’s lineup of ML tools (or whatever platform you prefer).

Environmental Sensor Board datasheet | Coral

Environmental Sensor Board Image Gallery | Coral

An accessory board that provides temperature, light, and humidity sensing for IoT applications. 

Tuesday, June 18, 2019

IoT "CDN" Akamai IoT Edge

Akamai IoT Edge Connect Brings MQTT to its Serverless Edge Platform

Akamai IoT Edge Connect, part of Akamai Edge Cloud, provides a fully managed service for the operation of IoT devices with auto-scaling, failover, and data synchronization.

Monday, June 17, 2019

WhereML: location based on image

Using geo-location stored in images to train model that can "guess" location based on pixels of an image. Clever.

ranman/WhereML @ GitHub

described in detail in episode #313 of
AWS Podcast | Listen & Learn About AWS

WhereML (@WhereML) | Twitter

Sunday, June 16, 2019

Thursday, June 13, 2019

In-security Archive for Sale

The Biggest Data Breach Archive on the Internet Is for Sale - VICE

"The well-known and respected data breach notification website “Have I Been Pwned” is up for sale.

Troy Hunt, its founder and sole operator, announced the sale on Tuesday in a blog post where he explained why the time has come for Have I Been Pwned to become part of something bigger and more organized."


Troy Hunt: 10 Personal Finance Lessons for Technology Professionals

Pwned Passwords in @haveibeenpwned is going from strength to strength - 16M requests in the last 24 hous with a cache hit ratio of 99.4% 😎 /cc @IcyApril

Monday, June 10, 2019

Salesforce +=Tableau - $15.7B

very expensive...

Salesforce is buying data visualization company Tableau for $15.7B in all-stock deal | TechCrunch

"On the heels of Google buying analytics startup Looker last week for $2.6 billion, Salesforce today announced a huge piece of news in a bid to step up its own work in data visualization and (more generally) tools to help enterprises make sense of the sea of data that they use and amass: Salesforce is buying Tableau for $15.7 billion in an all-stock deal."

Revenue  US$ 877 million (2017)[1]
Net income US$ 5,873,000 (2014)[2]
Number of employees 4,181 (May 2019)[3]

"The Tableau deal dwarfs the company’s previous largest acquisition, application integration provider Mulesoft, which Salesforce bought for $6.5 billion in 2018. Other notable acquisitions include customer service platform Demandware, which it bought for $2.8 billion in 2016 and forms the basis of its Commerce Cloud product for e-commerce functions, and Heroku, an app development technology it bought for $212 million in 2010."

Sunday, June 09, 2019

internet: in the sea, in the space, in the air

Internet: 99% of Data is in the Sea, not the Cloud: Underwater Cabling | Formtek Blog

"There are more than 1.2 billion kilometers of submarine cables circling the globe, transmitting internet data. About 97 percent of all intercontinental data is transferred by underwater cables. The cables enable people to connect to the internet globally — now more than half the world’s population has access to the internet."

WiFi Radar

Household Radar Can See Through Walls and Knows How You’re Feeling - IEEE Spectrum

"Modern wireless tech isn’t just for communications. It can also sense a person’s breathing and heart rate, even gauge emotions"