Programmer Weekly (Issue 1 April 23 2020)

Programmer Weekly - Issue 1

Programmer Weekly

Welcome to issue 1 of Programmer Weekly. You are receiving this email because you subscribed to NoSQL Weekly, which is being rebranded as Programmer Weekly. 

News

Every developer and team can now get private repositories with unlimited collaborators at no cost with GitHub Free, and we reduced prices for some of our paid plans.

Working remote even just a few days per month leads to higher pay.

Developers remain in high demand, but the skills they need to succeed are in constant flux. Here’s how to ensure your programming chops are on point and sharp.

Israeli researchers use vibrations from CPU, GPU, or PC chassis fans to broadcast stolen information through solid materials and to nearby receives, breaking air-gapped system protections.

Thomas Allmer, founder of Open Web Components, released MDJS, a Markdown variant that allows developers to include runnable JavaScript code into their Markdown documents. MDJS can be interpreted as regular Markdown content or be progressively enhanced to produce interactive documentation including web components.

Overall our users indicated that productivity is still an important goal for their work (with or without using Rust). The results show the overriding problem hindering use of Rust is adoption. The learning curve continues to be a challenge - we appear to most need to improve our follow through for intermediate users - but so are libraries and tooling.

IBM is releasing a free training course to teach the 60-year-old programming language COBOL to coders. It is also launching a forum where those with knowledge of the language can be matched with companies in need of help maintaining their critical systems.

Articles,Tutorials and Talks

Even though it is impossible to ignore how databases work, the problems that application developers foresee and experience will often be just the tip of the iceberg. In this post, I’m sharing a few insights I specifically found useful for developers who are not specialized in this domain.

Lee Holloway programmed internet security firm Cloudflare into being. Then he became apathetic, distant, and unpredictable—for a long time, no one could make sense of it.

This post is a technical walkthrough of how I discovered several zero-day bugs in Safari during my hunt to hack the iOS/MacOS camera. 

Imagine throwing a ball and if it hits the backboard it somehow gets directed into the hoop. Thanks to physics it isn't quite possible to make ALL possible shots go in though you can make a hoop where the ball goes in a lot more often. This video shows you how to write a program to calculate the optical backboard then machined and fabricated it. 

A trip through time of various storage technologies.

In this post we will briefly present LLVM, discuss popular obfuscation approaches and their shortcomings and build our own epic LLVM-based string obfuscator.

Modern source-control systems provide powerful tools that make it easy to create branches in source code. But eventually these branches have to be merged back together, and many teams spend an inordinate amount of time coping with their tangled thicket of branches. There are several patterns that can allow teams to use branching effectively, concentrating around integrating the work of multiple developers and organizing the path to production releases. The over-arching theme is that branches should be integrated frequently and efforts focused on a healthy mainline that can be deployed into production with minimal effort.

In this series we'll write a rudimentary database from scratch in Go. Project source code is available on

.

In the Apollo Moon missions, the Saturn V rocket was guided by an advanced onboard computer system built by IBM. This system was built from hybrid modules, similar to integrated circuits but containing individual components. Ken Shirriff reverse-engineered a circuit board from this system and determined its function: Inside the computer's I/O unit, the board selected different data sources for the computer. This post explains how the board worked, from the tiny silicon dies inside its hybrid modules to the board's circuitry and its wiring in the rocket. 

Reliability, consistency and confidence through immutability.

The New York Times has open-sourced a Vault plugin that generates dynamic secrets.

For pioneering computer scientist Donald Knuth, good coding is synonymous with beautiful expression.

Starting in 2013, we set out to build a new database to act as the configuration master for a high-performance cloud block storage system (Amazon EBS). This database needs to be not only highly available, durable, and scalable but also strongly consistent. We quickly realized that the constraints on availability imposed by the CAP theorem, and the realities of operating distributed systems, meant that we didn't want one database. We wanted millions. Physalia is a transactional key-value store, optimized for use in large-scale cloud control planes, which takes advantage of knowledge of transaction patterns and infrastructure design to offer both high availability and strong consistency to millions of clients. Instead of being highly available for all keys to all clients, Physalia focuses on being extremely available for only the keys it knows each client needs, from the perspective of that client.

A deep dive into how to customize your terminal and shell, in order to make it yours and increase productivity.

We've improved time precision within our infrastructure from 10 milliseconds to 100 microseconds, and released our own public NTP service.

Have you ever been neck-deep building a new feature? You're working at capacity. You need to test something out so you paste an API key into your source file with every intention of removing it later. But you forget. You push to GitHub. It's an easy mistake, and potentially a very expensive one. In this article, Julien Cretel explores the nuances of this kind of data leak, offers suggestions for recovery when leaks happen and gives us options for preventing them in the first place.

On March 30, 2020, we enabled folks to opt into a beta dark mode on Stack Overflow. Let’s talk about the work that went into it.

An example of refactoring from a real (flawed) code base.

Update your Bash prompt with the command start time.

Books

Can a system be considered truly reliable if it isn't fundamentally secure? Or can it be considered secure if it's unreliable? Security is crucial to the design and operation of scalable systems in production, as it plays an important part in product quality, performance, and availability. In this book, experts from Google share best practices to help your organization design scalable and reliable systems that are fundamentally secure.

Interesting Projects, Tools and Libraries

Generate clients, servers, and documentation from OpenAPI 2.0/3.x documents.

On the Internet, network devices exchange routes via a protocol called BGP (Border Gateway Protocol). Unfortunately, issues with BGP have led to malicious actors being able to hijack and misconfigure devices leading to security problems which have the potential to cause widespread problems. BGP security can be greatly improved by using technologies such as RPKI to sign Internet routes. This website attempts to track the progress of major Internet players (ISPs, transit operators, and content providers) in their progress to adopt RPKI and other technologies.

Moloch is an open source, large scale, full packet capturing, indexing, and database system.

A fun platform for learning modern cryptography.

A Persistent Geospatial Database with Geofencing & Google Maps Support.

A sample app using Apple's soon-to-be-released contact tracing framework.

Peer to peer browser video calling platform with unmatched video quality and latency.

f-license is an open-source license creation and verification tool. You can quickly add license key verification to your application.

Things you can do with a browser in 2020.

Resource monitor that shows usage and stats for processor, memory, disks, network and processes.

A zero config distributed reverse-proxy especially for Docker Swarm (supporting multiple letsencrypt/https hosts). No dependencies.

Scuttlebot is an open source peer-to-peer log store used as a database, identity provider, and messaging system. It features global replication, file-syncronization, and end-to-end encryption.

A free API for generating social media images.

clikan is a super simple personal kanban board that runs in a CLI.

An algorithm to optimize database queries that run multiple times.

Our Other Newsletters

- A free weekly newsletter featuring the best hand curated news, articles, tools and libraries, new releases, jobs etc related to Python.

- A free weekly newsletter for entrepreneurs featuring best curated content, must read articles, how to guides, tips and tricks, resources, events and more.