Pull to refresh
-25
0
Send message

Ричард Хэмминг: Глава 1. Ориентация

Reading time18 min
Views25K
«Цель этого курса — подготовить вас к вашему техническому будущему.»

imageПривет, Хабр. Помните офигенную статью «Вы и ваша работа» (+219, 2265 в закладки, 353k прочтений)?

Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Давайте ее переведем, ведь мужик дело говорит.

Это книга не просто про ИТ, это книга про стиль мышления невероятно крутых людей. «Это не просто заряд положительного мышления; в ней описаны условия, которые увеличивают шансы сделать великую работу.»

Мы уже перевели 10 (из 30) глав.

Глава 1. Ориентация


(За перевод спасибо Savva Sumin, который откликнулся на мой призыв в «предыдущей главе».) Кто хочет помочь с переводом — пишите в личку или на почту magisterludi2016@yandex.ru

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

Я буду рассматривать, критиковать и демонстрировать различные стили мышления. Для иллюстрации стилевых особенностей я буду использовать технические знания, знакомые большинству из вас, что, опять же, надеюсь, станет для вас полезным повторением основ. Вам следует рассматривать этот курс в качестве дополнения к уже изученным вами техническим курсам. Многим вещам, о которых я буду говорить, не нашлось места в стандартных курсах, однако я глубоко убеждён, что вам необходимо о них знать. Этот курс существует потому, что Отдел Электрической и Компьютерной Разработки Аспирантуры Университета Морской Пехоты осознаёт необходимость общего, широкого образования, наряду со специализированным, технологическим обучением, которого потребует ваше будущее.
Читать дальше →

Как мы NoSQL в «реляционку» реплицировали

Reading time7 min
Views20K
В наши дни NoSQL продолжает набирать популярность, но мало кто знает, что нереляционные СУБД появились гораздо раньше даже самой реляционной алгебры. 40 и даже 50 лет назад в первичном «бульоне» зарождающейся IT индустрии «варились» только NoSQL-продукты. И что самое интересное – продукты, рожденные в те сложные времена, живы до сих пор и прекрасно себя чувствуют.
Одним из таких продуктов стала СУБД GT.m, разработанная компанией Graystone Tehnologies в 70-80-х годах прошлого века. СУБД нашла широкое применение в медицине, страховании и банковской сфере.

В нашем банке мы тоже используем GT.m, и этот инструмент прекрасно справляется с обработкой большого количества транзакций. Но… Есть одна проблема: GT.m никакой для аналитики, в нем нет SQL, аналитических запросов и всего того, что делает финансового аналитика счастливым. Поэтому мы разработали собственный «велосипед» для репликации данных из GT.m в «реляционные» СУБД.


А вот здесь должна была быть картинка с летающим велосипедом

Всех заинтересованных приглашаем под кат.
Читать дальше →

Идеальная домашняя сеть или «сам себе злобный перфекционист»

Reading time15 min
Views66K

Мудрость Бертрама Гилфойла
«Соник Уолл Соник Пойнт Эй-Си-И» вместе с «Ти-Зи 600» — самый передовой фаерволл, встроенная защита от атак, дешифратор SSL, анализатор управления приложениями и фильтрация контента.

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

Как говорит технический директор Qrator Labs Артём ximaera Гавриченков, DDoS-mitigation начинается там, где заканчиваются силы и время одного хорошего системного администратора.

В день системного администратора, который в Qrator Labs считают профессиональным праздником даже больше, чем день программиста, мы задумались — о чём таком можно было б рассказать на Хабре, с чем точно сталкивался каждый?..

Решение было найдено быстро, ведь есть такое место, где каждый человек может побыть системным администратором в любой удобный, а порой и неудачно-вынужденный, момент времени — дома.
Читать дальше →

Пилотажный ДПЛА. Часть 2. Простейшая модель движения для выполнения бочки

Reading time12 min
Views8.8K
Продолжаем серию статей по автоматизации выполнения фигур пилотажа на малом ДПЛА. Настоящая статья имеет, прежде всего, образовательную цель: здесь мы покажем, как можно создать простейшую систему автоматического управления (САУ) на примере задачи выполнения фигуры пилотажа «бочка» при управлении летательным аппаратом только элеронами. Статья является второй в цикле публикаций «Пилотажный ДПЛА», рассказывающем о процессе постройки аппаратной и программной частей САУ в обучающей форме.


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

Раскрашиваем чёрно-белую фотографию с помощью нейросети из 100 строк кода

Reading time22 min
Views78K

Перевод статьи Colorizing B&W Photos with Neural Networks.

Не так давно Амир Авни с помощью нейросетей затроллил на Reddit ветку /r/Colorization, где собираются люди, увлекающиеся раскрашиванием вручную в Photoshop исторических чёрно-белых изображений. Все были изумлены качеством работы нейросети. То, на что уходит до месяца работы вручную, можно сделать за несколько секунд.

Давайте воспроизведем и задокументируем процесс обработки изображений Амира. Для начала посмотрите на некоторые достижения и неудачи (в самом низу — последняя версия).

Деловая переписка на английском языке: фразы и советы

Reading time18 min
Views632K
Елена Соловьева, менеджер проектов в компании Лаборатория Касперского, специально для блога Нетологии поделилась советами о том, как вести деловую переписку с иностранными коллегами и партнерами на английском языке. Статья участвует в конкурсе.

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

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

Курс молодого бойца PostgreSQL

Reading time13 min
Views554K


Хочу поделиться полезными приемами работы с PostgreSQL (другие СУБД имеют схожий функционал, но могут иметь иной синтаксис).

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

Данный материал будет полезен тем, кто полностью освоил базовые навыки SQL и желает учиться дальше. Советую выполнять и экспериментировать с примерами в pgAdmin'e, я сделал все SQL-запросы выполнимыми без разворачивания каких-либо дампов.

Поехали!
Читать дальше →

Wi-Fi is over: вычисляем нарушителей беспроводного эфира

Reading time4 min
Views49K

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

Интеграция XML данных — другой путь

Reading time18 min
Views35K
В данной статье описывается «нетрадиционная», но достаточно мощная технология обработки XML, позволяющая импортировать любые XML-данные и преобразовывать их структуру эффективно и просто, при этом один и тот же процесс обработки позволяет трансформировать исходные данные любой структуры без какого-либо изменения программного кода.
Читать дальше →

44 урока управления технарями

Reading time7 min
Views46K
Предлагаю читателям Хабра мой перевод статьи «44 урока управления технарями» Славы Ахмечета, сооснователя RethinkDB. В оригинальной статье используется термин «инженеры», но в контексте статьи я буду использовать также термин «технари» – более емкое, как мне кажется, с точки зрения русского языка слово, охватывающее профессии в сфере ИТ, частью которой я тоже являюсь.

Немного об оригинальном тексте. Статья была написана в 2014 году в личном блоге автора, в октябре 2016 компания RethinkDB не смогла выйти в прибыль и закрылась, о чем на Хабре писали тут и тут, а Слава поразмышлял об этом здесь.

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

Источник
Читать дальше →

Southbridge: мы развиваем полезное и убираем ненужное

Reading time3 min
Views5.4K


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


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


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

«Коллеги, все нравится, но...» или как построить работу с заказчиком

Reading time11 min
Views19K


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

Я руковожу отделом дизайна и хочу поделиться нашим подходом к работе. В этой статье расскажу, как построить работу с клиентом так, чтобы она была эффективной и комфортной для обеих сторон.
Читать дальше →

Математика игры 2048

Reading time22 min
Views35K

Часть 1. Расчёт минимального количества ходов для победы с помощью цепей Маркова


Screenshot of 2048

После недавнего обновления экран «You win!» игры 2048 начал показывать количество ходов, потребовавшихся для победы, и я задался вопросом: сколько же нужно ходов, чтобы выиграть?

В первой части статьи мы ответим на этот вопрос, смоделировав игру 2048 в виде цепи Маркова и проанализировав её, чтобы показать, что вне зависимости от мастерства игрока для победы в среднем нужно не менее 938,8 ходов. Это даёт нам неплохое мерило отсчёта — если вы можете выигрывать примерно за такое количество ходов, то неплохо играете.

Количество ходов, необходимых для победы, зависит от случайности, потому что игра добавляет тайлы 2 и 4 случайным образом. Анализ также покажет, что распределение минимального количества ходов до победы имеет стандартное отклонение в 8,3 хода, и что его общая форма хорошо аппроксимируется смесью биномиальных распределений.
Читать дальше →

Изучаем блокчейн на практике

Reading time12 min
Views56K
Вы читаете эту статью потому, что, как и я, с горячим интересом наблюдаете за возрастающей популярностью криптовалюты. И вам хочется понять, как работает блокчейн — технология, которая лежит в ее основе.

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

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


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

[Перевод] Круглее круга: оптические эффекты при проектировании интерфейсов

Reading time9 min
Views42K
Какой «круг»воспринимается как самый «круглый»?

image

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

Как создать визуально пропорциональные иконки, правильно расположить объекты разных форм и выполнить идеальное скругление углов. В посте представлено более 50 изображений.
Читать дальше →

Основы компьютерных сетей. Тема №8. Протокол агрегирования каналов: Etherchannel

Reading time15 min
Views274K

И снова всем привет! После небольшого перерыва, продолжаем грызть гранит сетевой науки. В данной статье речь пойдет о протоколе Etherchannel. В рамках данной темы поговорим о том, что такое агрегирование, отказоустойчивость, балансировка нагрузки. Темы важные и интересные. Желаю приятного прочтения.
Читать дальше →

Почему сеть Фейстеля работает? Объяснение «на пальцах»

Reading time4 min
Views59K

В продолжении статьи про blowfish хотелось бы поговорить про его основу — сеть Фейстеля. Люди «в теме» слышали про неё не одну сотню раз — эта сеть используется в подавляющем большинстве блочных шифров. Но вот вам, только честно, что нибудь понятно из картинки справа? Ну, допустим в одну сторону(шифрование) понятно, а обратно?
Если нет, то прошу под коврик
Читать дальше →

Криптоалгоритмы. Классификация с точки зрения количества ключей

Reading time52 min
Views119K


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

Symfony + RabbitMQ Быстрый старт для молодых

Reading time9 min
Views62K
Всем доброго времени суток, друзья.

Сегодня захотелось поговорить о том, как можно работать с RabbitMQ в Symfony и совсем чуть-чуть о некоторых подводных комнях. В конце я напишу парочку интересных моментов о кролике (рус. перевод «rabbit») для тех, кто совсем в танке.

Я не буду рассказывать про сам RabbitMQ, поэтому если вы пока и этого не знаете, почитайте следующие переводы:

Статья 1
Статья 2
Статья 3
Статья 4
Статья 5

Не бойтесь примеров на перле или пайтоне — это не страшно, все достаточно понятно из исходного кода.

+ Все достаточно подробно описано, когда я читал это в свое время, достаточно было интерпретировать код мысленно, чтобы понять как что и зачем.

Если вы уже знаете, что такое консумер и почему в нем нужно делать $em->clear() + gc_collect_cycles, а после закрывать соединение с базой данных, то, скорее всего, вы ничего нового для себя не узнаете. Статья скорее для тех, кто не хочет разбираться с AMQP протоколом, но которым нужно прямо сейчас применять очереди и выбор почему-то бездумно пал на RabbitMQ, а не тот же легковесный beanstalkd.

Если же у вас микросервисная архитектура и вы ждете, что я расскажу вам как сварить коммуникацию между компонентами через AMQP, как красиво делать RPC, то я сам чего-то подобного очень давно жду на Хабре…
Читать дальше →

Внешние скрипты с доступом к вашим кредиткам и личному кабинету

Reading time4 min
Views27K
image

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

Information

Rating
Does not participate
Location
Таджикистан
Registered
Activity