Как стать автором
Обновить
0
0

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

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

Веб-приложение на Node и Vue, часть 1: структура проекта, API, аутентификация

Время на прочтение13 мин
Количество просмотров93K
Перед вами — первый материал из серии, посвящённой разработке полноценного веб-приложения, которое называется Budget Manager. Основные программные средства, которые будут использованы в ходе работы над ним — это Node.js для сервера, Vue.js для фронтенда, и MongoDB в роли базы данных.



Эти материалы рассчитаны на читателей, которые знакомы с JavaScript, имеют общее представление о Node.js, npm и MongoDB, и хотят изучить связку Node-Vue-MongoDB и сопутствующие технологии. Приложение будем писать с нуля, поэтому запаситесь любимым редактором кода. Для того, чтобы не усложнять проект, мы не будем пользоваться Vuex и постараемся сосредоточиться на самом главном, не отвлекаясь на второстепенные вещи.

Автор этого материала, разработчик из Бразилии, говорит, что ему далеко до JavaScript-гуру, но он, находясь в поиске новых знаний, готов поделиться с другими тем, что ему удалось найти.
Читать дальше →
Всего голосов 23: ↑22 и ↓1+21
Комментарии3

Современная Web-платформа: как расслабиться и получать удовольствие? Практическое руководство, часть 1

Время на прочтение7 мин
Количество просмотров24K

Всем привет!


Помните эту статью? Раньше мы могли быстро собрать статичную HTML-страничку в каком-нибудь FrontPage и сайт был готов. С этим мог справится любой студент. В более сложном случае, мы писали пару строк на PHP и получали уже целый портал, собранный из разных элементов шаблона на сервере. Затем мы захотели, чтобы наш сайт как-то выделялся на общем фоне и умел чуть-чуть больше. Трон занял его-величество jQuery. Теперь же, мы оказались погребены под завалами фреймворков и библиотек, инструментов сборки, менеджеров зависимостей, препроцессоров и постпроцессоров, особых форматов, языков и стилей программирования, чтобы иметь возможность стряпать простые лэндинги. Все стало слишком сложно. Спикеры на конференциях стали соревноваться в изощренности того, каким еще образом можно сломать нам мозг. Как мы докатились до жизни такой? Чем «раньше» так сильно отличается от «сейчас»? Что нас ждет «потом»? Есть ли в современной веб-разработке некий дзен-стайл, блюдя который, можно, как в старые добрые времена, собрать себе уютный сайтик «на коленке» за пару вечеров, без ковыряния в документации десятка хипстерских технологий-однодневок? Насколько доступны нам простые решения в серьезной промышленной разработке? Куда движется веб-платформа? Предлагаю разобраться.
Читать дальше →
Всего голосов 18: ↑16 и ↓2+14
Комментарии73

Атака клонов. Как бороться с дублированием кода?

Время на прочтение9 мин
Количество просмотров23K

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


В рамках данной статьи мне бы хотелось напомнить, что такое программные клоны, какие они влекут за собой проблемы и как с ними можно бороться. В статье приводятся примеры рефакторинга реальных клонов из популярного фреймворка Spring. В качестве инструментов используются Java 8, IDE IntelliJ IDEA 2017.1 и плагин Duplicate Detector 1.1.


Читать дальше →
Всего голосов 15: ↑15 и ↓0+15
Комментарии7

Про Agile, Scrum и командную работу. Как устроены процессы развития продуктов в Альфа-Лаборатории

Время на прочтение5 мин
Количество просмотров21K

Негибкий “Энтерпрайз” и гибкие методологии


Существует устоявшееся мнение, что IT-специалист в крупных компаниях — это маленький “винтик” в огромном механизме, призванный выполнять какую-то конкретную функцию. А механизм, в свою очередь, беспощадно эксплуатирует ресурс своих “винтиков”.

Однако мы (в Альфа-Банке в целом и в Альфа-Лаборатории в частности) придерживаемся иного подхода. Подхода, когда усилия всех участников процесса направлены на создание ценности для клиента, при этом путь, которым они этого достигают, может содержать очень много степеней свободы.



Я расскажу, как у нас в Лаборатории выстраиваются процессы работы. Мы опираемся на концепцию Agile. В качестве основного фреймворка мы выбрали Scrum, модель производства — командно-центричная.
Читать дальше →
Всего голосов 22: ↑19 и ↓3+16
Комментарии29

Как пройти собеседование в компанию мечты? Советы от тимлидов IT-компаний

Время на прочтение6 мин
Количество просмотров37K
16-17 июля в 95 км от Москвы пройдёт конференция для python-разработчиков PYCON RUSSIA. Традиционно мы делаем серию интервью с докладчиками и организаторами.

В первом посте мы спросили тимлидов четырёх разных компаний, на что они обращают внимание во время собеседований, какие ошибки допускают кандидаты, как понять, что человек подходит в команду, и чего никогда нельзя делать во время интервью. На вопросы ответили: CTO в компании «Точка» Данила Штань, руководитель разработки в ЦИАН Михаил Юматов, руководитель группы Python-проектов в Rambler&Co Олег Чуркин и руководитель PyCharm Community в JetBrains Андрей Власовских.


Читать дальше →
Всего голосов 37: ↑25 и ↓12+13
Комментарии49

Переписываем домашний проект на микросервисы (Java, Spring Boot, Gradle)

Время на прочтение13 мин
Количество просмотров74K

Введение


Image


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


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


Всё это было реализовано в виде прототипа — были пользователи, один урок и одна задача для него, возможность отправить код, который компилировался и исполнялся. Кое-какой фронтенд, но в статье о нём речи не будет. Технологии — Spring Boot, Spring Data, Gradle.


В статье будет реализован такой же прототип, но уже на микросервисах. Реализация будет наиболее простым путём (точнее наиболее простым, из известных мне). Реализация будет доступна любому, кто знаком со Spring.

Читать дальше →
Всего голосов 17: ↑16 и ↓1+15
Комментарии34

API от Watson и что эти инструменты могут дать вашему сервису или приложению

Время на прочтение6 мин
Количество просмотров10K


С появлением application programming interface или, если кратко, API, жизнь программистов стала несколько легче, чем раньше. За минимальное время теперь можно добавить в свое приложение определенные функции, структуры, процедуры, предоставляемые другим приложением, операционной системой или сервисом. API своих сервисов и приложений сейчас открывают многие разработчики.

В 2013 году компания IBM открыла сразу три API когнитивной системы Watson в рамках “The Watson Ecosystem” — экосистемы, которая на то время включала более 40 различных технологий. Благодаря этим API разработчики получили возможность встраивать в собственные приложения и сервисы возможности, предлагаемые IBM Watson. Сейчас открытых компанией IBM API гораздо больше, чем три, да и сами сервисы стали более функциональными. В продолжении — описание существующих API различных сервисов, к которым может получить доступ разработчик.
Всего голосов 14: ↑12 и ↓2+10
Комментарии1

«Криптография в блокчейнах»: о хеш-функциях, ключах и цифровых подписях

Время на прочтение5 мин
Количество просмотров43K
Криптография — это сердце блокчейна, которое обеспечивает работу системы. Архитектура блокчейна предполагает, что доверие между участниками сети базируется на принципах математики и экономики, то есть является формализованным. Криптография также гарантирует безопасность, причем основанную на прозрачности и проверяемости всех операций, а не на традиционном для индустрии ограничении видимости системы (perimeter security).

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

Читать дальше →
Всего голосов 27: ↑22 и ↓5+17
Комментарии14

Как вести и продвигать канал в Telegram — полное руководство

Время на прочтение14 мин
Количество просмотров136K

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


Продвижение в соцсетях — не моя специальность, и я тем более не считаю себя экспертом. Однако кейс роста канала t.me/za_bugrom с нуля до 7000 подписчиков за месяц (если кто-то пока не в теме: по меркам Телеграма это большой канал) заинтересовал очень многих.
Раз есть такой большой интерес, в этой статье я один раз опишу свое видение процесса, которое является лишь моим мнением и может не иметь никакой связи с реальностью. Я поделюсь всем своим опытом, от начала и до конца, без недосказанности. По этой причине статья большая. TL;DR.

Читать дальше →
Всего голосов 20: ↑13 и ↓7+6
Комментарии11

Прогнозирование финансовых временных рядов с MLP в Keras

Время на прочтение10 мин
Количество просмотров79K

image
Всем привет! В этой статье я хочу рассказать про базовый пайплайн в прогнозировании временных рядов с помощью нейронных сетей, в данном случае, наверное, с самыми сложными временными рядами для анализа — финансовыми данными, которые имеют случайную природу, и, казалось бы, непредсказуемые. Или все-таки нет?

Читать дальше →
Всего голосов 25: ↑20 и ↓5+15
Комментарии17

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

Время на прочтение5 мин
Количество просмотров17K
Сегодня на повестке дня подборка интересных инструментов с Product Hunt — на этот раз для тех, кто ищет эффективные способы привлечь аудиторию и сделать себе имя. Грамотное продвижение продукта — это всегда целый комплекс самых разноплановых действий, поэтому я постарался включить в список сервисы и ресурсы, которые затрагивают разные его аспекты, от подбора качественного, продающего контента до анализа результатов.

Аналитика




Fullstory

Fullstory собирает максимум информации о поведении пользователей на сайте (клики, ввод текста, переходы по страницам) и проводит анализ, на основании которого можно сделать выводы о трендах. Вы можете просматривать отчеты по конкретным пользователям, проводить поиск по тому или иному действию или же кликом выводить статистику по любому объекту на странице. Помимо аналитики, пошаговые логи также будет полезны и для техподдержки.
Читать дальше →
Всего голосов 16: ↑13 и ↓3+10
Комментарии0

Модульные приложения на Java. Как?

Время на прочтение6 мин
Количество просмотров18K
То, что в Java не поддерживается модульность, известно всем. Проблема существует давно, и было немало попыток исправить ситуацию. Этой цели посвящен проект Jigsaw. В 2011 планировалось добавить поддержку модульности в Java 7, в 2014 – в Java 8, наконец, было анонсировано, что в конце июля 2017 выйдет Java 9 с возможностью модуляризации. Но что же делать в ожидании этого прекрасного мига?

OSGi спешит на помощь


Для создания по-настоящему модульной архитектуры на языке Java можно воспользоваться OSGi (Open Services Gateway Initiative) – спецификацией динамической модульной системы и сервисной платформы для Java-приложений (разработчик OSGi Alliance). Она описывает модель разработки ПО, при которой компоненты обладают тремя основными признаками модульного приложения. Речь об инкапсуляции (каждый модуль скрывает свою реализацию от внешнего окружения), слабой связности (модули взаимодействуют только с помощью заранее оговоренных контрактов) и динамичности (компоненты можно замещать на лету, без остановки всего приложения). Основой концепции OSGi являются 2 сущности: наборы (Bundles) и сервисы (Services).
Читать дальше →
Всего голосов 15: ↑8 и ↓7+1
Комментарии43

+500 бесплатных инструментов для запуска вашего стартапа в 2017 году

Время на прочтение40 мин
Количество просмотров156K


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

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

Итак, мы нашли в интернете бесплатные и условно-бесплатные инструменты для роста вашего бизнеса. Когда они дадут вам желаемый результат, вы можете оформить платную подписку.
Читать дальше →
Всего голосов 74: ↑60 и ↓14+46
Комментарии26

Информация

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