Весь контент Michail
-
Тестирование возможностей форума
up
-
Блондинка из Америки зазвездилась
Вообще-то, вопрос не такой простой. Её же не Америку попросили на карте найти, а объяснить, почему 20% американцев не могут. Я навскидку не знаю, как это объяснить, чтоб не обидеть. Про то что карт нет, конечно не стоило... http://forum.academ.org/html/emoticons/smile.gif
-
Клиент для чтения форума
Программа обновлена - поправлено значительное количество мелких и средних багов. Взять полный дистрибутив можно по адресам, указанным выше. Те, кто уже установил программу, могут обновить её не теряя своих настроек по ссылке Fast_Forum_Update.exe (независимо от сети)
-
Академгородок сегодня, в фотографиях
Прикольная штука http://forum.academ.org/html/emoticons/rolleyes.gif Хочется сказать "всё гениальное просто", но учитывая, что она ещё и по разделам умеет показывать... Много времени ушло? Она тоже по всем разделам и темам ходит и парсит - ищет картинки? Даже сейчас, пока мы тут все сидим? А большие картинки в окошке поверх я бы не показывал, оно же всё закрывает. Лучше уж пусть новая закладка браузера открывается. Или хоть бы escape какой-то в том окошке. Кстати, обещаны стоп-кадры жизни Академгородка и где они? Народ жаждет кнопок 14 августа и 15 августа
-
Клиент для чтения форума
Теперь дистрибутив свежей версии можно скачать по ссылке:Академ:орг - Fast_Forum_AcademOrg_Setup.exeHomeNet - Fast_Forum_HomeNet_Setup.exeОКС-1 - Fast_Forum_OKS1_Setup.exeТрафик бесплатный. В дальнейшем версия будет выкладываться только по этим адресам
-
Клиент для чтения форума
Большое спасибо за отзыв! Вместо кнопки Home есть кнопка с иконкой Internet Explorer'а (в меню - пункт Действия / Открыть... в браузере). Чистые экраны возникли потому что страницы ещё не загрузились. Буду дальше работать над ускорением загрузки. Да, не скоро клиент будет со скоростью аськи работать и непросто это будет сделать... Краткие списки - хорошая идея. Можно наверное, просто урезать подписи пользователей - уже больше на экран поместится. Плюсики я пока не готов сделать за разумное время, да и надоест, наверное, их нажимать. Поиск сам давно хочу сделать, должно быть прикольно, но пока есть более важные задачи. С потреблением трафика есть идея загружать картинки только с местного форума, но что-то более интеллектуальное вряд ли имеет смысл - в браузере же мы тоже в общем случае не знаем, куда приведёт ссылка
-
Клиент для чтения форума
Рад представить вашему вниманию новую версию программы. Нововведения: список избранных тем с отображением количества новых сообщений в них,ускорено открытие тем – программа сама умеет закачивать темы с «местного» форума,возможность выводить общий список тем из подфорума и его вложенных подфорумов. Запущен круглосуточно работающий сервер и теперь программа доступна из сетей Академ.орг, HomeNet и ОКС-1. Трафик до сервера бесплатен для всех сетей. Доступ предоставляется к форумам Академгородка и сети HomeNet, причём, хотя между Академ.орг и HomeNet нет пиринга, собственно сообщения форума получаются бесплатно. Но! Отображаемые картинки (включая аватары и смайлики), ссылки из «чужой» сети, на которые вы кликаете чтобы открыть в веб-браузере, передаются через Интернет. Скачать программу по-прежнему можно с crosstalk или mihas из папки FastForum_ваша сеть. Новая версия выглядит примерно так:
-
Клиент для чтения форума
Надо же, пиринг с HomeNet всё-таки отключили. Что ж, мир уже не будет прежним, будем делать версию с локально сохранёнными смайликами... Когда удастся настроить выделенный сервер, клиент будет доступен в обеих сетях с бесплатной информацией с обоих форумов. С картинками только (и прикреплёнными файлами) будет неприятно, их придётся отключать чтобы не тратить трафик
-
C++ варианты
QUOTE (AmbassadorKosh @ Jun 19 2007, 16:02) QUOTE (Michail @ Jun 19 2007, 11:27) А что с выравниванием? Разве что размер самого большого типа будет на одной платформе один, а на другой - чуть больше. Есть директива компилятора с величиной выравнивания Строго говоря выравнивание для каждого типа T --- это некоторые ограничения на адрес, который может иметь тип T. Обычно это ограничения вида "адрес делится на". Так вот адрес памяти выделенная под массив char не обязан удовлетворять требованиям на выравнивание для адреса памяти выделенной скажем под double. По границам int'a, вроде, хоть как выравняется. По границам 8-ми байт... не помню, как у нас, исходников под рукой нет. Наверное, дополнительный int вставили, делов-то. QUOTE Решалась ли в вашем варианте проблема "Never-Empty". Если да, то как. К сожалению, даже не помню что это такое. В целом, работает наш вариант замечательно, даже прикрутили возможность посматривать в дебаггере содержимое некоторых простых типов. Раньше даже записанный int нельзя было по-человечески посмотреть
-
C++ boost
Буст вообще хорошая вещь, я смарт-поинтеры из него использую без проблем http://forum.academ.org/html/emoticons/cool.gif , но в принципе надо осторожно к таким вещам подходить, особенно к вариантам-визиторам, плохо сочетающимся с С++ и потому тяжёлых для написания и для компилятора
-
C++ boost
QUOTE (anpol @ Jun 18 2007, 23:39) QUOTE (Nox Metus @ Jun 18 2007, 17:40)QUOTE (Michail @ Jun 18 2007, 14:30)Мой совет - будьте, люди, проще. Лучше самому написать с полным пониманием того, что происходит, чем на более поздних этапах бороться с проблемами из-за сложности устройства конструкции или неполного понимания.Чушь. Обоснуйте доказательно, что это лучше. Причем, без аргументов, сводящихся к вашей личной убежденности. Не обращая внимания на слово "чушь", которое у автора является непременным началом "аргументированной" дискуссии (наверное, это упреждающий плевок в лицо?) хочу всё же заметить, что boost-1.34 вышел 14 мая 2007, а boost-1.33.1 - 5 декабря 2005. Между ними прошло один год, четыре месяца и двадцать дней, в течение которых пользователи буста были один на один с его багами. То есть вы могли либо 1) брать его исходники из CVS (~80Mb), либо 2) самостоятельно фиксить в нём баги, либо 3) самостоятельно написать то же самое, только проще и понятнее. Обычно последний вариант - он худший самый, но в случае с бустом традиции нарушены, потому что 1) его код писали не вы, не я, а хрен знает кто, 2) его код интенсивно использует метапрограммирование и поэтому для человека практически не читабелен, 3) его код весит много (десятков мегабайт), а пользы приносит мало (то, что вам нужно, обычно умещается в пару сотен килобайт), 4) его код релизится раз в 1,5 года, в течение которых вы не можете ждать. Вот, золотые слова http://forum.academ.org/html/emoticons/smile.gif . Добавлю, что в большом проекте вряд ли кто-то будет менять версию библиотеки даже за полгода до релиза. QUOTE Он не читабелен только если нет навыка и желания его читать. Впрочем, у меня за многолетний опыт общения с boost читать с лупой его код возникала необходимость до крайности исключительно редко. И сколько бы я приобретал навык его читать? Я надеюсь мой пример, когда надо было портировать вариант на конкретный компилятор достаточно личностно-независим? Можно сказать, что это случай необходимости поддержки буста, т.е. хоть и не баг, но что-то надо было поменять. В этом случае я как раз поимел проблемы из-за их могучего метапрограммирования - пытался выкусить подмножество хашников и разобраться, как это работает. Кстати, там не только метапрограммирование было сильнО, но и дефайнопрограммирование http://forum.academ.org/html/emoticons/biggrin.gif - для создания шаблонов с 20-ю аргументами, с 21-м и т.д. Фишка в том, что за время, сравнимое со временем, потраченным на попытки разобраться, был написан свой вариант QUOTE Там утилитка есть, которая выделяет из всего буста только нужные вам файлы. Старожилы поговаривают, что есть система, которая компилирует небольшие тестики и в зависимости от их прохождения/непрохождения активирует в коде workaround'ы... Сейчас спросил коллегу, который довольно активно и давно использует буст, он не знал, что есть такая утилитка. К слову, в тот злополучный момент портирования варианта у меня даже не было возможности что либо кроме компилятора запустить на той платформе. Что можно сказать, "глобализация", "всякое в жизни бывает"...
-
C++ варианты
QUOTE (dura @ Jun 19 2007, 11:36) ну тогда уж гораздо логичнее union { int int_value; float float_value; std::string *string_value; } и рядом enum с типом. один фиг new вы вызываете http://forum.academ.org/html/emoticons/smile.gif и никакого массива из char'ов Ну может и логичнее, но вместо сложных типов мы получаем указатель и необходимость выделения/удаления второго куска памяти. А по сути так и есть, только хитро завёрнуто чтобы обеспечить функции типа Get<имя типа>()
-
C++ варианты
QUOTE (AmbassadorKosh @ Jun 18 2007, 17:49) QUOTE (Michail @ Jun 18 2007, 12:21) Как-то не нашли мы ничего подходящего и умный коллега сам сделал вариант. Суть там в том, что есть массив char'ов с размером максимального типа и в нужный момент на нём вызываается new, т.е. конструктор нужного типа. Маленько пришлось пошаманить дефайнами, но многие люди сходятся во мнении, что это гораздо меньшее извращение чем шаблоны со списками типов. А как в таком решении дела обстоят с выравниванием? А что с выравниванием? Разве что размер самого большого типа будет на одной платформе один, а на другой - чуть больше. Есть директива компилятора с величиной выравнивания
-
C++ boost
QUOTE (Nox Metus @ Jun 18 2007, 12:30) QUOTE (Michail @ Jun 18 2007, 12:21)Уже точно не помню, кажется, сам вариант можно было скомпилировать, а визиторов - нет, нужны были шаблоны на шаблонах http://forum.academ.org/html/emoticons/angry.gif .Лучше бы помнить поточнее. Если посмотреть таблицу портабельности boost::variant, то видно, что GCC 3.3.1 поддерживает все фичи библиотеки. GCC 2.95.3 поддерживает все, кроме make_variant_over. Предполагается, что boost::variant на 100% ANSI совместимом компиляторе будет работать без проблем, кроме того, авторы предприняли специальные усилия для нормальной работы библиотеки несмотря на баги разных известных компиляторов. Т.е. ваша информация говорит лишь о том, что у вас был какой-то экзотический не совсем прямой компилятор. Но зачем тогда на библиотеку-то пенять? Выбор GCC был вне наших возможностей, надо было просто сделать чтоб работало. Соответственно для нас буст не подошёл, так что можно сказать, что библиотека виновата своими высокими требованиями к компилятору QUOTE QUOTE (Michail @ Jun 18 2007, 12:21) Эффективность, кстати, высокая Эффективность чего высокая? И по сравнению с чем она высокая? Эффективность работы при задействовании визиторов, то есть функций типа ToString(Variant). В отличие от визиторов Loki, которые у нас работали за линейное время - пока нужный тип не найдётся рекурсивно вызывается функция. Вобщем ладно, я могу нагнать, потому что сам в этих вещах не разобрался - досталось в наследство, а желания разбираться никакого не было. Кажется, уже нагнал - не бустовский вариант у нас был изначально, а Loki'шный, бустовский я пробовал прикрутить чтобы собрать под Солярисом/Линуксом. Мой совет - будьте, люди, проще. Лучше самому написать с полным пониманием того, что происходит, чем на более поздних этапах бороться с проблемами из-за сложности устройства конструкции или неполного понимания.
-
C++ варианты
На работе пользовались бустовским вариантом, потом, когда стали под Солярис и Линукс портировать, пришлось его нахрен выкосить. Уже точно не помню, кажется, сам вариант можно было скомпилировать, а визиторов - нет, нужны были шаблоны на шаблонах http://forum.academ.org/html/emoticons/angry.gif . Как-то не нашли мы ничего подходящего и умный коллега сам сделал вариант. Суть там в том, что есть массив char'ов с размером максимального типа и в нужный момент на нём вызываается new, т.е. конструктор нужного типа. Маленько пришлось пошаманить дефайнами, но многие люди сходятся во мнении, что это гораздо меньшее извращение чем шаблоны со списками типов. Эффективность, кстати, высокая, одно или два косвенных обращения через подобие таблицы виртуальных функций
-
Клиент для чтения форума
QUOTE (Minoru @ Jun 13 2007, 11:37) Тэкс.... А как же отпетые линуксоиды, у которых нетю винды, а WINE некузяв по идеологическим соображениям? http://forum.academ.org/html/emoticons/smile.gif Да и просто люди, которые любят совать свои тентакли в код программ, и заниматься "исследованиями и разработками"? http://forum.academ.org/html/emoticons/smile.gif Это ко мне вопрос? Что, типа, как же я мог одновременно не выпустить версию для Юникс? http://forum.academ.org/html/emoticons/smile.gif
-
Клиент для чтения форума
QUOTE (fiend @ Jan 10 2007, 14:29)У IXBT есть rss, причём как общие, так и по разделам. Не нашёл, где они это говорили... http://forum.academ.org/html/emoticons/blink.gif Я всё-таки нашёл ту тему: http://forum.ixbt.com/topic.cgi?id=5:3813. Правда RSS действительно сделали http://forum.academ.org/html/emoticons/blink.gif. Darkmonk, посмотрел я Exler'овский клиент, поговорил с автором. Автор - замечательный человек, всё мне рассказал, но работать дальше над своим или моим клиентом у него большого желания нет. Клиент его мне не очень понравился, интерфейс достаточно неказистый, а на счёт архитектуры, у нас практически нет общих мест, то есть что-то такое классное взять оттуда и вставить ко мне не получится. RSDN’овский клиент красивый, собака…, но интерфейс его, недружелюбность к неопытному пользователю-непрограммисту местами просто поражает. А от их разговоров про клиента у меня осталось впечатление, что все обсуждения сводятся к «база данных не работает». Я так понял, он жёстко завязан на то, чтобы хранить архив данных в SQL-БД - чтобы трафик по максимуму экономить. Но на установку БД ради клиента к форуму никто не пойдёт. Вобщем, как ни хотелось взять что-то готовое, придётся идти своим путём. Пока своим, а там посмотрим. За твою инициативность, Darkmonk, я готов оплачивать время, которое ты тратишь на работу с моим клиентом. Не пожизненно, правда http://forum.academ.org/html/emoticons/biggrin.gif , а, скажем, 10 часов по 50 р. в час. Дальше – в зависимости от ценности найденных тобой багов и пожеланий. Но только не так, что один раз запустил на весь день и забыл про него, а именно когда что-нибудь в нём нажимаешь или читаешь. Отзывы, проблемы – сюда, вопросы по деньгам – вон в ту тему или лично мне. Потом напишешь, как тебе деньги отдать, лучше номер мобильника, чтобы просто перечислить на него.
-
Клиент для чтения форума
Представляю вашему вниманию новую версию клиента. По примерным подсчётам учтено более половины пожеланий пользователей http://forum.academ.org/html/emoticons/rolleyes.gif - появились кнопки окон, автоподгонка размеров окон и разбивка тем по страницам. Плюс сделана закачка форума Homenet и показ последних открывавшихся тем с индикацией появления новых сообщений в них. [Шепотом] А ещё можно настраивать размер шрифта текста. Извиняюсь за долгую задержку, пришлось очень сильно наворачивать логику работы и тяжело её отлаживать. Пока не решил до конца проблему с хостингом, так что пока сервис будет доступен только «днём». Как только будет настроен выделенный сервер, имеющиеся клиенты автоматически подключатся к нему. Скачать можно там же: ftp://crosstalk.academ.org/exchange/FastForum, ftp://mihas.academ.local/upload/users/FastForum или в P2P std.academ.org.
-
Чего еще нет у Нас в Академгородке?
QUOTE (Андрей II @ Jun 11 2007, 16:04) QUOTE (Kuzja @ Jun 11 2007, 14:11) QUOTE (Андрей II @ Jun 11 2007, 13:24) Тир есть в общагах ГПТУ-55 и в с.к. НГУ http://forum.academ.org/html/emoticons/smile.gif Боулинг в Батиссо ПТУ это не кошерно, да и с кем там договариваться то? А в батиссо нет уже боулинга. Ну тогда в с.к. НГУ http://forum.academ.org/html/emoticons/smile.gif В НГУ кого попало не пускают, типа, надо в секцию записываться. А ещё было бы классно чтобы в тире был большой выбор различной пневматики. Скажем мне охота пострелять из "Дрозда", который очередями стреляет, но покупать его ради двух дней развлечений неохота
-
пневматический пистолет
Был Иж-53М, как-то так. Хорошая штука. Успел настреляться из него и не было никаких проблем. Взводить, правда, надо, но насколько я знаю, такие считаются более точными - давление газа не меняется от выстрела к выстрелу. Стоит около тысячи
-
помогите по разделам на харде
Уж не знаю http://forum.academ.org/html/emoticons/rolleyes.gif . По идее, винда про него не знает, значит можно. Не знаю. Похоже на дистрибутив винды, может на случай если какая-нибудь прога попросит диск, с которого она ставилась
-
помогите по разделам на харде
Это система восстановления операционки - в большом разделе лежит заархивированная установленная система, копия той, с которой ты работаешь после первого включения. Сам не запускал, но по идее, даже со сломанным основным разделом эта штука должна позволять восстановить систему в исходное состояние. У меня было немного не так, 48 МБ первый раздел и 3 ГБ последний. Большой я удалил, оставив загрузочным раздел с основной системой - работает
-
Продам видеокарту ASUS GeForce 6600GT AGP
Ух, сколько желающих! Хотите таким образом сказать, что дёшево продаю? http://forum.academ.org/html/emoticons/biggrin.gif Ну давайте, карта уйдёт тому, кто предложит максимум в соответствии с тем, кто когда написал. Т.е., :-( если ты предлагаешь 2600 и никто - больше, ты её получаешь. На коробке написано N6600GT, на чипе я уж не полезу смотреть
-
Продам видеокарту ASUS GeForce 6600GT AGP
128 MB DDR3 памяти. Весь комплект - коробка, диски... Хорошая видюха, быстрая (если памяти хватает) и довольно тихая. Возраст - год с небольшим Думаю, 2400 - нормальная цена Продано за 2600. Всем спасибо
-
Сколько людей установило у себя .NET
QUOTE (MuratMusic @ Feb 23 2007, 17:16)Боюсь, что редактировать варианты ответов уже невозможно. Узнать о том, установлена ли платформа NET можно в Панель управления -> Установка и удаление программ. Не, это если ставил сам. У меня, как оказалось, .NET framework есть (ещё бы, стоит 2003-я Студия). ... А, нет, вру, в Панели управления тоже есть, не заметил. http://forum.academ.org/html/emoticons/blink.gif Нашёл такую инструкцию: Как определить установлен ли .NET Framework? · Для .NET Framework 1.0. В реестре если в ключе HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\policy\v1.0 существует значение 3705, то установлен .NET Fremework 1.0 · Для .NET Framework 1.1. Почти точно также. В ключе [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\policy\v1.1] ищем значение 4322. А еще можно узнать наличие .NET Framework у клиента в Web приложениях. Дело в том, что При инсталляции .NET Framework расширяется строка user agent?а Internet Explorer. Так при установленной версии 1.1 .NET Framework она будет выглядеть примерно следующим образом: ?Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)?. Эта информация для User Agent?а также хранится в реестре в ключе: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent\Post Platform]. В ASP.NET приложении ее можно прочесть таким образом: Request.ServerVariables["HTTP_USER_AGENT"]