FEX 技术周刊 - 2018/06/04
可关注。附：Baby’s First Rust+WebAssembly module: Say hi to JSConf EU!
Why is Front-End Development So Unstable?
Like most natural complainers I am generally better at moaning about problems than, y’know, SOLVING them. But I have a few ideas: Be wary of Medium; Be wary of self-promotion; Consider non-microlib architectures; Don’t over-sweat the employablity thing.
Andrew Clark: React Suspense
Async rendering in React gives us a powerful new set of primitives for addressing longstanding problems in UI development. I’ll discuss React’s vision for how async rendering can improve data fetching, code delivery, prefetching, view transitions, and more. 另：It’s 5 Years Since React Was Open Sourced、Let’s fall in love with React Fiber
To Yarn and Back (to npm) Again
Beyond SPAs: alternative architectures for your PWA
I’m going to cover an important, but potentially misunderstood topic: The architecture that you use for your web app, and specifically, how your architectural decisions come into play when you’re building a progressive web app.
另附：New in Chrome 67、enable Shadow DOM in Nightly
The Cult of the Complex
There’s a lot of complexity to good design. Technical complexity. UX complexity. Challenges of content and microcopy. Performance challenges. This has never been and never will be an easy job. Simplicity is not easy—not for us, anyway. Simplicity means doing the hard work that makes experiences appear seamless—the sweat and torture-testing and failure that eventually, with enough effort, yields experiences that seem to “just work.”
浅谈 2018 移动端跨平台开发方案
介绍目前几个方案的现状。其实在超级 App 流行的当下，跨 App （微信、支付宝、淘宝、百度等）才是一大难题。
移动端本地 H5 秒开方案探索与实现
CSS Is So Overpowered It Can Deanonymize Facebook Users
Some of the recent additions to the Cascading Style Sheets (CSS) web standard are so powerful that a security researcher has abused them to deanonymize visitors to a demo site and reveal their Facebook usernames, avatars, and if they liked a particular web page of Facebook.
Reconciling GraphQL and Thrift at Airbnb
Our frontend engineers wanted rapid iteration and flexibility from GraphQL, while our backend engineers wanted stability and specificity from Thrift. This is the story of how we got the two groups talking and built something that works for everyone.
另附：Prisma Aims to Unite the Polyglot of Databases with GraphQL
A cartoon intro to DNS over HTTPS
Two more protections we’re adding to that list are: DNS over HTTPS, a new IETF standards effort that we’ve championed; Trusted Recursive Resolver, a new secure way to resolve DNS that we’ve partnered with Cloudflare to provide. With these two initiatives, we’re closing data leaks that have been part of the domain name system since it was created 35 years ago. And we’d like your help in testing them. So let’s look at how DNS over HTTPS and Trusted Recursive Resolver protect our users. But first, let’s look at how web pages move around the Internet.
UTC is Enough for Everyone, Right?
Programming time, dates, timezones, recurring events, leap seconds… everything is pretty terrible. The common refrain in the industry is Just use UTC! Just use UTC! And that’s correct… sort of. But if you’re stuck building software that deals with time, there’s so much more to consider. It’s time… to talk about time.
Bad Practices in Database Design: Are You Making These Mistakes?
In this article, you will learn about some of the common database design bad practices, why they are bad, and how you can avoid them.
10 GitHub Security Best Practices
So let’s get started with our list of 10 GitHub security best practices, starting with the classic mistake of people adding their passwords into their GitHub repositories!
How the Go runtime implements maps efficiently (without generics)
This post discusses how maps are implemented in Go.
A new fast hash table in response to Google’s new fast hash table
I wrote my new favorite hash table. This came about because last year I wrote the fastest hash table (I still make that claim) and this year one of the organizers of the C++Now conference asked me to give a talk. My problem was that Google had also announced a new fast hash table last year, and I wasn’t sure if mine would compare well against theirs.
How to Create a Team-Health Assessment for Engineering Organizations
Talking with folks in various leadership roles at New Relic, I heard a lot of stories about the successes and failures of this new model. But it was all anecdotes, it wasn’t real data. We needed something more concrete if we wanted to understand what was going on in these new teams and drive the positive changes we wanted to make. At the same time I was having these conversations, the Agile Fluency Project released an agile practices diagnostic for teams, and the proverbial light bulb appeared: We needed to do team health assessments. This is the story of how we developed and implemented our assessments.
30 years later, QBasic is still the best
My quest has led me to endless forums, through which I have tried countless suggestions: SmallBasic, Pico-8, Smalltalk, Scratch, etc. I have even inquired of the Great Oracles of StackOverflow, to no avail. After 5 months, I ended up with a disappointing conclusion: nothing is even close to what I had back in another era. 30 years later, QBasic is still the best when it comes to discovering programming.
Jest 23: Blazing Fast Delightful Testing
We would also like to welcome both Babel and Webpack to the Jest community! After converting from Mocha to Jest 23 Beta, Webpack saw their total test suite time reduced 6x from over 13 minutes to 2 minutes 20 seconds.
Announcing TypeScript 2.9
Getting Started with Live Coding in Visual Studio Code w/ Live Share
Live Share is an extension for VS Code that enables real-time collaboration between developers. As you’ll see in a second, you’ll have the ability to share a “session” with someone else, allowing them to edit code as well as share a sever and debugging session. I’ve seen real-time collaboration in action with Cloud 9 before, but to have this now be a part of my favorite text editor is extremely exciting! So, let’s go ahead and take a look at how it works.
The Service Worker Cookbook is a collection of working, practical examples of using service workers in modern web sites.
Chromely is a lightweight alternative to Electron.NET, Electron for .NET/.NET Core developers. Chromely is a .NET/.NET Core HTML5 Chromium desktop framework. It is focused on building apps based on Xilium.CefGlue, CefSharp implementations of embedded Chromium (Cef) without WinForms or WPF. Chromely uses Windows and Linux native GUI API as “thin” chromium hosts. It can be extended to use WinForms or WPF.
ProppyJS - Functional props composition for UI components
Functional props composition for components
Smooth UI is an open source components library built with React and Styled Components.
Tools for developing, documenting, and testing React component libraries.
Beautiful, data-driven animations for React.
Slugify a string. Useful for URLs, filenames, and IDs.
Router manages the focus of your app on route transitions. There’s nothing you have to do about it, it just happens.
Visual Studio 完全AI手册
A super simple currency formatting library. 155 currencies, 715 locales & less than 7KB gzipped.
Chatkit - Developer-driven chat done simply
Adding chat to your app has never been so easy. Integrate Chatkit with your app and engage users via realtime messaging. No more infrastructure hell, no hassle, just add it.
Mastodon is a free, open-source social network server based on open web protocols like ActivityPub and OStatus. The social focus of the project is a viable decentralized alternative to commercial social media silos that returns the control of the content distribution channels to the people. The technical focus of the project is a good user interface, a clean REST API for 3rd party apps and robust anti-abuse tools.
Join the GitHub Learning Lab Explorer Challenge
From May 23 to June 26, GitHub is hosting a challenge in the Community Forum where you can be recognized for leveling up your knowledge with GitHub Learning Lab. To participate, visit lab.github.com and sign in with your GitHub account. Complete at least three courses, and head to the challenge page on the Community Forum for details on completing your submission.
GitHub Co-Founder Chris Wanstrath Steps Down From CEO Role
另附：Microsoft has been talking about buying GitHub、GNOME, welcome to GitLab!
Small Stars of Big Design: Review of Interactive UI Elements
Powerful and user-friendly product designs are based on elaborately crafted details. Web and mobile user interfaces are all packed with small elements of big impact. Today we offer you to revise some of the UI elements found in the vast majority of layouts, consider their functionality and role and check them in various examples by studio designers. So, let’s get started!
A Reference Guide For Typography In Mobile Web Design
With mobile taking a front seat in search, it’s important that websites are designed in a way that prioritize the best experience possible for their users. While Google has brought attention to elements like pop-ups that might disrupt the mobile experience, what about something as seemingly simple as choice of typography? The answer to the typography question might seem simple enough: what works on desktop should work on mobile so long as it scales well. Right?
9 inspiring redesign concepts for popular websites
What if you had free rein to completely redesign one of your favorite websites? As a creative exercise, the designers below did just that for YouTube, LinkedIn, Trello, and more. Here are our nine favorite website redesigns.
How not to write an error message
Discover all the ways the internet’s most well-meaning messages can go horribly, horribly wrong.
An intro to Machine Learning for designers
The basics of machine learning and how to apply it to the products you are building right now.
Security culture, the Dropbox way
The first core company value at Dropbox is “Be Worthy of Trust.” From a security perspective, this means keeping our users’ stuff safe. Our culture of security is built on this foundation of trust and is a fundamental part of our identity. We have a dedicated Security Culture Team whose mission is to cultivate an environment where our employees make consistently secure and informed decisions that protect Dropbox, our users, our employees, and our physical spaces.
Announcing the How to Sell Guide
In our years of coaching dozens of Silicon Valley SaaS startups, we’ve seen a lot of things trip otherwise great teams up. One of the biggest fundamentals? How to sell. With that in mind, we’ve to developed our first-ever guide, How to Sell, designed to give you and your team the tools you need to understand how to build and scale a repeatable sales process.
– THE END –