Search
Write a publication
Pull to refresh
28
0
Антон Патрушев @apatrushev

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

Send message

osvirtual.net: виртуальные образы операционных систем

Reading time2 min
Views3.9K

Истоки и причины


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

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

OSvirtual: от NextStep до aGNUla


Поэтому эту коллекцию — для себя и для интересующихся (вероятно, для немногих :) — выложил в сеть в виде сайта OSvirtual (есть и английская версия, пусть и сделанная по остаточному принципу). ОС, выложенные тут, — это либо совсем старые ОС, которые можно запускать разве что как ностальгические игрушки (и которые сейчас не продаются, а часто и свободно доступны для скачивания с официального сайта), либо ОС, по какой-либо причине мне интересные (мультимедиа-ориентированные дистрибутивы линуксов, например, или линуксы 5-7 летней давности и старше). Множество же современных мейнстримовых дистрибутивов линукса, которые без проблем находятся на VMPlanet или Linhost, меня особенно не интересовало…
Читать дальше →

Машинка делающая дырочки!

Reading time1 min
Views2.4K


Именно так лет через 10-20 будут думать школьники будущего, глядя на этот аппарат…
В прошлом посте (про принтеры) я упомянул о том, что рядом стояла интересная машинка. Ну вот, пришло время чуть ближе познакомиться с ней.
(большие картинки)
upd: перезалился… и типа кликабельно
Читать дальше →

HTC Tattoo первый бюджетный Android-смартфон от HTC

Reading time1 min
Views1.4K
HTC Tattoo

Пока все были увлечены обсуждением новинок, которые выкатила финская компания на Nokia World 09, стали известны подробности касательно нового смартфона компании HTC под кодовым именем Click. За прошедшее время Click сменил имя на более модное Tattoo, а также обзавелся стильным интерфейсом HTC Sense UI.

Tattoo будет основан на System-On-Chip Qualcomm MSM7225 частотой 528 МГц, оснащен 512 MB ROM и 256 MB RAM + 64 MB RAM у бейсбенд процессора. Устройство будет обладать емкостным резистивным экраном диагональю 2.8'' и разрешением 240x320 пикселей. Bluetooth, WiFI 802.11b/g, GPS, акселерометр, цифровой компас также в комплекте. Размеры устройства 106 x 55.2 x 14 мм, вес — 113 грамм.

Новинка появится в рознице в начале октября. Вполне вероятно, что Tattoo призван заменить Touch, Touch 3G и другие бюджетные смартфоны HTC.

Под катом фотографии в большом разрешении. Трафик!

О гриппе А (H1N1) с точки зрения программирования

Reading time6 min
Views17K
Учёные уже полностью дизассемблировали H1N1 и занесли его в вирусную базу NCBI Influenza Virus Resource. Там всё задокументировано в подробностях. Например, образец A/Italy/49/2009(H1N1) был обнаружен в носу 26-летней женщины, вернувшейся из Италии в США. Вот первые 120 бит его генетического кода.

atgaaggcaa tactagtagt tctgctatat acatttgcaa ccgcaaatgc agacacatta

Сколько бит убьёт человека?
По приблизительным подсчётам, общий размер исходников H1N1 составляет 26 022 бит, а если исключить служебные стоп-сигналы (указывают на окончание каждой белковой последовательности), то исполняемый код состоит примерно из 25 054 бит. Это число является приблизительным ещё и потому, что в вирусе присутствует механизм генерации избыточного мусора для маскировки от антивирусов.

Итак, получается около 25 килобит или 3,2 килобайта. Таков объём кода для программы, имеющей ненулевые шансы убить человека. H1N1 написан гораздо эффективнее, чем компьютерный вирус MyDoom размером около 22 КБ.

Очень унизительно, что меня могут убить всего 3,2 КБ генетических данных. Впрочем, в 850 МБ человеческого генома по любому должны быть дыры для парочки эксплойтов.
Читать дальше →

Здравствуй Араб.net (Часть 2)

Reading time6 min
Views1.8K
image
После публикации первой части, я еще раз убедился, что тема интересна многим на хабре. Ну что же, тогда продолжим, часть 2 — это продолжение первой части, то есть обзор популярных сервисов в арабском сегменте сети. В чем-то это продолжение «историй успеха» просто они (так сложилось) пересекаются с теми сервисами владельцев которых, я хорошо знаю, а по этому не стоит упрекать меня в излишней эмоциональности и субъективности, рассматривайте это скорее, как — «откровения инсайдера»…
Читать дальше →

Меняем меню: расширения волнового клиента

Reading time4 min
Views491



Как известно, в Google Wave можно использовать два типа расширений (extensions) — гаджеты и роботы. Напомню: 
Гаджет — небольшая программка, которая выполняется на стороне клиента, принадлежит определенной волне и позволяет ее участникам взаимодействовать между собой, поскольку они все могут менять статус гаджета и одновременно видят эти изменения. Наглядный пример — гаджет голосования. Вы проголосовали «за» или «против», гаджет учел ваш голос и изменил таблицу результатов. Все участники волны, в которую внедрен данный гаджет, увидели это изменение.
Робот — исполняется на стороне сервера. Можно даже сказать «на стороне серверов», поскольку сейчас роботы размещаются «в облаках», на серверах Google AppEngine. Робот — равноправный участник волны. Так же, как люди, он имеет доступ к содержанию волны, может его изменять, добавлять или удалять участников данной волны, а также создавать новые «блипы» (реплики в обсуждении) и новые волны.

Возникает вопрос, а как добавлять роботов или гаджеты в волну? Поскольку роботы — это полноценные участники волны, то их можно добавлять точно так же, как и людей. Заносите адрес робота в свою адресную книгу, а потом оттуда по мере необходимости подключаете робота к нужной волне. Гаджет вставляется с помощью специального пункта в меню «Debug» (мы сейчас говорим о волновом клиенте, который используется в «песочнице» Google Wave Sandbox — wavesandbox.com).

Однако со временем понимаешь, что этот процесс нужно сделать более гибким. Часто приходится подключать сразу несколько роботов к волне. Или нужно вставить какой-то собственный гаджет, которого нет в общедоступной библиотеке (или, как правильно, «гаджетнице»? :). Для решения этих вопросов мы имеем в данное время простой механизм расширения интерфейса волнового клиента. С его помощью мы можем добавлять дополнительные кнопки в меню редактирования блипа и в меню создания новой волны. Вот как это выглядит.
Читать дальше →

Рефакторинг: миссия (не)выполнима?

Reading time4 min
Views2.1K
Что делать, если исходники проекта напоминают болото, а жить в нем планируется еще долго? Рефакторинг исходных кодов проекта — это более выгодная из двух альтернатив разобраться с означенной проблемой. Вторая из альтернатив — выбросить и переписать все заново — обычно не устраивает, по разным причинам.

А как делать этот самый рефакторинг, если даже неизвестно, с чего начать? Как осушить болото кода и не утонуть нем?

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

Читать дальше →

Zyxel 206M2 — одомашниваем Wimax

Reading time1 min
Views1.2K
Wimax становится все более популярным во всем мире. Компания Yota развертывает сеть Wimax в Москве и Санкт Петербурге. Очевидно, что прогресс не стоит на месте и производители железа предлагают все более интересные решения. Отличилась компания Zyxel, которая представила миру сертифицированный Wimax модем Zyxel 206M2. Этот гаджет необычной формы — нечто иное, как мобильная станция wimax со встроенным роутером и поддержкой VoIP телефонии.
img_max-206m2_p_hi.jpg - upload images with Picamatic

Читать дальше →

Google разрешил оффлайн-доступ к Gmail

Reading time1 min
Views486
Компания Google объявила о том, что доступ к ее сервису электронной почты Gmail теперь можно получать без подключения к Сети. Запуск этой функции, позволяющей пользоваться Gmail без связи с Сетью, ожидали еще с середины 2007 г. Оффлайн-доступ к Gmail обеспечивается с помощью технологии Google Gears, которая сохраняет приложение на жестком диске пользователя, сообщает АР. В оффлайн-режиме пользователи могут читать пришедшие сообщения, а также писать письма, которые будут автоматически отправлены сразу после возобновления связи с Сетью. Чтобы использовать новую возможность Gmail, в меню «Settings» сервиса нужно активировать функцию «Gmail Offline»

источник uinc.ru

Как меня учили работать. День первый.

Reading time2 min
Views721
Командировка — это всегда что то новое. В этот раз я буду постигать науку быстро и хорошо работать. Учителя шведы.

Кратко суть: «Think better — write faster». Очень хорошо подходит для небольших команд.

Читать дальше →

Один крутой Gist: whiteboardCleaner

Reading time1 min
Views30K
Доброго времени суток уважаемые хабравчане. На просторах интернета мне повстречался один миниатюрный и очень интересный Bash скрипт. С помощью ImageMagick он потрясающим образом обрабатывает фотографии белой учебной доски, очищая «содержимое» от всего лишнего:

#!/bin/bash
convert $1 -morphology Convolve DoG:15,100,0 -negate -normalize -blur 0x1 -channel RBG -level 60%,91%,0.1 $2


До:


image

После:


image
Читать дальше →

QtCreator: Qt кросс-компиляция из linux 64 в linux 32, win32, win64 и Mac OS X; upx, usb, dmg, etc

Reading time14 min
Views83K


Библиотека Qt позволяет делать действительно кроссплатформенные приложения. Единожды написанный код можно откомпилировать под многие операционные системы. Но проблема именно в слове «компилировать», т.к. подразумевается, что необходимо перезагрузиться под целевую систему, иметь в ней настроенную среду разработки, установленный и настроенный зоопарк библиотек. Спасает кросс-компиляция — компиляция, производящая исполняемый код для платформы, отличной от той, на которой исполняется.
Читать дальше →

Кроссплатформенное приложение на Qt: Mac App Store

Reading time7 min
Views15K
После завершения разработки под OS X может остаться ощущение незавершенности — для полного счастья хотелось бы видеть свое приложение в каталоге, тем более, что это, пожалуй, лучшая площадка для продажи десктопных приложений. На эту тему есть статья времен Qt 4.8 в официальном блоге, и еще более старая на хабре. К счастью, больше нет необходимости пересобирать Qt, однако с приходом OS X 10.9 некоторые баги стали критичными, приходится выкручиваться.
Читать дальше →

Делаем свой персональный Skype, пошаговая инструкция создания WebRTC приложения

Reading time4 min
Views139K
WebRTC

WebRTC позволяет реализовать real-time аудио/видео связь через браузер (firefox и chrome).

В этом топике я расскажу как реализовать простейшее WebRTC приложение.
Читать дальше →

Logging. «Из коробки»

Reading time8 min
Views6.3K
Ведение логов применяется в каждом программном продукте, дожившем до стадии продакшена. Erlang предоставляет программистам целую экосистему, которая включает и механизмы слежения за приложением. В этой части я рассмотрю именно функционал «из коробки».
Читать дальше →

FileAPI 2.0: Загрузка файлов на сервер год спустя

Reading time11 min
Views70K
FileAPI 2.0Привет Хабр! Примерно год назад я представил вашему вниманию первую версию open-source библиотеки FileAPI, предназначенную для работы с файлами на клиенте и последующей загрузки на сервер.

За это время был пройден долгий путь. Библиотека заработала 670+ звезд и 90+ форков. С помощью github-сообщества удалось исправить множество «детских» проблем и внести ряд улучшений. Было закрыто более 100 тасков, и благодаря Илье Лебедеву сделана загрузка файлов по частям. Сегодня я с гордостью хочу представить вам FileAPI 2.0.
Читать дальше →

Оператор запятая

Reading time6 min
Views37K
Продолжаем тему операторов, на этот раз вас ждет рассказ об операторе запятая.

Начнем с забавного твита:

Если изображение не отображается, пожалуйста, напишите автору!

'c' в конце — это оператор запятая. Последняя в списке значимых операторов, мало документированная, но очень полезная. Она не так распространена, но она мне очень нравится. Она проста, элегантна, и с ней лучше быть в хороших отношениях.

Что она делает?


Оператор запятая выполняет оба операнда (слева направо) и возвращает значение второго оператора. (MDC)
var a = (7, 5);
a; //5

var x, y, z
x = (y=1, z=4);
x; //4
y; //1
z; //4
Читать дальше →

Создание телефона в браузере с использованием WebRTC и сервиса Plivo

Reading time6 min
Views5.2K
Недавно был разработан стандарт WebRTC, позволяющий организовать потоковую передачу данных между браузерами. Chrome 17, Opera 12, Firefox 18 (а также версии, выше указанных) в той или иной мере уже поддерживают этот стандарт. Так же существует расширение webrtc4all, которое позволяет остальным браузерам работать с WebRTC. Я не буду здесь описывать преимущества, недостатки и перспективы технологии, перейду сразу к практическому использованию.
Читать дальше →

Обручальное кольцо светится, если взять за руку

Reading time2 min
Views192K


Американский инженер Бен Коукс (Ben Kokes), собираясь предложить руку и сердце любимой девушке, смастерил обручальное кольцо с резонансным трансформатором и тремя маленькими светодиодами среди драгоценных камней. Идея в том, что кольцо невесты начинает светиться, когда жених берёт её за руку.
Читать дальше →

Оптимальные опции для x86 GCC

Reading time4 min
Views57K
      Распространено мнение, что GCC отстает по производительности от других компиляторов. В этой статье мы постараемся разобраться, какие базовые оптимизации GCC компилятора стоит применить для достижения приемлемой производительности.

Читать дальше →

Information

Rating
Does not participate
Location
Bonn, Nordrhein-Westfalen, Германия
Date of birth
Registered
Activity