Как стать автором
Обновить
15
0.1

Пользователь

Отправить сообщение

От Isolation к Consistency — дорога длиной в 30 лет

Время на прочтение17 мин
Количество просмотров7.4K

Участвую в стартапе, в котором разрабатывается СУБД нового типа (работает поверх некоторых kv-движков, кардинально расширяя их возможности, про это немного можно прочитать здесь). Для того, чтобы сравнить то, что понемногу получается, с тем, что имеется в индустрии, пришлось на глубоком уровне проработать первоисточники по темам Isolation и Consistency (уточню, что имеется ввиду не та Consistency, что в ACID). Обнаружил интересные нюансы, которые и излагаю в этой статье.


Тезисно:


  • Термин Phantom Read является продуктом испорченного телефона
  • Смысл понятий Lost Update, Write Skew и Read Skew для разделения уровней изоляций неочевиден и относителен
  • Движок, который обеспечивает уровень изоляции Serializable, в распределённом мире может вести себя весьма причудливо, например, всегда возвращать пустой результат для read-only транзакций — и ему за это по стандарту "ничего не будет"
  • Strong consistency в Cosmos DB — предел мечтаний? (спойлер: нет)

Ну, и ещё кое-что по мелочи. В конце рассмотрим вот такой венец творения человеческого разума:


Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии25

Применение машинного обучения и Data Science в промышленности

Время на прочтение22 мин
Количество просмотров67K
Хабр, привет. Перевел пост, который идёт строго (!) в закладки и передаётся коллегам. Он со списком блокнотов и библиотек ML и Data Science для разных отраслей промышленности. Все коды на Python, и размещены на GitHub. Они будут полезны как для расширения кругозора, так и для запуска своего интересного стартапа.

image

Отмечу, что если среди читателей есть желающие помочь, и добавить в любую из подотраслей подходящий проект, пожалуйста, свяжитесь со мной. Я их добавлю в список. Итак, давайте начнём изучение списка.
Читать дальше →
Всего голосов 77: ↑71 и ↓6+65
Комментарии13

Azure Service Fabric: вторые шаги

Время на прочтение12 мин
Количество просмотров8K

Снова Чарли Чаплин на фабрике в фильме «Новые времена»


Продолжаем разговор про Azure Service Fabric. В предыдущей статье я упомянул о планах написать сначала про stateful сервисы, а затем уже перейти к модели акторов в ASF. Концепция изменилась — подумалось мне, что неплохо бы для примеров использовать если уж не production-решение, то что-то близкое, чтобы была теоретическая польза и практический смысл. Можно объединить все компоненты ASF в одном флаконе — чтобы и корованы набигали, и лунапарк, и Винни-Пух и все-все-все. Вот с такими мыслями я и пошел на кладбище домашних проектов в поисках кандидата на оживление.


Читать дальше →
Всего голосов 14: ↑13 и ↓1+12
Комментарии10

F# Самая сложная игра в мире

Время на прочтение6 мин
Количество просмотров1.3K
Вдохновленный возможностями функционального программирования, в частности F#, и увидев на примере, что можно творить всего в несколько десяток строчек, решил реализовать простенькую версию самой сложной флеш-игры.

Получилось на скорую руку, но
Работает
Всего голосов 19: ↑16 и ↓3+13
Комментарии3

Автоматизация эмулятора Windows Phone 7

Время на прочтение8 мин
Количество просмотров7.1K
Всем привет,
В этой статье мы рассмотрим, как автоматизировать эмулятор Windows Phone 7 и какую пользу нам это принесёт в реальной жизни.


Читать дальше →
Всего голосов 53: ↑41 и ↓12+29
Комментарии8

Разработка под Windows Phone 7 для Android-разработчиков

Время на прочтение8 мин
Количество просмотров8.3K
Разработка приложений под платформу Windows Phone 7 похожа на разработку под платформу Android больше, чем вы могли ожидать. В этой статье Крис Беннетт исследует сходства между этими двумя платформами.

Также, как и мобильные приложения для платформы Android, приложения для Windows Phone 7 написаны на управляемом языке – Java для Android и C# для Windows Phone 7 – с сопроводительными библиотеками. Многие разичия между Java и C# связанны со стилем. Два современных языка имеют общее происхождение от языков C/C++ и имеют сильное сходство друг с другом.
Читать дальше →
Всего голосов 75: ↑50 и ↓25+25
Комментарии43

Две недели с двумя ядрами

Время на прочтение3 мин
Количество просмотров748
Не так давно я стал владельцем девайса о котором много писали и на Хабре и в прессе. Первый двухядерный, первый двухканальный и т.д. как любитель новых гаджетов я не смог обойти его стороной.
Хочу поделиться с вами опытом в подготовке к нормальной эксплуатации LG Optimus 2X и небольшими особенностями в его дизайне.

Читать дальше →
Всего голосов 34: ↑15 и ↓19-4
Комментарии24

Из html в pdf – легко! Обзор конвертеров

Время на прочтение3 мин
Количество просмотров102K
Ежедневно в процессе деятельности регистратора REG.RU, в котором я работаю программистом, совершаются сотни операций, требующих оформления каких-либо официальных документов. Среди них — различные договоры, счета, сертификаты и т.п., которые необходимо печатать как компании, так и клиентам. Для таких целей хорошо подходит формат PDF, который на сегодняшний день стал де-факто основным для обмена и распространения документации. Основными преимуществами этого формата можно назвать: кроссплатформенность, аппаратную независимость и безопасность. Все вышеперечисленное позволило PDF завоевать популярность среди пользователей и стать одним из самых распространенных.

Как можно создавать документы в формате PDF на лету, из скрипта?
Читать дальше →
Всего голосов 79: ↑70 и ↓9+61
Комментарии24

Как получить и измерить высокоскоростное соединение по TCP

Время на прочтение7 мин
Количество просмотров60K
Надежная передача данных в Интернете осуществляется на базе протокола TCP (Transmission Control Protocol), спецификация к которому была опубликована почти 30 лет назад. Алгоритм TCP (RFC793), позволяет подключенному устройству адаптироваться для работы в сети на скоростях в пределах десятков мегабит в секунду и задержки до 100 секунд. С бурным развитием новых технологий передачи данных, уже через 10 лет после внедрения стало ясно что производительность протокола не будет хватать для более широких каналов.
Читать дальше →
Всего голосов 106: ↑105 и ↓1+104
Комментарии41

Сегодня начинается главная конференция Microsoft — PDC10

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

Несомненно, для Microsoft – это конференция PDC, которая проходит уже много лет и открывает целые эпохи для разработчиков на ее платформе: .NET, Windows 7, Windows Azure и многое другое. В этом году впервые PDC пройдет “дома” у Microsoft – в городе Редмонд. В течение двух дней в прямом эфире и записи в интерактивном режиме будут доступны все доклады для разработчиков. Открытие конференции состоится 28 октября в 20:00 МСК с участием генерального директора Стива Баллмера и президента Server and Tools Division Боба Магли.

На сайте PDC можно посмотреть сетку докладов – основными темами конференции будет облачная платформа Windows Azure, мобильная платформа Windows Phone 7, будущее языков программирования C#, Visual Basic, F#, а также HTML5 и Internet Explorer 9.
Читать дальше →
Всего голосов 63: ↑43 и ↓20+23
Комментарии76

Структура и интерпретация компьютерных программ

Время на прочтение1 мин
Количество просмотров12K
image
Перевод второй лекции Джеральда Сассмана
«Процедуры и процессы: подстановочная модель.»

Эти лекции были прочитаны 25 лет назад сотрудникам HP, но на самом деле это тот легендарный вводный курс 6.001, который читался в MIT в 1980 году. С тех пор эти лекции sine qua none во всем мире программирования. Хотелось бы чтобы каждый программист посмотрел этот курс, ничего не учит абстрактному мышлению лучше, чем SICP.
Приятного просмотра на ночь глядя.
Читать дальше →
Всего голосов 75: ↑75 и ↓0+75
Комментарии37

Эффективная обработка фотографий в Photoshop

Время на прочтение6 мин
Количество просмотров146K
Эффективная обработка фотографий в Photoshop

Читая статьи о Photoshop, я часто удивляюсь тому, насколько многие авторы усложняют решение по сути простых задач по обработке. Этим страдают и многие «монументальные» писатели, например Дэн Маргулис. Но ему это простительно – его задача написать о всех тонкостях и нюансах процесса обработки, рассмотреть его со всех ракурсов и сторон. Хотя именно эта особенность подачи материала в его книгах отталкивает многих читателей.

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

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

Читать дальше →
Всего голосов 288: ↑244 и ↓44+200
Комментарии117

А вы подключали телескоп к компьютеру?

Время на прочтение2 мин
Количество просмотров45K
Наткнувшись на старый хабрапост про подключение микроскопа к компу я решил раздвинуть горизонты общественности и написать, что подключить телескоп к компьютеру может быть намного интереснее, чем считать микробов. А если вы фанат астрономии или «Звездных Войн» — то вы с этой возможностью либо уже знакомы, либо весьма ей обрадуетесь. Вот я решил попробовать и рассказать о своем опыте в этой области.
image
Читать дальше →
Всего голосов 148: ↑144 и ↓4+140
Комментарии115

Делаем загрузочно-установочную флешку

Время на прочтение2 мин
Количество просмотров773K
После поста о восстановлении флешек, оказалось, что у многих теперь есть рабочие, бесхозные флешки, которые обязательно нужно задействовать. Почему бы не сделать из них загрузочные флешки с дистрибутивами необходимых ОС? Это может здорово пригодиться при установке/переустановке операционных систем на нетбуки, где отсутствуют приводы оптических носителей. А иногда может даже ускорить процесс установки и сделать его намного тише на компьютере, где привод есть.
Хотя на Хабре уже описывались варианты создания загрузочных флешек, но вариант, который предлагаю я — слишком прост и по своему универсален, чтобы обойти его стороной.

image
Читать дальше →
Всего голосов 161: ↑142 и ↓19+123
Комментарии54

Heaven & Earth

Время на прочтение2 мин
Количество просмотров647
Любопытно. Некоторые игры, выпущенные в старые времена, до сих пор не известны большинству геймеров или любителей разогреть мозги, но именно они лучше, чем что бы то ни было ещё среди шутеров или онлайн-проектов.

Одной из таких игр является Heaven & Earth, созданная уже не работающим подразделением Disney Buena Vista Software. Фактически это Abandonware, который можно загрузить с сайта одного из разработчиков игры.

image

Игра не для развлечения на пару дней. Считайте, что это путешествие в игру, где с вами лишь задачи и время.
The journey of a thousand miles begins with a single step.
Всего голосов 9: ↑6 и ↓3+3
Комментарии6

Акинатор и математика

Время на прочтение6 мин
Количество просмотров111K
На Хабре уже несколько раз всплывала тема Акинатора, в том числе и с тегом не знаю как оно работает. Я на него наткнулся недавно и, разумеется, был восхищен. Затем, как вероятно и многим другим, мне в голову пришла мысль: «А как же это работает?» Ответа на этот вопрос я нигде не нашел, а потому задался целью написать аналогичную по функциональности программу, разобравшись по ходу дела что к чему.
Читать дальше →
Всего голосов 103: ↑95 и ↓8+87
Комментарии78

Вывод картинок в ASP .NET MVC

Время на прочтение6 мин
Количество просмотров11K
Технологии: .NET Framework 3.5, ASP .NET MVC
Языки: Visual Basic .NET, C#

Довольно часто при разработке веб-приложений требуется выдать пользователю данные в отличном от html формате. Например, вывести уменьшенную копию изображения (ThumbImage), или же выдать защищенные данные из БД. В ASP .NET WebForms для этих целей можно использовать Handlers (хэндлеры), либо обычные ASPX-страницы. В ASP .NET MVC ситуация немного изменилась. Хотя конечно, по прежнему, ничто не запрещается использовать хэндлеры. Разве что, может потребоваться правило для Routing, типа: routes.IgnoreRoute("{resource}.ashx").
В данном обзоре будет рассмотрен пример вывода изображения средствами ASP .NET MVC, однако описанный подход можно использовать для вывода данных абсолютно любого формата.
Читать дальше →
Всего голосов 17: ↑12 и ↓5+7
Комментарии4

Рыба коммерческого предложения от P&G

Время на прочтение2 мин
Количество просмотров3.9K
В компаниях-дистрибьюторах Проктэр энд Гэмбл есть простой и довольно эффективный алгоритм для написания коммерческих предложений. Он не безупречен, зато ему можно научиться всего за несколько дней. Этот подход часто хорошо подходит и для других документов — от служебных записок до деловых писем.

Алгоритм включает в себя 5 шагов:

1. Описание исходной ситуации.
  • Ориентирует, к чему, собственно, относится предложение.
  • Служит предпосылкой, исходными данными для логического обоснования предложения.
  • Показывает клиенту, что КП написано персонально.
  • Провоцирует «да-реакцию».

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

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

Предложение здесь описывается без подробностей, объяснений, оправданий, детализации, амортизации и прочего гламура. Никаких «мы предлагаем совестными усилиями в процессе совместного плодотворного сотрудничества посредством интеграции инфраструктуры управления товарными запасами…»; должно быть просто до примитива, например, «Вы даете нам оперативную информацию о продажах — мы формируем оптимальный заказ» или «В прикассовой зоне вместо презервативов надо продавать наши леденцы».

3. Преимущества для клиента.
Задача этого шага очевидна — нужно замотивировать клиента принять это предложение. Вот здесь уже можно выражаться чуть более дипломатично и многословно. В перечислении преимуществ важно не упустить каких-то вещей, которые кажутся самоочевидными. Например, для вашей компании может подразумеваться, что при поставке товар размещается на стеллажах склада силами ваших сотрудников — для клиента это может быть менее очевидно. Обычно стоит выделить 3—5 преимуществ.

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

5. Первый шаг.
Эту часть часто недооценивают. Что должен сделать клиент в первую очередь, чтобы это КП претворилось в жизнь? Согласовать текст договора? Позвонить вам, если согласен в течение недели? К завтрашнему дню, когда вы обещали позвонить, уточнить со своим логистом возможности перебросок с оказией дополнительных партий по городам области? Надо подумать и спланировать это за клиента.

***

Все это должно влезть меньше, чем на одну страницу. Не нужно сюда пытаться влепить прайс на 500 позиций или любимые цитаты из договора — все это можно вольготно разместить в приложениях.
Всего голосов 12: ↑11 и ↓1+10
Комментарии5

Удаленная установка ОС

Время на прочтение3 мин
Количество просмотров110K
Существует несколько способов установки операционной системы на компьютеры без оптических приводов. Самый простой — использование внешнего привода. Более трудоемкий — создание загрузочной флешки. Пожалуй, наименее распространенный — удаленная установка по локальной сети. Далее речь пойдет об установке Windows XP. По локальной сети.

Процесс установки предполагает следующее:
— подготовка дистрибутива;
— настройка DHCP и TFTP серверов;
— подготовка службы BINL.

Читать дальше →
Всего голосов 62: ↑54 и ↓8+46
Комментарии31

Руководство по созданию пользовательских интерфейсов для Windows 7

Время на прочтение1 мин
Количество просмотров3.3K
image

Microsoft выпустила официальное руководство, в котором подробно описываются принципы построения пользовательских приложений и интерфейсов для Windows 7. Руководство очень большое – 882 страницы, на которых приводятся советы, рассматриваются конкретные примеры, даются рекомендации.

Всего руководство разделено на 10 больших разделов:

— принципы дизайна;
— элементы управления;
— команды (горячие клавиши, меню и прочее);
— текст и его стили;
— сообщения: предупреждения, об ошибках, уведомления;
— взаимодействие пользователя: клавиатура, мыши, сенсоры, доступ для людей с ограничениями;
— окна;
— визуальные элементы: иконки, компоновка, шрифты, цвета и другое;
— пользовательский опыт;
— окружение Windows.

Загрузить Windows User Experience Interaction Guidelines в формате .pdf можно по этой ссылке.
Всего голосов 70: ↑44 и ↓26+18
Комментарии18
1
23 ...

Информация

В рейтинге
3 167-й
Откуда
Sydney, New South Wales, Австралия
Дата рождения
Зарегистрирован
Активность