软件精英 做主人还是做仆人

  在最近召开的第九届软件产业博览会的分论坛之一—“软件产业国际化与外包服务国际峰会(SIMChina2005 )”上,谈得最多的依然是老话题—人才培养。

  无独有偶,在麦肯锡发布的报告中,也依然把人才问题放在了制约中国软件外包产业的首位。与会的国内外专家更是一致认为,软件人才—尤其是中高级人才的缺乏是最大的拦路虎,也是最迫切需要解决的问题。

  专家们的这一观点得到了产业界人士的一致认同,于是不禁有人问:中国软件产业发展了20年,难道就没有培养出和成长起一批高级程序员和系统分析师吗?答案当然是否定的,尽管高级软件人才在数量上不足的现实依然不可回避。那么,那些高尖人才都到哪里去了?

  一位老总一语道破“天机”,他就是一位曾经被公司重金培养、用优势资源倾斜政策打造出来的高级软件人才,从普通程序员到了高级程序员,从高级程序员到了项目经理,从项目经理又到了系统分析员和架构师。但为了寻找更大的发展机遇,他离开培养他的公司,创办了目前这家公司。同样的故事在他自己的公司也发生了,几个他一手培养的高尖人才有的跳槽到了跨国公司,有的出去自己创业。 显然,软件高级人才的“不知足”成为他的最大心病。据调查,这是目前国内中型软件外包公司老总们普遍最为头疼的问题。

  至此,笔者想起了前段时间中印文化专家帕兰杰毗(中文名:白春晖)对中印文化进行的比较,他认为,相比较而言,印度人的三点不同之处在于:一是重精神轻享受。众多而盛大的宗教节日和朴素的饮食即是这一传统的映射;二是重内在秩序,轻外部环境。印度的秩序建立在内心之上,过去的种姓制度历史已经构筑起了印度钢铁般的社会结构。三是重个人,轻集体。印度教的修行是一种个人行为,任何人都无法取代,个人修为使得他们擅长数学计算和逻辑推理。

  一个有趣的现象是,在印度本国和东南亚的富人家里,经常看到学历很高、年纪很轻、条件不错的印度人在当仆人。在他们的意识里,专心做好一件事比什么都重要,甚至于当一辈子仆人。

  目前,给欧美和日本企业“打工当仆人”,已经成为中国软件产业发展的一种模式和出路,无须争论。笔者认为,对我国软件外包业的高尖人才来说,印度人身上至少有一点可以学习——在不断加强自身修为的同时,甘愿作仆人的精神。其借鉴意义在于,在大公司不断把产业规模做大,不断把产业链提升到一个更高的层次,而不是主动放弃已经获得的软件生产与管理的优秀能力和舞台,从高尖人才到高级打工者转身成为老板,这种作法是对软件产业的最大助益。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这是一个经典的过河问题,以下是三个商人和三个仆人过河的代码实现: ```python def cross_river(state, path): if state == ([], [], [], []): return path for move in moves: if is_valid(state, move): new_state = update_state(state, move) if new_state not in visited: visited.add(new_state) new_path = path + [move] result = cross_river(new_state, new_path) if result: return result return None def is_valid(state, move): left_bank, right_bank, left_boat, right_boat = state l1, l2, r1, r2 = move if l1 in right_bank or l2 in right_bank or r1 in left_bank or r2 in left_bank: return False if len(left_boat) + len([l1, l2]) > 2 or len(right_boat) + len([r1, r2]) > 2: return False if len(left_boat) == 0 and (r1 in right_bank or r2 in right_bank): return False if len(right_boat) == 0 and (l1 in left_bank or l2 in left_bank): return False return True def update_state(state, move): left_bank, right_bank, left_boat, right_boat = state l1, l2, r1, r2 = move if len(left_boat) == 0: left_boat += [l1, l2] left_bank.remove(l1) left_bank.remove(l2) else: left_boat += [r1, r2] left_bank.remove(r1) left_bank.remove(r2) if len(right_boat) == 0: right_boat += [r1, r2] right_bank.remove(r1) right_bank.remove(r2) else: right_boat += [l1, l2] right_bank.remove(l1) right_bank.remove(l2) return (left_bank, right_bank, left_boat, right_boat) moves = [(x, y, z, w) for x in range(3) for y in range(3) for z in range(3) for w in range(3) if x+y+z+w == 2 and len(set([x, y, z, w])) == 2] visited = set() state = ([0, 0, 0], [1, 1, 1], [], []) path = [] result = cross_river(state, path) print(result) ``` 其中,`state`表示当前状态,`(left_bank, right_bank, left_boat, right_boat)`分别表示左岸、右岸、左船和右船上的人员情况。`moves`表示所有可能的移动方式,`visited`表示已经访问过的状态,`path`表示当前路径。`is_valid`函数用于判断当前移动是否合法,`update_state`函数用于更新状态。最后,使用递归函数`cross_river`求解最短路径。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值