Архив за 30 октября 2014 - 9

(UPDATE. Вот также и с Плутоном, сначала объявили планетой, вывели в люди, а потом бац — и теперь астероид. Существенное дополнение к высказанным мыслям в конце.)

Сколько видов SQL-связи вы знаете? Три?

1) один-ко-многим;
2) один-к-одному;
3) многие-ко-многим.

Однако если заняться вопросом вплотную, возникает желание списочек расширить.
Читать полностью »

Введение

Структура кода, структура проекта, дизайн проекта, архитектура проекта — эти понятия могут иметь различные значения, сложность или глубину для архитектора, разработчика, руководителя проекта или консультанта. Дальше должно идти долгое копание в терминологии, однако позвольте мне быть ленивым и считать, что в рамках этой статьи все эти понятия выражают примерно одно и то же, а именно набор шаблонов, правил, которые говорят, каким образом нужно писать код, правильно реагируя на приходящие требования. К примеру, если для доступа к базе данных мы используем DAO (Data Access Object), то вместе с созданием новой структуры в базе данных, нужно будет создать новый DAO или расширить существующий, но никак не писать SQL, скажем, на уровне презентации.

Что бы стало еще понятнее, добавлю, что речь пойдет о том же, о чем писал «классик» — Patterns of enterprise application architecture by M. Fowler. Читать полностью »

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

Собственно через регулярные выражения я к ним и пришёл.
Читать полностью »

Процесс разработки игры теперь можно транслировать в Twitch

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

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

Читать полностью »

imageСтатьи, написанные Oliver Emberton, постоянно вызывают повышенный интерес. Переводы его предыдущих публикаций можно посмотреть здесь, здесь и здесь (оригиналом последней на сайте автора поделились более 550 000 раз, по ссылке — наша версия ее перевода). Сегодня представляем вам перевод самой свежей публикации автора.

Дисклэймер: мы не ставили себе цель дословного или абсолютно точного перевода оригинала. Главное — передать его смысл. Просим помнить об этом при прочтении. Итак, начнем!

Если вы хотите следовать своей мечте, скажите «нет» отвлекающим делам!

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

Процесс создания мозга человека
Читать полностью »

Доброе утро! А у нас для тебя новости.

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

Двойной форсаж. Первая success story российского краудинвестинга

«Ничего у вас не получится», — отвечали нам скептики, кивая на предыдущие факапы в этом поле деятельности, — «Краудинвестинга в России не было и нет!». «Это понятно», «Само собой», — понуро соглашались мы, продолжая делать свое дело. «Пока не будет историй успеха, никто не поверит в краудинвестирование», — резюмировали именитые эксперты в мире венчурного капитала и конструктивно настроенные хабракритики. С этим было невозможно не согласиться, но мы продолжали работать над платформой и привлечением к ней микроинвесторов и стартапов. Ибо, если ничего не делать, сами собой истории успеха точно никогда не появятся. Читать полностью »

"Яндекс" разработал и отдал в использование сторонним разработчикам еще несколько речевых технологий:

- голосовая активация - когда приложение начинает слушать пользователя после слов "Слушай, Яндекс", по аналогии с уже знаменитым "Ok, Google"

- голосовое понимание естественного языка - распознавая речь, технология "понимает", что "Юрий Синодов" - это имя и фамилия, "Краснопресненская 1" - это адрес, а "10:00" - это время. Эта же технология умеет распознавать команды пользователя приложению.

Читать полностью »

Видеонаблюдение в ЦОДах: совмещаем паранойю охраны с паранойей инженеров
Инженер во время штатной проверки

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

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

Бывают запросы на то, кто открывал стойку. В каком-нибудь ЦОДе может случиться так, что несут что-то по проходу и задевают кабель. Или вот ещё случай: инженер одной компании обслуживал верхний сервер в стойке, в процессе у него упала лестница и ударила прямо по другому серверу, в итоге — раскололся разъём.

Поэтому, конечно, видеонаблюдение в ЦОДах нужно. Расскажу, как мы это делаем для заказчиков, и как организовали в своих дата-центрах. Читать полностью »

Мне периодически приходится объяснять разным людям некоторые аспекты архитектуры Intel® IA-32, в том числе замысловатость системы адресации данных в памяти, которая, похоже, реализовала почти все когда-то придуманные идеи. Я решил оформить развёрнутый ответ в этой статье. Надеюсь, что он будет полезен ещё кому-нибудь.
При исполнении машинных инструкций считываются и записываются данные, которые могут находиться в нескольких местах: в регистрах самого процессора, в виде констант, закодированных в инструкции, а также в оперативной памяти. Если данные находятся в памяти, то их положение определяется некоторым числом — адресом. По ряду причин, которые, я надеюсь, станут понятными в процессе чтения этой статьи, исходный адрес, закодированный в инструкции, проходит через несколько преобразований.

Адреса памяти: физические, виртуальные, логические, линейные, эффективные, гостевые

На рисунке — сегментация и страничное преобразование адреса, как они выглядели 27 лет назад. Иллюстрация из Intel 80386 Programmers's Reference Manual 1986 года. Забавно, что в описании рисунка есть аж две опечатки: «80306 Addressing Machanism». В наше время адрес подвергается более сложным преобразованиям, а иллюстрации больше не делают в псевдографике.
Читать полностью »

28 октября стартовала конференция TechEd Europe 2014, в рамках которой было сделано несколько ключевых анонсов. Были анонсированы новые предложения от партнеров Microsoft, новые технологии построения ИТ-инфраструктуры и представлены новые и обновленные облачные сервисы Microsoft Azure.

Все анонсы TechEd Europe 2014: партнеры, облака и новости для ИТ про

Ниже представлены новые анонсы технологий и все новости конференции TechEd Europe 2014.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js