05 2011 档案
摘要:算算年头,参加工作已经十多年了。虽然不是计算机专业,但热爱编程,是个老程序员,先后混迹于互联网和企业级应用开发。目前就职于用友集团瑞友科技IT应用研究院。瑞友科技的前身是用友软件工程公司,属于用友集团的成员企业。后改为股份制并更名为瑞友科技。我现在所在的IT应用研究院前身是公司的技术部,后来技术和应用的范围越来越大,2008年正式成立IT应用研究院。IT应用研究院的职责主要是构建公司所需的技术平台和业务平台,还包括技术和应用预研、方向的确定,保证公司的技术和业务的先进性。目前涉及的领域包括企业应用平台、企业移动互联、ERP、物流、电子商务、金融等。主要技术包括JEE相关技术、领域驱动设计、Li
阅读全文
摘要:工作十几年来,我发现书是自己购买频度最高的商品,基本上看见好书就买,或者临时急用的工具书也买,甚至碰到近期不会读的书,觉得不错也就买了。工作前期,薪水还是比较低微的,那时候买书要考虑价格,后来相对好一些,价格已经不再是买书的考虑因素,买书的地点也从实体店转移到了网络。现在算一下,还真想不起来哪本书是在书店买的,或有多久没去过实体店买书了。
之所以爱买书,一方面是因为喜欢读书,另一方面也和自己从事软件行业有关。软件行业对人的要求是终身学习,技术的革新和变化太快,2000年的软件技术和今天相比,完全不是一个量级的。这一点我的哥哥和我形成了鲜明的对比。他是学水利的,毕业后一直在水利设计院工作,30岁以后我感觉他已经很少再学新技术了,因为那个行业技术更新慢,更多的是经验的积累,所以他到现场越来越多,那是为积累经验做准备呢。另外还有第三个因素,也是我很长时间没有意识到的,那就是书的价格。2000年书是几十块钱一本,到现在基本上还是这个价位。而2002年4千元一平米的房子,今天已经变成3万一平了。即使是从整个时代变迁的角度,书也算是涨价最慢的商品之一了,所以,买书是个事吗?
阅读全文
摘要:2011年应InfoQ的邀请,在QCon北京大会上主持了设计优良的架构这个主题。写了主题介绍,并做了企业级软件的组件化和动态化开发实践的主题分享。主题介绍:从第一个软件诞生开始,软件架构就和软件息息相关。软件架构是软件的基础,是描述软件系统框架的语义,包含了软件系统主要的决策信息,包括软件元素的如何组织,如何实现预期的功能、性能、可靠性和质量等,还包括技术选型,集成性,扩展性,一致性等内容,随着软件从个人软件扩展到企业软件系统,再到互联网这个巨大的平台,软件的规模愈来愈大,复杂度越来越高,软件系统的架构设计面临了前所未有的挑战。千禧年之后,江湖盛传,MDA(模型驱动架构)是软件设计的银弹。最后
阅读全文
摘要:RIA Minibook Prologue-RIA迷你书序言Rich Internet Applications, or RIAs, have truly revolutionized user experiences online. When Macromedia first coined that term a decade or so ago, most thought it was a typo. But in a few short years, RIAs have proven to be the logical next phase in application developm
阅读全文
摘要:本人工作了十余载,先后在洪恩软件和用友集团任职,目前任职于用友集团瑞友科技研究院。主要关注领域:企业应用软件平台研发、领域驱动设计,OSGi,动态语言应 用、云计算、移动互联和Mac OS平台相关技术。经历了2000年的互联网浪潮,见证了BS架构的兴起。分布式技术、MDA、AOP、 SOA、OSGi、Cloud Computing、iPhone、Android,各种技术和平台层出不穷、风起云 涌。回首往事,我非常庆幸自己一直在从事软件行业。每次想到围绕着互联网这个纽带形成 的庞大的IT产业生态圈,我就会感觉非常温暖:我一直在参与着,奋斗着,至今仍然身在其 中。我们这样一群人,坚持着自己年轻时的
阅读全文
摘要:Macbook提供了非常简单易用的Internet共享功能,可以做为一个轻量级的家庭无线路由使用。只要你的mbp能够上网,那么你的手机、touch和pad的设备就都可以通过wifi共享mbp的网络,实现无线上网。具体设置非常简单,系统偏好设置->共享->Inernet共享->启动几个步骤,但是每次点这么几下,还是很麻烦,我们通过Apple Script和QS这个神器可以让简单的操作更简单。打开AppleScript编辑器,键入如下代码(供参考):以下代码请根据上图缩进。tell application “System Preferences”activateend tellt
阅读全文
摘要:15寸和17寸的MacBook Pro一般是两块显卡,集成的和独立的,原意是按需切换,但用起来不是那么方便。2009年发布的MBP,想要切换显卡,需要进入节能器的设置中修改图形属性,然后注销才能切换显卡模式。2010年搭载了Intel® Core i5/i7的MBP则是根据判断自动切换显卡模式,但有时会莫名其妙,比如浏览网页时会切换为独立显卡,如果这时是电池供电,就会非常影响续航时间。如果你想完全由自己决定什么时候切换显卡,而且不需要注销这么大的动静的话,gfxCardStatus这款软件是个很好的选择。gfxCardStatus是一款开源的menu bar应用,可以自由确定使用那块
阅读全文
摘要:Flex技术在企业级开发中的应用作者:池建强从我个人的从业经历来看,在长达十几年的软件研发过程中,无论是研发的产品或实施的项目,大部分是在为企业客户提供服务。当然,期间我还从事过两年左右的互联网应用的开发。早期的互联网应用开发和企业级应用开发的区别还是很明显的,无论是技术、架构、业务和用户体验,都有很大的不同。举个简单的例子,比如开发语言,最早在2000年左右,大家都用Perl和Asp做网站,后续陆续开始使用PHP、Ruby和Python这样的动态语言来构建丰富多彩的互联网应用,当然这其中也少不了Flex技术。而为企业客户构建的应用,则更多地倾向于静态语言,比如Java和C#等。当然随着技术的
阅读全文
摘要:我在Mac OS上使用过的浏览器有Chrome、Safari和Firefox,由于做的产品要支持多浏览器,所以这几种浏览器都会用到,Chrome的使用频率更高一些。之前想通过浏览器在线阅读PDF时,一般都会提示进行下载,装了类似iGetter或Folx等下载工具的会直接调出工具进行下载,这是因为浏览器没有第三方PDF插件支持在线阅读PDF,有时候还是很不方便的。幸好Chrome6解决了这个问题,Google在这个版本中增加了一个内置的PDF阅读器插件,不过令人费解的是,这个插件默认是不启用的,不知道Google为什么这么干,其中之一的考虑可能是担心在Chrome中打开大的PDF文件导致不稳定。
阅读全文
摘要:Django真的很强大,用了很短的时间就搭了一个简易的Blog,问题又来了,中文内容存入Mysql中是乱码。经查,Django默认是采用UTF-8编码的,相关文件的格式也都是UTF-8的,问题应该出在Mysql数据库上面。我是在Mac OS10.6.2上装的64位mysql,默认编码,没改过进入mysql,通过status命令查看,果然,编码是Latin1将其改为UTF-8即可解决单独修改某个数据库可用alter database testdb character set utf8;统一修改的话,需要在/usr/local/mysql/support-files下[目录因系统而异],找到下列文
阅读全文
摘要:春节期间研究了一下Django框架,为今年的互联网应用做些储备以前有过两年的Python的使用经验,所以上手并不困难,但在实现Django持久化时遇到了一点问题。Django支持各种数据库,包括postgresql,mysql和oracle,方便起见,用了最常用的开源mysql,这就需要安装MySQLdb。我的操作系统时雪豹10.6.2,系统默认安装了Python,我又装了Mysql下载了MySQL-python-1.2.3c1.tar.gz,然后cd MySQL-python-1.2.3c1python setup.py buildsudo python setup.py install一切
阅读全文
摘要:df和du命令详解df命令详细用法a:显示全部的档案系统和各分割区的磁盘使用情形i:显示i -nodes的使用量k:大小用k来表示 (默认值)t:显示某一个档案系统的所有分割区磁盘使用量x:显示不是某一个档案系统的所有分割区磁盘使用量T:显示每个分割区所属的档案系统名称常用命令:df -hidu-sh * 查看当前各个目录及文件的大小操作详解引用指令 df 可以显示目前所有档案系统的最大可用空间及使用情形,请看下列这个例子:# df -hFilesystem Size Used Avail Capacity Mounted on/dev/ad0s1a 1.9G 389M 1.4G 21% /d
阅读全文
摘要:为InfoQ的RIA迷你书写序,似乎是我的宿命。由于工作原因把这个任务推迟了一段时间之后,后果居然是不仅写了序,还成为了另一篇序的译者。互联网10年,始于2000年。对于互联网来说,那是个最好的年代,也是最坏的年代。互联网泡沫的破灭并没有湮灭技术与创新的光辉,反而为今后的发展打下了坚实的基础。随后互联网开始了10年的高速发展。时至今日,互联网像一条巨大而充满吸力的纽带,把各种IT服务相关的技术、应用和实现都吸引过来,形成了一个完整而庞大的互联网生态圈。在这十年中,互联网从不缺乏优秀的技术创新,其中RIA(富互联网应用)及其相关技术便是其中重要的组成部分。在RIA的江湖中,曾经有一个三足鼎立的传
阅读全文
摘要:2009年,在技术层面可以说是一个风起云涌的年份,互联网像一条巨大而充满吸力的纽带,把各种IT服务相关的技术、应用和实现都吸引过来,形成了一个完整而庞大的互联网生态圈。互联网是IT服务未来的趋势,互联网已经脱离了技术层面的范畴,已经成为人人感知和认知不可或缺的装备,使得人的感知能力和认知能力挣脱了时间和距离的束缚,得到极大的延伸。可以说互联网是人类二十世纪最伟大的发明,是推动新的技术发明和变革的发动机,未来所有IT服务相关的技术创新都将围绕在互联网的周围,因为:互联网已经成为:最大的计算平台最大的数据库最大的社区平台最大的传播市场互联网正演化成为一种公共的基础设施,计算开始变成了一种公共服务,
阅读全文
摘要:我的微博:http://t.sina.com.cn/idreamland随时随地记录自己和世界,keep in touch!
阅读全文
摘要:苹果是一家很独特的公司,第一次真正接触Mac OS是在2001年,当时正在做一款B/S产品,与某家厂商进行OEM合作,对方要求我们把系统移植到Mac OS上,因为他们大部分产品都是基于苹果机的。当时对Apple并没有特殊的感觉,因为一直在Linux下开发,仅仅把Max OS当作另一种Unix而已做了系统移植。之后开始慢慢关注Apple,为什么说Apple是一家独特的公司呢,首先Apple把各种产品形成了一种文化和艺术,有一大批Fans拥护苹果,这在IT领域几乎是罕见的,当然现在中国的李彦宏,马云等业界领袖也开始有自己的粉丝,但和苹果粉丝比起来,只能是小小巫见大大巫。这也保证了90年代苹果产品相
阅读全文
摘要:SOA之后,云浮出水面,2007年底Google和IBM开始推广云计算开始,2008,2009,云迅速成为业界特点,各大厂商相应推出自己的云计算平台,Google推出了GoogleApp Engine,Amazon有EC2,IBM的蓝云,微软的Azure4,百度的框计算,阿里巴巴的阿里云等等,各大厂商的认可使得云成为未来发展的一个大趋势,这点在SD2.0大会也很明显的体现出来,多个Topic都涉及了云的相关技术和趋势分析。随着云的概念提出来,各种新名词应运而出,云计算,云服务,云平台,怎么理解和区分这些概念呢?就我的理解而言,云最初是以一种可扩展的动态的计算能力提出来的,Amazon最初介绍自
阅读全文
摘要:大家眼中的云:先贴一下我在CTO俱乐部发起的关于云的一个讨论,大家仁者见仁:池建强 技术总监 用友软件工程公司云计算,云服务,云平台SOA之后,Cloud正成为一个新的热点 常常有人问我,云和传统分布式有什么区别,云和传统托管有什么区别? 我总是用下面的例子来解释,传统的一个分布式计算,托管在某个服务商那,有一天发现需要增加计算资源,服务器由5台变10台,传统服务商会告诉你,给我半个月采购调试,再给10天可正式上线 如果该分布式计算运行在云上,云的提供商会告诉你,wait a moment,一会就告诉你,可以用了,这些东西都是程序管理的。 想和大家聊的是,未来云的提供商是集中在amazone,
阅读全文
摘要:2009年参加过几次有一定规模的技术大会,有合作伙伴的,包括百度的技术创新大会,淘宝的TOP发布会,有付费的,像QCon大会,有受邀参加的,CSDNSD2.0大会等。性质也分两类,淘宝和百度基本属于产品或技术发布会,宣讲自己的理念和技术;QCon和SD2.0则属于综合性技术大会,基本上是QCon和CSDN把专家、学者、技术创新人员,技术布道者,技术应用者聚合起来,一起探讨未来的技术趋势,业务趋势等,这种大会一般技术人员是比较喜欢的。就QCon和SD2.0相较而言,QCon感觉更High level一些,外籍专家更多一些,学术味道更浓一点,SD2.0呢更平民化,老少咸宜。基本上和两个机构的网站风
阅读全文
摘要:1. 让 UXD 成为最有价值的资产评:UXD指用户体验设计,如果想做SAAS的话,忽视用户体验将是不可原谅的错误2. 适应更改要求如果说软件开发中有什么必然性,那就是客户端、顾客或产品所有者在完成所有设计、规划、图表和原型制作后,他们将更改项目的要求。大部分项目经理都经过传统的培训,限制更改是这种培训的一部分;这可能会影响产品第一个官方版本的发行。软件开发的演变速度非常快,以至于在初始开发过程的整个生命周期中,您会发现核心项目管理方法会改变好几次。因此,每个项目都应该准备好实现新的开发方法或者现有方法的后备方法。评:这时一条通用原则,无论是企业应用软件还是SAAS软件,应对变更是设计首先需.
阅读全文
摘要:工作近11年了,大部分时间在做企业应用,由于主要技术领域采用了Java,所以绝大多数时间混迹与JavaEE领域,早年写过perl,后来vs2003时写过1年C#,写过近两年的python+java,但每次最终都回归到JavaEE的老路上来,总体感觉,在企业应用领域,JavaEE和DotNet目前还是最佳解决方案,个人更偏重JavaEE最近公司一个没人干的活落到了研究院技术部,升级公司网站,网站是基于ROR构建的,一直在看Ruby onRails,这次看有实战经验,于是亲自冲上去搞定,今天网站终于发布了,www.rayoo.com.cn,告一段落,总结一下ROR的使用随想,ROR常说的特性我就不
阅读全文
摘要:服务器端:确保安装了rsync配置/etc/rsyncd.conf,一般情况下安装了rsync不会自动创建rsyncd.conf,配置如下# Rsync configuration filesecrets file = /etc/rsyncd.secrets #认证用户名和密码文件的名称和位置motd file = /etc/rsyncd.motd #欢迎文件,可自己编辑read>list = yesuid = rootgid = rootuse chroot = nomax connections = 5log file = /var/log/rsyncd.logpid file =
阅读全文
摘要:配置日志服务器环境:tibet:10.11.3.57gaplinux(日志服务器):10.11.3.3修改tibet上的/etc/hosts,增加如下代码:10.11.3.3 gaplinux.ufrdomain gaplinuxtibet服务配置如下:1. 配置tibet的syslog.conf修改tibet服务器的syslog的配置文件/etc/syslog.conf, 告诉syslogd进程传输本系统的日志信息到日志服务器上.[root@tibet /]# vi /etc/syslog.conf添加下面的代码到syslog.conf中:*.* @gaplinux.ufrdomain2.
阅读全文
摘要:启动虚拟机软件VMware后,点机VM菜单选择Setting,然后在弹出地菜单中选择:Add命令进行添加硬盘操作。完成后启动虚拟机。 1.建立分区#fdisk -l查看磁盘分区情况。此时你会发现多了一个/dev/hda最后一行为:Disk /dev/hda doesn't contain a valid partition table.(此外我添加的是IDE硬盘。如你添加的是SCSI硬盘则会显示:/dev/sdb)#fdisk /dev/hda 提示:Command (m for help): n回车(此处键入m是帮助,键入n是建立分区,我们选择n来建立分区)Command actio
阅读全文
摘要:2008年1月,我通过Webex视频会议参加了网讯的WebEx在线研讨会:企业级的web2.0。Web2.0算是一个比较早提出的概念,主要涉及的技术应用包括:AJAX--异步数据传输Web Service--web服务,SOA实现的基础RSS--内容订阅发送Blogs--博客,个人网络日志Wiki--维基,个人可以任意修改网站上的页面资料,建议社区内容SMS--即时通讯Voice Over IP-网络语音,类似skype和google talkSaaS--软件即服务,软件服务租赁,例如阿里巴巴、Salesforce目前Web2.0技术在大大小小的综合性网站或专业性网站里得到了广泛的应用,但这些
阅读全文
摘要:每次为新服务器配置Samba都要翻一下资料或上网查一下,终于下决心记下一些要点,以备不时之用1、安装Samba:一般linux现在都默认安装了Samba服务器,当前版本是3.0,如果没有安装的话,可以同rpm包或者yum -y install samba在线安装。2、配置/etc/samba/smb.conf,正常配置即可,简单示例如下:[data] path = /data public = yes writeable = yes注意:不要忘记设置安全级别# Security mode. Most people will want user level security. See# secu
阅读全文
摘要:经常会有这种情况,从某数据库中的A表空间导出数据文件,在导入另一个数据库是由于某种规范或原因需要导入数据到B表空间,Oracle似乎对这种情况没有处理,exp的参数中没有相关选项,导出的文件使用文本编辑器打开可以明显的看到原有表空间的名字我们可以现在目标数据库建立相同的表空间,导入数据后将table和index move到指定表空间,但是lob的index是无法移动的,所以不能彻底解决问题今天发现了一个简单的方法,可以实现简单易行:首先按照正常操作导出数据文件 然后使用VIM打开数据文件,不能用普通的文本编辑器或emedit,ut等,那会破坏文件结构 使用如下命令替换表空间名称-- :%s/T
阅读全文