Xhacker’s Base

2023 年度好物(附价目表)

我所有的引用都是 hallucination。——鲁迅

钱在 2023 年能买来什么快乐(附价目表)

感谢珍大肚老师投稿。

香瓜资本的 2023 投资组合

最近一直在思考 2023 年理想的投资组合。在美国通胀和经济增长放缓的预期下,组合的目标不是追求资产增值而是保持购买力。

Oh My 2021

19、20 年都没有写。一方面世界经历的太多没来得及梳理,另一方面也对之前流水账式的形式不那么感兴趣了。

香瓜资本的投资日记

小时候看我妈炒股,大涨大跌,赚了几倍的利润转年就跌了回去。我问我妈股票、股价到底意味着什么啊。她也说不明白,说大概就是投资者对公司的信心,有人接盘就能涨吧。她这十几年也没赚到钱,给了我一个忠告就是,别炒股。

用 iRig HD 2 玩 Rocksmith 2014

关于 Rocksmith 不多说了,是一个非常好玩的吉他学习软件游戏。可以看李青和杨子江老师在机核的介绍

推敲

我们写了一些东西,怀着满腔的怒火。我们推敲每一个字每一句话,试探着「相关法律法规」的模糊边界。这模糊边界这些年来一直在移动,向着我们不想去的方向。

动次大次流水账

周三年会上我作为「疯狂石榴」乐队鼓手现演了《私奔到月球》。这里记录一下这事是怎么发生的……

非典型义乌流水账

去义乌是初阳推荐的。他说义乌非常有意思,有印度人和中东人聚居、有特别正宗的土耳其餐厅。我对中东菜并没有特殊的偏好,但还是对义乌充满了好奇。这次趁跟水头面基之后在义乌度过了一个周末。

多抓鱼线下店好玩

知道多抓鱼很久了,但从没在上面买过东西。可能因为自己不怎么看纸书了——上次买纸书还是为了获得大蛋袋勉为其难,至今没有看完。

追忆 TextMate 1.5

2009 年 HCC 买了两台 iMac。附带的还有将近一千块钱的两套 TextMate。我不能理解一个文本编辑器怎么这么贵,上网查大家也只是说好用。能好用到哪去?我那时还是开源的信徒,认为 TextMate 也不过类似 Gedit 加了个好看的外皮。

丸尾

把丸尾寄存在宠物医院了。要去日本一周多,丸尾最近又有一些泌尿问题,放在家里或朋友家都不很方便。医生答应每天会喂水和观察,看看一天能尿几次。想起了初一的生物课在潮湿的天气观察鼠妇、写实验报告。初一我特别喜欢生物实验、特别喜欢写实验报告、特别喜欢生物老师,生物老师也特别喜欢我。我转学时生物老师还特意找到我,祝我今后顺利。

在北京看到 18 种颜色的 iMac

距上次去中关村创业博物馆已过去半年。最近得知馆内新增了一个苹果电脑展,今天闲来无事前去参观。

说不难受是假的

本来我应该在美国好几个月了。再不济也应该在美国一周了。再不济也应该在准备去机场的路上了。然而以上都没有发生。

给自己找不自在之用 TeX 排乐谱

最近在学钢琴。作为一个工具癖,琴可以不练好,乐谱一定要好看。找打谱软件的时候,我想到了万能的 TeX。果然有个宏包 MusiXTeX。TeX 打谱效果可能不好,但是难学啊!

《波西米亚狂想曲》——比真实更真‍实

What’s better than 30 多块在杜比影院看了场皇后的演唱会!!—🍉

Sign Painting 从入门到放弃

在看了 SINKS(老赵)的 Instagram 之后我就冲动报名了招牌绘写工作坊。手绘招牌(Sign Painting)在美国是门常见的手艺,用于从咖啡馆到理发店的各种场所。但在中国可以说不存在。连颜料和笔刷都买不到。

肉体性的观影和春节看的几部电影

曾几何时,我看电影都是肉体性的。这是我发明的一个词,是说把自己无保护地暴露给电影、导演、剧情。尊重自己最原始的感官体验,哭、笑、或是电流通过身体的感觉。

我的第一个音乐闯作

今天去了 Today at Apple 的音乐课,全名「音⁠乐⁠实⁠验⁠室⁠:创⁠作⁠节⁠拍 — 携 Swizz Beatz 联⁠合⁠推⁠出」。只有我和一个女士报名,女士听了十分钟就有事离开了。于是变成了一对一小班教学,我和讲师互相吐槽、改曲子。最后叫了三四个店员过来一起听。

Oh My 2018

Summary

半吊子之年。去了 TypeSchool 西文、中文和蒙文课,开了大大小小很多坑——比如学日语 /* 我至少终于用自己的 app 把假名学会了!🤣 */、学德语、看某些拖了好几年的书、学深度学习……一些坑暂停了、一些坑放弃了、一些坑永远不会结。也许我就是希望自己「good at something, 半吊子 at a lot of things, 好奇 about every­thing」吧。

惊喜是在 WWDC 上做了 demo,以及丸尾的到来。猫真的是一种有治愈力量的可爱动物。

GX9 四个月

本文含有一些 JavaScript 元素,请打开原网页以获得最好的浏览体验。

现在看来 GX9 是除 4K60p 以外满足我一切幻想的相机了:
  • 2030 万像素无低通滤镜传感器
  • 机身+镜头双防抖,手持拍视频可用
  • 通过蓝牙自动 geotagging
  • USB 充电
  • Exif 2.31(这说明会往照片里写时区信息么?不确定。)
  • 小、轻
— 🍉 2018年7月12日

贵阳瑞金北路夏记牛肉粉

这是我小时候最爱吃的一家牛肉粉,在我大一点的时候关了。刚刚突然想起来,就上网找,几乎找不到一点信息。就在这里做个纪念吧。麻烦搜索引擎尽快抓一下。

Oh My 2017

Summary

拖延之年。

Creating Apps for a Global Audience

On WWDC stage.

DxO ONE——想法很好,现实残酷

有句话说,「最好的相机是你每天用的那个」。也有人说,iPhone 7 出了就再没用过 5D Mark III。我不认同这句话,我觉得真正好的东西一定不是容易得到的。每个人每天能带的设备,一定只能产出一般般的照片。我也不认同有了 iPhone 7 就能放弃 5D3。单反和手机成像的差距是巨大的——如果感受不出来,大概也不是 5D3 的目标用户。

「用户界面」还是「用户介面」?

「用户介面」(User Interface)是软件和硬件中计算机与用户发生联系的部分。「介面」(Interface)是两个系统的「中介」而不是「边界」。

Oh My 2016

Summary

File a radar!

视网膜图片

之前注意到一个现象,在用「预览」打开 Retina 显示屏上的截图时,截图会以相同的物理尺寸显示。也就是说,一张实际分辨率为 800×600 的 Retina 显示屏上的截图,在 Retina 显示屏上会以 800×600 的物理分辨率显示,图片是完全清晰的。而在 1× 的显示器上,则会以 400×300 的物理分辨率显示。这个行为是非常理想的,因为我们希望图片的物理尺寸保持一致,不希望在 1× 设备上看到一张巨大的截图。

self.join(Apple)

iOS 10 和 macOS Sierra 发布了,我实习时写的代码也开始进入数以亿计的设备。虽然只是一点微小的工作,却籍由 Apple 这个放大器产生了影响。然而,夏天终究短暂,太多想法还未实现。昨天,我正式加入 i18n team,希望继续在文字输入上做点事情。这里的改进,实实在在地影响着 70% 非英语用户的切身体验。

我得给自己买个新相机了

在纠结了很久〈到底买哪代 RX100?〉之后,Svenja 同学最终买了橙色的 GM1。见到真机,我可以负责任地说,橙色的 GM1 是目前最好看的相机。Svenja 回到温哥华后,GM1 被我征用体验了一段时间。

北京和三藩

北京夏天的晚上是穿衬衫的时节,三藩此时还是冬天。
北京王府井大街繁华又整洁,三藩的 Downtown 散发出阵阵臭味。
北京的凌晨是僻静的,三藩天黑了不敢出门。
北京的路都是平的,三藩的路都是斜的。
北京买不起房了,三藩租不起房了。
北京过马路是个艰巨的事,三藩的车都会让人。
北京巨堵,三藩挺堵。
北京地铁上都玩手机,三藩 MUNI 上都玩手机。
三藩的咖啡馆好多人码代码。
北京的空气其实没那么糟。
三藩的 Uber 都是丰田。
北京的饭馆不用给小费。
北京的麦当劳不用收盘子。
北京的红绿灯没有按钮。
三藩有人在街上打鼓。
三藩有很多奇怪的小店。
三藩有五颜六色的小房子。
北京的 Wi-Fi 上不了 Twitter。

LLVM 和 Program Analysis 杂想

之前一直在吐槽 LLVM 后端混乱的架构。比如三万多行的文件、调来调去的各种模块。后来又想想,编译器这种东西的固有复杂度就在那里,也许对于这样一个项目,理想中的的最佳架构也比现在好不上多少。何况如我之前所说 1,在高速发展的今天,一个软件系统停下来修 bug 尚且不能,更别提重构这种没有实质意义的事了。LLVM 圈里的人有足够多的 domain knowledge,可以理清这些头绪。LLVM 外面的人,who cares。

给 Mou 说两句好话

无疑 Mou 是违反了契约,收了钱却没有按时交货。但我觉得也没必要上升到「骗局」的程度。

Oh My 2015

Annotated GitHub Contribution Graph

Summary

丰收之年。结了大大小小很多个坑。

How to Make Window Buttons Look Proper for Dark-Themed Mac Apps

It’s been a while since OS X El Capitan came out. Inboard still doesn’t support Split View. It’s not because we don’t want to. It’s because we are not using the system standard window buttons. Instead, as a dark-themed app, we are using customized window buttons for a better look.

Castro vs. Overcast:设计上的美观与功能上的独特

我最早听播客是用苹果出的 Podcasts,Overcast 推出后就受 Smart Speed 的吸引而换了过去。在 Castro 改为 free + patronage 模式后,有幸体验了一下,感觉 Castro 在设计上更为美观,而 Overcast 在功能上更为独特。我最终还是选择了后者。

3D Touch Peek and Pop 二三事

3D Touch 有一个 Peek and Pop 功能,简单的说就是用力按可以预览即将载入的 view controller,再按下去将其变为全屏。前几天给 Expense 实现了,在这里记录一下。

买什么鼠标?

作为一个偶尔搞搞设(yóu)计(xì)的程序员,有一个好的鼠标是至关重要的。这学期 Svenja 把 Razer Naga 拿走了,我只好又开始了找鼠标之旅。tl;dr: 最终解决方案是 Magic Trackpad 加一个 Razer 的游戏鼠标。

什么时候不要对齐?

在 UI 设计中,一个重要的原则就是保持元素尽量整齐。然而,在有的应用场景我们应该尽可能不对齐。比如一个显示邮件内容和附件的介面,附件放在一个可以横向滑动的 view 里。

XcodeGhost 的警示,为何要使用 App Sandboxing 和 Gatekeeper

XcodeGhost 给我们带来的教训不止是要从正规的地方下载 Xcode,而是要尽可能只使用在 sandbox 中的(Mac App Store 上的应用都在 sandbox 里)应用。再不济也切记不要关闭 Gatekeeper。

Node.js、V8、webOS 和 WebKit 的故事

/* 这篇文章于一年多前写就,我也忘了是为什么写的了。没有什么主题,就是像讲故事一样随便聊聊 Node.js、V8、webOS 和 WebKit。*/

到底买哪代 RX100?

Svenja 同学这学期去三藩实习了,让我推荐一款相机。我第一反应是大法的黑卡(RX100),但 RX100 发展至今已有四代实在难以选择,故列此表以供参考。

拟物未死,只是设计潮流变了

在 iOS 7 中,苹果其实没有杀掉拟物,只是杀掉了大量使用阴影、材质的设计风格。这种风格是拟物的直接体现,却不是拟物一定要有的。

使用 NSDateComponentsFormatter 显示相对时间

tl;dr: 如果你想把「66233」转换为「About 18h 24m remaining」,使用 NSDateComponentsFormatter

如果有机会我想去这些公司玩玩

Quark Shell:用 HTML + JS 编写 Mac Menubar App

Quark Shell 可以让你用 HTML 和 JavaScript 编写 Mac menubar app,有点像 Electron(原 Atom Shell)和 MacGap,但专注于 menubar app。

Steamclock

礼拜二正在码编译器的时候,突然收到 Allen Pike 的邮件,「we’d like to invite you to do an internship here at Steamclock」,终于。在被无数大的小的中的公司无情拒绝之后,居然能加入 Steamclock,也算是不枉了。

精工细作

我是一个很喜欢 feedback 的人。报 bug 这些年下来,最大的收获是明白了「没有人鸟你」。无论操作系统还是 app、无论商业还是开源、无论大公司还是小公司,报 bug 基本是徒劳的。我曾经非常沮丧。但当我成为了一个开发者,我开始理解——毕竟人的精力是有限的。公司为了发展,不可能真的停下脚步提高软件的质量 1。无论是 Chrome 还是 OS X,我都目睹了软件质量随着功能增多而下降。也许这就是混乱的现实世界吧 2

  1. 不禁感叹 Snow Leopard 的伟大。 ↩︎

  2. 作为一个开发者,我又比普通用户幸福很多。如果 app 是开源的,便可以去改掉自己不喜欢的部分。就算作者不 merge,起码可以自己用。所以我一直觉得,能开源就开源吧。如果没有真正的技术壁垒,开源不会造成什么损失。相反,开源可以让有需要的人修改、让新手学习,这些都是巨大的好处。 ↩︎

Oh My 2014

Summary

First year in Vancouver.

键盘和屏幕尺寸

我对更大的屏幕本身没有什么渴求,只是希望更大的屏幕能带来更好的键盘。

IM 吐槽大会

做一个合格的 IM 并不难:

  1. 稳定快速的收发(包括文本、图片、文件)。
  2. 多平台原生客户端。别自作聪明,要符合目标平台的习惯 1
  3. 聊天记录同步。

志愿荒废了

去年志愿没用起来。今年我很早就开始做准备,把 Django 从 1.3 升级到了 1.6,联系刘子渊、联系陶泽平。

关于 HDMI 线和版本的误区

看了 V2EX 和上很多关于显示器的讨论,大家似乎对 HDMI 线和版本有一些认识上的错误。事实上,HDMI 线材是和版本无关的。比如,一根所谓的 HDMI 1.1 线,是可以用于 HDMI 1.4 版本的。线是橡胶包着铜的物理结构,版本是用于两边设备交互的。

Halo Word 0.6

拖了将近三周,我终于把 Halo Word 修好了。其实 3 月 6 日就收到了第一封反馈邮件,发现 Google Dictionary API 不能用了。但我迟迟没有决定该换成什么 API,也不想面对之前写的 JavaScript 代码,就一直拖着。

《黑客与画家》

这本书刚出来的时候就想看,然后从闫铮那借来一本,最后也没看。说来惭愧,我的「2013 必须读完」一本也没有看掉。于是我开始填坑了。

[ANN] 我的新 Blog

有时候,也没有什么动机,总是想折腾折腾。于是我用 Jekyll + GitHub Pages 建立了我的新 blog,并自己写了个很简单的主题(也就比纯文本好看一点点吧)。目前这个 blog 将不再更新。再见,WordPress……

Oh My 2013

Summary

Objective-Year.

CA991 ✈︎ Vancouver

现在正飞越佳木斯上空,预计 9 小时后到达温哥华。趁这个机会启用我的新 blog 吧。:)

如果程序员也是设计师

优势很明显:避免沟通成本。不需要相互理解。

最近意识到缺陷。

Oh My 2012

Summary

我最了解自己的一年。

わたし

わたしは柳です。わたしは中国人です。わたしは19歳です。わたしはせっこう大学の1年生です。

樱花

我拿着相机在校园里闲逛。

Summary of 2011

Centro 丢了

Centro 诡异地从裤子口袋中消失。到昨天中午,一直处于无人接听态。也就是说……还在某个地方安静地躺着。昨天下午放弃寻找,补卡、启用我爸的 Treo 650。

有意义

我的中学阶段这样就快要结束了。过去的 5 年 7 个月零 25 天占去人生的 31.79%,占用了 80% 的脑细胞。虽然……很多时间没有抓住。很多事情荒废。不过我很满意,并常常惊叹自己的这六年——在生命中唯一且不可复制——美好而有价值。