狂人山庄 Madman Hills

A flying idealist

美国手机号,为什么我推荐 Tello 而不是紫卡
tello

美国手机号,为什么我推荐 Tello 而不是紫卡

Ultra Mobile 的紫卡 PayGo 套餐,$3 美元一个月,支持 WiFi Calling,大陆 FQ 后可以通过 Wifi Calling 收发短信和接打电话,这成了紫卡的最大卖点,也让大量有美国沟通需求(注册网站、收验证码)的独立开发者们趋之若鹜。 但是,紫卡使用上也有很多不便,比如价格被炒得天高,比如不能直接激活 eSim 而是需要先激活实体卡,比如不 FQ 的时候无法使用 Wifi Calling,比如使用不支持 WiFi Calling 的手机(比如非 iPhone)会产生天价话费,比如在没有 2G/3G 基站并且没 WiFi Calling 的地方无法接打电话,比如号码激活后无法转入(port in)转出(
3 min read
BOI

如何做BOI申报

BOI,全称是Beneficial Ownership Information,中文是『受益所有权信息』,也就是披露一家美国公司到底是被谁控制和受益的,谁是最终的受益人和控制人。这是2021年以后美国新颁布的《公司透明度法案》所要求的。所有美国的企业,除了获得豁免的(比如上司公司、非营利组织),不管是新开的公司,还是之前的老公司,都需要向FinCEN(美国财政部的金融犯罪执法网络)申报。 如果你的美国公司(不管LLC还是INC),是在2024年1月1日以前注册的,那么要在2025年1月1日之前申报。如果是2024年新注册的,那么是注册后90日内申报。如果是2025年1月1日以后(也就是明年)才注册的,那么要在注册后30天内申报。 所以,逃不掉。 这几天马上要到deadline了,所以抓紧时间赶紧把这事情弄了。申报很简单,几分钟就搞定了。 注册FinCEN ID FinCEN ID是标识个人或者企业的,在申报的过程中需要填写一堆信息,然后会给你创建一个。但为了简单起见,我们先提前创建,这样在申报的过程中就只需要填入FinCEN ID而不用填一大堆个人信息了。 我们先打开BO
4 min read
Amex

如何申请美国运通American Express Rewards Checking Account

几天没动笔了。微信公众号申请认证都一个月了也没半点动静,看来不花钱的事情真是没人干。 开始前先给大家普及一个知识,关于国外的Checking和Saving账户,很多人可能傻傻搞不清楚。 Checking就是支票账户,Saving就是储蓄账户。 说人话,Checking就是国内银行的活期,有借记卡(Debit Card)和支票(Check),0利率或者很低很低很低的利率。但Saving并不属于国内银行的定期,而是『带有高额利息收入的类似活期的账户』。一般情况下,钱是可以随时转入到Saving,然后马上就可以享受高利率。想取出来的话,也是可以随时转到Checking。 当然,国外也有类似国内『定期存款』的产品,Certificate of Deposit(CD)。存进去后,一定时间拿不出来,利率比Saving高。 既然提到了借记卡(Debit Card),多嘴普及一句,大家经常会申请带有VISA或者Master Logo的虚拟或者实体卡片,用于网上支付AWS、OpenAI之类的消费,但都会当成信用卡(Credit Card)。其实,带有VISA和Master Logo的卡,不一定
6 min read
开发者如何『简单』折腾出来一个ITIN
ITIN Featured

开发者如何『简单』折腾出来一个ITIN

说是简单,其实也不简单。这篇文章更多是一些知识的普及,还有部分关键步骤的操作流程。 为什么要有一个ITIN ITIN (Individual Taxpayer Identification Number) 是个人纳税人识别号码。它是一个由美国国税局 (IRS) 签发的九位数的税务处理号码,格式为 XXX-XX-XXXX,和SSN长得差不多,但是9或者7开头。 💡简单理解,ITIN是给没有SSN的外国人用来在美国报税的。 大家到这个时候就会说了,我又不在美国报税,为什么要搞个ITIN? 那是因为,太多的非法移民和各种没资格在美国合法逗留的人,有一些身份识别相关的场景。所以,ITIN作为一个唯一的标识符,在一些场合,可以被当作类似于『身份证』的功能,用于识别某一个具体的个人。比如银行开户,申请信用卡,申请EIN,等等等等。 前面也提到,在美国要报税,就需要ITIN。所以,你如果在美国有LLC公司,那么,你也需要有一个ITIN来为这家LLC进行报税。即使这家LLC有EIN。 为什么?因为LLC的税务是穿透到个人的。 然后,申请了ITIN,你就可以开始在美国建立你个人的信用
11 min read
Airwallex

避坑Airwallex空中云汇

☠️管理混乱,隐藏收费。像这种公司,能躲就躲 1、香港公司,开通了Airwallex空中云汇的账号 2、在线申请了Airwallex空中云汇的VISA实体卡 3、4张实体卡,每张实体卡扣了我$25美金 4、空中云汇的官网明确说明实体卡免费 5、问客服,客服的答复:$25美金的确没有公开写明,实体卡是有收费的。 6、实体卡创建过程中,也没看到任何显示收费的地方 7、查看他们大陆的网站,看不到任何提到收费的信息 可笑的是,他们网站主打费用公开透明,没隐形费用。
2 min read
出海

独立出海开发者国外银行选择之Found.com

👨‍💻拔草提示:要SSN或者ITIN。 最近和很多搞出海的独立开发者聊天,困扰大家最多的除了如何注册海外公司(比如美国)以外,就是怎么开一个用于收款的银行账户了。 首先要说明的是,Wise、Airwallex(空中云汇)等服务商,都只是一个『收款渠道』而已,并不是银行机构。虽然他们提供了各种货币的收款账号,但这些账号都是基于他们的一个母账号开出来的子账号。也就是说,这类账号的风险极高,一旦母账号中任意的子账号出了问题,就会波及到其他子账号。最近Wise美国一直要求提供经营的地址证明就是一个例子。 所以,Wise之类的账号,临时用用就算了,资金千万别过夜。 比较受欢迎的美国银行账号应该是Mercury(水星银行)了。其次还有Relayfi、Brex。按照开户难度,Brex是最难的,但也是相对比较稳定可靠。不推荐的是Relayfi,我3个没有交易的账号被莫名其妙连坐封了,说是把钱给我退支票,但到现在半年多,连影子都没见着。Mercury是大家最喜欢的,但现在也被玩坏了,开户难度越收越紧,最近的情况是大家很难再开出Mercury的账号了。 今天闲来无事,发现了一家可以秒开账号的
6 min read
税务

如何注册EU OSS VAT税号

为什么要欧盟的OSS VAT税号 大家都知道,欧洲福利高,待遇好。但是,高福利是基于高税收的基础上。特别是欧盟国家有增值税(VAT),分别在15%-27%之间。 大家可能会说,OK,那我知道了。但这个跟我有什么关系?我的公司又不成立在欧盟,收税跟我没什么关系吧? 那,这就错了。事实上,除非你的商品/软件不卖给欧盟国家的人,不然,VAT还是跟你息息相关的。 为什么?因为欧盟税收是根据目的地原则,也就是说,VAT在消费地征收。一个法国用户购买了你的软件,那么消费地就是法国,所以,你作为软件的销售方,需要在法国缴纳VAT。软件产品适用于标准税率,法国的VAT标准税率是20%。 也就是说,你一个定价$99的软件产品,卖给了法国客户,你需要为法国政府上交$99*20%=$19.8的VAT。你实际到手,只有$79.2。 所以,
4 min read
EIN

在线申请EIN,只要3分钟

我前一段时间曾经写过一篇文章《如何自己动手免费申请EIN》,但文章是针对没有美国ITIN号的同学。对于有ITIN的同学,申请步骤其实简单得多。最近我刚申请到了美国的ITIN号,所以尝试一下在线申请EIN。前后过程只需要3分钟,填写一些企业的基本资料,勾选几个选项。 💡下面的步骤,只合适有ITIN的同学。没有ITIN请看我另外一篇文章 * 打开雇主身份识别号码 (EIN) 在线申请,点击『立即在线申请』 就这么多,剩下就是拿着EIN号去申请水星银行了。使用我的邀请链接https://rr.do/mercury可以获得$250刀
2 min read
SwiftUI

Swift读取RSA Key报错RSA private key creation from data failed

macOS Swift程序因为需要,使用了RSA非对称加密。读取公钥的时候一切正常,但读取私钥的时候会报错 Error Domain=NSOSStatusErrorDomain Code=-50 "RSA private key creation from data failed" (paramErr: error in user parameter list) UserInfo={numberOfErrorsDeep=0, NSDescription=RSA private key creation from data failed} 相关代码片段如下 func loadPrivateKey(from string: String) -> SecKey? { guard let data = Data(base64Encoded:
1 min read
cdn

出海业务如何免费做到全球加速

最近在做ServBay这个macOS下最好的Web开发工具,经常收到赞叹:网站不备案,在国内没有节点,但为什么访问速度飞快,下载速度也有40M+?到底在基础设施上,你花了多少钱? 我经常笑而不语,回答了一句:这都不花钱,也都不是事。 创业者搞初创项目,能白嫖为啥要付费?这也太不尊重Cloudflare和AWS了。 今天我就来讲讲,这是如何做到的。 1、首先,你要有DNSPod 对!做新项目,也不要忘记为过去的项目打广告。DNSPod的IP库是和ipip强强联手联合打造的,分区域的准确性要说第二,谁也不敢认第一。 想加速,首先要做的就是能把用户的来路区分开。国内用户走专门节点,国外用户走另外的节点。 所以我们首先要把网站的域名转到DNSPod。 这里就用servbay.dev来举例。 2、然后,你要有Cloudflare Cloudflare的线路和节点是没得说的,全世界的访问速度基本都能维持在前一。而且还免费(够用了)。 但是,这货在中国不行。虽然他们的客户经理天天来撩我,但说实话,除了移动的网络访问速度很快以外,电信和联通的访问速度都很感人。并且吧,时不时抽
7 min read
telegram

如何安全的转移telegram用户名到另外一个账号

花了30 usdt买的教训,总结下: 🚫telegram中,A账号修改用户名后,B账号并不能马上使用A账号释放出来的用户名,用户名释放的时间是随机的,极有可能会被抢注。这是一门生意 我就是因为这样,用户名被抢注了。最后花了$30赎了回来。 想要安全转移用户名,解决方案如下: 如何安全的把telegram的用户名从A用户转到B用户 * A用户先创建一个频道(channel) * 把A用户的用户名改掉,比如bra改为bra123 * 马上把刚才创建的频道,改为公开(public),然后在link中,输入刚才释放出来的用户名bra * B用户加入刚才新创建的频道 * A用户把频道的所有者(ownership)改为B用户 * B用户把频道从公开(public)改为私有(private)。这时候用户名会被释放 * B用户马上修改自己的用户名为刚才释放出来的用户名bra * OK,完成用户名转换 💡一个小时只能修改2次用户名,多了会触发telegram限频,导致丢用户名💡整个过程15分钟内完成,否则也会导致用户名被释放
1 min read
EIN

如何自己动手免费申请EIN

最近中国的程序员们纷纷出海,很多人也注册了自己的美国LLC公司。但注册完美国公司以后,面临的最大一个问题就是获取EIN(Employer Identification Number)。美国每个企业都需要有属于自己的EIN,不然寸步难行。往近了说,无法开通银行账号(比如水星银行Mercury、Relay、stripe、wise)。往远了说,每年无法报税,会被IRS重罚。所以,申请EIN就成了美国公司新注册后必须进行的第一步操作。 简单来概括,EIN就相当于企业的身份证,或者类似于中国企业的『统一社会信用代码』。但区别在于,中国的企业注册完成后自动获得编号,但美国需要自己申请。 所以,EIN这个东西是完全免费的。不管是申请,还是持有。 但是吧,因为申请EIN的流程有点啰嗦,并且在线申请的话,需要填写个人的SSN。如果通过电话申请,则需要英语很好,而且还要能听懂阿三口音才行。这就难倒了一大票人了。从而滋生出代理申请EIN这么一码事,价格也从几十美刀到几百美刀,甚至某些无良公司敢收小一万块钱RMB的。 今天,不用999,也不用99,9块9都不需要,我们来免费申请EIN。 英语不好?不
4 min read
SwiftUI

@StateObject和@ObservedObject的区别

@ObservedObject创建的对象,会在View重绘的时候重新创建。@StateObject创建的对象不会,只会创建一次,所以在视图重建的时候不会受到影响。 比如 @ObservedObject var downloader = Downloader() // ... @StateObject var downloader = Downloader() VStack { ProgressView(value: downloader.progress.fractionCompleted) .progressViewStyle(LinearProgressViewStyle()) Text("\(Int(downloader.progress.fractionCompleted * 100))%") Button(action: { downloader.cancelDownload() isDownloading = false }) { Text("Cancel") }
1 min read
CPU

MoreFine S500+ AMD ES CPU的诡异问题

在淘宝上买了几台便宜的MoreFine S500+用来在家里跑虚拟化,CPU是AMD Ryzen 9 5900HX ES(100-000000300-30_Y),其中有两台机器很诡异,PVE只要一跑apt upgrade,必定死机重启,屡试不爽。其他时候一点问题都没有。整个过程没有任何log,没有任何core dump,实在是诡异。一开始以为是内存的问题,换过内存后还是一样,重置BIOS也不能解决问题。 偶然的机会,发现dmesg有error,系统不能开启TSC,并且每次重启,报错的CPU核心都不一样 root@pve-2:~# dmesg | grep -i -e tsc -e clocksource [ 0.000000] tsc: Fast TSC calibration using PIT [ 0.000000] tsc: Detected 2894.
3 min read
SDR

Raspbian 64位下安装SDRplay RSP1驱动

Raspbian 64bit其实并不是纯的64位,虽然是aarch64,但还是有很多动态库、可执行文件都是32位的,甚至编译出来的文件默认都是32位 比如 $ file /usr/local/bin/SoapySDRUtil /usr/local/bin/SoapySDRUtil: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, BuildID[sha1]=c5236a15f0708fb3213f4ceda6f8bcf2bec88659, for GNU/Linux 3.2.0, not stripped SDRplay的官方提供了64位的API库,但默认安装后会有问题,虽然文件存在,但会提示文件不存在 pi@pi:~ $ ls
1 min read
Network

R86s刷入自制OpenWrt固件

R86s出厂是自己带了eMMC,拿不下来,不好刷。使用官方版本的刷机脚本,刷完以后每次重启系统后,分区都是ro只读,还不如自己手工捣鼓了。 下面提供三种方法刷进去,都是大同小异,先把/dev/mmcblk0的分区表清空,然后dd命令刷入区块。 创建启动用的TF(SD)卡 首先把OpenWrt系统的openwrt-x86-64-generic-squashfs-combined-efi.img镜像(ext4也可以,但意外关机后会产生分区表损坏,需要手工fsck,不然分区也是ro只读,系统不工作)用balenaEtcher写入到TF卡,然后给R86s接入键盘,开机,猛按F7键,选择TF卡启动,进入到OpenWrt界面。 清空原来的分区表 💡这里有个大坑,如果eMMC上本身存在系统,会被OpenWrt默认加载,导致报错进不了TF卡上的OpenWrt。需要在原本的eMMC上的系统去清空分区表,或者借用第三方的安装盘把分区表清空。 接着,开始干掉系统原有分区表 fdisk /dev/mmcblk0 g w 然后,我们就可以刷入系统了。 Opt 1,刷入TF卡上的系统
4 min read