换笔记本的想法非常久了。前段时间换工作就想看换工作之后是什么情况吧。

可能工作配的笔记本就是MBP。后来发现是想多了,新工作的笔记本是Thinkpad X240。 配置全然够用了,8G内存+128G的FLASH。美中不足是须要外接显示器,否则用那个12寸屏编码太费眼了,并且一屏也没有多少行代码。

自己在家里有个可心的笔记本还是非常重要的。

在获得了某个女士的强力支持后,于7月13号下午在AppStore在线订购了一台。上限就是2w。感觉过了这个数对不起那么多银子似的。

赞一下官网的送货效率,7月15号上午就送到了,也得赞一下顺丰。晒一下配置:

15.4 英寸的处理器  2.3 GHz Intel Core i7, 内存 16G DDR3, 固态硬盘 512G

假设说这个笔记本有哪儿不太好,就是有些重。算是我用过的终于的笔记本,可是考虑到其它方面的极致。也不算是缺点了。尤其是我还喜欢金属机身的质感。

回归总体,简单说一下我的环境搭建。

1. 使用VMWare Fusion来搭建Win7虚拟机

实际上,MAC是有Windows机器迁移到MAC的助手,就叫迁移助理。据说是能够将已有PC的数据。应用和设置迁移到MAC的虚拟机。

这个须要在被迁移的机器上装一个相似于Agent的东西。

我尝试过可是失败了。

说是无法启动共享,并且加上我原来的笔记本装的东西大部分用不到了,因此放弃了这个想法。并且使用WI-FI链接的话,速度这的非常够呛。毕竟一台笔记本要迁移的数据怎么也是100G左右吧(Win7系统自己的系统文件都是20G+)。

迁移助手推荐使用网线直连,可是我还没有买网线的转接头(MAC的东西除了USB口。其它的都要转接头,强大到强盗啊)。

我详细使用的是使用VMWare的Fusion来安装Win7的虚拟机。

装完之后发现Win7和MAC的切换简直快到发人类啊。全然是两个普通进程的切换嘛!

在Win7装上Office 2013,用的非常爽。并且Win7的启动能够在秒级,真的难以想象。并且,本身MAC也是能够直接使用虚拟机的软件的,比方你打开一个zip能够直接使用虚拟机里装的解压软件(我仅仅是举个样例,你不要用使用shell 的unzip来反驳我)。

当然了假设你不是VMWare的老用户,你全然有其它的选择。比方选择系统自带的BootCamp来安装Win7或者Win8。

或者使用另外一款强大的虚拟机软件Parallels Desktop。

假设你不想自己去找什么破解版,那你能够使用一根冰棍的钱来求助某宝。

选择的MAC用户应该算是幸福吧,一个简单的虚拟机省去了你要装双系统的烦恼。

2. IntelliJ IDEA

我买笔记本的动机就是为了更好的学习Spark,因此搭建Spark的学习环境也是我的必需了。这个来说还是挺简单的,比方安装JDK。直接仅仅用百度搜索直接在网页下载安装就可以,环境变量什么都设置好了。

还有安装Scala也是,我不知道是否有Scala的安装包。解压后设置好了环境变量$SCALA_HOME=/scala所在文件夹。并且把$SCALA_HOME/bin加到PATH中。

IDEA有两个版本号。一个是商业发行版。一个是开源社区版。我使用的是商业发行版。事实上什么差别我没有研究过。IDEA须要装Scala的插件,使用IDEA的plugin manager非常easy能够在线安装。假设失败,那能够下载离线安装包后解压到IDEA安装文件夹的plugin文件夹下。重新启动IDEA就可以。插件成功安装的话在新建project就能够看到Scala的图标了。

总体来说。没有什么困难的,困难的能够就是下载这些安装包吧。

3. 后感

MBP使用用过的最好用的笔记本。

性价比来说,相比于iPhone,这个性价比还是非常高的。事实上这个配置的笔记本,即使Thinkpad的价格。也是没有太大的优势。

你直到系统启动要多久吗?几秒钟。并且系统后全部的东西都已经ready。不像Windows还不要等系统全然启动。
电池能用多长时间?假设不使用虚拟机,8个小时肯定没有问题。

假设使用虚拟机。对不起,他们太耗电了。还是接上电源吧。

对于一个程序猿,你能够不用iPhone,我觉得拥有一个MBP是必需的。你可能平时的开发环境在远程主机,可是你须要收发邮件,须要写文档。须要做PPT,那么,用MBP。能够使你有一个非常爽的心情,非常高的效率。
当然了。一切不给员工配MBP的公司,都是耍流氓。
ps:
1. 为什么要选择mac: http://www.vpsee.com/2010/05/re-tl-why-choose-a-mac/
2.  http://www.vpsee.com/2009/06/why-programmers-love-mac/

每一个程序猿都应该用MBP的更多相关文章

  1. 每一个程序猿都须要了解的一个SQL技巧

    对于数据过滤而言CHECK约束已经算是相当不错了.然而它仍存在一些缺陷,比方说它们是应用到表上面的,但有的时候你可能希望指定一条约束,而它仅仅在特定条件下才生效. 使用SQL标准的WITH CHECK ...

  2. 每一个程序猿必知之SEO

    似乎由于受这篇文章的影响 http://katemats.com/what-every-programmer-should-know-about-seo/ 于是我也觉得我应该写一个每一个程序猿必知之S ...

  3. 连载《一个程序猿的生命周期》-《发展篇》 - 3.农民与软件工程师,农业与IT业

    相关文章:随笔<一个程序猿的生命周期>- 逆潮流而动的“叛逆者”        15年前,依稀记得走出大山,进城求学的场景.尽管一路有父亲的陪伴,但是内心仍然畏惧.当父亲转身离去.准备回到 ...

  4. 连载《一个程序猿的生命周期》- 44.感谢,我从事了IT相关的工作

    感谢博客园一直以来的支持,写连载都是在这里首发,相比较CSDN和开源中国气氛要好的多. 节前,想以此篇文章结束<一个程序猿的生命周期>的<生存>篇,对过10的年做一个了断,准备 ...

  5. 连载《一个程序猿的生命周期》-28、被忽悠来的单身HR(女同志)

    一个程序猿的生命周期 微信平台 口   号:职业交流,职业规划:面对现实,用心去交流.感悟. 公众号:iterlifetime 百木-ITer职业交流奋斗 群:141588103    微   博:h ...

  6. 连载《一个程序猿的生命周期》-6、自学C++,二级考过后,为工作的机会打下了基础

    一个程序猿的生命周期 微信平台 口   号:职业交流,职业规划:面对现实,用心去交流.感悟. 公众号:iterlifetime 百木-ITer职业交流奋斗 群:141588103    微   博:h ...

  7. 蒙特卡洛树搜索算法(UCT): 一个程序猿进化的故事

    前言: 本文是根据的文章Introduction to Monte Carlo Tree Search by Jeff Bradberry所写. Jeff Bradberry还提供了一整套的例子,用p ...

  8. 不变(Invariant), 协变(Covarinat), 逆变(Contravariant) : 一个程序猿进化的故事

    阿袁工作的第1天: 不变(Invariant), 协变(Covarinat), 逆变(Contravariant)的初次约 阿袁,早!开始工作吧. 阿袁在笔记上写下今天工作清单: 实现一个scala类 ...

  9. 程序猿都是project师吗?

    全部的程序猿都是project师吗?当然不是.project师是必修课.程序猿则是选修.project师为自己的事业工作,而程序猿做他们喜欢做的事情.project是实实在在的,编程是抽象的. 为了吸 ...

随机推荐

  1. tp框架引入第三方sdk的经验总结

    tp框架开发常用到第三方的接口,这时候需要引入第三方的sdk.例如:微信扫码支付sdk,阿里大于的淘宝sdk等等 首先到官网上下载对应php的sdk文件,通常会有至少一个实例代码. 1 新建一个控制器 ...

  2. Having用法

    HAVING 子句对 GROUP BY 子句设置条件的方式与 WHERE 和 SELECT 的交互方式类似.WHERE 搜索条件在进行分组操作之前应用:而 HAVING 搜索条件在进行分组操作之后应用 ...

  3. NYIST 1070 诡异的电梯【Ⅰ】

    诡异的电梯[Ⅰ]时间限制:1000 ms | 内存限制:65535 KB难度:3 描述新的宿舍楼有 N(1≤N≤100000) 层 and M(1≤M≤100000)个学生. 在新的宿舍楼里, 为了节 ...

  4. .C#-NET开源方向基本

    我的理解,nancyFx是一个.net的微型框架,可以在Linux环境下运行,ServiceStack也是全平台框架,更大一些 owin的概念:Open Web Server Interface Fo ...

  5. HDU 4307 Contest 1

    http://www.cnblogs.com/staginner/archive/2012/08/13/2636826.html 自己看过后两周吧,重新写了一遍.很受启发的.对于0.1,可以使用最小割 ...

  6. WPF错误:必须使“Property”具有非 null 值。

    这个问题一般出如今Triggers中Property指定的类型为Nullable. 解决的方法就是用DataTrigger取代Trigger, 然后用Binding+Converter转换为详细非Nu ...

  7. javascript 获取指定范围随机数

    <script type="text/javascript"> function GetRandomNum(Min,Max){ var Range = Max - Mi ...

  8. 操作系统 之 哈希表 Linux 内核 应用浅析

    1.基本概念         散列表(Hash  table.也叫哈希表).是依据关键码值(Key  value)而直接进行訪问的数据结构. 也就是说,它通过把关键码值映射到表中一个位置来訪问记录.以 ...

  9. [LeetCode] Longest Substring Without Repeating Characters 最长无重复字符的子串 C++实现java实现

    最长无重复字符的子串 Given a string, find the length of the longest substring without repeating characters. Ex ...

  10. jquery/zepto在插件编写上的几点区别

    1. 自定义事件的命名空间 jq的时间命名空间是用点“.”,而zepto是用冒号“:” 如 //jquery $(this).trigger('cusevent.pluginname'); //zep ...