不想写的太长,免了让人看的失去了耐心,想说的实在太多. xw60l&s.\L
o`^GUY}
先说一个简单的故事: Y-(),k_Q:
有一个老渔翁在河边钓鱼,前边有个小孩在看他钓鱼。老渔翁技术纯熟,所以只花了一上午时间就钓了满篓的鱼。可是,那小孩到了中午也不离开,老渔翁以为小孩想要他篓里的鱼,就准备全部送给小孩,可是那小孩不要,小孩说:“老爷爷,我想要你的钓鱼竿。”老渔翁不解:“你要钓鱼竿干什么?”小孩说:“一篓的鱼,我三天就吃完了,要是我有钓鱼竿,自己可以钓,一辈子也吃不完啊!” RusC5\BUX
到了这里,我们暗暗赞叹:好聪明的孩子. sA18f2
但是孩子忘了,光有钓鱼竿是远远不够的,还得掌握钓鱼的技术. tT7< V{i4
大家都是聪明的孩子,但是错误的以为,鱼竿就是技术的全部了. wk {9
q|PB[*T
1.我们为什么走到这条路? ]:* 8
Mb#
也许是毫无目的的希望,或者是盲目的自信,但一切都从这里开始了. n^QOGT.s6`
k;V4%O
初衷可能简单的不可思议,因为我们的Q被盗,或者就是单纯的想要恶作剧. @\gTi;u/x
对于hacker的幻想,给我们带来的快感是外人所不能理解的,欣喜激动,甚至颤抖. /EY^u i
找站点,下载软件,配置服务端,运行服务端,收信. XOl]s?6H$
成功于否都会让我们足够疯狂,不成功,来,再试. ; n2|pC^
当初的SMTP的验证发信,折磨了我一个月,邮件测试成功的一刻,所有的辛苦都值得了. YT;b$>1v
第一次坐飞机与第一次开飞机的感觉绝对不一样,可能前者会让你激动一夜不能睡,后者会让你记一辈子.支配的欲望. 3#>;h
是的,我们的路从这里开始了,可能有高手会蔑视说:小P孩,没技术含量,脚本小子,只会拿Q…… U^_'e_)
但是我们仍然乐此不疲,那股快乐的余波可以影响我们很长一段时间. yQwj[
它终究会消失的,在你拿到200个Q的时候…… c"aiZ(aP
j!r4 p,
2.路还有多长? Ph&AP*Fq
Hacker(有创造力的人也是一样)永远不该做一些无聊而单调并且愚蠢的反复性工作. 3[Pa~]yS
YxMOr\B
你的初衷可能达到了,是的,你学会使用钓鱼竿了,可能还有不错的成绩,但是满足了吗? ]a%
*$TF
我想要摆脱这种沉闷了,阻止自己犯下同样的错误,不让自己看起来愚蠢. T!6H5>zA
慢慢你会理解: f_1#>]
有的工具只是给了你一个看起来更优良的鱼竿.比如命令行转成GUI界面. L2ePWctq}
有的工具是手工的快速批量操作.就象给了你一个鱼网.比如各类扫描器. !Ju?REH
有的工具则是给了你一个大鱼塘.带着你的鱼网和鱼竿去捞吧.比如各类exp. 2A3;#v
但是你始终会突破不了瓶颈.你的鱼网和鱼竿充足,鱼不足.也没有人为你提供单独的鱼塘. \Cx)
~bq<
你会沉默下来,苦闷,看不到以后的方向,再没有了刚从前的乐趣,不愿意回到以前,所以还是要追求,直到…… <YbOO{
$)|
l#'r
3.路在何方? W(*:8}m,p
程序该被他的内部逻辑而非外部表现所指引, e_J_rx
程序员所钟爱的很大程度上是程序中所达到的完美的逻辑, ]pLQ;7f7D
而外部的东西只是拿出来与众人分享的快乐的手段 。 cmDskQ:
请坚守程序员的贞操. E-,74B&H
A.9,p
你知道hacker的基本技能: W>b(hVBE
学习程序设计. qB3{65
取得一个免费的UNIX,并学习使用和维护. fFXG;Q8&
学习使用World Wide Web并学会写HTML =YX/]g|9K
既然如此苦闷,那么从开始做起,学习程序设计.你会迷茫,到底学习哪种语言好呢? ]ABpOrg
多数人都指引你去学C,那就从C开始看起吧.一段时间发现,你似乎天赋不太好. 4QWDuLu
面向对象和面向过程是什么?指针和引用?传址和传值? 9H*$3
你实在是不清楚那么多代码写个冒泡程序的作用?太枯燥了.放弃.是的,真的放弃了. &fYx0JT
还有2个可以学.UNIX?操作系统.当初的我还没有自己的电脑,直接放弃. b5YjhRimS
最后的就是HTML了,只剩下它了,你会发现它的可爱.漂亮的网页,整齐的排版. S~vbISl
table就会有表格,marqee会让文字滚动,这一切也只要一点点代码. ZTG*|
你尝试着对自己说,不要再多使用工具了,除非要简化操作,慢慢的去读懂它们,那么你的路途又开始了. ?uUK9*N
:W5*fE(i
当你看到特效的时候你会知道javascript和VBscript. kr7f<;rmJ
当你看到恶意修改IE的代码时,你会明白注册表,然后你知道了木马的启动项,你忽然发现原来可以自己手工查杀木马的.你觉得其实优化大师和魔法兔子的有些操作,完全可以手工. =
PldXw0
当你看到VBscript的时候,VBS也适宜的出现了.你可以发现用来处理数据和操作文件可以简单很多,甚至你可以去提交数据. AqVTHyCu
当你不再满意页面的样式时,你会发现XHTML和CSS. [|UW_Bz
当你不再满足页面的不能交互时,你会去学ASP,写个自己的日记本,留言本. iV#JJ-OBq
sm}q&m]ad
当然你会遇到困难:
/U<-N'|
你的代码写的相当凌乱,你下次读会让自己很吃力. Df;FOTTi%
你会因为HTML标签的不匹配,毁了整个页面的布局. =SLP}bP{:
你会因为VBS中不用定义变量,而不知道"qwert"这个到底代表了什么. /LhAQpUQT5
最最困难是,要耐心,看得懂的认真看,看不懂的硬着头皮看! /_rAy
dQ^>,(
你终于会明白:逻辑,代码可读性的重要. Uq)|]a&e
规范你的代码,明确思路,定义你的变量. daBu<0\
去看C吧.不要怕别人讥笑你,太老土,学这么老的语言,都不流行了.不置可否的笑笑. aKaqi}IT
如果还是觉得太难,去看PHP和PERL. ".| 9h
>]"5K<-1
回过头来看看,你有属于自己的东西了,虽然象小孩子玩泥似的,但是上帝造人的乐趣,恐怕和这个没很大区别吧. ~Dr/+h:^\
你不再会去问,我学什么语言好呢?先学而后知不足,你发现自己真是无知,静下心来,你要学的太多,但绝不要贪吃,术业有专攻. gcr,?rE<
当别人叫你"脚本小子"(script kid)时,开心的答应他们,然后满怀信心地应他们.他们答对了. zQxZR}'
AO;`k]0e
只是写自己的历程,还是罗嗦得很,毫无新意.我依然在追求hack的门口,我希望自己能入门,很感激一直陪我的夏. ZZTPAmIr
祝所有的朋友也能找到自己的路&圣诞快乐. _,b%t1v
7dX1.}M<(
jackal写于2005.12.25 %iIryv;
_jef{j
参考文章: yhEU*\:
《你尽力了吗?》(小四哥) V_U$JKJ1=
《提问的智慧》(Eric S. Raymond 中文D.H.Grand) q
/|<>s
《程序员法则》(颇为夸张的小说,但是标题很不错) yY*OAC
《我是一个黑客》(sevenstar)