建立您的初创公司:会议计划者背后的开源基金会

最终产品图片
您将要创造的

本教程是 Envato Tuts +上的“ 使用PHP构建启动”系列 的一部分。 在本系列文章中,我 将以 我的 Meeting Planner 应用程序作为真实示例 ,指导您完成从概念到现实的启动 在此过程的每一步中,我都会将Meeting Planner代码作为开放源代码示例发布,您可以从中学习。 我还将解决与启动相关的业务问题。

在今天的一集中,我想退后一步,回顾一下我自己如何在短短几个月内成功构建了一个复杂,易于使用的计划服务,我的实际编程时间占了因脑外科手术放射线和其他咨询而中断)。

显然,就像唐纳德·特朗普一样,我是一个了不起的“赢家”! 或不; 我赢了这么多,您只是无法接受它-您说,停止,请停止赢。 我只是“单人创业”从车库推出产品的潜力的另一个例子。 我不敢相信乔布斯需要史蒂夫·沃兹尼亚克或保罗·艾伦需要比尔·盖茨,这真是可悲的耦合! 他们人手过多!

事实是,如果没有开源社区杰出支持 ,我将永远无法构建所有这些。

今天,我将看一下所有的开源组件,这些组件为Meeting Planner(我一直在Envato Tuts +上构建和编写的应用程序)奠定了基础。 如果您尚未尝试使用Meeting Planner,请继续并立即安排您的第一次会议 -请朋友出去喝咖啡或午餐。

我确实参与了下面的评论主题,因此请分享您的反馈。 今天,我对Meeting Planner中是否还有除下面提到的其他开源组件特别感兴趣。 我也乐于接受新功能的想法和主题建议,以供将来的教程使用。

提醒一下,Meeting Planner的所有代码都是用PHP的Yii2框架(两个大的开源元素)编写的。 如果您想了解有关Yii2的更多信息,请查看我们的平行系列“ 使用Yii2编程”

“单人启动”仍然存在吗?

不幸的是,由于我们的文化和歧视,技术领域中的男人太多了,以至于熟悉的短语“一个人创业”具有内在的性别偏见。 实际上, 研究计算机科学的女性人数下降始于1980年代。 在此之前,女性平等地参与了技术领域!

SmallBizTrends上有一个有趣的信息图,其中列出了“ 十大最成功的“人”初创企业 ,其中有些是可疑的个体企业。 例如,有关第一名亚马逊员工雇用的故事似乎表明其单人工作阶段是短暂的,并且从早期开始并没有给贝佐斯的妻子以任何荣誉。 其他初创公司有较长的单人阶段的证据。

十大最成功的单人创业公司
通过Small Biz Trends, 十大最成功的单身初创企业

博客和开发人员史蒂夫· 里杜特( Steve Ridout)一直致力于ReadLang独奏三年,而且还在不断增加

一人创业公司在那里,但很少有这样的公司做大。 出资者对团队的追求比对个人的追求更高。 团队通常更有效,这是因为团队合作-是的,还有协作。

到目前为止,我的Meeting Planner团队已经包含了大量免费的开源软件,对此我深表感谢。

让我们回顾一下会议计划程序及其服务的强大功能。

会议计划程序使用的开源代码

“我就是我,因为我们都是谁。”

代管

Meeting Planner(MP)在Digital Ocean上运行,Digital Ocean也在运行并支持开源软件 ,他们在为我自己构建Dropping Planner的同时为我提供了几个月的服务信誉。

基本守则

操作系统

MP在Linux上运行,Linux是我们几乎所有人都知道并喜欢的最流行的开源操作系统。 开发商Linus Torvalds在1981年进入赫尔辛基大学时创建了Linux ,以应对缺乏其他操作系统的开放许可的情况。

MP风格是Ubuntu ,基于另一种风格Debian 。 根据Wikipedia的说法,Debian于1993年由Ian Murdock首次宣布,Debian 0.01于1993年8月发布,并且第一个稳定版本于1996年发布。Ubuntu于2004年发布,“以南非的ubuntu哲学命名(字面上是,[主要开发人员] Canonical Ltd建议将其翻译为“对他人的人性”或“我就是我,因为我们都是谁”。

网络服务器

Apache HTTP服务器最早的 服务器 之一)为会议计划器提供动力。 维基百科报道,Apache成为“第一个为超过1亿个网站提供服务的Web服务器软件”。 它于1995年开始开发,当时我正根据其专有的CD内容业务,帮助微软的新在线服务运行由媒体视图驱动的新闻站点。 例如,您可能还记得惊人的Microsoft Dogs CD-ROM,它由媒体视图提供支持:

Microsoft狗CD-ROM

坦白说,我不知道媒体观看的历史 ,但是看来微软的是基于早期的NeXT标准。

微软狗。 但是,我离题了...

编程语言和框架

Meeting Planner是用开放源代码PHP编写的 ,该语言是用C编程语言和开放源代码编译器编写的。

但是,从根本上来说,这是PHP的开源Yii框架,对我而言,在构建Meeting Planner方面,这是我最大的权力所在。 Yii于2010年首次发布,使PHP中的MVC编程快速高效。

是的,我也知道Laravel的优势,但是当我深入编程时,它似乎不如Yii成熟。 而且,坦率地说,Yii 2.0已经满足了我的所有需求。

Meeting Planner展示了Yii的质量优于我所做的任何其他工作。

想更多地了解Yii? 不仅仅是因为我写了它,我还推荐了Envato Tuts +系列的《 如何使用Yii2编程》 ; 好吧,好吧,主要是因为我写了它。 我介绍的另一个基于Yii的产品是WordPress替代产品Craft CMS ,这是一款出色的CMS,适用于希望对其发布平台具有更多功能和控制力的开发人员。

多年来,Yii团队的一些成员也亲自帮助了我,我非常感谢。

数据库

Meeting Planner还使用了多语言PHP的主要数据库合作伙伴MySQL,它是1994年推出的另一个著名的开源数据库

Yii的ActiveRecord支持使编写与MySQL一起使用的代码通常变得容易且易于管理。

电子邮件传送

MP依靠电子邮件来宣布会议邀请和会议更改,并为人们的日历提供iCal附件。 它通过开放的SMTP标准,使用Yii扩展的流行SwiftMailer扩展程序将电子邮件发送到专有Mailgun,以进行外发。 为了使用Mailgun的API,MP使用开源Guzzle

而且,为了发送与所有讨厌的邮件客户端兼容的漂亮HTML电子邮件,它使用Send With Us的开源Oxygen模板 。 有一天,MP将能够动态地将OpenBuilding的开源CSS内联程序用于SwiftMailer ; 它对我来说还不太有效。

会议计划者开源基金会-SendWithUs氧气模板

应用程序扩展和插件

除了上面提到的那些以外,Meeting Planner还使用大量其他开源的组件,扩展和插件。 让我们看一下这个.json文件:

"require": {
        "php": ">=5.4.0",
        "yiisoft/yii2": ">=2.0.7",
        "yiisoft/yii2-bootstrap": "*",
        "yiisoft/yii2-swiftmailer": "*",
        "openbuildings/swiftmailer-css-inliner":"*",
        "2amigos/yii2-google-maps-library": "*",
        "2amigos/yii2-google-places-library": "*",
        "stichoza/google-translate-php": "~2.0",
        "google/apiclient": "1.0.*@beta",
        "2amigos/yii2-date-time-picker-widget": "*",
        "yiisoft/yii2-jui": "*",
        "cebe/yii2-gravatar": "*",
        "kartik-v/yii2-widget-fileinput": "*",
        "yiisoft/yii2-imagine": "*",
        "2amigos/yii2-resource-manager-component": "0.1.*",
        "yiisoft/yii2-authclient": "~2.0.0",
        "mailgun/mailgun-php": "~2.0",
        "guzzlehttp/guzzle":"6.2.0 as 4.2.3",
        "php-http/guzzle6-adapter":"1.0.0",
        "kartik-v/yii2-widget-typeahead": "^1.0",
        "kartik-v/yii2-widget-switchinput": "^1.3",

您可能已经注意到,这是MP的composer.json文件的一部分。 那是什么,你问? 这是我们的开源软件包管理器使用的文件。

包装经理

如果没有composer (开源社区软件包管理器),那么集成和管理以上所有组件的使用将更加困难。

HTML5和CSS框架

对于HTML5和CSS,Yii2开箱即用地集成了Bootstrap 3 。 您的Yii网站从一开始就看起来很棒,并且在移动设备和平板电脑上的行为负责任。

根据Wikipedia的说法, Bootstrap是GitHub上第二大星级的项目 ,拥有超过95,000个星标和40,000多个分叉。 Bootstrap是由Mark Otto和Jacob Thornton在Twitter上开发的。

对我来说,它是良好的Web开发最重要的通用组成部分之一,它使每个人的生活都变得更加轻松。 Bootstrap允许没有设计技能的开发人员构建出色的站点,只需看看Meeting Planner( 我没有良好的设计技能 )即可。 它使我们能够专注于产品而不是基本设计。 Bootstrap让您从庞大的设计团队的基础开始,并节省了无数的时间和金钱。

引导扩展
会议计划者开源基金会-Kartiks Bootstrap Switches

Meeting Planner还使用了一些流行的面向社区的开发人员与Yii集成的少数Bootstrap扩展:

这些和其他插件基于流行的开源库和小部件:

这些插件是Meeting Planner进行用户安排的用户体验的关键要素。

Yii扩展

Yii还提供了一些其他开源扩展 。 例如,其AuthClient扩展使我可以轻松地将Facebook,Google和LinkedIn社交登录集成到Meeting Planner中 。 MP使用Yii的高级模板 ,提供开箱即用的数据库驱动的用户管理。

服务

还有偶尔的“开放式服务”,例如Gravatar ,它提供默认的用户个人资料图像。

文字编辑器

最近,我终于从专有的过时的TextMate切换到GitHub支持的开源Atom编辑器 。 我的生产力腾飞了。 TextMate的自动完成功能只有一个方面,我还没有时间去Google那里寻找替代产品。 可以看到,Atom社区已构建了数不胜数的软件包,可以轻松搜索和安装它们。

会议计划者开源基金会-Atom Packager
还有什么?

这就是我目前能想到的。 Meeting Planner中可能还有很多其他开源的东西,我在这里没有意识到或提及。 请在评论中发表您的补充! 您也可以直接通过Twitter @reifman与联系

而且,我没有提及通过Google搜索找到的所有在线社区,这些社区都提供了我经常依赖的编程提示问题和答案。 或者我们的计算机和移动设备本身依赖许多开源软件这一事实。

开源所有权

如果您是一名开发人员,那么可能需要一天不与某些开源组件或工具进行交互才能做到这一点。 我鼓励您考虑可以显示出对社区努力的支持的方式。

开源的百分之一

当我期待从投资者那里筹集资金时,我决定只为开源筹集1%的股份。 换句话说,Meeting Planner的百分之一将用于支持由我们最终的董事会指导的开源项目和基金会。

我也开始尝试众筹。 我一直在探索WeFunder服务。 随着SEC新的众筹规则的实施,其成功可能会不断增长。 请考虑关注我们的WeFunder个人资料 。 我计划在我们的系列文章中写更多有关此的内容。

下一步是什么?

如果没有开源软件以及社区的历史和持续的努力,我根本无法构建Meeting Planner。

我再说一遍。 不可能的。

如果您还没有这样做,请立即安排第一场会议 ,以尝试使用Meeting Planner,同时知道开放源社区的人们可以更快,更轻松地计划自己的一天。

感谢所有曾经将代码签入开放存储库的人!

在“ 用PHP构建您的启动”系列中观看即将发布的教程。 还有其他一些重要功能。

相关链接

翻译自: https://code.tutsplus.com/tutorials/building-your-startup-the-open-source-foundation-behind-meeting-planner--cms-26664

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值