自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(327)
  • 收藏
  • 关注

京东云疑似关闭3款产品,大洗牌开始?

云计算市场的洗牌开始启动,京东云官网在昨天贴出了告示,停止云擎、云峰、云汇等3款产品的注册审核,在业内引起了很大反响,在云计算产业蒸蒸日上的今天,这是要哪样? 虽然京东云已经撤下了相关公告,但是其带来的影响依然很大。京东作为电商翘楚,一直在拓展其业务线,像BAT一样,进军云服务行业也不足为怪。而且,京东云的布局很广,在这给大家快速普及下:京东云鼎,IaaS服务,包括云服务器、数...

2015-02-11 11:02:26 410

原创 从微软CEO纳德拉身上学习如何拯救一个企业

微软CEO纳德拉执掌公司将满一周年,微软的股价也涨了超过10%,这和鲍尔默任职时的表现形成了鲜明对比。老纳同学在这一年里到底采取了哪些有效的措施,来拯救这个曾经的IT霸主,我们来探秘一下。通过观察和研究,可以认为纳德拉的成绩单可以这样书写:树立了“用数据说话”的管理与决策规则。对于微软这样一个财大气粗的超大型企业,纳德拉要求管理层准备和研究市场数据,以此作为确定业务发...

2015-02-09 10:44:53 593

.NET开源核心运行时,且行且珍惜

背景2014年11月12日,ASP.NET之父、微软云计算与企业级产品工程部执行副总裁Scott Guthrie,在Connect全球开发者在线会议上宣布,微软将开源全部.NET核心运行时,并将.NET 扩展为可在 Linux 和 Mac OS 平台上运行。.NET核心运行时将基于MIT开源许可协议发布,其中将包括执行.NET代码所需的一切项目——CLR、JIT编译器、垃圾收集器(GC)和...

2014-12-25 15:39:04 287

IT人的良好阅读习惯

一、学会挑剔只看经典 人的精力是十分有限的,只能有有限的精力做有限的事情,读有限的经典的书。 现在互联网上充斥的信息太多了,以至于我们根本就没有精力在上边花心思,还有一些比较片面,当然您可以自己去甄别,但是在甄别的过程中就浪费了很多时间。 二、总结 读完一个主题之后,或者一个章节之后,最好能做一个总结,总结的形式是各种各样的,但是一定要达到一个目的,能够了解到(1)...

2014-01-23 09:52:43 182

别给12306 辩解了

看到有同学转发了知乎上的讨论12306的码农没有你想的那么弱,争论的非常激烈,各种观点都有,老牌技术专家冯大辉fengg,也在自己的微信上发表了文章——别给12306洗地了。反驳了这些帖子,个人觉得很有见地。以下是摘录的原文: 看到各种给 12306 跪舔的洗地贴让我有些看不过去了。虽然已经说过不再为这垃圾话题写东西,再次破例说一下,尽管觉得挺恶心的。在这篇文章开写之前,我先说一下...

2014-01-12 11:21:42 289

老程序员的中年危机(评论更精彩)

不知该从何说起,不知不觉已经从事软件开发和测试工作超过10年了,年龄也三十多了,身体状态也走下坡路,虽然家庭稳定了,生活也稳定了,但是总是对工作的未来发展有一种恐慌。 看多了国外什么程序员都干到退休或者五十多岁,不知道自己能不能坚持到那个岁数,或者说不知道有没有机会坚持到那个岁数。据我的观察,国内的程序员发展还是学而优则仕的感觉,技术做好了就开始做管理,很少有坚持做技术的,虽然国内有些...

2014-01-04 15:08:12 149

好的程序员做不出好的软件设计

你不能看到一个程序员还不错,就把他推到系统分析师、软件设计师或软件架构师的位置上。如果你在团队或公司里寻找一个能胜任软件架构师或设计师这样重要位置的人时,首先出现在脑子里的想法通常是在程序员中选一个最好的。别这么干。这样的位置不是随意的找个不错的程序员就能胜任的。把你最资深的程序员晋升到这个位置也未必就合适。乍一听你可能感觉荒诞。为什么我不能让一个程序员去做系统设计呢?毕竟,他们是设计程...

2013-12-30 09:37:22 101

程序员应该学会正确休息

在科学家眼中,休息的真正含义是:恢复疲劳,放松神经,当你重新投入工作与生活时觉得自己又是一个精力充沛的“新鲜人”。如果你的休息方式并不能让你达到这样的效果,那么,无论你选择的休息方式听起来有多轻松、看上去有多High,它都是一种错误。你所要做的是抛开以往错误的休息方式,选择真正适合你的。“休息史”上最大的讹传——睡觉是最好的休息方式。在办公室工作了一天,回到家后你觉得“太累了”,只想赶紧把...

2013-12-27 09:36:22 572

程序员最艰巨的十大任务

程序员最艰巨的任务跟编写代码没有多少关系。编码是逻辑思路的一种实践,这跟程序员日常工作中的其它任务比起来相对简单。如果你认为自己还是一个水平一般的程序员,在你真正的能进入到高手行列前,请确保你已经克服了下列晋级的障碍。1. 解释你在干什么解释软件开发过程是一个很困难的事情。那些非程序员职业的人也许知道很多关于编程的事情,但很显然,他们不会编程。对于他们来说,我们的生活就是在一间黑暗的屋子...

2013-12-26 09:53:47 96

程序员,你幸福吗?

科学家们喜欢标新立异,抛出了这样的一个观点:钱是可以买到幸福的。从一定程度上来说,他们是对的! 近期的研究已经开始区分主观幸福的两个方面:情绪上的幸福感和对生活的看法。前者是指一个人每天经历的情绪的质量,具体包括快乐、压力、悲伤、愤怒以及其他让人开心或不开心的感情的频率和强度。后者是指人们在审视他们的生活时所持的看法。钱到底能不能买到幸福呢?我们对以上两个方面分别做了评估—盖洛普公司做...

2013-12-25 09:45:18 107

你是一个努力工作的程序员,还是一个懒惰的程序员?

当一个人在完成一件体力工作时,你很容易评估他是否在努力的工作。你可以观察他的物理动作,看他流了多少汗水。你还可以看到他工作的成功:砖墙在砌高,地面上挖的坑在变大。对努力工作的认可和褒奖是人性中非常基本的本能反应。这也正是为什么人们对体力耐力体育活动如此着迷的原因之一。这种对体力上的辛苦工作的本能的赏识,在遇到管理一群技术创造型的员工时,却成了一个麻烦问题。高效的脑力工作者通常会被看作并没有在努...

2013-12-24 11:40:05 168

高性能、高流量Java Web站点打造的最佳实践

从2005年-2013年,Ashwanth Fernando曾供职于Best Buy、Pearson VUE、Walgreens、Walmart eCommerce等多家知名公司,现在Apple从事高级工程师、平台工程师一职,拥有丰富的高流量Web应用程序打造及架构经验,近日Ashwanth撰文分享了他的高流量Web软件打造经验。下为译文受Joshua Bloch写的《Effective...

2013-12-24 11:23:13 125

20行实现javascript模板引擎

20行实现javascript模板引擎我仍然在用AbsurdJS预处理器写javascript。起初,这只是一个CSS预处理器,后来我把它扩展为CSS/HTML预处理器。最近,它可以实现javascript到CSS/HTML的转换,因为它可以作为模板引擎来生成HTML。比如,可以用数据填充HTML模板。然后,我就想写一个简单的模板引擎可以完美地与我当前的开发工作相配合。AbsurdJS...

2013-12-23 10:35:43 123

15分钟学会使用Git和远程代码库

Git是个了不起但却复杂的源代码管理系统。它能支持复杂的任务,却因此经常被认为太过复杂而不适用于简单的日常工作。让我们诚实一记吧:Git是复杂的,我们不要装作它不是。但我仍然会试图教会你用(我的)基本的Git和远程代码库干活的工作步骤,在15分钟内。工作步骤我会展示以下的步骤,通常能帮我独自在一台或多台机器上做项目。创建一个远程的空代码库(在BitBucket上)在本地代码库...

2013-12-23 10:28:43 102

关于程序员的59条搞笑但却真实无比的编程语录

我收集了很多编程语录,基本上都跟程序员的生活有关。这些语录涉及软件开发,代码维护,调试纠错,软件bug,系统设计、文档,代码质量,测试和软件开发团队管理等方面。下面的这59条语录虽然很搞笑,但却真实无比。只有程序员才能理解这些编程语句里的真正内涵。闲言少叙,开始吧…程序员编程语录1. 一个好的程序员是那种过单行线马路都要往两边看的人。(Doug Linder)2. 程序有问题时不要担...

2013-12-19 12:53:01 135

对DevOps中可交付软件部署的阐释

Dan Zentgraf是Ascendant Technology公司的一名领域架构师。他的任务是帮助顾客采用DevOps和敏捷实践。作为一位咨询师和产品经理,他在软件领域拥有与商业、工程主管一起工作的12年从业经验。这片文章讲述了将传统的软件开发方式转变为使用新兴的Devops理论、技术所带来的挑战以及在新方式中所需要注意的变化。这篇文章的研究范围包括部署内容的定义以及为了利用DevOps...

2013-11-22 11:21:55 172

原创 Ruboto:Android 之上的 Ruby

简介今天,软件开发中的大部分有趣工作都出现在两个极端上:巨型云服务器和微型移动设备。这些领域解决完全不同的问题,相应地,也就拥有不同的工具支持。服务器开发往往使用脚本语言将不同的组件捆绑在一起并完成复杂的自动化任务,而移动开发主要关注某个特殊设备和用户的特定功能和需求。但是,这两个极端共享一种常用语言:Java™。无论 Android 还是 Spring 框架,当今许多最流行的技术都采用一种全世...

2012-04-10 14:38:48 194

原创 函数式思维: 函数设计模式,第 1 部分

关于本系列本 系列 的目标是重新调整您对函数思维的认识,帮助您以全新的方式看待常见问题,并提升您的日常编码能力。本系列文章将探讨函数编程概念、允许在 Java™ 语言中进行函数式编程的框架、在 JVM 上运行的函数编程语言,以及语言设计的未来方向。本系列面向那些了解 Java 及其抽象工作原理,但对函数语言不甚了解的开发人员。函数世界中的一些经验主义者认为设计模式的...

2012-04-10 14:35:27 195

原创 将单租户应用程序转换为多租户应用程序

作为专业技术人员,我们的目标之一就是分享我们的经验和教训,在本例中,这些知识来自构建可以在 IBM® SmartCloud Enterprise 产品上运行的多租户应用程序所涉及的相关工作。尤其值得一提的是,我们将介绍用于将现有单租户 SOA 应用程序转换为多租户软件即服务 (SaaS) 应用程序的一些技术。我们最终还是希望有人能够开发出一些工具,帮助开发人员自动完成从单租户应用程...

2012-04-10 14:32:08 868

原创 分布式服务框架 Zookeeper -- 管理分布式环境中的数据

安装和配置详解本文介绍的 Zookeeper 是以 3.2.2 这个稳定版本为基础,最新的版本可以通过官网 http://hadoop.apache.org/zookeeper/来获取,Zookeeper 的安装非常简单,下面将从单机模式和集群模式两个方面介绍 Zookeeper 的安装和配置。单机模式单机安装非常简单,只要获取到 Zookeeper 的压缩包并解压到某个目录如:...

2012-04-05 11:05:46 77

原创 ZooKeeper程序员指南

 译自http://zookeeper.apache.org/doc/trunk/zookeeperProgrammers.html 1 简介本文是为想要创建使用ZooKeeper协调服务优势的分布式应用的开发者准备的。本文包含理论信息和实践信息。本指南的前四节对各种ZooKeeper概念进行较高层次的讨论。这些概念对于理解ZooKeeper是如何工作的,以及如何使用ZooKeep...

2012-04-05 10:56:35 118

原创 Python Gmail代码示例

I need to be able to send an email from my python script, and I wanted to be able to use my GMail for the outgoing SMTP server. It becomes a little tricky because the GMail servers require au...

2012-04-04 22:10:17 555

原创 Python的Gmail模块 libgmail

libgmail 是 Python 用来访问 Gmail 服务的模块。示例代码:import libgmailga = libgmail.GmailAccount("[email protected]", "mymailismypass")ga.login()folder = ga.getMessagesByFolder('inbox')for thread i...

2012-04-04 21:53:32 166

原创 用Python处理邮件

总体来说python处理邮件还是比较方便的,库提供了很多工具.下面我把心得写出来,给新手一个启迪,也请高手给些更好的方法. 先说接受邮件.  poplib 方法. 1.poplib.POP3('这里填入你pop邮件服务器地址') 登陆服务器. 2.poplib.user('用户名 ') poplib.pass_('密码') 3.poplib.stat()方法返回一个元组:(邮件数,邮件尺寸)   ...

2012-04-03 13:45:38 616

原创 可爱的 Python: 自然语言工具包入门

鄙人并非见多识广,虽然写过很多关于 文本处理 方面的东西(例如,一本书),但是,对我来说, 语言处理(linguistic processing) 是一个相对新奇的领域。如果在对意义非凡的自然语言工具包(NLTK)的说明中出现了错误,请您谅解。NLTK 是使用 Python 教学以及实践计算语言学的极好工具。此外,计算语言学与人工智能、语言...

2012-03-31 10:54:18 100

原创 Linux 内核剖析

由于本文的目标是对 Linux 内核进行介绍并探索其体系结构和主要组件,因此首先回顾一下 Linux 的简短历史,然后从较高的层次审视 Linux 内核的体系结构,最后介绍它的主要子系统。Linux 内核具有超过 600 万行的代码,因此本文不可能进行完整的介绍。请使用指向其他内容的链接进一步学习。Linux 的简短历史尽管 Linux 绝对是最流行的开源操作系统,但是相对于其他操...

2012-03-31 10:48:49 63

原创 Virtio:针对 Linux 的 I/O 虚拟化框架

联系 Tim Tim 是我们最受欢迎并且很多产的作者之一。查看 Tim 的个人资料 并与他和 My developerWorks 上的其他作者和读者联系。概而言之,virtio 是半虚拟化 hypervisor 中位于设备之上的抽象层。virtio 由 Rusty Russell 开发,他当时的目的是支持自己的虚拟化解决方案 lguest。本文在开...

2012-03-31 10:44:17 71

原创 虚拟 Linux

进行虚拟化 就是要将某种形式的东西以另外一种形式呈现出来。对计算机进行虚拟化就是要将计算机以多台计算机或一台完全不同的计算机的形式呈现出来。虚拟化也可以将多台计算机组合成一台计算机的形式呈现出来。这通常称为服务器聚合或网格计算。下面让我们首先来看一下虚拟化的起源。虚拟化的历史虚拟化并不是什么新主题;实际上,它的存在已经超过 40 年了。虚拟化技术最早的一些用法包括 ...

2012-03-31 10:40:32 81

原创 Erlang 编程简介,第 1 部分

什么是 Erlang?Erlang 由 Ericsson 开发,用于帮助开发管理许多电信项目的软件。Erlang 的第一个版本发布于 1986 年,1998 年发布了它的第一个开放源码版本。可以从扩展的 Erlang 版本信息中了解到,Open Telecom Platform (OTP) 是适用于 Erlang 的应用程序开发平台,也是交付 Erlang 开发环境的主要方法。Er...

2012-03-28 18:33:42 229

原创 Node.js 究竟是什么?

编者按本文的第一版发表后,文中谈到的各种观点在社区中引起了广泛的讨论。因此,本文作者修改了第一版,其中借鉴了社区成员提出的观点。这种同行审阅和讨论是开源世界的关键组成部分。感谢那些提出建设性意见的同行。与所有开源项目一样,Node.js 将继续向前发展,开发人员将探索可以克服任何限制的新资源和新技术。按照惯例,我们鼓励读者亲自尝试新技术。简介如果您听说过 N...

2012-03-28 18:21:18 96

原创 高效 JavaScript 单元测试

一个损坏的 JavaScript 代码示例Web 应用程序面临的一个最大挑战是支持不同版本的 Web 浏览器。能在 Safari 上运行的 JavaScript 代码不一定能在 Windows® Internet Explorer (IE)、Firefox 或 Google Chrome 上运行。这个挑战的根源是呈现层中的 JavaScript 代码从一开始就没有进行测试。如果没有对代...

2012-03-28 18:12:50 74

原创 PySqlite简明教程

PySqlite的主页地址:http://pysqlite.sourceforge.net/ 上面有关于使用PySqlite的文档一、安装去PySqlite主页上下载安装包,有windows的版本,现支持 Python 2.2和2.3版本。二、创建数据库/打开数据库Sqlite使用文件作为数据库,你可以指定数据库文件的位置。>>> import sq...

2012-03-28 00:18:16 292

原创 Python调用MongoDB使用心得

本文是一个Python 使用MongoDB的简单教程,将使用pymongo对MongoDB进行的各种操作进行了简单的汇总,NoSQLFan进行了简单整理,使用Python的同学可以看一看。  下载相应平台的版本,解压即可。为方便使用,将bin路径添加到系统path环境变量里。其中mongod是服务器,mongo是客户shell,然后创建数据文件目录:在c盘下创建data文件夹,里面创建d...

2012-03-28 00:07:54 97

原创 使用 HTML5 和 Ajax 开发数据驱动的交互式应用程序

HTML5 是大量新兴 web 技术的通用术语,这些技术包括标准化的富媒体和交互性。HTML5 也可作为开发强大的离线应用程序的基础。对于经验丰富的 web 开发人员来说,使用 HTML5 比利用 Objective-C 或 Java™ 语言更具吸引力,但是 HTML5 应用程序拥有其自己的学习曲线。本文描述如何成功混合在线内容,同时为未联网的用户提供丰富的体验。样例应用程序本...

2012-03-27 18:46:07 142

原创 HTML5 视频简介

在线视频的发展简史在 20 世纪 90 年代,如果在您的电脑上播放着邮票大小的 Apple QuickTime 或 Windows Media® 视频,看上去都很酷,更不用说是在线。QuickTime 1.0 作为一个技术突破在 1991 年发布,而 Microsoft 在 1992 年回敬一个 Video for Windows®。RealNetworks 在 1995 年发布 Re...

2012-03-27 18:39:48 194

原创 AIX 7.1 中的工作负载分区 (WPAR)

简介WPAR 是在 AIX 6.1 中实现的一项大胆创新,它能虚拟化操作系统而不无需在 IBM System p 分区服务器上创建完整的 LPAR。WPAR 能提供类似的分离层,但可以避免完整系统镜像的开销。LPAR 需要有自己的操作系统镜像和一定数量的物理资源。尽管这些资源中有很大部分可以虚拟化,但仍然需要为系统分配一些物理资源。而且,需要为每个 LPAR 安装补丁包和技术升级包。每...

2012-03-27 16:59:45 436

原创 Storix简介

    简介Storix 是一款商业产品,为 AIX 提供备份和恢复解决方案。本文并非产品介绍,而是介绍如何执行备份,随后恢复 AIX。Storix 提供了独立产品的 30 天免费试用下载,便于您进行测试。我在这次演示中就试用了下载试用版。如需想了解下载站点,请参阅 参考资料 部分。Storix 允许您备份或恢复:卷组(包括 rootvg)文件系统临时文件...

2012-03-27 12:10:28 200

原创 使用 RPM 打包软件,第 1 部分: 构建和分发包

顾名思义,开源软件的主要优势就是允许了解应用程序的内部工作原理。有了源代码,您可以研究应用程序的工作原理,更改、改进和扩展其操作,(在应用程序许可允许下)借鉴代码并将其用于其他用途,以及将应用程序移植到新平台上。然而,这种自由访问并不总是我们所需要的。例如,用户可能不希望从源代码进行构建。相反,他或她可能只想像传统 “紧凑包装” 的应用程序一样安装该软件:插入媒体、运行安装程序、回答一系...

2012-03-26 10:31:18 130

原创 用 RPM 打包软件,第 3 部分

安装和卸载脚本的工作原理安装和卸载脚本看起来很简单,但它们工作原理中的一些意外可能会引起大问题。这里是一些基本信息。可以将下列四节中的任意一个添加到 .spec 文件, 它列出了在您的包安装期间各个点上运行的 shell 脚本:%pre在安装包之前运行%post在安装包之后运行%preun在卸载包之前运行%postun在卸载包之后运行尤其要注意 %instal...

2012-03-26 10:30:13 85

原创 用 RPM 打包软件,第 2 部分

不作为 root 用户来构建 RPM 包正如您在第 1 部分中看到的那样,构建 RPM 软件包通常要求您以 root 用户登录。 其原因如下:RPM 在打包过程中安装软件,并且通常只有 root 用户可以写到安装目录中。RPM 需要读写 /usr/src/redhat(一般用户不能修改它)下的目录。我们在 第 1 部分中探讨了通过用 RPM 构建根(build root...

2012-03-26 10:28:03 72

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除