GitLab Flow的使用

相较于SVN等老旧的版本控制系统,使用git进行版本管理会让分支和合并更加容易。git允许更多样的分支策略和工作流。相比较于git出现以前应用的方法,现在几乎全部的方法都得到了改进。但是现在很多组织仍然使用一个没有明确定义的,过度复杂的或者是没有集成错误追踪系统的工作流程来工作。因此我们推荐gitlab工作流作为最佳的实践方式。它整合了feature driven development和有issue跟踪的feature branches。

打造工程师文化可以做的十件事

我作为面试官最喜欢问工程师的问题是要告诉我在他们以前的公司,他们喜欢和不喜欢的关于工程师文化的事。

前豆瓣首席架构师:如何保持团队的技术氛围?

在技术团队建立起技术导向的价值观、良好的工程师文化,才能保持一个技术团队的创新与活力。

谈谈持续集成、持续交付、持续部署之间的区别

经常会听到持续集成,持续交付,持续部署,三者究竟是什么,有何联系和区别呢?

fir.im 持续集成技术实践

互联网时代,人人都在追求产品的快速响应、快速迭代和快速验证。不论是创业团队还是大中型企业,都在探索属于自己的敏捷开发、持续交付之道。fir.im团队也在全面实施敏捷,并推出新持续集成服务— flow.ci ,以帮助企业将开发测试流程自动化,更快速地交付产品。

构建与定制:唯品会 PaaS 基于 Kubernetes 的实践

数人云上海&深圳两地“容器之Mesos/K8S/Swarm三国演义”的嘉宾精彩实录第三更来啦。唯品会是数人云Meetup的老朋友,去年曾做过RPC服务框架和Mesos容器化的分享。本次分享中,嘉宾王成昌分享了唯品会在Kubernetes上两年的PaaS实践,干货满满诚意奉上~

Java调用Selenium WebDriver在Firefox下测试示例

本文使用Java的Selenium WebDriver来做一个简单的测试示例,主要介绍如何调用Firefox浏览器测试。

泛型中 ? super T 和 ? extends T 的区别

<? super T>表示包括T在内的任何T的父类,<? extends T>表示包括T在内的任何T的子类,下面我们详细分析这两种通配符的区别:

Java8新特性之接口默认方法

Java 8新增了接口的默认方法。简单的说,默认方法就是接口可以有实现方法,而且不需要实现类去实现其方法,只需要在方法名前面加个default关键字即可实现默认方法。

Log4j配置SocketAppender发送日志至远程服务器

服务端配置(1)服务端配置文件log4j-server.properties#Define a narrow log category. A category like debug will produce some extra logs also from server itself log4j.rootLogger=ERR