Здравствуйте, Кирилл Осенков, Вы писали:
КО>Зверёк, а на чем ты собственно пишешь, если не секрет?
на данный момент создаю основную систему классов — на С++, естественно
Интерфейс думаю на Билдере — не хочется очень уж много возиться с МФСями унд ВТЛями — да и знаю я их похуже.
По большому счету, с Билдером в смысле скорости и удобства создания интерфесов никто не сравнится
ЗХ>на данный момент создаю основную систему классов — на С++, естественно ЗХ>Интерфейс думаю на Билдере — не хочется очень уж много возиться с МФСями унд ВТЛями — да и знаю я их похуже.
ОК. Хозяин барин. А почему не .NET? Не C#? (Мы с тобой флеймить не будем, как скажешь, так и будет — мне просто интересно, почему такой выбор).
Здравствуйте, Кирилл Осенков, Вы писали:
ЗХ>>на данный момент создаю основную систему классов — на С++, естественно ЗХ>>Интерфейс думаю на Билдере — не хочется очень уж много возиться с МФСями унд ВТЛями — да и знаю я их похуже. КО>ОК. Хозяин барин. А почему не .NET? Не C#? (Мы с тобой флеймить не будем, как скажешь, так и будет — мне просто интересно, почему такой выбор).
не, ну ты будешь смеяться. не знаю я его. и в глаза не видел!
(кстати, для небольшой шароварной програмки требовать с собой 25-метровый NET — некузяво)
ЗХ>не, ну ты будешь смеяться. не знаю я его. и в глаза не видел! ЗХ>(кстати, для небольшой шароварной програмки требовать с собой 25-метровый NET — некузяво)
да, шутки шутками, а правда твоя я бы вот на ДотНете писал, т.к. C++ не знаю
Вот вчера наткнулся. http://www.pindersoft.com/sourcecode.htm Правда, мне не понравилось. Если бы было бы такое же, но еще чтобы файлы можно было бы к записям цеплять...
Я для себя создал структуру подкаталогов (которая иногда менялась) и пользуюсь. Структурируется все разбиением по категориям, причем все нацеленно прежде всего на удобную работу и поиск файлов и каталогов для текущих проектов и часто-используемых-вещей:
(ниже приведены смысловые аналоги каталогов, у меня они все на английском и названы в нужном порядке по алфавиту для удобства просмотра в сортированном виде)
Графика
Звукозапись
Композиторство
Разработка
Дизайн(R&D)
Движки/технологии
Игры
Веб
Аутсорсинг
Утилиты
Мысли
Доки
Демки
Статьи
Писанина
Избранное-любимое (фильмы,книги)
Игры
Лучшие
Классные
Эмуляторы
Freeware/Shareware
Хорошие
MMORPG
MUD
PBeM
Римейки
Ретро(коллекция)
+Доки
+Редакторы
+Карты
+Сохраненки
+Утилиты
Игры-временные
Почта
Архив(по годам)
Сеть
Программы
Расшаренное
Хранилище
Программы(инсталляторы)
Код
Библиотеки (SDL,GDIPlus,boost,FMOD,ogg,stlport,etc.)
SDK
Исходники(игр,движков)
Доки
Книги
Картинки
Фотографии
Музыка(mp3,mod,midi,sid,etc.)
Звуки
Демки(демосцена)
"Флэшки"
Видео
Работа
Пока-не-сортированное(периодически раскидывается)
Здравствуйте, EyeGem, Вы писали:
EG>(ниже приведены смысловые аналоги каталогов, у меня они все на английском и названы в нужном порядке по алфавиту для удобства просмотра в сортированном виде)
А как это?
EG>Пока-не-сортированное(периодически раскидывается)
Н-даа, у меня сейчас в пока-не-отсортированном этак 900 ссылок Но это уже вопрос моей (полностью отсутствующей) самодисциплины
Здравствуйте, Кирилл Осенков, Вы писали:
КО>Здравствуйте, EyeGem, Вы писали:
EG>>(ниже приведены смысловые аналоги каталогов, у меня они все на английском и названы в нужном порядке по алфавиту для удобства просмотра в сортированном виде) КО>А как это?
Так, чтобы названия были краткими, максимально простыми и шли в субъективно-удобно-используемом порядке. В примере ниже заметь вляиние этих факторов на порядок и группировку каталогов.
Пример:
Games\
Best - здесь любимые и самые лучшие игры (первые в списке!)
Cool - здесь понравившиеся, но не дотягивающие до Best (вторые в списке!)
Emul - эмуляторные (ATARI,C64,GAMEBOY,NES,NIN64,PSX,SEGA,SNES,ZXSPECT)
Free - shareware/freeware, причем как инсталльники-архивы, так и установленные
Good - просто неплохие игры (включая разархивированные из Retro и др.)
MMORPG - }
MUD - } здесь собраны все интернет-игры
PBeM - }
Remake - архивы с римейками ретро-игр
Retro - архивы с ретро-играми
ZDocs - доп.инфо
ZEdit - редакторы
ZMaps - доп.карты и свои карты
ZSave - сохраненки от недопройденных игр и пр.
ИМХО аккумуляция опыта — это вообще бесполезное занятие.
Вот к примеру Архимед в ванной вдруг прозрел закричал эврика и сформулировал закон Архимеда . Если рассмотреть подробно этот процесс то можно сказать что есть две фазы:
1) откровение или прозрение — когда все стало ясно
2) формализация — когда абстрактное прозрение оборачивается в слова дела и т.д.
Совершенно очевидно, что первое самое главное, а формализация второстепенное. Если и имеет смысл что-то аккумулировать так это откровения и прозрения. А как их зааккумулируешь?
Хранить в памяти можно только то что уже формализовано, а в прозрениях можно только пребывать. Т.е. мудрый муж когда к нему приходит прозрение должен отворачиватся от падения в формализацию и должен стремится удержать и углубить состояние прозрения.
Т.е. бесполезно собирать кучу текстов в папочки или набивать память разными методиками. Лучше развивать концентрацию и сосредоточенность.
Здравствуйте, Kluev, Вы писали:
K>ИМХО аккумуляция опыта — это вообще бесполезное занятие.
Опыт — понятие очень широкое. Я, когда задавал вопрос, имел ввиду опыт работы за компом в самом широком смысле (если не уточнил, сорри). Я имел ввиду прежде всего сохранение однажды приобретенной информации, чтобы в будущем не тратить время и ресурсы на повторное ее добытие. Кеширование. К примеру, понадобились мне онлайн-словари — полез один раз, погуглил, выбрал несколько лучших — запхнул в свою копилку урлы (как именно хранить эту информацию — вопрос уже совершенно другой).
Если мой уважаемые собеседник сносит сданные проекты с винта, библиотеки пишет только для использования на этой неделе, и каждый раз при необходимости уйти на какой-нибудь сайт лезет в гугл, то позволю себе скромно выразить свою критику в адрес его стиля работы и уважения к своему времени Ладно, я шучу так, не обижайся, я думаю мы просто недопоняли друг друга
K>Совершенно очевидно, что первое самое главное, а формализация второстепенное. Если и имеет смысл что-то аккумулировать так это откровения и прозрения. А как их зааккумулируешь?
Что-то мы немного отклонились от темы — ну и ладно, пофилософствуем, раз уж так Мне сдается, прозрение — это верхушка айсберга, вишенка на торте, венец творения — это результат долгого и мучительного процесса. Сколько лет до этого Архимед проторчал в библиотеке, выписывая конспекты из книг, составляя памятки, заметки и т.д., история умалчивает — но я предполагаю, что вполне прилично. Интересно, почему Архимед не догадался сделать себе сайт со всеми урлами?
K>Т.е. бесполезно собирать кучу текстов в папочки или набивать память разными методиками. Лучше развивать концентрацию и сосредоточенность.
Хм. Самоулучшение, ниндзя, поза лотоса — это конечно рулез. Но информация-то берется извне, и потоки ее невероятны, линейно упорядочивать информацию ужасно неэффективно, нужна структура: например, дерево или хотя бы какой-нибудь индекс. Я об этом и говорил: информации приходит много, как ее сохранить и удержать в порядке? Как может помочь концентрация, когда мне нужно сделать обзор новых достижений динамической геометрии на сегодняшний момент? Или мне понадобилась теорема из матана, которую мы четыре года назад доказывали? (а она действительно понадобилась, даю слово!) Мне ее как, самому заново выводить?
/*поскипано*/
K>>Т.е. бесполезно собирать кучу текстов в папочки или набивать память разными методиками. Лучше развивать концентрацию и сосредоточенность. КО>Хм. Самоулучшение, ниндзя, поза лотоса — это конечно рулез. Но информация-то берется извне, и потоки ее невероятны, линейно упорядочивать информацию ужасно неэффективно, нужна структура: например, дерево или хотя бы какой-нибудь индекс. Я об этом и говорил: информации приходит много, как ее сохранить и удержать в порядке?
Информация берется изнутри в откровениях и прозрениях, то что поступает из вне это уже побочный продукт, результат формализации. Причем в этом внешнем потоке информации вреда гораздо больше чем пользы, если весь ум заполнен из вне то нет места чтобы заполнится изнутри. В том-то и вся проблемма, кажется что в школах и институтах нас чему-то учат, но на самом деле в результате такого обучения человек крепко привязывается к колесу заблуждений. На познание такое обучение не направлено. Скорее наоборот
КО>Как может помочь концентрация, когда мне нужно сделать обзор новых достижений динамической геометрии на сегодняшний момент? Или мне понадобилась теорема из матана, которую мы четыре года назад доказывали? (а она действительно понадобилась, даю слово!) Мне ее как, самому заново выводить?
Здась надо мыслить более глобально, пример с Архимедом показывает, что наука больше склонна к формализациям и рассуждениям неджели к откровениям или прозрениям. Т.е. любой здравомыслящий человек стремящийся к познанию обнаружит, что из многих способов познания наука это наверное один из самых худших. К чему тогда доказывать теоремы и идти самым неэфективным путем?
Отвечу со своей фрилансерской колокольни: КО>Вообще программист наверное должен с приобретением опыта вести такой своего рода дневник, такую личную библиотеку, в которой он накапливает мысли, идеи, решения, алгоритмы, подходы, куски кода, тьюториалы, библиотеки, ссылки, советы, методики и т.д. и т.п.
Мысли, идеи, решения, подходы, куски кода накапливать считаю глупым. Все течет, все изменяется, растет ваш опыт, я надеюсь, и возврат к старому коду, иногда означает и наступание на старые грабли, и использование не всегда самого лучшего решения. Единственное исключение, которое я иногда делаю — если на момент планирования, я могу выделить какую либо подзадачу и решить ее не привязываясь к конкретному приложению, то такие классы я в будущем могу себе позволить использовать, да ито после тщательного анализа (Из-за ошибок в реализации старого класса я раз поимел кучу проблем с новым приложением). По этой причине cut/paste я практически не использую. Специально свои приложения не систематизирую, каждое из них, даже написаные пару тройку лет назад я помню.
Мануалы, экзамплы и библиотеки систематизирую по принципу: ОС->Раздел->Подаздел и т.д. и т.п. Периодически бэкаплю на RW. Если какая-то статья оказалась достаточно полезной, могу законспектировать, и заверстать в LaTeX-е (Есть у меня такой PDF-чик где лежит только то, что мне потребовалось более одного раза). Раз приволок это дело по месту своей основной работы, в университете, накидал html-ок с краткой анотацией и вывалил на наш сервер, народ пищал от удовольствия.
КО>и консервации информации (я имею ввиду: нет же смысла писать, какие пункты меню нужно нажимать, потому что с выходом новой версии это все равно устареет — как выделить нестареющую квинтэссенцию из полученного опыта?) КО>[/list]
Записывать на какие минюхи нужно жать — это вообще маразм. Правильно устроеный интерфейс прозрачен по своей организации, запомните это раз и навсегда. К примеру меню файл обязательно содержит пункт выход, а если вы видите пункты открыть и сохранить, то смело ищите среди менюшек пункт редактировать, где увидите родные и знакомые копировать и вставить. Если же говорить о нетривиальных действиях, к примеру создание какого либо эффекта в PhotoShop, то здесь надо помнить последовательность применения инструментов, а не последовательность кликов по менюхам. Если использовать такой подход, то любая последующая версия вашей любимой программы не вызовет у вас серьезных трудностей. И на последок, если вы не в состоянии уяснить логику интерфейса программы, то возможно эта программа не для вас, ищите ей замену.
Что значит аккумулировать опыт?
По определинию: опыт сам по себе есть аккумулятор. Опыт он эта... сын ошибок трудных ...
Я так понимаю вы хотели спросить как аккумулировать фрагменты кода?
У меня по жизни созрела такая концепция: каждыый проект есть пирамида состоящая из законченных кирпичей.
Т.е. делая проект всегда отдаешь себе очтет что пирамида может не получиться по тем или иным причинам.
Но! Кирпичи-то остаются для следующего строительства! И совсем неумно их каждый раз выбрасывать.
Лично у меня есть два основных "кирпичных поддона" — namespaces gool и tool — графические и общего пользования примитивы.
tool включает в себя функциональные аналоги stl, например. И в тоже самое время это нечто большее чем stl или boost.
Это кирпичи как бы более высокого уровня. Например в tool живет адаптированный persistent storage от Кости Книжника (мое глубокое почтение). Как ultimate solution для сохранения воссттановления состояний. И много чего еще что удалось "окирпичить".
В gool живут dib, png, jpg, gif, hsv, rgb и т.д.
Все это написано или адаптировано (суть изучено) и вяжется друг с другом.
Т.е. это действительно инструменты. И вот это наверное уже продукты опыта.
Т.е. я действительно могу быстро слепить очередную пирамиду в области моего определения.
Таким образом для меня критерий полезности чужого кода — вяжется он или не вяжется в мои tool, gool, html, etc.
— суть станет ли это знание частью моего опыта или нет.
Вот примерно так....
Re[2]: Вопрос-то корректный, название некорректное ;)
Здравствуйте, c-smile, Вы писали:
CS>Вот примерно так....
это вы, Андрей, хорошо, все пояснили.
Думаю подход разумный вполне — у меня по той же причине копится личная библиотечка именем jah (это бог такой растаманский, в пику буржуйскому Локи )
Но тут остается вторая половина Кириллова вопроса: а с доками как быть?
Здравствуйте, c-smile, Вы писали:
CS>Здравствуйте, Зверёк Харьковский, Вы писали:
ЗХ>>Но тут остается вторая половина Кириллова вопроса: а с доками как быть? ЗХ>>(вот так