- 浏览: 49683 次
- 性别:
- 来自: 武汉
-
最新评论
-
jamesqiu:
Grails 1.0.3 的package还是有些问题,我的c ...
GRAILS 生存环境 -
cuiyi.crazy:
Groovy是动态语言,动态语言的性能肯定要慢一些,这个我想不 ...
GRAILS 关于性能 -
3322:
netbeans 6.5对grails支持还可以,当然没有id ...
GRAILS IDE -
casephoen:
domain和controller都可以加package的,例 ...
GRAILS 生存环境 -
MaiKuraki:
太耗内存了!~
GRAILS IDE
文章列表
最初接触Ruby是从阅读code generation in action开始的,那时是2005年, spring 刚刚流行,struts 2还没有出现, DHH刚用Ruby on Rails震撼了世界。Erb除了用于RoR还用于code generation。
后来在一个项目中用instiki作为项目wiki,从而初步接触了Rails, ...
my experience, however, the simpler method has never worked on large software development efforts and the costs to recover far exceeded those required to finance the five-step process listed.
--Winston Royce
这个人wiki可以查到, waterfall模型的提出者,人家1970年的文章明确表示,大型开发根本不能用waterfall。
文章链接: http://www.cs. ...
rails 3 thin nginx 部署
- 博客分类:
- rails
本着日行一善的原则,今天把直接thin 跑的rails 3 站点部署到nginx上了。
最初的想法使用passenger和ree+nginx,结果可耻的失败了,原因和gems的load路径有关系,把load_path解决了,结果说正常的程序有问题。本着拿得起放的下的原则,放弃使用passenger,决定采用thin。
我的系统是rhel 5
先装nginx,
通过 cat /etc/*release 查看到rhel的版本,
然后通过新建/etc/yum.repos.d/nginx.repo文件添加nginx的rpm source
写道
[nginx]
name=nginx ...
合同在线填写的form设计是一个令人头疼的问题。对于合同填写一般有两种模式。
第一种,按照合同格式设计表单,将input项嵌入到合同中。优点是上下文清晰,input的描述简单,输入可以对照纸质部分进行录入。缺点是输入人比较难于获取必须输入项的位置,错误信息不能inline表示,页面设计较为复杂。
另一种模式将输入项提取出来,按照一般的表单进行设计。优点是设计简单,缺点是无上下文关联,表单input的label描述难于精准。而对于长表单的设计,现行的搞法分为三种,一种是不作为,一种是使用wizard模式,另外一种比较新的处理方式是accordion,具体设计可参照http://www.alis ...
前几天在windows下用jruby创建了个应用,用了geokit的gem,连接的是sqlserver的数据库。
geokit在jruby下是由于使用的是jdbc-mssql的adapter,名称和matz ruby环境下的不一致,所以会报找不到adapter的错,只用把名称改为SQLSever就可以了。
但是还会出个问题,就是geokit中的geo_scope后不能跟limit,报distance field不识别,看sql log发现jdbc的limit通过生成row_num然后通过row_num in range的搞法搞定,这是jdbc adapter的个bug,懒得理他,直接用array ...
最近手贱,觉得虚拟机下跑rails不爽,就在windows下跑。结果装个railsinstaller版本的ruby 1.9.2在win7下跑,刷新个页面动不动报ruby挂了,需要重新rails s。后来g了一下发现是ruby 1.9.2在windows下的bug。
为了不动不动rails s,决定用asp.net mvc3 + ef4 code first,后来实在不想被mvc3中的html attribute的复杂和ef 4对我心爱的postgre没有支持,决定改用ironruby。
装了ironruby,结果用igem install rails就失败,一方面是我所在的网络太瓷器,另一方 ...
One Instance One Box这句话是tom kyte这个oracle 大牛说的。大牛的意思是不要自己没事在一个物理或者虚拟的机器Box里面折腾出一堆Instance,否则的话,你将面临更多的IO竞争,内存竞争。因为你多开了很多后台进程或者线程,用以维持一个个的Instance。最终,你得到的是永远失去优化的机会。
我前几天就碰到一个事情。我们有个系统下面有很多的分点,每个点都有相对独立的数据。这个系统为了做到所谓数据隔离和事务隔离(美其名曰一个点垮掉,其他点不受影响),结果一口气在一台8g内存的机子上搞了8个instance,结果是隔一阵子只要有一个instance 的内存占 ...
SOA架构是有一系列服务之间相互交互构建成应用网络的架构体系。它的目标是松散耦合,基本单元是服务。
无论是新系统或者是遗留系统都要逐步改造成服务的形式进行发布。但如何将这些系统包装成服务,或者说包装成多大的服务,that's a question。
从面对对象到SOA,粒度问题始终是一门艺术。艺术不仅仅依靠逻辑,而且依靠经验和感觉,也就是sense。但是sense的来源,按照很多牛人的认识,来自于哲学观,这也是和我们从小接受正确人生观,世界观和审美情趣教育的思维是一致的。
SOA的哲学我认为和UNIX的哲学相类似,就是任何应用(服务)只做一件事情,但是要把事情做好,应用之间通过管道等机制结合成更 ...
没有救世主,这是国际歌里唱到的。也是我党我国一直奉行的基本原则之一。
在软件项目开发中,该基本原则也同样适用。有关该原则最著名事物就是《No Silver Bullet — Essence and Accidents of Software Engineering》这篇上世纪80年代出现 ...
程序是什么?程序是人类思想的一种表达。
在《没有银弹》中,描述程序开发是将数据、数据之间关系、逻辑和函数表达出来的一种载体。由于概念本质需要人类来表达,因此没有任何一种开发语言或者工具能够完全替代人类的行为。
比如说我们只想编个程序表达一下问候,那就是简单的hello world程序,在perl这种语言内一行就可以搞定。但是如果我们需要解决一个复杂的业务问题,那就需要几万行或者更多的代码将问题解决。
为什么会用这么多代码??因为就算用自然语言把这个事情描述清楚就要几本书,何况你想要计算机理解这个事情,并且按照业务本省的规则去做,那当然需要很多的内容来表达,也就需要很多的代码。
所以程序本身是一个 ...
为什么大型项目会失败?这个问题困扰了许多软件开发者和软件公司很多年。
首先何为大型项目,有一种观点就是超过了10000行有效代码的就可以称作为项目,而超过100000行代码的项目就可以称作大型项目了。另一种观点是认为 ...
最近在做“十二五”信息化规划,渐渐研究到企业架构这一主题上来。
所谓企业架构,他并不是组织架构,也就是它不仅仅单独是一个管理架构,而是一个将IT和管理结合在一起的架构。企业架构主要侧重的是企业中那些相对本质的东西,奠定了企业的发展和革新的基础。
企业架构定义为一系列用于设计和实现企业组织架构、业务流程、信息系统和基础设施的原则、方法和模型。
为什么企业架构要将管理和IT结合在一起?
原因很简单,现在的企业没有不利用IT开展业务的,也没有业务不涉及到信息处理的。同时外部条件也在发生变化,就算某个企业还是使用传统的方式在处理业务,但是在和外业的交互当中,他要么转换到IT世界中,要么被抛弃。
所以 ...
前几日和某人感慨,要树立专家的形象,必须要能说、能写。能说是以口头的形式将思想传播出去,能写是以书面的形式将思想表达出去。当然,如果你没有思想,肯定是既不能说,也不能写的。
有些IT人士总以为程序写的好,系统干的棒就可以成为专家。但根据温伯格在《程序员心理学》里说道的那样,程序写的好只是个主观的评判标准,系统干的棒很多也是自以为,如果以业务的角度来看都不一定。我认为真正的专家应该将业务精通于心,同时以自己的想法去改变整个业务环境,也就是立言。这和我国古代的人要成大家必先以著作等身为前提不谋而合。
Joe on software 中间说程序员招募中重要的一条是看他的写作能力,如果能在纯粹左脑思考 ...
在一次政府项目中,我第一次听到双核驱动这个名词。
这个用在CPU中的名词被富有创造力的国人移植到项目管理的组织结构中,看上去的确很美,后果却很严重。
由于权力的均衡,一个侧重于业务和一个侧重于技术的两个表面上属于同一系统的不同的单位在项目的建设方向和具体的实施过程中起到了相互抗衡的作用,结果甲方自己就没有统一的意见。乙方在无所适从的同时,利用甲方意见的不统一在关键问题上采用拖延的态度,造成了项目进度严重落后,项目最后陷入失败。
这又是一个因为管理因素导致项目失败的例证,将作为反面教训收藏到我个人的项目库中。
越是大的项目越是需要有统一的系统的决策机构,不允许存在分歧的管理机构。双核驱动只能使本 ...
周五,突然有被要求在下周一系统上线之前帮忙完成一个之前没有接触过没有任何文档的系统的测试工作,而且要求规范。
听起来觉得不可思议,但实际上的确发生了。
解决办法是不做,当然你要有足够的魄力,动用可能用到的各种手段来逃避这项不可能完成的工作。
具体的解决步骤如下:
1.按照PSP的原则声明我虽然乐意做这份工作,但是为了保险起见,我需要在工作开始之前对工作量进行一个整体的评估,按照我个人的能力制定详细的计划。这个计划需要时间来完成。
2.根据计划,这个任务是无法完成。原因是缺乏测试文档,而且任务不明确,不知道测试是在什么级别展开。
3.根据正常的软件测试过程,需求过程和测试需求确认过程是v字型的。
...