首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何写好 DevOps 的文档

写好 DevOps 的文档其实也是一门技术活儿,这里给大家分享一些组织运维脚本及其文档的经验。 ?...Fabric的任务管理与文档 在以前的文章中,我们曾经介绍过Glow使用了fabric来执行各种日常管理的任务。Fabric提供了非常好用的任务组织以及查阅任务文档的功能。...是如何实现的),并将其添加到函数的docstring之后。...动态外部文档 除了docstring,我们也经常需要写独立的外部文档。在Glow,这些文档绝大部分都是用Markdown来写的。...这是一个很简单的技术,但对于保持文档与实际环境同步很有帮助。 小结 几乎所有人都承认文档的重要性,但真正愿意在文档上花费精力的团队却十分有限。

68830
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    学界|如何捕捉冗长讨论里的目标信息?谷歌推出最大标注数据集

    AI科技评论按:很多读者在思考,“我和AI科技评论的距离在哪里?”答案就是:一封求职信。 信息爆炸时代,如何在浩瀚如海的网络中找到自己的需求?...这些网上讨论的往往是许多重要的主题下的关键信息资源,如养育,健身,旅游等等。不过,这些讨论中往往还夹杂着乱七八糟的分歧,幽默,争论和铺垫,要求读者在寻找他们要的信息之前先过滤内容。...使用我们的语料库,我们演示了如何分析话语行为,可以描述不同类型的讨论,包括话语序列,如问答配对,分歧链,以及不同的社区中的表现。...最后,我们进行实验,使用我们的语料库预测话语行为,发现结构化预测模型,如在条件随机场合下可以实现F1得分75%。我们还演示了如何扩大话语行为,从单一的问和答到更丰富的类别。...此外,我们演示了如何使用我们的9个话语行为在只标签了问题和答案的模型,整体提高Q&A抽取的召回性能。 对于机器学习和自然语言处理的研究人员试图描述在线讨论的性质,我们希望这个数据集是一个有用的资源。

    906140

    如何养成写文档的习惯

    作为程序员和其他的技术工作人员,写文档其实是一个很好的习惯,这个习惯会让自己的思维更加的清晰,自己的内心也更加的清澈。 写文档是用来理清自己思维的,大脑就像是一个房间,而知识就是一本又一本的书籍。...可以打个草稿,写下当前的想法。然后再对这些想法进行梳理,去掉一些不切实际的想法,最后留下的想法就是内心最真实的想法。然后将这些整理下来,写成文档进行记录。...坚持习惯 要养成坚持写文档的习惯其实不是一件容易的事情,但是如果一件事觉得有兴趣,可以维持一段时间,但是真的要想坚持下去,需要至少三个月到一年的不断坚持。...这个过程将不再是一腔热血能够支撑的了的,而是每天需要忍受不知道写什么的痛苦。但是只要坚持下去,后面就慢慢的觉得写文档是和吃饭睡觉一样的事情了,不会有什么期待和痛苦,而是觉得一件必不可少的事情。...markdown文档的管理在坚果云上。 结语 坚持写文档,并养成习惯,这将会对自己有很大的帮助。希望每个做技术的人都有写文档的习惯,不管是否分享,都值得去做下去。

    79620

    如何实现多人协作的在线文档

    为了避免涉及到公司隐私,所以文章中一些数据结构的设计和非关键场景都写的比较简略。我们主要从需求分析、方案设计、技术选型等几个方面介绍如何实现多人协作的在线文档。...需求分析 我们借鉴领域驱动模型的思路进行需求分析。需求中包含人和文档两个实体。人的主要属性有:用户ID、用户名。文档的主要属性有:文档ID、文档内容、创建者、创建时间。...创建文档 前端发送文档名称、文档内容给服务端 服务端生成唯一的文档ID,从Token中获取到用户ID,获取服务器时间然后把数据一起存入数据库中 服务端返回文档ID给前端 修改文档 这里的修改是指修改文档的内容...所以我们最好只发送变化的内容给服务端,让服务端根据当前文档内容和变化内容合并生成最新的文档内容。 如何发送变化的内容呢?我们可以把用户对文档内容的操作分成三类:新增、修改、删除。...查看文档 前端发送要查看的文档ID给服务端 服务端根据文档ID返回文档内容 删除文档 前端发送要删除的文档ID给服务端 服务端根据文档ID删除对应文档 权限管理 当前需求的权限场景特别适合ABAC的权限模型

    3.9K50

    如何注释你的文档-doxygen版

    首先,Doxygen在不做任何额外的工作下可以很容易地把我们的代码生成相应的HTML格式的文档。然而,你也可以通过嵌入类似如何使用你声明过的类的用法的注释使之更有用。...学习Doxygen的C++注释方法很容易。有很多注释的格式可以被Doxygen认同,参见Doxygen的官网,尤其是这个部分,当然也仅仅是一个子集而已。...,注释也可以在其后面, 3) 注释有两种方式:简单的(一行)或者详细的或者两者都有, 4) 把类型代码的注释(类和用法描述)放在.h文件里,而不是在实现文件(.cxx)里。...代码前的详细注释 加一个额外的‘*’ /** This is a method that does so * much that I must write an epic * novel just...代码前的详细注释 加额外的‘*<’ void DoNothing(); /**< This is a method that does so * much that I must write

    87220

    如何实现多人协作的在线文档

    为了避免涉及到公司隐私,所以文章中一些数据结构的设计和非关键场景都写的比较简略。我们主要从需求分析、方案设计、技术选型等几个方面介绍如何实现多人协作的在线文档。...需求分析 我们借鉴领域驱动模型的思路进行需求分析。需求中包含人和文档两个实体。人的主要属性有:用户ID、用户名。文档的主要属性有:文档ID、文档内容、创建者、创建时间。...创建文档 前端发送文档名称、文档内容给服务端 服务端生成唯一的文档ID,从Token中获取到用户ID,获取服务器时间然后把数据一起存入数据库中 服务端返回文档ID给前端 修改文档 这里的修改是指修改文档的内容...所以我们最好只发送变化的内容给服务端,让服务端根据当前文档内容和变化内容合并生成最新的文档内容。 如何发送变化的内容呢?我们可以把用户对文档内容的操作分成三类:新增、修改、删除。...查看文档 前端发送要查看的文档ID给服务端 服务端根据文档ID返回文档内容 删除文档 前端发送要删除的文档ID给服务端 服务端根据文档ID删除对应文档 权限管理 当前需求的权限场景特别适合ABAC的权限模型

    3.8K20

    设计师如何管理自己的文档

    三种有效管理文档的方法:文件夹/文件规范命名文档版本控制云盘同步备份通过以上三种方式的配合使用,能有效的帮助我们实现以下目标:通过规范命名:对项目文件/个人文档进行分类,方便查找文档版本控制:减少自己对文档的复制备份...,自动构建关键历史版本,即使误删也能找回,按需         求还原到某一个历史节点的文档状态云盘同步备份:对十分重要的文档进行同步备份,有修改则会马上实时备份我们已经知道了这三种方法,又应该如何去落实实现呢...而我们正是需要如同在线文档一样的方式来管理我们工作时产生的诸多设计文件,有了这样的版本控制,我们不需要担心正在处理的文档会被覆盖,我们唯一要专注的就是手头的文件,进行保存。如何达到这样的目的?...(空间有限,私密性差) 个人使用时的流程,只需要切断远程服务器的连接,即可构建本地的Git项目管理,如果需要云端服务可以使用Github临时创建项目仓库,项目完结后可以删除,节省空间 接下来,介绍下本人如何使用...已修改(modified):就是你修改了在git管理下的文件已暂存(staged):就是将你修改的文件放在缓存区中,等待处理已提交(committed):就是在你的本地确定了你这次保存在缓冲区中的文件与上一次

    1.3K00

    如何写出好的产品帮助文档?

    作为一名互联网程序员,如果你不知道如何写一份好的技术文档,你会不好意思向别人打招呼,更不用说制作好的产品了。...文档的开头必须通过介绍产品或方案的价值与用户建立联系,让他知道产品或方案与他的工作密切相关,这可以帮助他优化工作。接下来是让用户知道什么是产品或方案,以及如何使用它。这实际上类似于软件研发的过程。...在此基础上,我们可以开始考虑文档应该包含什么,如何安排和设计目录章节,以更符合用户的学习规则。...如何帮助用户获得控制感或安全感? 全景视图 全景视图,让用户有上帝的视角,从整体上把握产品或方案,这个视图不会包含太多的细节。...监控微服务 第四部分,除了知道如何使用本产品外,用户还将关心如何在日常使用过程中操作和维护,是否有一些配套工具或管理控制台,借助其监控微服务的运行,以及微服务的控制和治理。

    1.1K30

    如何添加及使用QtCreator的帮助文档

    开发Qt程序的时候,由于C++和Qt类库的丰富性,我们不大可能记住大多数类的细节,但记住他们其实也无必要,因为QtCreator给我们提供了非常详尽的帮助文档,下面一起来看看怎么操作吧!...首先,Qt在主流平台Mac、windows和Linux中都有很好的支持,下面以Mac和Linux为例进行讲解。 第一步,点开综合设置窗口。...你应该看到如下图所示的很多以 org.qt-project开头的帮助文档。 ? 如果没看到以上文档,或者只看到很少一部分(以我的Qt5.7为例,总共有56个文档),那么第一个任务是添加这些文件。...这些文件的后缀是qch,如下所示。 ? 在百度上很容易就可以下载他们,或者直接到到这里下载:http://pan.baidu.com/s/1o7TTSdc,下载完了点击下图的Add......最后啰嗦一下怎么使用帮助文档,最简单的方式,就是在需要查询帮助的标识符上,直接按下F1即可: ? 除此之外,还可以点击主界面左侧栏下方的Help,查看所有你感兴趣的话题和条目。试试吧!

    5.2K30

    如何写出优雅的开源项目文档

    摘要 mall项目是我去年写的SpringBoot实战电商项目,现在在Github上面已经有18k+star。去年12月份的时候,mall项目只有一些必要的说明文档和部署文档。...最近使用docsify搭建了一个小型的文档网站,希望大家能有更好的阅读体验。本文将介绍如何使用docsify来写开源项目文档。 项目文档演示 ?...展示图片 使用docsify来写项目文档 docsify简介 docsify是一个动态生成网站的工具,它不会将.md文件转化为.html文件从而污染你的Github提交记录,所有转化都将在运行时完成。...安装docsify-cli工具 在命令行中执行如下命令: npm i docsify-cli -g 安装完成后可以方便地在本地实时预览所编辑的文档。...展示图片 在Github上部署文档 首先将你的代码提交到Github上去; 然后点击项目的Settings按钮: ? 展示图片 开启GitHub Pages服务: ?

    1.4K20

    python如何获取word文档的总页数

    遇到了一个问题,就是要进行doc文档的解析。并且需要展示每个文档的总页数。 利用AI....langchain中提供了很多开箱即用的功能,比如文档解析、文档拆分, 向量比较、摘要提取等。 在文档解析中,就有对于word文档解析的方法,这在个方法中,我们可以间接获取文档页数。...所以无论我们使用paged还是使用elements,都可以从返回结果(集合)中通过获取page_number的最大值,来得到该文档的总页数。...局限性: 这种方法也不是没有任何缺点,但是整理来说还是相对准确的。确定就是有的时候,文档明明是三页。但是解析出来的结果可能是两页。...给一个例子吧: from fitz import fitz doc = fitz.open(pdf_path) print(doc.page_count) 问题主要在于word如何转为pdf, 我这里使用的是

    61700

    如何DIY你自己的Typora文档

    引言 作为开发者,你还在用 Word、Txt 去记录日常事项和文档吗? 你是否在编写这些文档的时候发现页面样式单一,显示杂乱。而且在引用代码时还会有各种各样的格式问题?...无论你是学生,抑或是工作三五年的互联网打工人,还是像教师、公务员这样经常需要写文档和报告的群体。只要你写过了 Markdown 样式的文档,就一定会爱不释手。 什么是Markdown?...段落 3.1 代码块 在软件文档的编写里,最重要的部分就是代码块的展示格式。...2)文档内跳转 文档内部跳转的格式和外部链接类似,不同的是 Markdown 格式下,内部链接跳转只支持跳转到标题: [文本内容](#6....效果如下: 百度一下 2)文档内跳转 文档内部跳转的格式和外部链接类似,但是需要自己在文档内需要跳转的地方添加一个标签。

    61940

    如何优雅的生成接口文档?

    那么如何才能优雅的生成接口文档呢?   这里,我首先给出如何生成接口文档的小demo地址,在下面介绍中,有不懂的,可以参考项目注释来看。...所以接口文档和实际代码的一致性是比较重要的。...由于接口文档的不够规范,描述不够详细,对于接口文档的需求方会造成困扰。   ...以上便是关于接口文档的一些痛点,可能你就会开始想,优雅的接口文档,应该满足如下特性:   一、自动生成满足接口规范的文档   二、能够跟随代码实时更新   那么应该怎么办呢?...Swagger 官方网站:https://swagger.io/ 3、普通版工具-springfox-swagger-ui   多的不说,我们直接进入正题,如何在项目中引入swagger呢?

    1.7K30

    MongoDB 如何查看文档的大小

    如何查看文档的大小?常见是查看集合中平均文档大小,但很少查看单个文档或者特定范围文档的大小甚至查看文档中字段长度大小?...通过查看官方文档来解答如上问题,默认返回都是字节为单位(byte),以下整理自官方文档以及jira. 1、查看集合中文档的平均大小 mongos> db.tms_province_agg_result.stats...().avgObjSize; 304 2、查看集合中单个文档或者单个文档大小,只能查看单个文档 Object.bsonsize() 2.1 统计集合满足条件的单条文档的大小 --find...   {"$match":{"_id":{"$gt":2}}},    //计算每一条文档的大小    { $project: { name: "$name", object_size: { $bsonSize...db.images.aggregate([ //通过match匹配满足条件的记录 {"$match":{"_id":{"$gt":2}}}, //计算每一条文档中binary的大小

    4K20

    调用线程不可捕捉异步线程的异常,如何处理?

    一 背景描述 Java的异常在线程之间不是共享的,在线程中抛出的异常是线程自己的异常,主线程并不能捕获到。...你这里的代码使用的是RuntimeException,你可以试试使用必须捕获的异常,编译器会报错,因为你在另一个线程中没有做任何异常处理。 那么我们如何对异步线程出现的异常进行处理呢?...一 对于单独线程的异常捕捉 在Thread中,Java提供了一个setUncaughtExceptionHandler的方法来设置线程的异常处理函数,你可以把异常处理函数传进去,当发生线程的未捕获异常的时候...thread.setUncaughtExceptionHandler(new ThreadException()); thread.start(); } } 二 对于线程池如何进行异步线程异常捕捉...下面给线程池对于不可捕捉异常也提供了多种方式去处理: 1. run方法里面try/catch所有处理逻辑 public void run() { try { //处理逻辑 } catch(

    2.5K30

    如何使用IPGeo从捕捉的网络流量文件中快速提取IP地址

    关于IPGeo  IPGeo是一款功能强大的IP地址提取工具,该工具基于Python 3开发,可以帮助广大研究人员从捕捉到的网络流量文件(pcap/pcapng)中提取出IP地址,并生成CSV格式的报告...在生成的报告文件中,将提供每一个数据包中每一个IP地址的地理位置信息详情。  ...报告中包含的内容  该工具生成的CSV格式报告中将包含下列与目标IP地址相关的内容: 1、国家; 2、国家码; 3、地区; 4、地区名称; 5、城市; 6、邮编; 7、经度;...8、纬度; 9、时区、 10、互联网服务提供商; 11、组织机构信息; 12、IP地址;  依赖组件  在使用该工具之前,我们首先需要使用pip3包管理器来安装该工具所需的依赖组件...广大研究人员可以使用下列命令将该项目源码克隆至本地: git clone https://github.com/z4l4mi/IpGeo.git  工具使用  运行下列命令即可执行IPGeo: python3 ipGeo.py 接下来,输入捕捉到的流量文件路径即可

    7.4K30
    领券