: p0 |; |6 j% v. J" ?$ t: ]我当时正在做一个漫画书的项目,这个项目开始失控了。我想要以最有趣的方式着处理这个项目,但整个过程让我感到筋疲力尽,把项目拖得很慢。这个痛苦的过程,迫使我去寻找更好的方式来完成任务。# T& K, W$ S, a
4 I# N, e2 C8 Q5 A( ~7 e9 N6 ?8 Z那时,我已经把软件换成了Linux,并开始使用免费的图形程序,这时我发现了矢量图形程序Inkscape。它让我重新发现了矢量图形。几年前在学校时我就玩过这种格式,但当时并不是很感兴趣。 3 L# O1 X( m' L8 \ + Q$ G. g! ~3 x# N可缩放矢量图形(Scalable Vector Graphics,SVG)的属性让我觉得可以尝试和测试一下自己理论。' [4 V* \" R/ w4 U a+ v8 G
# A5 F1 @' ~4 ?; e
为此,我还必须会用JavaScript编写代码,以便能够按照我的设想构建应用程序。起初,我使用了自己能想到的每一个库,并向朋友寻求帮助,以获得一个最小的可行产品并运行起来。 {9 s2 u; _% _7 I* ` Q$ w
6 R$ c& S; Q& V; x$ Y' k2 Y+ R
我使用了Snap.svg和jQuery,甚至D3。但这只是一种让一个版本运行起来快速简单的方式,并让人们可以给我反馈以进行多次迭代。随着时间的推移,我选择删除所有库,并用自定义函数替换项目中的所有用例。我不得不对代码的某些部分进行两三次重构,但每次迭代都是一次改进。直到现在仍有改进的空间。" y' ?" `$ [& }2 d
0 `9 y+ n& [: z- N- P, p
这个网站一开始只有几个访问者,但很快就逐渐减少了。在过去的六年里,只要有可能,我就会不断地更新网站。我不断的修复bug,在路线图中添加所有的特性,并弄清楚自己要按照什么顺序去做。. H% G+ {9 b B% s/ F+ `* r
# B2 t: X/ d. T1 U8 ?& K直到三年后,流量才开始有有机地增长。人们开始发现它,并有足够的兴趣花时间创造自己的角色。可供选择的物品清单必须达到临界质量,才能使游戏般的界面具有吸引力和沉浸感。/ L) P+ l: A [2 K3 W
. o3 X& c$ @- w% N: d d
目前,这个网站还没有实现盈利,但我正在谈判一份能在短期内改变现状的合同。如果能够成功,将开始发展团队。 & U' G: r/ D1 F; c1 U# T- J) P/ n, { a : k+ g. I, O" x' [+ H7 @2 h