An implementation of Crev as a command line tool integrated with cargo. This tool helps Rust users evaluate the quality and trustworthiness of their package dependencies.
This essay attempts to make Conal’s vision more understandable to less mathematically-oriented programmers, and also show how this perspective could be the foundation for a new era of programming, not just with user interfaces, but also multi-node computing, storage, machine learning, etc.
I’ve written this article series, to help you get a good sense of how production Haskell is written at a company like Klarna and what to avoid along the road.
ve enough to lead the way, and those wise enough to follow the path to a sustainable, equitable, Canada. Canadian Climate Challenge is here to aggregate all of the climate solutions confronting our climate crisis into one accessible platform.
A comprehensive list of new ES features, including ES2015 (ES6), ES2016 (ES7), ES2017 (ES8), ES2018 (ES9), ES2019 (ES10) - daumann/ECMAScript-new-features-list
GitHub flow is a lightweight, branch-based workflow that supports teams and projects where deployments are made regularly. This guide explains how and why GitHub flow works.
So you fixed a conflict somewhere in your repo, then later stumbled on exactly the same one… Enter 'rerere', which stands for Reuse Recorded Resolution.
Learn about side effects and how to avoid them, how to wield immutablity to update objects and arrays in Redux reducers, and the easy way to update state with Immer.
Redux and React Redux explained as simply and as clearly as possible both through theory and examples. Learn about actions, reducers, store, connect, mapStateToProps, mapDispatchToProps and more!
The way your system behaves with respect to the reading of "dot files" at login time, setting up aliases, setting up environment variables, and so on is all highly dependent on how you actually log in.
In certain cases, useMemo is irrelevant, overused, and likely harmful to the performance of your application. Learn these situations and how to avoid them.
Modern day javascript environments have many ways of dealing with state. One can use closures or classes to have some shared state, but sometimes a more elaborate state management library is needed…
Since the React hooks API was introduced, a lot of questions have risen about whether or not React hooks will replace Redux. In my view, there is little overlap between hooks and Redux. Hooks didn’t…
Next js is a fast upcoming frameworking being used in some huge companies, but what is it? Let me tell you what Next js is and why you should be using it!
All the Star Wars data you've ever wanted: Planets, Spaceships, Vehicles, People, Films and Species from all SEVEN Star Wars films now with The Force Awakens data!
TypeScript has never been easier thanks to the TypeScript plugin for Babel. Discover 4 reasons why TypeScript + Babel are a perfect pair, and follow a step-by-step guide to upgrade to TypeScript in 10 minutes.
This guide will use JavaScript instead of a pure functional programming language (e.g. Haskell) to make things more approachable for developers accustomed to imperative languages. It will, however, assume you have basic knowledge of functional programming, including currying and lambdas.
git-revise is a history editing tool designed for the patch-stack workflow. It's fast, non-destructive, and aims to provide a familiar, powerful, and easy to use re-imagining of the patch stack workflow.
A JSON alternative that retains references, handles circular dependencies, and encodes almost every data type available to standard JavaScript. - cierelabs/json-complete
An ongoing comprehensive user.js template for configuring and hardening Firefox privacy, security and anti-fingerprinting - ghacksuserjs/ghacks-user.js
React.memo() increases the performance of pure functional components by preventing useless re-renders. But such performance tweaks must be applied wisely.
In some domains of programming it’s common to want to write a data structure or algorithm that can work with elements of many different types, such as a generic list or a sorting algorithm that only needs a comparison function.
Cryptography engineers have been tearing their hair out over PGP’s deficiencies for (literally) decades. When other kinds of engineers get wind of this, they’re shocked. PGP is bad? Why do people keep telling me to use PGP? The answer is that they shouldn’t be telling you that, because PGP is bad and needs to go away. There are, as you’re about to see, lots of problems with PGP. Fortunately, if you’re not morbidly curious, there’s a simple meta-problem with it: it was designed in the 1990s, before serious modern cryptography.
OOP is considered by many to be the crown jewel of computer science. The final solution to code organization. The end to all of our problems. The only true way to write our programs. Bestowed upon…
Here at Trail of Bits we review a lot of code. From major open source projects to exciting new proprietary software, we’ve seen it all. But one common denominator in all of these systems is that for some inexplicable reason people still seem to think RSA is a good cryptosystem to use. Let me save…
This guide is intended to catch you up with the state of JavaScript testing in 2019. It combines information from the best recent articles, and our own experience at Welldone Software Solutions.
ECMAScript 2019 has landed! It's time to look what's new and... go beyond that! ECMA-262 and ECMAScript 2019 release cycle, features, proposals and more!
Reactive streams are a unified way of dealing with asynchronous events in JavaScript. Learn more in this tutorial with RxJs examples that you can run & modify.
Redux-Observable is a middleware for Redux which handles cancellation and many other asynchronous side effects by using reactive programming. … RxJS and Most.js are two libraries for reactive programming with which you can handle streams of actions in different ways. … In the following examples, Most.js will be used.