浅谈我的编程之路——感谢引领我的leader
在开发的道路上,就始终无法避开版本控制,哪怕你是独自一人进行开发,版本控制也是有必要的,从最早开始使用CVS,到后来使用SVN,再到git,最后又回到了SVN,但是不知道为什么真的对SVN很无爱。
现在工作的地方,使用的是SVN,我每天都得把自己修改过的文件单独的提出来,然后以相同的目录路径打包好,然后提交到测试版本库目录下,然后再交由其他人用ftp对服务器上的文件进行覆盖
然而每天这样创建对应的目录创建文件都已经快把我逼疯了,幸好我自己写了一个脚本来自动的执行这个过程,但那是在我忍受了一星期那样繁琐而枯燥的工作之后,然后我不禁想起了当初使用git工具自动同步的更新代码的时光。每次写完代码之后,执行一下git commit 和git push命令,然后瞬间就同步到服务器了,也正是这种简单的过程,让我喜欢上了测试。
这里我不得不介绍一下我的第一位BOSS---ES,我觉得是他帮我打开了这个领域的大门,他曾经一直反复的强调的习惯,依然响彻在我的耳边,尤其是在最近反复的看 了《The Progmatic Programmer》和《重构》,我越来越能感受到他当时的想法,是他让我在无意识的养成一些优秀程序员所应该具有的品质
他没有告诉我该使用面向对象还是面向过程,而是直接让我学会使用设计模式
他没有告诉我,我应该学会使用什么框架,而是直接告诉我,框架只是告诉你不该做什么,而不是能做什么
他从来不去看我写的代码,只是反复的告诉我,千万不要重复你自己
遇到难题的时候,他不会告诉我应该去什么地方寻找资料,仅仅说了一句简单的话:使用英文
他总是的强调着,要做一个挑剔的程序员,不管是对自己的程序还是对生活
他说,开发的过程应该是一种享受,而不是一种枯燥而又反复的繁琐过程,
他喜欢用双屏显示器,喜欢用linux操作系统
或许他不是一个好领导,但是我觉得他是一个优秀的程序员
虽然当时我不能很好的理解他,但是现在我能够感受到他那种厌恶重复的心情
学会使用git,拥抱github,融入bitbucket,告别不断覆盖文件的噩梦,Webhooks可以让你在使用git push的时候,请求bitbucket的webhooks去调用服务器上的.php文件,发送linux的shell命令去git pull远程仓库的代码,达到同步更新
我是一个懒惰的程序员,我只想告别重复,放飞思绪!
浅谈我的编程之路——感谢引领我的leader的更多相关文章
- 浅谈.Net异步编程的前世今生----APM篇
前言 在.Net程序开发过程中,我们经常会遇到如下场景: 编写WinForm程序客户端,需要查询数据库获取数据,于是我们根据需求写好了代码后,点击查询,发现界面卡死,无法响应.经过调试,发现查询数据库 ...
- 浅谈.Net异步编程的前世今生----EAP篇
前言 在上一篇博文中,我们提到了APM模型实现异步编程的模式,通过使用APM模型,可以简化.Net中编写异步程序的方式,但APM模型本身依然存在一些缺点,如无法得知操作进度,不能取消异步操作等. 针对 ...
- [转帖]浅谈响应式编程(Reactive Programming)
浅谈响应式编程(Reactive Programming) https://www.jianshu.com/p/1765f658200a 例子写的非常好呢. 0.9312018.02.14 21:22 ...
- 浅谈Windows API编程
WinSDK是编程中的传统难点,个人写的WinAPI程序也不少了,其实之所以难就难在每个调用的API都包含着Windows这个操作系统的潜规则或者是windows内部的运行机制…… WinSDK是编程 ...
- 浅谈PHP面向对象编程(二、基础知识)
和一些面向对象的语言有所不同,PHP并不是一种纯面向对象的语言,包PIP它支持面向对象的程序设计,并可以用于开发大型的商业程序.因此学好面向对象输程对PHP程序员来说也是至关重要的.本章并针对面向对象 ...
- 浅谈C#网络编程(一)
阅读目录: 基础 Socket编程 多线程并发 阻塞式同步IO 基础 在现今软件开发中,网络编程是非常重要的一部分,本文简要介绍下网络编程的概念和实践. Socket是一种网络编程接口,它是对传输层T ...
- 五 浅谈CPU 并行编程和 GPU 并行编程的区别
前言 CPU 的并行编程技术,也是高性能计算中的热点,也是今后要努力学习的方向.那么它和 GPU 并行编程有何区别呢? 本文将做出详细的对比,分析各自的特点,为将来深入学习 CPU 并行编程技术打下铺 ...
- 新手浅谈Task异步编程和Thread多线程编程
初学Task的时候上网搜索,看到很多文章的标题都是task取代thread等等相关,我也一直以为task和thread是一类,其实task是.net4.0提出的异步编程,在之前.net1.0有dele ...
- 浅谈iOS网络编程之一入门
计算机网络,基本上可以抽象是端的通信.实际在通讯中会用到不同的设备,不同的硬件中,为了能友好的传输信息,那么建立一套规范就十分必要了.先来了解一些基本概念 了解网络中传输的都是二进制数据流. 2.了 ...
随机推荐
- 深入理解Java虚拟机之读书笔记一 自动内存管理机制
一.运行时数据区域 1.程序计数器是线程的私有空间,每个线程都有.针对线程执行的是Java代码还是Native代码有两种取值,Java代码时:虚拟机字节码指令的地址:Native代码时:计数值为Und ...
- .net 默认时间格式不正确
经测试发现,有时通过在“日期.时间.语言和区域设置”里面设置是无效的. 对应键值为HKEY_LOCAL_MACHINE"SOFTWARE"Microsoft"OLEAUT ...
- ruby on rails validates uniqueness
最近在处理一个小功能,每个元素可以有多个图片,每个图片的name表示了它是背景图还是海报图, 需要对每个元素的图片name做一个唯一性验证,一个元素不能添加两个海报图, 需要使用的是validates ...
- Android学习笔记(二十)——自定义内容提供器
//此系列博文是<第一行Android代码>的学习笔记,如有错漏,欢迎指正! 如果我们想要实现跨程序共享数据的功能,官方推荐的方式就是使用内容提供器,可以通过新建一个类去继承 Conten ...
- [BZOJ3991][SDOI2015]寻宝游戏
[BZOJ3991][SDOI2015]寻宝游戏 试题描述 小B最近正在玩一个寻宝游戏,这个游戏的地图中有N个村庄和N-1条道路,并且任何两个村庄之间有且仅有一条路径可达.游戏开始时,玩家可以任意选择 ...
- Units Problem: How to read text size as custom attr from xml and set it to TextView in java code
Here is this topic’s background: I defined a custom View which extends FrameLayout and contains a Te ...
- linux文件远程传输客户端shell脚本与分布式客户机时间同步脚本
#!/bin/bash # 将代码和脚本传送至worker节点 # 改变当前工作目录 cd ${AMAZONCRAWLER_HOME} #读取worker节点ip列表 i= while read li ...
- 11.5---含有空字符串的字符串查找(CC150)
注意,1,"" 和 " ".是不同的,空字符串指的是"": 2,注意String的compareTo.小于是指<0.并不是==-1: ...
- 同级兄弟元素之间的CSS控制
为了实现这个导航效果:选中菜单中某一项,隐藏掉自身的左边背景线条,同时让他的下一个兄弟元素也隐藏掉线条. 有一种选择器就叫兄弟元素选择器,分为临近兄弟和普通兄弟. 临近兄弟:用 + 表示,只匹配该元素 ...
- vSphere Client无法连接到服务器 出现未知错误的解决方法
VMware ESXi服务器虚拟机在正常使用过程中,有时候会突然出现远程连接不上的问题,那么这个时候使用vSphere Client连接会出现如下错误: 虽然连接不上,但是可以ping通,所以分析有可 ...