【精】 学历史有什么用

之前在朋友圈发我学中亚地区历史的时候,碰到朋友问的最多的问题就是这个了:学历史有什么用。
凡是在朋友圈问我这个问题的,我基本上都是一句话:互联网没有增量了,多学点历史没坏处的。因为手机上解释的多了,我打字累,再加上别人也不一定愿意听,可能纯粹就是随便问一句。

为 TheRouter 的 AGP8 编译加个速

文章围绕 TheRouter 的 AGP8 编译提速展开,指出 toTransform()方法编译慢且无法增量编译,提出多种解决思路,包括结合 AsmClassVisitorFactory 等,最终通过 toGet()方法、内存缓存及对比等优化,实现增量编译和保障产物结果。

NAS - 玩点有意思的

最近新买了一个NAS,装个黑群晖,感觉可玩的还挺多。

动态路由 TheRouter 的设计与实践

这篇文章是我在 2022【GIAC 全球互联网架构大会】分享时所讲内容的文字版本,修改删减了演讲时的冗余言语,现开放给大家阅读,希望能给买不到票参加分享的 开源实验室 读者带来帮助。

没错,TheRouter 是我写的

路由是现如今移动端开发中必不可少的功能,尤其是企业级APP,可以用于将Intent页面跳转的强依赖关系解耦,同时减少跨团队开发的互相依赖问题。
TheRouter 是一整套完全面向模块化开发的解决方案,不仅能支持常规的模块依赖解耦、页面跳转,同时提供了模块化过程中常见问题的解决办法。

货拉拉 Android 模块化路由框架:TheRouter

路由是现如今移动端开发中必不可少的功能,尤其是企业级APP,可以用于将Intent页面跳转的强依赖关系解耦,同时减少跨团队开发的互相依赖问题。
TheRouter 是一整套完全面向模块化开发的解决方案,不仅能支持常规的模块依赖解耦、页面跳转,同时提供了模块化过程中常见问题的解决办法。

某一天,中国真会超过美国吗?

最近一直在苦苦思考这个问题:会不会我们所说的某一天,永远都不会到来?

基于 C++ 的 Android 协程设计

在Android 上,Kotlin 用灵活的语法封装出语言层面的协程(coroutine)新颖地解决了异步编程编码复杂的问题。本次分享将带领听众从一个小例子开始,更加深入,自顶向下的理解协程是什么,协程的本质与工作机制,动手设计出一个真正运行时的协程库

Gradle 6.X 上传 aar 到 Nexus 私服

昨天把 gradle 升级到 6.0 以后,发现这傻逼的 google 又直接干 API,以前上报的全部脚本都没法用了。我们原先上报一个 aar,是直接引入。

自定义C/C++日志输出函数

在繁杂的项目中,日志打印必不可少。但是编写打印的工作,有时候是无趣的、繁琐的、浪费精力的。
如何能够快速、方便的编写打印;如何清晰、准确的定位;如何简单并优雅的实现;最后才能让我们摆脱这样枯燥的、重复的工作?
网上有很多强大的日志类工具,我也都使用过一些,有时候也并没有理想中的方便。今天我想分享给大家的一套我自己的解决方案。

扁平化管理,就是管理者的失职

奉劝大家一句:千万不要想不开跑去小公司,尤其是在大厂已经做到高P的,即便小公司给你的许诺更好。因为在小公司呆久了你会发现只可能有两种变化,要么脾气会变的越来越暴躁,要么整个人变得越来越佛系。

再聊 Git Flow

最近定了一些团队标准的东西,刚好聊到了 Git Flow 这个事,可以拿出来分享一下。

Flutter 设置控件是否可见

共有两种实现比较简单的方式。 第一种比较好理解,将一个控件的透明度设置成0,打到隐藏的目的。第二种办法是使用 SDK 自带的 Offstage 控件包裹。

Flutter 线性布局:Column 和 Row

Flutter 线性布局:Column 和 Row 的常用属性

开源一段 Mac 批量压缩图片的脚本

开源一个批量压缩图片的脚本,支持文件夹递归,可选质量压缩和宽高比压缩,可选设置最大宽高和大小,纯shell脚本实现。

Leader 的自我修养——学会预测

用一句话概括,本文讲的就是:怎样通过自己的专业深度,帮助公司和团队预测未来。
很多时候,之所以能够做到预测未来,无非是你掌握的信息比别人要多而已。

玩玩区块链——概念

继我成功预言了 Kotlin 、Flutter 技术会火起来之后,我相信,下一个会火起来的技术是区块链。
1. 别抬杠,我 14 年开始玩 Kotlin,16 年开始玩 Flutter (虽然看了看实现原理觉得没啥屁用就放弃了)的时候,可能你还不知道这俩名词呢。
2. 别抬杠,我说的火起来的区块链技术是私链+合约(我不想提那俩字,我觉得智障更合适)。
3. 抬杠吧,反正我从来没玩过数字货币,我也不怕被割韭菜。

一条电商 Android 工程化实践

这篇文章是我在 2019【极光开发者大会】技术分享时所讲内容的文字版本,修改删减了演讲时的冗余言语,现免费开放给大家阅读, 希望能给买不到票参加大会的开源实验室读者带来帮助。

最新版提升 Android 应用编译速度的方法

应用的构建速度会直接影响开发效率,本文将带您通过改造一个 Android 应用: “Google 追踪圣诞老人 (Google Santa Tracker)” 来为大家提供十个小技巧,帮助提升应用的 Gradle 构建速度,当我们应用了所有的小技巧之后,该演示应用的构建速度快了三倍以上。

Beta 6 现已发布,Android Q 正式版即将面世!

再过几周,Android Q 正式版就要与大家见面啦!目前,Android 团队正在对平台进行最后的优化与调试。同时今天向各位开发者发布最后一个 Beta 测试版: Android Q Beta 6。

GitHub 开始阻止被制裁国的开发者使用

上周五,国外新闻网站 ZDNet 发表了一篇报道 GitHub与跟世界贸易摩擦国的程序员关系的文章 —— GitHub starts blocking developers in countries facing US trade sanctions(GitHub 开始阻止被制裁国的开发者使用)。

中国的开源项目正在破坏 GitHub 榜单页

近日一名国外开发者(Balazs Saros,下简称 Balazs)在个人博客发表了一篇看似是在声讨中国开发者的文章,标题起得有点唬人 —— Chinese repos are ruining the Github trending page(中国的开源项目正在破坏 GitHub 榜单页)。

Leader 的自我修养 —— Tech 与 Team

用一句话概括,本文讲的就是:怎样打造一个开发团队。

Facebook Libra,数字货币离我们很近吗?

Libra的使命是建立一个简单的全球货币和金融基础设施,为数十亿人提供支持。
互联网和移动宽带的出现使全球数十亿人能够获得世界的知识和信息,高保真通信以及各种低成本,更便捷的服务。这些服务现在可以使用来自世界上几乎任何地方的40美元智能手机进行访问.1这种连接通过让更多人能够访问金融生态系统来推动经济赋权。通过合作,技术公司和金融机构也找到了有助于提高全球经济能力的解决方案。尽管取得了这一进展,但仍有大量世界人口落后 - 全球仍有17亿成年人不在金融体系之内,无法使用传统银行,即使10亿人拥有移动电话,近5亿人拥有互联网接入。

如何在 Android 代码中下毒

这其实是前几天看到 B 站代码被开源后的一个感想,为什么要冒这么大风险去做这事,活着不好吗?到底是 996 让你疯狂?还是不给涨薪还克扣工资?或者黑了你的蔡徐坤?鬼知道为什么会有这想法。 然后脑子里就冒出了一个更奇怪的想法,如果我要在代码里下毒,要怎么做?