存档: 08月, 2010

书到用时方恨少-我学GIMP的方法

2 条评论 2010年8月25日

最近这段时间,网站制作的任务就跟不要命的陨石一样砸了下来。一时之间没有适应过来,导致好多天没更新博客。不过,也是因为这些任务,让我有了发表的题材。俗话说的好“会者不难”,我现在就是处在这种相反的境况中。因为某些东西,我还真的不熟悉。那就是,图片的设计制作。一直以来都是以程序为主,经常做的也就是切图布局、后台编程。最大的也就是修饰一下图片,这下可好,让我自己去制作图片。

没办法,任务下来了不做是不行的。这时只恨自己以前怎么不多学点这方面的东西呢。虽然到用时才觉得重要,可也不能为以后添加麻烦。说不定以后什么时侯又用到了,所以做个决心,开始学做图片。

说起来是轻松,可实际做起来可真够难的。在linux下用wine运行photoshop必竟不太理想。只能选择跨平台的GIMP。说起来,GIMP的教程和photoshop的都没法比,不是一个量级的。不过还好,photoshop能完成的GIMP基本都能完成。也就没有了任何的后顾之忧。接下来就是花段时间好好学GIMP了。

从头看教程,时间太长,也不适合我的学习方式。个人觉得只有实践才能出真知,按照别人做图片的步骤亲自操作几遍。要比你看半天书学的多的多。举例来说吧:我从教程里学了1个小时,终于弄懂了某个工具能干什么用。而到实际做图的时候,就在想,这个软件添加这个工具有什么用,根本没什么用处吗。而若从例子中学时,就会有一种,这种工具原来是这么用的感觉。再比如:学锄地,老师花一天的时间给你介绍锄头的特性及用法,再好一点的老师甚至把锄头的制作方法,分子组成都告诉了你。你虽然什么都知道了,可还是不会用。而跟着父母去地里干上一小时活,你甚至都能自己创造几种用法。

从学习的经历中,我发现了个问题。越是想学的完整的人,越是什么也学不到。而零零散散学东西的人,到最后却什么都学会了。我不知道这是为什么,也许是前者意志不够坚定的原因吧。也有可能是后者因为没有系统的学习而导致经常犯错误,而真正的知识也就是从错误中学来的。比如,以前我学习时,为了能完完整整的学会某些知识。把有关该知识的所有介绍资料都统统看一遍,甚至听人们说介绍的不完全的资料我从来都不看,只看介绍全的资料,以求一字不剩的将这些知识都学会。可是结果却让我哑然,我不但没能掌握这些知识,甚至到最后,我连这些知识介绍了什么都不知道,更别谈什么应用了。而自己以前不在乎的知识,只是随便看看学点就行了。可就是这种随便的心态让我精通了编程,页面的布局,后台的创作。真是有点自己搞自己的笑话。

话好像说多了,还是把我学GIMP的小例子与大家分享一下吧。把下面链接中的例子操作一遍,基本上把GIMP认的差不多了。自己作图也是小菜了,不过还得个人经常的创新才行。要是怕犯错就不用学了,要是一个错都没犯,基本上也没学到什么知识。只有不断的犯错,并从错误中学到经验才能真正的学会知识。当你回忆时也会因为“做这个例子时我把XX给弄错了”而给自己的生活添加色彩,不是吗?学校里老师从小就教我们,不能犯错误。可是长大了,基本上是跟老师教的对着干。哈哈,不管怎么样吧。还是那句话,真正对自己有用的才是有效的。

GIMP操作实例:http://www.verycd.com/groups/c/741772.topic

这上面介绍的例子很少,不过很有用。如果做完了,可以从网上再搜索一些其他的例子做。只要懂得方法,不愁学不到知识。

有效去除网页顶部空白的方法

3 条评论 2010年8月12日

今天做好一个网页,预览的时候出现了个怪事。网页顶部和左侧都有一段空白,使网页偏离了一点。本能的就去查看css设置文件。可里面的设置很正确

.body{margin:0;padding:0}

照常理来说是不应该出现这样的状况的。一时间,让我百思不得其解。在网上找了半天没发现什么有用的信息。不过在查看教程时无意发现了几个属性,尝试着添加上,居然去除了这些可恶的空白。

这几个属性需要添加到<body>中。我的代码是这样的:

<body  topmargin=”0″ marginheight=”0″ leftmargin=”0″>

将这几个属性添加上后一切正常。

后来,在网上查了一下这几个属性。原来是很普通的,设置浏览器与页面边距的属性。只是不同的浏览器显示的不一样。跟margin的属性差不多。ie下识别topmargin但是firefox下却不识别。所以,应该两个属性一起用才能在各浏览器中得到想要的结果。

解决了这个问题并没有多大的开心,因为以前我也没有添加过这个属性。制作网页时都正常,为什么这么长时间没事,偏偏这次出了问题呢?想来想去只想到了是编辑器的问题。一试,果然是这样。以前用的是pspad,很正常。而现在用的是vim,就出现了问题。不过,我还是觉得用vim比较好,不只是它好用,最主要的是能让我多学点东西。

好东西:用js写的树形拓普图(可直接插入网页调用)

3 条评论 2010年8月10日

今天在网上意外发现了一个用js写的拓普图代码,很是好看。算是我见过的最好看的了。实用方面就更不用说了。找到他的第一时间就是用它生成了一个拓普图。还是先看看官方的演示图片:

最大的好处就是可以根据自己的需要随便调用,给他来个循环语句就能按照自己的意思生成想要的东西了,要下的抓紧了。哈哈……

下载地址:graphic_javascript_tree_src点击这里

注册域名的困惑

4 条评论 2010年8月9日

最近发现一个喜欢的域名,且没有被注册。于是便注册了xxx.com域名。因为不知道自己能否经营好这个域名,所以考虑是不是要拿下xxx.net和xxx.org等等的相关域名。如果能经营好该域名,其它的域名再想注册恐怕要出天价了。假如经营不好该域名,那注册下其它的只能是为域名注册商贡献力量了。

在这样的矛盾中,还真是不好选择。既然是这样,那就好好经营吧。多花点钱说不定能刺激自己努力做好呢。因为这是自己没有尝试过的。没有注册相关域名的好处我尝试了,注册相关域名的好处我还没有经历过。所以,在矛盾的选择中,只能是选择增强自身的经验而注册下来。

我不知道经历过多少次这样的选择。也不知道为什么总是进行这样或者那样的选择。可是不管怎么样,都要为自己的选择负责。也许人生就是个选择的过程吧。既然选择了,那就把它做好。

解决php网页只能执行30秒的限制

1条评论 2010年8月6日

最近我发现了一个奇怪的问题。那就是如果暂停操作已经登录了的网站后台,再次重新操作就会提示:Fatal error: Call to a member function on a non-object 然后就退出系统了。上次我明明已经解决了这个问题,为什么还会出现呢?仔细检查了一下,变量和数据库都没错。实在找不到解决方法也就一直没管他。

最近,应客户测试要求,循环插入数据库2万条注册信息。于是,用php编写了个循环插入数据库的sql语句。一开始测试插入600条数据,一切正常。接下来,我直接测试插入20000条数据。运行了一会就提示错误:Fatal error: Maximum execution time of 30 seconds exceeded。 翻译过来就是运行时间不能超过30秒。找了下资料,终于找到了解决方法。

原来是因为apache服务器默认该页最久执行时间为30秒。只要修改 php.ini 中的 max_execution_time 变量配置即可,若配置为 0 则不限定最久时间。网站放在虚拟主机中当然不能自由改了。不过,我最终还是找到了一个php函数:set_time_limit();来解决问题。括号中填写时间,0为无限制。加入该函数,终于完成了同时插入20000条数据的测试。

灵感闪现之间,把该函数加入网站的总包含文件中。测试运行,一切正常。暂停操作后继续恢复操作,正常!终于同时解决了这两个问题。原来有时候问题的出现跟本是自己解决不了的。如果不是偶然间发现该问题,恐怕我在原来那个问题上查找一个月也未必有结果。所以,程序员要多发现问题。说不定解决一个问题后,跟他相关的好多问题都迎刃而解了。

我是这样理解系统化思想的

3 条评论 2010年8月3日

面对系统开发,首先需要有系统化的思想。不知别的程序员拥有什么样的系统思想。我所能做的只是不断寻找这种思想方法,以便学到这方面知识。能找的资料几乎都找了个遍,也没发现介绍这种方法的。难道这种方法真的太好了?以至于别人都舍不得将其分享。

无论找到还是找不到,任务是必须完成的,那就是设计一套系统程序(网站后台系统)。试了好多次,想把系统的方方面面都想清楚了再动手做。可一次次的失利告诉我,这样是行不通的,其码我不能用一个大脑就把复杂系统的方方面面都考虑清楚。无奈之下,我只好将这个复杂系统所表现出来的功能一一分类。然后对每个分类进行逐个研究,这些分类下又有那些小分类。各个小分类是由什么组成的。最关键的一步骤,就是要把自己的细分成果记下来。等都分析完了就可以对系统有个整体轮廓了,也可以说理解这个系统了。但还是无法将其一一在大脑中形象的展示出来。

不过不要紧,做到上面一步已经有很大成就了。接下来先不管什么核心不核心的,先用掌握的代码把一个小分类的功能实现。然后再去实现第二个小分类。当然,这两个小分类都是一个大分类下面的。等做完两个后将其有机的融合成一个,也就是一个系统代码里面可以实现这两个功能。融合之后就可以在该基础之上开发第三个小分类了。这时就不能再独立开发了。否则以后融合起来很麻烦的。依照这个顺序做完该大分类后再做其他大分类。如此既可完成整个系统。

做到这里是不是就完成了呢?当然不是,接下来才是最烦人的。那就是修改。我记得上学时老师告诉我好文章是改出来的,程序也是这样的。这个修改的过程就是精简代码,发现漏洞并补上,符合规范,易于使用等。直至修改到自己满意,然后再由别人帮忙来测试,等到适用的大多数人都满意了才算最终的完成了。当然,如果有精力的话,尽量做好升级,不断将系统的功能增强增大,以适应不断发展的现状。

我是这样理解系统思想的,也是以这个为指导思想进行开发的。当然,每个人有每个人的特点及思想特性。我觉得只要适合自己,能实实在在的做出东西来就是好的。

这两天的心情很糟糕

3 条评论 2010年8月1日

再过几个月就要当爸爸了,为了多增加点收入,揽了不少的私活。为了多揽活,索取的费用少的可怜。想当然的认为多劳多得。没想到活一多,也真是太累了。晚上睡的很晚,早上4点多就得起床,一天近12个小时在电脑旁边。可真让我有点吃不消了。在这样的情况下,公司分派的任务却多的不行,而且多是开发类的大项目。给的时间又有限,害的我时不时的还得加班做公司的活,却没有奖励!真是悲哀。

目前的私活任务量比公司的小很多,可收入却比公司的多近两倍。在这样矛盾的情况下实在是打不起什么精神工作。当遇到急事时请假还要扣工资,能拿到手的工资实在少的可怜,连我老婆的一半都达不到。很没面子的。

而最另我着急的却是家里的亲人急需用钱买房,没有存款的我只能干着急,也帮不上忙。每天又急又累的生活可真是难受呀!这样的情况下心绪始终无法平静。也真让我体会到了三分钱难倒英雄汉的困境。真不知道这样的日子还要持续多久。何时才能开始我的理财计划。

每天被客户催“快点把我们的做完”,真让人头大。明明说好一周做完的任务,客户第二天就催促快点做他们的,好像不给他们做是的。不过没办法,客户是上帝,只能应允下来再慢慢跟他们解释以”求得”他们的宽限。幸好大部分客户都很讲理,这也算自己唯一的一点安慰。

现在才发现,自己的心真的很浮澡。关键的时刻很难定下心来的,遇到点事就心慌意乱的。看来要加强这方面的修养了。写出点心事,心情平静了许多。要想获得更大的平静,暂时没别的办法,只能定下心来把任务都完成!