最近突然发现精细调整应用程序行为的其实是环境变量。操作系统的整套机制(包括内核架构、内核权限等等)通常被设计得对用户透明,开发人员轻易也不会打开这个魔盒。鉴于这样的感觉,摘选了开发工具,重做了notebook的系统和应用。
1、为什么还是Windows?
我看上的是Windows的商业服务~由于工作中的确是存在图形测试,Bitlocker,加密证书和老资料复用等需求,用Mac的确不符合国情,Linux过于偏向技术。
个人觉得,对于任何技术工作而言,HardCore固然必要,Soft的东西实在是放不得,毕竟在技术浪潮找到自己的位置并开始做事才是最重要的事情。
7很经典,而我更情愿它是Windows 10。实在难以忍受Win8系列的Metro界面,以及对于PC而言实在是过于浮夸的极简主义和磁贴。
2、把什么应用装到什么位置?
可执行文件从用户角度来说,按照计算发生的位置可以概略分为三个大类:本地应用,应用服务器和数据存储。
比如说大家熟悉的Adobe族产品很显然就是本地应用。一般来说本地应用涵盖了绝大多数需要你执行安装然后转向鼠标和书本为工作中心的应用程序。本地应用很显然应该安装在本地磁盘上,而且应该是系统盘上。这样你的工具集维护任务就可以简单地用上ghost。当然有条件的最好自己再写一个环境变量维护工具。
应用服务器通常是指发布网页页面的应用程序。应用服务器的存在会损耗一些系统性能,然而基本在可以察觉的范围以内,一旦你用了SSD作为系统盘,IIS7的影响基本可以忽略。激活notebook上IIS7的好处是,你可以通过FastCGI或者转发机制在Windows上测试几乎所有的Web页面,包括asp,aspx,jsp,php,python,ruby on rails,node.js。是的,你没看错,这些都可以用IIS7做门面。
数据存储通常是指各式各样的数据库,也包括一些共享文件的发布源。数据存储比较好的安装位置是虚拟机上。因为你没有必要一直开着它们。相信我,保持至少一个单纯用来储存数据的虚拟机能让你对数据的感觉直观很多。我在用作数据存储的虚拟机上安装了基本主流的大部分数据系统。
3、说好的开发工具呢?
有安装包用安装包。
终端上,不知何时开始,GNU软件的Windows移植版都会带一个mingw。这是规避许可证问题的正确方法,但很显然是让用户不爽的方法。另一方面,Windows的命令行实在是弱爆了。很显然,需要扩展Windows的命令行。
很难说有一款最好的命令行增强系统,依然要视自身的使用而定。我对一些Linux的工具,尤其是编辑器有较重的依赖性,因此我选择了Cygwin。
4、一些补充
对于开发人员来说,最不可或缺的大概就是绘图软件。
Microsoft Visio基本能够把你用笔画出的成果照搬到显示器上。假如你有更高的要求,一款像Visual Paradigm CE 这样睿智的软件是不可或缺的。
CTex杰出的工作让我们在Windows上写文案变得简单而动人。你可能想替换其中的WinEdit组件,不过瑕不掩瑜,CTex依然是最好的中文文案选择。
让移动端的GTD信息与工作计算机保持同步,或者给移动端配一个机座。把精力集中到应该集中到的地方去。
5、工作权限问题
你不应该停留在管理员权限进行开发活动,除非你在编写调试一种新病毒。管理员权限下开发的产品可能会产生致命的发布问题。
说明:llorch原创笔记,保留版权。