摘要: 创业进行到第三个月(创业的具体内容可以看这篇文章),产品三次改版已经初具形态(山坡网),作为创始人,我责无旁贷的开始找天使投资了。由于这是一件之前从来没做过的事情,很自然,我开始问朋友,问google,问百度,所有能想到的渠道都用了。之后小心翼翼的在36氪,天使汇和天使湾提交了项目。其中,36氪没有任何反馈。天使汇提醒了我商业计划书上不能留联系方式,改了重新上传,项目很快就审核完成,之后,就没有然后了。天使湾三天后就打电话给我,子皮和我详细的聊了一下想法,然后邀请我们去杭州面谈。到了之后子皮介绍我们认识“收留我”项目的创始人罗准,之后我们就先聊开了。罗准大哥这是第三次创业,已经拿到了天使湾的投 阅读全文
posted @ 2013-08-20 15:40 AllenDang 阅读(1474) 评论(16) 推荐(2) 编辑
摘要: 由于revel框架本身对于model层的编写没有提供任何指导,所以在设计这部分的时候就有些犹豫,反复斟酌到底怎样才算是最佳实践。 我在做山坡网的时候刚开始也纠结了一下,拿不准mongodb的session的创建和销毁应该在什么地方处理。直到有一天看到了revmgo的作者在与revel的作者讨论(具体内容在这里),就去研究了下revmgo,之后立即就用它替换了我自己的实现。 先说下用法吧。 1... 阅读全文
posted @ 2013-08-20 14:37 AllenDang 阅读(2624) 评论(12) 推荐(0) 编辑
摘要: 一个站点上面最基本都会有三种用户角色,未登录用户、已登录用户和管理员。这一次我们就来看看在revel框架下如何进行权限控制。因为revel是MVC结构的,每一个url其实都会映射到一个具体的Controller.Action上面,所以权限控制落到实处就是对Action的访问进行控制。那么思路是如下:1. 有一个方法能够判定当前是什么角色。2. 有一地方定义了每一个Action的访问权限要求。3. 有一个方法能够在调用所有Action之前被调用,而且能够判定是否还要继续调用Action。我们一项一项来解决。存储当前用户的角色信息先定义一个角色类型如下。type Role intconst ( . 阅读全文
posted @ 2013-08-13 14:03 AllenDang 阅读(3315) 评论(4) 推荐(1) 编辑
摘要: 用户注册、登录和注销是任何一个网站都必然会有的功能,可以说,这是重新造轮子做多的领域,每个做网站的人应该都做过很多遍。见微知著,从这么一个小功能其实就可以看到所使用的web框架中的大部分东西。今天就让我们用这个基本模块来看看revel吧。先整理一下我们选用的技术框架和组件:web框架:revel数据库:mongodb数据库driver:mgo工欲善其事,必先利其器,这里着重推荐一个mongodb的GUI客户端 - mongovue,可以说,如果没有这个工具,在开发的过程中我们会痛苦许多许多。这里假设你已经有了对Go语言最基本的知识,已经配置好GOROOT和GOPATH。首先,在GOPATH下面 阅读全文
posted @ 2013-07-02 12:25 AllenDang 阅读(7272) 评论(37) 推荐(8) 编辑
摘要: 在工作了10年之后,我于32岁的年纪在两个月前辞职创业了。 简单介绍一下之前的整个职业生涯,挺典型的,工程师 –> 资深工程师 –> 架构师 –> 项目经理 –> 部门经理,可以说,产品研发过程中的所有角色我都走了一遍,任职的公司也越来越大,可是内心的不安确实与日俱增,总觉得这一身本事渐渐被淹没在了办公室的各种琐碎之中,心中想要做一款好产品的梦想似乎越来越远了。 于是,我打定了主意,要创业。但... 阅读全文
posted @ 2013-06-25 14:12 AllenDang 阅读(10414) 评论(103) 推荐(30) 编辑
摘要: 从2000年至今,也写了11年代码了,期间用过VB、Delphi、C#、C++、Ruby、Python,一直在寻找一门符合自己心意和理念的语言。我很在意写代码时的手感和执行的效率,所以在Go出现之前一直没有找到。在熟悉Go之后,我虽没有停下脚步,也去体验了D语言,但几乎立即就放弃了,它的设计还是太复杂。 就说说Go吧。它的好其实也就两个字——简洁! 看很多朋友的留言都觉得这些“少个括号、... 阅读全文
posted @ 2012-03-03 18:18 AllenDang 阅读(99079) 评论(157) 推荐(50) 编辑
摘要: 目前来说,用Go写Windows应用还没有非常成熟的设计器,习惯了C#那种强大的IDE,再过来看会觉得一朝回到解放前。而且gform现在的设计思路需要使用者对win32 api非常熟悉,否则用起来会非常难受。 这也是我一直在想改善方案的地方,毕竟一个类库要以好用为目标,只是我充满了OO思想的头脑还没有完全适应Go的设计方式,很多以前信手拈来的思路用到Go上就会出现问题,或者就算套上去了也会觉得与语... 阅读全文
posted @ 2012-02-28 22:14 AllenDang 阅读(9446) 评论(23) 推荐(3) 编辑
摘要: Go使用C的库非常简单,通过cgo这个工具基本上可以说是无缝集成了。下面就演示一下用cgo在Windows下面封装API的过程。注意,请把Go更新到最新一个Weekly版本。 首先,在$GOPATH\src(如果不知道$GOPATH是什么,请移步这里看详细信息)下面新建一个文件夹“w32api”,然后在其内新建一个文件“kernel32.go”,内容如下。 package w32api // #d... 阅读全文
posted @ 2012-02-21 13:47 AllenDang 阅读(6894) 评论(13) 推荐(3) 编辑
摘要: 这篇文章具有很强的时效性,是在2012年2月16日写的,这时Go1还没有发布,当前的Go编译器还无法嵌入资源文件。 接上篇。我们做出了一个简单的窗体,但有两个重大缺陷:没有程序图标和没有应用系统主题。现在我们就来着手解决。 使用图标和系统主题,并将资源文件签入exe 创建一个资源文件(推荐使用ResEdit),在其中加入图标(用作程序图标)和一个manifest文件(用于启用系统主题),如下图所示... 阅读全文
posted @ 2012-02-16 13:58 AllenDang 阅读(3695) 评论(0) 推荐(2) 编辑
摘要: 几个月以前看到了Go的消息,读完入门PPT之后,便有种感觉,这就是我想象中的语言。语法简单,写起来手感极好,设计则处处透着简洁。 随后便开始用它代替python写一些常用小工具,堪称得心应手。几个月以后,日益离不开了,再用别的语言时总觉得缺了点什么。 我很喜欢写桌面应用,之前一直用C++,但实在不喜欢它那复杂的设计,而且也没有找到合心意的UI库。此时心里冒出了一个念头,用Go写一套UI库。很大胆,... 阅读全文
posted @ 2012-02-15 13:22 AllenDang 阅读(8243) 评论(15) 推荐(5) 编辑