我的 Go 语言学习之路

以下内容是我在 Tony Bai · Go 语言第一课的分享用户故事|罗杰:我的Go语言学习之路
你好,我是罗杰,目前在一家游戏公司担任后端开发主程。今天,我想跟你分享一下我学习Go的一些经历,如果你还是一个Go新人,希望我的这些经历,能给你带来一些启发和帮助。

说起来,我接触Go语言已经很久了,但前面好多次都没真正学起来。

我第一次接触 Go 语言是在 2010 年,当时我还在读大二,一个学长建议我了解一下 Go 语言,毕竟是谷歌出的一门语言,可能未来比较有发展前景。所以我当时下载并安装了Go的开发环境,还写了个 “hello world”,但是由于没有中文的教程,也没有人一起学习,学习 Go 语言这件事情很快就被我抛在脑后了。

[Read More]
Go 

改变从学习开始

以下内容是我在 陈天 · Rust 编程第一课的分享用户故事|绝望之谷:罗杰,改变从学习开始

你好,我是罗杰,目前在一家游戏公司担任后端开发主程。

到现在我也快工作十年了,作为一个从小学习能力很一般的人,这中间的打怪升级史可以说是相当惨痛。

我是13 年毕业的,在师范类院校学的软件工程专业。大四参加校招,历时三个月不断面试、笔试,勉强找到一份工作,做棋牌游戏后端开发,签到了深圳。这份工作实习不到半个月,我就开始失眠,因为在学校里从来没有深入学习,专业知识非常欠缺,代码几乎看不懂,当时也没有太多可以寻求帮助的途径,进入不了工作状态,非常痛苦。

[Read More]

Rust 超快安装方法

由于 Rust 安装需要从 github 下载资源,直接安装,速度会非常感人,而且安装到一半还可能会失败,即使使用源码也会面临相同的情况。

感谢中科大,Respect!!!

以下是简单的解决方法:

export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static
export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

几乎不出一分钟,就安装成功了。

安装成功,执行个 cargo install ripgrep ,依然让人非常无语。

此时只需要添加 ~/.cargo/config 文件

文件内容如下:

[source.crates-io]                                                                                                                                                                                              
registry = "https://github.com/rust-lang/crates.io-index"

replace-with = 'tuna'
[source.tuna]
registry = "https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"

这样能就能愉快的 cargo install/run/build 了。

注意:ustc 的源已经不能正常使用了,tuna 速度还是不错的

Rust 

除 0 真的会 panic 吗?

某天,小伙伴反馈说程序 panic 在一个比较诡异的地方,差不多是下面的代码。

type Point struct {
		X float32
		Y float32
}

func Get(p Point) {
		// import github.com/shopspring/decimal
		x, _ := decimal.NewFromFloat32(p.X).Round(7).Float64()
}
[Read More]
Go  Rust  C  C++  Python 

如何删除 MySQL 表中 2.5 亿条数据?

为什么会有 2.5 亿条数据

运营需求,需要提供查询用户登录的记录。

我一思索,这简单呀,就设计了如下的数据表。

desc login_record;
+-------------+------------------+------+-----+-------------------+-------+
| Field       | Type             | Null | Key | Default           | Extra |
+-------------+------------------+------+-----+-------------------+-------+
| user_id     | int(10) unsigned | NO   | MUL | NULL              |       |
| ip          | varchar(40)      | YES  |     |                   |       |
| device_mark | varchar(500)     | NO   |     |                   |       |
| time        | timestamp        | NO   | MUL | CURRENT_TIMESTAMP |       |
+-------------+------------------+------+-----+-------------------+-------+
[Read More]
MySQL  Go 

Filco Minila Air 使用体验

今年 6 月,公司喊了两年的搬家终于看起来要搬了,而且我的 IKBC C87 服役超过三个年头了,我想是时候换个新键盘了,毕竟已经相当用了三年零三个月了。

[Read More]

AWS re-invent 12-23

巅峰科技 重塑未来

这次举办的比上一次参加的 10 月 23 的能好一些,人也多一些。不过总体的感觉就是每次都是新产品推销会议。但是对于我们小公司而言,了解趋势有帮助。不然一直用着那些古老的技术也不太合适。

2020 主题分享

算是对于 re:invent 发布的内容的总体概览,讲解者的职位最高,也是最能将东西讲解的最清楚的。

自 2006 年发布 S3,AWS 已经持续创新 15 年。

2019,在拉斯维加斯举办的线上有高达 6.7 万的参会者,而且门票将近 1.8K 美金。

2020 年因为疫情的原因,在线上举行超过 3 周,有超过 50w 的注意用户观看。现在线上的版本已经有了中文版本,对于有需要的可以点击链接去观看了。

AWS 云市场的份额高达 45 %。

目前云计算本地部署高达 96%,而云上部署只有 4%,这个数字让我特别震惊。

[Read More]

aws secrity day 10 月 23 日笔记

Security Day

责任共担 的安全模型

AWS 的安全责任:计算,存储,数据库和网络以及 全球基础设施

  • 安全可视化和安全可控
  • 服务之间高度集成,达到自动化布署 Macie 。。
  • 建立隐私数据保护
  • 丰富的使用场景
[Read More]

Go 中"坑爹"的类型转换

go 代码

package main

import (
	"fmt"
	"math"
)

func main() {
	var count uint32
	fmt.Printf("count: %d\n", count)
	fmt.Printf("count - 1: %d\n", count - 1)
	// num := math.Pow(2, float64(count-1))
	fmt.Printf("math.Pow(2, float64(count-1)): %f\n", math.Pow(2, float64(count-1)))
	fmt.Printf("int(math.Pow(2, float64(count-1))): %d\n", int(math.Pow(2, float64(count-1))))
	fmt.Printf("uint32(math.Pow(2, float64(count-1))): %d\n", uint32(math.Pow(2, float64(count-1))))
	fmt.Printf("int32(math.Pow(2, float64(count-1))): %d\n", int32(math.Pow(2, float64(count-1))))
	fmt.Printf("uint64(math.Pow(2, float64(count-1))): %d\n", uint64(math.Pow(2, float64(count-1))))

	fmt.Printf("int64(pow(2,1023): %d\n", int64(math.Pow(2, 1023)))
	fmt.Printf("uint64(pow(2,1023): %d\n", uint64(math.Pow(2, 1023)))
}
[Read More]
go 

为什么程序员更应该支持正版软件?

做对的事情

我始终觉得,程序员应该将更多的精力花费在自己的专业上。如果在自己可接受的范围里面,花钱去支持正版软件,节约自己的时间,提高幸福感,才是正确的事情。

[Read More]
思考