穷爸爸富爸爸 – 阅读笔记

这本书解决了不少让我迷茫的问题,感觉还不错。主要讲了一些财务的问题,以及打工的价值,当老板的价值。有些人可能一辈子就打工了,有些人则不同。有些人一辈子都不懂,有些人很小就懂了。

书中有不少夸张的地方,辩证思考^_^

Read More

Ubuntu 装机总结

本以为常年 Ubuntu 装机小达人的我不会再出现重装的失败的情况,不想,竟然成功将自己的重装次数刷新到30次(仔细想想,不应该是30次,应该是50次都有了吧)。

绝望之余,打算记录一下自己装机的心路历程。

  • 首先很恶心的一件事,Ubuntu 安装的时候如果网络环境不好,那么安装程序会闪退。基于 Ubuntu 的 mint 就没有这个问题。可见 Ubuntu的安装程序写的有多么不鲁棒。。(WTF)。
  • 再一个事情,cuda 最近(2019-03-19)安装不上了。我不知道是内核的原因,还是 header 的问题,反正就是安装不上了。我想尝试一下 runfile,看看能不能安装上,如果不能安装,那么我打算在网上找一个教程。我连 cuda 都没能装上,真不知道是哪里出了问题。
  • 装不上的表现是,mint 无法进入图形界面,并且键盘和鼠标都没有反应。-.- 我的天啊。

Read More

编程语言与知识基础

随着一部分编程经验的增长,我越来越觉得,是在知识基础上实现应用的工具。 最初,在我进行应用编码的时候,往往让我 stuck 的东西就是基础知识。这种基础知识,比如 WSGI,session,cookie 这些东西;以及过于焦急的学习心态。总想做出点什么,但是却没有意识到做出一个东西需要积累和时间。 语言的重要性在于,大量的使用语言会让你更了解你所使用的,与计算机交流的方式。这个很重要。语言使我们本身就站在巨人的肩膀上处理事情。因此,专注于一门语言在最初是十分重要的,因为我想很多人像我一样急于求成,并且很难按下心来慢慢学习知识基础。 意识到的时间似乎有点晚,但是不算太迟。我也能够花一些时间在知识基础上,使得事情解决的更加清晰。 还有就是硬件。想象中总是很美好的,但是实际上编程过程中,若是不考虑硬件,不考虑拓扑是不可取的。这是视角割裂。最近一直都在读一些软件工程方面的书,但是读的越多,越不敢说。 潜意识里,读的越多越发现自己懂得少,害怕自己说错。 就这些,算是给 2018 年读者的一个交代。

Read More

将已经运行的进程切换到后台

之前一直都是用 screen 来后台运行 Linux 进程,但是 screen 对于已经在运行的进程就不方便处理了,这个时候怎么办呢? 0. Run some SOMECOMMAND 1. ctrl+z to stop (pause) the program and get back to the shell 2. bg to run it in the background 3. disown -h so that the process isn’t killed when the terminal closes 4. Type exit to get out of the shell because now your good to go as the operation will run in the background in it own process so its not tied to a shell 套路摘选自下面的连接。 https://sites.

Read More

Django tricks

关于 session django.contrib.sessions.middleware | Django documentation | Django session 是使用 cookie 来进行判断的,通过 session_cookie_name 来提取,然后通过 SessionStore() 来保存。 因此,Django 也是通过 sessionid 来区分用户;(或者其他什么名称)。 使用 cache 作为全局变量 cache.set(‘foo’, ‘bar’) # another function cache.get(‘foo’) # get ‘bar’ 使用 cache , django-redis 是一个好方法。可以在使用 cache.lock变量,在应用层面加锁,来完成异步操作,还可以支持分布式应用,十分方便。

Read More

Ubuntu 多显示器方案

https://wiki.archlinux.org/index.php/HiDPI#Multiple_displays 多显示器方案。 使用 `xrandr` ,输出当前存在的screen Screen 0: minimum 8 x 8, current 7680 x 2160, maximum 16384 x 16384DP-0 disconnected (normal left inverted right x axis y axis)DP-1 disconnected (normal left inverted right x axis y axis)DP-2 disconnected (normal left inverted right x axis y axis)DP-3 connected 3840x2160+3840+0 (normal left inverted right x axis y axis) 510mm x 287mm1920x1080 59.

Read More

My Keras tricks.

记录了一些使用 keras 的技巧。 categorical_crossentropy vs sparse_categorical_crossentropy. 3. The Answer, In a Nutshell If your targets are one-hot encoded, use categorical_crossentropy. Examples of one-hot encodings: [1,0,0] [0,1,0] [0,0,1] But if your targets are integers, use sparse_categorical_crossentropy. Examples of integer encodings (for the sake of completion): 1, 2, 3 clip norm https://wulc.me/2018/05/01/%E6%A2%AF%E5%BA%A6%E8%A3%81%E5%89%AA%E5%8F%8A%E5%85%B6%E4%BD%9C%E7%94%A8/ 可以加速 RNN 训练 Multiple GPU # https://keras.io/utils/#multi_gpu_model# 使用多GPU,注意使用 save 的时候,传参传 model (multi_gpu_model的model参数) Encode Labels 可以把不同的字符[‘aa’, ‘bb’, ‘cc’, ‘aa’] 编码成 [0, 1, 2, 0]

Read More

为你的 Docker 项目集成 ELK

https://github.com/twtrubiks/docker-elk-tutorial

基本上按照这个配置就可以了,创建 @timestamp 这一步,可以用如下脚本替代 Postman

$ curl -XPOST -D- 'http://localhost:5601/api/saved_objects/index-pattern' \
    -H 'Content-Type: application/json' \
    -H 'kbn-version: 6.5.4' \
    -d '{"attributes":{"title":"logstash-*","timeFieldName":"@timestamp"}}'

这也是 tutorials 中,使用的 ELK images 给出的。

https://github.com/deviantony/docker-elk

Read More

使用 beego 一键生成 API

首先要吐槽一点:beego 的文档对于新手实在是太不友好了。

beego 的官方文档会出现一些问题,比如 tutorials 里面,应该是 beego run 而不是 beego run hello

beego 是啥

beego 是 golang 的一个 web 开发框架,集成了不少远 golang 没有的有价值的函数,对于快速开发高性能的 go 应用有不少帮助。

如果想开发简单的 go 应用,其实可以不使用 golang 框架,因为 go 本身就定义为云计算时代 C 语言,很多功能其实以及包含了,没有必要学习一个框架给自己增加不必要的麻烦。

Read More