Алгоритм Дейкстры и разработка через тестирование

Автор: admin от 13-01-2017, 17:35, посмотрело: 363

Здравствуйте, дорогие читатели.

Некоторые потенциальные авторы, с которыми мы общаемся, думают, что в нашем ассортименте не хватает книг по TDD. Мы думаем, как к ней подступиться. Но нам не менее интересно, что думаете о ней вы. Поэтому предлагаем под катом перевод статьи легендарного Роберта Мартина, автора шикарной книги «Чистый код». В статье (октябрь 2016 года) господин Мартин демонстрирует искусство TDD на примере алгоритма Дейкстры.

Категория: Программирование

 

DOCSIS 3.1 — как достичь максимальной пропускной способности

Автор: admin от 13-01-2017, 17:35, посмотрело: 1365

Новая версия спецификации DOCSIS — DOCSIS 3.1, полностью изменила принципы работы DOCSIS, увеличив пропускную способность канала на 50%, производительность до 10 Гб/сек в прямом канале и до 2 Гб/сек в обратном — скорости, сопоставимые с передачей данных по оптоволокну.

DOCSIS 3.1 — как достичь максимальной пропускной способности
DOCSIS 3.1 обеспечивает больше бит на 1 герц по сравнению с DOCSIS 3.0 при том же соотношении сигнал/шум

Спецификация DOCSIS 3.1 была выпущена и успешно протестирована в лабораторных условиях в 2015-м году. На начало 2016 года было сертифицировано 5 новых кабельных модемов, поддерживающих стандарт DOCSIS 3.1, провайдеры по всему миру начали внедрять и тестировать оборудование этого стандарта.

Но что делает уникальным DOCSIS 3.1 по сравнению с более ранними версиями и как изменятся методы тестирования в связи с этим? В данной статье рассматриваются две основные технологии, используемые в последней версии спецификации: мультиплексирование с ортогональным частотным разделением каналов (orthogonal frequency-division multiplexing — OFDM) и код с малой плотностью проверок на чётность (low density parity check — LDPC). В статье также описываются методы достижения максимальных уровней производительности.

Категория: Админитстрирование » Сетевые технологии

 

100 выпуск Digest MBLTdev — свежак для iOS-разработчиков

Автор: admin от 13-01-2017, 17:30, посмотрело: 309

100 выпуск Digest MBLTdev — свежак для iOS-разработчиков


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

Категория: Веб-разработка, Game Development, iOS

 

Простая и ужасающая история о шифровании

Автор: admin от 13-01-2017, 16:50, посмотрело: 313

Это будет история об открытом ПО, доверии и ответственности.

Задача и её решение


Как-то раз мне понадобилось добавить в своё приложение на Ruby симметричное шифрование. Алгоритм AES показался мне хорошим выбором и я решил найти библиотеку шифрования с поддержкой этого алгоритма. Поскольку я писал на Ruby, то сделал то же самое, что сделал бы на моём месте практически каждый программист на Ruby — пошел в Google и написал запрос «ruby gem aes». Конечно же, Google первой строкой предложил мне gem, называющийся (вот неожиданность!) — «aes». Он был очень прост в использовании:

require 'aes'

message = "Super secret message"
key = "password"

encrypted = AES.encrypt(message, key)    # RZhMg/RzyTXK4QKOJDhGJg==$BYAvRONIsfKjX+uYiZ8TCsW7C2Ug9fH7cfRG9mbvx9o=
decrypted = AES.decrypt(encrypted, key)  # Super secret message


Если вы при расшифровке использовали неверный пароль, gem выбрасывал ошибку:
decrypted = AES.decrypt(encrypted, "Some other password") #=> aes.rb:76:in `final': bad decrypt (OpenSSL::Cipher::CipherError)


Ну, отлично. Что же могло пойти не так?

Категория: Веб-разработка, Информационная безопасность

 

Exploit Exercises или ещё один сайт для любителей VulnHub

Автор: admin от 13-01-2017, 16:30, посмотрело: 362

Exploit Exercises или ещё один сайт для любителей VulnHub

Всем доброго времени суток, спасибо, что читаете мои райтапы.
Сегодня речь пойдёт ещё об одном сайте, который похож на VulnHub. Это Exploit Exercises. Несмотря на небольшое количество виртуалок, и их относительно давнюю публикацию, почерпнуть что-то новое можно и там. Тем более это компенсируется разнообразием и количеством уровней.
Начать предлагается с виртуальной машины под названием Nebula. Её мы сегодня и разберём.

Категория: Веб-разработка, Информационная безопасность, Linux

 

Google запускает Key Transparency, инструмент для подтверждения криптоключей

Автор: admin от 13-01-2017, 14:55, посмотрело: 224

Google запускает Key Transparency, инструмент для подтверждения криптоключей

Надёжная криптография — основа современного интернета. Без криптографии нет безопасной связи, теряется возможность совершения надёжных транзакций в интернете. Мы не можем доверять даже собеседнику, если не установили защищённое соединение.

По мнению Google, в нынешней инфраструктуре публичной криптографии есть серьёзный изъян. Дело в том, что в случае компрометации сервера с ключами пользователям приходится вручную проверять ключи у собеседника. Это крайне неудобно и на практике не работает. Из-за таких сложностей некоторые энтузиасты криптографии вовсе отказываются от PGP — и их вполне можно понять.

Компания Google придумала решение: она предлагает всем задействовать прозрачный механизм поиска открытых ключей Key Transparency.

Категория: Информационная безопасность, Криптография

 

Тренды и события в мире веб-технологий в 2016 году

Автор: admin от 13-01-2017, 14:20, посмотрело: 269

Тренды и события в мире веб-технологий в 2016 году


Фото: Flickr / Dennis Skley / CC

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

Категория: Программирование » Веб-разработка

 

Про ScalaCheck

Автор: admin от 13-01-2017, 14:15, посмотрело: 322

Про ScalaCheck


Часть 1. Введение.


ScalaCheck — это комбинaторная библиотека, значительно облегчающая написание модульных тестов на Scala. В ней используется подход property-based тестирования, впервые реализованный в библиотеке QuickCheck для языка Haskell. Существует множество реализаций QuickCheck: есть реализации для Java, C, а так же других языков и платформ. Использование данного подхода позволяет значительно сократить время на разработку тестов.


Эта серия статей во многом похожа на мою предыдущую, посвященную Parboiled, поэтому и структура повествования будет похожей. Я расскажу вам, для чего всё это нужно, затем мы научимся смотреть на мир сквозь призму свойств и генераторов, а потом перейдём к более сложным вещам. Заинтересовало? Прошу под кат.

Категория: Программирование

 

UI/UX события 2017 года, которые вас точно не утомят

Автор: admin от 13-01-2017, 12:15, посмотрело: 325

Какой дизайнер не хочет стать лучшим в своей области? А лучший способ узнать что-то действительно крутое – это пообщаться с людьми, которые на этом собаку съели. Поэтому сегодня мы предлагаем вашему вниманию список всевозможных интересных мероприятий (в первую очередь, посвященных теме UI/UX) как для начинающих дизайнеров, так и для продвинутых, которые вы, возможно, захотите внести в свой ежедневник.

UI/UX события 2017 года, которые вас точно не утомят

Категория: Программирование » Веб-разработка

 

Рисуем коммитами на Гитхабе

Автор: admin от 13-01-2017, 12:10, посмотрело: 242

[Пятничное]


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


Проблема была в том, что даже при полной автоматизации процесса всё равно ждать целый год. А тут я почитал документацию Гитхаба и понял, что задача решается проще и более того — за один раз. А значит, надо делать не откладывая. Обычно названия проектам придумывать сложно, но тут оно пришло само. Кай рисовал льдинками, а Герда рисует коммитами!


[img]http://habrastorage.org/files/4fa/f87/ce0/4faf87ce05e34b2a9961d7aa599aef97.png?[/img]

Как нарисовать свою картинку коммитами на GitHub

Категория: Программирование

 
Назад Вперед