Как стать автором
Обновить
0
Nc_Soft @Nc_Softread⁠-⁠only

Пользователь

Отправить сообщение

Инструкция: как быстро настроить GitLab CI/CD на Flutter-проекте

Время на прочтение12 мин
Количество просмотров6.5K

Привет! Я Александр Омельяненко, Flutter-разработчик в AGIMA. Недавно мне понадобилось быстро настроить CI/CD на Flutter-проекте. Те несколько руководств, что я нашел в интернете по этой теме, были либо с нерабочими примерами, либо запутанные и просто плохого качества. Но всё же какое-то представление я получил. Плюс задал вопросы коллегам. Набивая шишки по пути, я-таки настроил CI/CD на своем проекте. Но мне тогда очень пригодилась бы четкая инструкция. Поэтому я решил написать ее сам по горячим следам. Сегодня делюсь ею с вами и надеюсь, эта инструкция облегчит жизнь тем, кто настраивает CI/CD на Flutter-проекте прямо сейчас.

Читать далее
Всего голосов 9: ↑9 и ↓0+9
Комментарии13

Как создать веб-сайт, используя видео с YouTube в качестве фона?

Время на прочтение9 мин
Количество просмотров86K


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

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

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

Хотя и наиболее популярным способом создания видео-фона является использование HTML5 видео тега вместе с некоторыми параметрами CSS, стоит также обратить внимание на альтернативные источники видео, например, YouTube. В этом случае, вам не придется переживать о медленном ответе сервера, потому что запрос будет отправляться напрямик в YouTube.

В этой статье, я покажу вам, как можно построить клевый сайт, использующий видео с YouTube в качестве фона. Мы будем использовать jQuery.mb.YTPlayer.js для редактирования и управления внешним видом нашего видео. Итак, приступим!

Скачать исходники
Демо
Читать дальше →
Всего голосов 75: ↑45 и ↓30+15
Комментарии55

Нетрадиционный обзор AngularJS

Время на прочтение10 мин
Количество просмотров62K
Привет, Хабр!

Наш прошлый перевод нетрадиционного обзора React многим понравился, и, конечно, люди стали сравнивать Реакт с популярным AngularJS. Сегодня мы публикуем перевод статьи «An Unconventional Review of AngularJS» от того же автора (Джеймса Шора, ведущего проекта Let’s Code: Test-Driven JavaScript). Поклонникам Angular просьба сохранять спокойствие.



AngularJS это все, что я ожидаю от фреймворка. И это не хорошо.

В ноябре, декабре и январе я обозревал AngularJS для серии «front-end frameworks» в рамках проекта Let’s Code JavaScript. Суммарно я провел 40 часов изучая, программируя и решая задачи. Как обычно, моей целью было изучить AngularJS создавая приложение.

Angular это, наверное, самый популярный фронт-энд фреймворк сейчас. Его разрабатывает команда из Google, что сразу внушает доверие. Он настолько популярен, что входит в акроним. Angular это часть так называемого стека «MEAN»: MongoDB, Express, AngularJS, Node.JS. Самая что ни на есть передовая технология.

Angular описывает себя как инструмент для улучшения ХТМЛ. Он позволяет расширить ХТМЛ новыми определениями — директивами — которые превращают статичный ХТМЛ-документ в динамический шаблон. Директивы могут быть атрибутами или тегами (или даже комментариями или классами, но это уже не совсем обычная история), и они превращают статичный ХТМЛ-документ во что-то живое и дышащее, на первый взгляд без добавления JavaScript.
Читать дальше →
Всего голосов 101: ↑90 и ↓11+79
Комментарии114

Как два программиста хлеб пекли

Время на прочтение5 мин
Количество просмотров259K


Я работаю программистом уже много лет, на протяжении которых, как это ни странно, я всё время что-то программирую. И вот какую интересную вещь я заметил: в коде, написанном мной месяц назад, всегда хочется что-то чуть-чуть поправить. В код полугодичной давности хочется поменять очень многое, а код, написанный два-три года назад, превращает меня в эмо: хочется заплакать и умереть. В этой статье я опишу два подхода. Благодаря первому архитектура программы получается запутанной, а сопровождение — неоправданно дорогим, а второй — это принцип KISS.

Итак, представим себе, что есть два программиста. Один из них умный, прочёл кучу статей на Хабре, знает каталог GoF наизусть, а Фаулера — в лицо. Другой же делает всё просто. Первого будут звать, например, Борис Н., а второго — Маркус П. Само собой, имена вымышленные, и все совпадения с реальными людьми и программистами случайны.

Итак, к ним обоим приходит проектный менеджер (если в вашей вселенной PM не ходит сам к программистам, назовите его как-то иначе, например BA или lead, сути это не изменит) и говорит:
— Ребята, нам нужно, чтобы делался хлеб.

Именно так, «делался», без уточнения способа производства.

Как же поступят наши программисты?
Читать дальше →
Всего голосов 380: ↑348 и ↓32+316
Комментарии328

Youtube

Время на прочтение1 мин
Количество просмотров222K
Приходится ждать загрузки видео >360p по несколько секунд, обрывы на середине просмотра стало уже обыденным делом и это с достаточно широким каналом.

image

Причина в занижении провайдерами скорости к серверам кеширующим видео, всё что нужно сделать это заблокировать доступ к ним.

Для того чтобы запрос шел мимо cdn серверов ютуба надо заблокировать диапазон ip адресов (в роутере или на компьютере).

173.194.55.0/24 и 206.111.0.0/16
Читать дальше →
Всего голосов 205: ↑147 и ↓58+89
Комментарии179

Парсер RSS на bash для LostFilm.TV: Transmission + SQLite + mkvtools

Время на прочтение6 мин
Количество просмотров1.7K
Здравия желаю, Хабр!

В ответ на предыдущий топик про парсер RSS-ленты LostFilm.TV хочу выложить свой вариант работающий уже около 4х месяцев без каких-либо ошибок.
Суть идеи состоит в том, что сервер качает сериалы и раскладывает по папкам, оформляя при этом файлы с обложкой и нормальным заголовком.
Однако, в работе всей системы участвует не один скрипт, а целый набор скриптов. В такой системе скрипты разделены на pre-обработку и post-обработку.
И, конечно же, для эстетов: файлы каждой серии должны выглядеть красиво и быть разложены по папкам.
Читать дальше →
Всего голосов 7: ↑6 и ↓1+5
Комментарии14

Руководство Эпл по проектированию интерфейсов

Время на прочтение1 мин
Количество просмотров4K

Внимание! Новая информация о переводе!


Здравствуй, подхабр переводов. Я хочу обратиться к тебе с просьбой. Суть просьбы, как все уже догадались, в том, что нужна помощь в переводе. Переводим руководство Эпл по проектированию интерфейсов.1 Это полезный и важный документ для всех разработчиков и дизайнеров ПО. Да и не только ПО. В нём описываются как общеизвестные, так и не очень распространённые принципы, следование которым сделает дизайн, окружающий нас, на порядок лучше.
Читать дальше →
Всего голосов 106: ↑86 и ↓20+66
Комментарии32

Анализатор морфологии на автоматах

Время на прочтение4 мин
Количество просмотров6.3K
Периодически на хабре проскакивают статьи о том, как написать программу для анализа морфологии. В основном авторы пользуются базами данных, либо стандартными структурами, такими как словари. Но это не всегда удобно. Во-первых, страдает скорость. Во-вторых, некоторые алгоритмы, такие как предсказание морфологии незнакомых слов, реализуются нетривиально.

Здесь я привожу версию, основанную на конечных автоматах, где попробую избежать данных проблем. Как это работает можно посмотреть здесь.
Читать дальше →
Всего голосов 25: ↑25 и ↓0+25
Комментарии0

Онлайн сервис конвертирования видео

Время на прочтение3 мин
Количество просмотров1.3K
Добрый день, хабражители!

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

Вкратце история создания сервиса достаточно стандартна: в какой-то момент мне надоело использовать командную строку ffmpeg-а для конвертирования различного медиа контента и захотелось что-либо более удобного, и что более важно, кроссплатформенного (т.к. работать приходилось как из под *nix систем, так и с Windows). Так и родился этот сервис. Показал его своему другу (он кстати на хабре — dk_bbg), он оценил. Вот я и решил выложить его в публичный доступ :-)

Под катом немного информации о том, что представляет собой сервис сейчас.
Читать дальше →
Всего голосов 34: ↑29 и ↓5+24
Комментарии50

Возможный способ создания сильного ИИ

Время на прочтение8 мин
Количество просмотров6.1K
Ниже я опишу путь (основные принципы), который позволяет создать ИИ, способный пройти тест Тьюринга, то есть общаться с человеком не «механически», а «понимая» суть беседы. Этот интеллект во многом будет аналогичен человеческому, он будет «испытывать» те же эмоции, что и человек, он будет иметь память, он будет «мыслить». Я буду описывать процессы и механизмы, свойственные реальному мозгу, но указывать на способы реализации доступные при компьютерном моделировании, не утверждая, что они «похожи» на то, как природа решила аналогичные задачи.
Читать дальше →
Всего голосов 105: ↑82 и ↓23+59
Комментарии100

Как делать презентации

Время на прочтение1 мин
Количество просмотров1.2K
Вчера у нас завершилась выездная конференция.

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

Бросилось в глаза в своей массе низкое техническое качество презентаций. Не выступлений, а именно того, что при этом демонстрируется на экране. Три самых главных недостатка:
  • очень мелко,
  • очень много букв,
  • много орфографических и пунктуационных ошибок и они грубые.
Советую всем, кому приходится готовить самостоятельно такие материалы, просмотреть
эту презентацию о презентациях от Алексея Каптерева. Чтобы не повторяться, там в целом есть все, что хотелось сказать мне здесь. Ну разве только добавить, что крайне важно не допускать ошибки в заголовках. А в презентациях заголовки — всё!

Для тех, у кого времени побольше, рекомендую статьи Белова (части первая и вторая). Также очень полезна статья с нашей «Хабры», 5 проверенных способов заставить аудиторию почувствовать себя идиотами, в ней с примерами показано, как делать не надо.
Всего голосов 11: ↑8 и ↓3+5
Комментарии6

Сказ о том как Bash и SVG спасли от рутины

Время на прочтение4 мин
Количество просмотров3.8K
Есть такой замечательный формат векторной графики — Scalable Vector Graphics, SVG. Чем же он такой замечательный? Ну например:
  1. SVG это открытый формат, он не является чьей-либо собственностью.
  2. SVG является подмножеством языка XML и, соответственно, он является текстовым.
  3. Прекрасно интегрируется с HTML и XHMTL.
  4. SVG совместим с CSS, что позволяет управлять отображением элементов с помощью таблиц стилей.
  5. В SVG текст остается текстом, благодаря этому документы SVG могут индексироваться поисковыми машинами, также пользователи могут выделять и копировать текст.

Читать дальше →
Всего голосов 67: ↑57 и ↓10+47
Комментарии19

Иконок много не бывает. Часть 1

Время на прочтение2 мин
Количество просмотров2K
image
Хотя сайтов для поиска бесплатных иконок становится все больше, порой нужны именно наборы иконок, чтобы на протяжении всего проекта сохранить стиль. Ниже собран набор из 10 комплектов качественных, бесплатных иконок. Бесплатные лицензии бывают разными, поэтому перед тем как использовать, проверьте, пожалуйста, лицензию на странице загрузки.
Читать дальше →
Всего голосов 49: ↑31 и ↓18+13
Комментарии11

Вывод WMR на карту «Связной клуб»

Время на прочтение1 мин
Количество просмотров5.8K
Недавно в блоге webmoney прочитал новость о том, что появилась возможность вывода WMR на «Платёжную карту «Связной-Клуб» MasterCard».
0.8% отдаем webmoney как обычно + 0.7% итого 1.5% за вывод на карту.
Зашел на сайт сервиса и досконально все изучил:
1. Карту делают за 10мин в любом связном
2. Картой оплачиваем в любом магазине + в интернете
3. Получаем бонусы за покупки
4. Выводим средства в банкомате с логотипом MasterCard
и т.п.

Выглядит очень заманчиво. Решил проверить.
Пришел в связной, дал паспорт, оформили анкету, оплатил 500р (которые потом будут на карте), подписался.
Читать дальше →
Всего голосов 89: ↑61 и ↓28+33
Комментарии140

Автоматизация веб-сервера FreeBSD8 Apache2+Mysql5 Часть 1

Время на прочтение3 мин
Количество просмотров1.3K
Так уж сложилось, что я жутко ленивый. Два года назад когда я приобрел себе VDS и встретился с FreeBSD 7.1 первый раз, убил две недели на настройку всего, что мне нужно было. Сейчас у меня 2*Pentium III 1GHz / RAM 1Гб / 2*SCSI 17Гб, под мои задачи он вполне подходит.

  1. Создание хостов
  2. Ротация логов Apache2
  3. Архивация логов Apache2 и удаление старых логов.
  4. Создание базы данных и добавление нового пользователя с правами только к одной базе, с генерацией нового пароля.


Мой любимый редактор vi. Если кто не знает как с ним работать можно везде где я указал vi заменять на свой ee,mcedit и т.д

Скрипт создания хостов.
Структура на моем сервере следующая, у каждого пользователя в хомдир лежит папка www, выглядит это так.
/home/user/www.
Скрипт внутри папки www создает каталоги с именем хоста.

Пример mk_host.sh domen.ru user
в каталоге /home/user/www будет создана папка domen.ru с директориями

  • cgi-bin
  • html
  • logs
  • shadow


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

Смотрим сам скрипт.
Читать дальше →
Всего голосов 27: ↑21 и ↓6+15
Комментарии9

Школьники на каникулах

Время на прочтение2 мин
Количество просмотров1.2K
Наблюдали в последнюю неделю флуд по http на один из сайтов камрада, который живет со мной на VPS. Где-то на пару дней неизвестные прекратили свои поползновения. Но буквально вчера начали долбить другой сайт с новой силой. Пришлось покрутить nginx в стороне кэширования всего (ранее кэшировали прозрачно) + apache2 (поубавить аппетиты). Собственно, через несколько часов мы уже и думать забыли, что кто-то на нас нападает. Из кэшей все отдается быстро и непринужденно, apache отдыхает.

И вот буквально с утра камрад, сайт которого и подвергся «атаке», пересылает письмо школьника… (интрига под хабракатом)
Читать дальше →
Всего голосов 65: ↑58 и ↓7+51
Комментарии45

Физика невозможного: Научное объяснение фазеров, силовых полей, телепортации и путешествий во времени

Время на прочтение2 мин
Количество просмотров6.2K
Наверное каждый читатель Хабра мечтает получить свой световой меч или пообщаться с представителем инопланетной цивилизации. Но сбудется ли это когда-нибудь? Ответу на этот и другие подобные вопросы посвящена книга «Физика невозможного».  

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

Доктор Каку исследует передовые области науки, чтобы дать ответ на «мучившие его с детства» вопросы: Научимся ли мы когда-нибудь проходить сквозь стены? Строить звездные корабли, способные летать быстрее скорости света? Читать мысли? Мгновенно преодолевать космическое пространство?
Читать дальше →
Всего голосов 117: ↑92 и ↓25+67
Комментарии60

App Inventor — создание Android-приложений для каждого: Урок 1

Время на прочтение3 мин
Количество просмотров166K
Для начала я расскажу вам немного про App Inventor, а потом мы напишем первое приложение, где будем кормить кота.

App Inventor может использовать человек, не владеющий языками программирования. По принципу действия мне он напоминает WYSIWYG-редактор. Пока регистрация доступна только с разрешения Google. App Inventor освобождает вас от написания кода, вместо этого вы используете подобие блок-схем.


Читать дальше →
Всего голосов 31: ↑22 и ↓9+13
Комментарии28

PHP5. «Безопасные шаблоны»

Время на прочтение4 мин
Количество просмотров494
Исторически сложилось, что я не пользуюсь внешними шаблонизаторами типа Smarty или другими. Я использую основной «активный» шаблон, т.е. просто PHP файл в котором вызываются и вставляются данные для контент зон в виде простого HTML (как он формируется в данном случае не имеет значения). В предыдущей версии CMS, которая была не «коробочной» и в которой фактически не было разделения прав пользователей, данный аспект особо не напрягал — доступ к шаблону был либо «прямой» (фтп и прочее) либо через администраторский интерфейс для администратора. Но соответственно человек имеющий доступ к админке мог напихать вовнутрь этого файла любой php код. В новой версии CMS это неприемлемо, т.к. это фактически обход разграничения прав. Поэтому было решено отказаться от таких «небезопасных» шаблонов.
решение и примеры
Всего голосов 18: ↑7 и ↓11-4
Комментарии5
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность