张佳伟的博客

小丸子偶尔崩溃也笑嘻嘻

Python 如何使基于 Java 的 StubHub 受益

Python 如何使基于 Java 的 StubHub 受益

自2006年以来,Python 已经相当流行,你可以看到越来越多的初创公司在他们开始自己的业务时选择 Python作为主要语言,例如:

Netflix - 在线电视节目和电影公司
Dropbox - 最流行的文件同步和共享工具
YouTube - 分享在线视频
Disqus - 在线讨论和评论服务
OpenStack - 用于构建公共云和私有云的全开放源代码,全 Python 基础构建

当这些初创公司把这个优雅利落的语言作为基础设施来支持其业务的快速增长而得到越来越多的利益时,我在考虑我们 StuhbHub (一个基于 Java 生态系统的公司)怎样也可以从中获益,节省工作时间,并显著提高生产力,我会解释 Python 是什么?为什么选择 Python ,并向你展示用 Python 为我们的日常工作提供解决方案。

How Does Python Benefit the Java Based StubHub

How does Python benefit the Java based StubHub ?

Since 2006, Python has been pretty popular, you could see more and more startup companies choose Python as the primary language when they start their business, for example:

Netflix - TV Shows & Movies online company
Dropbox - The most popular file synchronization and sharing tool YouTube - Sharing videos online
Disqus - Online discussion and commenting service
OpenStack - An all-open-source, all-Python infrastructure for building public and private clouds

While the startup companies get more and more benefits from this elegant and neat language as the infrastructure to support their fast growing business, I’m thinking how we, StuhbHub - a Java ecosystem based company could benefit from it either, to save working hours and enhance the productivity significantly, I will explain what and why is Python and show you the Python solutions in our daily work.

Ubuntu桌面生存指南 (5) — Ubuntu常用效率软件简介

Ubuntu常用效率软件简介

之前的一系列博客里,基本上我们夯实了使用Ubuntu系统所需的基础知识,这一篇里我们来谈谈在这个低调而强大的平台上,如何使得操作者遵循系统的设计理念,通过恰当的选用软件,从而达到人机合一的化境,将这个平台的潜能发挥到极致,进而十倍,百倍的提升操作者的生产效率。我们就接着聊聊Ubuntu/Linux下的常用效率软件,网络上常常有Linux用户在学习,使用了这个平台上的软件以后发出这样的感叹:“几乎每一个Linux软件都可以写成一本书”。这基本上就是Linux系软件强大到令人敬畏的最好注脚。也因此在有限的篇幅里不可能涵盖那么多软件的方方面面,更何况笔者本人视野有限,故以下文字只做提纲挈领的引介,希望起到抛砖引玉,启示读者的作用。这一篇里先对常用软件做简介,考虑到Linux作为一个开发者系统的角色,我们在下篇里再介绍针对开发者需要的软件。大体上我会按以下思路介绍每个软件:

  1. 软件背景
  2. 安装配置
  3. 入门与心得

Ubuntu桌面生存指南 (4) — Ubuntu系统备份恢复升级策略

Ubuntu系统备份恢复升级策略

继续上篇的内容,在最初使用开发者系统的时候,无论是构建Ubuntu系统基础设施,还是安装配置各种软件都是一个费心劳力的过程:由于开发者系统是一个需要付出脑力成本换取高效率的系统,它因此被设计成一个高可定制又极度自由的系统,暂且不说你可以自由地从编译源码的方式配置安装整个操作系统,即便是大多数的常用软件例如:vi,emacs等等通过变更配置文件都可以玩出无数的操作方式,用户需要花费时间去变更尝试这些配置,使得操作这些软件的方式最符合自己的习惯,达到高效的目的。因此经过一段时间调配,每一个Linux用户都会有一个自己专属的高效系统,有1000个用户就会有1000个专属高效系统,每一个系统上安装的软件和配置方法都各不一样,并且每一个用户在打造这个专属系统的过程中都会耗费大量的精力和时间。丢失自己的专属系统,就意味着时间精力的丢失,对于一个长期使用Linux的用户更是如此:用户已经在这个系统上积累太多软件和操作习惯,如果因为系统崩溃而需要从头开始配置一个全新的系统,在事前又没有任何备份措施,那剩下的简直就是一场灾难。这也是有经验的Linux用户很注意备份的原因。介于此,笔者在本章节结合自己的一些经验来介绍一下Ubuntu系统的备份恢复以及升级策略:

  1. 脚本恢复策略 — 完全格式化更新
  2. 脚本恢复策略 — 沿用/home分区数据
  3. tar包全盘备份恢复策略
  4. 迁徙wubi系统到物理分区
  5. Ubuntu系统升级策略

这些备份恢复策略不仅适用于Ubuntu,对于使用其他发行版的Linux用户,同样可以参阅以下内容,对其中的步骤稍加改造即可。

Ubuntu桌面生存指南 (3) — 构建Ubuntu系统基础设施

Ubuntu系统的基础设施

任何一个高可用的操作系统,必须解决以下几个重要的问题:

  1. 系统易于安装升级
  2. 软件丰富,完备
  3. 便捷的系统备份与恢复
  4. 硬件驱动完善
  5. 突破墙的封锁(中国特色问题)

这一节中,我们将讨论从头开始搭建一个基础设施完善的 Ubuntu 系统。主要包括基于 Ubuntu 系统的安装,分区方案,显卡驱动安装,翻墙相关的一些技巧和同步软件(Dropbox)等基础性软件的安装方法。在夯实了这些基础之后,我们也为未来的系统备份,恢复做好了准备,提高了系统的图形处理性能,解决了在不同机器,不同系统间的文件同步问题,同时突破墙的封锁,进一步方便我们日常的工作学习,极大提升系统的可用性和灾难恢复能力。

Ubuntu桌面生存指南 (2) — Ubuntu桌面体验简介

选择 Ubuntu

对于准备迁徙到 Linux 的用户来说,另一个头疼的问题就是选择发行版。所谓发行版是指在同一个 Linux Kernal 上由不同厂商,社区定制包装了不同桌面管理系统和附带了常用软件的 Linux 发行版本,通俗来说就是可以交付给用户安装的 Linux 系统。常见的发行版有 Ubuntu, Mint,RedHat, Fedora 等等,总数不下几百种。面对数量庞大的发行版,新人总是很难做出选择。好在每个发行版本都比较有针对性,有些是针对桌面应用,有些是针对服务器系统,还有一些比较适合初级用户,或者资深极客,大致了解各自的特性以及用户自己的需求也不难做出选择,另外实际上每种发行版之间的区别幷没有大到完全对立的地步,即便随便选择一种用起来上手,大多数的知识还是可以延续和继承在另一种发行版上的。只要不是三天两头换装各种发行版,也不算浪费时间和精力。

desktop

Ubuntu桌面生存指南 (1) — 选择 Linux

缘起

我大概是从2010年4月份开始把自己的桌面开发环境从 Windows XP 迁移到 Ubuntu 10.04 的,说起来也已经有两年半的 Ubuntu 使用经验。那次迁移的原因大致是因为某个阶段特别迷恋如何高效的操作电脑,当时把 Windows 整的很伏贴,但是说到高效的使用电脑,不可能对 Linux 系统视而不见。其次就是瞥到一个同事在捣鼓 Ubuntu, 加上毕竟 Windows 环境生存了十几年时间,再多的新鲜感也用尽了,当时很想试试在 Linux 下是不是可以完成在 Windows 下等价的工作。当然,两年半以后,很多结论都是不言自明的。所以《Ubuntu桌面生存指南》是我在两年半时间里,对 Ubuntu 这个发行版的使用心得,我会涉及必要的基础知识,帮助诸位理解,但是不会做到教科书式的面面俱到,或者涉猎太过艰深又不实用的技巧,行文的唯一目的正如题目所示,是尽可能帮助那些对 Ubuntu/Linux 感兴趣的人首先生存在这个平台,不至于因为这样那样的不方便错过或者误解一个优秀的发行版。