Обновить
-12
0
spanasik@spanasik

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

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

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

Время на прочтение7 мин
Охват и читатели3.3K

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

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

Читать далее

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

Время на прочтение6 мин
Охват и читатели8K


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

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

Время на прочтение10 мин
Охват и читатели132K


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

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

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

Время на прочтение3 мин
Охват и читатели6.2K
Друзья, это моя первая статья на Хабре, пожалуйста, сильно не минусуйте. За все советы по улучшению качества контента буду очень благодарна.

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

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

Время на прочтение12 мин
Охват и читатели19K

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 году, зачем и как компании их проверяют на собеседованиях

Время на прочтение6 мин
Охват и читатели38K


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

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

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

Время на прочтение7 мин
Охват и читатели31K

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

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

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

Время на прочтение6 мин
Охват и читатели7.4K
LOST by sophiagworld

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

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

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

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

Время на прочтение29 мин
Охват и читатели74K


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

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

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

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



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

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

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

Время на прочтение7 мин
Охват и читатели20K

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



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


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

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

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

Время на прочтение10 мин
Охват и читатели5.3K
На этой неделе случилось 3 вещи:

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

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



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

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

Время на прочтение26 мин
Охват и читатели49K

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


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

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

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

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

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

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

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

Время на прочтение6 мин
Охват и читатели45K
Работая старшим консультантом по дижитал-аналитике в ведущем международном аналитическом агентстве, с огромным интересом наблюдаю за нынешним крестовым походом современных веб-браузеров против технологии cookie.

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


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

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

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

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

Время на прочтение11 мин
Охват и читатели13K


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

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

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

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

Время на прочтение4 мин
Охват и читатели632K


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

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

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

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

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

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

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



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

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

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

Время на прочтение2 мин
Охват и читатели3.8K
Дзень добрый, комрады.

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

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


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

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

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

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

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

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

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

Время на прочтение11 мин
Охват и читатели31K
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.

Контекст


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

Информация

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