`
17studio
  • 浏览: 200078 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论
文章列表
软件开发的目的:按时按质按量完成软件 从目标可以看出,有以下技能的人员组成: 1、按时 - 项目管理人员 2、按质按量 - 项目产品指导 3、完成 - 开发人员 按微软的实践,我们把上面三类人员分别定名为: 1、Process Manager 2、Product Director(也可以叫做feature manager) 3、Architect、developer 毫无疑问,一个人是可以兼任多个角色,但是无论从现在的科教水平、实践水平或是从个人能力的深入发展,甚至可能还有一些性格、成本、文化等因素,按上述三个方面把人分开是很有好处的 从我个人的理解,上述角色的层次分别为: 1、Proc ...
今天很幸运听到了msn的全球架构的相关讲座,终于把自己的眼界再次提高了一次 从以前的mailsystem到现在的架构,以及对比全球级别的方案,思维从技术提升到产品模式上,这一进步,是很大的一步 嗯,也帮助我进一步认识了,什么是架构师
mangos记录一下该服务器引擎的名字,现在大规模网游的门槛又进一步降低了。。。 其实还看过darkstar的实现,把darkstar的数据库模式和mangos结合一下,挺好,中间的数据层用sqlite,再结合erlang的一些节点管理机制,就完善得多了 为了更好的业务,应该考虑引入一些工作流的机制,当然,这个在实现的时候,一般都不是叫工作流的
1. asp.net 1.0因为其表现和逻辑捆绑的代码结构方式,容易惹出代码混乱的祸, 2.0好很多,开发效率较好,微软的支持方案很丰富 2. php, ruby on rails开发效率高,但大型应用的案例较少 3. java的学习成本比较高,虽然其发展成熟,但是在很多中小型的应用环境下,并不是最佳的选择,java的开发建议学习fullstack等所谓的一揽子制造方案,如appfuse/rife/grails,嗯推一下springside,呵呵 web应用的特点在于认为用户的互动性很低,这是其实现时严重依赖的一种方式,可以使用http长连接和pushlet等方式解决,但需要较大的性能消耗(j ...
技术人员负责实施产品,产品人员负责构思产品,双方各有职责 我们可以把产品人员看成主管,把技术人员看成手下,主管负责提供信息给手下做什么事情,但是,下属也有可能完成不了,或者完成得不好 我们期望中的理想状态是:主管交代一个事情,下属可以做得很好很出色。这样的话,需要主管清楚了解手下能做什么事情,需要多少人做什么事情。 同样的,考虑技术和产品的关系,通过沟通,让产品了解技术的能力所在,才能让双发互动起来。
研发部是一个每月的投入固定的部门,其成本跟随时间而变化,如何更够更好利用研发部门的成本,提高产出,有以下几个层面的考虑 1. 减少浪费,不要让部门空闲起来 2. 提高士气,提高技术水平 3. 做有效的事情,做正确的事情,做有价值的事情
国内有人推荐的2D开源引擎 (C/C++)   1. HGE (今年开源) 2. libsdl及各种扩展包 3. http://alleg.sourceforge.net/   收费的,有下面几个口碑也还不错,应该有很多成熟的作品   1. 古月 (国内的) 2. Torque 2D delphi版本的也有几个
在学习计算机的过程中,高性能服务器曾一度是我的工作领域,从实验室到公司,算是对这方面有一些粗浅的了解,既然博客中都谈到了现在关心的各个方向,不妨也把旧日的内容,记录一下 主要是两方面的 1. 数据库实现 2. 网络服务器( 邮件系统、棋牌服务器,网游服务器) 琢磨着逐渐加入的内容会包括 1. 操作系统 2. 文件存储 3. ..... 这是一个很广泛深奥的领域,充满乐趣 把google在这方面做的努力也记录一下GFS, MapReduce, BigTable
本栏目是在做以下事情时的摘录随笔 1. 技术选型及学习过程 2. 开发设计 3. 架构相关
经历过许多的项目开发后,总结一下哪些因素是对产品(包括开发效率和产品质量)影响至深的 在整体的开发流程清晰明确后,有以下因素影响开发效率 1. 技术选型 2. 方案设计 3. 学习成本 4. 工作态度   上述因素的factor,工作态度可能只有20~30%左右的影响力

开宗明义

本栏目谈的是两方面的内容 1. 如何实现更好的产品,更好的产品质量 2. 如何实现更好的管理,更好的开发效率   有鉴于此,本栏目所涉及的内容,以方法论为主,以随笔形式记录一点一滴
这个话题是相当的职业化,呵呵,我们通常会面临需要实现一个很宏伟的项目,但是却经验能力不足,这个时候,我们可能唯一拥有的资本是时间。 对于需要持续改进的软件系统来说,有以下几个思路 1. 采取内部熟悉的技术进行设计,使用重构配合系统的改进而发展,并请该行业的资深人员给予评审 2. 招聘合适的技术人员负责系统的设计,由原有的开发人员负责实现 让新人(指没有该系统开发经验的开发人员)直接面向最终目标进行项目的开发,并不是好的思路,这意味着很高的学习成本和甚至不可控的危险,上述的两种方案都可以避开高昂的学习成本(当然,内部人员坚持持续学习会有效降低成本,这需要HR人员的努力),同时规避技术风险,只是,如 ...
1. 不可否认,因为不同语言的分工,整个行业的分工,导致技术人员的成本在不断降低,这也是整体趋势 2. 软件行业这些年来发展得更快的是如何把软件开发工业化,但这跟软件行业一直以来致力于提供弹性的解决方案给客户始终存在相当的矛盾,这种矛盾将随着软件行业工业化进展到一定程度而减少到一个很小的地方,但是却无法永远消除 3. 在这种矛盾没有消除以前,人的自身创造力还是对软件行业有着决定性的影响,不过,这种影响将会越来越少,从公司氛围全面讨好开发人员到只讨好中高层人材,就是最好的例证,可以相信,在未来的5~10年,大多公司的竞争力将发展成为依赖规范化和个别架构师的能力和经验,大浪淘沙,这个时候剩下的,要么 ...
1. c/c++提供了性能和跨平台能力的处理手段,java是不需要考虑的。在一个需要建设底层设施的环境要求下,c/c++才能胜任,不过,随着软件行业的发展,现在这种环境是越来越少了 2. java更关注实现用户的需求实现,不需关心跨平台特性就是一个很贴心的考虑,这也是java业务开发框架和实现框架全面繁荣的基本原因,使用java可以更好地贴近用户的想法,考虑如何满足用户的需求 3. c/c++和ruby, python等脚本语言的结合,有取代建设在虚拟机上的java的能力,这意味着需要用c/c++搭建一个虚拟机平台(语言和环境功能提供的解析器),不可否认这样的开发思路,对c/c++的要求是很高的 ...
1. memcached做为后端的话,用这个作为客户端http://bleu.west.spy.net/~dustin/projects/memcached/ 2. quickserver虽然可以用,但是扩展性是不可能比得上mina和cindy的 3. oscache和memcached比较起来,适用范围不同,原生的java cache可以很好融合到数据库缓冲层,而memcached则是一些临时数据的最好存放地 4. 用memcached的原因,是因为它的多客户端支持,这令很多异构系统都有更好的整合机会 5. acegi是个不错的安全管理方案,可惜和spring关联太深  
Global site tag (gtag.js) - Google Analytics