1.07K subscribers
260 photos
1 video
341 links
1cloud.ru — автоматизированный онлайн-сервис аренды виртуальной инфраструктуры.

Пишем про управление проектами, безопасность в ИТ, ЦОДы и облачную инфраструктуру.

Поддержка @onecloud_customerbot
Download Telegram
Проекты, в которые никто не верил, но они смогли

🚀🏡💰

А знаете ли вы, что…

…в проекты, которые сейчас считаются топовыми и знакомы миллионам людей, на старте развития никто не верил?

SpaceX

Почти неизвестный в 2002 Илон Маск только мечтал о космосе и колонизации Марса. Falcon планировали разработать всего за 15 месяцев, однако на проект ушло целых 4 года, и первые 3 попытки обернулись для изобретателя разочарованием. Однако уже четвертый запуск показал позитивный результат. Кстати, позже Маск говорил, что закрыл бы проект, если эта попытка обернулась бы крахом.

AirBnB

Сейчас Брайан Чески уже миллиардер, а 11 лет назад он только безуспешно стучался к инвесторам, которые отказывали в финансировании, так как проект их не зацепил. Многие вообще считали идею Чески вздором — кто будет искать жилье у незнакомца? Инкубатор Y Combination поверил в идею и дал сильнейший импульс к его росту. Уже в 2017 году доход проекта составил более 90 миллионов долларов.

Bitcoin

В далеком 2009 (когда можно было беззаботно намайнить монет) Bitcoin считали развлечением для гиков. Когда создатель криптовалюты предложил завсегдатаям одного IT-форума присоединиться, его приглашение принял всего 1 человек. Уже к началу 2011 года биткоин сравнял свою стоимость с валютой США. А что было дальше, вы наверняка знаете.

Самым смелым предлагаем в комментариях начать небольшую беседу — расскажите о своем проекте, поделитесь мечтами и успехами, а 1cloud всегда поддержит вас в начинаниях.

http://amp.gs/r2Jm
5 неочевидных советов по управлению стартапом

📝📈🚀

1. Не забывайте о парадоксе роста

Чем выше окажутся темпы роста проекта, тем больше инвестиций потребуется на поддержание этой динамики. Будьте готовы «полюбить» быстрорастущий, но временно убыточный стартап.

2. Документы — ваше все

Если вы вовлечены в проект с близкими людьми или друзьями, в которых уверены на все 100500%, или Инвестор-С-Большой-Буквы готов прямо сейчас поддержать ваш проект на ваших же условиях, не пренебрегайте документами. Все обязательства и договоренности должны быть закреплены документально. Потом скажете себе спасибо за это.

3. Будьте готовы к минимальному доходу

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

4. Выбирайте команду и доверяйте ей

Команда — одна из ключевых составляющих формулы успеха. Однако мало только подобрать исполнителей, не менее важно научиться им доверять. Многие владельцы проектов совершают одну и ту же ошибку — стараются взять все на себя и активно руководить в тех сферах, в которых ничего не смыслят.

5. Юридическое лицо

На самом старте проекту совсем не обязательно иметь юр. лицо. Открытие ООО на стадии сырой идеи — еще одна распространенная ошибка предпринимателей. Заключите первую сделку на словах, если намерения сторон будут серьезны, уже под эту сделку оформите юр. лицо. Однако и совсем откладывать это не стоит — отсутствие юр. лица может отпугнуть клиентов и добавить сложностей с оформлением домена, авторских прав и пр.

Друзья! Мы верим, что каждый из наших подписчиков читает нас не просто так. Есть ли у вас собственный проект, в чем его уникальность? Самые смелые могут в комментариях поделиться с коллегами и командой 1cloud опытом и дать несколько советов по управлению проектом!
Правило 1-50: как получить прибыль от проекта за сутки

Реализация прибыльной идеи не должна отнимать лучшие годы жизни. Рассказываем о правиле 1-50, которое позволяет быстро получить первую прибыль от нового проекта.

Планируя дело, спросите себя, что потребуется, чтобы запустить проект за 1 день и получить 50% желаемого результата. Почему этот принцип работает?

http://amp.gs/rbY2
Облачный бизнес МТС, в который входит сервис 1cloud, компания «ИТ-ГРАД» и облачный провайдер #CloudМТS, занял одну из первых строчек рейтинга российского рынка IaaS в 2019 году по версии известного ресурса CNews.

Согласно данным CNews, выручка ведущих отечественных IaaS-провайдеров выросла на 56%, что свидетельствует не только о большом потенциале роста в данном сегменте, но также о растущей тенденции к консолидации.

По сравнению с 2014 г., когда CNews впервые начал анализировать рынок IaaS, совокупный оборот ведущих поставщиков увеличился в 7 раз.

Подробнее о рейтинге:

http://amp.gs/S8ht
Все валится из рук? Ловите подборку из 4 приложений для организации задач!

👉📱📅

1. Remember The Milk?

Приложение всех времен и народов — изящное, функциональное, простое в использовании. Ставьте задачи, управляйте их приоритетами, прикрепляйте документы и многое другое. Есть интеграция с Google Assistant! Разве это не прекрасно? Доступны десктопные (Windows, Linux, Mac) и мобильные приложения. Настоятельно рекомендуем к тестированию!

2. Google Tasks

Если вы — любитель сервисов от Google, вам подойдет и Google Tasks. Инструмент полностью бесплатный, доступна веб-версия, приложения на Android и iOS. Позволяет управлять задачами, разбивать их на подзадачи, ставить сроки и добавлять списки.

3. TickTick

Более продвинутое приложение по сравнению с Google Tasks. Доступно на Android, Windows, MacOS, iOS, есть веб-версия. С помощью TickTick можно ставить задачи, разбивать их на подзадачи, добавлять метки, списки и ставить сроки. Крайне интуитивный интерфейс. Также есть премиум-версия, после покупки которой вы получите доступ к полному функционалу календаря и умным спискам. Однако, с большой долей вероятности, вы останетесь довольны и бесплатной версией.

4. Things

Увы, адептам Android придется пропустить этот пункт. Приложение доступно только для пользователей Apple. Если вы из их числа, приложение порадует вас сочетанием элегантного дизайна и интуитивного интерфейса. Вам не придется тратить много времени на работу с приложением, наоборот, благодаря простому взаимодействию вы сможете сконцентрироваться именно на выполнении задач, а не на работе со списками :) Приложение платное, но есть пробный период.

Пользуетесь ли вы digital-списками или среди нас есть приверженцы старых дедовских бумажных блокнотов? Что позволяет вам контролировать рабочие и домашние задачи, приходится ли справляться с дедлайнами? Предлагаем подискутировать в комментариях!
Как оценить производительность Linux-сервера: открытые инструменты для бенчмаркинга

Мы подготовили подборку инструментов и скриптов для оценки производительности процессоров, СХД и памяти на Linux-машинах: Iometer, DD, vpsbench, HammerDB и 7-Zip.

http://amp.gs/Sl2R
Сейчас использование облаков превратилось в отраслевой стандарт, так как облака — выгодное, гибкое и надежное решение.

Однако ситуация еще 10 лет была совершенно иной: бизнес с настороженностью относился к технологии, которая уже тогда не была чем-то революционным — облачные технологии берут начало еще в 50-х годах прошлого века.

Давайте посмотрим, как развивалось это технологическое направление.

http://amp.gs/Sn2O
5 книг и 1 курс по сетям

📚🔌💻

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

1. Компьютерные сети (Э. Таненбаум, Д. Уэзеролл)

5 издание настоящего бестселлера о сетевых технологиях. Из комментариев к предыдущей подборке мы знаем, что некоторые из наших подписчиков с Таненбаумом неплохо знакомы :)
В книге вас ждет разбор основных концепций, устройства и принципов работы железа и ПО, подробно рассмотрены аспекты организации сетей, а вся теория снабжена доступными примерами.

2. Компьютерные сети. Принципы, технологии, протоколы (В. Олифер, Н. Олифер)

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

После прохождения курса можно получить официальный сертификат.

3. Компьютерные сети. Нисходящий подход (Д. Куроуз, К. Росс)

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

4. Компьютерные сети. Настольная книга системного администратора (Д. Куроуз, К. Росс)

Бестселлер, получивший не только отличные отзывы от аудитории, но и действительно стоящий фидбек — книга пережила 6 переизданий и была в топе продаж почти 15 лет! Из нее вы узнаете:

• как работают локальные сети и интернет;
• принципы работы сетевых протоколов и служб;
• алгоритмы маршрутизации
• азы сетевой безопасности;
• основы сетевого администрирования.

5. Официальное руководство Cisco по подготовке к сертификационным экзаменам CCNA ICND2 200-101. Маршрутизация и коммутация (У. Одом)

Пожалуй, не нуждается в комментариях. Исчерпывающее издание от Cisco.

6. Курс CCNA от Cisco

Курс охватывает основы ИТ-сетей:

• сетевые концепции и конфигурации;
• устранение неполадок в основных технологиях маршрутизации и коммутации;
• IPv4 и IPv6.

Готовы дополнить наш список? Ждем в комментариях ваши рекомендации по курсам, литературе или полезным видео!
Ищем frontend-разработчика в команду

💻🙌☕

Полная занятость, гибкий график

З/П от 80 000 руб. на руки

Какие задачи предстоит решать:

1. Перевод всех внешних сайтов группы компаний (1cloud.ru, it-grad.ru, oblako.kz, it-grad.kz) на единый стек технологий;

2. Внесение изменений, поддержка существующих и разработка новых страниц, разделов на сайтах, добавление и адаптация модулей и плагинов;

3. Оптимизация работы сайтов по времени загрузки и другим техническим характеристикам.

Что мы предлагаем:

Оформление по ТК РФ;
Белая зарплата;
ДМС;
Современный офис в Leader Tower (м. Московская);
Интересные задачи;
Работа в одном из крупнейших облачных провайдеров России;
Возможность карьерного роста и профессионального развития.
Какими качествами должен обладать кандидат:

Уверенное знание HTML5, CSS, JavaScript, jQuery, PHP, MySQL, AJAX;
Опыт работы с препроцессорами (LESS, SASS) и сборщиками (GULP, WEBPACK);
Опыт адаптивной верстки;
Уверенное знание одной/нескольких популярных CMS (WordPress, Drupal, Битрикс);
Понимание принципов построения бекэнда и серверных технологий (Node.js, PHP, .NET и т. д.);
Опыт работы с Git;
Графические редакторы (Photoshop, Illustrator, Sketch и т. д.);
Умение работать над несколькими проектами одновременно.

В чем нужно разбираться:

кросс-браузерная и кроссплатформенная разработка;
адаптивная и отзывчивая верстка;
базовые принципы SEO-оптимизации;
базовые принципы UI/UX.
Будем рады видеть вас в нашей команде!

Резюме просьба отправлять на почту:

marketing@it-grad.ru
Бережливый стартап: разбор концепции

💵📈🚀

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

Давайте разберемся, какие принципы лежат в основе концепции бережливого стартапа и какие принципы помогут ее внедрить.

Основная идея

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

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

Почему стартапы терпят крах?

Эрик Рис считает, что проекты проваливаются из-за двух основных причин.

1) Чрезмерное увлечение традиционным подходом к ведению бизнеса.

2) Отказ от менеджмента, когда традиционные подходы не работают.

Между этими двумя крайностями и лежит концепция бережливого стартапа.

Главные принципы бережливого стартапа

В основе этой методики развития проекта лежит 5 принципов.

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

2) В основе предпринимательства лежит менеджмент. Стартапу нужен особый, гибкий менеджмент, который поможет проекту стартовать в условиях неопределенности.

3) Подтверждение фактами. Задачи стартапа не ограничиваются производством продуктов и принесением дохода. Проект и команда должны регулярно обучаться на проверенных фактах, результатах тестирования гипотез и мнении потребителей.

4) Цикл «создать — оценить — научиться». Предлагайте пользователям минимальный продукт без опций, которые могут понравиться потенциальным потребителям, тестируйте его на реальных клиентах, собирайте обратную связь и модернизируйте продукт с учетом полученных данных.

5) Учет инноваций. Используйте систему критериев и метрик, которые позволят оценить полезность модификаций продукта и динамику стартапа в целом.

Однако проект не спасет ни эффективный менеджмент, ни талантливая команда, если продукт не нужен пользователям. Как без затрат денег, сил и времени понять, чего хочет рынок?

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

Концепция бережливого стартапа учит предпринимателей выпускать минимально рабочую версию продукта и «оттачивать» ее на основе реальной обратной связи от клиентов — именно такой подход позволит проекту сэкономить усилия команды, время и денежные ресурсы.
Чем грозит новый закон о краудфандинге

👉💵💻

Новый закон легализует получение проектами инвестиций посредством интернета, в том числе, это коснется и краудфандинга. Нормативный акт вступает в силу 1 января 2020 года. Предполагается, что этот закон не только закрепит способы получения финансирования, но и поможет государству регулировать работу сайтов для сбора средств.

Основные положения

Закон о краудфандинге определяет порядок взаимодействия инвестора и получателя средств (включая заключение договорных обязательств), условия и этапы передачи денежных средств, права и обязанности операторов краудфандинговых платформ и другие ключевые детали.

Закон о краудфандинге определяет три способа получения денег:

— получение займов;
— предложение утилитарных цифровых прав;
— размещение небанковских ценных бумаг.

Подробнее остановимся на утилитарных цифровых правах. Утилитарными цифровыми правами (УЦП) являются права на получение объекта или интеллектуальных прав на него, а также на получение услуг или же выполнение каких-либо работ, если эти права созданы и использованы в информационной системе.

Как определяется владелец УЦП? Владение правами закрепляется за конкретным лицом с помощью особого цифрового свидетельства.

Взаимодействие фаундера и платформы

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

Перед тем, как платформа заключит официальный договор с инвестором, ей потребуется прямо подтвердить понимание инвестором возможных рисков и финансовых потерь.
Операторов платформ обязали вести отчетность перед ЦБ: он также участвует в регулировании краудфандинга и будет осуществлять ведение реестра операторов с полностью открытым доступом.

Как инвестиционной платформе попасть в реестр ЦБ?
Для попадания в общий реестр операторам платформ придется подготовить заявление в ЦБ и предоставить необходимые данные. Также предусмотрена возможность исключения оператора из общедоступного реестра за определенные нарушения.

Ограничения по объему инвестиций и средств

Закон предусматривает определенные ограничения по объему привлекаемых средств. Согласно ему, одно лицо не имеет право привлекать более 1 миллиарда рублей за календарный год.

Ограничения касаются не только получателей средств. Физ. лицам также ограничили объем инвестиций — одно лицо не сможет вложить более 600 тысяч рублей в течение одного года. Ограничение не коснется ИП и квалифицированных инвесторов. Физлица смогут легально «нарушить» это правило только при покупке УЦП у ПАО.

Если человек, не являющийся ИП и не попадающий под вышеуказанные послабления, все-таки превысит лимит в 600 тысяч, оператор инвестиционной платформы вынужден будет выкупить «лишние» права или бумаги. Если же человек решил обмануть платформу и предоставил ей неверную информацию о своей деятельности в качестве инвестора, с платформы это требование снимается.
MVP и RAT: как эволюционируют подходы к разработке

Концепция минимально рабочего продукта успела набить оскомину стартаперам. Однако сейчас эта аббревиатура несколько изменила свое первоначальное значение и чаще используется, чтобы указать на недоработанный, «сырой» продукт.

Что вы представляете, когда слышите про MVP? Скорее всего, продукт с минимальным набором функций и опций, у которого впереди еще много этапов разработки. Далеко не всегда организаторы проекта верно определяют элементы продукта, которые нужны здесь и сейчас, и те, реализация которых может подождать. В итоге на разработку уходит немало времени и ресурсов, стартап не взлетает, бюджет трещит по швам, а проект медленно, но верно идет ко дну.

По этой причине на смену концепции MVP приходит RAT — Riskiest Assumption Test — проверка максимально рискованной гипотезы. Этот подход помогает быстро понять, сможет ли утвердиться продукт на рынке или же он обречен на провал.

MVP и RAT — так ли они далеки?

http://amp.gs/SN5F
Backlog Grooming: экономим время на переделках

💡📝✔️

Любой продукт или начинание требует от создателя внимания и ухода. Это относится и к бэклогу задач. Неграмотное взаимодействие с бэклогом, отсутствие структуры приводит к тому, что бэклог превращается в свалку тасков, не приносящую никакой пользы проекту. Избавиться от этой проблемы поможет Backlog Grooming.

Что такое Backlog Grooming?

Backlog Grooming — это регулярные мероприятия по уходу за бэклогом продукта. По факту, это особый вид встреч команды, в ходе которой происходит анализ, расстановка приоритетов и подготовка к планированию спринта. Backlog Grooming позволяет решить 3 задачи:

— Подготовка задач разработки к их реализации
Задачу необходимо декомпозировать, т.е. разбить на более мелкие подзадачи, определить ее важность и приоритет.

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

— Актуализация данных
Имеющаяся информация о задачах актуализируется, отсутствующая запрашивается или добавляется.

Как провести Backlog Grooming?

Не совмещайте встречу для Backlog Grooming с планированием спринта. Груминг в обязательном порядке должен проводится в формате отдельной встречи перед непосредственным планированием. Именно груминг позволит нам проработать имеющиеся задачи к этапу планирования спринта. Не стоит звать всех, кто имеет хоть какое-либо отношение к продукту — желание показательно провести груминг отрицательно скажется на эффективности.

Обязательно должен присутствовать владелец продукта (или менеджер) и scrum-команда. Если есть возможность пригласить представителя клиента — обязательно сделайте это, чтобы груминг основывался на более полной информации.

Этапы проведения Backlog Grooming

1. Чистка списка задач
Удаляем из бэклога неактуальные задачи.

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

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

4. Расстановка приоритетов
Актуализируем приоритет имеющихся задач, приоритезируем новые.

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

6. Суммируем опыт
Заключительный этап Backlog Grooming, в ходе которого командой оптимизируется план развития продукта на основе опыта, полученного в течение предыдущих спринтов.

Груминг бэклога должен стать обязательным мероприятием, если вы хотите качественно разрабатывать продукт и управлять им. Backlog Grooming — это не еще одна бесполезная встреча, в ходе которой вы весело поболтаете с коллегами и разойдетесь.

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

— сэкономить время на «переделках» в будущем;
— собрать максимально полную информацию о user stories;
— определить зависимости внутри команды и выявить возможные риски;
— прозрачно планировать спринт.

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

Избежать неловкостей, связанных с недоступностью сервисов, и переплат поможет 1cloud. Мы гарантируем гибкую, легко масштабируемую и надежную IT-инфраструктуру.

Протестируйте бесплатно прямо сейчас.
Подборка IT-инструментов для системного администратора

🛠☁️☕️

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

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

git-annex assistant — заведите синхронизированную папку для всех ваших устройств, включая смартфоны на Android и iOS. Нужные файлы всегда под рукой.

Consul — удобный инструмент для настройки ваших сервисов и инфраструктуры в целом.

Doozerd — хранилище с высокой доступностью. Идеально подойдет для хранения небольших, но очень важных данных.

Ralph — подойдет для управления инфраструктурой и активами ЦОДа.

Haraka — неплохой SMTP-сервер. Отличается простотой и высокой производительностью.

Webmin — бесплатная панель управления для ВМ на Linux. Дружелюбный (правда, слегка нагруженный) веб-интерфейс в наличии.

drawthe — больше никаких корявых диаграмм сети, от руки нарисованных в Paint'e. Этот инструмент генерирует схемы на основе простой разметки.

Knot — быстрый и надежный опенсорсный DNS-сервер.

ICE Coder — еще один (весьма годный) редактор кода прямо в браузере.

Vim — в представлении не нуждается. Может, сегодня тот самый день, когда вы наконец-то решитесь в нем разобраться?

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

Разобраться с услугами 1cloud намного проще, чем закрыть vim — доступные цены, гибкое масштабирование и надёжность.

Узнайте обо всех преимуществах и оцените качество сервисов, оставив бесплатную заявку на тест.
В сегодняшнем материале предлагаем рассмотреть и сравнить 11 инструментов для веб-разработки:

👉💻☁️

Редакторы кода:

1) Sublime Text 3
2) Atom от GitHub
3) Visual Studio Code

IDE:

4) Eclipse
5) Geany
6) Light Table

Облачные IDE:

7) Cloud9
8) Codeanywhere
9) Eclipse Che
10) Neutron Drive
11) Orion

Подробнее в нашем блоге.
Как выбрать PHP-фреймворк

Процесс создания веб-приложения требует немало времени и усилий. Чтобы сделать этот процесс более эффективным и экономичным, разработчики переходят на использование фреймворков — они помогают сократить количество требуемого кода, сделать приложение более стабильным, а вам не придется в тысячный раз изобретать колесо.

Зачем использовать фреймворк?

Опытный разработчик назовет сразу несколько причин:

• ускорение разработки благодаря тому, что в фреймворках уже реализован базовый функционал, например, запросы к БД и многое другое;

• простота масштабирования и поддержки приложения;

• модель MVC (Model — View — Controller) — способ организации кода, где каждый модуль отвечает за свою задачу: модель — за структуру приложения и данные, представление (вид) — за то, что видит и с чем взаимодействует пользователь, контроллер — за связь между представлением и данными;

• организация базового уровня защиты приложения и многое другое.

Как выбрать фреймворк?

Не стоит открывать наиболее свежий список php-фреймворков и бросаться на самый навороченный из них. Прежде всего изучите варианты и проанализируйте следующие параметры:

• каков функционал фреймворка и подходит ли он разрабатываемому приложению;

• насколько высок порог вхождения;

• как динамично развивается фреймворк;

• есть ли качественная документация и активное сообщество;

• гарантирована ли поддержка.

Сегодня мы кратко рассмотрим 3 фреймворка — Laravel, Symfony и Phalcon.
S.O.L.I.D.: 5 принципов для ООП-разработчика

💻💫📈

SOLID — не только имя героя серии Metal Gear, но и аббревиатура, обозначающая 5 основных принципов проектирования в ООП. Давайте узнаем, какие принципы в ней зашифрованы и как в процессе разработки реализовать эти принципы.

Аббревиатура SOLID расшифровывается следующим образом:

S: Принцип единственной обязанности

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

Как реализовать этот принцип в разработке?

Объединять компоненты, которые могут измениться по одной и той же причине. Если компоненты неоднородны и изменения в которых вызываются разными причинами, постарайтесь их не объединять.

O: Принцип открытости-закрытости

Сущности должны быть открыты для расширения, но закрыты для модификаций.

Звучит сложно, не так ли? Однако этот принцип можно выразить иначе: поведение сущности (модулей, классов и пр.) можно изменить, создав новый тип или подтип сущности, однако это не должно вызывать изменений в коде.

L: Принцип подстановки Барбары Лисков

Подклассы должны быть способны заменять родительские классы. Иными словами, проектировать приложение стоит так, чтобы можно было использовать классы-наследники вместо родительских, не причиняя вреда работе приложения.

I: Принцип разделения интерфейса

Разрабатывайте узкоспециализированные интерфейсы, чтобы не обременять пользователя функциями, которые он не будет использовать.

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

D: Принцип инверсии зависимостей

Этот принцип может показаться сложным для понимания, так как состоит из 3 частей, однако на самом деле все не так уж и запутанно:

Модули верхних уровней должны быть независимы от модулей нижних.
Оба типа модулей должны зависеть от абстракций.
Детали должны зависеть от абстракций, а не наоборот.

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

Вам может показаться, что соблюдать каждый из 5 предложенных концепцией принципов будет крайне сложно. Однако для этого вам понадобится только два компонента: стремление и внимательность. Соблюдая SOLID, вы заметите, как улучшилось качество разрабатываемых вами приложений и упростилось их администрирование и поддержка.
Блог 1cloud вышел в ТОП-20 корпоративных блогов на Хабре!

Наверняка вы и сами сталкивались с нашими публикациями, когда листали хаброленту или просто искали ответ на интересующие вас вопросы.

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

👉🔒🖥️

Кажется, что бесплатный сертификат — оптимальный вариант в случае крайне ограниченного бюджета. Однако использование такого сертификата может накладывать определенные ограничения. Давайте разберемся, по каким причинам стоит отказаться от бесплатного решения.

1. Короткий срок действия

Максимальный срок действия бесплатного SSL-сертификата — 90 дней. Уже через 3 месяца полученный вами сертификат станет недействительным.

2. Только базовая проверка

Бесплатным сертификатом можно подтвердить только проверку домена (DV). Вы не сможете получить OV или EV SSL.

3. Не всегда подходят бизнесу

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

4. Отсутствие гарантий

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

Подведем итог. Бесплатные сертификаты можно использовать для защиты блогов или информационных сайтов, однако они совершенно не подходят компаниям. Возможно, они стали относительно популярны из-за убеждения в том, что качественный SSL-сертификат попросит у вас значительную часть бюджета.

Это не так. Базовая защита домена потребует всего 550 рублей и пару минут вашего времени — именно столько стоит SSL-сертификат начального уровня у 1cloud.

Опасаетесь, что выбор сертификата — это сложно?

Ответьте на несколько вопросов на нашем сайте, чтобы узнать, какой уровень защиты вам нужен.
Почему облако — гибкое решения для фриланс-разработчиков

💡☁️🥤

Распространен миф о том, что облако — решение сугубо для компаний и их проектов. Однако не стоит забывать о том, что облако может составить вам идеальную компанию, если вы занимаетесь разработкой на условиях фриланса.

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

1. Тестирование и обеспечение качества продукта

Условия работы фрилансера таковы, что к нему регулярно приходят новые клиенты со своей инфраструктурой и требованиями к продукту. Чтобы полноценно протестировать решение, разработчику необходимо создать для него условия, которые будут максимально похожи на условия целевой IT-системы.

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

Чтобы ускорить тестирование и сделать его максимально комфортным для всех, оптимальным решением будет развертывание тестовой среды в облаке. Клиенты 1cloud могут поднять новую ВМ всего за 2 минуты, указав необходимую конфигурацию. Также IaaS-решения позволяют имитировать необходимые критические сценарии, например, аварийное восстановление.

2. Масштабирование IT-систем

Если клиентом фрилансера становится небольшая компания, которой необходимо такое же небольшое приложение, будет достаточно одного виртуального сервера. Что делать, если для разработки недостаточно одной машины?

Обратившись к IaaS-провайдеру, вы можете арендовать инфраструктуру любого требуемого масштаба без серьезных инвестиций — вы будете оплачивать ее только по мере надобности, даже если облако нужно вам всего на 1 час.

3. Надежное хранение данных

Потерять базу данных или другой важный компонент приложения — страшный сон любого разработчика вне зависимости от того, работает ли он в компании или живет фрилансом. Забыть об этом раз и навсегда помогут бэкапы, однако не менее важно, где и как они будут храниться. Не всегда надежным решением будет просто сохранять их на своем рабочем ноутбуке или ПК.

Разрабатывая в облаке, вы сводите к нулю риск потери данных — достаточно лишь настроить правила создания и хранения резервных копий.

4. Совместная работа

Облако позволяет организовать единое рабочее пространство в том случае, если вы работаете над проектом не один. Это позволяет не только сэкономить время на разработку, но и перейти на качественно новый уровень взаимодействия.

Все еще сомневаетесь? Протестируйте надежность и комфорт использования IT-инфраструктуры от 1cloud.
👍1
Шаблоны проектирования: порождающие паттерны

📝📈🚀

Если говорить кратко, то шаблонами (или паттернами, тут кому как удобнее) проектирования называются повторяемые архитектурные конструкции, которые являются решением некоторой популярной проблемы.

Тем не менее, ни один из шаблонов не является готовым решением «на блюдечке». Это не фрагменты кода, не библиотеки и даже не отдельные классы. Стоит рассматривать шаблоны проектирования, скорее, как набор качественно работающих методик, которые стоит модифицировать, исходя из своего проекта.

Делятся паттерны проектирования на три большие группы. Это:

1. Порождающие
2. Поведенческие
3. Структурные

Будем последовательны, и в этом посте поговорим о первом типе, а именно о порождающих шаблонах.

К ним относятся шаблоны, благодаря которым ваша система окажется вне зависимости от способа её создания.
Шаблон, который порождает классы, прибегает к наследованию, а шаблон, создающий новые объекты, делегирует их инстанцирование уже новому другому объекту.

Кратко пробежимся по каждому из типов порождающих шаблонов.

✔ Фабрика — это некий мастер-объект, предназначение которого состоит в производстве других объектов. Помогает существенно уменьшить количество самокопирования в коде за счет делегирования фабрике функции создания типовых объектов.

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

✔ Абстрактная фабрика — это шаблон, предназначенный для создания зависимых друг от друга или же связанных объектов. При этом их конкретные классы не специфицируются. Если сказать проще, то это «фабрика фабрик».

✔ Строитель (builder) позволяет создавать разные модификации объекта, избегая «замусоривания» конструктора. Используйте конструктор, если процесс создания объекта состоит из множества шагов или может варьироваться в зависимости от обстоятельств.

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

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

В следующей публикации мы продолжим тему паттернов проектирования — оставайтесь на связи!