Как стать автором
Обновить
45
2.6
Сергей Кулик @saboteur_kiev

Configuration engineer

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

Получение серификата Oracle Certified Java Professional Programmer и о сертификации в целом

Время на прочтение5 мин
Количество просмотров116K
Добрый день жители хабра и остального мира. Эта статья является продолжением первого поста о сдаче экзамена Java Progammer I. Часть информации будет продублирована тут. Сегодня я хотел бы затронуть такие вопросы: image
  • зачем нужна сертификация;
  • какие виды сертификатов может получить инженер от Oracle;
  • что нужно знать или выучить, чтобы успешно сдать экзамены по Java Programmer I/II.

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

Расковыриваем сжатие ресурсов в Might and Magic III

Время на прочтение7 мин
Количество просмотров27K
Не очень хорошо помню, как я оказался в дебаггере DOSBox, и почему я ковырялся в 16-битном ассемблере, восстанавливая функцию распаковки ресурсных файлов MM3.CC – но это было здорово. Игра у меня появилась на какой-то из последних распродаж humble bundle, а потом в сети я наткнулся на страницу Джеффа Людвига, где описывались проблемы с модификацией игры, связанные с компрессией в MM3.CC. В частности, там было написано следующее:
Оказалось, что этот алгоритм довольно сложно взломать, и пока ещё никто не научился распаковывать эти данные.

Вызов был принят. В его статье расписано, как он пытался бороться с алгоритмом. Я же распишу, как это делал я сам, и в конце дам ссылку на утилиту с открытым кодом, которая умеет не только распаковывать, но и запаковывать файл MM3.CC file.

DOS Packer


Посмотрев на MM3.EXE, я обнаружил, что это сжатый исполняемый файл DOS, с неким несжатым оверлеем, в начале которого стоит FBOV. Я ничего не знал про ДОСовские компрессоры, но я подсмотрел у Джеффа Людвига, что он использует вещь под названием “Universal Program Cracker” v1.11. Я нашёл версию 1.10 (выпущенную 25 июня 1997 года) и распаковал ехе. И мне удалось даже правильно обработать данные оверлея. И всё равно мне хотелось узнать название паковщика. Мне подсказали, что нужно использовать программу Detect It Easy, и действительно – она выдала:

EXECUTRIX-COMPRESSOR(-)[by Knowledge Dynamics Corp]
Borland TLINK(2.0)[-]


Для любителей истории могу рекомендовать старые ветки обсуждений, касающихся этого софта – от 1991 и 1995 годов:

https://groups.google.com/forum/#!topic/comp.os.msdos.programmer/QsjHLY6Kb4s
https://groups.google.com/forum/#!topic/comp.compression/IAj2-VHbtl4
Читать дальше →
Всего голосов 55: ↑52 и ↓3+49
Комментарии7

MCMC и байесова статистика в BASIC

Время на прочтение5 мин
Количество просмотров13K
BASIC был одним из самых распространенных языков программирования. В 80-х он шел в стандартном наборе программ на компьютере (например, Commodore 64 и Apple II), а в 90х и DOS и Windows 95 включали в себя QBasic IDE.

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

image
Читать дальше →
Всего голосов 23: ↑21 и ↓2+19
Комментарии20

Ускоренный курс по нотациям в теории языков программирования

Время на прочтение10 мин
Количество просмотров31K
Программисты часто сталкиваются с проблемами чтения математических нотаций, когда пытаются разобраться с теоретическими основами какого-либо языка программирования. Также с ними толкнулся и я в своих теоретических изысканиях. К счастью, мне очень помогла замечательная статья Джереми Сиека (Jeremy Siek), чьим переводом я хочу с вами поделиться. Надеюсь она поможет многим программистам-«не математикам».
Читать дальше →
Всего голосов 25: ↑25 и ↓0+25
Комментарии4

Две простые и эффективные бесплатные программки для восстановления потерянных данных

Время на прочтение9 мин
Количество просмотров129K
файлы…файлы…файлы

Число технологий, страхующих пользователя от потери данных всеми возможными способами скоро сравнится с числом самих пользователей. И, тем не менее, нужные файлы, несмотря на наличие корзины и возможности резервного сохранения продолжают удаляться с удивительной настойчивостью. История удаления каждого нужного файла по своему уникальна. Задача, стоящая перед каждым незадачливым юзером, всегда одна – по возможности полностью восстановить утерянный контроль над ценной информацией.

О том, как восстановить данные самостоятельно, если знакомый гуру категорически отказывается общаться в выходной на профессиональные темы, а ближайший сервис откроется не раньше понедельника, мы расскажем в нашей статье.
Читать дальше →
Всего голосов 16: ↑12 и ↓4+8
Комментарии14

7 лучших форумов, блогов и YouTube-каналов о квадрокоптерах

Время на прочтение3 мин
Количество просмотров25K
Для тех, кто хорошо владеет английским языком я хочу сразу посоветовать подборку лучших англоязычных мест, но для тех, кто хочет познавать мир квадрокоптеров на родном языке, я расскажу о самых интересных местах, куда обязательно стоит заглянуть.


Фото со встречи нашей группы. Другие фото тут.
Читать дальше →
Всего голосов 12: ↑11 и ↓1+10
Комментарии3

2 года картавых обзоров — история любительского шоу Old-Hard

Время на прочтение9 мин
Количество просмотров13K
“Some say, we're never meant to grow up...”
(Sum 41, “Some Say”)

Сегодня моей маленькой, регулярно выходящей ютубовской передаче про старые компьютерные игры и железо исполняется два года. Срок для любительского шоу немалый… Самое время провести небольшую ретроспективу, разобрать "(не)творческий путь". Интересно? Добро пожаловать под кат!
Читать дальше →
Всего голосов 31: ↑30 и ↓1+29
Комментарии18

Исследование защиты игры Limbo. Кейген

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


Всем привет. Многие знают об этой замечательной игре — LIMBO! Вы даже наверняка покупали ее в Стиме, или качали с торрентов…
Я тоже ее купил когда-то (что и вам советую!), и прошел). Но, как всегда, мне было этого мало, и я, из спортивного интереса, решил изучить ее защиту. Так и появился кейген к игре LIMBO.
Читать дальше →
Всего голосов 128: ↑115 и ↓13+102
Комментарии76

Смотря на код с закрытыми глазами

Время на прочтение6 мин
Количество просмотров123K
От переводчика

Эта статья — перевод блогозаписи Флориана Бейджерса, слепого программиста из Нидерландов.
Перевод любительский, поэтому прошу указывать на ошибки и критиковать.
Я не нашёл корректного перевода слова accessibility, поэтому перевёл его как «доступность». Если есть вариант получше — предложите, пожалуйста.
Антон Туманов предложил «адаптированность», за что ему большое спасибо.
Как заметил в комментарии pepelsbey, «доступность» является корректным переводом, вернул её обратно.
Почему я сделал перевод? Я наткнулся на опрос на Quora.com «Как программируют слабовидящие программисты?». Ответы людей меня впечатлили, а блогозапись Флориана показалась наилучшим вариантом для введения в этот важный вопрос.

Я — программист. А ещё я слеп. Слеп, как крот, как говорится. Таков я от рождения.

Когда я говорю об этом своим товарищам, то те из них, у кого никогда не было проблем со зрением, обычно задают один из трёх вопросов:

  • Как же ты тогда можешь читать то, что я пишу?
  • Ого. А как ты тогда можешь кодить?
  • Или — самый популярный вопрос — А ты видишь сны?

Мне задают эти вопросы снова и снова. Поэтому в этой блогозаписи я хочу на них ответить. Я попытаюсь нарисовать картинку для тех из вас, кто интересуется доступностью и тем, как слепые люди пользуются компьютером, кодят и выполняют другие работы в 21 веке.
Читать дальше
Всего голосов 227: ↑224 и ↓3+221
Комментарии174

Блондинка в IT: чему гуманитарий может научиться у айтишников?

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

Читала на Хабре статью девушки-сервисного инженера, которая рассказывала о своих буднях в IT-офисе. Статья мне показалась не совсем полной, в основном потому, что героиня мало рассказала об особенных задачах инженера, при этом подробно “прошлась” по инфраструктуре компании.

Мне же, например, были интересны именно рабочие особенности, наложенные на гендерную принадлежность и корпоративную культуру компании. И тут я сама решилась написать для Хабра пост о том, как живется гуманитарию в IT-сообществе.
Читать дальше →
Всего голосов 21: ↑16 и ↓5+11
Комментарии14

Механические клавиатуры

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

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

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

Механические клавиатуры. Путеводитель.

Читать дальше →
Всего голосов 323: ↑313 и ↓10+303
Комментарии331

Походная аптечка сисадмина. Минимальный набор утилит для максимально эффективного решения проблем

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

Каждому сисадмину приходится иногда обслуживать компьютеры знакомых или совершать надомные выезды. В этом деле ему помогает проверенный набор утилит. Наш обзор расскажет только о бесплатных, не требующих установки и ставших стандартом де-факто.
Читать дальше →
Всего голосов 39: ↑26 и ↓13+13
Комментарии36

Microsoft назвала международные цены на Windows 10

Время на прочтение1 мин
Количество просмотров27K
Ресурс Neowin сообщает, что пользователи из Америки, Великобритании, Испании и других стран Евросоюза заметили изменение программы «Получить Windows 10» (Get Windows 10), которая с недавнего времени показывается в системном трее у пользователей Windows 7 и Windows 8.1. В окне программы стали отображаться цены на новую Windows 10 Home, релиз которой ожидается 29 июля этого года.
Узнать подробности
Всего голосов 22: ↑17 и ↓5+12
Комментарии17

Вайфай мне в розетку: прокидываем интернет нестандартным путём

Время на прочтение4 мин
Количество просмотров94K
Привет, Geektimes! Сегодня я хочу рассказать об одной штуковине, которая меня здорово выручила и помогла «починить» беспроводную сеть дома у родителей.

image

Картинка из комментариев к посту apcsb на Хабре про неочевидные нюансы WiFi

Началось всё с того, что один из провайдеров подключил очень-очень много квартир в доме и каждому повесил WiFi роутер в прихожей, вне зависимости от того, нужен он там или нет. Просто всем по сплиттеру оптики в витую пару, роутеру и выкидышу на телефонную розетку, пользуйтесь. В результате 2.4 ГГц диапазон оказался загажен настолько, что о 40 МГц полосе и думать не приходилось…
Читать дальше →
Всего голосов 40: ↑40 и ↓0+40
Комментарии43

Как заработать очки, даже не запуская игру

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

Как-то вечером, сидя за компьютером, я наткнулся на одну инди-игру под названием «Shoot First» (игру можно скачать абсолютно бесплатно с сайта автора, а за донат любого размера вы получите специальную версию с двумя новыми видами оружия и ещё одним видом уровней). Геймплей её довольно незамысловат — игроку необходимо бегать по этажам в поисках прохода на следующий уровень, при необходимости собирая различные предметы (карты, ключи, etc) и попутно убивая встретившихся на его пути врагов. В общем, этакий action roguelike. Несмотря на кажущуюся простоту, игра меня довольно сильно зацепила, и я потратил не один час, пытаясь добраться как можно дальше и заработать как можно больше очков.

Кстати, об очках. После смерти персонажа и ввода имени игра отображает онлайн-таблицу рекордов:

image

Наигравшись вдоволь, я решил разобраться, как она устроена и попытаться обмануть игру, сказав, что я заработал нереальное кол-во очков.

Как протекал процесс, и что из этого вышло, читайте под катом (осторожно, много скриншотов).
Читать дальше →
Всего голосов 39: ↑38 и ↓1+37
Комментарии25

Руководство по сетевой загрузке предустановочной среды Windows (WinPE)

Время на прочтение7 мин
Количество просмотров44K
Предустановочная среда может использоваться не только для установки операционной системы, но и как основа для инструментов системного администратора, например, восстановления системы, антивирусного лечения, диагностики сети и т.д. В данной статье будем рассматривать стандартный образ WinPE без добавления административных утилит, так как это тема для отдельной статьи.

Последовательность сетевой загрузки WinPE, начиная с версии 2.0, следующая:
  1. загружается сетевое ядро pxeboot.com;
  2. сетевое ядро загружает стандартный диспетчер загрузки bootmgr.exe, далее сетевая загрузка практически не отличается от загрузки с других носителей;
  3. диспетчер загрузки читает файл BCD (boot configuration data), где прописана конфигурационная информация (расположение загрузочных файлов), загружает необходимый шрифт (wgl4_boot.ttf) и драйвер виртуального диска boot.sdi, потом загружается образ WinPE;
  4. диспетчер загрузки передает управление программе, указанной в параметре path BCD-файла.

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

Как определить язык по виду иероглифов/закорючек?

Время на прочтение1 мин
Количество просмотров191K
Вот, задался таким вопросом… С помощью гугл транслейта и такой-то матери, родилась такая блок-схемка:



картинка кликабельна

Кому нужен сорец (в .docx): тут
Всего голосов 341: ↑329 и ↓12+317
Комментарии185

Eclipse + QT: установка и настройка

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

Если не рассматривать случай программирования в Emacs, что лично мне кажется пока неким толи анахронизмом, толи экстримом, постоянно сравнивая различные IDE с Visual Studio зачастую приходилось просто ужасаться. И главная проблема этих систем была в том, что за редким исключением они не работали из коробки без напильника.

Вторая проблема — юзабилити. Зачастую ниже среднего. Ранние версии KDevelop оставляли достаточно неоднозначное впечатление.

Третье, чего бы хотелось — интегрированного дизайнера интерфейсов. Его не было практически нигде, если не считать NetBeans (но только для Java), да MonoDevelop (GTK#). И хотя эти IDE весьма достойны, хотелось найти легкий способ программировать именно на C++ с минимальным количеством граблей.

В этой статье я хочу привести пошаговое руководство, что называется «для чайников», по установке на платформу Windows работоспособной конфигурации хорошей IDE Eclipse и хорошей библиотеки QT. Стартовую площадку, так сказать.

UPD: Что касается именно программирования в QT, то могу порекомендовать просто шикарную книжку на эту тему:
Jasmin Blanchette, Mark Summerfield: Разработка графического интерфейса с помощью QT3 (перевод Андрей Киселёв)

UDP2: Ещё литература:
Русский перевод документации из QAssistant
Qt4. Профессиональное программирование на C++
Jasmin Blanchette, Mark Summerfield: Qt 4. Программирование GUI на C++
Foundations of QT Development

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

Работа с Java в командной строке

Время на прочтение11 мин
Количество просмотров649K
Сейчас уже никто не создает программы в консоли. Используя любимую IDE, разработчик чувствует себя неуютно за чужим компьютером, где её нет.
Решив разобраться в работе Ant и Maven, я поймал себя на том, что не смогу собрать приложение без них в консоли.
В данной статье я постарался уместить все этапы проектирования демонстрационного приложения, чтобы не искать справку по каждой команде на просторах Интернета.
Читать дальше →
Всего голосов 75: ↑71 и ↓4+67
Комментарии25

Файловая система Linux полностью на tmpfs — скорость без компромиссов

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

Предыстория


Так сложилось, что уже пять лет мой раздел ntfs с операционной системой Windows располагается на рамдиске. Решено это не аппаратным, а чисто программным способом, доступным на любом ПК с достаточным количеством оперативной памяти: рамдиск создается средствами загрузчика grub4dos, а Windows распознаёт его при помощи драйвера firadisk.

Однако до недавнего времени мне не был известен способ, как реализовать подобное для Linux. Нет, безусловно, существует огромное количество линуксовых LiveCD, загружающихся в память при помощи опций ядра toram, copy2ram и т. д., однако это не совсем то. Во-первых, это сжатые файловые системы, обычно squashfs, поэтому любое чтение с них сопровождается накладными расходами на распаковку, что вредит производительности. Во-вторых, это достаточно сложная каскадная система монтирования (так как squashfs — рид-онли система, а для функционирования ОС нужна запись), а мне хотелось по возможности простого способа, которым можно «вот так взять и превратить» любой установленный на жесткий диск Linux в загружаемый целиком в RAM.

Ниже я опишу такой способ, который был с успехом опробован. Для опытов был взят самый заслуженный дистрибутив Linux — Debian.
Читать дальше →
Всего голосов 83: ↑74 и ↓9+65
Комментарии167

Информация

В рейтинге
1 220-й
Откуда
Украина
Зарегистрирован
Активность