Posted in: Biology Science, Python

7天用 Flask 开发完一个生物信息学数据库的体会

这不是教程,而是我的随笔✏️

以前,做普通计算时用 Perl,开发数据库网页后台却用 PHP,然后前端还要用 JavaScript,简直要把人折腾死。后来普通计算从 Perl 转到 Python,发现 Python 有个工具叫做 Flask 可以代替 PHP 作为网页后台,那就方便了,能省用一种语言。

第一个 Flask 开发的工具是 2019 年刚开始学 Python 时开发的一个 Pipeline,不涉及数据库查询,只是接收输入、后台计算,得到结果,页面只有一个,比较简单。

这次开发的是真正的数据库,多个页面,需要与 MySQL 对接,而且也有 Pipeline 的内容。一共花了 7 天时间。生物信息学数据库与传统IT不一样的在于它多为纯查询类,不允许用户进行数据的增加、删除、修改,看起来应该很简单,但由于经常涉及到后台计算,可能还会碰到多线程分配问题。下面列条目说一下体会:

Posted in: Language

日语常用汉字表

日本有个官方的PDF格式的常用汉字表。这是日语汉字读音和字型的基准。不在表里面的汉字就可以写成假名了。

但是 PDF 格式的文件搜索起来太麻烦,比如要搜个什么字的读音,会搜到一大堆不相关的文字。好在它有个网页版,虽然网页版搜索也不方便,但是可以把它复制到 EXCEL 里面啊。复制之后我发现格式十分整齐,第一列是汉字,第二列是读音(假名),第三列是词语例子,第四列是特殊读音。由于第一列是合并单元格,直接筛选也不方便,所以我用了一些技巧调整了一下,就可以按照汉字筛选了。

Posted in: IT

docker是什么

姐妹篇:conda是什么

我也是想追赶时髦的人:2019年追了Python/Flask,两个月前追了conda,上周开始追了docker。docker的基础教程网上自然也有,本文不介绍。本文还是讲这个问题:docker到底有什么用?

Conda解决了这个问题:在老服务器(例如CentOS 6)上安装Python 3.8、R 4.0、Perl 5.26等不同版本的软件,而且是在没有root权限的情况下。但是Conda不能帮你去设置软件,比如某个软件需要读取并设置指定的配置文件、需要设置端口号、配置HTTP服务器等,都得手工操作(正是,说的就是那些web端的软件:web app、web 数据库网站,等等)。

如果一个软件仅仅是在终端运行命令、添加几个参数、输出结果,那docker确实没啥用。但如果说的是上述那种需要繁琐配置的,docker就派上用场了。

我的github里面有个Python Package就完美地反映了这种情形:

Posted in: Language, PC/macOS

MacOS利用命令行来进行外语听写

上中小学时经常听写语文、英语,想想老师也挺不容易,需要自己把单词列表打乱再逐一读出来。现在技术进步了,不知道听写方式是否有改变?理想的听写方式至少应该是这样:

  1. 列表顺序必须随机,而且每次都应该不同(废话,否则顺序都记住了,没有听写效果)
  2. 进度由用户自己控制
  3. 发音的音色,至少应该男女交替。然后再此基础上可以考虑加入其他音色。即男1-女1-男2-女2……
Posted in: IT, Python

Conda是什么

可能在很多网上都能找到跟Conda相关的教程。那么Conda到底有什么用呢?其实它的主要目的就是解决这种千古难题:

如何在老服务器(例如CentOS 6)上安装Python 3.8?R 4.0?Perl 5.26?而且你可能没有root权限?

在Conda出现之前,这个问题基本束手无策。Conda出现之后这个问题迎刃而解,所需要的前提只有一个:你拥有足够大的硬盘空间。在Conda下你的操作场景可能是:

Back to Top