量化目标

2016-09-11 22:01 by xueweihan

目前状态

最近总是感觉自己的产出很少,东一榔头,西一棒子。无法专注的做些事情,总想把所有的事情搞好,最后发现时间都被自己的浪费掉了。同时感觉很累,一天到晚马不停蹄,最后忙完一天发现没有什么产出。为什么会这样?

我感觉,我的累主要是因为:劳无所获。

我最喜欢的状态是:努力——成果——满血——努力——成功,如此反复循环。这种状态下我就不会觉得累,目前自己做的东西,总是感觉做完没什么即视的成功,让我感觉‘遥遥无期’,毫无斗志。

自我反思

如果说编程语言入门简单,在我看来是:按照例子输入代码,返回预期的结果,良性循环,会很快入门。而学习编程过程中,半途而废的情况,大多数是卡在一个地方:一个知识点弄不懂、一个bug解决不了、我没有做错啊,为什会出现这种情况?是啊,如果一切可以按部就班,只是按照着输入就能够成为优秀的程序,那么身体健全,有小学教育水平的都能够成为优秀的程序员,那么好的程序员需求量也不会‘供不应求’了。

‘如果遇到的问题 ...

read more

乌云背后的阳光

2016-06-04 18:01 by xueweihan

乌云背后的阳光

如果我没记错的话,这是一部电影的名字。主要讲的是:

不论生活再怎么不堪,但还是会有好的事情发生。

我第一次接手别人的代码感悟。

责任感

在我看来,现在对于程序员来说是个遍地是机会的年代,跳槽的事情比比皆是。大家都已经习以为常,昨天还坐在身边的同事,过了一周,已经‘人去楼空’。离开的原因有很多种:环境、薪水、同事、能力、个人原因等。我们作为同事,不会去深入探究他离开的原因,更多的时候我们是看着,他留下的代码。好像,明白了他为什么离开——他咽不下自己写的代码。

前人的锅,后人来背,背不动就扛,扛不动了,怎么办呢?如果,怀着得过且过的心态,对于软件工程来说是极度不可取的。因为,如果对一个bug只解决表象的问题,这样可能会造成其他地方的问题。东拼西凑,慢慢的,会失去对代码的控制性。可控性的降低,会造成,最后问题爆发的时候,发现为时已晚,悔恨当初。

我想,问题关键在于 ...

read more

使用highlight实现代码高亮

2016-04-01 21:46 by xueweihan

步骤

  1. 去官网下载:https://highlightjs.org/
  2. 在页面上引入,样式css和highlight.js静态文件
  3. 加入一段js代码,使得highlight.js生效,分析<pre><code></code></pre>标签中的内容,实现代码高亮:
<script>hljs.initHighlightingOnLoad();</script>

实例:

注意:我的css和js都放到了static目录下

<!DOCTYPE html>
<html lang="zh-CN">
    <head>
        <meta charset="utf-8">
        <!-- Hightlight.css -->
        <!-- 我选用的是hybrid主题 -->
        <link href="/static/css/hybrid.css" rel="stylesheet">
    </head>

    <body>
        <pre ...
read more

HTTP状态码大全(转自wiki)

2016-03-23 21:16 by xueweihan

1xx消息

这一类型的状态码,代表请求已被接受,需要继续处理。这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束。由于HTTP/1.0协议中没有定义任何1xx状态码,所以除非在某些试验条件下,服务器禁止向此类客户端发送1xx响应。 这些状态码代表的响应都是信息性的,标示客户应该采取的其他行动。

100 Continue
客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应。

101 Switching Protocols
服务器已经理解了客户端的请求,并将通过Upgrade消息头通知客户端采用不同的协议来完成这个请求。在发送完这个响应最后的空行后,服务器将会切换到在Upgrade消息头中定义的那些协议。
只有在切换新的协议更有好处的时候才应该采取类似措施。例如,切换到新的HTTP版本(如HTTP/2)比旧版本更有优势,或者切换到一个实时且同步的协议以传送利用此类特性的资源。

102 Processing
由WebDAV扩展的状态码,代表处理将被继续执行。

2xx成功

这一类型的状态码,代表请求已成功被服务器接收、理解、并接受。

200 OK
请求已成功,请求所希望的响应头或数据体将随此响应返回 ...

read more

Python pip install mysql-connector-python 2.0.1 失败

2016-03-22 22:16 by xueweihan

Python pip install mysql-connector-python 2.0.1 失败

如图:

错误展示

尝试了:pip install mysql-connector-python==2.0.1错误依旧

解决方法:

wget https://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-2.0.3.zip

unzip mysql-connector-python-2.0.3.zip

cd mysql-connector-python-2.0.3

python setup.py install

参照:stackoverflow

read more

Python抽象方法实现

2016-03-21 22:16 by xueweihan

抽象方法

我的理解抽象方法就是:父类的一个方法,继承的所有子类都必须要实现这个方法,否则报错。

举例说明

class Base(object):
    def _method(self):
        raise NotImplementedError(u"出错了,你没有实现这个抽象方法")

class A(Base):
    def _method(self):
        print u"重写了这个方法,就不会报错了!"

这个例子,实现了抽象方法的功能。还有一个更加pythonic的方法,就是用abc.ABCMeta

ABCMeta

import abc
class Base(object):
    __metaclass__ = abc.ABCMeta

    @abc.abstractmethod
    def _method(self):
        return

父类通过定义__metaclass__ ...

read more

Python内建方法学习笔记

2016-03-19 22:01 by xueweihan

撸一遍python的内建方法

这样做的好处就是:我如果要完成一个功能的时候,如果能用内建方法完成,就用内建方法。这样可以提高效率,同时使自己的代码更加优雅。哎呦?那岂不是撸完就是python高手了?我先帮大家试试效果,请静候我的反馈!

反馈:内建方法全部看完了,并敲完所有的内建方法,收获还是有的,但是发现不了解的知识更多了。内建方法属于python的标准库中的一章。python的标准库中还有很多值得一看的章节。python2.7.8中文标准库文档,这些内容我粗略的看了一遍。这个内建方法的学习笔记我周三就写完了,本来想在写内建类型的学习笔记。但是发现太多了!而且我发现,看的太多记下的东西就会变少,所以我打算把重心转移到我自己练手的项目中(现在还没什么值得分享的东西,等拿得出手肯定会告诉大家的)。我想把学习标准库中收获的技巧用到我的项目中,这样学以致用才能真正融汇贯通。这就是我的下一步学习计划:通过实际项目,运用python标准库中的技巧!

结论就是:看完标准库我还没有成为高手,但是我收获了很多知识,基础牢固了一些。下一步打算在我自己的项目中运用这些技巧,提高自己的能力和技术!

相关资料 - 官方文档-内建方法(英文)-2.7.11 - 官方文档-内建方法 ...

read more

什么是真正的程序员

2016-02-29 18:01 by xueweihan

这篇文章的原文来自:A Little Printf Story
作者仿照《小王子》中的情节,通过小printf遇见的不同类型的程序员,最后悟出什么才是真正的程序员!

文章略长,但是耐心读完,你肯定会受益良多!

第一章

(推荐看完整篇文章,再回过头看一遍第一章)

我非常幸运出生在一个电脑和电子游戏还没有普遍的时代。所以我可以和我的小伙伴们一起玩耍,同时发明属于我们的游戏。

我们十分会玩:用树枝做成'🏹️'。我们可以用树枝做出任何东西,除'回旋镖'。因为你把树枝扔出去,你需要自己捡回来。(作者这个故事是活跃气氛吗?😓)

当我们长大了,上面说的游戏变得很幼稚。你不能把一个松塔当成一个手榴弹;假装拥有神奇的魔法;当其他孩子觉得作为一个成年人很酷。你最终会迫于压力而长大。不过总的来说这也是一个非常幸运的童年。

偶然的一次机会我接触了电子游戏和电脑。你可能想沉浸在这个虚拟的世界,这会毁了你。

大多数电子游戏:你不能创造,只能反应,浪费你的时间。我在十多岁的时候,参加过'即兴表演'。在哪里我可以发挥我的创造性。

我大学的专业是'多媒体',但是我最终却从事'编程'工作 ...

read more

用pelican在GitHub pages上搭建博客

2016-02-29 18:00 by xueweihan

pelican

Pelican Static Site Generator, Powered by Python:Pelican是python语言写的静态网站生成器。因为我一直打算用GitHub pages做一个博客,现在已经学会用Hexo在GitHub pages上做博客了。但是我一想:我一个pythoner,干嘛不用python写的静态网站生成器。我想应该是网上教程太少,那我今天就来搞一搞。顺便记录下来,整理出一个教程,希望一切顺利!


开始

1.首先用virtualenv创建一个env

mkdir blog
cd blog
virtualenv env
source env/bin/activate  #激活环境

2.使用pip安装pelican和markdown

pip install pelican
pip install markdown

3.创建pelican目录结构

pelican-quickstart
# 根据提示进行设置

> Where do you ...
read more
Fork me on GitHub