想在这个领域里特别的擅长,走通特别多的细节,达到一种自己满意的程度。可是回想一下,虽然每次都会绕回来,总的,在这个上边用的时间还并不是那么长。也就是说,并不是那么确定自己可以做的远。
这件事我并不排斥。而且还有觉得有趣的部分。就是内容太繁琐了,我走的路也不容易见到光。出来培训机构去工作的,大概也并没有多少时间再去探索,那些框架很严重阻碍了人的继续学习。能撑下来的话就会学会吧,还是没有太多余力去思考的样子。所以在这方面的进步,在工作或不在工作,进度都差不多。
毕竟涉及的面比较广,做软件总要懂一些需求,知道它在生活中扮演怎样的位置。以一个体验者的角度、而不是开发者的角度去理解。再有就是探索它的底层,硬件、CUP、单片机、二极管,那些存储设备,输入输出设备,传导设备。
这样想的话其实自己也没落下多少,工作能力有欠缺吧,不过对我来说不算什么,开始学代码的时候就发现,很容易用脑袋走通算法,帮别人找毛病的时候都会一眼扫出来问题在哪里。如果逻辑都走通了,就能比较容易理顺思路,工作能力也就是通顺的。
想起之前写把客户的访问权限让每个服务自己记住,而不是客户自己记住。当用户访问一个网址的时候,不是从在用户权限里检索是否有这个网址,而是从网址服务中检索是否有这个客户。不让客户带钥匙,让门自己记住客户的样子。 对于客户来说,他是知道哪个门能进哪个门不能进的,所以他进的门正常情况下都是可以进的,这时候再让客户自己用一大堆钥匙开门,这是在做无效判断。反过来,如果不让客户带钥匙,让门记住客户,当客户走到门前的时候,门自己检索是否有这个客户,这是有效判断。
一个没有必要,称作无效用。一个有必要。编程里应该都是有必要的判断,如果是没必要的,说明设计有问题。
这些权限处理,还有好多功能,都是别人做好了的,编程人员往往在学怎么用那些框架,而不是思考为什么那样去做,这是一件让人提不起兴趣的事。
软件有它的庞大,里边包含了很多对编程处理的思考。从页面到程序、从程序到数据库、程序本身,这中间的思考都包囊在框架中。这些东西应该每次做项目的时候自己去做才对,都在用框架的话,就没有多少人懂真正的逻辑。一些处理怎么来的,可以做些什么,具体内部是怎么实现的,有哪些地方缺少进一步考虑,等等,这些内容才是编程应该做的,才是编程环境里最应该充满的。
每个人依赖框架,以框架为标杆进行逻辑解剖,不管解剖的多么有道理,本身出发点就不对,应该根据软件需求、编程过程本身来进行逻辑思考。原始思考的人少了,大环境就缺少向上探索的氛围,一个人做比较吃力。
一个人考虑整个项目的流通。贯穿于每一个层面,层面中的每一个小点,对每一个小点进行再分析,优化、整合到整个项目中。周围环境没有一个可以相互配合的团队,每个人对一个项目的一部分进行思考,把整个团队的思考都加起来,连接成一个完整的项目,这时的软件才是一个完整的个体。从用框架角度做出来的软件是一个拼凑,一些缝缝补补。粗糙地组装在一起。
没有那种对事情的精心雕琢感。没有兴趣的磨砺和打造,做出来的只是能用的软件,一个个编程的人、编程的环境,都显得太平庸了。有很多人有心去打破,却并没有认识到任务的间距,大张旗鼓地去了,并没有意识到这是一条很长的任务线,需要保存力气,久闷地持续作战。
这条通路周围人不曾打通过,用的都是国外打通后给的攻略。以别人的攻略为基础,再进行创造。没有多少人去做从头到位的独自思考,没有人能熟练地有自己的思路把通道打通。
我想一个人去做,做到一半觉得好苦闷,需要整理的细节太多,在不同层面上断断续续,一点一点地积累。又发现走不动了,不知道为什么并不想再继续思考。这本来就是一个团队的事吧,有人能相互配合一下的话或许事情会很简单、很带劲,自己做的话两只手用不过来的感觉。
其实我都想象不到有什么样的人能和我配合,因为找了很久没有找到,所以也有点灰心吧。每个人都有生活压力在那里,顶着生活压力去钻研兴趣,而且这个时间并不短,这需要多大的热情。我是一个擅长组织团队配置的人,那么久了,没有看到可以遇到什么人。有做得好的,不知道用什么来说明我能做得同样的好,只是这样觉得,这样自己知道。
撇撇开这些技术,我欠缺了什么吧。能做的就是写写东西,找一些想法,做一些总结。偶尔钻研一下技术。从头到尾都比较期望能有一个带劲的团队,找一帮有趣的人,做一些有趣的事。
软件里边有很多有趣的探索,我在路上遇到过,隐隐约约总结不出来,就像一些思想世界的探索,发现一些新大陆。