Search
Write a publication
Pull to refresh
-11
0
spanasik @spanasik

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

Send message

Как быстро протестировать продукт на рынке США и получить первую выручку: 3 практических шага

Reading time7 min
Views3.2K

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

Мы в нашем агентстве уже помогли десяткам стартапов запустить маркетинговые активности на рынке США. Так что сегодня я поделюсь алгоритмом для тестирования спроса и получения первых ощутимых денег ($10-20-30 тысяч) всего за пару месяцев.

Читать далее

NodeJS: 12 пакетов для продуктивности разработчика

Reading time6 min
Views7.6K


Менеджер процессов для продакшна с балансировщиком нагрузки. Обёртки над отладкой и хуками Git, защита express-приложений через HTTP-заголовки, утилита в более чем 180 функциями для работы с датами и другие инструменты, которые сэкономят ваше время. Подборка особенно полезна начинающим разработчикам NodeJS, но может порадовать опытных скептиков.
Добро пожаловать под кат!

Почему Trunk Based Development – лучшая модель ветвления. Андрей Александров

Reading time10 min
Views112K


В State Of DevOps 2018 от DORA мы видим, что Нigh Performing компании используют Trunk Based Development. Разберемся, почему именно ее, какие ее преимущества и недостатки имеет эта модель.

Читать дальше →

Как выбрать юрисдикцию для компании?

Reading time3 min
Views6K
Друзья, это моя первая статья на Хабре, пожалуйста, сильно не минусуйте. За все советы по улучшению качества контента буду очень благодарна.

Читать дальше →

Подсказки по микросервисной автоматизации процессов

Reading time12 min
Views18K

Camunda Microservice Workflow Automation 1


Возможно, ваша компания захочет перейти на архитектуру микросервисов и автоматизировать рабочие процессы (в этом посте блога я не вдаюсь в мотивацию, но вы, возможно, захотите прочитать о 5 Workflow Automation Use Cases You Might Not Have Considered или BizDevOps — the true value proposition of workflow engines). Это ставит вас в ряд со многими нашими клиентами. Как правило, у вас возникнут вопросы:


  • Область применения и границы — какой рабочий процесс вы хотите автоматизировать и как он ложится на несколько микроуслуг, или разраниченный контекст в вашем ландшафте. Я ограничен объемом этого поста, поэтому я не затрону эту тему сегодня, но вы, возможно, захотите прочитать Avoiding the «BPM monolith» when using bounded contexts или Real-Life BPMN.
  • Стек и инструменты — какой движок процессов я могу использовать?
  • Архитектура — я запускаю движок процесса централизованно или децентрализованно?
  • Управление — кто владельцы модели рабочего процесса и как ее развертывать?
  • Операции — как мне сохранить контроль?
Читать дальше →

Что такое soft skills для инженера в 2020 году, зачем и как компании их проверяют на собеседованиях

Reading time6 min
Views38K


Недавно один из моих знакомых инженеров устраивался на работу в Facebook. Он успешно прошел несколько кругов собеседований, его позвали на собеседование в офис, и уже там на этапе leadership and drive что-то пошло не так. Как признавался знакомый позднее, отвечать на вопросы в виде «как вы сработались со сложным коллегой» или «как вы добивались целей в токсичной обстановке» он был не очень готов.

Именно подобные вопросы позволяют оценить так называемые гибкие навыки (soft skills) инженеров. История собеседования в Facebook меня сильно заинтересовала, поэтому я решил изучить тему soft skills, их проверки и тренировки поподробнее. Бонусом прикладываю список полезных ресурсов и статей, на которые наткнулся в процессе подготовки материала. Поехали!
Читать дальше →

Google говорит, университеты больше не нужны

Reading time7 min
Views31K

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

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

Как спокойно спать, когда у вас облачный сервис: основные архитектурные советы

Reading time6 min
Views7.3K
LOST by sophiagworld

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

По опыту автора, это не исчерпывающий список, но действительно эффективные советы. Итак, начнем.

Переведено при поддержке Mail.ru Cloud Solutions.
Читать дальше →

Фольклор программистов и инженеров (часть 1)

Reading time29 min
Views73K


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

Lagniappe — это такое луизианское словечко, которое сделает ваших юзеров\клиентов\покупателей чуточку счастливее

Reading time6 min
Views4.5K
В отличие от большинства отечественных IT-эмигрантов, моим первым домом в Америке стала не Калифорния и не Нью-Йорк.

В этой статье я поделюсь простым уроком, который я усвоил на всю жизнь благодаря солнечной Луизиане, известной своей кухней, новоорлеанским джазом, сумасшествием Бурбон Стрит (который, в отличие от Нью Йорка, ДЕЙСТВИТЕЛЬНО никогда не спит) и южным гостеприимством.



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

А сегодня поговорим о чем-то, что идеально подойдет для ЛЮБОГО бизнеса/приложения/сервиса. Но сначала, небольшая предыстория:

Мои любимые трюки в JavaScript

Reading time7 min
Views20K

Приветствую. Представляю вашему вниманию перевод статьи «My Favorite JavaScript Tips and Tricks», опубликованной 28 июля 2020 года автором Tapas Adhikary



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


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

Читать дальше →

Free Trial, motherf***er, do you need it? — или почему бесплатные траялы и фримиум модели подходят далеко не для всех

Reading time10 min
Views5.2K
На этой неделе случилось 3 вещи:

  1. Несколько дней назад в своей статье о фреймворке формировании привычек я обещал рассказать о том, почему мы используем ПЛАТНЫЙ VS бесплатный trial-период в своих продуктах.
  2. Ребята из Getcourse написали заплюсованую статью про онлайн-школы, которая, по-моему мнению, содержит несколько очень ВРЕДНЫХ советов, которые я прокомментирую ниже
  3. DimBoch поделился своим мнением о малом бизнесе в США, которое очень близко к истине, но требует небольшого уточнения, которое напрямую относится к теме этой статьи

Ну и самое главное: наша БЕСПЛАТНАЯ годовая подписка на Хабр, которую мы получили благодаря проекту по поддержке стартапов, заканчивается в конце августа. И несмотря на то, что мне очень стыдно, что за весь год я написал здесь всего 3 статьи — это отличный пример того, почему бесплатные «демо-периоды» подходят далеко не для всех.



Под катом мы познакомимся с очередной дозой теории из сферы поведенческой экономики, обсудим успешные и провальные примеры бесплатных пробных периодов и фримиум моделей, поговорим о заблуждениях ребят из GetCourse и разберемся, почему все так плохо с маркетингом в США.
Читать дальше →

Как мы в Dropbox перешли с Nginx на Envoy

Reading time26 min
Views48K

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


Читать дальше →

Как переписать код на Rust

Reading time39 min
Views9.1K
В предыдущей статье мы говорили о том, как избежать переписывания библиотеки на Rust, когда вам это не нужно. Но как насчёт тех случаев, когда это действительно необходимо?

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

Однако у Rust есть убийственная особенность, когда речь заходит о таких вещах. Он может вызывать код на языке С без накладных расходов (т. е. среда P/Invoke в C#), и он выставляет функции, которые можно использовать в C так же, как и любые другие функции на языке С. Это открывает дверь для альтернативного подхода:

Портировать библиотеки на Rust по одной функции.
Читать дальше →

Нет Cookies, нет проблем — использование ETag для отслеживания пользователей

Reading time6 min
Views43K
Работая старшим консультантом по дижитал-аналитике в ведущем международном аналитическом агентстве, с огромным интересом наблюдаю за нынешним крестовым походом современных веб-браузеров против технологии cookie.

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


Для наглядности я создал демо-сайт. Вот он.

Нажмите на каждую из трёх кнопок Page → На всех трёх один и тот же идентификатор.
Закройте окно браузера и снова откройте сайт → Идентификатор не поменялся.
Выключите компьютер и зайдите на эту веб-страницу завтра → Идентификатор всё тот же.
Проверьте ваши куки → Демо-сайт не записывает куки и не считывает их.
Проверьте URL → Сомнительные строки запроса отсутствуют.

Итак, как именно я могу хранить идентификатор и узнавать, что вы с определённого устройства возвращаетесь на сайт, при этом без входа в систему и без использования куки?
Читать дальше →

Релиз мобильных приложений одной кнопкой

Reading time11 min
Views13K


Всем привет! Меня зовут Михаил Булгаков (нет, не родственник), я работаю релиз-инженером в Badoo. Пять лет назад я занялся автоматизацией релизов iOS-приложений, о чём подробно рассказывал в этой статье. А после взялся и за Android-приложения.

Сегодня я подведу некоторые итоги: расскажу, к чему мы пришли за это время. Long story short: любой причастный к процессу сотрудник может зарелизить хоть все наши приложения на обеих платформах в несколько кликов — без головной боли, больших затрат времени, регистрации и СМС. Так, наш отдел релиз-инженеров за 2019 год сэкономил около 830 часов.

За подробностями — добро пожаловать под кат!
Читать дальше →

Принципы SOLID в картинках

Reading time4 min
Views534K


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

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

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

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

Ну, приступим.
Читать дальше →

Асинхронный Python-код медленнее обычного кода

Reading time8 min
Views22K
Большинство программистов понимают, что асинхронный Python-код имеет более высокий уровень конкурентности, чем обычный синхронный код. Это даёт некоторые основания полагать, что асинхронный код способен показывать более высокий уровень производительности при решении распространённых задач вроде выдачи динамических веб-страниц или поддержки веб-API.



Но, к сожалению, Python-интерпретатор не выполняет асинхронный код быстрее синхронного.

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

Лайфхак для битов

Reading time2 min
Views3.6K
Дзень добрый, комрады.

Решил я как-то упростить себе часть музыкальной жизни, а именно автоматизировать выбор сэмплов для музыки (или, скорее, для «битов»).

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


Чтобы быстрее получить результат, упростим наши требования к музыке.

Будем строить наш трэк из трёх компонентов:

  • Перкуссия
  • Бас
  • Мелодия

И будем сравнивать компоненты по двум параметрам:

  • Тональность
  • Темп

В целом, с этими «правилами» музыка уже будет достаточно гармоничной.

Шпаргалка по сортировке для Data Science

Reading time11 min
Views26K
image

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

Выбор библиотеки и типа алгоритма сортировки не всегда прост, а нововведения меняются в быстром темпе. На данный момент документация Pandas не соответствует коду (хотя лично мое PR-обновление сортировочных опций было самым последним).

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

UPD 17 июля 2019: В результаты оценки теста скорости теперь входят реализации GPU PyTorch и TensorFlow. TensorFlow также включает в себя результаты CPU как при tensorflow==2.0.0-beta1, так и при tensorflow-gpu==2.0.0-beta1. Интересные наблюдения: графический процессор PyTorch буквально летает, а GPU TensorFlow оказался медленнее CPU TensorFlow.

Контекст


Базовых алгоритмов сортировки существует множество. Одни из них имеют высокую производительность и занимают меньше места, другие хорошо работают с большим числом данных. Для некоторых алгоритмов важно взаимное расположение элементов данных. На диаграмме в начале статьи можно увидеть ситуацию по времени и объему для самых распространенных алгоритмов.
Читать дальше →

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity