2018.04.30 - What Will Programming Look Like In The Future?
Ping Xia
Title: 2018.04.30 – What Will Programming Look Like In The Future?
Industry Conferences
[Register] FDCon2018 – The Path to Integrated Front‑End Experience Development https://fdcon.topgeek.org/
The 3rd China Front‑End Developer Summit, FDCon2018 targets mid‑ to senior‑level engineers interested in front‑end and mobile development across various industries. It focuses on cutting‑edge technologies and practical experience, aiming to help attendees grasp the latest trends and best practices in front‑end and mobile development. This year’s theme is “The Path to Integrated Front‑End Experience Development,” emphasizing both endpoint and stack integration. Also see: Register – PHPCon China 2018, GMIC Beijing – Global Mobile Internet Conference
Deep Dives
Node v10.0.0 https://nodejs.org/en/blog/release/v10.0.0/
Feature highlights for the Node‑ChakraCore release include: V8 6.6; full support for N‑API; easy start with Time‑Travel Debugging via a new VS Code extension; TTD support for generators and async functions; support for the Inspector protocol; increased stability and assorted improvements. Related links: The Node.js Project Introduces Latest Release Line: Node.js 10.x, Node v10 Feature Breakdown, Announcing npm@6, The new npm CLI: a year in review; or, what you may have missed, Beyond npm@6: The future of the npm CLI.
V8 – Improved Code Caching https://v8project.blogspot.com/2018/04/improved-code-caching.html
V8 caches generated code for frequently used scripts. Starting with Chrome 66, we cache more code by generating the cache after top‑level execution, cutting parse and compilation time on first load by 20‑40 %.
CKEditor 5 v10 Released: A Powerful WYSIWYG Editor Framework https://ckeditor.com/blog/CKEditor-5-v10.0.0-the-future-of-rich-text-editing-looks-stable/
After almost four years of research, planning, and development, we’re proud to present a brand‑new rich‑text editing experience – CKEditor 5. For those unfamiliar, CKEditor 5 is a robust framework that lets you build any kind of text‑editing solution, including real‑time collaborative editing.
Writing WebAssembly By Hand http://blog.scottlogic.com/2018/04/26/webassembly-by-hand.html
This post walks through implementing Conway’s Game of Life—a classic demo—in raw WebAssembly. You might also enjoy this excellent tutorial that implements Life in WebAssembly using Rust. Also see: Beta for Qt for WebAssembly
CSS at Scale: LinkedIn’s New Open‑Source Projects Take on Stylesheet Performance https://engineering.linkedin.com/blog/2018/04/css-at-scale--linkedins-new-open-source-projects-take-on-stylesh
CSS Blocks is an ergonomic, component‑oriented CSS authoring system that compiles to high‑performance stylesheets. By combining an opinionated authoring model, build‑time analysis and template rewriting, and a novel CSS optimizer, css‑blocks injects fresh power and ease of use into the tools and best practices stylesheet developers already know and love.
Testing Strategies for React and Redux https://hacks.mozilla.org/2018/04/testing-strategies-for-react-and-redux/
When the Firefox Add‑ons team rewrote addons.mozilla.org as a single‑page app backed by an API, we chose React and Redux for powerful state management, delightful developer tools, and testability. Achieving testability isn’t straightforward because of competing tools and techniques. Below are some testing strategies that have worked well for us. Also see: Software Testing Anti‑patterns
Nerv Practical – JD.com Home Page Redesign Summary https://aotu.io/notes/2018/04/24/jdindex_2017/
A brief overview of JD.com’s home‑page development covering overall architecture, performance and experience optimizations, and page reliability. The short length can’t capture all the stories and insights from the project—many problems weren’t solved as smoothly as described, and there are countless late‑night coding (and kebab‑skewer) anecdotes left untold.
Qone Open‑Source – Bringing LINQ‑Style Queries to JavaScript http://div.io/topic/2197
LINQ (Language‑Integrated Query) was introduced in .NET 3.5, allowing VB or C# to query data sources such as SQL Server, XML, ADO.NET datasets, and enumerable objects (LINQ to Objects). Inspired by work on Tencent Docs formulas, early kmdjs (uglify2) development, and .NET experience, Qone was created. Qone lets front‑end engineers use LINQ‑like syntax in JavaScript; it implements “LINQ to Objects” (hereafter “qone to objects”) over JSON arrays.
Backend Architectures Roadmap https://github.com/xingshaocheng/architect-awesome/blob/master/README.md
A great resource for front‑end developers who want to practice full‑stack development with Node.
Interview with “Dead Horse”: Why Egg.js Is an Enterprise‑Grade Node Framework https://zhuanlan.zhihu.com/p/36240171
Since Node.js appeared, Alibaba has been one of the most aggressive adopters in China. Not only does Alibaba use Node extensively for server‑side development internally, but in 2016 it distilled its Web‑development experience into the open‑source Egg.js project, branding it as an enterprise‑grade framework. What requirements do enterprise projects have, and how does Egg.js meet them?
Qiniu Cloud: How the Engineering Efficiency Team Empowers R&D https://mp.weixin.qq.com/s?__biz=MzA4NTU2MTg3MQ==&mid=2655164024&idx=1&sn=756862073ad7498d80e54da0e6d2ce69
Our system is divided into three pillars: quality management, engineering enablement, and process improvement. Although the diagram shows dotted and solid lines, the whole is an organic whole. We aim not just for quality, but for the highest quality achievable efficiently.
Canvas: Draw on the Web https://yuque.com/airing/canvas
From fundamentals to the Canvas API, basic and advanced animation techniques, audio‑video handling, mobile apps, and—time permitting—3D, multiplayer, and game development. Also see: SpriteJS, WebGL2 Fundamentals, 3D Models in HTML Documents.
Ruanyi Feng’s Weekly Share http://www.ruanyifeng.com/blog/2018/04/weekly-issue-2.html
A weekly roundup of things I found worth sharing. I’ve long tried various ways to organize my bookmarks; recently I decided to turn them into articles for easier sharing. Feel free to subscribe via RSS for long‑term updates.
Under the Hood of CSS and JS Animations + How to Optimize Their Performance https://blog.sessionstack.com/how-javascript-works-under-the-hood-of-css-and-js-animations-how-to-optimize-their-performance-db0e79586216
Animations are essential for compelling web apps. As users focus more on UX and businesses recognize the value of smooth, enjoyable journeys, web applications grow heavier and feature richer, more dynamic UIs—requiring more sophisticated animations for seamless state transitions.
Replace Animated GIFs with Video https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/replace-animated-gifs-with-video/
Learn how GIF‑hosting sites keep bandwidth costs low by converting large GIFs into lean, fast video files, how to embed those videos so they behave like GIFs, and a brief look at decoding performance differences between GIFs and video.
Originally written by Ping Xia (平侠) and published in Chinese on Web技术周刊 (Web Tech Weekly). Translated and adapted for DriftSeas with permission.
Sources & References
- [1]https://fdcon.topgeek.org/
- [2]Register – PHPCon China 2018
- [3]GMIC Beijing – Global Mobile Internet Conference
- [4]https://nodejs.org/en/blog/release/v10.0.0/
- [5]The Node.js Project Introduces Latest Release Line: Node.js 10.x
- [6]Node v10 Feature Breakdown
- [7]Announcing npm@6
- [8]The new npm CLI: a year in review; or, what you may have missed
- [9]Beyond npm@6: The future of the npm CLI
- [10]https://v8project.blogspot.com/2018/04/improved-code-caching.html
- [11]https://ckeditor.com/blog/CKEditor-5-v10.0.0-the-future-of-rich-text-editing-looks-stable/
- [12]http://blog.scottlogic.com/2018/04/26/webassembly-by-hand.html