这里记录一周中关于Go语言,关于编程,关于生活资讯,关于各种工具、网站的搜集汇总。另外我和我的小伙伴会隔段时间进行讨论,我也会把其中值得分享的内容分享出来。
每周一发布。
本杂志开源(GitHub: Tjuvenile/weekly),欢迎提交 issue,投稿或推荐科技和资讯内容。
翻转你好abc啊哈哈
这个字符串。
package main
import"fmt"
func main() {
src := "你好abc啊哈哈"
dst := reverse([]rune(src))
fmt.Printf("%v\n", string(dst))
}
func reverse(s []rune) []rune {
for i, j := 0, len(s)-1; i < j; i, j = i+1, j-1 {
s[i], s[j] = s[j], s[i]
}
return s
}
rune
关键字,从golang源码中看出,它是int32的别名(-2^31 ~ 2^31-1),比起byte(-128~127),可表示更多的字符。字符串
转为rune的切片
,再进行翻转,完美解决。点此查看原文
不是,所有切片的大小相同,都有三个字段。
切片的第一个字段是指向切片底层数组的指针,是切片的存储空间,第二个字段是切片的长度,第三个字段是容量。
将一个slice变量分配给另一个变量只会复制这三个变量的值,所以拷贝大切片和小切片的代价应该是一样的。
// go切片的底层结构
type SliceHeader struct {
Data uintptr
Len int
Cap int
}
大切片和小切片的区别无非就是Len和Cap的值不同。
点此查看原文
package main
import (
"encoding/json"
"fmt"
)
type J struct {
a string //小写无tag
b string `json:"B"` //小写+tag
C string //大写无tag
D string `json:"DD"` //大写+tag
}
func main() {
j := J {
a: "1",
b: "2",
C: "3",
D: "4",
}
fmt.Printf("转为json前j结构体的内容 = %+v\n", j)
jsonInfo, _ := json.Marshal(j)
fmt.Printf("转为json后的内容 = %+v\n", string(jsonInfo))
}
输出
转为json前j结构体的内容 = {a:1 b:2 C:3 D:4}
转为json后的内容 = {"C":"3","DD":"4"}
如果结构体变量首字母小写
,在Go语言中这个变量的权限是private
,不会被json取到信息,所以自然也不会显示。
如果结构体变量首字母大写
,权限是public
,如果不加tag
,json
名字和结构体
内字段一致。加了tag
,相当于起了一个别名。
点此查看原文
Go和java都是C系语言,但Go更接近C,包括风格和库。
和C/C++一样,Go语言源码会直接编译成机器语言。 而Java会编译成虚拟机语言,即字节码,再通过JVM来进行解释。
而且Go是静态编译,一旦编译完成,Go程序只需要一个操作系统就可以运行,Java需要在计算机上安装有JRE,许多Java程序可能还需要额外的第三方库代码。
两门语言都包含方法和字段的数据结构概念,Go中被称为struct,Java中被称为class,这些结构被收集到成为包的分组中。
组合
优于继承点此查看原文
Java生成随机数的方法如下,具体的分析可以查看原文。
Math.random()
Random
ThreadLocalRandom
SecureRandom
UUID.randomUUID()
RandomStringUtils
RandomUtils
RandomUtil
https://mp.weixin.qq.com/s/gDrYyCu-CSvdQPXJ0Jq2-A)
点此查看原文
任何工作都有倦怠期,即便因为倦怠而去了另一个看似不错的工作,用不了多久也会倦怠,也会发现那个职业也有诸多痛苦。
发现工作的意义,是突破职业倦怠的关键。
点此查看原文
我没去过成都,很多人向往成都的原因也是因为成都的吃喝玩乐,以及所谓慢节奏的生活。
这是因为成都的历史缘故,以及当代没什么天灾和动荡,生活也富足,所以人与人之间的关系松弛。
你要是想在当代中国看到《论语》里面描述的那种良好的中国人的样子,那就来成都吧。
点此查看原文
在管理中,你可能会遇到下面这种情况:
自己是一个设计总监。有一天,公司人力总监私下安排他的手下设计师干了个活,干完之后就顺手送了个人情,告诉这个设计师,你可以提前转正了。
而这位设计总监是下属来找自己走转正流程签字的时候,才知道有这么个事。这位同学就过来问我说:花姐,我是该拒绝这个转正,还是忍气吞声地同意?结果是给别人做了个顺水人情,自己一点好处都没有!
要我说,这都不合适,我教你一个面临这种情况的沟通公式:态度要软,证据要硬。
首先需要明确你的下属,是否符合转正标准。 如果符合标准,沟通目标就要尽可能团结这个人力总监,让他一会能替你多着想:
王总,多谢。XX的转正问题您比我记得还精确,能给我们部门的员工提前转正的机会。他本人跟我说很受激励,您对我的工作太支持了。我也让他本人写一封邮件给到您和我,让他自己表个态,今后得好好工作。
这样态度好,又留了证据,说明这名员工的转正是非常规的,日后万一有什么问题就可以说明情况。
如果这个人不符合转正标准:
“王总,XX跟我说接到人力通知,已经开始给他办转正流程了。您看这个事赖我。我观察到一个问题,但是觉得没到时间,就没及时反映,在业务层面这个人的转正是不能通过的。
如果一旦转正再要想解聘或者降薪就难了,我怕给公司造成损失。您看这样好不好?我刚刚写了个邮件给您,这方面您是专家,我想请您指点一下这种情况该怎么处理好?”
态度还是很积极,但是指出了问题,留下来证据,如果他要硬办,日后隐患爆发,他得承担责任。
聪明人都会用最温和的语气来提最硬气的要求。
点此查看原文
点此查看原文
点此查看原文
指标和目标。
比如降低血压算是我们的目标,还是指标?它是指标,因为我们的目标是“身体健康”,指标有很多,比如血压,胆固醇等等。
指标可能会变化,但是目标不会变化。
点此查看原文
员工和管理者,经常会有这样一个情景:
员工做的工作不好,找来和管理者抱怨,倾诉,管理者往往会对其进行安慰。
但是,这对解决问题没有任何帮助。
最终员工还是要承受管理者的低分评价,最终员工还是要面对这个现实,不如早一点就开诚布公,这才是成年人的处理逻辑。
点此查看原文
对于幽默的解释大概有三种:
通过创造一个“失败者”,让你感觉自己就是“成功者”,从而产生心满意足的“优越感”。
问:你的文章最近水平越来越差了,怎么会事?
答:那可不是一般的差。我昨天读自己的文章,吐了三回。今天两回。
就是在两条逻辑线交错的地方,突然“脑筋急转弯”。
问:如何才能在一个月内,拥有1000万。
答:这很简单,闭着眼睛随机买100只股票。别问投资经理,他们没用。这样,不需要一个月,你的1亿资产,就可以变成1000万了。
就是用“危险”制造你的紧张感,再用“安全”释放掉它。
问:你觉得我的公司还有救吗?
答:瞎操心啥?你的公司好着呢。专注于产品和员工,做你自己能改变的事情。
这么说,就太平淡无奇了。
也可以答:这很难说,你的公司现在非常非常危险。你现在必须立刻做出改变,否则活不过3个月。
为什么?
我刚才注意到,你公司的营业执照,还有3个月过期。赶快去延长,不然公司就要关门了。
这就是先用“危险”制造紧张感,然后用“安全”释放。
不管你要给读者制造“优越感”,还是“错愕感”,还是“释放感”,都需要一种稀缺的能力,甚至是天赋。
那就是智慧。
前几天,我看了一档综艺节目,挺有感慨。
这档综艺节目,邀请了一位曾经无人不知的小品演员。
这位演员60岁了。你在她身上,能看到优雅、看到慈祥、看到美好,但是再也看不到那种“幽默感”。
她对在场的其他喜剧演员慈祥地说:我60岁了,我枯竭了。这也是为什么,我再也不出来演小品了。我退休了。你们也都会有这一天。我希望你们能珍惜今天的才华。
那什么是才华枯竭?
就是,你的大脑,已经无法勾画出一个活灵活现的、得体的、失败者的画面了;
无法同时处理2条、3条、甚至更多条的逻辑线,然后急转弯了;
无法在面对令人头大的问题时,还有多余的精力,先制造紧张感再释放了。
看到这一段时,我感觉到才华,乃至智慧,是多么宝贵的财富。
只有当你的智慧还能多到溢出时,才有幽默感。
幽默,是溢出的智慧。
所以,我选择读一个人的书,听一个人的演讲时,我有一个不太“科学”的标准,就是看这个人的表达,有没有“幽默感”。
因为,只有他有对他所谈论的话题,举重若轻,动用20%的CPU,就能给你讲清楚时,他才有余力,“炫耀”他的幽默感。
而当一个人的表达紧绷绷的时候,你能体会到,他已经把CPU用到了120%,但你还是觉得不明觉厉。
那这个人对这个话题的驾驭能力,可能远低于他对自己的评估。
我用这个标准来,也看了看我自己写的东西。
嗯。我只是一个勤奋的思考者。
我的智慧,还装不满一个罐子。在讨论芝麻大小的事情时,我充满了幽默感。
可是讨论到一个橙子那么大的事情时,我就只剩逻辑了。
讨论到西瓜那么大的事情时,我常常费劲全身力气,依然紧绷。
点此查看原文
评价别人,就是在评价自己。 仔细想想,还真是!
个人评价需要远处听闻,然后来到近处观察。
点此查看原文
工具理性所带来的问题是“去人性”。
当一个人过于依赖工具理性,就会忘记自己的人性。
而最终导致的结果,往往是:
人会觉得自己做的选择都是最优的,同时却又非常痛苦。
这是一种被 “去人性” 的痛苦。
譬如一些年轻人进大厂,并不一定是「我想」做程序开发、做游戏;
很多人盯着的,是那「超同龄人的收入」,以及一张「大厂镀金证书」。
我怎么想的不重要了,我的皮肤、眼睛、腰椎、肩膀的疼痛也不重要。
因为现在我这个年纪能有这样的机会,这样的回报,是我能获得的最高、最有性价比的。
又譬如马云曾说的 “互联网公司是年轻人的福报” ——
因为他们可以通过充分牺牲自己的青春,换取巨额的收入。
这些都是 “去人性” 的过程。
工具理性的概念,很贴合当前的资本社会——一切都可金钱化,效率化。
有这样一个故事:
福特公司在70年代出产过一款汽车,有个致命的设计缺陷,会在车祸中增加司机的死亡率。
但管理者发现问题后,首先做的不是全面召回车辆,而是找精算师计算:
究竟撞死人了被索赔的成本大,还是召回的成本高?
结果发现,召回的成本更高。
于是,他们决定不召回,并且确实在当时省下了一笔高额成本。
但最后东窗事发——福特失去了最为重要的东西,那就是客户的信任。
并且,这个事件被写入教科书,全世界都知道了这个大丑闻。
价值理性中,人是目的,不是手段。
关注的是选择背后我们的动力是什么?通过选择,我们想要养育一个什么样的自我。
也许,当我们有余裕时,我们要学会从工具理性的角度,转为从价值理性的角度去思考——
究竟我想要成为什么样的人?
怎么样过,才算是不愧对我自己的一生?
点此查看原文
有些人长大之后依然分不清楚,什么是我的,什么是别人的。
为什么会这样?
因为在他小时候,他的妈妈没有让他认识到什么是清晰的边界。
比如,妈妈正在喝一杯饮料,儿子看到之后,直接拿过来就喝掉了。
这个时候,有的妈妈可能不会说什么,觉得这很正常,我的就是我儿子的。
但如果是在一些私有权意识比较强的家庭,这样的事情就不会经常发生。
通常,孩子都会先问一下妈妈,这杯饮料我可以喝吗?经过妈妈的同意他才会喝掉。
当他问这句话的时候,他的心里是有边界感的。
他知道虽然我跟妈妈很亲密,我想喝她也一定会让我喝,但是我还是要征求她的同意。因为,这是妈妈的饮料。
可是,也有一些家庭的小孩子没有这样的意识,他们的妈妈也没有这样的意识。
这种意识一旦没有形成,长大之后,他就会因为缺乏边界感,在生活、工作中四处碰壁。
点此查看原文
区分观点和事实:
比如,我说今天很热。其实我表达的是观点。
如果你非要跟我争,今天只有10度,怎么可能热呢。
这时候,你就是用事实和我的观点争论。我们的争论毫无意义。
因为观点,是每个人基于事实的主观看法。
如果你是一个独立思考的人,你的态度应该是什么。我不同意你,但我支持你。
我不同意你,是因为我确实觉得冷。
我支持你,是因为我知道,我们对于温度的感受不同。
当你分得清事实和观点后,就不容易人云亦云。
如何独立思考?
第一步是了解事实,比如A认为某个公司特别好,这是他的观点。
你需要了解支撑他这个观点背后的事实是什么,因为对你朋友好的地方,不一定对你也特别好。
第二步是完善信息,可以用一人辩证法
——拿一张A4纸,左边写上赞成的原因,右边写上反对的原因。
然后对所有赞成和反对的原因都提出反驳,还要加上对应的事实根据。
或者可以用将来发生法
来进行思考
比如,你去了这家公司,会发生什么事?
可能会有两种结果。
第一,你很快适应了新的环境,并且你喜欢上了富有挑战的工作,解锁了新的可能。
第二,你适应不了新的工作,每天早起赶地铁消耗了你大量的能量,工作内容也提不起你的兴趣。
想象一下,这种后果是你能承受的吗?
第三步是学会表达,独立思考的目的之一,就是系统地表达,要学会把思考的内容,表达出来。
我把这套协作机制总结为五步:
一、定目标。
二、扛目标。
三、盯过程。
四、守底线。
五、奖结果。
第一步需要给每一个人定目标,这是一个组织能够协作的前提。
目标定好了之后,就必须要有人能够把目标扛起来,扛的意思不是说这个目标可完成,可不完成,而是必须得完成。
如果因为一些问题,失败了。 你需要知道,只有两种场合可以来表达困难。
第一种场合,就是接下目标的时候
你需要评估自己能不能完成目标,如果判断自己完不成这个目标,就要立马想办法去解决。接下了,就必须竭尽全力完成。
第二种场合,是完成目标的时候
在任务完成的很好的时候,可以把困难说出来,大家一乐。
第三步就是盯过程,件件有着落,事事有回应。
任何一件事情,只要被提出来,就永远不能消失。这件事情的结束方式只能有两种,第一种是被完成,第二种是被发起者取消。
如果一件事情交代下去,没有人问就渐渐消失了,那么你的协作机制就是失效的。
盯过程的本质,就是给任何事情扣上闭环,有开始就必须有结束,避免石沉大海。
第四步是守底线,一开始创业的时候,公司都是以价值观驱动的,什么能做,什么不能做,都受创始人的价值观影响,但是随着公司变大之后,价值观会被稀释。
红线就是红线。热炉就是热炉。
绝对不能碰,一碰就要严惩。
这就是守底线。
最后就是奖结果,只有完成了结果,才能获得相应的奖励,只奖励功劳,不奖励苦劳,只有当结果不可撼动的时候,才能保证大家对目标真正的重视。
点此查看原文
说的是最近的开源项目Log4j出现重大漏洞的问题。
被发现紧急的安全漏洞之后,Log4j小组立刻行动起来,开始疯狂抢修,用了22个小时才修好。
但是,这并不属于他们的本职工作,他们没有报酬,没有工资,但是却遭受了网络的批评和骚扰。
这些人可能忘了,开源软件经常存在的一个声明:
开源软件的用户需要对软件的使用、分发负责,并承担相应风险。
为了让开源项目能够持续下去,需要一些公司巨头可以针对性的成立开源基金,Google 已经这么做了,它在9月份承诺提供一亿美元帮助提高开源项目的安全性,第一轮选了8个项目:
Git :最流行的版本控制软件
Lodash :一个非常有用的JavaScript工具库
Laravel :PHP Web框架
Slf4j :对各种日志框架的封装形成的Facade
Jackson-core & Jackson-databind:对JSON进行序列化的开源框架
Httpcomponents-core & Httpcomponents-client:简化HTTP客户端与服务器进行通信的框架
点此查看原文
建议了解一下,原来毒品的隐蔽性已经进化到如此地步。
点此查看原文
很有意思的了解人民币废弃的流程,以及废弃之后的利用。
点此查看原文
Web1.0是早期的互联网,比如新浪,搜狐,网易,雅虎,内容主要是网站编辑整理的,作为用户,我们的权限只有“只读”。
Web2.0是我们正在经历的互联网,比如微博,微信。内容不仅是平台生产,用户也能贡献内容,不仅可读,还可写。
但是这些内容本质上不属于用户,而是属于平台,平台可以轻易的抹掉你的痕迹,甚至用户本身。
Web3.0就是用户拥有可读,可写,也有可拥有的权限。
查看原文
从表面上看,自由竞争似乎一直在推动美国大小公司的兴衰,但实际上这些都是幻觉。
先锋、贝莱德、道富,伯克希尔哈撒韦这四个公司垄断了美国所有大公司,尤其是先锋和贝莱德。
举个例子讲,百事可乐的大股东超过3000人,先锋和贝莱德的股份站全部股份的1/3,在前10名股东中,前三名是先锋、贝莱德和道富,他们持有的股份多于其它七名。
而可口可乐的第一大股东是伯克希尔哈撒韦,紧跟的三名大股东是先锋、贝莱德和道富。
所以百事可乐和可口可乐绝对不是竞争对手。
另外,Meta,Google,苹果,微软这四大科技公司,前几名的股东依然是先锋、贝莱德和道富。
继续浏览西方国家科技公司的名单,不管是哪个行业,都会发现先锋、贝莱德、伯克希尔哈撒韦和道富这几个公司。
在西方几乎每家大公司中,都可以在前10名机构投资者中找到这些名字。
点此查看原文
会解释一些有趣的概念,比如为什么孩子不喜欢吃蔬菜?为什么自己总爱吃高糖、高脂肪、高盐事物? 这里面会从演化的角度来解释这些问题的答案。
是掘金小册,讲分布式锁的相关知识。
可以直接网络搜索,这是一个开源电子书,写Go语言的一些东西。 我还没看,初步感觉还可以,Go的资料那么少,有一本算一本了。
这是一个我们一生都会用到的能力,但是却很少有人去用。
这本书可以给我们这样的通识教程。
通过轻松的阅读来跨入社会学的大门。
这本书以比较通俗的方式讲解了马斯洛的需求层次理论。
我从小就怕黑,目前长大了,有极大的缓解,但是那种感觉依然在,只是很浅,或者我有科学的思维,认知上可以压制。
这本书通过插画的形式告诉我们——小孩子为什么会怕黑呢?
。
这是一本很有名很有名的书,推荐的原因是如果一个人想理解爱,可以读一读这本书。
点此查看原文
一个休闲的小游戏,只需要随意点击,就能生成不可思议的美丽建筑物,更好的是,可以保存在URL中分享给其它人。
我玩了一下,还挺好玩的。
点此查看原文
国家图书馆的项目,整理保存至今的中华古籍,做成数据库可以搜索,并且提供扫描版在线阅读。
点此查看原文
点此查看原文
是一个很方便的模拟自动化操作的库。面向对象是pc浏览器和移动端页面。
点此查看原文
Api接口调试工具,Swagger、 Postman、 Mock 的集合。
在我们学校中会有一些课外兴趣小组,而我所处的组织,我们都称它为三月,因为它是三月诞生的。
这个组织里,每年都需要招新,而此时新生刚刚进入大学,三月需要考虑到新生的精力和思维,以制定更适合的方案,在这个阶段,三月的管理上发生了什么事情?如何做得更好?想和你讨论一下。
接下来我们就接演前文,面试通过的同学,就算进入三月了,三月经过了这么多年的演化,里面已经变得很复杂,所以进入三月也就意味着你将会开启漫长的三月了解之旅。
接下来你将接触到三月运行的一些底层机制:
以上,基本就是你要接触到的最初的三月了。
接下来,就会被分配到各个教室,认领各个组长,开始接下来的学习了,大概的架构如下:
在学校中,我首先要告诉你两个普遍的现实:
- 在宿舍里呆的越久,成长越慢。
- 除了特别自律的人,大家都不会特别能抓得住时间——不过相对还是有高低。
第一点的相对就是,在三月(机房)里呆的越久,成长越快,需要注意的是,咱们讨论的都是普遍的情况,也有人能在宿舍学习,也有人在机房里摸鱼的,但是总体上不影响这个规律。
第二点说的是在学校中大家都会受到各种各样事情的影响,做不到像寒暑假那样的高效率学习,不过抓住80%的时间和抓住20%的时间之间的差距还是很大的。
接下来让我们慢慢来讲在学校的生活吧。
我们在学校中的生活,无非由以下这几块构成:
我只聊聊校园活动、学生会、课堂这三个部分对我的感受吧:
上面有一些竞赛,我有一些自己的感受,不过打算等到之后再进行细讲,今天就不展开了。
我后来了解到,很多人对逃课,或者在课堂上做这件事有负罪感,或者不赞同这样的生活方式,我觉得也无所谓,也没用争论的必要,价值观没有对错。
我这样做的前提是我能够把握得住期末考试,我也有明确的方向,知道自己要什么,知道自己毕业将去哪里,逃课也只是换一个地方进行专注安静的学习而已。
如果你在课堂上,能够学习到很多的内容,而且不浪费时间,那我觉得也无可大碍,但是据我的了解,大部分人在课堂上的闲暇时间中,主要在睡觉、打游戏、唠嗑、发呆。
那我不禁好奇,既然如此,你为什么还要杀死自己的生命?——我也曾和你遇到同样的困境,对自己有过这样的灵魂拷问。
我认为玩儿在学校中还是特别重要的,因为我们也常常受到各种诱惑——来自室友打游戏的诱惑、来自各种美食的诱惑、来自早晨不想起床的诱惑。
我们抵御这些诱惑会耗费我们很多的能量,也会积压很多负能量,而这些能量需要我们在玩儿中释放出来,所以,该玩儿就玩儿吧!
也不要太逼迫自己,毕竟,如果你已经想玩儿心切了,学习也专注不进去的。
如果想要在学校中的成长更进一步的话,最重要的两个东西就是:
- 好的时间安排
- 规划
每天的时间安排,是一个需要令人思考的事情,该做什么,不该做什么,什么先做,什么后做,恐怕里面都有你需要研究的东西。
但是起码,你得有一个感知或心态——“我要审视我的时间安排,我要优化自己的时间安排了!”
而规划,则是一个让你在繁杂的任务中保持清晰逻辑的外挂,在任务越繁杂的时候,越要做规划,能让你在未开始时,就对整个全局有一个把握。
实话讲,这两点需要我们一生的修炼,就像开头说的那样,很多人,包括我,都做得不是太好。
各种各样的事情会打乱我们的注意力,让我们的学习质量下降,各种各样的诱惑会让我们花费一个小时又一个小时,但是我们总归还是要有希望的,而且这些年,我经过不断的锻炼之后,还是能够取得一些阶段性的成果。
道阻且长,行则将至! 加油。
简书的锻炼目的有二:
- 写作的能力。
- 思考的能力。
这两项能力,每一项对人生都至关重要,写作的能力不是一朝一夕能够提升的,需要几年,数十年的坚持,才能打磨自己的写作能力。
另外,常常写作的人思想都比较深刻,这是因为文字这种符号体系,就比较能够打开我们的内在,比较容易探到更深处,这样可以提升我们的思考力。
你肯定常常会在想,为什么同样的事情,别人能够比我想得更全面,解决方案更完美,这就是因为别人思考的能力更强,而思考能力的锻炼常常是因为这个人经常思考,我认为锻炼思考能力最方便的途径就是写作了。
这是为了保证大家的步调保持一致,在我们越容易走歪的时候,这个周期要越频繁。因为最开始的时候,大家都不太懂,也是刚刚进入三月,可能还不太适应,所以需要组长每天掌握大家的状态,大家的学习情况,及时解决,等到后面大家都稳定了之后,就可以一周一次会,一月一次会等等。
开会我认为是一个解决问题的地方,但是更大的比重应该是互相了解,聊天,耳濡目染的地方,我常常会遇到一些会议,大家的感觉很无聊。
这个时候,你作为组员,要学会把自己的感觉传递上去,不要认为别人应该猜到你的想法。 你的领导者常常是大你一届的学长学姐,他们也不一定正确,可能也需要你进行一定的向上管理。对你和他而言,都是好事。