程序员如何买电脑

在讨论前, 先说明本文讨论的是码农如何买电脑, 所以不适合其他需求的用户.

首先, 不讨论 A 记的电脑, 因为我没有买过, 没有长期的使用过, 所以没有发言权. 虽然如此, 我还是忍不住插嘴, 对于觉得程序员非 Mac 不可的人来说, 其实没有这么严重, 而对于认为 Mac 太多软件用不了, 买回来还不如装个 Windows 的人来说, 这种想法也是不合适的. 一台 Mac 用得好是很爽的, 用不好是很难受的. 鉴于 Mac 的系统在硬盘分区, 目录分配, 命令行方面和 Linux 都有一定的相似度, 所以用熟悉了之后再去 SSH 一个 Linux 服务器进行工作是很不错的一件事情.

 

操作系统

是否被 Linux 的某种发行版官方声明支持, 是购买笔记本的一个参考因素. 就拿 Ubuntu 来说吧, 开源社区对很多市场上的笔记本的驱动支持是不那么完善的, 总有这样那样的问题, 虽然远没有黑苹果那么坑, 但是能够尝试独显驱动的是少数, 大多都是装好之后就用一个命令放在启动配置文件里把独显给关了. 关了之后风扇明显不再狂转了. 但是相比装好了官方驱动的 Windows 来说, 噪音还是有点儿大, 再装个开源社区的高级电源管理外挂, 就会好很多. 但是这么下来如果你要在 Ubuntu 下面运行 Android 模拟器, 那个速度就是非常垃圾了.

 

硬盘

所以对于要感受 Linux 桌面发行版 GUI 的人来说, 选择一块发行版官方支持的型号是一个不错的选择. 而对于做 Win 开发的人来说, 这一点就没有那么重要了, 大多数的笔记本都可以用, 但是买回来首先要装一块 SSD. 因此只要考虑美观就很好. 但是有些超薄的电脑也很麻烦, 首先他的光驱是没有的, 你把机械硬盘拆下来后只能当做移动硬盘, 想内置一个数 TB 的电影仓库就不可能了. 你可能会说, 我要装那种像 Apple 一样的 mini 版的 SSD, 好像叫做 MicroSSD 还是什么别的名字, 也不是一个好的选择. 虽然他能够满足你 超薄+内置SSD+内置机械硬盘 的需求, 但是价格成本也高, 那个小 SSD 技术也没有那么成熟.

对于不想安装 SSD 的人来说, 我觉得如果你缺钱, 你可以买比预算便宜 600 元的笔记本, 然后用省下来的钱买个 250GB  的SSD, 绝对比原来的方案要爽(别打游戏了). SSD 是程序员的必备, 开多个程序, 然后切换来切换去, 后台还跑两个爬虫, 再跑两个虚拟机, 不用 SSD 你效率就低得很啦.

 

内存

那么 Win10 要来了, 怎么办. 在 Win98 时代的时候, 我用了 XP; 在 XP 时代的时候, 我用了 Vista 的泄露版和 7 的泄露版. 每一个操作系统刚推出来的时候兼容性都是个问题, 逐渐发布了几个 sp 补丁之后, 或者软件厂商跟着更新代码之后, 就没有问题了. 所以目前来说选择 win7 和 win8.1 都是一个不错的选择. 我前天把 Win10 卸载了, 因为他不支持我的 Vmware 用桥接模式联网.

很多操作系统可以通过 Vmware 来尝试, 比如麒麟操作系统什么的. 但是这些不同的操作系统对硬盘的分区要求还不一样. 加上现在这几年是 BIOS 和 UEFI 的过渡期, 系统的引导记录到底是放在 MBR 里还是放在 EFI 分区里, 都很难说. 随便装个双系统搞不好都要手动配置启动菜单, 如果不熟练, 第一次配置, 花费的时间比装系统还要多, 巨坑. 所以把想要体验的系统放在 VMware 里面是非常好的选择(要买正版的vm哦). 多个系统同时在 VM 里跑起来, 内存就要大了. 你说为啥要多个系统跑在虚拟机里? 因为搞数据挖掘的, 可以用多个系统搭建伪分布式Hadoop集群来做实验; 搞分布式爬虫的, 可以用多个系统来运行爬虫程序测试他们是否正常; 搞机房管理, 可以用来测试批量执行命令的 SSH 脚本是否能够正常工作. 总之在做和分布式有关的, 或者和网络有关的实验的时候, 在 VM 上面跑多台计算机就是必然的选择了. 这时候 SSD + 大内存 能够带来效率.

 

Linux

上面说了这么多其实都是废话, 或者是交代了以下内容的环境背景. 我想说的是从零开始如何学习 Linux 系统. 对于 Linux, 我是基本不会. 我要分享的不是一条华丽的简洁正确的革命道路, 而是一条崎岖的泥泞小路. 现在回头看看当年玩 Linux 的姿势, 真是不得要领的瞎搞.

神魔之井: 撸Linux的正确姿势