Vale敏捷开发协作和领导人Jean Tabaka

Vale是一种命令行工具,可将类似代码的棉絮添加到散文中。-Golang开发 用于散文的语法感知型linter的设计考虑了速度和可扩展性。 淡水河谷:您的风格,我们的编辑:sparkles:是否希望支持PCRE正则表达式(环顾四周)? 60多种语言的最新NLP? 看看我们的3x10筹款活动! Vale是一种命令行工具,可将类似代码的棉絮添加到散文中。 它是快速,跨平台(Windows,macOS和Linux)且高度可定制的。 文档•官方维护的样式•Vale Server(桌面应用程序)•Vale Studio(规则编辑器):red_heart:Sponsors Hi! 我是@Vale的唯一开发人员jjkato。 如果你想 立即下载

敏捷开发社区失去了Jean Tabaka,一个有思想的领导者、影响因素,也是一个很好的朋友,她在这礼拜初去世。她最著名的是她作为一个敏捷开发人员在CA科技(从前的Rally软件),以及她是《协作解释:软件产品的领导者的引导技术》的作者。

\\

59b7c3aa46d93f51e3f355ee32df4e94.png

\\

Rally软件的前首席执行官Tim Miller在他agility@sea博客的社区中宣布了这个消息:

\\
\

今天我得知一个亲密的朋友和同事Jean Tabaka,去世了。Jean是一个非常特别的人,她有独特的影响并将世界变得更好的能力。当被问及是什么使Rally变得特别,我永远都会说是协作和珍贵的Jean。

\
\\

他还反映了许多人们关于她对敏捷开发社区影响的看法:

\\
\

她是一个很可爱的人,一个在敏捷开发和协作的世界中伟大的、有思想的领导人,也是我共事的同事中最有天赋的人之一。Jean,不计其数的受你恩惠而感动的人都会非常想念你。

\
\\

她以优异学业成绩作为一个密苏里大学的大学学者毕业,并且她还在密歇根州立大学攻读了法语文学的硕士学位、在约翰霍普金斯大学攻读了计算机科学的硕士学位。在她的早期职业生涯中,她在美国政府和企业中,例如Sybase和Siebel,做了许多不同的软件开发职位。她在2003年加入Rally,并且正是这个职位使她能够指导、教学并分享她在此领域的激情,包括协作、创新和领导能力。用她自己的话来说,她是一个公路战士,她在全世界许许多多大会和聚会中发表了大量的演讲和keynote。

\\

2012年,Yves Hanoulle在他的Who Is Agile的博客(和相关书籍《Who Is Agile?》)中简要描述了Jean,并且询问她什么是她获得的最大成就:

\\
\

当我从现在往回看我的一生时,我彻底地敬畏自己所做到的事和成为的人。我成为了对我的工作、我的同事和我所在的社区有难以置信的激情的人。我成为了喜欢付出的人,我也收获了许多东西。并且我都是用我自己的名义在付出。由于我长时间以来只考虑了别人,我认为很少人会做到这样,所以这真的是我最大的成就:我一直在做真正的自己。

\
\\

她的书《协作解释》在2006年出版,并且一直是top敏捷书籍清单中的推荐书目。可能相比较于敏捷开发社区来说这很少有人知道,但她也是1995年出版的《Sybase Sql Server物理数据库设计》的合著者。InfoQ在2006年发表了对《协作解释》的评价,其中作者David Spann得出了下面的结论:

\\
\

Jean Tabaka作为一个老师、顾问和《协作解释》的作者,她的努力给世界带来了令人赞叹的洞悉。这些洞悉包括协作的形成方式,好的协作者用以协助团队更高产的技术,以及保证协作者们第一次的努力是计划周详的模版。

\
\\

在2010年,Jean与Liz Keogh和Eric Willeke共同工作并创造了一个被命名为“一个思考者的社区”的陈述,目的在于挑战敏捷开发、Lean和Kanban社区。这个陈述的最后一句话是:

\\
\

我是思考者社区的一员。如果我应该对别人更有促进作用,我认为那些启发我的人对我来说是一种礼物。

\
\\

基于这个礼拜大量从敏捷开发社区涌入的礼物,Jean既是一个催化剂,又是一个启发大家灵感的人,她会被大家深切地想念的。

\\

查看英文原文:Vale Agile Collaborator and Leader Jean Tabaka

\\

感谢张龙对本文的审校。

\\

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号:InfoQChina)关注我们。

【AI方案集】个人记忆库型AI智能体终身伴侣方案.docx 这套AI技术方案不走“先堆概念再硬套场景”的老路,而是以业务痛点为锚点,把机器视觉识别、预测性分析、大模型知识赋能等能力拆解成轻量化可落地的功能模块,直接嵌入生产运营的关键环节,既能快速落地见效,又能通过持续的数据迭代逐步放大价值,帮企业在不盲目新增硬件投入的前提下,稳步完成智能化升级,实实在在把AI变成能降本、提效、控风险的生产工具。 立即下载

相关推荐

Blender到Unreal Engine高效资产迁移:Datasmith插件工作流详解

在3D内容创作与实时渲染领域,数字资产的无损迁移是连接创意设计与最终呈现的关键环节。其核心原理在于通过高保真的数据转换管道,替代传统离散的导出-导入流程,从而保留完整的场景层级、材质属性和关联信息。这项技术的核心价值在于极大提升了跨平台工作流的效率与数据保真度,减少了因格式转换导致的信息丢失和调试成本。它广泛应用于建筑可视化、产品设计、影视预演和游戏开发等场景,使艺术家能在专业DCC工具中专注创作,并一键同步至实时引擎进行交互式渲染与逻辑构建。本文聚焦于实现这一流程的**Datasmith**插件,并深入解

weixin_34110970的博客 268

Ada之父逝世

右边的是Jean Ichbiah。左边的这位长得很像憨豆先生的老兄是佐治亚州立大学的教授K.N. King。他撰写的C语言教材风行全球,即将由人民邮电出版社引进。这是一个迟到的纪念。著名的嵌入式语言Ada的主要设计者、法国科学院院士Jean Ichbiah,于2007年1月26日逝世,享年 67岁。他的完整生平可以在这里读到。Jean Ichbiah生于法国巴黎,是来自希腊和土耳其的西班牙犹太人后

书 人 事 4276

学习使用turtlebot2——ROS上安装turtlebot2

安装环境:    安装Ubuntu 14.04版本和ROS Indigo    参考:http://wiki.ros.org/turtlebot/Tutorials安装步骤    有两种安装方法,一种直接的安装命令,另外一种源码编译安装,区别在于:直接安装命令是安装在电脑默认路径/opt/ros/indigo/share里面不便于更改代码,因为默认路径下文件一般有访问权限,无法直接更改,需要使用s...

weixin_42670641的博客 2531

Vale完全入门指南:10分钟学会安装和基础使用

Vale是一个强大的命令行工具,专门用于对散文进行代码式的lint检查。这款工具不仅速度快、跨平台(支持Windows、macOS和Linux),而且具有高度可定制性,能够帮助开发者和写作者提升文档质量。🎯 在本文中,我们将通过简单易懂的步骤,带你快速掌握Vale的安装方法和基础使用技巧,让你在10分钟内就能开始使用这个优秀的文本检查工具。 ## 💻 快速安装方法 Vale提供了多种安装

gitblog_00399的博客 986

WiseFlow本地搭建实录---保姆教程

本文介绍了如何从0开始搭建wiseflow的个人情报官的方法,目前所有的API全部都是免费的,对机器没有要求,大家可以放心搭建

liuhui244的博客 1962

摩尔线程GPU实战:5分钟搞定AI模型部署(含Docker避坑指南)

本文详细介绍了摩尔线程GPU在AI模型部署中的实战应用,包括环境配置、Docker避坑指南及性能优化技巧。通过5分钟快速部署指南,帮助开发者高效利用摩尔线程GPU进行AI模型推理,特别针对常见兼容性问题提供解决方案,显著提升部署效率。

weixin_28736335的博客 454

探索智能写作的新边界:Vale - 精准风格检查工具

是一个开源的文本样式和一致性检查器,由 Errata AI 创建并维护。它采用了先进的自然语言处理(NLP)技术,旨在帮助作家、程序员、学生等各类作者提升他们的书面表达质量,确保文风一致、语法准确。 ## 技术分析 Vale 基于 [Git](https://git-scm.com/) 和 [GitHub Actions](https://github.com/features/actions

gitblog_00098的博客 801

自然二进制数与格雷码的相互转换

自然二进制数与格雷码两者优势: 自然二进制数的编码方式简单明了,容易理解,在加减运算中能够直接进行,同时十分方便进行一些位运算操作(如移位、取反等)。 格雷码计数时只有一位变化,可有效减少计数器状态的冗余转换,同时在传输数据时能够减小传输错误的概率,此外带权重编码处理更加方便。 在一定程度上自然二进制数与格雷码优缺点基本相反,综上所述,自然二进制数和格雷码各有优劣之处,需要根据具体应用场景选择合适的编码方式。简单来说,在计数器和编码器中,倾向于使用格雷码;而在进行加减运算时,则倾向于使用自然二进制数。

Loudrs的博客 7494

推荐一款创新编程语言——Vale

推荐一款创新编程语言——Vale Vale Compiler for the Vale programming language - http://vale.dev/ 项目地址: https://gitcode.com/gh_mirrors/val/Vale ...

gitblog_00100的博客 582

Synopsys PCIe IP Loopback功能深度解析与应用实践

本文深入解析了Synopsys PCIe IP的Loopback功能,包括本地数字环回和远程环回两种模式的应用实践。通过详细的寄存器配置步骤和实战案例,帮助开发者快速掌握PCIe芯片验证与调试技术,提升系统开发效率。特别适合PCIe协议相关的硬件工程师和验证工程师参考。

weixin_29198045的博客 530

【目标跟踪】多目标跟踪的评价工具motmetrics怎么使用?

多目标跟踪,通过motmetrics测试评价对应的视频。

聿默的博客 5368

如何借助Vale减少开源社区文档中的负面和偏见语言

来自技术作家Chris Ward的Vale实战

m0_46700908的博客 457

LeRobot 官方论文:一个用于端到端机器人学习的开源库

本文介绍了一个名为LeRobot的开源库,旨在解决机器人学习领域的碎片化问题。该库提供了端到端的技术栈,包括统一的机器人中间件API、标准化的数据集格式(LeRobotDataset)、优化的推理栈以及多种最先进机器人学习算法的实现。LeRobot支持多种低成本开源机器人平台(如SO-10X、ALOHA-2等),通过共享中间件实现便捷的遥操作和数据收集。其数据集格式已广泛应用于社区,截至2025年9月已有16,000多个数据集公开共享。该库还支持流式处理大规模数据,降低了研究门槛。在模型方面,LeRobot

2506_90492529的博客 907

SQL UNION与UNION ALL:去重原理、性能对比与实战避坑指南

在数据库查询中,纵向合并多个结果集是高频操作,而UNION与UNION ALL的选择直接影响查询性能与数据准确性。UNION会按整行去重,需要物化到临时表并执行哈希或排序操作,代价高昂;UNION ALL则流式拼接,效率更高但保留重复行。理解二者底层原理,有助于避免因隐式去重导致业务数据丢失,以及在多表分页、报表合并等场景中合理选型。本文从去重机制、执行计划、性能实测出发,详解列对齐、类型兼容、ORDER BY与LIMIT的陷阱,并给出多表合并、行转列、补维度等实战写法,帮助开发者写出高效且语义正确的SQL

weixin_33812433的博客 394

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

敏捷领导力_选择一名领导人,像一个敏捷主义者

敏捷领导力 队长 我最近阅读了Petri Kainulainen关于团队成员之间共享领导力的文章 ,在这方面,我持同样的观点,因为敏捷方法强调了“有动力的人,应该值得信任”的重要性。 虽然团队领导者可以被视为旧的僵化组织结构的回忆,但我仍然看到拥有这样的队长的许多好处。 在提高我的人际交往能力方面,我喜欢从其他活动领域中汲取灵感,这些领域几十年来一直在面临着同样的挑战。 想想最伟大的运动队...

danpu1174的博客 758

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

人与编码起源

编程不仅仅是工具,也是最前沿思想的汇总

qq_20974385的博客 431

敏捷领导者身份迷途

对于那些接受过敏捷培训、第一次接触Scrum团队或者绞尽脑汁想要在企业范围内推广敏捷的领导者来说,敏捷对他们意味着什么,他们可能会感到惶惑。有人说敏捷领导就是仆人式领导,...

weixin_40768973的博客 277

xt910与cm10

一直关注开源自定rom,可惜xt910锁定了bootloader区域,听说刷了其它它验证不过的rom时,会导致开 不了机,上moto官方看了一下,只有开发版本才允许开锁;基于某些原因,cm团队没有弄xt910专用rom,再看一下xda某某人正在修改cm10,注意了下,是4.1了,只有摄像,某些功能不可用,看来不影响.下载了safestrap安装,重启进入safestrap,备份一下moto的4.0

我的笔记 1185

敏捷项目管理中的领导力

<br />先看一个问题:管理和领导力哪个层次更好?(management vs. leadership)<br />管理是对流程的监管,所有的组织机构都需要流程来保证执行的有效性。管理着重与流程的创建和确保流程的执行。在角色上管理并不决策而是着重于流程的创建以及更新。一个重点就是避免当前系统的失效。 它属于 inward-looking.<br /> <br />领导力则是 outward-looking.它是通过分析现在的系统,通过持续的工作来发现不足,并着重于下一步需要做什么,而不仅仅是管理。领导力偏

从菜鸟到菜菜鸟 2129
上一篇: 专访链家网前端总架构师杨永林:我的8年架构师成长之路
下一篇: CoreOS Linux,为中国用户提供创新型容器技术
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值