[原创] 在99%的情况下,接受混乱才能解脱

我昨天参加了一个分享会议,公司里另一个团队的一个同事在讲解某项目历史的时候提到,关于某个逻辑复杂的模块,由于前一个开发者离职好久了,他到现在也没有理清全部的逻辑。我曾经粗看过一下他们留下的文档,简直已经不能用“凌乱”来形容了,那真是乱得比垃圾堆还乱。
但是领导们可能只看到他们文档写得多,却不知道他们文档质量有多差。
如果你想找到某个具体的问题关联到的文档,恐怕你只能一个人一个人地去问,而你问到的人,很可能会告诉你“这一块没有文档,我也是接手来的,我要去看一下代码再告诉你答案”,口口相传。

阅读更多

[原创] JAVA Jackson解析无名(匿名)数组

假设有JSON文件 1.json:

[
    {
        "sku""ABC",
        "num"3
    },
    {
        "sku""DEF",
        "num"2
    }
]

由中括号可知,这个JSON字符串映射成JAVA对象是一个List,而它里面又包含了两个JAVA对象(每个大括号对应一个)。

阅读更多

[原创] 一个普通技术人的2021总结,2022展望

虎年初三,在全国人民阖家欢乐到处游玩的日子里,我又去了图书馆学习。
去年的年初一,我去了同一家图书馆学习。
感叹这一眨眼,就已经过了一年了啊。
在这样重要的节日里来图书馆学习似乎显得特别冷清,但是这能让我感受到内心的宁静,可以好好思考一下过去和未来。

阅读更多

[原创] Apache Pig解析JSON数据

JSON

在大数据处理领域,JSON格式的数据非常常见,然而用Apache Pig读取JSON并正确取出其中的字段我觉得并不算方便(在某些情况下很容易写错),所以总结一下几个常见的JSON loader/UDF的用法。

假设有数据文件 1.txt,内容是一行JSON(为了简单,这里以一行为例):

{"items":[{"id":"111","name":"aaa","extra":{"k":"ttt","v":"uuu"}},{"id":"222","name":"bbb","extra":{"k":"rrr","v":"sss"}}]}

阅读更多

[原创] 在腾讯云的轻量应用服务器Lighthouse上用Squid开启HTTP代理服务

前段时间我看到腾讯云的促销广告,其“轻量应用服务器”首年的费用才85元(配置:1核CPU,2GB内存,50GB磁盘,带宽4Mbps,流量包500GB/月),可谓相当便宜,于是入手一台,安装了Ubuntu系统,用于一些简单的测试场景。

轻量应用服务器(Lighthouse)是新一代面向中小企业和开发者的云服务器产品,具备轻运维、开箱即用的特点,适用于小型网站、博客、论坛、电商以及云端开发测试和学习环境等轻量级业务场景,相比传统云服务器更加简单易用,并通过一站式融合常用基础云服务帮助用户便捷高效的构建应用,是您使用腾讯云的最佳入门途径。 

阅读更多

[原创] 过劳死和穷死,你希望哪一个先来?(二)

努力活着」
当你有一个机会可以过上朝九晚五的轻松生活,我劝你考虑清楚要不要抓住,打鸡血并不适合每一个人。

♫ 前言
 

    当几位拼多多员工悲伤离世、拼多多退出央视春晚红包合作项目的新闻已经逐渐被人们淡忘,而郑爽代孕的新闻却飞遍大街小巷抓尽眼球的时候,你是否依旧还记得996的苦?

阅读更多

[原创] 过劳死和穷死,你希望哪一个先来?(一)

最近又有两位拼多多的员工去世,而这距离上一个商汤科技的一位技术岗员工英年早逝才刚过了几周。
你没看错,是两个拼多多的员工!其中最近的一个,是昨天(2021年1月9日)才跳楼自杀的!

拼多多的工作强度就不说了,只要你是一个互联网人,一定会听说有多可怕。996算什么?太小儿科了好吧?
拼多多希望员工是个“本分”的人:当拼多多的员工月工时达到300小时,其系统会显示“您已本分”。有没有觉得这个词让人特别不舒适?把人当没有感情的动物看待吗?
大家可以算一下除去休息日,每天要工作多少个小时?没达到这个时长的员工就是不“本分”?有没有刷新你的世界观人生观价值观?
2020年10月,拼多多董事长黄铮在公司5周年讲话时号召全员开启“硬核奋斗模式”,多位员工证实,买菜业务线的员工此前实行超级大小周(工作13天休一天)后来演变成全无休,每天工作时长约12小时。

阅读更多

[原创] 如何把别人共享的Google Drive目录完整拷贝到自己的Google Drive里

假设别人共享了一个Google云端硬盘(Google Drive)的目录,里面有很多大文件,你想把这个目录拷贝到自己的Google Drive里,那么,把它们全部下载到本地、再上传到自己的Google Drive里的做法未免太傻了一点——不仅速度慢,而且太耗流量。

不通过本地中转的“云拷贝”是一个好办法。
Google Drive Copy Folder就是这样一个Google Drive web app,它可以把你有权限访问的Google Drive目录,完整拷贝到你自己的Google Drive指定目录下。
但是要注意,这不是Google官方开发的工具,对安全性有顾虑的人请谨慎审视。

阅读更多

[原创] 使用Apache DataFu中的Coalesce()简化Apache Pig的三元运算符

来看这个例子。有数据文件 1.txt,内容为:

a[\t][\t]c
[\t]f[\t]g
h[\t]k[\t]
[\t][\t][\t]
其中 [\t] 表示制表符(tab),并不是真的在文件中写了 [\t]
在Pig命令行交互模式下加载这个文件,并把其中为空(NULL)的列替换成一些数字:

A = LOAD '1.txt' AS (col1: chararray, col2: chararray, col3: chararray);
B = FOREACH A GENERATE (col1 IS NOT NULL ? col1 : '1') AS col1, (col2 IS NOT NULL ? col2 : '2') AS col2, (col3 IS NOT NULL ? col3 : '3') AS col3;
DUMP B;

输出:

(a,2,c)
(1,f,g)
(h,k,3)
(1,2,3)

代码非常简单:如果第一列col1为空则替换为1,如果第二列为空则替换为2,如果第三列为空则替换为3。
这里使用了三元运算符 ? : 来做这个判断,写法非常丑陋。

阅读更多

[原创] 调戏了一番度娘"最先进"的PLATO-2预训练模型之后,我还是回到了和人类交谈...

plato-2 network arch
(莫慌,这图是拿出来撑场面的,我可能和你一样看不懂)

前言:这是一篇很不严肃的实验文章。每一个会修电脑的人,都可以很容易地照着本文的描述,自己去操作一遍。

大概一周前,百度不是发布了一个“取得重要进展”的对话生成网络 PLATO-2 吗?我当时一看到那消息,精神就来了,为什么?这得先从解释一下“这玩意是干什么用的”说起——毕竟,这篇文章要让每一个群众都能看得懂,大家好才是真的好。

近日,百度发布对话生成网络 PLATO-2,宣布在开放域对话生成模型上迎来重要进展。PLATO-2 承袭 PLATO 隐变量进行回复多样化生成特性,模型参数高达 16 亿,涵盖中英文版本,可就开放域话题深度畅聊。实验结果显示,PLATO-2 中英文对话效果已超越谷歌 Meena、微软小冰和 Facebook Blender 等先进模型。

咳咳,这些专业术语说的是什么鬼?
如果你完全看不明白这段话,只需要知道:它说的是和NLP(自然语言处理,一门机器学习的分支学科)相关的一些东西。
可能有的人只听说过这段话里提到的“微软小冰”——她的主要功能就是一个【聊天机器人】,和小米的“小爱同学”颇为相似。
“小爱同学,帮我把空调打开!” “好的,开啦!”
——相信这样的场景,早已飞入我国千千万万寻常百姓家。
所以,百度发布的这个 PLATO-2,它可以用来做“小爱同学”的大脑,也就是最核心的那一块功能。不过现实中的“小爱同学”远比这个复杂,在这里只是做一个比喻而已。

阅读更多

[原创] PHP 7.0 升级到 7.3

✔ 为什么要升级PHP版本
就是这么逗逼,从PHP 5.4升级到7.0之后,WordPress又升了几次版本,让PHP 7.0又成了明日黄花(不是“昨日黄花”啊同志们,成语要用对),虽然7.0还能用,但是每次进WordPress后台看到的“PHP版本太旧”的提示很碍眼,于是我下定决心要把它升级到当前最主流的 7.3 版——本文写作之时,是2020年7月。
以下步骤只适用于CentOS 7系统(具体子版本不确定能支持到什么范围)。
 
 怎样升级PHP版本最方便
这回我就没有那么幸运了,虽然还是可以用yum来安装PHP相关的package,但是安装好之后有很多问题导致不能用,折腾了好些时间才搞定。作为一个平常工作中完全不用PHP的人,我太难了。

阅读更多