Cursor 编辑器是一个由 AI 支持的,可以通过自然语言进行交互编程的代码编辑器。很早就了解了 Cursor 编辑器,但是觉得比较鸡肋日常编程因为使用 IDEA 继承不太方便所以一直就没有怎么深入体验。但是最近遇到要看一个 Ruby 的项目,我没有学过 Ruby,所以就一下子想到了用这个编辑器来辅助我看 Ruby 的项目,一用之下才完全超出了我的想象,在我阅读 Ruby 项目的时候完全可以充当一个很好的老师。
Cursor 的这种会话式交互编程感觉在未来一段时间内将完全改变编程的习惯。虽然目前还只能在 Cursor 自己的编辑器中使用。未来成熟之后不知道能不能在常用的编辑器上用起来。
Cursor 集成了 [[GitHub Copilot]],直接可以在界面中登录使用。
目前 Cursor 编辑器还是非常简陋,大概只能算得上一个文本编辑器,称不上 IDE,虽然支持了很多编程语言的自动补全以及语法高亮,但是没有内置的调试,运行等等编码相关的功能。
因为 Cursor 依赖 OpenAI 所以一个良好的网络环境, 以及 OpanAI 的稳定性直接影响了 Cursor 的使用体验。
昨天晚上申请了 Google Bard 试用,今天下班了看到很多人都是几个小时就拿到了试用体验,我想我怎么没有收到邮件呢,我反复确认了邮箱确实没有,然后我想着再去网页上看看呢,登录了一下 https://bard.google.com/ ,开始的时候没有使用代理,提示所在的地区暂时还不能用,然后加上美国的代理,刷新一下就进去了。
Bard 依托 Google 的一款大型语言模型,可以生成文字、撰写各种类型的创意内容,还可以根据它掌握的信息解答你的问题。
进去的第一个弹窗就是「警告」,Bard 是一个实验性的产品,可能不会一直都是正确的,并且 Google Bard 的每一条回复都会有赞同,否定,重新回答,或者直接 Google 的按钮。
大型语言模型是会犯错的
说实话 Google 做这个产品确实非常小心了,在下方的输入框下也有明确的注意事项。
在调研的过程中发现已经有人逆向了 Google Bard。通过如下的方法,然后执行 Python 即可在命令行使用 Bard,不过记住需要使用美国的 IP。
Go to Google Bard
__Secure-1PSID
复制这个 Cookie 值window.WIZ_global_data.SNlM0e
,复制结果tawk.to 是一个可以在网页上添加客户聊天对话框的应用。用户可以通过 tawk.to 泡泡快速地得到支持。
tawk.to 是百分百免费的,创始人写了很长的一篇博客来介绍为什么我们是免费的
tawk.to 在文章中介绍其盈利的方式:
tawk.to 公司还推出了其他服务:
tawk.to 根据其官网的介绍已经占据市场 20% 左右,是目前企业实时聊天这个市场的第一名,接下来依次是 Zendesk(12.25%),Facebook(9.63%),Live Chat(6.36%),Tidio(5.44%),Intercom(4.34%),Zoho(3.6%),Pure Chat(3.49%),Drift(3.25%),Olark(3.11%)。
就和其官网介绍的一样,接入 tawk.to 非常简单,我在我的Life in Japan 接入 tawk.to 的服务花费不到 5 分钟。稍微设置一下展示,和其位置,然后熟悉一下后台控制面板就能快速上手。
如果想看一下具体效果可以访问这里,在右侧看到的绿色聊天对话框就是 tawk.to,在其中留言,我就可以实时收到信息。
之前就简单地介绍过使用yt-dlp 来下载 YouTube 视频,yt-dlp 是自从 youtube-dl 不再更新之后有人接手开发的新工具。但这篇文章重点是在于下载 YouTube 视频,我会整理一下我目前了解的所有可视化,命令行,Telegram bot 等等工具。
之前的文章中介绍过 Tailscale ,是一个功能非常强大的虚拟组网的工具,底层使用更高级的 [[WireGuard]] 协议进行通信。之前的文章中只简单的介绍了一下 Tailscale 的使用,但是过去的时间里面 Tailscale 又更新了很多的新特性,这篇文章就介绍其中的一个特性 Exit Nodes。
Exit Nodes(出口节点)功能就是允许 Tailscale 组件的局域网中的节点通过一台 Exit Node(出口节点)来进行网络通信。路由流量的设备称为“出口节点”。
默认情况下,Tailscale 通常只会借助互联网进行节点和节点之间的通信,而用户正常的流量,比如访问 Google,Twitter 等的流量都是通过本机进行的,而存在部分情况,比如在一些对安全通信要求比较高的场景,需要加密访问,这个时候就可以让局域网中的节点经过一个可信的出口节点(Exit Node)来于外部互联网进行通信。
如果要配置出口节点,需要经过下面几步:
如果要使用出口节点需要有一些必备的前提条件:
// All users can use exit nodes
// If you are using the default ACL, this rule is not needed because the
// default ACL allows all users access to the internet through an exit node
{ "action": "accept", "src": ["autogroup:members"], "dst": ["autogroup:internet:*"] },
如果有 /etc/sysctl.d
目录:
echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
echo 'net.ipv6.conf.all.forwarding = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
sudo sysctl -p /etc/sysctl.d/99-tailscale.conf
如果没有:
echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.conf
echo 'net.ipv6.conf.all.forwarding = 1' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p /etc/sysctl.conf
启用 IP 转发时,确保您的防火墙设置为默认拒绝流量转发。这是常见防火墙(如 ufw 和 firewalld )的默认设置,可确保您的设备不会路由您不想要的流量。
然后执行如下的命令将节点设置成出口节点:
sudo tailscale up --advertise-exit-node
访问 Tailscale 控制面板,点击 Exit Node 节点后的设置,点击 Disable key expiry,禁用密钥过期。然后点击 Edit route settings,勾选 Use as exit node,之后启用。
经过了上面两步网络中的其他节点就可以使用上面的出口节点,但是每个设备都需要单独启用出口节点。
其他节点需要运行:
sudo tailscale up --exit-node=<exit-node-ip>
可以从管理控制台或运行 tailscale status 找到设备的 IP 地址。
或者,将 --exit-node-allow-lan-access
设置为 true 以允许在通过出口节点路由流量时直接访问本地网络。
sudo tailscale up --exit-node=<exit-node-ip> --exit-node-allow-lan-access=true
然后就可以通过 在线 IP 检测工具 来查看本地流量是否已经由出口节点路由。
如果在命令行下可以使用 curl ip.gs
来查看 IP 信息。
[[Porkbun]] 通常被人戏称为「猪肉包」,是一家新成立于美国俄勒冈州波特兰市的域名注册商,母公司是 Top Level Design,后者是 design, ink 和 wiki 三个顶级域名后缀的管理局。这家域名注册商虽然成立时间比较短,但是胜在价格实惠。短短几年时间就打开了知名度。
现在就讲一下 Porkbun 赠送的第一年免费的 app, wiki, ink, gay, uk, pt, website, site, it, mx 等等后缀的域名,可以第一年免费领取使用。
在结帐的时候需要注意,官方的验证方式是只能使用信用卡验证的,但是网页中预留了 Alipay 的验证方式,在 Chrome 浏览器中,右击选择 Inspect,或者使用快捷键调出,然后使用这里的箭头,选择图中的红色「New Card」
在页面代码中就能看到 Alipay 相关的字样,将右侧的 diaplay: none
取消掉,就能看到页面中的 Alipay 支付验证。
然后通过 Alipay 支付即可。
附赠一些小彩蛋
免费的 .uk, .co.uk, .org.uk 域名,但是可能需要验证地理位置。
免费的 .pt, .website, .site 域名
注册也是可能被拒绝的。
免费的 .it 域名,可能需要验证地址
免费的 .mx 域名 (限时)
如果有兴趣讨论关于本文章,或者本博客的所有内容可以到 Telegram 群组。
很久以前想要了解世界各地房地产的时候,收集了不少的相关书籍,[[全球房地产]] 一书就写得太过学术,读起来有些枯燥,而这一本《负动产时代》应该就是那个时候加入的豆瓣待看列表。
本书并没有一个单一作者,而是日本的《朝日新闻》采访组的一线记者走访了大量的房主,政府机构,不动产中介,并远赴德国、法国和美国,采访取材之后编写的一本描绘了日本房地产从狂热盲信时代到少子老龄化时代的巨大落差,房地产政策的滞后,以及带来了一系列严重的后果。
这本书读起来没有那么枯燥,作者引用了非常多的真实事例来展示当前房地产存在的问题,由这些问题再进一步得追问为什么会发生这些问题?为了解决这个问题又实地采访了亲历者,包括购房者,地产中介,相关政府部门。
存在的问题:
作者还走访了法国,美国,德国等地方,试图寻找解决方案其他国家类似情况的政策。
法国政府的政策:
美国的情况:
德国允许放弃土地所有权:
在阅读本书的过程中,我不止一次的被震惊到,读起书中的事例,就像是在看一个魔幻的故事集。管理费和固定资产税已经超过房产价值,最后被 1 万日元拍卖的度假公寓;120 年没有变更户主的老房子,已经有几十个继承人;在当年房地产市场欣欣向荣的时候,把一块什么都没有的「原野」土地,高价卖出去,如今已经是原先的十分之一价格;多年失修的公寓,因为没有办法得到全部户主的同意而无法重修。
更甚至在作者调查房地产中介公司的时候,让我窥见了公司如何压榨劳工,因为政府会查公司车辆的使用记录,会查看公司电脑的使用情况,员工为了达成业绩,甚至隐瞒自己的工作证据,周末用自己的车办公,工作时关掉电脑的电源,故意少报工时。
在人口减少的国家,购买度假性房地产或者在地方性城市投资性房地产都要谨慎再谨慎。特别是以高价贷款购买上述类型房地产,更是要谨慎。如果是想要在持有房地产要交固定资产税和房屋管理费的国家,如日本,购买上述房地产,那真的是“投资有风险,入市需谨慎”。
对日本,以及房地产这两个关键字感兴趣的人。
在商品房的样板间里,销售人员常会说:“用您现在的房租做月供,就能买到一套同样格局的房子。”如果您听了很动心,就相当于迈出了通往“负动产地狱”——维护和管理费用不堪重负,想卖却又卖不出去 —— 的第一步。
日本的土地制度是以土地和房产永远不会失去资产价值的“土地神话”为前提制定的。
Code Server 是一个在 Web 浏览器中运行的开源代码编辑器。它是 Visual Studio Code 的开源版本,可以提供基本的代码编辑、语法高亮、智能感知、自动补全等功能,同时支持多人协作、远程开发等特性。
能够在浏览器运行的集成开发环境通常也被称为 Cloud IDE。
Code Server 可以在本地计算机或云服务器上运行,用户可以通过浏览器访问并使用其中的编辑器功能,不需要在本地安装 Visual Studio Code 等本地编辑器。这样可以方便地进行远程开发、多人协作、快速搭建开发环境等操作。同时,Code Server 也支持自定义插件和扩展,可以满足不同用户的需求。
推荐通过 Docker 来安装,我使用的是 LinuxServer 提供的镜像 ,转成 docker-compose.yml
来使用。
具体见 docker-compose
创建 password hashed
echo -n "thisismypassword" | npx argon2-cli -e
$argon2i$v=19$m=4096,t=3,p=1$wst5qhbgk2lu1ih4dmuxvg$ls1alrvdiwtvzhwnzcm1dugg+5dto3dt1d5v9xtlws4
官方文档 中已经有了如何使用 [[Nginx]] 和 Let’s Encrypt 的相关配置
server {
listen 80;
listen [::]:80;
server_name mydomain.com;
location / {
proxy_pass http://localhost:8080/;
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection upgrade;
proxy_set_header Accept-Encoding gzip;
}
}
但是因为我使用的是 [[HestiaCP]],这个面板自带了一个 Nginx 模板,可以参考我之前的文章 创建新的 code-server.tpl
和 code-server.stpl
然后修改相应的配置。
但是我在配置的过程中,访问 Code Server 遇到了如下的问题。
An unexpected error occurred that requires a reload of this page.
The workbench failed to connect to the server (Error: WebSocket close with status code 1006)
仔细的看了一下 Nginx 配置,才发现在 HestiaCP 默认的模板中后面有一个多余的配置
proxy_hide_header Upgrade;
把这个配置注释掉,然后在 HestiaCP 中重新关闭和启用该网站即可生效。
code server 下暂时还没有像 Visual Studio Code 一样内置的同步功能,但是 Shan Khan 的 Stttings Sync 可以作为一个不错的代替。
拿到 New Bing(新病)的体验,但是 Microsoft 却要让我下载 Edge 才能体验,这个体验真的很差,所以回去用 Google 搜了一下「如何在 Chrome 中使用 New Bing」,还在还是有方法的。
5 月以后推荐 New Bing Anywhere 这款开源的 Chrome 插件。
user-agent 规则,将user-agent
修改成 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36 Edg/110.0.1587.41
将 x-forwarded-for
修改成 8.8.8.8
。
然后访问 https://bing.com/new 就会从这个有着 「Download Microsoft Edge」 的页面
变成直接可以 Chat 的页面。
之后,在 New Bing 网页中的第一个问题就是问她「如何在 Chrome 中使用 New Bing」
好在回答的还算比较准确。
感谢 Zealer Chan 在评论中补充了一种方法,可以直接安装 Bing Unchained 即可。
[[IRC]],全称是 Internet Relay Chat,中文名是互联网中继聊天,是一种在全世界范围内被广泛应用的网络聊天协议,用户可使用 IRC 聊天软件连接到 IRC 服务器,与其他连接到这一服务器上的用户交流。由于所有的信息交流沟通都未曾经过第三方服务器,且采用了 SSL 加密,因此具有很高的安全性。
IRC 的使用过程中会常常遇到这么一些概念,提前先了解一下。
Nickname(nick) 昵称,是用户的昵称,表示身份的昵称。
Channel,频道 #channel
通常会以 #
开头,是聊天室、频道的意思。
常见的 IRC 客户端有很多,比如 Hexchat, irssi, MIRC 等等。
移动端客户端:
终端或者基于文本的客户端通常是主要使用键盘快捷键来使用的用户,通常不需要使用鼠标来移动,非常适合于服务器或者远程使用:
通常 IRC 服务器会提供一个连接地址和一个端口,需要注意的是有些服务器必须使用 SSL 端口才能连入。
连接之后会有很多 IRC 频道。
加入频道
join #channel
查看某昵称的资料(用户的 IP 或加入的频道)
/whois nickname
查看某 IP 登录的所有用户:
/who IP-Address
离开频道,并留下原因
/part #channel reason
退出服务器
/quit reason
私信某人
/msg nickname the-words-to-say
列出所有频道列表
/list