Pull to refresh
Илья @techno read-only

User

Django ORM — медленный? Оптимизируем (хардкорно)

Python *Django *

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

Читать дальше →
Total votes 13: ↑11 and ↓2 +9
Views 14K
Comments 25

Оптимизация стоимости при работе с Amazon S3

.io corporate blog Image processing *Amazon Web Services *
Amazon S3 удобно использовать для хранения файлов любых форматов. Кроме удобного API получаем практически безразмерное хранилище. Отличная доступность и невысокая стоимость делают S3 мегапривлекательной для молодых и небольших проектов.

Однако со временем файлов становится все больше. А платить придется не только за новые данные, но за всю историю. Кроме этого, Amazon дерет деньги за GET и POST запросы, а также за трафик.

Несмотря на низкую стоимость на старте, с ростом это решение будет обходиться все дороже.
Читать дальше →
Total votes 18: ↑17 and ↓1 +16
Views 22K
Comments 10

Подсчет себестоимости часа разработки программного обеспечения

IT Standards *
Sandbox
Сегодня я расскажу о больной теме как для покупателей программного обеспечения, так и для провайдера этой услуги – себестоимости разработки. Понятно, что сейчас не самое лучшее время для того, чтобы разбрасываться бюджетами. Только это не значит, что производители должны работать себе в убыток. Многие говорят о жадности предпринимателей, но я вам вот что скажу: нет ничего постыдного в том, чтобы делать честный бизнес и адекватно считать свои косты.

image
Читать дальше →
Total votes 47: ↑42 and ↓5 +37
Views 143K
Comments 79

Записки iOS программиста о его молотках, кувалдах и микрометрах

Perfect code *Development for iOS *Objective C *
В один прекрасный момент, когда на собеседованиях меня уже убеждали, что я senior iOS developer — у меня возникло ощущение, что я уперся. Пишу похожий код, решаю задачи похожими способами и ощущение, что непонятно, куда развиваться дальше. Я думаю, с этой проблемой сталкивался не один я — нехваткой новых идей, концепций, направлений. Я бы хотел рассказать вам о тех инструментах и фреймворках, которые помогли преодолеть мне это ощущение.

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


Читать дальше →
Total votes 27: ↑26 and ↓1 +25
Views 31K
Comments 13

Ликбез: почему дома интернет по Wi-Fi тормозит

билайн бизнес corporate blog
Recovery mode


Классическая схема включения услуг Интернет в многоквартирном жилом доме выглядит следующим образом: ТКД (точка коллективного доступа) — витая пара — роутер в квартире клиента, к которому подключены клиентские устройства по проводу и по Wi-Fi.

Характерные жалобы абонентов – скорость ниже тарифа, и возникают регулярные «замирания» при работе в интернете, что выражается долгим открыванием страниц в браузере, прерываниями видео, потерей связи с игровыми серверами и т.д. Данное поведение носит нерегулярный характер, а наиболее часто возникает в часы наибольшей пользовательской активности примерно с 18:00 до 23:00 в зависимости от города.

Есть несколько простых шагов, которые позволят определить возможную причину подобных проблем и решить 90% пользовательских ситуаций. Они ниже.
Читать дальше →
Total votes 87: ↑54 and ↓33 +21
Views 282K
Comments 164

Уменьшаем количество ошибок с помощью чек-листа Code Review

Website development *Programming *
Translation
В нашей статье об эффективных ревью кода мы рекомендовали использовать чеклист. Чеклисты (контрольные списки) — это великая вещь в ревью: они гарантируют, что ревью действительно прошло через вашу команду. Также они способствуют выявлению и решению общих трудностей.

Исследование, проведенное Software Engineering Institute, показывает, что программисты делают 15-20 распространенных ошибок. Добавив такие ошибки в чеклист, вы можете быть уверены, что заметите их в момент появления и поможете от них избавиться надолго.

Чтобы вам было от чего отталкиваться, вот вам список типичных пунктов:
Читать дальше →
Total votes 26: ↑25 and ↓1 +24
Views 29K
Comments 13

За один проход

Sport programming *Programming *Algorithms *
Среди задач по программированию часто попадаются такие: дана последовательность однотипных элементов (обычно это числа), требуется за один проход по ней найти какую-нибудь характеристику (среднее квадратическое отклонение, количество минимальных элементов, непрерывный участок с наибольшей суммой...) Дополнительное ограничение — последовательность может быть очень длинной, и в память не поместится. Других ограничений на элементы последовательности, обычно, не накладывается.
С этими задачами всё, более или менее, понятно: нужно найти то, что на мехмате МГУ называют «индуктивным расширением» искомой функции, и реализовать её вычисление. Если найти не удалось (требуемый объём памяти слишком велик), то задача не решается.
Но попадаются и другие задачи. В них есть дополнительные ограничения на элементы последовательности в совокупности, и эти ограничения приходится существенно использовать для решения (и проверять их не надо). Простейшая такая задача выглядит так:

Задача 1. В последовательности записаны целые числа от 1 до N в произвольном порядке, но одно из чисел пропущено (остальные встречаются ровно по одному разу). N заранее неизвестно. Определить пропущенное число

Решение очевидно: просматриваем числа, находим их количество K и сумму S. По условию, N=K+1, значит, сумма чисел от 1 до N будет равна (K+1)*(K+2)/2, и пропущенное число равно (K+1)*(K+2)/2-S. Если вы почему-то боитесь переполнений, то работайте с беззнаковыми числами (там переполнения не страшны — но будьте осторожны при вычислении (K+1)*(K+2)/2 :) ), или вместо суммы ищите XOR всех чисел.
Другие задачи
Total votes 73: ↑72 and ↓1 +71
Views 143K
Comments 55

Ежегодное награждение лучших на демосцене по мнению scene.org

Demoscene
The 8th Annual Scene.org Award 2008.

Сразу скажу почему не 2009, потому что 2009 в процессе голосования. И вы можете сами принять в этом участие, отдав свой голос за понравившееся работы 2009го года. По поводу просмотра. Смотреть всё же желательно в реале, то есть запустить на своём компьютере (практически все демо под Windows). Для тех у кого нет такой возможности, я постарался найти видео в HD на youtube. Ну и звук это обязательно. Некоторые демо без звука вообще не смотрятся, как например Masagin.

И так что выбрали в 2008 году как лучшее.

Читать дальше →
Total votes 41: ↑39 and ↓2 +37
Views 1.8K
Comments 55

Великолепная подборка инди-игр*. Часть четвёртая

Lumber room
*или чем занять все выходные на полгода вперёд.

Четвёртая часть, последняя на сегодня(а может быть и нет. Подробности — в конце поста). Я надеюсь, что кто-нибудь живой(после трёх частей-то!) до сюда доберётся :)

Часть первая.
Часть вторая.
Часть третья.

La Mulana

La MulanaДлинная платформенная игра в стиле Индианы Джонса, большей частью основанная на Maze of Galious от Konami и других играх компьютеров MSX. Она невероятно сложна, включает в себя зверские битвы с боссами и трудные головоломки, но благодаря этому заработала себе многочисленных поклонников(мазохистов).

Бесплатная.
Windows.


Mount & Blade

Mount & BladeСуществует много игр, действие которых разворачивается в средневековье, но лишь парочка из них тянет на звание «реалистичных симуляторов». Игра, в который кавалерийские баталии реализованы настолько по-живому, что прям-таки ощущаешь себя в шкуре воина, не могла не понравиться тысячам игроков по всему миру. Пользователь напрямую управляет только одним персонажем в игре, но может нанимать и тренировать солдат для помощи в битве. Игра печально известна своим открыто-незаконченным геймплеем, но тем не менее стоит того, чтобы с головой в неё уйти на несколько дней.

$30 на сайте разработчика. Официально издана в России компанией 1C.
Windows.

Читать дальше →
Total votes 89: ↑61 and ↓28 +33
Views 6.4K
Comments 29

Быстрая макросъемка на iPhone

Smartphones
image

Однажды, в одном хабратопике я прочитал про маленький «лайфхак» — как при помощи старого\ненужного CD\DVD-Rom'а научить любой аппарат без автофокуса снимать в макрорежиме.

И вот что получилось
Total votes 110: ↑92 and ↓18 +74
Views 4.4K
Comments 63

Рекомендации тем, кто хочет переехать в Минск

Social networks and communities Lifehacks for geeks
Tutorial
За последние месяцы на хабра-GT ресурсах проскакивало уже как минимум 2 статьи о том, как IT-специалисты переезжали в Минск в поисках лучшей доли. К каждой из статей я оставлял ряд комментариев и глядя на достаточно теплый прием сообщества подобных материалов, думаю, пора, все же, составить короткий мануал о переезде и жизни в БССР РБ от жителя столицы.

Под катом Вас ждет взгляд на вещи от минчанина, три «лайфхака» и одна плоская шутка.


Читать дальше →
Total votes 67: ↑58 and ↓9 +49
Views 69K
Comments 157

Youtube

Working with video *
Приходится ждать загрузки видео >360p по несколько секунд, обрывы на середине просмотра стало уже обыденным делом и это с достаточно широким каналом.

image

Причина в занижении провайдерами скорости к серверам кеширующим видео, всё что нужно сделать это заблокировать доступ к ним.

Для того чтобы запрос шел мимо cdn серверов ютуба надо заблокировать диапазон ip адресов (в роутере или на компьютере).

173.194.55.0/24 и 206.111.0.0/16
Читать дальше →
Total votes 205: ↑147 and ↓58 +89
Views 221K
Comments 179

Google Reader закрывают

IT-companies


Google в официальном блоге, а также на самом сайте Google Reader объявил о закрытии сервиса.

Среди причин было названо желание сфокусироваться на основных продуктах и улучшить их.
Дата закрытия сервиса: 1го июля 2013.

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

P.S. Среди онлайн альтернатив сервиса могу назвать Яндекс.Ленту и NetVibes.
Предложите свою альтернативу в комментариях.

UPD: Вы можете подписать петицию Keep Google Reader Running
Total votes 243: ↑222 and ↓21 +201
Views 234K
Comments 475

Цукерберг в Москве. Подборка видео

Social networks and communities
Приветствую всех!

В начале недели в Москву, как известно многим, приезжал Марк Цукерберг.

Мне было интересно послушать мысли и речи основателя Facebook от первого лица, так как наша пресса в основном фокусировалась на каких-то обрывочных фразах, догадках. интригах и, что самое удручающее — рерайтах друг друга в космических масштабах.

Ниже предлагаю подборку видео с его различных встреч.

Читать дальше →
Total votes 34: ↑24 and ↓10 +14
Views 30K
Comments 11

Много книг, хороших и разных

Professional literature *
Мой список книг, которые мне хочется прочесть, изрядно вырос, спасибо топику “запасаемся на зиму”. Под катом вы обнаружите список книг, составленный по комментариям в том топике.
Читать дальше →
Total votes 139: ↑124 and ↓15 +109
Views 94K
Comments 89

ScummVM

Lumber room
image
Хорошие новости для любителей старых добрых компьютерных игр, вышла первая финальная версия виртуальной машины ScummVM.
Подробнее под катом.
Читать дальше →
Total votes 39: ↑33 and ↓6 +27
Views 1.6K
Comments 36

Простой способ обезопасить свою пластиковую карту

Information Security *Finance in IT
С недавнего времени я стал ярым фанатом пластиковых карт. Это очень удобно — у тебя всегда с собой достаточная сумма денег, хотя кошелек не ломится от бумажных купюр. Я привык расплачиваться карточкой, как в магазинах, так и в ресторанах и кафешках.

На конференции UsereXperience 2009, я был на выступлении Марата Абасалиева из Payonlinesystem, на котором он рассказал про очень простой, но эффективный способ обезопасить себя от мошенников.
Читать дальше →
Total votes 163: ↑157 and ↓6 +151
Views 3.9K
Comments 369

Макрoсъемка на телeфон. DVD + K800i

Computer hardware
image

Какое психиатрическое нарушение констатировали бы у человека, произнесшего в 1991 году следующую фразу: «А давай я тебя на телефон сфотографирую»? ©


cnflikt опубликовал интересные фотографии снятые с помощью телефона SE k800i.
Деталь, необходимая для осуществления этих фоток, находятся внутри каждого DVD-проигрывателя. Все, что нам нужно — это объектив от лазера. Затем, его приклеиваем к картону, картон на телефон и все готово! Естественно, при условии, что мы имеем в распоряжении ненужный плеер.

Подо мной еще несколько фотографий
Total votes 52: ↑49 and ↓3 +46
Views 6.6K
Comments 40

50 действительно хороших инди игр

Games and game consoles
Translation
Некоторое время назад здесь находился замечательный пост-перевод о 50 инди-играх, в которые действительно стоит сыграть. В настоящий момент он устарел, но ему на замену пришёл целый цикл постов об инди-играх — «Великолепная подборка инди-игр»:

Читать дальше →
Total votes 95: ↑90 and ↓5 +85
Views 27K
Comments 121

Песню группы Radiohead исполнили ZX Spectrum, принтер, сканер и жёсткие диски

Old hardware
Группа Radiohead после выхода последнего альбома In Rainbows (который известен тем, что распространялся по Сети за произвольную стоимость) объявила о конкурсе ремиксов на песню Nude.

Джеймс Хьюстон (не имеющий отношения к группе) подошёл к делу творчески. Он синхронно запустил различные компьютерные (и не очень) устройства недавнего прошлого так, чтобы из их побочных шумов получилась та самая композиция Nude. Сначала около 70 секунд шума загрузки программы с плёнки, потом всё начнётся.


Подробности
Total votes 75: ↑69 and ↓6 +63
Views 2.8K
Comments 90

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity