Обновить
0
@Beka94read⁠-⁠only

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

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

Вышел на дистанционку — запустил подкаст: что для этого почитать начинающим — 5 проверенных книг

Время на прочтение3 мин
Охват и читатели4.4K
Слушаю подкасты с 2010-го, а записываю — с 2012-го. Тогда толковых книг по теме было мало, но ситуация изменилась. Рассказываю, что почитать. Надеюсь пригодится, чтобы разнообразить дистанционную работу и переключиться с новостей о вирусе на что-то более продуктивное.

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

Как спланировать открытие кафе, или пишу свой планировщик открытия заведений

Время на прочтение7 мин
Охват и читатели3.2K
Хочу поделиться с вами, как я при помощи «молота и наковальни» делал проект для планирования открытия заведений в сфере общепита, эдакий to-do планировщик. Почему «молота и наковальни»? Так это потому, что я только год назад начал программировать, и сейчас использовал только базовые html, php и js (jquery).

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

Введение в машинное обучение

Время на прочтение19 мин
Охват и читатели66K
Полный курс на русском языке можно найти по этой ссылке.
Оригинальный курс на английском доступен по этой ссылке.


Как сделать из сайта приложение и выложить его в Google Play за несколько часов. Часть 1/2: Progressive Web App

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


Наверное, все близкие к веб-разработке люди уже наслышаны о Progressive Web App. Ещё бы! Эта технология практически уравняла веб и мобильную разработку с точки зрения распространения продуктов и вовлечённости пользователей.

Да, современный фронтенд, написанный, например, на React, работает как приложение. Но вот только скачивается это приложение в браузер и запускается из него. В этом и заключается огромный гандикап, который всегда имела мобильная разработка. Давайте подумаем, чем с точки зрения обычного пользователя, «приложение» отличается от «сайта». Сразу в голову приходит, что приложение в телефоне, а сайт на компьютере. Но ведь есть мобильный браузер, так что сайт и в телефоне тоже. Тогда остаётся 3 существенных отличия:
Читать дальше →

Сытые философы или конкурентное программирование на .NET

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


Давайте посмотрим как устроено конкурентное и параллельное программирование в .Net, на примере проблемы обедающих философов. План такой, от синхронизации потоков/процессов, до модели акторов (в следующих частях). Статья может быть полезна для первого знакомства или для того, чтобы освежить свои знания.


Зачем вообще уметь это? Транзисторы достигают своего минимального размера, закон Мура упирается в ограничение скорости света и поэтому рост наблюдается в количестве, транзисторов можно делать больше. При этом количество данных растет, а пользователи ожидают немедленной реакции систем. В такой ситуации "обычное" программирование, когда у нас один выполняющий поток, уже не эффективно. Нужно как-то решать проблему одновременного или конкурентного выполнения. Причем, проблема эта существует на разных уровнях: на уровне потоков, на уровне процессов, на уровне машин в сети (распределенные системы). В .NET есть качественные, проверенные временем, технологии для быстрого и эффективного решения таких задач.

Пообедаем...

Советы начинающим разработчикам

Время на прочтение7 мин
Охват и читатели8.3K
Я работаю iOS разработчиком более шести лет. Мне довелось работать в нескольких различных компаниях и командах. Я работал как в outsource так и в outstaff, довелось даже поучаствовать в startup. И вот спустя несколько лет коммерческой разработки, а также пару-тройку лет программирования в университете, я стал выделять некоторые принципы или правила качественного подхода к разработке приложений. Сначала это были советы моему другу. Давая ему советы, я подумал, что мне не хватало подобных советов, когда я только начинал свой путь разработчика. Та что там говорить, некоторые моменты я понял для себя сравнительно недавно, а некоторые уже на новом месте работы. И вот родилась идея составить список советов, которыми мне бы хотелось поделиться с самим собой пять-шесть лет назад. Я уверен, что ещё через пять лет у меня будет что сказать себе сегодняшнему. Но это оставим пожалуй на будущее.
Читать дальше →

Небольшой бэкдор на Flask или как управлять компьютером в локальной сети

Время на прочтение3 мин
Охват и читатели7.7K
Привет, Хабр!

Недавно я посмотрел скачанную версию стрима по программированию «Как создать свое веб-приложение на Flask». И решил закрепить свои знания в каком-нибудь проекте. Долго не знал, что написать и мне пришла идея: «А почему бы не сделать мини-бэкдор на Flask?».

В голове тут же появились первые варианты реализаций и возможностей бэкдора. Но я решил сразу составить список возможностей бэкдора:

  1. Уметь открывать сайты
  2. Иметь доступ к командной строке
  3. Уметь открывать программы, фото, видео

Итак, первый пункт крайне легко реализовать при помощи модуля webbrowser. Второй пункт я решил реализовать при помощи модуля os. И третий – тоже через модуль os, но я буду использовать «ссылки»(об этом позже).
Читать дальше →

Дозвонились! Как собрать свою Web-звонилку за час

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


Друзья, сегодня я хочу поговорить с вами про звонки. Для кого-то это совсем новая тема. Для других — чистой воды фан на уровне «а не зафигачить ли мне свой скайп?». Для третьих — внезапно возникшая жизненная необходимость. Последний вариант — наш вариант.


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

Уже хочу

Docker — это игрушка или нет? Или всё-таки да?

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

Всем привет!


Ооочень хочется прям сразу приступить к теме, но правильнее будет немного рассказать про мою историю:


Вступление


Я программист с опытом разработки frontend одностраничных приложений, scala/java и nodejs на сервере.


Довольно долго (уже точно пару — тройку лет), я придерживался мнения, что docker это манна небесная и вообще очень крутой инструмент и абсолютно каждый разработчик должен уметь пользоваться им. А отсюда вытекает, что и у каждого разработчика должен стоять docker на локальной машине. Да что там про моё мнение, вы полистайте вакансии, которые размещаются на том же hh. В каждой второй есть упоминание про docker и если вы им владеете — это будет вашим конкурентным преимуществом ;)


На своем пути я встечался с многими людьми, с их разным отношением к docker и к его экосистеме. Одни говорили, что это удобная вещь, гарантирующая кроссплатформенность. Вторые не понимали зачем им запускаться в контейнерах и какой профит от этого, третьим было вообще пофиг и они не парились (просто писали код и уходили домой — завидую, кстати, им :) )

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

Перенос сайта на статику: мотивация, стоимость, работа

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

Недавно мы сделали то, о чём грезят все программисты и дизайнеры — переписали всё с нуля: полный редизайн нашего сайта и написание «движка» с чистого листа. Ниже поведаем о мотивации и процессе миграции с онлайн-CMS на статику.





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

Четыре реальные истории работы с микросервисной архитектурой — отчёт с митапа Backend United 3: Холодец

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

На третьей встрече из серии Backend United мы с коллегами из Booking, Dodo Pizza и Авито обменялись опытом работы с микросервисной архитектурой. Говорили о распилах, монолитах и всём, что за этим стоит. Этот пост — отчёт о том, как прошёл митап. Внутри — видеозаписи, презентации спикеров, ссылки на фотоотчёт и отзывы участников встречи.


7 полезных Firefox-расширений для изучения английского

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


На днях я публиковала подборку расширений для Chrome, которую использую для «прокачивания» различных навыков английского. В комментариях попросили сделать подобный материал для аддонов Firefox. Поскольку это мой второй любимый браузер, которым я также активно пользуюсь, сделать это было нетрудно.

Итак, вот семь полезных расширений, которые помогут улучшить навыки письма, пополнить словарный запас и научиться воспринимать английскую речь на слух.
Читать дальше →

В разработке — каждый сам за себя. Но иногда это приводит в тупик

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


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

У меня была неделя — целая бесконечность, которой мне не хватило. Снова и снова я перебирал в голове варианты использования того, что должен сделать, но картинка идеального модуля не клеилась. Всегда находился кейс, который хорошо показывал: такой дизайн — говно. Я думал, играл на гитаре, пробовал писать, тупил в монитор, гуглил, играл с детьми, снова думал — голова всегда была занята дурацким модулем.

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

В понедельник утром я отправил пулл реквест. Его приняли с восторгом. Но способ, на который я пошел… вот уж никогда не думал, что отважусь на такое.
Читать дальше →

Руководство по Kubernetes, часть 1: приложения, микросервисы и контейнеры

Время на прочтение16 мин
Охват и читатели207K
По нашей просьбе Хабр создал хаб Kubernetes и нам приятно разместить первую публикацию в нём. Подписывайтесь!

Kubernetes — это просто. Почему же банки платят мне за работу в этой сфере большие деньги, в то время как любой может освоить эту технологию буквально за несколько часов?


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

Делаем нейронную сеть: как не сломать мозг

Время на прочтение4 мин
Охват и читатели9.2K
Привет, Хабр!

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

Речь пойдет о создании тривиальной нейронной сети на Keras, с помощью которой будем предсказывать среднее арифметическое двух чисел.

Казалось бы, что может быть проще. И действительно, ничего сложного, но есть нюансы.

Кому тема интересна, добро пожаловать под кат, здесь не будет долгих занудных описаний, просто короткий код и комментарии к нему.
Читать дальше →

Мозг изнутри (Визуализация прохождения паттерна через модель искусственной нейронной сети)

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

Введение


Статья предназначена для тех, кто когда-либо интересовался вопросом о том, что же происходит внутри искусственной нейронной сети (artificial neural network)ИНС. Сейчас разработать собственную ИНС может практически каждый, используя уже готовые библиотеки, имеющиеся в большинстве языков программирования. В рассматриваемой статье, я постараюсь показать, как именно выглядит объект (Паттерн), проходящий через слои ИНС, разработанной и скомпилированной при помощи библиотеки глубокого обучения Tensorflow с надстройкой Keras.

Используемое ПО


Необходимы следующие компоненты (версии я указал для своего случая):

  • tensorflow 1.10.0
  • keras 2.2.4
  • matplotlib 2.2.0
  • modul-os
  • numpy1.14.3

Также есть возможность нарисовать архитектуру сети, но для этого необходимо установить средства визуализации, в моем случае было использовано keras, и в методе

PLOT_PATTERN_PROCCESS(...)

установить

PLOT_MODEL=True


def PLOT_PATTERN_PROCCESS(model, pattern, FOLDER_TO_SAVE, grid_size=(3, 3), limit_size_layer=(15, 15), PLOT_MODEL=True):

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

Статические Generic таблицы

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

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

О том, как я решаю данную проблему — под катом.
Читать дальше →

Мой путь начинающего разработчика игр

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

Доброго времени суток, уважаемые пользователи!


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

Ну, начнем с того, что я — школьник. На носу у меня ЕГЭ, надо бы к нему готовиться, а меня все тянет и тянет в эту какую-то заблудшую степь. Но меня это ни сколько не останавливает. Еще в детстве мечтал делать игры, вот почему бы и не начать именно сейчас.

Что ж, начнем, пожалуй.

Наступил 2019 год, и я решил: «Пора заняться чем-то новым!» Сел на диван первого января, открыл YouTube, как обычно, и включил фоном какой-то видос, параллельно размышляя чем бы заняться. И вот мне в голову пришла великолепная мысль, которой я решил сразу же заняться. Я решил выучить новый язык программирования! До этого знал только Python (о нем чуть позже) и pascal, который никому был не нужен, только для решения того же ЕГЭ. Вот сел я значит за ноутбук и думаю «Какой бы язык выбрать?». Мой выбор пал на Java.
Читать дальше →

Как мы создали рекомендательный сервис по подбору одежды на нейронных сетях

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

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

Как и большинство современных IT-решений, можно сравнить разработку нашей системы со сборкой конструктора Lego, когда мы берем много маленьких деталек, инструкцию и создаем из этого готовую модель. Вот такую инструкцию: какие детали взять и как их применить для того, чтобы ваша GPU смогла подбирать похожие товары по фотографии, — вы и найдете в этой статье.

Из каких деталей построена наша система:

  • детектор и классификатор одежды, обуви и сумок на изображениях;
  • краулер, индексатор или модуль работы с электронными каталогами магазинов;
  • модуль поиска похожих изображений;
  • JSON-API для удобного взаимодействия с любым устройством и сервисом;
  • веб-интерфейс или мобильное приложение для просмотра результатов.

В конце статьи будут описаны все “грабли”, на которые мы наступили во время разработки и рекомендации, как их нейтрализовать.

Постановка задачи и создание рубрикатора


Задача и основной use-case системы звучит довольно просто и понятно:

  • пользователь подает на вход (например, посредством мобильного приложения) фотографию, на которой присутствуют предметы одежды и/или сумки и/или обувь;
  • система определяет (детектирует) все эти предметы;
  • находит к каждому из них максимально похожие (релевантные) товары в реальных интернет-магазинах;
  • выдает пользователю товары с возможностью перейти на конкретную страницу товара для покупки.

Говоря проще, цель нашей системы — ответить на знаменитый вопрос: “А у вас нет такого же, только с перламутровыми пуговицами?”
Читать дальше →

Успехи и неудачи при создании своего проекта (стартапа)

Время на прочтение6 мин
Охват и читатели6.6K
Привет, друзья. Решил сегодня написать не о конкретном техническом решении, а о том, зачем эти технические решения вообще нужны. Слово «Стартап» уже порядком набило оскомину, поэтому буду употреблять «Свой проект». В статье будет много философии и аналитики. Так как без этого рассчитывать на успех сложно. Итак, сегодня я поделюсь с вами своим опытом, и опытом многих моих коллег, которые пытались спрыгнуть с корпоративной галеры и подняться на своем проекте.
Читать дальше →
1
23 ...

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность