- 博客(410)
- 收藏
- 关注
原创 程序员的常识
之前参加了一次关于产品易用性的争论,焦点在于产品中一个文件传输过程既没有提示也没有进度,导致用户根本无法确定是否在传输。 一方认为开发组的程序员应该很容易的看到产品易用性的问题,就像传输文件的操作,有等待状态或者传输进度都是最普遍的做法,开发组竟然视而不见也没有意见反馈提出实在无法接受;另一方则认为让程序员决定这些界面实在有失偏颇,之所以出现这样的问题是由于产品经理没有将界面需求确认清楚导致的。 乍一看,很容易让人联想,这是程序员缺乏责任心或者产品经理缺乏责任心导致的。但真的只是责任心的问题吗?我认为并
2011-01-19 13:46:00
4657
11
原创 CMake编译Qt
貌似有个CMake教程上说过“不要使用CMake编译Qt”,原因是Qt有自己的QMake,用CMake会费时费力,不过为了能把所有工程采用同样的编译方式,还是尝试了一下,的确很麻烦。 首先需要下载Qt SDK,因为打算用VS2010编译,所以下载了everywhere的4.7b2版本(注意:4.6.3不支持2010,强编会出错,4.7b2静态编译也会有同样的问题,估计正式版会有改善吧) 编译整体还是比较简单的 把VS目录下的vcvars32.bat复制到qt目录下 打开控制台,首先运行v
2010-09-16 11:21:00
5401
1
原创 twiproxy - 基于GTAP 0.4的twitter API proxy
twitter终于封杀了basic auth,为了避免被拒之墙外,在Google Appengine上装了一个GTAP 0.4的版本,貌似Twitterrific可以用了,但Twitter的官方客户端还不能使用。 说起Twitter官方,那可是很纠结的一段。 最初还是tweetie的时候,特意买了一套,谁知不久twitter被封杀,tweetie不支持代理,等啊等,听说tweetie 2支持代理了,才发现之所以叫2原来是不能升级令要付钱的,嘿嘿,有点上当的感觉啊 后来,tweetie被twitter收
2010-09-14 20:56:00
2559
原创 多层压缩等于不压缩?
从网上下了一个东西,zip的压缩包 解压是55个zip压缩包 再解压是55个rar的分卷压缩包 再解压才是真正的文件 一般压缩文件就是为减小文件个数,压缩文件占用的空间,那么如此多层的压缩当然是目的当然是进一步减少文件的大小了,那么效果如何呢?以此为例,如下表: 原文件大小 273,156,452 字节
2010-02-04 11:15:00
2953
1
原创 iPad在中国前景堪忧
随着27号的苹果发布会,一直在迷雾中的苹果平板电脑iPad一下子进入人们的视线。 今天收到苹果的邮件,发现iPod登陆苹果的中文网站。看过后发现和早间在Twitter上听到的印象不同。又重新对照了英文的网站,才发现中文网站删减了某些介绍: 没有iBook,iPad最重要的功能,但明显苹果没能在国内找到有力的图书资源的支持 没有导航功能,大概是苹果还没有搞清楚是否要和3G网络提供商合作,因为在
2010-01-29 05:54:00
1965
原创 XHTML解析的实体问题
我在《集成Html Tidy》一文中说过使用HtmlTidy转换HTML以方便使用XML解析器解析,事实上,并没有那么简单,随便解析几个XHTML就会碰到解析异常的问题,错误是“Reference to undeclared entity 'nbsp'”。 查找原因发现,在XML中,除了< > & ' "以外,其他如 之类的实体必须通过DTD或其他方式定义。Html Tidy转换出的XHTML并没有显式定义这些实体,而是采用类似以下的定义: 在这个DTD中会定义如&nbps;之类
2010-01-06 13:48:00
1865
1
原创 UrlRewritingNET实现URL Rewrite
在asp.net中实现URL Rewrite,除了IIS本身带的URL Rewrite Module以外,还有很到其他的解决方案,比如UrlRewritingNET。 UrlRewritingNET号称除了文件扩展名Rewrite需要IIS支持以外,其他所有操作都不需要IIS设置,这当然对虚拟主机的网站来说是非常便利的。 下面看看怎么来部署UrlRewritingNET: 1. 首先将下载的
2009-12-30 14:06:00
2164
1
原创 C#实现文件关联
和其他语言一样,C#实现文件关联同样需要直接操作注册表,即按规则分别设置文件扩展名,文档类型说明,友好名称,图标,调用方法等键值即可,网上随便查查就可以写出以下的代码。 using Microsoft.Win32; RegistryKey key = Registry.ClassesRoot.OpenSubKey(".jb"); if (key == null)
2009-12-25 02:57:00
5927
原创 实现HTML的简单压缩
PageReleaser需要一种HTML的压缩算法,Google了很久,发现如果只是简单去除空白和注释的话,使用XLinq就可以轻易的实现 先看看MSDN是怎么说的: 一种常用方案是读取缩进的 XML,在内存中创建一个没有任何空白文本节点(即不保留空白)的 XML 树,对该 XML 执行某些操作,然后保存带缩进的 XML。在序列化带格式的 XML 时,只保留 XML 树中有意义的空白。这
2009-12-21 02:34:00
4417
原创 开源项目:Page Releaser
使用js框架+Ajax模式的开发,总会造成大量的js文件导致网站传输效率降低,尤其在网络状况不佳的环境很容易出现整个网页无法使用,就如IE的那个经典错误,对象不支持此属性或方法。 js压缩合并的工具很多,我也基于JsMin做过JsMin#。不过因为调试的需要,仍然需要维护一个调试用得HTML,里面引用所有未压缩的js;再维护一个发布用得HTML,用来引用合并后的js。每次更新网页都非常不方便。
2009-12-17 04:12:00
1678
原创 RichTextBox实现图文并茂
怎么在RichTextBox中插入图片,网上广为流传的方法是,通过剪贴板粘贴的方法,代码如下: openFileDialog1.Filter = "图片文件|*.jpg|*.bmp|*.png|所有文件|*.*"; if (openFileDialog1.ShowDialog() == DialogResult.OK) { Cl
2009-12-15 11:35:00
3415
原创 搞了一个新网站
之前突发奇想,想到一个域名,oneshoot,一查,org还可以注册,就注册下来。不过一直没有想到怎么用,直到今天。oneshoot.org现在被设计成一个罗列集成功能软件的网站,如能看所有格式视频的播放器,能用所有IM帐户的聊天工具等等。此外,还有个响亮的口号:Do everything just one shoot.页面布局上,oneshoot.org借鉴了jottit.com的简洁风
2009-05-28 18:32:00
1699
原创 互联网森林?
朋友推荐了一个网站:互联网森林,貌似一个环保网站,回答10个问题,每个问题都包括一个环保的安排,比如使用节能灯泡能减少多少二氧化碳排放,如果你都给了减少排放的答案,最后会计算出你减少了多少二氧化碳排放,你可以用这些排放量换取小树。 我的结果是: 感谢您的参与!今天您减排了2406.1克二氧化碳 相当于种植了0.13148棵树来吸收相应的二氧化碳 目前互联网森林已种下
2009-05-22 04:18:00
1734
原创 关于页面无效字符的问题
使用ExtJS以后,习惯于将应用按类分成多个js文件,然后一一加入到测试用的HTML主页进行调试,Release的时候再把所有的js合并成一个以提高网页的装载效率。 在挺长的一段时间里,使用IE调试HTML页面上常常会弹出无效字符的提示,但似乎js合并后就没事了,这样的问题一直让我很疑惑,却一时没有找到原因。 最近更换IE8调试才发现,原来所谓无效字符,实际是因为开发中js文件
2009-05-13 02:14:00
6747
转载 C#、asp.net访问基于http basic验证的api原理
注意引入命名空间具体核心代码: using System.Net;using System.Text;using System.IO; WebRequest wr = WebRequest.Create(rssurl);//其中rssurl为要调用的api地址wr.Method = "POST";指定调用方式get postwr.ContentType = "a
2009-05-07 22:18:00
1974
原创 说说twitter(三)
也许是意识到博客的问题,博客技术先驱blogger.com创始人埃文·威廉姆斯(Evan Williams)创建了Twitter。和博客一样,twitter也是解决话题问题的工具,但它提供了几个独有的特色: 首先是短,每篇twitter只有一条短信的长度,140个字,短使得书写和阅读都变得简单的,极大的缓解了博客写手和读者的困局,使得频繁的发送成为可能。 其次是及时,同样是因为短的在移动设备上
2009-05-05 09:46:00
2058
原创 折腾(二)选择一款CMS
忘了之前为了什么原因硬是把Godaddy上的空间从IIS6切换到IIS7,当时也没感觉有什么改进,最近才发现,原来IIS7支持PHP5.x,而多数的优秀的CMS系统都是用PHP构建的,于是萌发了使用CMS替代现在网站的念头。 所谓CMS是Content Management System(内容管理系统)的简称,任何如文章,图片,声音,视频都可以成为内容,自然任何能够管理这些东西的系统都可以称为内
2009-05-04 00:45:00
2105
13
原创 折腾(一)新硬盘和三系统
新给笔记本配了块320G硬盘,也有机会重新规划多系统和分区。320G当然是工业指标,格式化以后大概296G,计划安装Window 7 beta,OpenSUSE 11,Mac iDeneb 1.3 10.5.5,首先要规划分区:MacOS系统上装的东西应该不多,而且可以直接读取NTFS分区,网上有人建议10G,不过现在硬盘不缺,分50G OpenSUSE也不会占用太多的空间,分30
2009-04-28 07:27:00
1779
原创 说说twitter(二)
IM之后火起来的是博客。 博客给任何人一个公开自己想法的东西,它的本质是“我是这么看世界的,我是这么生活的,你怎么看?”。博主把感兴趣的东西写出来,读者则对其中感兴趣的部分进行评论,于是话题就产生了。 可是博客的衰落简直就是必然的,一个重要的原因是成本太高。 毕竟不是所有的人都有超强的书写能力和大量可用素材,撰写博客占用的时间让业余的写手越来越无法忍受,可是更新速度尤其是博客普及以后往往决定
2009-04-22 14:56:00
1722
转载 Mac平台下使用XCode开发的基本概念
随着iPhone SDK的发布,并且该SDK只能使用osx平台,在Xcode环境下进行,估计mac下的应用开发也会越来越热,下面这篇文章非常好的介绍了mac下使用Xcode开发的基本概念,值得阅读。摘自这里。当你面对着 MS 的 Visual Studio 头晕眼花加四肢无力的时候,一定绝望过、无助过,为什么微软要拿像怪物一样的 MFC 和令人费解的 COM技术来吸取
2009-04-19 21:15:00
2490
3
原创 说说twitter(一)
前几天教唆一个朋友注册了twitter,然后互相follow了对方。朋友问,接下来干什么?我说,你可以发信息上去。朋友:接下来呢?我:没有了。仔细想想,除了收发信息的确是没什么可作的了。twitter就是这么一个奇怪的东西,功能却简单的要命,一共不超过几个界面,一个程序员有个几个月的时间就可以完成。但它却被称为Flickr之后最棒的网络应用,BBC,卫报等诸多国外媒体竞相登
2009-04-14 23:16:00
1355
1
转载 Step1帐户登录系统
0.整体思路我一直想做一个帐户登录系统,到今天,终于做出了一个雏形,非常高兴,因此,我会在下面的几篇文章对这个系统进行详细的介绍,这是第一篇,介绍一下整体思路,到后面,基本上就是以代码为主了,先看个截图: 这个系统起源于单点登录系统(实际上它本身也是一个单点登录系统),这个技术现在在互联网上使用的十分广泛了,毕竟,无论是大的还是小的网站,是否有多个域名,都可太可能为每个栏
2009-04-13 12:39:00
5391
1
原创 说说俺家铁头
春天又到了,北京多风的季节,门窗一开不用一两天的工夫,地上就多了一层浮土,往年清扫真是麻烦,不过今年好了,身边多了一个清扫的好帮手 - 铁头。铁头是一台扫地机器人,iRobot Roomba 533,据说使用了仿生学的原理,模仿昆虫在广阔地域确定路径的方法,可以自动对指定区域进行清扫,而且保证每个地方经过至少4次。广告总是说得神乎其神,简单说,就是一台通过软件的路径算法取代大量定位设备以节省成
2009-04-10 03:07:00
883
转载 [转贴]JavaScript Base64编码和解码,实现URL参数传递。
为什么需要对参数进行编码?相信有过开发的经验的广大程序员都知道,在Web中,若是直接在Url地址上传递参数值,若是中文,或者+等什么的就会出现乱码现象,若是数字或者英文的好象没有什么问题,简言之,传递过来的参数是需要进行编码的。 在这里,也许有人会说,为什么不直接用Server.UrlDecode和Server.UrlEncode这两个来进行编码和解码的操作呢? 的确,这两个服务器端对象
2009-03-29 02:41:00
807
转载 [转贴]使用GZIP缓存技术提高网页加载速度
GZIP是一个将压缩技术使用到HTTP上的技术,GZIP技术目前主流的浏览器都是支持的,这是一个通过消耗服务器性能来节省流量的模式。 说起来很简单,它就是让服务器将文件内容压缩并发给浏览器,浏览器接受之后先解压再用来解析,在这种情况下,节省网络流量开支,浏览器传送的文本是很多的,而文本压缩通常都可以到原来文件的20%,这样,通过这种方式能来提高
2009-03-28 11:10:00
2288
转载 前田约翰《简单法则》十条
减少,就是说,达到简单的最简单方法,就是要有所割舍,割舍一些没用的功能、多余的部分,就能简单许多。 组织,妥善组织能使复杂的系统显得比较简单,这就好比合理使用一张写字台。 时间,节省时间也会让人感觉简单(虽然这种一时的简单不一定是真正的简单)。 学习,知识、经验的积累能帮助人们把某些事物变得更为简捷。 差异,简单和复杂相辅相成,没有复杂的对比反差,简单就不能更好
2009-03-25 17:25:00
1234
原创 ExtJs的Ajax乱码问题
最近用ExtJS+Ashx开了一个小的开源项目JeebookStore.之前一直用的英文做的测试都也没感觉有啥问题,上周末一上中文,乱码问题就骚扰了我一个周末。最开始是FormPanel发送的数据到ashx的时候出现乱码,Google了一下这样的问题还挺多,把所有js和html转存为UTF-8,然后把调用js的html设置为UTF-8编码,当然Asp的Request和Response保持默
2009-01-12 13:09:00
3437
原创 NetBook Q130B拆机记
为了给之前买的Q130B装上Leopard,趁着元旦把给它拆了总体来说,小本子还是比较好拆的,参考网上5分钟拆卸图解,去掉电池,卸下后面的N个小螺丝,从电池处把面板向外掰开,取下键盘面板,然后卸下硬盘旁边的喇叭,硬盘就可以取出来了。因为是头次拆笔记本,处处小心不敢用力,整个过程用了大概40分钟:)把取出的硬盘,装到我的另一台X60(还是X60好啊,换硬盘不用拆机器)上,完成Leopar
2009-01-04 13:52:00
6547
3
转载 GRUB基本使用介绍
GRUB是一个多重开机管理工具,它可用来激活Linux、BSD、OS/2、BeOS与Windows95/98/NT等众多操作系统,GRUB是一个独立于操作系统之外的开机程序,并不像LILO是依靠Linux才能进行设定与维护,也提供了类似Bash的命令列模式,让使用者更方便地设定GRUB。 取得与安装GRUB: GRUB的原始码压缩档可至GNU的ftp站台( ftp://alpha
2008-12-31 11:09:00
1020
转载 Linux与Windows多系统引导软件GRUB4DOS下载及使用说明
GRUB4DOS是一个优秀的双(多)系统引导软件,使用GRUB4DOS可以很方便的引导各种操作系统,比如DOS、Windows、Linux等。使用说明:解压GRUB4DOS后,将其中的grub.exe文件放在你的一个FAT32分区中。具体修复过程如下:1.使用DOS启动盘或Windows 98的启动盘启动到DOS模式下,然后键入:d:/tmp/grub.exe 这里的d:/tmp是笔者解压缩GR
2008-12-31 11:04:00
1479
转载 Linux系统下双硬盘多系统引导深入探究
Linux和Windows多系统共存时,引导过程相对来说比较复杂。而且容易引起一些错误概念。比如经常看到有的网友这样问:“我要引导XXX Linux,应该用Lilo,Grub,还是NT OS Loader?” 其实常见的Linux引导途径,只有引导软盘,Lilo,Grub,和在MS-DOS环境下用Loadin.exe引导。而NT OS Loader是不能够引导Linux的。大家“所谓的”用NT
2008-12-31 11:01:00
956
转载 Mac OSX安装后, 多系统引导,优化,升级,硬件和显示问题 [完全教程]
1。建立多系统引导方法1 很多人都知道了,就是用Windows XP的NTLDR使用Chain0来搜索硬盘,找到HFS+分区来启动OSX。 步骤 [在Windows XP下操作]: 下载Chain0文件并拷贝到C:/。打开文件夹选项,设置“显示隐藏文件”。把C盘的Boot.ini的只读取消后用 记事本打开,在最后加入新的空白行后输入:[Copy
2008-12-31 11:00:00
2662
转载 SCO+LINUX+WIN2K多系统引导安装
由于工作得缘故,领导给新配了台HP EVOPC机,随机带有TURBO LINUX7.0 (正好想看看LINUX就来了,呵呵),但开发环境是SCO UNIX5.0.6+windows,对于安装UNIX+WINDOWS双操作系统比较熟悉,但没有装过UNIX+LINUX,周围的朋友也没尝试过,到网上查找全是LINUX+WINDOWS或UNIX+WINDOWS等多系统的安装方法,经过我几天的查找资料,研
2008-12-31 10:59:00
916
转载 WinXP+Linux+Mac OS X三个操作系统安装方法
在一台PC上,同时安装Windows XP、Mac OS X,甚至Fedora Linux等多个操作系统。我的总体思路就是,将WinXP的启动管理器(NT Loader)作为默认的启动管理器,其他操作系统的启动管理器安装在其操作系统相应的分区,由NT Loader调用这些启动管理器,这样它们就可以启动各自对应的操作系统了。 具体的做法,写出来比较繁多,这里,只讲讲大致的过程。 1, 安
2008-12-31 10:48:00
1404
转载 JavaScript 模擬產生 GUID
JavaScript 本身沒有產生 GUID 的函式,以下範例是用 JavaScript 模式產生 GUID。 function GUID() { return (S4()+S4()+"-"+S4()+"-"+S4()+"-"+S4()+"-"+S4()+S4()+S4()); } function S4() { return (((1+M
2008-12-30 17:54:00
1008
转载 利用ajax技术显示上传进度
回顾上一篇: 我们介绍了如何从HTTP请求流中将数据部分进行截取,同时将数据相关信息进行保存。 本篇概述: 用过ajax的朋友应该有听过XmlHttpRequest对象,ajax其实就是通过XmlHttpRequest对象来向服务器发出异步请求,并从服务器获得数据,然后用javascript来操作DOM而更新页面。 本篇就是要通过XmlHttpRequest
2008-12-30 17:42:00
3354
6
转载 Godaddy的asp空间可通过DPW发布MS SQL数据库
前段时间购买了godaddy的DeluxePlan主机,大大小小网站一下子全都放上去了,差不多10来个,运行近一个月来,还算不错,到目前为止还没发现过宕机情况,并且所在共享IP也一直正常,没有被封。另外,有一个的好消息,目前godaddy已经全面升级主机计划,将DeluxePlan的存储空间从100G升级到150G,而流量也从1000G升级到1500G,很划算吧。不过,Godaddy
2008-12-29 00:35:00
1991
转载 ASP.NET发送邮件附件代码
先提一下SMTP(呵呵,高手就跳过这一段吧!)。 SMTP的全称是“Simple Mail TransferProtocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP 协议属于TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。SMTP 服务器就是遵循 SMTP 协议的发送邮件服务器。(引用1)
2008-12-29 00:30:00
3507
1
转载 Linux Unicode 编程
Unicode并不只是一个编程工具,它还是一个政治的、经济的工具。没有结合世界的语言支持的应用程序通常只能被那些能读写 ASCII所支持语言的个人使用。这使得建立在 ASCII 基础之上的计算机技术脱离了世界上大部分人。Unicode允许程序使用世界上任何一种字符集,因此它支持所有语言。Unicode 让程序员为普通人提供用他们本国语言就能使用的软件。这样就不用再学一门外语了,而且更
2008-11-26 10:31:00
796
1
原创 休眠/待机的噩梦
从装上openSUSE还没有休眠过,前几天不小心休眠了一下,结果再启动的时候,发现触摸板不能用了。网上查了一下,都说是Linux电源管理的问题,简单来说,就是休眠的时候系统关闭了触摸板并记录的状态,可因为某些原因再启动时没能把设备打开,所以在我的用户登录过程中,触摸板还能使用,真正系统就绪的时候触摸板反而被关闭了,很让人郁闷。从原理上说,肯定系统在某个地方保存了状态,只是这个状态不知道要用
2008-10-15 17:31:00
1034
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人