Я не вижу ваших рук!

Январь 25, 2010 under Руки и головы

Итак, на начало 2010 года у меня 2 начатых и 15 непочатых проектов. (Непочатые — это просто идеи, которые было бы здорово реализовать.)

Над чем сейчас пытаюсь работать (в перерывах между написанием дипломной работы и сдачей одиннадцатой сессии)

  • Погружение в Python 3 — перевод с английского книги про Python 3
  • Эпиzод — программка для учёта просмотренных тайтлов любимых фильмов и сериалов с точночтью до эпизода (с прицелом на Windows, Mac OS X, Linux [desktop], Android)

Можно набигать и принимать участие.

15 интересных идей

Очень-очень секретные идеи. Никому не скажу. Разве что если хорошо попросите.

  • Избавлю от безделья скучающего программера.
  • Подкину идею для курсовой (с целью реализации в конечном счёте моих проектов).
  • Обучу программированию (C, C++/Qt, Java, Python…) удалённо (почта, жабер) с целью реализации в конечном счёте, как вы уже догадались, моих проектов. Вам скиллы и опыт участия в опенсорсных проектах, мне — бесплатная рабочая сила.
Январь 19, 2010 under Моё

Read more about this..

Ubuntu Anime Boston Button

Android (карманный многоцелевой человекоподобный робот)

Январь 6, 2010 under Моё
  1. Вдохнул-таки жизнь в своего «Героя».
  2. На «Афане» и «ФорПда» обитают одни тупые виндузятники, но только прочтение их тупых инструкций мне помогло найти путь к счастью на «зеАнлоке». Если вы вдруг собрались брать такой же, не пугайтесь, это наблюдается только на «серых» аппаратах, если вам не жалко лишних тысяч пять рублей отдать МТС, то у вас всё заработает сразу (кроме root access, конечно).
  3. Очередной раз убедился, что Гугл любит линуксоидов… местами…
  4. Осваиваюсь потихоньку.

Декабрь 14, 2009 under Моё

Read more about this..

Оказывается, IBM не только нежно любит нас, линуксоидов, но и всячески помогает программировать в этой системке, даже статьи интересные и полезные пишет, даже иногда про Qt (интересно, Nokia им за это платит?). Вносят, так сказать, свой вклад в сообщество. Ну молодцы, чо.

Сентябрь 24, 2009 under Моё

Read more about this..

в ответ на комментарий в клубе Linux

Кто там говорил, что под Линукс нету вирусов?

К вопросу о строении операционных систем и о моделях распространения приложений

Август 18, 2009 under Моё

в ответ на запись в дневнике h31

Мы тут с товарищем h31 завели интереснейшую дискуссию о подходах к созданию и распространению программ в Линуксах и других операционных системах. А именно, динамическая и статическая линковка, точнее, распространение приложений отдельно от общих библиотек или статическая линковка всех необходимых библиотек и распространение их вместе с приложением.

Сразу же возникают вопросы контроля версий и экономии объёма, но мы подойдём к ним чуть позже, сначала надо разобраться с точной формулировкой обсуждаемых вопросов.

Краткое содержание предыдущей серии: мы немного пофлудили, затем решили начать честный, аргументированный спор по всем правилам логики, да и завязли на этапе выработки общих точек опоры.

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

Мой уважаемый оппонент высказал мысль о том, что по сникернету нельзя посылать запросы. Практика же говорит, что в случае динамической линковки и раздельного распространения всё точно наоборот. Я как раз недавно начал разрабатывать аналог APT (дебиановского менеджера пакетов1) для сетей с ограниченным доступом к Интернету. Этот инструмент предназначен для более узкой модели — одна локальная сеть, имеющая хорошую (проводную) связь между любыми узлами, но с Интернетом связанную либо узким каналом (сюда же причисляются пользователи домовых сетей, экономящие на Интернет-трафике2), либо каналом, доступным ограниченному числу узлов, либо связь только по «сникерсу».

Эта программка работает примерно по такой схеме: список файлов, которые не найдены в локальной сети, переносится на флэшке или ещё как-нибудь поближе к Интернету, там файлы скачиваются и затем доставляются обратно.

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

Надеюсь, данным постом я достаточно подробно обрисовал применимость традиционной пакетной системы распространения ПО в рассматриваемой «замкадской» модели.





1 Есть аналоги APT и для Линуксов на RPM (APT-RPM), для Windows (Win-Get) и Mac OS X (Fink). Теоретически мою утилиту можно перенести и на них.

2 Для экономных пользователей правильные провайдеры устраивают кэширующие репозитории или зеркала. А если у вас неправильный провайдер, то читайте дальше.

Июль 22, 2009 under Моё

Read more about this..

Сыр Российский поделился ссылкой

alice-friendy.ya.ru/replies.xml?item_no=3064

Кстати о Туксе.
Симеиз, Крым

Android: how to close an app?

Май 24, 2009 under Моё

Залил вчера Андроид на свою чудо-машинку. Пока первая система, которая на мой взгляд может когда-нибудь стать труЪ мобильной ОСью. Сразу же столкнулся с проблемой, что непонятно, закрываются ли приложения, когда из них выходишь. Потому что в списке, вызывающемся при долгом нажатии AUX, новые иконки появляются, а старые не исчезают. И вот нагуглил:


In short, you need to keep on hitting the back button until it backs itself out to the home screen.

Long explanation:

1. If a program is doing something, then it will continue to run in the background.

2. If the program stops doing stuff and it is no longer in the foreground, Android keeps it in «hibernate» mode (in Windows terms). In other word, the system memory state of the program is dumped to storage memory.

3. When the program is loaded again, Android looks to see if there is an instance of that program hibernating. If so, it will load the hibernating instance; otherwise, a fresh new instance.

4. Android treats almost all applications as web pages, unless specifically told not to. What I mean is it keeps «browsing history» for each application so that when you hit «back,» you would be returned to the previous state of the application, just as if you hit «back» in a browser.

5. Putting everything together, what this means is that if you simply hit the home button, you might not be erasing the history portion of the application. This over time will kill your system memory.

You can try this out by going into Google Talk, keep on starting and closing conversations with people on your list. After a while, try hitting the «back» button and see if Android brings you back to the list of the 4 chat clients. It won’t. In fact, it will act as if you have not pressed anything. The reason is the previous state of Google Talk probably looks identical to the one you are navigating away from. Keep hitting the «back» button and you might see some interesting things, i.e. people who you know are offline would suddenly come online. You probably have to hit the button a dozen times before it finally exits you out. At this point, the memory dump for Google Talk is likely to be a lot smaller than if you hit the «home» button directly.

So you see, if you keep on using the «home» button, it won’t take long before both your memory and your battery get depleted, not to mention at some point opening up a hibernating app would instantly cause your G1 to crash and reboot.



В двух словах, продолжайте нажимать кнопку «назад» пока не выйдете к начальному экрану.

Длинное объяснение:

1. Если программа что-то делает, она продолжит делать это в свёрнутом состоянии.

2. Если программа перестаёт делать свои дела, и в это время находится в свёрнутом состоянии, Android её «усыпляет» (как говорят виндузятники). Другими словами, оперативная память программы сохраняется в долговременной памяти.

3. Когда программа снова запускается, Android смотрит, есть ли уже эта программа среди свёрнутых. Если есть, он её развернёт, в противном случае запустит новый экземпляр программы.

4. Андроит по умолчанию почти все приложения считает веб-страницами. Что это значит? Для каждого приложения он сохраняет историю переходов, и когда вы нажимаете «назад», вы возвращаетесь к предыдцщему состоянию приложения, как если бы вы нажали «назад» в браузере.

5. Соберём всё вместе. Если вы просто нажимаете кнопку «домой», часть истории приложения может остаться в памяти. Рано или поздно память закончится.

Можете попробовать сделать так: входите в Google Talk, открываете и закрываете разговоры с каждым из своих контактов в списке. Спустя некоторое время попробуйте нажать кнопку «назад» и посмотреть, как Андроид вернёт вас к списку из четырёх чат-клиентов. Ничего не произошло. На самом деле, он сделает вид, что вы ничего не нажимали. Причина в том, что предыдущее состояние Google Talk, возможно, выглядит точто так же, как то, в котором вы находитесь сейчас. Продолжая нажимать «назад», вы можете увидеть некоторые нтересные вещи, например, люди, которых вы видели отключившимися от сети, вдруг окажутся онлайн. Возможно, вам придётся нажать «назад» дюжину раз, прежде чем окнчательно выйдете. В этот момент сохранённая память Google Talk будет значительно меньше, чем если вы просто нажмёте «домой».

Как видите, если вы будете продолжать пользоваться кнопкой «домой», память и аккумулятор вашего устройства долго не протянут, не говоря уже о том, что в один прекрасный момент от открывания и сворачивания приложений ваш G1 упадёт и перезагрузится.

Оказывается, Гугл решил переизобрести Пальму, но на современном многозадачном и вебастом уровне. Пожелаем ему удачи на этом поприще!

Май 13, 2009 under Моё

Read more about this..

в ответ на комментарий в клубе Ubuntu

TODO: На досуге написать червя, поднимающего привилегии через беспарольное судо.

SchoolTool 1.0

Май 2, 2009 under Моё

Сыр Российский поделился ссылкой

SchoolTool 1.0

Для причастных к планированию школьных и вузовских занятий.