D2 和 SeeConf
D2: http://d2forum.alibaba-inc.com/,SeeConf: https://seeconf.antfin.com/


Scratch 3.0 is here!
With the introduction of Scratch 3.0 comes lots of exciting new features. There are dozens of new sprites, backgrounds, and sounds for you to play with. The brand new extension library lets you add new sets of blocks that connect to hardware and software services and do even more with Scratch.

Monorepos: Please don’t!
As is often the case in software engineering, we tend to look at tech’s most successful companies for guidance on best practices, without understanding the monumental engineering that has gone into making those companies successful at scale. Monorepos, in my opinion, are an egregious example of this. The frank reality is that, at scale, how well an organization does with code sharing, collaboration, tight coupling, etc. is a direct result of engineering culture and leadership, and has nothing to do with whether a monorepo or a polyrepo is used. The two solutions end up looking identical to the developer. In the face of this, why use a monorepo in the first place? Please don’t!

Exploring React BDD using Gherkin syntax with Jest Cucumber
Behaviour-Driven Development (BDD) is a collaborative approach to software development that bridges the communication gap between business and IT. BDD helps teams communicate requirements with more precision, discover defects early and produce software that remains maintainable over time.


如果你开发过用户界面,那么你可能直接或使用库来处理以下这些挑战。 无论是哪种情况,我都鼓励你尝试不使用任何库的情况下,独立创建一个小应用,并不断重构,解决问题。 任何一个问题都没有通用的解决方案,在探索问题和不同的权衡尝试之中才能学到东西。

其实你并不懂 Unicode
古有 Babel 通天塔,今有 Unicode 字符集,很多编程语言支持 Unicode,甚至在语法层面直接支持,绝大部分程序员可能会因此觉得自己懂 Unicode 了,自己的代码不需要特别注意就能处理世界上所有语言的字符了,觉得 Unicode 高大上真善美,其实并非如此,下面讲述下作为一个程序员,你需要了解的几个关键概念,里面颇有几个大坑,看看各位知道几个。

The Chronicles of JavaScript Objects
Objects are the foundation of JavaScript and permeate its every aspect. Almost everything in JavaScript is an object. In fact, only six things are not objects. They are — null,undefined, strings, numbers, boolean, and symbols. These are called primitive values or primitive types.

Artificial Intelligence in JavaScript with TensorFlow.js
This is not an article about math (or maths as our European brethren like to call it) nor is it an exposition on the evils of a sentient AI that will kill us all in the end (I don’t subscribe to things of that sort), the goal, dear reader, is to take you down the well trodden path of what this is all about: the software engineering process and what it currently looks like for AI and JavaScript. 另附:Kalimdor.js: Machine Learning with TypeScript

How To Learn CSS
You don’t need to commit in memorizing every CSS Property and Value, as there are good places to look them up. There are some fundamental things, however, which will make CSS much easier for you to use. This article aims to guide you along your path of learning CSS.

APIs are the thing that gets us to the thing
“APIs aren’t the thing. They’re the thing that gets you to the thing.” Let’s explore this idea further and consider what it may mean for the future of APIs.

Scaling Machine Learning Productivity at LinkedIn
The rate at which artificial intelligence (AI) knowledge is being disseminated and the rate of change in applied AI technologies show no signs of slowing down. Today’s software engineers are increasingly learning machine learning (ML) strategies as undergraduate students, and hardly a day goes by without the announcement of a new ML technique or framework. In this post, we’ll talk about our approach at LinkedIn to scaling AI and ML systems so that more engineers can take advantage of these techniques.

6 Things New Relic Believes About Modern Monitoring
To help maintain focus on what really matters, we’ve built the New Relic platform around six core principles that we believe define the role of monitoring in a modern enterprise. We work every day to ensure our platform—via the products and features we ship—adheres to these principles, so you can continue to delight your customers.

Facebook - Open source year in review
At Facebook, we believe in the value of open source technology to achieve a shared goal of improving tools and frameworks used by the entire community. To continue our work toward that goal, we released 153 new open source projects in 2018. Our active portfolio (after removing or archiving outdated repos) contains a total of 474 projects. Collectively, these projects had more than 94,000 commits this year, nearly 28,000 of which came from amongst our over 2,700 external contributors. This healthy and vibrant ecosystem has grown to more than 1.03 million followers, including 257,000 new followers this year. 另附:Data centers year in review.

Mozilla Open Source Support (MOSS) 2018 Year in Review
2018 was a year of change and growth for the MOSS program. We worked to streamline the application process, undertook efforts to increase the diversity and inclusion of the program, and processed a record number of MOSS applications. The results? In total, MOSS provided over $970,000 in funding to over 40 open-source projects over the course of 2018. For the first time since the beginning of the program, we also received the majority of our applications from outside of the United States.


imgcook - 设计稿一键智能生成代码
imgcook 是专注以各种图像(Sketch/PSD/静态图片)为原材料烹饪的匠心大厨,通过智能化手段将各种图像一键生成可维护的 UI 视图代码,期望此 imgcook (图像大厨) 未来能够成为一位 P5 级别的重构工程师,能切实提高开发的开发效率,并助力开发、设计师、测试的高效协作。

Top Pens of 2018 on CodePen

Adios to Winter Bash 2018
The 2018 Winter Bash festivities have come to an end. It was a fun season, especially with the addition of the sweater mini-game. As is our custom, we’ll recap a bit here on some of the stats for the hats as well as post some of the many outrageously attractive avatars we found across the network. This year we saw a 5-way tie for most hats earned during Winter Bash! However, the question still remains… did they earn all of the possible hats?

Deploying documentation to GitHub Pages with continuous integration
This post gives an overview of some popular options currently available for building and deploying documentation before diving into the details of using CircleCI to deploy documentation to GitHub Pages, a workflow that will be convenient for teams already using those tools for hosting code and running automated tests.

Facebook FBT - An internationalization framework
The fbt framework has two (mostly) equivalent APIs: A declarative JSX-style <fbt> tag API and a “vanilla” or “functional” fbt(…) API that more closely resembles standard JavaScript. In general, you can compose your translatable text in either format. 另附:精读-国际化布局 - Logical Properties.

Epoc.js: Open Source JavaScript Brain Sensor Controller Software
To make the brain-machine interface work, an end user needs first to train the mental commands. Once finished, you can then use epoc.js, created by Charlie Gerard, a software developer at ThoughtWorks, to work with the Emotiv API, as well as use the Emotiv emulator.

Low.js: A Node Port for Embedded Devices
https://www.lowjs.org/ Low.js is a port of the JavaScript runtime Node.js with far lower system requirements, allowing it to run on cheap, power-efficient microcontroller boards based on the ESP32-WROVER module. With low.js you can build scalable Internet-native electronics applications (IoT) easily and fast.

A scratchpad for your thoughts, a playground for your creativity…

Finds degree of similarity between two strings, based on Dice’s Coefficient, which is mostly better than Levenshtein distance.

Magic Grid
A simple, lightweight Javascript library for dynamic grid layouts.

Flair - A very simple framework for state-of-the-art NLP
Flair is: A powerful NLP library. Flair allows you to apply our state-of-the-art natural language processing (NLP) models to your text, such as named entity recognition (NER), part-of-speech tagging (PoS), sense disambiguation and classification. A text embedding library. Flair has simple interfaces that allow you to use and combine different word and document embeddings, including our proposed Flair embeddings, BERT embeddings and ELMo embeddings. A Pytorch NLP framework. A Pytorch NLP framework. Our framework builds directly on Pytorch, making it easy to train your own models and experiment with new approaches using Flair embeddings and classes.

Dubbo 的故事 :十年前,Dubbo 还是一个阿里内部的系统, 谁能想到,十年后,它会变成 Apache 的商标,成为百人参与贡献的超级项目。商业公司开源产品会怎样?开源是否要按照既定的方式去生长? Linux md maintainer, Shaohua Li, has died :Shaohua Li 从 2003 年起参与内核开发,他的贡献覆盖了从 x86、IOMMU、存储到内存管理等不同的子系统,他就职于 Facebook,2016 年接替长期的 MD 维护者 Neil Brown 成为新的维护者,过去一年他一直与癌症作斗争。 如何看待腾讯 AILab 张潼离职 : 学术和工业界究竟改怎么协同呢?


Start With a Website, Not a Mobile App
This article helps young developers reframe their approach to ideation and iteration. As a student, indie hacker, or side-project hustler, it’s fun to experiment with new ideas and launch concept quickly. But, in my opinion, starting those projects on the web will be faster and more likely to succeed than starting with iOS or Android.


新手设计师们有时会遇到这样一种情况:自己负责设计一两年的产品,突然面临产品方向调整或者业务解散的情况。而作为设计师,我们大多是非常敏感且感性的,当遇到自己投入心血、付出感情的产品,面临这样的情况,大多会灰心丧气、怀疑自己,“为什么自己付出了努力和心血,觉得十分满意的设计,无法获得市场的认可,好好的活下去?“ 本篇文章,希望能够帮助新手或者不是新手的设计师们,尽量避免遇到类似的情况,让自己付出心血的产品,更长远、更好的活下去。

Are Users Really Stupid?
As a designer I heard numerous times that users are stupid. They don’t understand obvious things, they don’t read the instruction and so on. I bet you heard or even said this phrase too. What’s wrong with it? While it’s at least offensive to users, it’s also not true. Let’s uncover why we say so and why users aren’t stupid at all.

Using Architectural History as a predictive model for the future of Product Design
From the early 90s through the 2010s, the emerging need to make digital software accessible to the masses propelled software designers, penned “UX designers” by Don Norman, to explore and develop focused design patterns that were functional and simple. Through heavy reductionism, user journeys were made to be as streamlined as possible, and the sole purpose of the interface was to guide users onto the next step of the journey.


Looking Forward to 2019 - Let’s Encrypt
Let’s Encrypt had a great year in 2018. We’re now serving more than 150 million websites while maintaining a stellar security and compliance track record. Most importantly though, the Web went from 67% encrypted page loads to 77% in 2018, according to statistics from Mozilla. This is an incredible rate of change!

微信八年:从 1.0 到 7.0 版本,一个通讯工具的进化史
在微信诞生的 7 年多里,每推出一个整数版本号都意味着重大更新,所修改变化的功能也代表着国内移动社交产品迭代的方向。有的功能新增后从未下线,有的功能也在被撤回。我们以 iOS 版本更新为主线,整理了微信 7 个版本的变化,为你梳理出中国移动社交的进化图谱。

2018年底,快手的日活用户突破了1.6亿。在整个短视频行业监管趋严、竞争日益激烈的局面下,快手在前年底达到超级APP指标—1亿日活后 ,一年内再度增长6000万。在抖音被媒体舆论高度关注之外,快手仍在快速、稳健地狂奔。这似乎出乎了很多人意料。更出乎意料的是两个让业界感叹的数据。据信义资本的估计,得益于长尾用户的力量,快手直播付费率高达8%,为行业平均付费率4%的两倍;而在双11当天,快手主播散打哥一天卖货1.6亿元。这一事件,也被罗振宇在跨年演讲中归类到“难以察觉的小趋势”。另附:社交产品,「自我」难寻.

https://mp.weixin.qq.com/s/hbLLgw8Xe7NTpJSZaxcCUw 抖音是唯一,成为抖音的路径却不唯一。这家公司批量生产APP能力如此之强,而且历史成绩显示,核心产品成功的概率很大。除了这个 APP 工厂外,头条的人才机制是其成功的一个关键因素。


作者:nwind (http://wuduoyi.com/) - 知道得越多,不知道的就更多了

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