本博客已经迁移到新站点: https://blog.duyidong.com

2016六月学习小结

不知不觉进入ThoughtWorks已经快两个月了,两个月以来不能说没有变化,但是心境确是经历了起伏波折,七月的主题是,危机,让我存活。

阅读更多

Ansible学习小记

Ansible是什么

借助官网上的一句话,ansible is a simple IT automation, 即ansible 是用于IT自动化管理的一个工具

阅读更多

程序员入门之git

代码版本管理工具

在生产环境下的开发过程中,一个工程的代码通常是有多个程序员协同完成,这就涉及到代码在不通终端的同步问题,基于此需求,我们产生了代码版本工具,目前比较主流的两种为git和SVN

阅读更多

ThoughtWorks第一周学习总结

关于一周来学习情况总结

不知不觉进入TW已经一周了,深感自己离成为一个合格的TWer还有很长的距离。在学习的过程中离不开总结和分享,在TW最棒的就是可以随时和身边的技术牛人们分享自己的学习心得,时时总结,有助于梳理自己的知识体系,巩固自己的学习方法。正所谓“时时勤拂拭,莫使惹尘埃”。

阅读更多

CI/CD

Agile Development

Before we talk about CI and CD, I think we should figure out why we need them, so we have to talk about Agile Development first.

阅读更多

RDBMS和NOSQL的技术差别

创新的背后往往会刺激痛苦。这一点在PDD(我们亲切地称为痛处驱动开发)软件开发领域尤为真实。从上世纪80年代以来,我们就都知道如何处理关系型数据——只要把数据放到关系型数据库管理系统(RDBMS)中,就可以使用SQL语句操作数据。然而,在过去几年来,我们的行业采纳NoSQL数据库的趋势在增长,数据不见得都在关系型数据库中存储了。

阅读更多

敏捷开发

敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

阅读更多

一次完整的HTTP事务是怎样一个过程

当我们在浏览器的地址栏输入 www.linux178.com ,然后回车,回车这一瞬间到看到页面到底发生了什么呢?

阅读更多

单元测试

如果你听说过“测试驱动开发”(TDD:Test-Driven Development),单元测试就不陌生。

阅读更多

Redis、Memcache、MongoDB性能总结

Redis、Memcache、MongoDB有哪些区别?

阅读更多

关于爬虫你不得不知道的几个库

关于python爬虫

首先解释一下爬虫的原理,就是使用代码模拟浏览器动作通过HTTP协议远程和服务器进行交互,理论上只要是人能操作网站做的事情爬虫都可以做,比如登录,注册,获取信息,但是爬虫有两大壁垒,一个是IP禁止,一个是验证码,前一个基于网站的用户管理,后一个则基于高深莫测的图像识别(机器学习)。

阅读更多

Python函数调用小技巧

python的兴起其中一个不容忽视的因素就是他的简洁和易读,要想写好python代码以下几个方法你不得不知道:

阅读更多

HTTP协议详解

这是一篇想写了很久却迟迟没有动笔的题目。
从开始接触爬虫,或者说接触web开始,你就是在和http协议打交道了,我想web这个职业只要http协议不过时应该就不会有太大的变化。

阅读更多