-Поиск по дневнику

Поиск сообщений в rss_rss_hh_new

 -Подписка по e-mail

 

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 17.03.2011
Записей:
Комментариев:
Написано: 51

Habrahabr/New








Добавить любой RSS - источник (включая журнал LiveJournal) в свою ленту друзей вы можете на странице синдикации.

Исходная информация - http://habrahabr.ru/rss/new/.
Данный дневник сформирован из открытого RSS-источника по адресу http://feeds.feedburner.com/xtmb/hh-new-full, и дополняется в соответствии с дополнением данного источника. Он может не соответствовать содержимому оригинальной страницы. Трансляция создана автоматически по запросу читателей этой RSS ленты.
По всем вопросам о работе данного сервиса обращаться со страницы контактной информации.

[Обновить трансляцию]

Избавляемся от boilerplate для валидации в ASP.NET MVC

Вторник, 09 Января 2018 г. 15:15 + в цитатник
В большинстве примеров проверка входных данных ASP.NET MVC осуществляется следующим образом:

        [HttpPost]
        public IActionResult Test(SomeParam param)
        {
            if (!ModelState.IsValid)
            {
                return View(param);
                // return Json({success: false, state: ModelState});
            }
            
            dbContext.UpdateData(param);

            return RedirectToAction("index");
            // return Ok({success: true});
        }

Этот код можно улучшить:

  1. вынести валидацию из тела метода и избавиться от дублирования if (!ModelState.IsValid)
  2. вернуть код ответа 422
Читать дальше ->

https://habrahabr.ru/post/346308/


Метки:  

[Из песочницы] Мега-Учебник Flask Глава 1: Привет, мир! (переиздание 2018)

Вторник, 09 Января 2018 г. 14:28 + в цитатник

blog.miguelgrinberg.com


Мега-Учебник Flask, Часть 1: Hello, World!


Miguel Grinberg




Эта статья является переводом нового издания учебника Мигеля Гринберга. Прежний перевод давно утратил свою актуальность. Оригинальный учебник избавлен от некоторых неточностей, вызванных развитием веб за те 5 лет, что существует эта книга.


Автор планирует завершить его выпуск в мае 2018. Я, со своей стороны, постараюсь не отставать с переводом.


VIDEO

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

https://habrahabr.ru/post/346306/


Метки:  

[Перевод] Amazon — главная угроза для биткоина в данный момент

Вторник, 09 Января 2018 г. 13:36 + в цитатник

За последний год многие стали активно принимать участие в астрономическом подъеме биткоина. Подростки инвестировали деньги, отложенные на университет. Семьи закладывали жилье и закупались на всю вырученную сумму. Даже миллиардеры поговаривали о том, чтобы вложить 10% своего состояния в цифровую валюту.

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

Большинство, раздумывая, кто может в будущем занять место биткоина на троне, перебирает альтернативные криптовалюты. Но, возможно, угроза на самом деле исходит из более материальной области?
Читать дальше ->

https://habrahabr.ru/post/346278/


Метки:  

Веб-мессенджеры и эвент 'beforeunload': как сохранить миллион сообщений при закрытии страницы

Вторник, 09 Января 2018 г. 13:33 + в цитатник

В конце лета мы добавили в наше облако Voximplant поддержку месседжинга. Теперь с помощью него и россыпи SDK под разные платформы можно делать собственные мобильные или веб-мессенджеры: голосовые звонки в любых комбинациях между телефонными сетями и SDK — есть, видеозвонки между SDK — есть, месседжинг — есть. А еще у текстовых сообщений есть ключевое отличие от голосовых и видеозвонков: их контент должен оставаться. Voximplant может записать голосовой и видеозвонок на стороне облака и отдать URL с получившимся файлом, но это «медленная» история для CRM, систем управления заказами и колл-центров. А сообщения — это быстрая история. Пользователь очень огорчается, когда клик по «старому» чату в Skype вызывает зависание мобильного или веб-приложения, которое пытается выкачать хоть сколько-нибудь истории с нагруженных серверов по неустойчивому 3G. В наших SDK мы предусмотрели несколько механизмов для максимально быстрой работы с историей сообщений, о которых под катом.
Читать дальше ->

https://habrahabr.ru/post/346188/


Метки:  

[Из песочницы] Совершенствуем контроль сессий в Spring Security

Вторник, 09 Января 2018 г. 13:13 + в цитатник
Добрый день, уважаемое Сообщество.

Разрабатывая многопользовательское web-приложение, столкнулся с проблемой повторного логина пользователей, решение которой потребовало необычного обходного маневра, чтобы сохранить логичную работу программы и ее понятный дизайн. Поэтому хочу поделиться своим опытом. Это приложение — игра, где зарегистрировавшиеся пользователи могут выбирать с кем сразиться из списка присутствующих на сайте свободных игроков. После авторизации игрока на сайте (login) информация о нем добавляется в структуру данных. Часть этой информации асинхронно отображается в игровом интерфейсе, как список игроков на арене. Когда игрок выходит, то информация о нем должна быть удалена из структуры данных, он более не отображается в списке соперников online. Здесь есть конечно нюансы и сложности с учетом асинхронности, но преодолимые.

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

  • он может добросовестно разлогиниться (нажав кнопку logout);
  • может просто закрыть браузер, крышку ноутбука, нажать ресет и т.п., в общем уйти по-английски.

Для таких английских сценариев используется следующий подход.

1.  Добавляется SessionEventListener при регистрации DispatcherServlet в ходе стандартной инициализации и настройки Spring MVC приложения:
Читать дальше →

https://habrahabr.ru/post/346296/


Метки:  

Чем занимается Product Marketing Manager в JetBrains

Вторник, 09 Января 2018 г. 12:59 + в цитатник
Всем привет!

Меня зовут Андрей Чепцов, я работаю в JetBrains и занимаюсь маркетингом IntelliJ IDEA и GoLand (нашей новой IDE для Go). Официально моя должность называется Product Marketing Manager. Если в двух словах, я рассказываю пользователям о том, чем занимается команда продукта. В данный момент в команду GoLand как раз разыскивается еще один такой человек. Чтобы было понятно, чем он (или она) будет заниматься, в этом посте я вкратце расскажу о своей работе.
Читать дальше ->

https://habrahabr.ru/post/346294/


Метки:  

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

Вторник, 09 Января 2018 г. 12:43 + в цитатник

Диспозиция


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



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

Читать дальше ->

https://habrahabr.ru/post/342216/


Метки:  

[Из песочницы] Тестирование документации к программным продуктам

Вторник, 09 Января 2018 г. 12:33 + в цитатник
Когда-то в стародавние времена была у меня задача по тестированию документации к нескольким программным продуктам. Пользуясь гуглом, не удалось отыскать на раз-два информацию о том, какими качествами должна обладать документация и кому она нужна. Собирал все по крупицам. Давно принял решение написать об этом, и вот, пользуясь наличием праздничных дней, публикую.
Читать дальше ->

https://habrahabr.ru/post/346290/


Метки:  

Attention! S in Ethereum stands for Security. Part 1. Blockchain things

Вторник, 09 Января 2018 г. 12:25 + в цитатник


С этой статьи мы начинаем цикл, посвященный типичным уязвимостям, атакам и проблемным местам, присущим смарт-контрактам на языке Solidity, и платформе Ethereum в целом. В первой части мы поговорим вот о чем:


  • почему сложно реализовать децентрализованную биржу на смарт-контрактах
  • как сгенерировать случайное число
  • как вывести из строя всю Proof-of-Authority сеть
Читать дальше ->

https://habrahabr.ru/post/345196/


Метки:  

[Перевод - recovery mode ] Пишем собственный простой Redis-сервер на Python

Вторник, 09 Января 2018 г. 12:20 + в цитатник

На днях мне пришла в голову мысль, что было бы здорово написать простой Redis-подобный сервер баз данных. Хотя у меня значительный опыт работы с приложениями WSGI, сервер базы данных представил новый вызов и оказался хорошей практикой в процессе обучения работе с сокетами в Python. В этой статье расскажу, что я узнал в процессе исследования.

Читать дальше ->

https://habrahabr.ru/post/346286/


Метки:  

Подбираем пароли с помощью Google Chrome

Вторник, 09 Января 2018 г. 12:12 + в цитатник

Согласно многочисленным исследованиям в области компьютерной безопасности, в ТОП-3 уязвимостей информационных систем входит подбор пароля.


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


В случае, если мы имеем какой-либо портал, где пользователи – это люди, то бОльшую часть уязвимых слабых паролей можно отнести к одной из 4 групп:


  1. Пароли, входящие в топ самых популярных фраз (такие как «123456», «password», и т.п.).
  2. Пароли, представляющие собой сочетание клавиш – так называемые keyboard-walks пароли (например, «qwerty», «qazwsx», и т.п.).
  3. Пароли – искажённые логины («user123», «user321», и т.п.).
  4. Либо использование в качестве пароля популярных русских слов или имён в «перевёрнутой» раскладке («ljcneg», «fylhtq»)
Читать дальше ->

https://habrahabr.ru/post/346284/


Метки:  

[Перевод] 11 библиотек (наборов компонентов) для Angular, о которых стоит знать в 2018-м

Вторник, 09 Января 2018 г. 11:40 + в цитатник

Метки:  

Истории успеха Kubernetes в production. Часть 6: BlaBlaCar

Вторник, 09 Января 2018 г. 11:33 + в цитатник


Основанный в 2006 году BlaBlaCar считается крупнейшим в мире онлайн-сервисом поиска автомобильных попутчиков (ridesharing). Появившись во Франции, сервис прошёл активную экспансию в Европе, с 2014 года стал доступен в России и Украине, а позже добрался до стран Латинской Америки и Азии. Рост популярности онлайн-сервисов неизбежно связан с развитием стоящей за ними ИТ-инфраструктуры, и, как легко догадаться из названия статьи, сегодняшние потребности BlaBlaCar реализуются благодаря Kubernetes. К чему же пришли ИТ-инженеры компании? Читать дальше ->

https://habrahabr.ru/post/345780/


Метки:  

Национальная почтовая безопасность

Вторник, 09 Января 2018 г. 11:15 + в цитатник


Новый год начался весело — случилось странное и непривычное – меня взломали. Адрес был на Национальной почтовой службе Мэйл.ру.


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

Читать дальше ->

https://habrahabr.ru/post/346280/


Метки:  

Простой планировщик задач на PHP

Вторник, 09 Января 2018 г. 10:00 + в цитатник
image

В процессе эволюции более-менее крупного проекта может настать ситуация, когда количество запланированных задач (cron jobs) становится настолько большим, что поддержка их становится ночным кошмаром devops'ов. Для решения этой проблемы мне пришла в голову идея создать реализацию планировщика на PHP, тем самым сделав его частью проекта, а сами задачи — частью его конфигурации. В этом случае необходимое и достаточное количество cron jobs будет равно единице.

Читать дальше ->

https://habrahabr.ru/post/345802/


Метки:  

Магия CharSequence

Вторник, 09 Января 2018 г. 08:50 + в цитатник
java.lang.CharSequence только на первый взгляд кажется незатейливым интерфейсом из трех методов, но при детальном рассмотрении открывает нам несколько интересных нюансов.
Интерфейс реализуют такие java-классы как String, StringBuffer, StringBuilder, GString (groovy) и не только.

TL;DR если добавить этот интерфейс в класс, он получит часть свойств строки и появится ряд возможностей — сравнения со строками (например, String.contentEquals), использования различных строковых API (например, Pattern.matcher), а также в местах автоматического определения поведения в зависимости от типа (например, биндинг параметров запроса в jdbc).

Кроме того, этот подход упростит проведение ряда рефакторингов по усилению системы типов в приложении — в первую очередь замены объектов типа String на специализированные обертки или enum-константы.

Строковые скаляры


Для добавления ограничений на формат значения, а также усиления type safety, вместо строк могут использоваться специальные скалярные обертки. Для понимания рассмотрим пример — пусть ID клиента является строкой, соответствующей регулярному выражению. Его класс-обертка будет выглядеть примерно так:
Читать дальше ->

https://habrahabr.ru/post/345660/


Метки:  

ТАУ для самых маленьких: пример реализации ПИД-регулятора в Unity3D

Вторник, 09 Января 2018 г. 08:49 + в цитатник

Вместо введения


Системы автоматического управления (САУ) предназначены для автоматического изменения одного или нескольких параметров объекта управления с целью установления требуемого режима его работы. САУ обеспечивает поддержание постоянства заданных значений регулируемых параметров или их изменение по заданному закону либо оптимизирует определенные критерии качества управления.

Читать дальше ->

https://habrahabr.ru/post/345972/


Метки:  

Разрабатываем крутой GUI на esp8266 с библиотекой uGFX

Вторник, 09 Января 2018 г. 00:38 + в цитатник

В многих проектах для esp8266 я использую TFT экран с тачскрином. В зависимости, от проекта интерфейс может быть простым, например, текстовая консоль, выводящая лог работы приложения или просто график изменения входного сигнала. А в некоторых — сложный GUI, с несколькими экранами, графическими кнопками, строками ввода текста и даже виртуальной клавиатурой.
В этой статье хочу поделиться опытом, как можно подключить экран с тачскрином к esp8266 и реализовать графический интерфейс в среде Arduino.


Видео-тизер:





Итак, приступим

Читать дальше ->

https://habrahabr.ru/post/346276/


Метки:  

«Письмо турецкому султану» или линейная регрессия на C# с помощью Accord.NET для анализа открытых данных Москвы

Понедельник, 08 Января 2018 г. 22:57 + в цитатник
Когда речь идет об освоении самых основ машинного обучения, чаще всего предлагается изучить соответствующие инструменты на Python или R. Мы не будем обсуждать их плюсы и минусы, а просто зададимся вопросом, что делать если вы знакомы только с экосистемой .NET, но при этом вам очень любопытно окунутся в мир науки о данных? Ответ прост, не отчаиваться и посмотреть в сторону F#, а если вы также, как и я из .NET знаете только азы C#, то попробовать изучить Accord.NET Framework.

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

Несмотря на то, что в заголовке статьи указан C#, мы попробуем собрать код и на VB.NET.

Мне осталось только пригласить вас под кат!



Читать дальше ->

https://habrahabr.ru/post/346222/


Метки:  

[Перевод] Управление техническим долгом

Понедельник, 08 Января 2018 г. 21:55 + в цитатник
Екатерина Сазонова, переводчик-фрилансер и студентка «Нетологии», специально для блога перевела статью Carl Tashian о том, как продакт- и проджект-менеджерам справляться с техническим долгом.

image

О проблемах разработки программного обеспечения, его оценке, контроле стоимости, тестировании написано огромное количество книг. Хочу поделиться с вами проверенными практиками, которые помогли мне как техническому менеджеру держать под контролем технический долг в растущем проекте. Читать дальше ->

https://habrahabr.ru/post/346264/



Поиск сообщений в rss_rss_hh_new
Страницы: 1437 ... 1307 1306 [1305] 1304 1303 ..
.. 1 Календарь