##language:zh #pragma section-numbers off ##含有章节索引导航的 ZPyUG 文章通用模板 <> ## 默许导航,请保留 <> = 迷茫->靠谱 = ##startInc == 提问 == {{{ fuyu0123456789 reply-to python-cn@googlegroups.com to python group date Tue, Aug 17, 2010 at 22:54 subject [CPyUG] 最近比较迷茫 }}} 一直使用Python工作,Linux平台,PostGreSQL数据库。 我在一家美国的制造型企业的一个部门工作。 主要工作是 * 1,部门服务器维护,包括系统安装,网络设置,数据库搭建。 * 2,将部门产生的大量数据存储入数据库,再将数据使用各种数学方法分析,以网页图表的形式展现出来。 * 3,做一些小软件帮助同事提高工作效率。 * 4,做一些基于web的自动化管理系统。 我虽然是计算机专业毕业的,但是老实讲,4年光阴浪费,没学什么东西。现在用的都是工作以后自己学的,都是要用多少学多少,所以很多都知道一点,但是都不深。 最近越来越觉得自己能力不行了。每次写完的程序,被老板要求加一些额外的功能进去,或者改变一些功能以后,程序就很容易被我改的面目全非。恨不得重写。我觉的我在软件架构方面很匮乏。并且我没有在正规的软件公司工作过,所以我觉得我的软件开发很不规范,我从来不写文档,从来都不做什么测试,也不知道怎么做。也没有什么软件版本控制。但是现在部门里面我的软件水平是最高的了,找不到高人讨教了。 * 我想知道现在的我该如何提升自己的能力呢? * 去外面有什么好的培训吗? 还望有高人可以指点! == 建议 == === Z.Q === 不用迷信那些什么培训和证书! 就两个坚持: 1. 坚持将你认为应该的改进,逐步追加到自个儿的代码中,比如说,你意识到的文档/测试;并尽可能的分离成公开项目发布出来 1. 坚持将你的所得或是问题公开出来,在社区/blog/列表/维基...中分享和讨论,真实的站在社区/爱好者/行者面前来交流 你将发现你的水平在飞速积累! {{{ 2010/8/17 victor lee : > 顶大妈。 > 重构代码也是自我学习的一个重要方法。 }}} 重构是必要的浪费, 但是要把握住重构的目标是积累成自个儿可以永久用下去的模块... {{{ 010/8/18 徐厚道 : > 同意。 > 坚持必要的积累,我跟你类似也是孤军奋战,做到现在发现从别人那边得到的都是‘锦上添花’,自己的积累整理才是最重要的。 > 另外,好的知识管理习惯对知识积累有很大帮助。 }}} 知识管理是个很大的话题了:KUP Thinking abt.KM - XMind - Social Brainstorming and Mind Mapping * http://www.xmind.net/share/zoomquiet/coup-thinking-abt-km/ 但是,只要开始注意固定的分类,定期的回顾,坚持积累, 关键是进行不断的知识点分享交流,令你的知识流动起来,才有作用... {{{ 2010/8/18 徐厚道 : > [关键是进行不断的知识点分享交流,令你的知识流动起来,才有作用] > 我看了地址里的图表,有所启发~下班后好好品读~ > 另,知识管理和如何管理爆炸的互联网信息是我现在非常关注急于求解的问题! > }}} 很简单: * - 拒绝诱惑,聚焦自个儿钻研的领域先 * - 时间管理,控制有限的时间优先处理高价值信息片段 * - 坚持计划,向固定的目标进行积累 === Kermit Mei === {{{ sender-time Sent at 10:06 (GMT+08:00). Current time there: 11:00 AM. ✆ reply-to python-cn@googlegroups.com to python-cn@googlegroups.com date Wed, Aug 18, 2010 at 10:06 subject Re: [CPyUG] 最近比较迷茫 }}} 大学都这样儿了,我们还能指望什么培训吗? ZQ说得很好,尤其是要依靠社区,不要怕打击,多想,多问,多分享。 * 此外,我觉得我们做开发,要能够独立于具体项目去思考,把精力放在构架一 些可供自己重用的代码或者构架模型上,这样不仅能够提高自身能力,也能够减轻 以后的工作量。要看到所有项目中最关键的问题是什么,最繁琐得问题是什么,最 后形成一套自己的方法论统一解决同类问题。 * 我分享个自己开发中遇到的例子。 * 我目前主要做嵌入式GUI和应用开发方面的工作。因为我所在的都是小公司, 所以虽然压力非常大,但我觉得幸运的是我能够自己从头开始设计自己程序。在我 做第一个公司得项目的时候,我就认为那种GUI项目最大的难点不在于每个界面上 花哨的特效,而在于如何合理管理并且调度每一个界面上的资源。 * 所以,我工作刚开始我顶着上面的压力,没有按照他们得要求去实现那些看得 到得界面,而是为管理这些资源打地桩代码,设计了一个能够管理所有页面,并在 任何时候释放页面上的资源,能够随心所遇从一个页面跳转到任何一个页面,并且 释放所有想释放的资源。 这个大的框架做好以后,我用了两个月左右的时间写了 几十个页面。当然,这个过程中也不停的暴露出我开始设计上的一些不足,但是都 是可以改进的。 * 后来管理层,不停地提出改这个,改那个,这个框架也都胜任了这些BT的改 动。现在我做GUI方面的项目还是继续沿用这个方法,也在不停地改进它,这个着 实节省了不少时间。 * 另外一点我觉得很重要,就是做开发千万不能用什么才开始学什么,要时刻有 未雨绸缪的思想。 无论工作再忙,也要想办法给自己腾出一定时间来学习新的东 西。各种编程语言的设计模式都是相通的,对于语言而言,有些更容易OO,有些更 容易面向过程,还有些适合灵活地控制资源。学习各种编程语言得长处,并找机会 应用之,更容易理解各种设计模式上的本质问题,从而提高自己的程序设计能力。 * 我也是水平一般的开发者,班门弄斧了。大家都有很长的路要走,相互交流对 促进进步还是很有帮助得,呵呵。 === 马踏飞燕 === {{{ sender-time Sent at 10:12 (GMT+08:00). Current time there: 11:03 AM. ✆ reply-to python-cn@googlegroups.com to python-cn@googlegroups.com date Wed, Aug 18, 2010 at 10:12 subject Re: [CPyUG] 最近比较迷茫 }}} * 身在甲方,则以业务为主,技术为辅,向着CIO的方向发展。 * 身在乙方,则以技术为主,向着CTO的方向发展。 如果你没有去乙方的打算,还是考虑把业务精进吧,市场上,业务顾问的身价远比技术顾问高。 当然了,如果你是技术大拿,去科技公司做CTO,工资也是很高的。 * 二者不可得兼,取舍在个人。 本人乙方做了6年,目前在甲方做了2年+,切身体会。 ##endInc ---- '''反馈''' 创建 by -- ZoomQuiet [<>]