• Возможное объяснение результатов испытаний EmDrive

    • Translation
    Это всего лишь комментарий на Reddit. Но он мне показался весьма интересным, а упоминаний в русскоязычных дискуссиях я не видел. Абзацы, помеченные TL;DR, пропущены.
    Читать дальше →
  • EmDrive получает заслуженное внимание со стороны научного сообщества

    • Translation
    В новостях много пишут про то, как EmDrive решит почти все проблемы с межпланетными перелётами, позволит создать дешёвые летающие автомобили и бог знает, что ещё. В других статьях вы можете прочитать, что это бред, на который не стоит тратить ни одного бюджетного доллара. Но я не видел ни одной статьи с простой и скучной мыслью: возможно, в этом случае нынешний уровень внимания научного сообщества к EmDrive — ровно тот, которого он заслуживает. С одной стороны, это не вечный двигатель, чтобы отбросить его, не рассматривая; с другой, слишком рано запускать крупные программы, даже если эффект окажется в конце концов реальным. Нужно подождать и посмотреть. Эта статья аргументирует эту точку зрения.
    Читать дальше →
  • Вам не нужен Hadoop — у вас просто нет столько данных

    • Translation
    Меня спросили: «Сколько у вас опыта с большими данными и Hadoop?» Я ответил, что часто использую Hadoop, но редко — с объёмами данных больше нескольких ТБ. Я новичок в больших данных — понимаю идеи, писал код, но не в серьёзных масштабах.

    Следующий вопрос был: «Можете ли вы сделать простую группировку и сумму в Hadoop?» Разумеется, могу, и я попросил пример формата данных.

    Они вручили мне флэш-диск со всеми 600 МБ данных (да, это были именно все данные, а не выборка). Не понимаю, почему, но им не понравилось моё решение, в котором был pandas.read_csv и не было Hadoop.
    Читать дальше →
  • Как лучше хранить хэши паролей

    • Translation
    Как все мы знаем, пароли следует всегда хэшировать с помощью медленного алгоритма с использованием соли. Чаще всего применяют scrypt, bcrypt или PBKDF2, но этот пост не о том, какой алгоритм использовать. Вместо этого мы поговорим о том, что делать с хэшами дальше.

    20- (или 32-) байтовые соль и хэш должны храниться в энергонезависимом, зарезервированном, надёжном хранилище, то есть обычно в реляционной базе данных. Но в каких именно таблицах их хранить? Чаще всего используется таблица со столбцами (user_id, salt, hash) или столбцы salt и hash могут быть в общей таблице Users. В обоих случаях хэш и соль находятся в отношении один-к-одному с пользователями.

    Беда в том, что даже с подсоленными хэшами, хакерам слишком легко использовать словарные атаки, если они получат доступ к соли и хэшу конкретного пользователя. Допустим, что, благодаря медленному хэшированию, они могут проверить всего тысячу паролей в минуту. Вас может неприятно удивить то, какими слабыми паролями часто пользуются люди, и какой их процент можно взломать даже в этом случае.
    Читать дальше →
  • Новый простой редактор JavaScript в Firefox

    • Translation

    Представляем Scratchpad


    В только что вышедший Firefox 6 входит новый инструмент для веб-разработчиков: простой редактор JavaScript (прим. переводчика — по-английски он называется Scratchpad («блокнот»). Буду его так и называть, чтобы не писать каждый раз «простой редактор JavaScript».) Идея проста: браузер это отличное место для экспериментов с JavaScript. Большинство JS-разработчиков уже знают об этом и используют такие инструменты, как веб-консоль и командную строку Firebug, чтобы использовать преимущества единственной среды, которая точно знает, как выглядит веб-страница.

    Веб-консоль оптимизирована для ввода одной строки кода за раз (подсказка: с помощью Shift+Enter можно ввести несколько строк). В Firebug есть кнопка, включающая многострочный режим ввода, но всё равно работа основана на поочерёдном и линейном выполнении кусков кода.
    А в Scratchpad...
  • Как Amazon App Store обходится с разработчиками

    • Translation
    Месяца три тому назад мы решили попробовать разместить наши приложения в Amazon App Store. Тогда многие полагали, что это — решение проблем с Google Market; аналитики вроде Энди Инатко восхищались им.
    А на самом деле...
  • Марк Райнхольд о JDK 7, замыканиях, JRockit и HotSpot

    • Translation
    Oracle TechCasts возобновились. Сегодня [т.е. 16-го февраля] Марк Райнхольд рассказывал о JDK 7 и отвечал на вопросы зрителей. Райнхольд обсуждал самое существенное, над чем он работает в проекте OpenJDK, и раскрыл некоторые предварительные наметки, направленные на объединение кода JRockit и HotSpot. Project Lambda, о котором обычно говорят, как о «замыканиях для Java», также был темой обсуждения.
    Читать дальше →
  • Объяснение ввода-вывода в Haskell без монад

    • Translation
    Эта статья объясняет, как выполнять ввод и вывод в Haskell, не пытаясь дать никакого понимания о монадах в целом. Мы начнём с простейшего примера, а затем постепенно перейдём к более сложным. Вы можете дочитать статью до конца, а можете остановиться после любого раздела: каждый последующий раздел позволит вам справиться с новыми задачами. Мы предполагаем знакомство с основами Haskell, в объёме глав с 1 по 6 книги «Programming in Haskell» Грэма Хаттона. [Прим. переводчика: главы «Введение», «Первые шаги», «Типы и классы», «Определение функций», «Выборки из списков», «Рекурсивные функции»]
    Читать дальше →
  • Придётся ли Intel убрать из компилятора функцию, намеренно выдающую плохой код для процессоров AMD?

    • Translation
    Многие программисты считают компилятор Intel лучшим оптимизирующим компилятором из имеющихся на рынке, и предпочитают использовать именно его для наиболее требовательных к производительности программ. Кроме того, Intel поставляет много сильно оптимизированных библиотек для различных технических и научных целей. Во многих случаях достойных альтернатив библиотекам Intel не существует.

    К сожалению, программы, скомпилированные с помощью компилятора или библиотек Intel, работают значительно хуже на процессорах AMD и VIA.
    Читать дальше →