Pull to refresh
0
Nc_Soft @Nc_Softread⁠-⁠only

User

Send message

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

Reading time12 min
Views6.5K

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

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments13

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

Reading time9 min
Views86K


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

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

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

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

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

Скачать исходники
Демо
Читать дальше →
Total votes 75: ↑45 and ↓30+15
Comments55

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

Reading time10 min
Views62K
Привет, Хабр!

Наш прошлый перевод нетрадиционного обзора 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.
Читать дальше →
Total votes 101: ↑90 and ↓11+79
Comments114

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

Reading time5 min
Views259K


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

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

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

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

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

Youtube

Reading time1 min
Views222K
Приходится ждать загрузки видео >360p по несколько секунд, обрывы на середине просмотра стало уже обыденным делом и это с достаточно широким каналом.

image

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

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

173.194.55.0/24 и 206.111.0.0/16
Читать дальше →
Total votes 205: ↑147 and ↓58+89
Comments179

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

Reading time6 min
Views1.7K
Здравия желаю, Хабр!

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

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

Reading time1 min
Views4K

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


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

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

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

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

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

Reading time3 min
Views1.3K
Добрый день, хабражители!

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

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

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

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

Reading time8 min
Views6.1K
Ниже я опишу путь (основные принципы), который позволяет создать ИИ, способный пройти тест Тьюринга, то есть общаться с человеком не «механически», а «понимая» суть беседы. Этот интеллект во многом будет аналогичен человеческому, он будет «испытывать» те же эмоции, что и человек, он будет иметь память, он будет «мыслить». Я буду описывать процессы и механизмы, свойственные реальному мозгу, но указывать на способы реализации доступные при компьютерном моделировании, не утверждая, что они «похожи» на то, как природа решила аналогичные задачи.
Читать дальше →
Total votes 105: ↑82 and ↓23+59
Comments100

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

Reading time1 min
Views1.2K
Вчера у нас завершилась выездная конференция.

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

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

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

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

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

Читать дальше →
Total votes 67: ↑57 and ↓10+47
Comments19

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

Reading time2 min
Views2K
image
Хотя сайтов для поиска бесплатных иконок становится все больше, порой нужны именно наборы иконок, чтобы на протяжении всего проекта сохранить стиль. Ниже собран набор из 10 комплектов качественных, бесплатных иконок. Бесплатные лицензии бывают разными, поэтому перед тем как использовать, проверьте, пожалуйста, лицензию на странице загрузки.
Читать дальше →
Total votes 49: ↑31 and ↓18+13
Comments11

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

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

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

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

Reading time3 min
Views1.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. По моей схеме, для каждого виртуального хоста создается отдельный конфиг.

Смотрим сам скрипт.
Читать дальше →
Total votes 27: ↑21 and ↓6+15
Comments9

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

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

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

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

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

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

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

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

Reading time3 min
Views166K
Для начала я расскажу вам немного про App Inventor, а потом мы напишем первое приложение, где будем кормить кота.

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


Читать дальше →
Total votes 31: ↑22 and ↓9+13
Comments28

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

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

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity