技术小黑屋

Octopress添加回到顶部功能

在Octopress当阅读到文章底部的时候,或多或少都想回到顶部,而默认的Octopress没有提供回到顶部的功能,于是一不做二不休,自己找个控件加上。

快速提高Android开发效率的Web工具

在Google的广大支持下,便捷开发Android程序的Native工具层出不穷。其实Android开发涉及到的范围也不小,一些Web工具有时候也会带来事半功倍的效果。有些甚至是一些native应用无法做到的。本文,将简单列举一下本人正在使用的一些工具,当然也会持续更新。

最小特权原则

之前的项目中的一些事情的做法违背了最小特权原则(亦为最小权限原则),这里记录以下什么是该原则。

原始定义

该原则最早由Jerome Saltzer提出。其最原始的表述为 Every program and every privileged user of the system should operate using the least amount of privilege necessary to complete the job.
其中文意思为
系统的每个程序或者用户应该使用完成工作所需的最小权限工作。

持续整理:Git 标签操作

使用Git作为版本控制工具,当每次发版的时候我们通常会做一个tag(标签),比如我们的软件发布了1.0版,那么我们需要生成一个类似v1.0的标签。
很多工具都可以生成,比如Gitlab网页就可以很方便的生成。 这里简单地介绍以下如何使用终端进行git相关的标签操作。

Ocotpress集成多说评论

Octopress默认自带了DISQUS,但是对于国内不是很好用。于是一开始替换了国内的友言。但是后来发现用友言的人不多,而且感觉友言加载速度比较慢。然后就是到了今天的多说了。官方并没有给出具体针对Octopress的解决指导。我这里记录一下如何集成,并且解决一些常见的问题。

日语中的ます形

初学日语时,学到的动词的形式必然是ます形,当然也就是动词的敬体形,当然初级考试也主要以敬体形为主。

敬体形和简体形

日语中存在两种所谓的形式,一种是敬体,一种是简体。通常根据通过对话可以判断上下级等说话双方的关系。

纠结才能写出好代码

程序员的代码修炼应该有两个目标,一个是代码的执行效率,另一个是代码的可读性。朝着这两个目标努力的人很多,但是能够达到目标的人很少。

以前部门老大曾经说过一句话,大概意思是,想要写出好的代码,就要在写的时候纠结一会儿。

其实编程本身就是一个寻找最优解的哲学问题。解决一个问题,有时候我们要适度纠结,来使我们的代码更加可读,效率更高。

Android中自定义Checkbox

在Android中,Checkbox是一个很重要的UI组件,而且在Android中,它展现的形式越来越好看,这就说明有些系统,比如4.0以下,checkbox还是比较不好看,或者跟软件的风格不协调,就需要我们自定义这个组件。

自定义这个组件很简单,简单的增加修改xml文件即可。

捕获Android文本中链接点击事件

Android中的TTextView很强大,我们可以不仅可以设置纯文本为其内容,还可以设置包含网址和电子邮件地址的内容,并且使得这些点击可以点击。但是我们可以捕获并控制这些链接的点击事件么,当然是可以的。

本文将一个超级简单的例子介绍一下如何实现在Android TextView 捕获链接的点击事件。

日语动词分类

在很多语言中,动词是很重要的一部分。在日语更是如此,而且日语中的动词更加庞大和复杂。本文将从最基础的三类动词。即一类动词,二类动词和三类动词。当然我更倾向于称呼它们为一段动词,五段动词以及サ变和カ变动词。

Python中字典序列化操作

JSON是一种轻量级的数据交换格式,各种语言都有良好的支持。字典是Python的一种数据结构。可以看成关联数组。

有些时候我们需要设计到字典转换成JSON序列化到文件,或者从文件中读取JSON。简单备忘一下。

超简单实现Google+列表特效

相信用过Google+的人都感到其应用的特效相当棒,本文将以超简单的形式来实现类似Google+列表的特效。仅仅写几行代码就可以实现奥。

特效真面目

由于众所周知的原因,很多人无法使用Google+应用。所以有必要让大家先看一看真面目。

Git 取消跟踪已版本控制的文件

Git 是一个很好的版本控制工具,当然驾驭起来相比 SVN 要稍微复杂一些。初入 Git,难免有一些问题。比如我们不小心将某个文件加入了版本控制,但是突然又不想继续跟踪控制这个文件了,怎么办呢?

Octopress 下 Rake 失败问题解决

在 Mac 机器上,使用 octopress 总是问题重重,今天遇到了这样的问题,解决了,记录一下。

1
2
3
4
5
6
7
8
9
13:28 $ rake generate
rake aborted!
You have already activated rake 10.1.1, but your Gemfile requires rake 0.9.2.2. Prepending `bundle exec` to your command may solve this.
/Users/androidyue/.rvm/gems/ruby-1.9.3-p484/gems/bundler-1.6.2/lib/bundler/runtime.rb:34:in `block in setup'
/Users/androidyue/.rvm/gems/ruby-1.9.3-p484/gems/bundler-1.6.2/lib/bundler/runtime.rb:19:in `setup'
/Users/androidyue/.rvm/gems/ruby-1.9.3-p484/gems/bundler-1.6.2/lib/bundler.rb:120:in `setup'
/Users/androidyue/.rvm/gems/ruby-1.9.3-p484/gems/bundler-1.6.2/lib/bundler/setup.rb:7:in `<top (required)>'
/Users/androidyue/github/myblog/Rakefile:2:in `<top (required)>'
(See full trace by running task with --trace)

UserAgent收集

工作中,时不时用到 UA(User Agent),每次都要 Google 搜索,于是自己整理一下,直接看一个比较全的整理就方便多了。

持续整理:Mac快捷键

初入 Mac,很多快捷键不是很了解,常用的都可以记住,不常用的都需要记录。又是一片持续更新的技巧总结。一来备忘,二来帮助他人。

网站卖萌的瞬间记录

本着万物皆可萌的信念,收集了很多个人遇到的比较萌的网站页面,其中很多以404和退订相关的页面.萌妹纸,怪叔叔们,不要鄙视啊.

持续整理:git分支操作

这篇文章主要的目的是记录一下git中关于分支相关的操作记录. 本文会持续更新,所有的操作都经过本人实践,可以正常运行,并且可以解决问题.

我就不罗嗦介绍什么事Git和Git有多么牛了.

Android修复通知栏跳动的问题

曾经遇到过这样的问题,在我的代码中使用了通知栏,一切都正常,但是就是正在进行的通知栏中属于我的程序的那一条总是上下跳来跳去,一闪一闪的。感觉用户体验很不好,于是Google一下,找到了解决方法。

你真的懂么:Android中删除Preference

Android的设置界面实现比较简单,有时甚至只需要使用一个简单的xml文件即可.声明简单,但是如何从PreferenceScreen或者PreferenceCategory中删除一个Preference会简单么.为什么有些人写的就无法删除成功呢?本文将从Android源码实现来分析一下.

退订招商银行广告邮件那些事

自从办理信用卡留下了我的gmail邮箱之后,就偶尔收到招商银行的购物类的广告邮件,发现没有多大的用处,于是就决定清理掉.谁知逆天的是,它的退订简直是不能用.

Tar Time Stamp in the Future 问题解决

最近遇到过一个这样的问题,我在我的Mac机器将一个刚刚创建的文件进行tar打包生成文件scripts.tar.bz2,然后在一台Centos得到这个文件,进行解压,然后出现了如下问题 time stamp in the future.

自定义控件进阶:declare-styleable重用attr

最近接触了Android自定义控件,涉及到自定义xml中得属性(attribute),其实也很简单,但是写着写着,发现代码不完美了,就是在attrs.xml这个文件中,发现属性冗余,于是就想有没有类似属性继承或者include之类的方法.本文将就declare-stylable中属性重用记录一下.