`

有趣还是无趣?

阅读更多

这是一篇扯淡,一篇rant,或者是一坨不靠谱的文字。有一些观点过于偏激,如果你没法接受,也请不要太在意。

无趣的接口封装

我记得刚工作的时候,我的第一个正式项目是去写一个基于SOAP的WebService接口,那个时候觉得新鲜,“原来web service是这样子的!”;到了现在,已经写过各种各样的service接口,再也没有觉得做这样的事情很有意思,或者很有新意、很有挑战性,尤其是 一些并不复杂的增删改查的接口(当然业务逻辑是有够繁琐的)。

有同事说,做界面、做portal并没有什么意思,都是浮于表面的东西。虽然我不完全认可,但在这个前端工作被普遍瞧不起的国度,而且从某些层面上 说也对,可是我其实很想反驳他的,做front-end的东西还有一些UI设计和用户中心设计的挑战在里面,但是写portal后台或者service逻 辑层的业务代码呢?大多数都是增删改查的脚手架而已,变化的地方无非是接口不同种类的封装,以及从不同的数据源中读写数据而已。

举例来说,要写一组持久层的接口,屏蔽几种格式的文件、关系数据库、Network API、WebService Invocation、HDFS和DynamoDB等等好多种数据源的访问差异,提供统一接口,最初听起来是一件挺有趣的事情。写骨架代码的时候也确实让 我的思维“活跃”了好一会,可是在最初的设计完成之后,很快就变成了各种访问接口的封装,我觉得我又在走好多年走过的老路了。

孱弱的移动应用开发

移动端的应用开发有点像三天的热情,刚上手觉得很有意思,工作之余研究研究做几个看得见效果的app觉得很有成就感,当真成为工作去做的时候每天都想呕吐。现在我体验这两大平台上的设计开发过程,不为赚钱,只为娱乐。

但是当真成为工作就蛋疼了,嘿嘿。尤其是Android平台,天天折腾在各种手机里面,各种分辨率,各种兼容性考虑;iOS应用开发也好不到哪去, 啰嗦的审核,系统访问的各种限制;WAP页面开发呢,则要兼容乱七八糟的各种不负责任的浏览器(以前还弄过WAP1.0版本的页面,那种老破手机,折腾死 啊)……

纠结的编码高手

有相当数量的这样一群人,他们代码层面的设计编码技术了得,对自己的代码无比爱护,尤其对于接口设计尤其纠结。这些人可以写出非常漂亮的代码,但是也会花很多的时间、无比的心思去纠结一些没有太大意思的东西。比如:

  • 代码洁癖症患者,看到格式不合心意就要改啊;
  • 看到某接口参数定义不够完美,冒着该几十个类的巨大风险也要把它修改了(虽然有些情况下是值得的,但是你不可否认做这样的事情好没意思啊);
  • 扩展性、兼容性设计,代码里遍布了factory、builder,随处可见的设计模式;
  • 折腾主义者,每过几天就要把项目的架构、物理部署和包结构等等调整一遍,让它看起来更美,虽然大部分时候收益代价比并不让人恭维……

等等等等。每一件代码都是艺术品,但是每一件艺术品在没有见到天日之前,就没再有人看了;每一段代码都有足够的扩展性,但是没有一段代码在收到足够 多的变化的挑战以前,就已经封存不动了,甚至产品都没人用了。纠结的编码高手们(单纯伟大在编码上的人不能成为伟大的程序员,只能称为编码高手,请参见这篇文章的解释),一生都在为不为人所欣赏的美丽的代码艺术品而无趣和自我解嘲中奋斗。

产品成就感和技术成就感

如果做的东西得到广泛的应用,有足够大的影响力,这自然会给程序员带来正向的鼓励;另一方面,如果做的东西使用了有趣的技术,或者在程序员感兴趣的范围之内,这当然也会产生正向的促进作用。

最惨的境遇莫过于这两者都不具备,每天做着各种枯燥的工作,也无法看到产品产生了哪些鼓舞人心的影响。好多人都在说钱多就干,钱固然是一个起到重要 作用的因素,但是许多程序员还是想追求一下自我价值的,虽说在很多外行人看来,程序员本来就是一群无趣的nerds(至于geek,是对其中的少数人一个 相对比较给面子的称呼了)。

以前我在一家通讯公司做软件,但是做的是提供给电信运营商,但是最终面向互联网用户的软件,架构师设计了一个庞大臃肿的架构,在我看来还是略有陈旧 的传统思维使然,portlet+SSO+管理台集成+关系数据库,聚合逻辑和业务展示逻辑分成两个异地的项目组完成,期间碰撞和痛苦无数,三年后架构部 就想力推一个新架构取而代之。互联网产品早就不那么做了,在人家用几个人做出快速轻量的吸引人眼球的应用的时候,我们还在人海战术中搏杀,拖着一个巨型的 “解决方案”航空母舰,可是谁都不知道用户想要什么,只知道电信运营商说了什么。

这也是为什么我始终对那些ERP系统、OA系统之类的提不起兴趣,使用的人那么少,条条框框那么多,而且还往往没有互联网产品那样日益更迭的新技术。相较于总显得落后好多年的传统软件领域,互联网领域确实多产牛人。

寻找有意思的项目

我没有做过系统底层的开发,这是我的弱项,也是我很有兴趣去涉猎的地方;我也刚开始接触机器学习的知识,虽然欠缺足够好的数学头脑,不过我还算乐观;更想做一些充满挑战的工作,做一些直接影响力许多互联网用户的事情,让成就感这样的贵人经常光顾自己。

想寻找有意思的项目。是不是像夫妻之间的七年之痒一样,程序员也有X年之痒?到某个时间点,就开始找事儿了?

文章系本人原创,转载请保持完整性并注明出自《四火的唠叨》

1
0
分享到:
评论

相关推荐

    “有趣”而不是“有趣至上”,弘扬正确而消费文化观——【范文】..doc

    如古代乐府诗《公无渡河》的例子所示,传统文化中的趣味性可以引发人们的关注和思考,起到连接浅层关注和深层认知的作用。然而,在“有趣至上”的审美原则下,传统文化的丰富性和深度往往被忽视,取而代之的是快餐式...

    如何成为一个有趣的人?

    作者,丛非从,一个...我有时候有趣欢乐,有时候无趣乏味。与其说有时候,不如说不同的场合面对不同人的时候。比如我在去参加课程学习的时候,我不太喜欢说话,我一说话就紧张,一紧张就发热cpu就运行不够而经常任务

    有趣的二进制 完整版

    有趣的二进制:软件安全与逆向分析

    一些常见的有趣算法 编程之美

    拓扑排序则用于确定有向无环图中节点的顺序。 4. **动态规划**:动态规划是一种解决最优化问题的策略,如背包问题、最长公共子序列、最小编辑距离等。它通过将大问题分解为小问题,避免了重复计算。 5. **回溯法**...

    谈谈一些有趣的CSS话题

    在CSS的世界里,有无数有趣且实用的知识点等待我们去探索。本次我们将深入讨论一些可能不常被提及,但极具创意和启发性的CSS话题。这些话题不仅能够拓展我们的视野,帮助我们在解决设计问题时找到新颖的解决方案,还...

    CSS3中的5个有趣的新技术

    本文将详细介绍其中的五个有趣的新技术:圆角、个别圆角、不透明度、阴影和调整元素大小。这些技术使得开发者可以无需借助额外的图像或JavaScript就能实现更丰富的视觉效果。 首先,我们来看圆角。在CSS3之前,创建...

    汇编几个小程序 很有趣

    "汇编几个小程序 很有趣"这个主题表明我们将探讨一些简单的汇编语言程序,这些程序对初学者来说既易于理解,又具有趣味性。 文件"wordtest.ASM"是一个汇编源代码文件,其中包含了用汇编语言编写的指令。汇编语言的...

    7个VB有趣小程序,新手最爱

    在这个“7个VB有趣小程序,新手最爱”的压缩包中,包含了七个精心设计的VB程序源码,旨在帮助初学者通过实践来理解编程的基本概念和技巧。 1. **事件驱动编程**:VB是一种事件驱动的编程语言,用户与界面的交互会...

    幼儿园中班科学教案:有趣的轮子.doc

    在第二次探究环节,教师设计了一个运送书籍的游戏,让孩子们体验到无轮和有轮运输的区别,从而直观地认识到轮子的省力效果。这一环节不仅提升了孩子们的实践操作技能,还让他们体会到创新解决问题的乐趣。 最后,...

    关于java的一个有趣的问题

    首先,我们来看看标题中提到的有趣问题:`String str=new String("abc");` 这行代码会创建几个String对象。答案是两个。`"abc"`在Java中是一个字面量,它在运行时会被自动放入字符串池。`new String("abc")`则会创建...

    一年级数学下册第四单元有趣的图形动手做三欣赏与设计作业pdf无答案北师大版

    一年级数学下册第四单元有趣的图形动手做三欣赏与设计作业pdf无答案北师大版

    有趣的游戏程序 贪吃蛇,5棋等 c语言的啊

    若无,则继续下一轮。 4. **胜负判断**:遍历棋盘,检查所有可能的连珠情况,直到分出胜负或棋盘填满。 5. **显示棋盘**:将棋盘状态实时输出到屏幕上,让玩家可以看到当前的游戏局面。 C语言虽然没有像现代高级...

    [“有趣”而不是“有趣至上”-弘扬正确而消费文化观]弘扬生命至上安全第一.docx

    以传统文化为例,像乐府古辞《公无渡河》这样的作品,因其独特的故事和情感表达,激发了人们的兴趣,引发了进一步的探索和理解。然而,在“有趣至上”的潮流中,这些富有深度的作品可能被简化为纯粹的娱乐元素,失去...

    有趣的机器人对话Demo

    在这款Demo中,用户可以通过语音与应用进行交互,无论是听取应用的反馈还是通过语音输入指令,都极大地提升了用户体验。 接下来是图灵机器人。图灵机器人是一个提供智能对话服务的平台,它能够理解、学习和生成人类...

    大班科学活动有趣的惯性玩具教案反思.doc

    这篇文档是关于大班科学活动的教学方案,主题是“有趣的惯性玩具”,旨在引导幼儿通过探索和实践,理解惯性玩具的工作原理。活动中,教师首先鼓励孩子们自由玩耍各种类型的玩具,如惯性、电动、回力、发条、拉线等,...

    一年级数学上册四有趣的游戏__认识位置单元综合检测题pdf无答案青岛版

    一年级数学上册四有趣的游戏__认识位置单元综合检测题pdf无答案青岛版

    【创意幼教】最新幼儿园中班科学教案:有趣的轮子(四).pdf

    为了实施这一教学活动,教师需准备一系列带有轮子的玩具和实物,如小车、滑板等,同时提供各种积木、书籍等无轮子的对比物品,以及相关图片,以增强视觉效果。此外,废旧纸盒、瓶盖等材料可用于制作简单的轮子模型,...

    有趣的英语演讲.ppt

    so in order to gain more happiness, please accept the temporary baldness leisurely."这句鼓励大家接受生活中的乏味,用幽默的心态面对,其中"baldness"在这里被用来象征枯燥无趣,而"leisurely"则强调了从容的...

    有趣的 MATLAB.zip

    总的来说,MATLAB是一个功能强大的多用途工具,无论你是科学家、工程师还是学生,都能在“有趣的 MATLAB.zip”中找到提升自己MATLAB技能的宝贵资源,从而更好地利用MATLAB解决实际问题,享受编程的乐趣。

    有趣的linux入门文章

    【描述】: "有趣的Linux入门文章旨在引导初学者了解和探索Linux操作系统,文章适合对Linux感兴趣但无经验的读者" 【标签】: "Linux入门" 【部分内容】: 本文是为那些想要尝试Linux的新手而写的,无论你是出于好奇...

Global site tag (gtag.js) - Google Analytics