`
izuoyan
  • 浏览: 9219086 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

选择的自由

 
阅读更多
(倪可的父亲说)“……你 经常挂在嘴边的萨特笔下的自由,只是‘选择的自由’,一种有前提的自由。”——卫慧《上海宝贝》

前一段一直在BLOG上讨论服务器OS的选择问题,还有语言的多样性问题。其实归根到底就是关于选择的自由问题。

其实根本没有所谓绝对的自由,我们能得到的自由只能是选择的自由,差别只在于可供选择的东西或多或少而已。

Windows固然有千万般的好处,但它并不是没有问题的,在很多时候,Unix、Linux……会是更好的选择——即使你不喜欢,它们的存在仍然为你提供了选择的自由。

语言也一样,C#和Java固然近于万能,但C、汇编、COBOL……也仍然有市场——你可以不学不用,但不能剥夺别人选择的自由。

还有GC。GC固然是好,但是GC的性能再好也比不上栈模型的一句 sub esp, xxx 来得高效——这就是我反对在C里增加GC的根本原因,只是想保留一个选择不用GC的选项。

GPL v3自从被提出开始,就遭到很多的批评,其根本原因就在于强迫开源的条款剥夺了别人不开源的自由,这也是我一直不太喜欢GPL的最主要原因——我写的原生应用程序从来不用GPL。

在 Python 的 Web Framework 中, Django 无疑是一个好东东,是一个 All in one 的 solution ——它包括了从后端的 O/R mapping 到前端的 Web tamplate ,最关键的是它还有不错的性能。但是我现在还是转向了 TurboGears ,因为它提供了更多选择的自由,比如 O/R mapping除了用默认的 SQLObject 以外,还可以选择 SQLAlchemy (据说现在 Django 也支持 SQLAlchemy 了),而Web template的选择就更多了,从默认的 KID ,到与 Django 相同的 Jinja ,还有像 Genshi 这样的。

当然还可以引申出去,不过那就不安全了,打住。

补充风三火提供的一段Linus Torvalds对GPL的反应:
"By being pragmatic and not being too crazy about it, the 'Open Source' people ended up making open source a lot more accessible to a lot more users, and they made the software better, too. Because when you make your technical choices on technical grounds, rather than on religious ones, they end up being better."
分享到:
评论

相关推荐

    被遮蔽的选择自由——传播学视域下对电商直播带货现象的反思.pdf

    文章《被遮蔽的选择自由——传播学视域下对电商直播带货现象的反思》通过传播学的视角,对直播带货现象进行了深入的分析和反思,揭示了其背后隐藏的传播机制以及对消费者选择自由的影响。 首先,文章指出直播带货之...

    高中语文名人自述课外阅读素材选择责任选择自由

    自由带来选择,但选择的自由同时也意味着需要承担选择的后果,即责任。古希腊戏剧家索福克勒斯的观点强调了对行为反思的责任,而市场经济体制下的自由选择则使得责任更加明确和具体。 3. **社会压力与个体应对**:...

    在懒惰的自由边徘徊——选择Linux or Windows.pdf

    Linux的GUI选择自由度与Windows的一致性形成了对比,前者可能更适合有特殊需求或愿意投入时间定制的用户,而后者则因为其标准化和用户友好性吸引了大量普通用户。 总的来说,这篇文章探讨了Linux与Windows在操作...

    SMB30 和 SMB130 自由口控制寄存器

    - **选择自由口模式**:切换至自由口模式,而非预设的系统协议模式。 #### 四、使用案例 假设我们需要通过端口0发送一段数据,可以按照以下步骤操作SMB30寄存器: 1. **配置SMB30**:根据实际需要设置波特率、...

    自由职业心得体会精选.doc

    首先,选择自由职业意味着必须接受工作中的不确定性和压力,比如初期找不到工作机会时的自我怀疑,以及来自家人(尤其是父母)的反对和压力。然而,随着时间的推移,自由职业者逐渐建立起信心,找到自己的工作节奏,...

    西门子S7-200自由口通讯

    - **BBB**(3位):选择自由口通讯的波特率。不同组合对应不同的波特率,例如000表示38400bps,001表示19200bps等。 - **MM**(2位):选择通讯协议。00表示PPI从站模式,01表示自由口通讯模式,10表示PPI主站模式。...

    2023年自由职业副业青年生存现状报告.pdf

    - 36-40岁年龄段占比14.77%,表明中年人也有相当一部分人选择自由职业作为生活方式; - 40岁以上占比6.82%,说明即使是年龄较大的群体也愿意尝试新的工作模式。 #### 三、城市分布 - 北上广深等一线城市及部分...

    2019自由行用户旅行偏好数据报告-马蜂窝-201910.pdf

    - 自由行已成为主要的旅行方式,在国内游中,96%的游客选择自由行;在出境游中,自由行超过跟团游,占比近五成。 3. 自由行用户画像及行为偏好: - 90后成为旅游主力人群,他们喜欢深度游,并倾向于制定个性化旅行...

    电台S7200自由口通讯程序.rar

    3. **自由口模式设置**:在PLC的硬件配置中,需选择自由口模式,并配置相应的波特率、奇偶校验、数据位和停止位等参数。 4. **通讯协议**:用户需要根据目标设备的协议要求,编写发送和接收的数据格式,包括起始和...

    自由曲面1

    【自由曲面光学设计及其公差分析】 ...在选择自由曲面时,既要考虑其提供的设计自由度,也要关注优化效率和实际制造的可行性。这样的综合考虑将确保自由曲面光学设计在不断发展的技术领域中持续发挥重要作用。

    UAPV63-自由报表开发手册.docx

    - 选择自由报表功能节点后,选中目录树中的一个目录,通过工具栏上的“新增”按钮创建新的报表。 - 填写报表名称和编码后保存,即可在目录下看到新建的报表。 - **自由报表的格式设计**: - 在报表界面选择需要...

    S7200系列PLC与PC间基于自由口通讯的实现

    例如,选择自由口0通讯,9600波特率,8位字符,1位停止位,无校验。在这种选择下,自由口的初始化代码为***,可以通过相应的语句实现。 在PC端,可以采用VB6.0中的MSComm控件编写通讯程序,实现与PLC之间的信息交换...

    如何解读概念及概念型选择题的答题技巧.ppt

    10. **英国选择自由贸易的原因**:随着工业革命的推进,英国的制造业优势明显,解除机器输出禁令和废除《航海条例》有利于英国工业品出口,促进国内工业发展和国际市场的扩大。 11. **重商主义与自由贸易的对比**:...

    西门子S7_200自由口通讯的两种VC实现方法

    例如,选择自由口0,波特率为9600,8位数据位,1位停止位,无校验。初始化代码如下: ```plaintext %SM0.1 = %ON SM0.5 = %ON SM0.6 = %ON SM0.7 = %OFF ``` 初始化过程还包括连接接收和发送中断,以便在数据传输...

Global site tag (gtag.js) - Google Analytics