My Coding Environment Setups - MacOS

MacOS

General

Appearance: Dark
Show scroll bars: Always
Click in the scroll bar to: Jump to the spot that’s clicked

I always love the Dark theme. As for the scroll bar settings, it is nice to hide them, but it makes it much harder to locate and click on the scroll bar.

Trackpad

Point & Click
Tap to click: On
Click: Light

I try to spend less effort for any operations.

More Gestures
Swipe between pages: Off

To disable this feature is that I need to scroll horizontally when browsing the magnified contents. I do not want to get to the previous page accidentally.

Accessibility

Display -> Pointer
Pointer size: Medium

I would like to locate my pointer immediately.

Pointer Control -> Mouse & Trackpad -> Trackpad Options…
Enable dragging: three finger drag

As always, I don’t want to press down the trackpad :).

Sound

Sound Effects
Play sound on startup: Off
Play user interface sound effeects: Off

Please do not frighten a code in any circumstances.

Dock & Menu Bar

Position on screen: Left
Show recent applications in Dock: Off

I used to put the dock at the bottom of the screen, but now I am used to put it at the left.

Displays

Scaled: More Space

It is a good screen. Just display as more information as it could.

Mission Control

Automatically rearrange Spaces based on most recent use: Off

This will prevent system from rearranging different desktops that you have memorized in your mind.

Keyboard

Keyboard
Key Repeat: Fast
Delay Until Repeat: Short

Save one second a time.

Text
Correct spelling automatically: Off
Capitalize words automatically: Off
Add period with double-space: Off

I know what I am typing. Thanks though.

Shortcuts

I tend to disable as much shortcuts as possible. I admit that I have limited space in my head to memorize everything.

Takeaways from Building a Static Website on AWS

With the migration of the website from Azure to AWS, a new infrastructure that is dramatically different is to be set up.

This exmaple is great for setting up a static website on AWS that supports HTTPS. The reason of having such a complicated system to host a static website is mostly due to the fact that S3 does not support HTTPS.

Other than that, there are still some extra things needed to be taken care of when integrating with Hexo.

  1. In the Lambda function, URL needs to be rewritten to append ‘index.html’ for all folder paths.
  2. When uploading files to S3, the System defined Metadata ‘Content-Type’ needs to be set to according to the file extension.

Overall, the experience of setting up a static website in the storage blob that supports HTTPS on both AWS and Azure are both non-trival. Whil I do like the resource group concept in Azure for managing multiple resources, AWS does provide more documentations and third party supports for various purposes.

热烈祝贺空叉星舰SN15飞行任务圆满成功

上一次SN11试飞在三月25日,爆炸声中,星舰化为灰烬,一同付之一炬的还有我那一场投身航天事业的一场大梦。

After careful considerations, I’m afraid that the team has made the decision not to move forward with your candidacy. They feel they have other candidates with more directly applicable experience to address their current needs.

那天,傍晚邮件提示音的响起,最后一封来自@spacex.com的邮件为一个半月的SpaceX面试之路画上句号。

2021新年刚过,手中又拿到了进入敏感行业(ITAR)的最基本的通行证,我决定去试试自己的生活和事业是否能与太空和宇宙产生交叠。无论是看发射现场直播,还是事后的大红瓶,或是各式各样新闻,甚至是三体、云图这样的故事——我相信人类必定走得更远。

做了些功课,西雅图有越来越多的航空航天公司在此落脚——马一龙的空叉和贝佐斯的蓝色起源在这里都设有办公室,其余的还有些各式各样做卫星,做雷达,做传感器的小公司。作为一个码农,我“深知”哪里都少不了一个程序员,于是便去这些公司的网站的招聘页面试试水。果然,与我想的完全相反,几乎没有几家小公司对程序员有兴趣,招募的基本都是射频,无线,卫星等我的老本(科)行。真正有软件工程师职位的也就是SpaceX和Blue Origin这样的“大厂”了。快速浏览了一下,大部分职位还都与卫星挂钩——给卫星编程,需要有在类似卫星这样的硬件平台上搭建软件的经验。捂脸。SpaceX的大本营不在这,不过星链的大部队却在这。七七八八一排除,没想到还真剩下俩仨个看似靠谱的job description,于是精心修改了几份简历,欲投其所好。其中Blue Origin投的似乎是一个开发硬件测试环境的岗位,而SpaceX则投了一个Starlink做CI/CD的,以及一个做Starlink Network的岗位。回想一下过去在AWS和Azure的经历,无论是Network还是Kubernetes都还算挺合适。

一月份的我还是很清醒的——中美关系急转直下的尘埃正压在我身上,不出一周Blue Origin的拒信就收到了——Thank you for your interest。:)之后也没再收到新的消息。直到一个月后。

没想到SpaceX的HR竟然向我伸出了橄榄枝。那个时候我猛地一惊,简短的聊了一下之后我便顺利拿到了第一轮电话面试。根据HR的说法,这轮面试应该是一轮技术面试,我两手一摊知道没啥面经可寻,想着看招拆招,可没想到整轮面试竟然完全是行为面试。当时的我还完全没开始准备行为面试,根本不知道前东家的STAR必胜法宝,就这样瞎扯了一小时。提心吊胆的过了几天以后竟然得到了HR的Good news。与之而来的却是另一个Big Test。

我被要求在48小时内写一个程序,给定输入与输出。HR邮件中说,这个任务一般需要4-6小时,拿到题目后你有一个半小时的时间可以问问题。我琢磨——给定输入与输出写程序,这不就是ACM嘛。紧接着我便度过了让我记忆犹新的2021年二月的最后两天。

一份pdf收到,果然和Starlink有关,虽说给定了输入,输出却没有一个标准答案。记得那个周五可下了一场好雪,周六一定是个粉雪天。我决定给自己点压力,通个宵——如果进度不错差不多搞定,周六就去爽一把,不然就乖乖在家为梦想流泪。/* NDA */ 还记得大概用了两三个小时在网上各种寻找题目背景来理解题目,又花了一个小时搭建了一个程序框架,最后写完全部算法的时候已经天亮了。当时做完题像是回到了学生时代,通宵写程序然后提交到一个在线终端看到程序跑通以后打印出来四个大大的等宽字母PASS,那种激动。于是直接起床带上装备出发雪场!

当天的粉雪果然值得!PNW的西雅图和水晶山竟然滑出了干粉的感觉。全天题目抛之脑后,晚上又有火锅下肚,人间值得。周日一大早起来,决定花费剩下的八个小时做一些收尾工作——写注释,写测试,写文档。一个小小程序被扩展成生产环境预备的小项目。晚上提交后,自信满满迎接三月。

两天后果然迎来了下一个Good news。也又一次迎来另一个surprise。我要在招人的这个组全组面前做一个presentation,介绍我之前写的这个程序——如何解决这个问题,为什么我认为我的解决办法足够好,以及哪些进步空间。之后还有一轮白板编程(终于)以及一轮和Hiring Manager的聊天。在微软,大家常常就是对着Wiki或者一份Word文档做演讲,现在又要我重拾PPT技术,难!好在之前程序写了不少内容,也做了挺多的探索,PPT的框架很快就建好了。不过还是敌不过紧张,面试前一天晚上辗转反侧不能寐,最后还是决定写一份演讲稿,一写就写了3000字——半小时的演讲,大致每分钟100个词。

当天,我早早准备好视频会议,加入房间。没想到除了我之外竟然没有一个人打开摄像头——果然是我一个人的表演。为了掩饰尴尬,我迅速打开PPT,开始present,并关掉我的摄像头……演讲在所有人都mute的蜜汁安静的情况下进行。半小时后,大家陆陆续续开始提问题,好在问题并不刁钻,我也“见招拆招”。之后的两轮面试相较于之前的面试经历就正常多了,虽然面试官也都不开摄像头(整个公司显得极端神秘),题目虽然从未见过但也不算出格。与老板的谈话主要还是介绍组里情况,项目进展。谈得最多的词还是technical debt,小公司成长不易。一个下午下来,感觉像是结束了一场野雪trip,累。

接下来的时间开始了真正的煎熬。我对我的面试表现虽然充满自信,却完全捉摸不透对方的反应。看不到脸也无从捉摸表情。当时我在blind上面已经了解到了SpaceX的“臭名昭著”的WLB还有与微软不相上下的低薪,但是我意已决——爱是不需要理由的。之前和朋友提过一个理论:爱+工资=常数。现在的爱无穷大,谁还关心余项呢。一周后,HR打来了电话。Congratulations! 这样的开头简直让我的心狂跳。万万没想到竟然还有一轮——Mark Juncosa。这感觉像是“通天河遇鼋湿经书”。HR言辞凿凿,这一轮就是一个聊天,了解一下公司文化,你也展现一下你的爱和承诺。

于是又过了一周,我接通了这通来自德州的电话。在挂电话前,我问出了我的最大的的疑问——你觉得离人类登上火星还有多久?

电话结束以后我久久意难平。没想到这意难平竟然难了整整两周,直到最后SN11的爆炸。

现在SN15成功,我意也已平。所以还是要献上最大祝福,希望Mark不打诳语——2030年前在火星留下人类的脚印。