Category Archives: Uncategorized

后院 – 蔬菜、花与树

每年都会在后院种一些东西,简单记录一下供自己和朋友参考。下面是2021年的

7/2021
种了几年桃树,今年好不容易有了点小收成,虽然数量只有个位数但每个都比较大。西雅图桃树不太好种,维护成本比其它果树高,需要施肥、剪枝和对付病虫害。

樱桃在西雅图也可以种,虽然由于气候原因长得没有Yakima的好,但好处是新鲜,没打药。

西葫芦Zucchini丰收 – 邻居给的苗,第一次种,没想到长这么好

黄玫瑰

西雅图抢房

2021年西雅图地区房市火爆程度在全美位居前列,好的房子抢破头,为了拿到房子,买家通常会waive很多东西并且增加一些对卖家有利的内容,这里简单介绍一下算是科普(申明:不构成legal advice不承担任何责任).

  1. Inspection Contingency (NWMLS Form 35)
    能做inspection的情况最好是做。如果卖家提供了inspection report,或者自己请人做了pre-inspection,觉得没大问题可以waive。新房有warranty以及county会有一些inspections,一般也可以考虑waive
  2. Financing Contingency (NWMLS Form 22A)
    waive后仍然可以贷款。这一条如果waive但贷款贷不下来的话,会损失Earnest Money,没有lender会保证贷款能够通过,所以要看概率,因为0.1%不通过的概率而错失dream house会很可惜
  3. Waiver of Low Appraisal Protection (NWMLS Form 22A or 22AA)
    银行/lender会做appraisal,出高价抢房容易出现估值有比买价低的情况,这个时候不waive这一条的话是可以跟卖家讨价还价的,否则只能多出首付把差价填上
  4. Title Contingency (NWMLS Form 22T)
    产权一般没问题,但也要仔细看看title policy。很多时候这一条也waive了
  5. Information Verification Period Contingency (Form 21, 25 or 28, General Term (w))
    就是用来核实卖家或listing firm提供的信息,如果有materially inaccurate information可以全身退出,譬如说房间数不对等等。这一条在下offer前就可以做,一般都waive了
  6. Seller Disclosure Statement (NWMLS Form 17)
    卖家的disclosure,正常情况对里面内容不满意可以全身退出,现在一般也waive了
  7. Conversion of Earnest Money to Nonrefundable Deposit
    这一条就是在Mutual后直接把earnest money给卖家,不管最后能不能成交
  8. Homeowners Association Review Period (NWMLS Form 22D, Paragraph 8)
    如果小区有HOA,可以review HOA的各种条款,不满意可以退出,但这一条一般也waive了

有时还有一些其它条款,譬如说close后免费给卖家住一段时间等。现在是卖方市场,对买家很不友好,最后能拿到好房子的offer都很aggressive.

美国政治 – Stop Asian Hate

华人在美国目前面临一个重大问题,那就是对亚裔的仇恨,这跟很多因素有关,有历史原因,更近期的原因包括地缘政治、COVID-19和大嘴川普把危机变大而不变小的能力,这里并不是说民主党/拜登就能解决问题。亚裔仇恨会是一个长期并影响几代人的问题。讨论、集会等很重要,更重要的是行动!

  • 身份确认:只要你在美国,长着亚裔的脸,你就是亚裔美国人,跟你有没有绿卡是不是公民没有关系,跟你是华人还是韩国人没关系,跟你英文如何没关系,跟你在哪出生没关系,要从外界的角度看问题。既然来了美国这个移民国家,你就是这里的主人,这一点一定要想清楚。不要想着回某个地方的退路,对99%以上的人来说没有退路。如果能够入籍,尽量入籍。
  • 武装起来:亚裔需要大规模或者全民“武装”,所有成年人包括老年人和大一些的小孩外出一定要带pepper spary / bear spray,或者带枪,如果不知道怎么买枪用枪,在Youtube上看看视频学习一下,不难。多买几瓶pepper spray,要练习,练习不是浪费。买枪后一定要去靶场练习,多买子弹练习,我一般每次买1000发。事先想清楚,碰到危险怎么做。我外出随身带pepper spray和枪,并且想清楚了一旦有重大危险,立马开枪,一开就会让对方永远没有说话的机会,脑海里多次模拟过,靶场也练习过。保护好自己和家人,才能保护别人。当然万一有意外,没有办法,不这样做出意外的概率更大。从宇宙的角度来看,一个人只是一粒尘埃。
    Handgun
Murdoch's – SIG SAUER - P229 Legion 9mm Pistol

Pepper Spray

Bear spray

  • 团结华人、亚裔和其它族裔的人,从自己的社区开始,用各种社交软件找到社区,参与社区,定期参加活动,最好是能露脸的活动,不要等着别人来主动联系你,不管你是大伽还是默默无闻。要么自己建立和组织社区,要么加入已有社区,不需要志同道合,只需要有最基本的认同即可。避免只生活在华人圏,避免只看中文信息,避免只用一种社交软件。如果你是某个社区/组织的负责人之一,放开胸怀,跟其它组织合作,求同存异,一起壮大。
  • 提高在美国社会的影响力,在职场、商场、政治、文化等各个领域。

房子 – 厨房sink堵塞问题之终极篇

厨房sink堵塞在美国并不少见,郁闷的时候你会因为这个问题考虑换房。先说解决方案,再说预防。这些信息来自多年一手经验+很多朋友的分享,这篇文章的目标是终极篇,如果有你碰到的情况没有被cover,麻烦告诉我

解决

很多时候堵塞是油脂积累,相对容易一些,不少情况下用化学品(如drano)+热水 或 只用热水可以搞定,可以反复试几次,也可以试试plunger,但如果用了化学品用plunger时得小心,因为容易溅出来。如果不行,拆开下面p-strap清理看能不能解决。如果还不行,用手动蛇或t租电动蛇(譬如RIDGID K-400这一款),最好带sewer gloves/ugly gloves(至少带手套),手动蛇因为没有动力可能走不远。用snake前,建议用wet/dry vaccum把sink里的水吸走,然后拆开管道时慢慢拧开,用一个桶接住,同时准备毛巾吸溅出来的水,没有经验的话场面会比较喜人。

如果不是油脂堵塞,而是starchy food (面粉、米饭、土豆等),化学品和热水可能没多大用,基本上要靠蛇。

不少情况情况可以DIY,但需要请人时不要犹豫,这个比换房便宜很多:-)。plumber工具好而且有经验,既快也好。有些专门做水的华人师傅也能解决大部分问题,跟普通老美plumber差不多。但如果有很难解决的问题,建议找专业的公司,有的公司既快(譬如说2小时内到)也能解决复杂问题,但会比较贵。另外,有些情况要去crawl space疏通,特别是厨房与厕所一起堵上的话。家里的管道宽度一般是2 inch,到下面是3 inch。

问题:能用开水灌sink么?这里有一篇比较深入的技术讨论https://diy.stackexchange.com/questions/88476/should-i-run-the-tap-while-dumping-boiling-water。 我个人经验是只要不是大量持续灌没问题,但每个人情况可能不一样

预防

  1. 切记不要扔starchy food (面粉类、米饭、土豆等)
  2. 很油脂的东西不要扔,盘子上有很多油脂用paper towel先擦掉
  3. 买一个小点的桶套上绿色回收垃圾袋(costco有卖),专门放厨余,之后放yard waste。这一条非常推荐,否则放垃圾桶会导致垃圾桶很臭
  4. Garbage disposal: 建议少用,甚至可以当做不存在。强烈推荐买kitchen sink strainer放在garbage disposal口上 (譬如https://www.amazon.com/gp/product/B01CWXLMB8)

P.S.

Kitchen Sink Strainer

Compostable bags at Costco

手动蛇

小电动蛇

大电动蛇,下面是RIDGID K-400,Home Depot可以租另一款

关于cooking oil
http://www.seattle.gov/utilities/protecting-our-environment/sustainability-tips/fats-oils-and-grease-(fog)

贷款 – 找银行做贷款

Jumbo loans找银行可能能够拿到不错的利率,conforming loans找银行得非常注意,体验好的肯定有,我在这里分享一些我知道的情况。另外绝大部分情况银行的利率比不上mortgage brokers,除了jumbo loans.

Chase

一位朋友结婚前买的房子,结婚后refinance,说了把配偶加到Title里,结果没加。还好第2次在我这里做refinance发现并纠正了。

另一位微软朋友,很简单的w-2, primary house refinance,花了3个月还没做完,催也没用,然后他就转到我这边很快做完了贷款

First Tech

一位朋友买房找的first tech,做refinance时银行说让在网上拿报价,但网上报价不清楚没人解释。找一个能报价并解释的人就这么难。

贷款 – wire transfer

Wire transfer在网上很容易做,但第一次做可能不觉得容易。这里简单介绍一下,每家银行都不一样,但大同小异。有些网上银行(e.g. discover bank)需要打电话才能做wire transfer,有个别银行甚至不提供wire transfer

  1. 拿到escrow company发的wire instructions / wire information,注意发件人以免fraud
  2. 在贷款申请时提交过statements的银行网站上点Wire Transfer / Wire Money -> Add a recipient,有的银行要验证码
  3. 填写相关信息:
    • Routing Number, Account Number, Recipient Name
    • 如果需要地址,填escrow company地址,在文档右上角
    • 如果需要Account Type,填Checking
    • Message to recipient 和 Message to recipient bank 填 Escrow No.,这个用来定位一笔wire transfer属于哪个客户
    • 具体金额,escrow company会发邮件告诉你
  4. 提交完成。Wire transfer一般当天或者下一个business day就可以到。做完后不需要跟escrow company确认是否收到。

贷款 – 要闻及利率变化

3/14/2021 Sun
FHFA(Federal Housing Finance Agency 负责监管Fannie Mae与Freddie Mac)于3/10宣布从4/1起,投资房和second home的贷款不能超过他们购买贷款总额的7%,这对投资房贷款来说是巨大的利空,意味着利率会大幅增加,对用贷款买投资房市有很大的抑制作用。过去几年来,投资房与second home的贷款比例在13-14%左右。
http://www.mortgagenewsdaily.com/channels/community/969950.aspx

2/26/2021 Thurs
今天Mortgage Bonds被大量抛售,最后跌了117bp。10年期国债收盘1.515,最高1.614。利率又涨了一些。股市也有一些恐慌性抛售,纳指跌3.56%。

2/22/2021
Mortgage Bonds今天跌了44bp,贷款利率再次上涨。10年期国债涨了2bp到1.367。 Fed Chair Jerome Powell 明天会发言。

2/16/2021
昨天是Presidents’ day长周末,周末还给几位朋友发了quotes,利率很不错,打算今天lender一上班就锁定。结果一大早就收到利率变差很多的短信和邮件。利率跌的程度可以跟股市道指暴跌5%-10%相比,下面有UMBS(Uniform Mortgage Backed Securities)曲线图。给两个具体的例子(为了简化特意省略了其它参数)。同一个lender,一位$660k贷款(非jumbo loan)的朋友,上周五2.75% no cost,今天要近$5000的cost。另一位$950k贷款(jumbo loan)的朋友,上周五是2.75%,今天3.25%,说明一下,jumbo loan有点特殊,别的lender不一定有这么大的变化幅度。

这种情况过去出现过几次,但没有这次跌幅这么大。利率很难预测,目前只能等等看利率能不能变好一些。之前锁定的利率不受影响。

UMBS 30yr 2.0%

与此同时,10年期国债收益率上涨了不少

道指DJI今天创新高31,522.75

12/11/2020
好消息。conforming loan limit已经从2020年的$510,400涨到2021年$548,250,high balance loan limit从$741,750涨到$776,250 (King, Snohomish and Pierce)。这意味着一部分high balance loan成为conforming loan,一部分jumbo loan成为high balance loan,利率可能会更好。不少lender本周末开始接受新的贷款额度。过去几个月一些朋友不得不多还款来争取更好的利率,现在可能不用了

Repurposing my blog

My original idea was to make this a purely technical blog. When I was working on building the core infrastructure in Azure I thought that I could write something about how it was built. However I couldn’t write much because most of the time I was working on confidential projects. Cloud computing is a very competitive area as you may know. The 2nd reason is that there is already so much useful info on technologies and I wouldn’t be able to provide the best value by focusing on only technical stuff.

Anyway I have decided to write whatever I think can provide more value. The audience is people in the United States. I will write in Chinese most of the time since there is less info in Chinese. The main focus will be IT and Real Estate.

Solving CORS issue became easy

// If you don’t have time just jump to the last section – takeaway. If you do that solving CORS issue will be easy.

CORS stands for cross origin resource sharing. Let me use a simple example to explain the basics.
Say that you have a web site http://foo.com and it has a client side javascript which uses AJAX to call http://bar.com to get some info. That is a CORS request. To make the request successfully the server needs some change to allow CORS requests.

What is considered cross origin? Use http://foo.com as an example the below urls are considered as different origins.
Https://foo.com (different scheme)
Https://foo.com:8080 (different port)
Https://api.foo.com (different subdomain)
Https://bar.com (different domain)

In some cases a complaint browser may send a preflight request before it allows the request to be sent. Let me use a real case to explain.
Scenario: Client side uses token authentication to get info from server side

1. The client side javascript sends a POST request to https://localhost:44300/Account with token (basically http header “Authorizattion”:”Bearer aAbdkkixlkid…”)

2. The browser determines a preflight request is needed and it sends preflight request
3. The server has to respond with status code 2XX AND with required headers. In this case Access-Control-Allow-Origin cannot be *. Access-Control-Allow-Headers has to contain Authorization.
4. The browser then sends the actual request.

preflight request

actual_request

Actual request

preflight_request

Takeaway

I spent a lot of time solving my particular case and read tens of links. In the end it I found that it could be much simpler and quicker if I knew the below two things.
1. Read just one link https://msdn.microsoft.com/en-us/magazine/dn532203.aspx
2. Do check the console message when useing developer tools in browser. I didn’t check the console message. Otherwise it could have saved me a lot of time. The below is a screenshot from Chrome. It tells exactly what went wrong. It makes trouble shooting much easier.

chrome_console

Big Bonus if you are using ASP.NET Web API

Web API presents a unique challenge that the “/Token” service is different from the normal Web API controllers and the nuget cors package only works for web API. Some people suggest adding the below in web.config. It will work for “/Token” service but NOT web api especially when you are using https. The chrome browser does not allow “*” in Access-Control-Allow-Origin.

<add name=”Access-Control-Allow-Origin” value=”*” />

The solution is adding the below code at the top in IdentityConfig.cs.

if (string.Equals(context.Request.Uri.PathAndQuery, “/Token”, StringComparison.OrdinalIgnoreCase))
{
context.Response.Headers.Add(“Access-Control-Allow-Origin”, new[] { “http://foobar.com” });
}