Как стать автором
Обновить
0
Виктор @lomik248read⁠-⁠only

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

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

Как не облажаться с дизайном. Инструкция для чайников за 5 минут

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


Перевод «Я люблю ИП»


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


Если вы не верите, что можете научиться дизайну, просто вспомните слова легендарного Дэвида Грола (барабанщик в группе Nirvana, гитарист и вокалист FooFighters, прим. ред.) об изучении новых вещей:


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

А теперь, помня эти слова, вы готовы к нашему крэш-курсу? Пристегните ремни, мы начинаем в произвольном порядке.


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

Парсинг сайтов-магазинов. Личный опыт и немного how-to

Время на прочтение3 мин
Количество просмотров190K
Разделим парсинг (скраппинг) сайтов на две подзадачи.
  1. Собственно сам парсинг – поиск данных, которые нам интересны на страницах.
  2. Осмысливание полученных данных.

Рассмотрим эти задачки подробнее
Всего голосов 59: ↑46 и ↓13+33
Комментарии70

Git: распространённые ошибки и способы их исправления

Время на прочтение4 мин
Количество просмотров45K
Если вы когда-нибудь работали над большим проектом, в котором, помимо вас, участвуют и многие другие программисты, тогда вы, очевидно, применяли Git в роли системы контроля версий. В ходе использования чего-то, по уровню сложности похожего Git, все совершают ошибки.


Автор материала, перевод которого мы публикуем сегодня, собирается обсудить распространённые ошибки, которые совершают программисты при работе с Git, и поговорить о том, как с этими ошибками бороться.
Читать дальше →
Всего голосов 76: ↑56 и ↓20+36
Комментарии19

Мой подход к созданию ТЗ на шаблонные сайты

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

Вместо эпиграфа.


Поймал дед золотую рыбку. Она ему говорит:
— Чего тебе, дед?
— Хочу чтоб мой аппарат был длиной до колен.
Взяла рыбка и укоротила деду ноги.
Мораль: ставьте корректно техническое задание.

Добрый день великий и могучий Хабр.
Некоторое время назад было несколько постов о технических заданиях (Как поставить задачу для простого (шаблонного) сайта, Почему мы никогда не составляем ТЗ. А что взамен?, Правила технического задания), которые хотелось бы продолжить и рассказать про мой подход к написанию ТЗ на шаблонные сайты.
Читать дальше →
Всего голосов 116: ↑110 и ↓6+104
Комментарии70

Методичка по работе с клиентами. Для начинающих менеджеров веб-студий. Часть 2. ТЗ и смета

Время на прочтение4 мин
Количество просмотров12K
(2009 год, второе письмо старшего менеджера веб-студии — младшему)
Итак, первоначальные переговоры c клиентом проведены. Смотрим первую часть методички здесь http://habrahabr.ru/blogs/studiobusiness/45543/.
Теперь надо сориентировать клиента по цене. Если он с ней принципиально согласен — переходим к обсуждению Технического задания (ТЗ).
Делаем смету
Читать дальше →
Всего голосов 45: ↑40 и ↓5+35
Комментарии41

Как сделать простое техническое задание и не потерять деньги и нервы

Время на прочтение9 мин
Количество просмотров28K
Привет, Хабр! Адресую эту статью себе более молодому и неопытному, а также всем, кто чувствует неуверенность в подходе к технической документации. Хотя если кому-то из зубров проектного дела она поможет, буду рад вдвойне.

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


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

Еще одна история маленького хостинг провайдера

Время на прочтение4 мин
Количество просмотров33K
Личная история о том, как я открыл свой хостинг, который даже приносит некоторую прибыль.
Навеянно историей habrahabr.ru/blogs/hosting/93364

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

Занимаясь веб разработкой еще и на себя у меня есть виртуальный сервер для испытаний ПО. Ресурсы сервера не используются и на 10%, поэтому мысль почему бы и не заработать засела в моей голове.

Эту идею пришлось продумать до мелочей. Хотелось не только окупать себя, но и хоть немного, но зарабатывать. Поняв что на хостинге за 2$ не заработаешь, я решил, что буду брать с клиентов гораздо большую сумму. Естественно, сразу встал вопрос как найти клиентов готовых платить такую сумму за хостинг и как конкурировать с хостингами за $2.

Задав себе вопрос, за что мне платят на моей основной работе? Я понял для себя две вещи. Во первых, мне платят за мои знания. Во вторых — за саму работу.

Это натолкнуло меня на мысль, что мой потенциальный клиент это — организация, минимум связанная с компьютерной сферой.
Читать дальше →
Всего голосов 99: ↑85 и ↓14+71
Комментарии127

Исследуем сопоставление с образцом в C# 7

Время на прочтение6 мин
Количество просмотров19K
В C# 7 наконец появилась долгожданная возможность под названием «сопоставление с образцом» (pattern matching). Если вы знакомы с функциональными языками, такими как F#, вы можете быть немного разочарованы этой возможностью в ее текущем виде, но даже сегодня она может упростить ваш код в самых разных сценариях.

Каждая новая возможность чревата опасностью для разработчика, работающего в критическом для производительности приложении. Новые уровни абстракций хороши, но для того, чтобы эффективно использовать их, вы должны знать, что происходит под капотом. Сегодня мы собираемся изучить внутренности сопоставления с образцом, чтобы понять, как это реализовано.
Читать дальше →
Всего голосов 26: ↑26 и ↓0+26
Комментарии0

Сервис онлайн-касс АТОЛ Онлайн: API и интеграция с CMS

Время на прочтение8 мин
Количество просмотров27K
Раскрываем общие детали работы с сетевым сервисом онлайн-касс, нюансы интеграции с CMS и подводные камни, об которые вы споткнетесь в случае, если не станете использовать готовые решения и будете заниматься интеграцией самостоятельно.



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

Domain Driven Design на практике

Время на прочтение12 мин
Количество просмотров265K
Эванс написал хорошую книжку с хорошими идеями. Но этим идеям не хватает методологической основы. Опытным разработчикам и архитекторам на интуитивном уровне понятно, что надо быть как можно ближе к предметной области заказчика, что с заказчиком надо разговаривать. Но не понятно как оценить проект на соответствие Ubiquitous Language и реального языка заказчика? Как понять, что домен разделен на Bounded Context правильно? Как вообще определить используется DDD в проекте или нет?

Последний пункт особенно актуален. На одном из своих выступлений Грег Янг попросил поднять руки тех, кто практиукует DDD. А потом попросил опустить тех, кто создает классы с набором публичных геттеров и сеттеров, располагает логику в «сервисах» и «хелперах» и называет это DDD. По залу прошел смешок:)

Как же правильно структурировать бизнес-логику в DDD-стиле? Где хранить «поведение»: в сервисах, сущностях, extension-методах или везде по чуть-чуть? В статье я расскажу о том, как проектирую предметную область и какими правилами пользуюсь.
Читать дальше →
Всего голосов 32: ↑28 и ↓4+24
Комментарии18

Защита ASP.NET приложений от взлома

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

ASP.NET MVC — не самый хайповый, но довольно популярный стек в среде веб-разработчиков. С точки зрения (анти)хакера, его стандартная функциональность дает тебе кое-какой базовый уровень безопасности, но для предохранения от абсолютного большинства хакерских трюков нужна дополнительная защита. В этой статье мы рассмотрим основы, которые должен знать о безопасности ASP.NET-разработчик (будь то Core, MVC, MVC Razor или Web Forms).


Читать дальше →
Всего голосов 30: ↑27 и ↓3+24
Комментарии11

Vue.js + Asp.Net Core MVC + TypeScript и ещё Bootstrap4

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

image


По стандартному шаблону Asp.Net Core MVC в Visual Studio 2017 создаем новый проект, переводим его на четвертый Bootsrtrap, встраиваем туда модульное приложение Vue.js на TypeScript.


Получаем простую, обозримую и легкую заготовку для создания своих веб-приложений на VS2017 с использованием Vue.js и TypeScript. Привычная среда разработки, в которой можно выполнять большую часть кодинга и отладки, а также быстрая пересборка приложения, делают работу вполне комфортной.


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


Материал рассчитан на способных управиться с VS2017 и знакомых с прогрессивным JavaScript фреймворком Vue.js.

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

Как использовать сжатие ответа в ASP.Net Core

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

Воспользуйтесь преимуществами компонента промежуточной обработки для сжатия ответов (Response Compression Middleware) в ASP.Net Core, чтобы снизить требования к пропускной способности и повысить оперативность ваших приложений.
Читать дальше →
Всего голосов 12: ↑9 и ↓3+6
Комментарии4

ASP.NET Core: Механизмы предотвращения атак 2.0

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

По встроенным механизмам безопасности ASP .NET Core написано мало статей. Даже официальная документация имеет пробелы. В этой статье мы пройдём по всем основным компонентам, имеющим отношение к безопасности, и разберём, как это работает внутри.


Если вы используете старый добрый ASP .NET, то для вас будет полезна информация по внутреннему устройству компонентов безопасности и лучшим практикам их использования. Здесь вы найдёте ответы на следующие вопросы: как реализованы современные анти-XSS механизмы и как их правильно использовать в ASP .NET Core? Как правильно работать с cookies и какие подводные камни там могут встретиться? Как был переписан механизм защиты от CSRF? Как правильно работать с криптографическими алгоритмами? Кроме того, рассказывается про опыт участия в Bug Bounty по поиску уязвимостей в ASP .NET Core.


Перед чтением рекомендуется освежить в памяти атаки из списка OWASP Top 10.


Прототипом статьи является доклад Михаила Щербакова на конференции DotNext 2017 Moscow. Михаил — Microsoft .NET MVP, участник .NET Core Bug Bounty Program, соорганизатор сообщества .NET программистов (Московское комьюнити называется MskDotNet, питерское — SpbDotNet). По работе последние 5 лет занимается безопасностью. Работал в Positive Technologies, в Cezurity, сейчас как консультант работает напрямую с заказчиками, по большей части в этой же сфере. Профессиональные интересы: статический и динамический анализ кода, информационная безопасность, автоматизация отладки кода, исследование внутреннего устройства .NET CLR.


В этом тексте огромное количество картинок со слайдов. Осторожно, трафик!

Читать дальше →
Всего голосов 54: ↑53 и ↓1+52
Комментарии2

SignalR Core. «Hello Habr!»

Время на прочтение6 мин
Количество просмотров30K
Коротко: небольшой самодостаточный пример, иллюстрирующий SignalR для .NET Core 2 и разработку в IDE Rider. В самом конце — видео Dino Esposito с конференции DotNext на эту же тему.

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


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


Всего голосов 30: ↑30 и ↓0+30
Комментарии10

20+ ресурсов, чтобы начать фрилансить

Время на прочтение3 мин
Количество просмотров652K
Чувствуете, что готовы уйти с работы, самостоятельно контролировать свой день, биться за клиента и работать только над интересными задачами? Пришло время попробовать себя во фрилансе. Это совсем нелегко, а чаще труднее, чем офисная рутина. Чтобы не разочароваться в выборе формата работы, устройте себе тест-драйв — на праздниках или в выходные. Собрали площадки, где найдете задачи по душе.


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

Книга «Микросервисы на платформе .NET»

Время на прочтение10 мин
Количество просмотров14K
image Привет, Хаброжители! Предлагаем вашему вниманию главу «Шаблоны для построения приложений на основе микросервисов» из нашей новой книги К. Хорсдала, посвященной программированию микросервисов на платформе .NET

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

На рис. 12.3 мы возвращаемся к примеру со страховкой — у нас есть универсальное приложение, которое включает в себя всю функциональность системы. Система для работы со страховками построена с использованием микросервисов, поэтому для того, чтобы предоставить всю функциональность системы, приложение должно получать бизнес-возможности от нескольких микросервисов. Микросервисов в системе больше, чем показано на рисунке, и приложение не будет непосредственно наследовать функциональность от всех них. Такое приложение сосредоточивает всю функциональность в одном месте, отсюда и возник термин «составное приложение».
Читать дальше →
Всего голосов 9: ↑8 и ↓1+7
Комментарии4

Как стать самостоятельным регистратором .RU/.РФ

Время на прочтение7 мин
Количество просмотров24K
В этой серии статей мы расскажем, как получали аккредитацию, как вы можете получить ее сами и поделимся с вами нашими разработками. Мы в Бегете хотим, чтобы развивались не только мы, но и вся отрасль в целом, так как конкуренция создает хорошие продукты.

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



Читать дальше →
Всего голосов 30: ↑28 и ↓2+26
Комментарии27

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

Время на прочтение5 мин
Количество просмотров19K
Домен вовремя не оплатили – такое случается. Однако домен домену рознь – одно дело, если не продлили недавно зарегистрированный и, по большому счету, стоящий ровно столько, сколько уплачено регистратору. И совсем другое, если он давнишний, раскрученный и, тем более, приносящий доход вашему бизнесу. В этом случае домен, именуемый на профессиональном жаргоне «дропнутым», надо вернуть, иначе при должном усердии новый владелец может не просто разрушить ваш бизнес, но и воспользоваться плодами ваших трудов.

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

Универсальный конвертер данных на платформе .Net Framework

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

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

Читать дальше →
Всего голосов 9: ↑8 и ↓1+7
Комментарии14
1
23 ...

Информация

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