Unlimited WordPress themes, graphics, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Open Source
Code

Пишем свой стартап: опен-сорс за планировщиком собраний

by
Difficulty:IntermediateLength:MediumLanguages:
This post is part of a series called Building Your Startup With PHP.
Building Your Startup With PHP: Collecting and Managing User Reports and Feedback
Building Your Startup: Refining Email Templates

Russian (Pусский) translation by Masha Kolesnikova (you can also view the original English article)

Final product image
What You'll Be Creating

Этот учебник является частью серии статей Пишем свой стартап на PHP на Envato Tuts +. В этой серии я направляю вас через запуск приложения от концепции до готового продукта, используя приложение Планировщик встреч в качестве реального приложения. На каждом шаге я делаю релиз кода планировщика собраний в качестве примеров с открытым исходным кодом, из которых вы можете узнать что-то новое. Я также рассмотрю связанные с запуском бизнес-вопросы по мере их возникновения.

В сегодняшнем эпизоде я хотел бы сделать шаг назад и задуматься над тем, как мне удалось создать сложную и удобную в использовании услугу планирования в течение нескольких месяцев.

Ясно, как и Дональд Трамп, я потрясающий «победитель!». или нет; Я выигрываю так много. И я просто еще один пример того, как «однопользовательские стартапы» запускают продукты из гаражей. Я не могу поверить, что Стив Джобс нуждался в Стиве Возняк или Пол Аллен нуждался в Билле Гейтсе - какие патетические муфты! Они были чрезмерными!

Правда в том, что я никогда не смог бы построить все это без блестящих усилий сообщества open-source.

Сегодня я собираюсь взглянуть на все компоненты с открытым исходным кодом, которые обеспечивают основу для Планировщика собраний, приложение, которое я создавал и писал в Envato Tuts +. Если вы еще не опробовали Планировщик собраний, то обязательно назначьте свое первое собрание прямо сейчас - попросите друга выпить чашку кофе с вами или вместе пообедайте.

Я участвую в комментариях ниже, поэтому, пожалуйста, поделитесь своими отзывами. Сегодня меня особенно интересует, есть ли другие компоненты с открытым исходным кодом в Планировщике собраний, кроме тех, что я упоминул ниже. Я также открыт для новых идей и предложений для будущих учебников.

Напомним, что весь код Планировщика собраний написан в Yii2 Framework для PHP (два больших элемента с открытым исходным кодом). Если вы хотите узнать больше о Yii2, ознакомьтесь с нашей параллельной серией Программирование с Yii2.

Существует ли еще один «стартап одного человека»?

К сожалению, в нашей культуре и дискриминации есть так много людей в технологии, что знакомая фраза «стартап из одного человека» имеет встроенную гендерную предвзятость. Уменьшение количества женщин, изучающих компьютерную науку, фактически началось в 1980-х годах. До этого женщины были одинаково вовлечены в технологии!

SmallBizTrends имеет интересную информацию о 10 самых успешных стартапах из одного человека, некоторые из которых были сомнительными отдельными предприятиями. Например, история первого найма сотрудника Amazon, по-видимому, указывает на то, что его этап в одного человека был кратким. У других стартапов есть свидетельства более длительных one-person фаз.

Top 10 Most Successful One Man Startups
через Тенденции малого бизнеса, Топ-10 самых успешных стартапов из одного человека.

Blogger и разработчик Стив Ридут один работал над ReadLang в течение трех лет и считал.

Стартапы одного человека есть, но редко они делают выстреливают. Финансисты ищут команды больше, чем отдельные лица. Команды, как правило, более эффективны, потому что, работа в команде - о да, и сотрудничество.

До сих пор моя команда для Планировщика собраний охватывала огромное количество бесплатного программного обеспечения с открытым исходным кодом, за что я невероятно благодарен.

Давайте рассмотрим, что помогло мне создать Планировщика собраний.

Открытый исходный код, используемый с Планировщиком собраний

«Я такой, какой я есть из-за того, кто мы все».

Хостинг

Планировщик встреч (MP) работает в Digital Ocean, который также работает и поддерживает программное обеспечение с открытым исходным кодом, и они предложили мне несколько месяцев обслуживания, при создании Планировщика собраний на собственном дроплете.

Основополагающий код

Операционная система

MP работает на Linux, самой популярной операционной системы с открытым исходным кодом, которую почти все мы знаем и любим. Разработчик Linus Torvalds создал Linux в 1981 году, посещая Хельсинский университет в ответ на отсутствие открытых лицензий в других операционных системах.

MP работает на Ubuntu, которая основана на другом релизе, Debian. Согласно Википедии, Debian был впервые анонсирован в 1993 году Яном Мердоком, Debian 0.01 был выпущен в августе 1993 года, а первый стабильный релиз был сделан в 1996 году. Ubuntu, выпущенный в 2004 году, «назван в честь южноафриканской философии ubuntu (дословно «человечность»), которую [ведущий разработчик] предлагает Canonical Ltd, можно свободно перевести как «человечество другим» или «Я тот, кто я из-за того, кем мы все являемся».

Веб сервер

HTTP-сервер Apache, один из самых ранних, помогает жить Планировщику встреч. Википедия сообщает, что Apache стал «первым программным обеспечением для веб-серверов для обслуживания более 100 миллионов сайтов». Он начался в 1995 году, в то время как я помогал новому онлайн-сервису Microsoft запускать новостные сайты на основе медиа-представления на основе своего фирменного контента для компакт-дисков. Например, вы можете вспомнить удивительный компакт-диск Microsoft Dogs, оснащенный медиа-представлением:

Microsoft Dogs CD-ROM

Честно говоря, я не знаю историю медиа-view, но, похоже, Microsoft была основана на раннем стандарте NeXT.

Microsoft Dogs. Но, я отвлекся ...

Язык программирования и Framework

Планировщик встреч написан на PHP, языке, который написан на языке программирования C с помощью компиляторов с открытым исходным кодом.

Тем не менее, это именно open-source Yii Framework для PHP, был в основном самым важным для меня в создании Планировщика собраний. Впервые выпущенный в 2010 году, Yii делает программирование MVC в PHP быстрым и эффективным.

Да, я тоже знаю, что Laravel тоже хорош, но когда я погружался глубже, он выглядел не столь зрелым, как Yii. И, честно говоря, Yii 2.0 удовлетворил все мои потребности.

Планировщик встреч демонстрирует качество Yii лучше, чем любая другая работа, которую я сделал.

Хотите узнать больше о Yii? Не только потому, что я написал ее, я рекомендую серию Envato Tuts +, как программировать с Yii2; хорошо, хорошо, в основном потому, что я написал ее. Еще один продукт на основе Yii, который я рассмотрел, - это альтернатива WordPress, Craft CMS, выдающаяся CMS для разработчиков, которые хотят больше власти и контроля над своей издательской платформой.

Несколько членов команды Yii также помогали мне лично на протяжении многих лет, и я очень им благодарен.

База данных

Планировщик встреч также использует первичного партнера по базам данных PHP, MySQL, еще одну известную базу данных с открытым исходным кодом, запущенную в 1994 году.

Поддержка ActiveRecord от Yii позволяет писать код для работы с MySQL, как правило, легко и управляемо.

Доставка электронной почты

MP полагается на электронную почту, чтобы объявлять приглашения на собрания и изменения на собраниях, а также предоставлять приложения iCal для календарей. Он отправляет свои письма с помощью расширения Yii для популярного SwiftMailer через открытый SMTP-стандарт и использует Mailgun для исходящей доставки. Для работы с API Mailgun MP использует open-source библиотеку Guzzle.

И, чтобы отправлять красивые HTML-письма, совместимые со всеми этими отвратительными почтовыми клиентами, он использует шаблоны Oxygen. В один прекрасный день, MP сможет динамически использовать OpenBuilding CSS Inliner для SwiftMailer; но пока у меня это совсем не работает.

Meeting Planners Open Source Foundation - SendWithUs Oxygen Templates

Расширения и плагины приложений

В дополнение к упомянутым выше, Планировщик собраний использует тонну других компонентов, расширений и плагинов, все из которых являются open-source. Давайте посмотрим на этот .json файл:

Вы, наверное, заметили, что это часть файла composer.json MP. Что это, спросите вы? Это файл, используемый нашим open-source менеджером пакетов.

Менеджеры пакетов

Интеграция и управление использованием всех вышеперечисленных компонентов были бы намного сложнее без composer, open-source менеджера пакетов.

HTML5 и CSS фреймворки

Для HTML5 и CSS Yii2 интегрирует Bootstrap 3 из коробки. Ваш сайт Yii выглядит потрясающе и с самого начала корректно отображается на мобильных устройствах и планшетах.

Согласно Википедии, Bootstrap - второй по величине проект GitHub с более чем 95 000 звезд и более 40 000 форками. Bootstrap был разработан Марком Отто и Якобом Торнтоном во время работы в Twitter.

Для меня это одна из наиболее важных составляющих хорошей веб-разработки, которая облегчает жизнь каждому; Bootstrap позволяет разработчикам без дизайнерских навыков создавать отличные сайты - просто посмотрите на Планировщик собраний (у меня нет хороших дизайнерских навыков). И это позволяет нам сосредоточиться на наших продуктах, а не на базовом дизайне. Bootstrap позволяет вам начать, как будто у вас есть большая команда дизайнеров и экономит огромную кучу времени и денег.

Расширения Bootstrap

Meeting Planners Open Source Foundation - Kartiks Bootstrap Switches

Планировщик встреч также использует несколько расширений Bootstrap, интегрированных с Yii некоторыми известными разработчиками:

Эти и другие плагины основаны на популярных библиотеках и виджетах с открытым исходным кодом:

Эти плагины являются ключевыми элементами пользовательского интерфейса Meeting Planner для планирования.

Расширения Yii

Yii также предлагает некоторые дополнительные расширения с открытым исходным кодом. Например, расширение AuthClient позволяет мне легко интегрировать социальный логин Facebook, Google и LinkedIn в Meeting Planner. И MP использует расширенный шаблон Yii, который обеспечивает управление пользователями прямо из коробки.

Сервисы

Существует также «открытый сервис», такой как Gravatar, который предлагает изображения профиля пользователя по умолчанию.

Текстовые редакторы

Недавно я, наконец, переключился с проприетарного, устаревшего TextMate на GitHub-поддерживаемый редактор Atom. Моя производительность резко возросла. Есть только один аспект AutoComplete TextMate. У меня еще не было времени погуглить ему замену. Смотрите, сообщество Atom создало миллион пакетов, которые легко найти и установить.

Meeting Planners Open Source Foundation - Atom Packager

Что-то еще?

Это все, что пришло мне в голову на данный момент. Вероятно, в Планировщике собраний есть много других open-source вещей, о которых я не знаю и не упоминул здесь. Пожалуйста, разместите свои дополнения в комментариях! Вы также можете связаться со мной в Twitter @reifman.

И я не упомянул все онлайн-сообщества, найденные с помощью поисковых запросов Google, с вопросами и ответами, на которые я регулярно полагаюсь, для советов по программированию. Или тот факт, что наши компьютеры и мобильные устройства полагаются на большое количество программного обеспечения с открытым исходным кодом.

Доля владения с открытым исходным кодом

Если вы разработчик, вы, вероятно, не сможете сделать всё это за день, не взаимодействуя с каким-либо компонентом или инструментом с открытым исходным кодом. Я рекомендую вам рассмотреть способы оказания поддержки усилиям сообщества.

Один процент для Open Source

Поскольку я смотрю вперед, чтобы собрать средства от инвесторов, я решил разделить одну процентную ставку только с Open Source. Другими словами, один процент Планировщика собраний будет использоваться для поддержки  Open Source проектов.

Я также начинаю экспериментировать с crowdfunding. Я изучал сервис WeFunder. Его успех может увеличиться с внедрением новых правил SEC. Пожалуйста, обратите внимание на наш профиль WeFunder. Я планирую написать об этом больше в нашей серии.

Что дальше?

Просто я никак не мог построить Планировщик встреч без программного обеспечения с открытым исходным кодом и усилий всего сообщества.

Позвольте мне повторить это. Это было бы невозможно.

Если вы еще этого не сделали, попробуйте Планировщик собраний прямо сейчас, запланируйте свою первую встречу, и знайте что планирование стало легче благодаря усилиям open-source сообщества.

Спасибо всем, кто когда-либо писал open-source!

Следите за предстоящими учебными пособиями в серии Пишем свой стартап на  PHP. Впереди у нас есть еще несколько больших функций.

Ссылки по теме

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.