Mythsman


I wonder how the world builds software.


Tools


  1. 利用 FFmpeg 将视频转换为 GIF 操作指北

    背景 在写技术文档的时候,为了演示方便,经常需要插入一些短小的视频资源。比如一些操作的录频、一些经典视频片段、一些科普动画等。由于展示的地方通常是网页,而如果是插入视频之类的资源,通常需要占用额外的存储,而且也需要可用的视频播放器的支持,非常不便。对于命令行操作的回放,我们可能会采用 Asciinema [https://asciinema.org/],但是这个方案对非终端的操作无法模拟。一个常见的方案是把需要的资源转换成网页支持的 GIF、WEBP 格式等动图。考虑到各大浏览器对 GIF 格…

    Linux, FFmpeg, Tools, Gif阅读全文

  2. Python依赖管理的一些思考

    前言 之前一直比较抵触用 Python ,很大一部分原因是觉得 Python 项目的环境管理比较混乱。Node.js 有 Npm 包管理工具,通过 package.json 配置项目依赖,最多再通过 nvm [https://github.com/nvm-sh/nvm] 来进行环境切换;Java 有 Maven [https://maven.apache.org/] Gradle [https://gradle.org/] 来进行包管理和项目依赖配置,并体现在 pom.xml 和 build…

    Python, Conda, Linux, Tools阅读全文

  3. Ngrok内网穿透简单上手

    背景 这两天想跟异地的妹子一起玩《泰拉瑞亚 [https://www.douban.com/game/10755861/] 》。直接用steam的联机非常卡,而自己的电脑又没有公网IP,于是最简单朴素的想法就是搞一个内网穿透,将自己本地的IP映射到一个公网IP上。 natapp 一开始是打算用natapp [https://natapp.cn/] ,但是这个东西的免费版会经常强制换域名换端口,非常难受。而收费版虽然不算贵,但总觉得挺浪费,可能也不怎么用却一直要续费。 后来想到natapp其实…

    Tools, Linux阅读全文

  4. IntelliJ常用配置备忘

    前言 最近IntelliJ又由于自己的骚操作给弄崩溃了,导致之前弄的一大波配置又找不到了,十分蛋疼的又要开始重头开始弄环境。很多之前精心搞过的配置又都记不住了,为了防止以后出现这种情况,这里就把我日常用的配置和注意点记一下,免得以后又要重新摸索。尽量持续更新。 安装 安装这块没啥好说的,不过要注意的是,虽然 IntelliJ 有 Community 版,但是毕竟还是少了一些东西的,比如对JavaScript的支持、一些静态检查的支持、Spring框架的整体支持等等。因此还是不要太委屈自己…

    Java, Tools阅读全文

  5. Shell解析处理XML方法汇总

    前言 前几天干活的时候遇到一个需要解析处理xml文件的一个需求,当时考虑到逻辑比较复杂,因此用java慢慢搞了搞。不过这个需求经常会变,每次变化之后都要重新找到jar包的代码,改了之后还要替换原来的jar包,一来不方便修改,二来不方便统一保存代码,三来也不方便查看jar包的功能。 其实对于这种比较灵活的功能,最方便高效的做法是采用一些脚本语言,比如python,ruby等等,开发效率高,而且也能处理一些复杂逻辑。但是由于种种原因,工作中有的机器没有安装这些语言的解释器。因此不得已,研究了一波用s…

    Shell, Linux, Tools, XML阅读全文

  6. 利用Graph-tool进行图的可视化处理

    前言 最近恶心的项目中期检查,我被分配到做社交图的分析,然而事实上我并不知道弄啥。虽然不是我自己答辩,但是考虑到还是不要太坑dalao,我决定不管怎样至少得搞点图撑撑场面免得尴尬,这几天就赶鸭子上架倒腾了下 graph_tool 这个专门用于对图进行可视化的python库。虽然网上中文资料不足,但是他的英文文档还是非常全面的,很多设计的小细节也在文档里提及了,非常简单容易上手。下面就从一个初学者的记录下我的学习历程。 安装 虽然是个python库,但是毕竟是要做大量数据计算的,因此grapht…

    Python, Tools, Graph-tool, BigData阅读全文

  7. 关于Ascii-Art的一些总结

    前言 好久没写博客了,倒不是因为最近没在学习,而是觉得最近学得有点太多,一时无从下笔。知识这种东西真是奇怪,真的是懂得越多才知道自己懂得越少。虽然这个真相经常会给我一种无力感,但是我还是会沉浸在了解一件事情的来龙去脉的过程中。唔,看来学习也是会容易让人上瘾的。。。 不过最近在学习的过程中,我渐渐也明白了一点,那就是碎片化的学习效率那是惊人的低。我曾经十分推崇学习一个技术的时候,先上手,然后遇到一个问题就解决一个问题。但是后来慢慢发现,这样经常会导致我们花很多的时间去解决那些在这个领域里非常基本…

    Computer Vision, Ascii Art, Anecdote, Tools阅读全文

  8. 用Unoconv工具将DOC,PPT批量转为PDF

    前言 最近需要在网页上做一个对于文档的预览功能,但是这个预览功能基本只能对pdf格式的文件进行处理,而不能对doc、ppt之类的格式进行处理(毕竟微软爸爸)。因此为了能够方便的显示所有的文档,并且统一管理,我需要找到一个能将doc、ppt这些文件方便快捷的转成pdf的工具。当然,word、ppt这些软件本省有到出成pdf的功能,网络上这类转换工具很多,但是用起来也是不太方便,而且这当中垃圾软件也不少。 仔细想想,实现这个功能无非有两个途径,一是利用微软自己的api。不过这显然有点麻烦,还要自己写…

    Tools阅读全文

  9. 利用CSF防火墙屏蔽恶意请求

    问题 最近不知道为什么,恶意代理的请求数越来越多,明明我返回的都是403Forbidden,但是由于数量实在庞大,还是消耗了我大量的带宽和资源。之前的方法已经没有用了,想了半天还是研究研究防火墙吧,虽然仅仅靠Apache也能对某些IP进行黑名单设置,但是感觉还是有点麻烦的。比如最常见的用iptables,或者是ufw,虽然都能很好的做到管理,但是他们基本都需要一条一条的加,十分麻烦。 网上搜索了下,找到了一个挺方便的小工具--CSF(ConfigServer & Security Firewal…

    Linux, Tools阅读全文

  10. Juniper SSL VPN 连接方案汇总

    前言 之前研究了用反向ssh外网连接内网的方法,但是具体使用的时候还是发现当需要连接的端口比较多的时候,一个端口一个端口进行反向映射是一个非常麻烦的过程,而且很容易出错,用起来十分的麻烦。况且当内部网络比较大的时候,点对点的反向映射又根本不现实。事实上,很多学校和公司为了方便学生和员工远程登录内部网络,都会自己部署一套VPN系统。显然,这套东西用处这么广,肯定有“成熟”的产品供大家使用,这套产品就是Juniper SSL VPN系统。 Juniper的SSL VPN产品可针对个别使用者与使用者…

    VPN, Tools, SSH阅读全文