V8 release v7.4
V8 v7.4 is filled with all sorts of developer-facing goodies. This post provides a preview of some of the highlights in anticipation of the release. V8 now supports JavaScript execution without allocating executable memory at runtime. In-depth information on this feature can be found in the dedicated blog post. WebAssembly Threads/Atomics shipped.

I Used The Web For A Day On Internet Explorer 8
This article is part of a series in which I attempt to use the web under various constraints, representing a given demographic of user. I hope to raise the profile of difficulties faced by real people, which are avoidable if we design and develop in a way that is sympathetic to their needs. Last time, I navigated the web for a day using a screen reader. This time, I spent the day using Internet Explorer 8, which was released ten years ago today, on March 19th, 2009.

React Router v5

  • React Router version 5 is now available.
  • v5 is fully backwards compatible with 4.x
    • The only reason for the major version bump has to do with how we were specifying dependencies in react-router-dom
  • v5 introduces several structural improvements, including:
    • Better support for React 16
    • Eliminates all warnings in <StrictMode>
    • New context API (internal only)
    • Fully automated releases.
  • v5 also introduces a few new features

State of the Vuenion: An Update on Vue.js
At last month’s VueJS Amsterdam event, the creator of Vue.js gave a 40 minute keynote on how things are going with the project.




Flutter 实现原理及在马蜂窝的跨平台开发实践
在本文中,我们将结合 Flutter 在马蜂窝商家端 App 中的应用实践,探讨 Flutter 架构的实现原理,有何优势,以及如何帮助我们解决问题。



Writing Resilient Components
When people start learning React, they often ask for a style guide. While it’s a good idea to have some consistent rules applied across a project, a lot of them are arbitrary — and so React doesn’t have a strong opinion about them. You can use different type systems, prefer function declarations or arrow functions, sort your props in alphabetical order or in an order you find pleasing. This flexibility allows integrating React into projects with existing conventions. But it also invites endless debates.

How To Implement Smooth Transitions in React
In this post, you will see how to use the React-Transition-Group library to implement smoother transitions. In the end, you will be able to use this amazing library to bring a lot of awesomeness to your React Components.

I Don’t Hate Arrow Functions
Arrow functions are fine for certain usages, but they have so many variations that they need to be carefully controlled to not break down the readability of the code.

A complete guide to threads in Node.js
Back-end languages, which generally support multithreading, have all kinds of mechanisms for syncing values between threads and other thread-oriented features. To add support for such things to JavaScript would require changing the entire language, which wasn’t really Dahl’s goal. For plain JavaScript to support multithreading, he had to create a workaround. Let’s explore.

Repl.it GFX: Native graphics development in the browser
At Repl.it we live and breathe making software creation easier. With our programming environment, you could start coding in your favorite language in seconds. With live deployments, we made web hosting a breeze. With Multiplayer, we’ve removed the drudgery from coding with friends. And today, we’re excited to bring native GUI applications and game development to the browser.
另附:Google unveils Stadia cloud gaming service, launches in 2019.

Building lifelike virtual avatars to help people connect in VR
Facebook Reality Labs (FRL) is using groundbreaking 3D capture technology and AI systems to create lifelike virtual avatars. The technology could one day make social connections in virtual reality as natural and common as those in the real world.
另附:Giant steps and liberating spaces – Virtual Reality is making cool moves.

关于“Open” Distro、开源和公司建设的几点思考
我在 2009 年坐下来编写了 Elasticsearch 最初的几行代码,并以开源方式提供给用户。因此我放弃了原来的工作,花了两年时间开发产品并围绕这些产品打造杰出的社区。在 2012 年,我们围绕所开发的产品创建了公司:Elastic。我们投入巨大精力维持用户社区,并且采用围绕这一社区而开发的开源产品生态系统。Elastic 关注的焦点始终是:开发强大的产品,围绕这些产品构建社区,并帮助用户实现成功。
另附:Henry Zhu, a core maintainer of Babel: Open Source Is About One’s Soul Searching and Moving the Whole Community

Why Fastly loves QUIC and HTTP/3
QUIC is being standardized at the Internet Engineering Task Force (IETF) and our engineering team includes one of the IETF QUIC working group’s chairs and an editor of the core document. We are also working on quicly, our own implementation of this new protocol. Let’s explore what QUIC is in a bit more detail and why we’re so excited to put our resources behind it.

How I’m able to take notes in mathematics lectures using LaTeX and Vim
I start­ed using LaTeX to write lec­ture notes in the sec­ond se­mes­ter of my bach­e­lor in math­e­mat­ics, and I’ve been using it ever since, which makes for a total of more than 1700 pages of notes. These lec­ture notes — in­clud­ing fig­ures — are made while at­tend­ing the lec­ture and have not been edit­ed af­ter­wards. This blog post will focus on the first item: writ­ing LaTeX.


Firefox 66: The Sound of Silence
Firefox 66 is out, and brings with it a host of great new features like screen sharing, scroll anchoring, autoplay blocking for audible media, and initial support for the Touch Bar on macOS.
另附:Today’s Firefox Aims to Reduce Your Online AnnoyancesRelease Notes for Safari Technology Preview 78A Homepage for the JavaScript Specification.

Matrix 1.0 – Are We Ready Yet?
Folks, as you know we are now very close to achieving Matrix 1.0 and finally being in a position to shed our ‘beta’ tag. It has been a long time coming and speaks to the huge effort from hundreds of people over the past 5 years.

GitLab 11.9 released with secrets detection and multiple MR approval rules
Inadvertently committing credentials to a shared repository can have serious consequences, yet it is a simple mistake to make. Once an attacker gets your password or API key, they can take over your account, lock you out, and fraudulently spend money. This can even lead to a domino effect where access to one account grants access to others. With the stakes so high, it’s of paramount importance to learn as quickly as possible if secrets have been leaked.

可以部署到服务端的 VS Code,功能非常完整。

IndexedDB with usability
This is a tiny (~1.13k) library that mostly mirrors the IndexedDB API, but with small improvements that make a big difference to usability.

Announcing fromfrom
fromfrom is a library to transform sequences of data from one format to another.

construct-js is a library for creating byte level data structures. It focuses on a declarative API and simplicity of use.

NestJS 6: What’s New?
I am thrilled to announce the official release of Nest 6: A progressive Node.js framework for building efficient and enterprise-grade, server-side applications. Last year was great for our community. We experienced an almost 300% growth in popularity, rising four times faster than any existing HTTP library. Nest was presented at many conferences all over the world, and many amazing articles & videos were created. 2018 was amazing and we expect 2019 to be even better!

Simple & light weight (<2kb gzipped) vanilla javascript plugin to create smooth & beautiful animations when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!

A React Hook for managing state in URL query parameters with easy serialization.

Lightweight, beautiful and user-friendly interactive prompts.

Peacock v1
A Visual Studio Code extension that subtly changes the workspace color of your workspace. Ideal when you have multiple VS Code instances and you want to quickly identify which is which.

Svelte Native • The Svelte Mobile Development Experience
Svelte Native is a new approach to building mobile applications using NativeScript. Where other JS-Native frameworks like React-Native and Nativescript-Vue do the bulk of their work on the mobile device, Svelte Native shifts that work into a compile step that happens when you build your app. Instead of using techniques like virtual DOM diffing, Svelte writes code that surgically updates the native view widgets when the state of your app changes.

Fyne 1.0: A Cross Platform GUI Development Toolkit
We’re building a modern application framework and desktop environment focussed on design, usability and ease of development and distribution. Best of all it’s open source and free to use!

single-command flamegraph profiling.Discover the bottlenecks and hot paths in your code, with flamegraphs. 0x can profile and generate an interactive flamegraph for a Node process with a single command, on any platform which Node runs on (macOs, Linux, Windows, Android…).

JDK 12 General-Availability Release
Java SE 12 is here and even though it’s not an LTS release, it definitely brings some important features to the table. Let’s have a look at the highlights of this new release.

Another year has passed. The curl project is now 21 years old. I think we can now say that it is a grown-up in most aspects. What have we accomplished in the project in these 21 years? We’ve done 179 releases. Number 180 is just a week away.

Commento - A fast, privacy-focused commenting platform
A fast, privacy-focused commenting platform. Embed Commento in your website to foster discussion and improve engagement.

A Julia interpreter and debugger
The debugger is itself a collection of tools that enable those features. The core is powered by an interpreter that can faithfully run Julia code while allowing various front-ends to control its execution. Each front-end is its own package: Juno incorporates the debugger into its IDE, Rebugger provides a REPL text UI, and the traditional step/next/cont2018 inue command-line interface is provided by Debugger. All these new debugging capabilities seamlessly integrate with Revise, so that you can continuously analyze and modify code in a single session.

Rust Cookbook
This Rust Cookbook is a collection of simple examples that demonstrate good practices to accomplish common programming tasks, using the crates of the Rust ecosystem.
另附:Implementing a NES Emulator in Rust.


How Art Direction Will Help You Create Masterful Web Interfaces
Use Art Direction to Magnify your Communication and Showcase your Talent. Art direction will determine the difference between a regular and brilliant creations. This, because good design choices will be made from the beginning of the project, and guarantee the success of your operation, from customer requirement to a masterful web interface.

Teenager’s UX: Designing for Teens
Teens are (over)confident in their web abilities, but they perform worse than adults. Lower reading levels, impatience, and undeveloped research skills reduce teens’ task success and require simple, relatable sites.

New Web Order: An Overview of Content-First Design
Designers do not simply decorate, they create an experience of moving through content. But what happens if a client or team members don’t understand how content should drive design? To avoid an upside-down process, there are strategies that can help explain the importance of content and rally a team around creating it upfront.

The Principles of Design and Their Importance
In reality, there are roughly a dozen basic principles of design that beginning and expert designers alike should keep in mind when working on their projects. In addition, there are another dozen or so “secondary” design principles that are sometimes included as basics (for example, the Gestalt Principles, typography, color, and framing). The main design principles are explained and illustrated below.

Platform UX: Domain-Driven Design Concepts in Enterprise UX
Domain-driven design (DDD) is a set of modeling techniques that can facilitate systems thinking. DDD is an approach to modeling software that accounts for business processes by explicitly articulating the relationships among teams and technical systems with the intent of accelerating the discovery work that is necessary to iterate on existing software.
另附:Introduction to coding for UX and UI designers: data structures and objects.



2018 年底,金山软件举办创业三十年庆典,三位创始人,求伯君、雷军和张旋龙到场。庆生中,雷军与求伯君深情相拥,两个中年男人欣喜落泪。次日,雷军在微博中写道:三十年的岁月年华,三十年的兄弟情谊,刹那间涌上心头。人生能有几个三十年,人生又能有几个这样的战友?

Uber的文化价值观,由CEO Travis Kalanick亲自起草,于2015年9月在Uber 5周年年会上首次公布。战斗到底 “Always hustlin” 、热血澎湃 “Superpumped” 、大愿景大风险“Big bold bets” 是其最具代表性的三条。


作者:Dafrok (https://github.com/dafrok) - Open source is justice.

- 百度数据可视化
- 百度智能建站