Простые числа1
// Лучшие практики: код должен быть самодокументирующимся
// так, чтобы даже беглый взгляд на него мог сказать вам, что он делает.
// Я: Эмм... Вот так?
Перевод: @DevComics
Инструментарий стартапа
Добрый день, друзья!Подготовил подборку инструментов, которые пригодятся как в product management, так и в стартапе.
Вероятно, кто-то из Вас делает или хочет сделать свой стартап.
Зачастую результативность и скорость работы зависит от инструментов, которые используются для взаимодействия и разработки.
Поиск конкурентов и идей
Product Hunt: https://www.producthunt.com/
Crunchbase: https://www.crunchbase.com/home
Owler: https://corp.owler.com/
Google Alerts: https://www.google.ru/alerts
iSpionage: https://www.ispionage.com/
Project List: https://projectlist.pw/
Spark: https://spark.ru/startups
SimilarSites: https://www.similarsites.com/
AppSumo (в части B2B): https://appsumo.com/
Beta List: https://betalist.com/
Startup Stash: https://startupstash.com/
Генерация решений
Шаблон с использованием ТРИЗ (теории решения изобретательских задач): https://docs.google.com/document/d/1lFz6PLmkgBbhjx7hiMHNXHHF... (хронометраж ~5 часов на всё)
SCAMPER (хронометраж ~1 час): https://docs.google.com/document/d/1kOK4ZrsVYJYBF37RJwsDQWrS...
Miro: https://miro.com/templates/brainstorming/
Оценка рынка и конкурентов
Yandex Wordstat: https://wordstat.yandex.ru/
Google Trends: https://trends.google.ru/trends/
Кантар. Маркетинговые исследования: https://kantartns.ru/
ФОМ: https://fom.ru/
Comscore Insights: https://www.comscore.com/Insights
TNS Digital Life: http://connectedlife.tnsglobal.com/
Similar Web: https://www.similarweb.com/
Popsters: https://popsters.ru/
SpyWords: https://spywords.ru/
SERanking: https://seranking.ru/
SEMRush: https://ru.semrush.com/
AdBeat: https://adbeat.com/
Яндекс. Взгляд: https://surveys.yandex.ru/
Дизайн
Behance: https://www.behance.net/
Dribbble: https://dribbble.com/
Figma: https://www.figma.com/
Flowmapp (в части UX): https://app.flowmapp.com/
Miro (UX): https://miro.com/templates/ux-design/
Canva: https://www.canva.com/
Blush (позволяет бесплатно генерировать картиночки, как сверху): https://blush.design/
Бизнес-модель
CNVS: https://cnvs.online/ru
Miro: https://miro.com/templates/
17 бизнес-моделей: https://kontur.ru/articles/5030
Бизнес-модели на Гитхаб: https://gist.github.com/ndarville/4295324
Финансовая модель
Efinancialmodels: https://www.efinancialmodels.com/
CFI: https://corporatefinanceinstitute.com/
Прототипирование и MVP
InvisionApp: https://www.invisionapp.com/
Figma: https://www.figma.com/
Лендинги
Jino (дёшево и сердито): https://jino.ru/
Tilda: https://tilda.cc/ru/
Wix: https://www.wix.com/account/sites
Командное взаимодействие и координация
Trello: https://trello.com/
Asana: https://asana.com/
Slack (мессенджер): https://slack.com/intl/en-ru/
Dev. Azure (разработка): https://dev.azure.com/
TeamWork: https://www.teamwork.com/
Wrike: https://www.wrike.com/
Инвесторы
Angel Co: https://angel.co/
Gust: https://gust.com/
Обучение
Виртуальный бизнес-инкубатор: https://startup-course.com/
Startup School от YCombinator: https://www.startupschool.org/
RUSSOL: http://russol.info/
Венчурный Акселератор: https://1va.vc/Стартап-школа HSE + Билайн: https://start.hse-inc.ru/
Спасибо за внимание!
Если Вам интересна подобная информация, буду ждать обратную связь в комментариях.
Вопрос по подключению в распределительной коробке
Возникла необходимость добавить розетку в комнате в дачном доме. В распределительную коробку заходит 4мм²х3 ВВГ-НГ кабель, к нему уже опрессовано гильзами 3 кабеля по 2.5мм²(на 3 розетки). Гильзы срезать не хочется, т.к. это укоротит длину проводов и усложнит монтаж.(да и на будущее хочется оставить) Вопрос к опытным электрикам, как правильно подключить ещё одну розетку на мощную нагрузку типа парочки по 2кВт электрообогревателей к существующему монтажу, может есть какие то специальные винтовые клеммы? Места в коробке уже маловато, нужно что-то малогабаритное.
Советы новичкам Unity (разработка игр)
Все ниже описанное является моим личным опытом геймдева и осваивания движка Unity и не обязательно к применению. Однако вполне может стать своего рода Best Practice для новичков (а может и другим пригодится).
1) Update ()
Метод Update показан чуть ли не во всех официальных уроках по Unity. Однако в скором времени вы поймете, что не стоит пихать его во все скрипты. Альтернативой является применение необходимых изменений путем вызова их из другого объекта (сценария) по событию.
Пример: чтобы обновлять полоску жизни персонажа, не обязательно на слайдер вешать Update() который будет постоянно брать нужное ему значение и присваивать слайдеру. Достаточно вызвать событие изменения жизней персонажа которое и изменит полоску жизни.
Почему так: если у вас будет 1 монетка которая в методе Update() проверяет не подобрали ли ее, то посмотрите на производительность игры если у вас на экране будет 1000 таких монет. Про большое количество объектов расскажу ниже.
2) Стандартные ассеты
Смело импортируйте в свой проект стандартные ассеты и шерстите их. Там очень много всего полезного. Вот почему:
Изначально попробовав разобраться со стандартными способами управления персонажа, я подумал, что они слишком сложны для простых действий. И как результат – долго и упорно писал свой контроллер для персонажа. Однако в конечном счете столкнулся с тем, что мой контролер не работал на мобильных платформах (а я делал кроссплатформенный проект).
В общем в результате я потратил время и все-таки разобрался в стандартных ассетах управления и понял, что они очень хорошо и удобно написаны. Более того – они кроссплатформенные и работают на всех устройствах. После этого смело удалил все что я сделал в этой части и заменил на стандартные средства – радости моей не было предела.
Другая история касательно этого же – перерыл весь интернет и написал свой контролер для камеры. Камера следовала за персонажем, но плавно, и не двигалась в случае небольших движений игрока или его прыжков, а также не выходила за рамки уровня. А потом нашел скрипт в стандартных ассетах который делал тоже самое… (CameraFollow)
3) Частицы
Частицы — это не только дым, взрывы, мех и один, а то и два килограмма диетического мяса :)
В некоторых уроках я видел, как пули/ракеты/фаерболы делали путем инициализации (клонирования из префаба) объекта, который сам по себе двигался.
Т.е. на деле это так: GameObject игрока генерирует другие GameObject’ы которые имеют свой коллайдер и кучу скриптов на них. А теперь представьте сколько GameObject’ов будет у вас если игрок будет стрелять этими ракетами из пулемета? В общем заменяйте по возможности любые подобные объекты на частицы (а если вы стреляете – то лучше RayCast’ы). В версии Unity 5.3.1 (вроде бы) появились 2D коллизии частиц.
4) Кнопки и интерфейс
Стандартные компоненты GUI очень удобны в использовании – используйте их, и нечего тут говорить больше.
4) Плагины, примочки к Unity, стороннее ПО
Если что-то можно сделать с помощью Unity – делайте, и даже не вздумайте загадить свой проект плагинами и подобными вещами.
Пример: Использовал плагин для создания уровней по принципу Tile Map, в конечном счете ужаснулся, когда увидел сколько мусора у меня в проекте появилось и как жутко выглядит готовый результат (множество блоков и у каждого свой коллайдер). Ну и далее и вовсе решил уйти от принципа Tile Map. А еще позже увидел, что данный механизм планируется к появлению в ближайшей версии Unity (Очень жду).
5) Сначала прототипы, потом красота
Сам я до сих пор следую обратным путем, хотя и знаю, что это не совсем верно. Но вот мой личный опыт – после установки плагина для Tile Map уровней, я бросился рисовать огромное количество спрайтов, из которых должен был собираться уровень. Ну как я решил потом поступить с идеей использования Tile Map вы уже знаете, а результатом стала огромная трата времени и море не нужных более спрайтов для уровня.
6) Вибрация мобильного устройства, акселерометр, индикаторы и т.д.
Все гораздо проще чем вы думаете, в справке по Unity все это хорошо описано. Ищите HandHeld, Input.acceleration
7) Обязательно смотрите официальные Best Practice по Unity
Например, от туда я узнал много интересных способов упрощения анимации персонажей, а так же про кнопку «back» на Android устройствах (в приложениях она распознается как Input.GetKeyDown(KeyCode.Escape) )
8) События в анимациях
В менеджере анимаций есть кнопка
На которую можно повесить метод из привязанных к объекту скриптов. (например, чтобы синхронизировать анимацию выстрела, непосредственно с самим выстрелом)
Ну в общем вроде пока все, если будет интересно, то сделаю еще один подобный пост.
P.S. Сразу извиняюсь, если что то сказал не верно или не понятно – я не так давно знаком с Unity. Я скорее больше просто программист. Цель была помочь новичкам
P.P.S Если нужно про что то более подробно расписать – то смело спрашивайте, расскажу в следующем посте. В этом посте не стал все подробно расписывать потому что получился бы очень длинный пост.











