知鸦日报2021-07-22

2021-07-21 16:30:00 ~ 2021-07-22 16:30:00

产品

58同城产品:用户体验管理应用实践

摘要

用户体验经常出现在细分的场景中,靠细节让我们感知,形成感受层面和态度层面的印象和评价。参照马斯诺的需求原理,人类对安全、效率、社交以及被尊重的这些感受的满足,这就是一种体验,只是换了不同的维度来与我们打交道,属于用户体验的一些底层逻辑。

2.5D视差动态照片教程,让静态照片动起来

摘要

上一期设计达人分享的2.5D视差动态照片特效,有的同学问是如何制作的,其实这种特效并不难学,今天设计达人用1整天时间把教程做出来。

技术

蚂蚁技术:蚂蚁智能监控的稳定性建设

摘要

AntMonitor 是蚂蚁集团的智能监控系统,通过构建面向监控可观测数据的、实时的、稳定的采集、清洗、计算及存储数据链路,为技术风险大脑及体系提供实时、稳定、可靠、丰富的可观测数据与告警服务。

360技术:Flutter中的异步

摘要

同步与异步程序的运行是出于满足人们对某种逻辑需求的处理,在计算机上表现为可执行指令,正常情况下我们期望的指令

腾讯技术:探索Android复杂页面管理之道-QQ音乐播放页代码演进之路

摘要

播放页是QQ音乐内曝光量最大的二级页,是端内展示歌曲信息、提供播控操作、进行推荐宣发的重要入口。随着QQ音乐的快速发展,播放页也从一个简单播控页面逐渐演变到了现在业务众多、UI多变的复杂页面。在该转变的过程中,播放页Android端的代码也根据不同时期的需要,进行了持续演进。本文将简要回顾Android端播放页代码在过去不同时期的结构特点,并重点介绍在最近一次代码结构调整中,我们探索出的一种适合多人开发和代码复用的复杂页面管理模式。

腾讯技术:代码质量与技术债

摘要

代码质量指的是代码内在的非功能性的质量,其好坏直接决定着软件的可维护性成本的高低,进而影响到新产品、新特性的上市时间。本文介绍了代码质量和技术债的概念,并详细介绍了度量代码质量的方法和工具。

slack技术:Extending Anvil for Fun and Profit

摘要

We use Dagger heavily in the Slack Android app for compile-time dependency injection. It’s powerful, flexible, supports basic Kotlin idioms, and allows for advanced dependency injection patterns with less boilerplate. It’s not without its sharp edges though. It slows down our builds with kapt, has a steep learning curve, and can often be tedious to write out its module+component plumbing.

Anvil augments Dagger’s own boilerplate. Factory generation enables us to remove kapt from much of our project, @ContributesTo and @ContributesBinding allow us to automatically wire dependencies without modules, and @MergeComponent allows us to automatically wire together component interfaces. Factory generation alone recently helped us reduce our incremental build times by as much as 25%!

Anvil’s core features are fantastic, but they are not (nor pretend to be!) turnkey solutions for every use case, though they cover the common ones. Every codebase has its own patterns and nuances, so Anvil 2.3.0 introduced a new compiler-api artifact that allows us to extend Anvil’s own code generation to suit those remaining needs. In this post we’ll detail a little of how it works with our own Activity injection pattern as an example.

grab技术:Processing ETL tasks with Ratchet

摘要

At Grab, the Lending team is focused towards building products that help finance various segments of users, such as Passengers, Drivers, or Merchants, based on their needs. The team builds products that enable users to avail funds in a seamless and hassle-free way. In order to achieve this, multiple lending microservices continuously interact with each other. Each microservice handles different responsibilities, such as providing offers, storing user information, disbursing availed amounts to a user’s account, and many more.

In this tech blog, we will discuss what Data and Extract, Transform and Load (ETL) pipelines are and how they are used for processing multiple tasks in the Lending Team at Grab. We will also discuss Ratchet, which is a Go library, that helps us in building data pipelines and handling ETL tasks. Let’s start by covering the basis of Data and ETL pipelines.

uber技术:‘Orders Near You’ and User-Facing Analytics on Real-Time Geospatial Data

摘要

By its nature, Uber’s business is highly real-time and contingent upon geospatial data. PBs of data are continuously being collected from our drivers, riders, restaurants, and eaters. Real-time analytics over this geospatial data could provide powerful insights.

In this blog, we will highlight the Orders near you feature from the Uber Eats app, illustrating one example of how Uber generates insights across our geospatial data.

Orders near you was a recent collaboration between the Data and Uber Eats teams at Uber. The project’s goal was to create an engaging and unique social experience for eaters. We hoped to inspire new food and restaurant discovery by showing what your neighbors are ordering right now. Since this feature is part of our home feed, we needed it to be fast, personalized, and scalable.

lyft技术:Building an Enterprise IntelliJ Plugin for Android Developers

摘要

The Android engineering team at Lyft exclusively uses IntelliJ to develop new Android features (Android Studio is on the horizon, but that’s for another article). The IntelliJ platform offers a powerful SDK that enables developers to build plugins that enrich the IDE’s feature set, and a few years ago the team decided to take advantage of this SDK by building a plugin.

pinterest技术:The machine learning behind delivering relevant ads

摘要

Pinterest is where people go to plan and shop, making ideas and ads from brands helpful in taking Pinners from inspiration to action. It’s our goal to ensure ads continue to be additive and not intrusive on Pinterest. Because of the unique and powerful first party signals on the platform, advertisers can reach Pinners based on their interests, intent and engagement on the platform.

To help in delivering the right ads to the right Pinners in an audience of hundreds of millions of people, we offer advertisers features to achieve relevance including Actalike (AAL) audiences, also known in the industry as Lookalike audiences. AAL audiences help advertisers reach potentially new users via audience expansion.

In this blog, we’ll focus on the machine learning model component of relevant ads delivery and explain how we achieve high quality audience expansion through universal user embedding representations together with per-advertiser classifier models. We demonstrate the power of the proposed combined approach by showing better performance over both regression-based and similarity-based approaches.

pinterest技术:Building scalable near-real time indexing on HBase

摘要

HBase is one of the most critical storage backends at Pinterest, powering many of our online traffic storage services like Zen (graph database) and UMS (wide column data store). Although HBase has many advantages like strong consistency at row level in high volume requests, flexible schema, low latency access to data, and Hadoop integration, it doesn’t natively support advanced indexing and querying. Secondary indexing is one of the most demanded features by our clients, but supporting that directly in HBase is quite challenging. Maintaining separate index tables as the number of indexes grows is not a scalable solution in terms of query efficiency and code complexity. This motivated us to build a storage solution called Ixia, which provides near real-time secondary indexing on HBase. The design is largely inspired by Lily HBase Indexer.

uber技术:Analyzing Customer Issues to Improve User Experience

摘要

The primary goal for customer support is to ensure users’ issues are addressed and resolved in a timely and effective manner. The kind of issues users face and what they say in their support interactions provides a lot of information about the product experience, any technical or operational gaps and even their general sentiment towards the product / company. At Uber, we don’t stop at just resolving user issues. We also use the issues reported by customers to improve our support experience and our products. This article describes the technology that makes it happen.

微医技术:JS 对象遍历知多少?

摘要

本文主要是对 JS 对象(不含数组、Map、Set 结构)的 7个遍历方法进行总结归纳,写该文章的这天恰好是我最喜爱的球星艾弗森的 45 周岁生日,因此本文会以艾弗森的基本资料为模板生成一个 JS 对象并对其进行遍历 。

阿里巴巴技术:iOS 端容器之 WKWebView 那些事

摘要

熟悉 iOS\macOS Hybrid 混合开发的同学应该都有体会,WKWebView 虽然是苹果作为替代 UIWebView\WebView 而推出的"新"组件,但大部分开发者对它实在“爱不起来”。毕竟对于国内大部分应用开发者来说,在实际使用中 WKWebView 所谓的“优势”未必能体现出来,但带来的“坑”却都着实都不浅。

目前社区或线上可查找的 WKWebView 相关资料,大多比较陈旧且人云亦云、复制粘贴类的居多。少部分真实实践和探索的开发者,或许也因时间或精力的原因,对问题和解决方案未能做详细的阐述。导致目前线上 WKWebView 相关的资料数量不少、但质量不高;且有不少文章存在对问题的背景解释不清,解决方案缺乏有效验证等问题。

网易技术:JAVA语言异步非阻塞设计模式(应用篇)

摘要

本文介绍了异步模型和 Promise 设计模式的实际应用场景,讨论了异步API的设计原则,并介绍了相应的解决方案。

vivo技术:灵活运用分布式锁解决数据重复插入问题

摘要

分布式系统不可避免会遇到一些并发场景下的数据冲突,例如读写不一致、数据重复插入等。本文介绍一次典型的在分布式环境下,运用分布式锁解决数据重复插入问题的案例,详细地剖析了造成问题的原因和解决方案的探索。

vivo技术:手把手教你实现Android编译期注解

摘要

详细阐述了实现一个Android编译期注解sdk的步骤以及注意事项,并简要分析了运行时注解以及字节码技术在生成代码上与编译期注解的不同与优劣。

京东技术:京东家庭号前端分层架构演进及赋能实践

摘要

京东家庭号以家庭关系为核心,实现了家庭场景对拉新促活与用户购物消费的助力。

58同城技术:王焱:58同城流式语音识别引擎应用实践

摘要

5月20日,第十三届中国系统架构师大会(SACC2021)干货回顾。

百度技术:品牌广告投放平台的中台化应用与实践

摘要

随着业务和团队规模的增长,单体应用的架构无论从研发效率还是系统性能来看,都出现了瓶颈。微服务化的技术架构改造提上议程。本文首先介绍品牌广告投放平台的架构演进;其次结合业务,介绍在践行中台化理念和微服务化改造过程中碰到的问题和解决方案。

百度技术:百度海量商品库存储优化实践

摘要

在百度商业生态中有大量平台类的具备海量商品服务能力的广告主,我们希望能够将广告主的商品服务精准推送到用户,连接人和商品服务。为此我们实现了一套商品广告系统,管理全网商品并将商品和用户实现精准匹配。本文主要介绍百度商品库的核心挑战与架构实践。

腾讯技术:系统如何设计才能更快地查询到数据?

摘要

开通微信时,系统如何判断你输入的手机号没被注册?如何使用更少的存储空间、更快的速度解决这个问题?对于这个问题,腾讯微信支付数据开发工程师杭天梦带来了她利用Bloom过滤器解决此类问题的思考,向大家分享。本文分享的主要内容为Bloom过滤器的简介、原理、应用和结论等。

网易技术:网易新闻iOS工程组件化实践

摘要

近年来,移动应用的组件化是一个非常热门的话题。本文以网易新闻iOS项目为背景,来讨论我们是如何进行组件化的实践。

方法

层级体系、职级职等、价值观,如何进行分级描述?

摘要

对人对事的分级评估,在HR工作中的3种应用。

企业管理者如何领导比自己年龄大、学历高的员工

摘要

作为企业的管理者,如何积极处理年龄大、学历高人才的管理难题,激发他们的工作积极性,促使他们为企业做出更大的贡献成为长期困扰他们的难题之一。

年轻人的职场课:如何管理比自己年长的下属

摘要

90后,这群被公认为最难管的年轻人成为管理者后,如何管理自己的团队?

敏捷转型中的敏态与稳态

摘要

长远来看双模IT并不是企业在进行敏捷转型中追求的目标或终点。敏捷企业需要的是随时能够响应市场的变化,跳脱出IT的小圈子,扩展到业务甚至运营,真正做到全流程端到端敏捷。

梁建章:我带领携程战胜所有竞争对手的方法论

摘要

如果能够让现有的团队发挥最大的作用,最好的办法就是把老的创始人拉回来带着他们拼命跑一阵。


‹ 2021-07-21 日报 2021-07-23 日报 ›

qrcode

关注公众号
接收推送