Как стать автором
Обновить
40
0
Дмитрий Будников @mephisto

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

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

Фриланс на Кипре

Время на прочтение6 мин
Количество просмотров125K
В дополнение к статье хабраюзера dudeonthehorse «Фриланс в Турции» опишу особенности этого вида труда для Кипра, точнее его южной части. Я не буду рассказывать про местные достопримечательности, а постараюсь дать сведения, полезные для людей, ставших на нелегкий путь свободных наемников.


Читать дальше →
Всего голосов 89: ↑85 и ↓4+81
Комментарии127

Многозадачность в ядре Linux: workqueue

Время на прочтение7 мин
Количество просмотров35K
Продолжаем тему многопоточности в ядре Linux. В прошлый раз я рассказывала про прерывания, их обработку и tasklet’ы, и так как изначально предполагалось, что это будет одна статья, в своем рассказе о workqueue я буду ссылаться на tasklet’ы, считая, что читатель уже с ними знаком.
Как и в прошлый раз, я постараюсь сделать мой рассказ максимально подробным и детальным.

Статьи цикла:
  1. Многозадачность в ядре Linux: прерывания и tasklet’ы
  2. Многозадачность в ядре Linux: workqueue
  3. Protothread и кооперативная многозадачность


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

Ближайшее будущее аккумуляторных батарей

Время на прочтение33 мин
Количество просмотров107K
В последние годы все острее встает вопрос усовершенствования мобильных источников энергии — вопрос как глобальный, так и повседневный. Глобальная сторона заключается в том, что человечество, остро нуждаясь в энергии в любой её форме, выбрало в качестве свободноконвертируемой электрическую. Причина – относительно низкие потери при обратном переводе из электрической в любую другую, а так же низкие потери при передаче от точки выработки (электростанция) до стационарной точки потребления (э/розетка). Основным источником электроэнергии на сегодняшний день является сжигание на ТЭС невозобновляемого углеводородного топлива, которого с каждым годом все меньше, а цена всё выше. Основной вред окружающей среде наносят тем не менее не ТЭС, а двигатели внутреннего сгорания автомобилей, в виду компактности не столь эффективные и оснащенные не столь же хорошими системами очистки.
Все говорит, что работай автомобили на электротяге, наш мир стал бы намного чище, а жизнь со временем даже дешевле

Но вряд ли многие из нас, не считая борцов за зеленый мир, и даже считая оных, думают об этом каждый день. Гораздо чаще мы вспоминаем недобрым словом какой-нибудь значок на дисплее нашего ноутбука или телефона, увидев что пользоваться им осталось минут 20. И вопрошаем:”Ну когда же они сделают нормальную батарейку, а?”.
Читать дальше →
Всего голосов 269: ↑249 и ↓20+229
Комментарии141

Oil Rush: официальный релиз

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

OilRush — стратегия в реальном времени от российских разработчиков из Томска.
Сегодня состоялся релиз версий для Linux, Mac OS X и Windows.
Стоит отметить, что проект является одной из первых технологических игр выпущенных для Linux.

Игра представляет собой смесь стратегии реального времени и жанра Tower Wars: вы управляете развитием морских платформ: нефтедобывающих и производящих, а также их обороной путем создания защитных сооружений, одновременно атакуя с моря и воздуха платформы врага. Дополнительное разнообразие стратегий вносит развитое дерево технологий.

По сеттингу игра напоминает фильм «Водный мир» — затопленный мир после глобальной катастрофы, в котором немногочисленные выжившие ожесточенно сражаются за остатки доступных ресурсов.
Читать дальше →
Всего голосов 282: ↑242 и ↓40+202
Комментарии154

Расширение Node.js Tools для Visual Studio

Время на прочтение4 мин
Количество просмотров27K
Как бы это странно не звучало, но компания Microsoft официально представила расширение Node.js Tools для Visual Studio!

Node.js Tools для Visual StudioРасширение NTVS предназначено для установки в Visual Studio версии 2012 и 2013. Проект имеет довольно занимательную историю своего появления. Несколько поклонников node.js практически одновременно начали разработку своих собственных расширений на базе проекта PTVS с целью создания расширения Node.js Tools для Visual Studio. В то же самое время команда разработчиков PTVS также выполняла работу по интеграции с node.js, попутно объединяя усилия сторонних разработчиков, что в итоге и привело к формированию сообщества проекта. Основные усилия при создании NTVS были приложены командой PTVS при содействии Барта Рида из Red Gate, разработавшего GUI для npm, и Дмитрия Третьякова из Clickberry, выполнившего работы по усовершенствованию отладчика и исправлению дефектов.
Читать дальше →
Всего голосов 32: ↑28 и ↓4+24
Комментарии15

Асинхронность: назад в будущее

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

Асинхронность… Услышав это слово, у программистов начинают блестеть глаза, дыхание становится поверхностным, руки начинают трястись, голос — заикаться, мозг начинает рисовать многочисленные уровни абстракции… У менеджеров округляются глаза, звуки становятся нечленораздельными, руки сжимаются в кулаки, а голос переходит на обертона… Единственное, что их объединяет — это учащенный пульс. Только причины этого различны: программисты рвутся в бой, а менеджеры пытаются заглянуть в хрустальный шар и осознать риски, начинают судорожно придумывать причины увеличения сроков в разы… И уже потом, когда большая часть кода написана, программисты начинают осознавать и познавать всю горечь асинхронности, проводя бесконечные ночи в дебаггере, отчаянно пытаясь понять, что же все-таки происходит…

Именно такую картину рисует мое воспаленное воображение при слове “асинхронность”. Конечно, все это слишком эмоционально и не всегда правда. Ведь так?.. Возможны варианты. Некоторые скажут, что “при правильном подходе все будет работать хорошо”. Однако это можно сказать всегда и везде при всяком удобном и не удобном случае. Но лучше от этого не становится, баги не исправляются, а бессонница не проходит.

Так что же такое асинхронность? Почему она так привлекательна? А главное: что с ней не так?
Назад в будущее...
Всего голосов 130: ↑124 и ↓6+118
Комментарии42

Динамическое освещение и неограниченное количество источников произвольной формы в 2D

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


Читать дальше →
Всего голосов 80: ↑76 и ↓4+72
Комментарии20

JavaScript. Оптимизация: опыт, проверенный временем

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

Предисловие


Давно хотел написать. Мысли есть, желание есть, времени нету… Но вот нашлось, так что привет, Хабра.
Здесь я собрал все идеи, которые помогали и помогают в разработке веб-приложений. Для удобства я разбил их на группы:
  1. Память
  2. Оптимизация операций
  3. Выделение критических участков
  4. Циклы и объектные свойства
  5. Немножко о DOM
  6. DocumentFragment как промежуточный буфер
  7. О преобразованиях в объекты
  8. Разбитие кода
  9. События перетаскивания
  10. Другие советы

Сейчас речь не пойдёт ни о каких библиотеках. Я постараюсь передать знания о механизмах самого языка, а не их реализациях в библиотеках.

Память

Хоть это и не должно волновать клиентского программиста, но не забываем, что память всё-таки не бесконечна и когда-нибудь может закончиться, например, когда запущено несколько массивных программ: офис, графический редактор, компиляция большой программы и др. Несмотря на то, что приведенный пример тривиален, у меня действительно такое случилось, хоть и не из-за браузера, но он тоже сыграл свою роль: 1,3 Гб оперативы (отладчик, около 30 вкладок), начались тормоза по перегрузке страниц ОП в файл подкачки.
Чтобы уменьшить расход памяти, я предлагаю несколько способов:
Читать дальше →
Всего голосов 113: ↑92 и ↓21+71
Комментарии99

Не компьютерная мышь и высокие технологии

Время на прочтение3 мин
Количество просмотров10K
В древние времена слово «мышь» трактовалось однозначно, затем настали новые года, другие нравы и вот уже приходиться отмечать — статья не про компьютерную мышь.

Иногда люди сталкиваются с мышами. Ладно, если эта встреча случайна и мимолетна, но бывает так, что мышкам нравится ваше жилье и они начинают считать его своим, а это уже не совсем хорошо для обоих. Приходится изобретать велосипед…
Читать дальше →
Всего голосов 199: ↑179 и ↓20+159
Комментарии161

Я медленно удаляю apache с сервера

Время на прочтение13 мин
Количество просмотров54K
image
Есть у меня серверок (да, да, именно серверок, сервером его назвать сложно). Железо старенькое (2 гига оперативы, AMD Athlon(tm) 64 Processor 3500+, програмный RAID). Админю я его сам, без особых навыков и познаний. Когда-то давным давно (больше года назад) поставил на него Debian 5.0 Lenny (это была вторая в жизни установка linux-системы, до этого ставил только Ubuntu на рабочий ноутбук) и панель управления ISPConfig3 по мануалу. Держу на нем несколько (штук 40) сайтов друзей и клиентов, Redmine, SVN и еще немного по мелочам.
Периодически все это безобразие падает (load average > 20), и приходится на сервере раз в пару часов перегружать apache или высасывать из пальца очередную попытку оптимизации. В общем полный раздрай и разруха. И вот в одну прекрасную субботу я подумал — а почему бы не решить вопрос раз и… И вот в общем.
Под катом — история убитых выходных + предыстория. Интересна в первую очередь мне, чтобы потом легко вспомнить что именно и зачем я ставил. Может быть интересна новичкам в интересном и нелегком (ох, ...) деле серверной оптимизации постепенным(!) переводом сайтов из-под Apache c его ModRewrite под Nginx (кстати, правильно это слово читается «энжинкс»меня поправили, Сысоев на конференциях не раз говорил, что название сервера стоит читать, как «энжин-икс», спасибо bayandin и DorBer ). Возможно, будет интересна более-менее опытным товарищам, оказавшимся в тех же условиях (Debian Lenny, ISPConfig3, слабое железо, несколько хороших, не сильно хороших и разных сайтов). И более опытным может быть интересно зайти, оставить пару комментариев.
Если интересно - нажмите сюда, если нет - нажмите звездочку ниже
Всего голосов 167: ↑137 и ↓30+107
Комментарии184

Отображение веб-форм в разных ОС

Время на прочтение4 мин
Количество просмотров4.1K
Это статья — небольшое исследование того, как рендерят браузеры стандартные веб-формы в разных операционных системах. Мы будем говорить именно о стандартных, дефолтных формах и не коснемся распространенных сейчас форм с png-подложками и сильно измененным CSS и JS.

Читать дальше →
Всего голосов 50: ↑42 и ↓8+34
Комментарии56

Используем console на полную

Время на прочтение6 мин
Количество просмотров457K
Метод console.log() — отличный способ вывести отладочную информацию, не мешая пользователю. Но знаете ли Вы, что объект console имеет еще уйму других не менее полезных методов? Очень редко разработчики используют этот функционал, ограничиваясь неблокирующим alert'ом. Что-ж, давайте исправим это положение.

Вкусности console
Всего голосов 172: ↑168 и ↓4+164
Комментарии29

Принцип цикады и почему он важен для веб-дизайнеров

Время на прочтение6 мин
Количество просмотров229K
Пару лет назад я прочитал интересные факты о жизненном цикле периодических цикад. Обычно мы не видим вокруг себя много этих насекомых, потому что бóльшую часть своей жизни они проводят под землёй и тихо сосут корни растений.

Однако, в зависимости от вида, каждые 7, 11, 13 или 17 лет периодические цикады одновременно массово вылезают на свет и превращаются в шумных летающих тварей, спариваются и вскоре умирают.

Хотя наши странные цикады весело уходят в иной мир, возникает очевидный вопрос: это просто случайность, или числа 7, 11, 13 и 17 какие-то особенные?
Читать дальше →
Всего голосов 696: ↑682 и ↓14+668
Комментарии119

Информация

В рейтинге
Не участвует
Откуда
Varna, Varna, Болгария
Дата рождения
Зарегистрирован
Активность