Как стать автором
Обновить
169
0
Alexander Kouznetsov @unconnected

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

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

Windows Azure Blob-storage: поддержка CORS

Время на прочтение6 мин
Количество просмотров5.9K
Недавно вышло много обновлений Windows Azure. Среди них долгожданная поддержка Cross-Origin Resource Sharing для хранилищ. Я плотно использую в работе blob-storage (файловое хранилище) и в этом посте опишу как сделать загрузку файлов простой и приятной.
хочу стать счастливым
Всего голосов 22: ↑18 и ↓4+14
Комментарии3

Кэширование в Windows Azure

Время на прочтение7 мин
Количество просмотров3.7K
Проблема кэширования встает перед любым высоконагруженным приложением. В Windows Azure, где основным алгоритмом увеличения производительности является добавление экземпляров приложения, роль кэша становится еще более важной, т.к. с его помощью можно обеспечить «общую память» для всех экземпляров.
что же делать
Всего голосов 19: ↑15 и ↓4+11
Комментарии1

Аспектно-ориентированное программирование: изучи и сделай сам!

Время на прочтение17 мин
Количество просмотров58K
Статья родилась из того, что мне потребовался удобный и простой механизм перехвата для некоторых задач, который легко реализуется техниками АОП. Существует довольно много перехватчиков (Casle.net, Spring.net, LinFu и т.д.), требующих внедрять динамические дочерние классы в IL-код во время исполнения и приводящих практически всегда к одним и тем же ограничениям, накладываемым на перехватываемые классы: не статические, не запечатанные, методы и свойства должны быть виртуальными и т.д…

Другие механизмы перехвата требовали изменения процесс сборки или покупки лицензии. Ни то ни другое я себе позволить не мог…
а дальше было...
Всего голосов 33: ↑33 и ↓0+33
Комментарии8

Чтоб ты жил на донейты!

Время на прочтение5 мин
Количество просмотров76K
Опять подняли вой про злых правообладателей. Сейчас поводом стало то, что Лопуховым впаяли по 4 года условно, и на подходе к ним гражданские иски на возмещение ущерба. На этих бедолаг всем, в общем-то наплевать, а поводом для воя послужила заявленная обвинением сумма ущерба – 38 миллиардов рублей. И опять началось – цена должна быть честной, доступной, адекватной; незачем кормить копирастов, надо донейтить авторов; долой двд, даёшь цифровую дистрибуцию (за честную цену конечно же).

Поскольку кино я смотрю редко, а если и смотрю, то либо в кинотеатре, либо в телевизоре – проблемы Голливуда и Михалкова меня волнуют мало. Потому разговор пойдёт не про фильмы.
а про книги
Всего голосов 102: ↑72 и ↓30+42
Комментарии250

Прагматичный подход к производительности

Время на прочтение7 мин
Количество просмотров2.3K
Является преждевременная оптимизация дорогой в ад? Или подход «потом исправим» превращает программистов из «специалистов» в презираемую всеми «школоту»?

Эти вопросы не имеют четких ответов, тем не менее, в этой статье я постараюсь описать мой собственный подход к производительности. Что я делаю для того, чтобы мои системы работали с приличной скоростью, но не нарушали прочих требований, таких как модульность, сопровождаемость и гибкость.
Читать дальше →
Всего голосов 81: ↑70 и ↓11+59
Комментарии26

Chess@home: создаем крупнейший шахматный ИИ

Время на прочтение6 мин
Количество просмотров6.2K
Многие знакомы с проектом Seti@home: мощнейшей инициативой по поиску следов внеземных цивилизаций в океане данных, получаемых с неба, с использованием мощностей миллионов компьютеров по всему земному шару («матрицы»).

Хотя инопланетян до сих пор не обнаружили, Seti@home вполне успешно демонстрирует потенциал крупномасштабных распределенных вычислений. Проекты типа BOINC распространили подобные инициативы в другие области: биологию, медицину и физику.
Читать дальше →
Всего голосов 80: ↑73 и ↓7+66
Комментарии46

SCLOG: велосипед со всеми признаками языка программирования

Время на прочтение2 мин
Количество просмотров1.1K
Когда мы добрались до разработки системы пользовательских фильтров (или условий), Миша, наш главный по интерфейсам, завис. Он задумчиво смотрел в окно и курил одну за другой, иногда срывался и начинал молотить по груше, крича что-то нецензурное. Вообще, задача у него была непростая: на последнем совещание было решено, что заставлять пользователей создавать правила в текстовом виде – негуманно и неинтуитивно.
Читать дальше →
Всего голосов 27: ↑20 и ↓7+13
Комментарии39

IndexedDB: пробуем готовить

Время на прочтение7 мин
Количество просмотров22K
IndexedDB – стандарт хранения больших объемов структурированных данных на клиенте – был ожидаем также как и WebSocket (ну может самую малость меньше). В свете выхода FireFox 4 я нашёл время и силы всё-таки разобраться, как им пользоваться, и попытаться написать что-то больше, чем пример с адресной книгой, гуляющий по интернетам (в процессе поиска информации у меня сложилось впечатление, что это был единственный пример).
что из этого вышло
Всего голосов 49: ↑46 и ↓3+43
Комментарии31

Черные разработчики: уволенные программисты возвращаются… с дьявольским кодом

Время на прочтение3 мин
Количество просмотров7.2K
Программистов увольняют по разным причинам, иногда, весьма странным.
Но в отношении разработчиков важно другое: они могут отплатить своему бывшему работодателю очень серьезно, что вряд ли доступно большинству других профессий. Полно историй про то, как разработчики распространяли вирусы, уничтожали данные, воровали секреты и устраивали различные электронные беспорядки, сразу же после того, как им показывали на дверь.

Пройдемся же по аллее славы светлых разработчиков (или просто компьютершиков с хорошими способностями), которые перешли на темную сторону силы.
Читать дальше →
Всего голосов 98: ↑89 и ↓9+80
Комментарии141

Самый страшный код в моей жизни

Время на прочтение3 мин
Количество просмотров9.1K
Большинство проектов, над которыми работал, довольно быстро стираются из памяти. Но некоторые запоминаешь по гроб жизни. О таком дальше и пойдет речь.

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

В общем-то, ничего необычного, частенько компании обнаруживают, что важные знания содержаться в одной единственной голове, только когда что-нибудь случается с её владельцем. Как правило, проходит несколько дней в легкой панике и яростном чтении документов, и жизнь входит в своё русло.
Но не в этот раз.
Всего голосов 142: ↑122 и ↓20+102
Комментарии226

Скорость разработки

Время на прочтение4 мин
Количество просмотров4.6K
«Объясни мне, что это за фигня!»

Алиса, новый сотрудник, бросила пачку документов Джимми на клавиатуру, и нависла над ним, скрестив руки.

Он нажал «отмену» и взглянул на документы. Это было полное описание ERP-системы с грифом «высокой важности» — новая инициатива менеджеров, за которую они были щедро вознаграждены, требующая от программистов «инвестировать» в собственный труд.

«Для первого проекта весьма амбициозно» — сказал он. «Может, стоит начать с задачи попроще, чтобы вначале узнать наш код?»
Читать дальше →
Всего голосов 154: ↑127 и ↓27+100
Комментарии127

За пределами HTML5: API к базам данных и путь к IndexedDB

Время на прочтение4 мин
Количество просмотров6.5K
IndexedDB – развивающийся веб-стандарт для хранения значительных объемов структурированных данных в браузере и осуществления высокопроизводительного поиска по данным с помощью индексирования. Mozilla внесла значительный технический вклад в эту спецификацию, и мы планируем реализовать её в Firefox 4 (поддерживается в FF RC4 — прим. пер.). Мы общались с известными веб-разработчиками на предмет внедрения элегантного API для хранения структурированных данных в веб. Safari, Chrome и Opera поддерживают технологию Web SQL Database, использующую SQL-запросы, которые передаются строковыми аргументами в JavaScript API; нам же кажется, что эстетическая составляющая разработки тоже заслуживает внимания, а подобное решение является не очень элегантным для клиентских веб-приложений. Мы донесли мнение разработчиков до редактора спецификации IndexedDB, и пообщались с Microsoft, которая отметила, что IndexedDB была бы не плохим решением для веба. С маячащими на горизонте реализациями от команды Chrome, нам кажется необходимым объяснить наш выбор архитектуры и то, почему нам кажется, что IndexedDB является лучшим решением для веб нежели Web SQL Database.

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

Взаимодействие звеньев и их изоляция. Часть 2

Время на прочтение4 мин
Количество просмотров1.7K
Продолжение статьи «Взаимодействие звеньев и их изоляция.» часть 1

Хочу извиниться перед общественностью за то, что разбил статью на две части. Но в последнее время большие тексты перестали приниматься Хабром. Если кто-то подскажет как с этой напастью справиться: буду благодарен.
Читать дальше →
Всего голосов 36: ↑30 и ↓6+24
Комментарии41

Взаимодействие звеньев и их изоляция. Часть 1

Время на прочтение5 мин
Количество просмотров4.5K
Логические звенья в n-звенных системах должны проектироваться так, чтобы они взаимодействовали и подвергались влиянию только соседних звеньев. Данное ограничение зачастую нарушается, что негативно влияет на систему. В этой статье я расскажу почему так обычно случается, о последствиях, и почему следует уделять большое внимание изоляции слоев.

Статья посвящена основам и является детальным их описанием. Следующие статьи с подробными примерами будут основываться на ней. Данная статья построена на принципах, которые мы обсуждали в «Где наша бизнес-логика, сынок?» («Dude, where's my business logic?»).
Читать дальше →
Всего голосов 46: ↑41 и ↓5+36
Комментарии10

Ужаснейший способ тарификации. Который работает

Время на прочтение5 мин
Количество просмотров5.7K
Представляю вам способ формирования цены, который выглядит как самая тупая ошибка нуба.
Назовем его «заполните пустой счёт». Или «заплатите, сколько считаете нужным».

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

Но на самом деле, это довольно оригинальная тактика, которой должен уметь пользоваться любой фрилансер, когда ветер дует в нужную сторону. (Заметьте, я сказала «когда ветер дует в нужную сторону». Мы вернемся к этому позже.)
Делается это так.
Всего голосов 152: ↑138 и ↓14+124
Комментарии101

Фатальный выбор

Время на прочтение8 мин
Количество просмотров2.4K
В своей предыдущей статье (en), я рассказывал об истории японского проекта вычислительных систем пятого поколения, запущенного под звон фанфар в 1982 и почившего в 1992, прихватив с собой логическое программирование. В этой я расскажу о том, как в качестве языка для систем пятого поколения был выбран Пролог, вместо более очевидного Лиспа. Мне интересен феномен людей, способных формировать приверженцев того или иного языка. Надеюсь, в этой статье я смогу объяснить его.
Читать дальше →
Всего голосов 58: ↑53 и ↓5+48
Комментарии24

Бесплатный сыр бывает вкусным

Время на прочтение4 мин
Количество просмотров1.5K
Садитесь рядом. Садитесь, это будет долгая история. Я и сам не знал, насколько долгая, когда начинал ее рассказывать.
Вы любите страшные сказки? Я — нет. Во всяком случае, мне так казалось.
Но нам редко дано делать лишь то, что мы любим.
Главное, что следует запомнить вначале — эта сказка не о вас. Она могла случиться, и она может случиться, но только не с вами.
Вы в безопасности, в мире, который тверд и надежен. Вас нет в этой сказке, и если даже вам покажется обратное — вы ошиблись. Поверьте.
И если вы дочитаете до конца, а нечто темное коснется вас — не пугайтесь. Просто страшная сказка, которую рассказывают страшные люди.
Эта сказка не о вас.


Сергей Лукьяненко «Осенние визиты»

Зачем компании работают? Самый распространенный ответ: чтобы заработать деньги. Это верный ответ, но не полный. Чтобы жить, человеку нужно есть, пить, дышать и осуществлять другие естественные потребности. Без еды можно какое-то время протянуть, без воды – меньшее, без воздуха – совсем чуть-чуть. Компании в этом плане похожи на людей, деньги – их пища, вода и воздух. Без них они умирают. Но как мало кто из людей видит свое предназначение только в том, чтобы посытнее пожрать, так мало какая компания ставит своей основной целью заработать побольше. Но точно так же, как большинству людей приходится в поте лица добывать себе хлеб, забыв о своём высшем предназначении, так и многие компании концентрируются на заработке, забыв о том, что принято называть модным словом «миссия».
читать страшную сказку дальше
Всего голосов 24: ↑11 и ↓13-2
Комментарии13

Симуляция донейт в он-лайн игре

Время на прочтение2 мин
Количество просмотров1.5K
К написанию этого топика меня подтолкнул проведенный на Хабре эксперимент. Он мне напомнил, что я симулировал различные схемы продаж в одной он-лайн игре. В данном случае речь пойдет о донейт схеме, которая вызывает немалые холивары.

В рамках эксперимента раздавались таблетки. В игре эти таблетки не то, что жизненно необходимая вещь, но позволяет чувствовать себя более комфортно. Т.е. легкодоступный товар массового потребления. Одна таблетка стоит одну (неделимую единицу денег) монету, оптом дешевле (1 монета = 3-4 таблетки).
Читать дальше →
Всего голосов 102: ↑66 и ↓36+30
Комментарии91

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность