Как стать автором
Обновить
44
0
Артём Пряничников @zebraxxl

QA-Engineer

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

Курс Стэнфорда по цифровой фотографии

Время на прочтение1 мин
Количество просмотров5.7K
Стэнфордский университет выложил в онлайн лекции и сопроводительные материалы к курсу по цифровой фотографии (CS 178). Курс знакомит студентов с научным, художественным и компьютерным аспектами цифровой фотографии — как работает камера, как делать хорошие снимки, как обрабатывать фотографии.

Кроме лекций, есть подробный план занятий, список необходимых учебников и программного обеспечения и интерактивные материалы (флэш-апплеты), которые иллюстрируют каждую лекцию. Есть также список еженедельных практических заданий, а в заключение — список вопросов на экзамене и анализ решений. В качестве бонуса — анимация сборки камеры Canon 10D. В принципе, всех этих материалов достаточно, чтобы пройти курс самостоятельно, а потом сдать экзамен и проверить свои ответы.
Всего голосов 61: ↑55 и ↓6+49
Комментарии31

Все о социальных сетях. Перспективы развития [2/4]

Время на прочтение6 мин
Количество просмотров9.1K
Вторая часть большого исследования по социальным сетям, которая посвящена перспективам развития в ближайшие 3-5 лет. По просьбе администрации публикую топиком, а не ссылкой как первую. Само исследование получилось довольно объемное, поэтому я тут сделаю краткие выжимки по нему, полный текст доступен на нашем сайте:

Первая часть доклада (рус): «Все о социальных сетях. Влияние на человека [1/4]»;
Первая часть доклада (англ): «Everything About Social Networks. Impact on a Person [1/4]»;
Вторая часть доклада: «Все о социальных сетях. Перспективы развития [2/4]»;
Третья часть доклада: «Все о социальных сетях. Технологии [3/4]»;
Четвертая часть доклада: «Все о социальных сетях. Монетизация [4/4]».

Краткая версия доклада
Всего голосов 43: ↑34 и ↓9+25
Комментарии15

На Defcon представлена Android-программа для проверки надежности защиты компьютерных сетей

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


Специалисты израильской компании, специализирующейся на сетевой безопасности, выбрали платформу Android в качестве основы для работы своей программы Android Network Toolkit. Это ПО было представлено на конференции Defcon, и предназначено для проверки надежности защиты компьютерных сетей. При этом программка равным образом может служить отмычкой плохо защищенных сетей в руках злоумышленников (в общем-то, программы подобного рода всегда были «двулики», так сказать). Стоит отметить, что ребята, разработавшие этот софт, собираются выложить Android Network Toolkit в общий доступ в течение нескольких дней, сделав программу доступной для всех. В общем-то, это хорошо, с одной стороны, поскольку специалисты по сетевой безопасности смогут получить довольно солидный функционал, в виде мобильного приложения. С другой стороны, любой злоумышленник сможет «проверять» беспроводные сети везде, где эти сети есть. О том, что умеет программка — в продолжении.

Читать дальше →
Всего голосов 48: ↑41 и ↓7+34
Комментарии41

Замыкания и объекты JavaScript. Переизобретаем интерпретатор

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

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

JavaScript, как никакой другой язык, нуждается в именно таком объяснении. Функциональная природа, скрытая за Си-подобным синтаксисом, и непривычная прототипная модель наследования поначалу сильно сбивают с толку. Давайте мысленно понизим уровень JavaScript до простого процедурного, наподобие Си. Отталкиваясь от этого «недоязыка», переизобретем функциональное и объектно-ориентированное программирование.
Читать дальше →
Всего голосов 114: ↑113 и ↓1+112
Комментарии30

Конкурентный доступ к реляционным базам данных

Время на прочтение13 мин
Количество просмотров62K
СхемаВопросы параллелизма в компьютерных вычислениях очень сложны! Причинами большой сложности являются огромное количество деталей, которые нужно учитывать при разработке параллельных программ. В программирование и без того существует большое количество деталей, которые создают почву для ошибок, параллелизм же, добавляет ещё.

Вопросы конкурентного доступа к реляционным базам данных встают практически перед любыми разработчиками прикладного программного обеспечения и не только перед ними. Результатом такой востребованности этой области является наличие большого количества созданных архитектурных паттернов. Это позволяет успешно справляться с большой сложностью разработки таких программ. Ниже пойдёт речь о таких рецептах, а также механизмах на которых базируется их реализация. Повествование будет иллюстрироваться примерами кода на Java, но большинство материала не привязано к языку. Цель статьи — описать проблемы конкурентного доступа к реляционным базам данных, в качестве введения в предмет, а не полноценного охвата темы.
Читать дальше →
Всего голосов 60: ↑58 и ↓2+56
Комментарии23

Тюнинг Canabalt

Время на прочтение7 мин
Количество просмотров2.6K
Была предпринята попытка сохранить оригинальную орфографию, шутки и пунктуацию. И, да, данный пост — перевод статьи создателя Canabalt, не думайте, что игру создал я.

image

[Эта статья рассматривает технические особенности, соотношения и размеры Flash версии игры Canabalt. Читатель, будь осторожен, статья содержит спойлеры и большое количество цифр!]

Друзья часто спрашивают меня: думал ли я о том, чтобы выложить исходный код моей Flash игры Canabalt в интернет на растерзание и изучение. Они думают, что для людей будет полезно увидеть, как в игре организована физика и другие вещи. Но я отношусь с опасением к этой идее, на это у меня есть несколько причин, например: исходный код игры написанный за 5 дней, представляет из себя кошмарный и отвратительный спагетти-код, который вряд ли поможет кому-нибудь. Поэтому, из чувства гордости по поводу первого дня рождения Cannabalt, я подумал: «почему бы не написать статью, в которой бы рассказывалось о том, как внутри всё устроено?»
Читать дальше →
Всего голосов 62: ↑60 и ↓2+58
Комментарии30

Как он учился писать статьи на Хабре

Время на прочтение12 мин
Количество просмотров1.7K
image
Вася в очередной раз посмотрел на экран своего ноутбука. Он не хотел обновлять страницу. Хотя, очевидно, что её надо было обновить. Ещё разок. Последний раз. Больше он не будет её обновлять. F5.
56.6. Упала на 1 единицу. Чёрт. Хотя, минус один за четыре часа — это не большая проблема, но всё-таки было неприятно.

Серо-синий клубок ниток (или проводов, не важно), смотрел на покрасневшие программерские глаза. Он был одновременно притягивающим и отталкивающим. Этот клубок сулил славу и знание, но в то же время, мог привести к позору.

Не так давно, несколько часов назад, из за одного, не в меру остроумного комментария Вася потерял 12 единиц. Отвратительно. Надо было взять реванш. Это просто уже дело чести. Обязательно надо взять реванш.
Читать дальше →
Всего голосов 132: ↑100 и ↓32+68
Комментарии37

Как доделать игру

Время на прочтение9 мин
Количество просмотров28K
На блоге одного из создателей Aquaria и Spelunky есть любопытный пост с советами для тех, кто испытывает проблемы с доведением до конца своих игровых проектов. Этот список советов оказался для меня своего рода «зеркалом», в котором отражены многие проблемы, с которыми сталкивался я сам, и я был удивлен тем, насколько хорошо автору удалось уловить суть этих проблем и предложить свои решения, зачастую бескомпромисные.
image
Приближаясь к заключительной стадии разработки моей игры, я много думал о том, как завершать выполнение проектов в целом. Я заметил, что вокруг много действительно талантливых разработчиков, у которых возникают проблемы с доведением до конца игровых проектов. По правде говоря, я и сам оставил позади себя ряд незавершенных игр… Думаю, у многих та же ситуация. Не всякий проект удается, по разным причинам. Однако если вы стали замечать, что постоянно забрасываете проекты, которые имеют неплохой потенциал, вероятно, стоит оглянуться назад и изучить тому причины.
Читать дальше →
Всего голосов 142: ↑135 и ↓7+128
Комментарии54
12 ...
7

Информация

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