Программирование
Материал из 24pm
Программирование - это моё увлечение с тех пор, как я начал с ним знакомиться в Российско-Американском Профессионально Техническом Колледже (РАПТК). Это приблизительно 1993 год. Знакомство начиналось с языка Turbo Pascal 7.0 под операционной системой MS DOS 5.22, затем в Кемеровском Государственном Университете на математическом факультете плавно перешло на Borland Delphi 3.0, оставив как след программу-напоминальщик Eventer 3.1 и модули pcrt и pgraph, доставившую мне многие часы приятного творческого напряжения. Дойдя до версии Delphi 6.0 я, работая уже в ЗАО "Гута-Банк" (ныне ВТБ 24) инженером отдела ИТ, решил освоить Borland C++ Builder 6.0, да так и перешёл на него, покинув Delphi, но не из-за преимуществ первого, а потому что осваивая С++ все новые программы писал на нём. Основной задачей было переложение Eventer'a, и приступил я приблизительно в 2001 году. Это была, конечно, не миграция приложения, а именно переложение идеи, поскольку разными были и операционные системы и языки программирования. Программа называлась сначала Reminder и разрабатывалась под Windows 98, затем я назвал её WinReminder, но поскольку программ с похожими названиями обнаружилось множество, то переименовал её во ВремяМетр. Здесь же в банке пришлось освоить программирование в Visual Basic for Applications, автоматизируя задачи для MS Excel и MS Access, но это было уже не хобби, а работа, и уйдя из банка, я уже не возвращался к VBA. Прийдя из банка на ОАО "Кокс" в 2004 году как системный администратор, я столкнулся вплотную с ОС Linux, поэтому, когда в 2007 году изучая теософские труды я пришёл к решению сгруппировать по темам тот огромный материал, который было просто трудно удержать в голове, само собой появилось требование иметь для работы приложение не зависящее от операционной системы. Готового решения найдено не было, поэтому решил писать сам. Выбор из бесплатных платформо-независимых языков привёл к Java и C++ с библиотеками GTK или Qt. Остановился на Qt. На платформе этой библиотеки и начал писать Research Assistant в сентябре 2007 года. Затем пришёл к выводу, что интернет приложения имеют больший потенциал и, "заморозив" Research Assistant, создал проект Теопедия на движке MediaWiki, после чего начал разбираться с PHP и CSS, создавая необходимые изменения в движке, самое значительное из которых - это расширение ВикиФерма.
Кроме приведённых на этой странице программ, мною написано также большое количество мелких скриптов на bash, php, bat-файлы для командной строки Windows - но всё это рутинная повседневная работа сисадмина и выкладывать её здесь не имеет смысла. Кое-что из этого творчества можно найти в статьях СисадминВики.
Теперь приведу список программ. Все файлы сжаты в архивы 7z, понимаемые многими архиваторами, в том числе WinRar и бесплатным 7Zip (от автора формата 7z).
Название, описание | Язык | Скачать |
---|---|---|
ВикиФерма (WikiFarm) - расширение для движка MediaWiki, облегчающее администрирование нескольких вики проектов | PHP | http://www.mediawiki.org/wiki/Extension:WikiFarm |
STAcc - ограничение доступа к Интеренет: редиректор для Squid, квотирование, списки доступа. | PHP, perl, bash | http://sysadminwiki.ru/wiki/STAcc |
Research Assistant - Программа в помощь исследователю имеющая функции записной книжки и дневника, с древовидной структурой хранения заметок. В RA не реализовано очень многое из запланированного, но есть уже немало и она находится в стабильном состоянии. Надеюсь, что кто-нибудь её подхватит и продолжит развитие. | C++/Qt | http://rassistant.sourceforge.net/ |
ВремяМетр 0.94 - программа - инструмент для изучения законов времени. Может использоваться просто как напоминальщик событий. Подробней можно узнать на собственном сайте проекта vmetr.narod.ru, который, правда, много лет уже не обновлялся, т.к. проект не развивается. | C++ Builder 6 | собранный (2,3Мб) исходники (1,5Мб) |
pDate 1.1 - windows аналог команды date в unix. Консольная программа для вывода в заданном формате даты и времени на любой день с 4000 лет до н.э. и до 4000 лет н.э. Удобна для использования в bat и cmd файлах. Официальная страница проекта теперь находится на СисадминВики | C++ Builder 6 | собранный (77Kb)
исходники (7Kb) |
Eventer 3.1 - Полноценная напоминалка под DOS. Прилагается подробный readme. Исходники нашёл только для версии 3.0. | Borland Pascal 7.0 | собранный (24Kb) |
Changer 1.0 - облегчает работу с однородными файлами, раскиданными по разным каталогам и дискам. Помогает систематизировать файлы, используя шаблонные имена, списки и групповые операции над файлами. | Delphi 3 | собранный (268Kb)
исходники (69Kb) |
Далее идут программы, написанные быстро для решения небольшой конкретной задачи, т.к. в то время не было найдено ПО с нужной функциональностью. Однако они могут кому-нибудь помочь в освоении языка.
Название, описание | Язык | Скачать |
---|---|---|
BatchReplace - заменяет одну подстроку другой во всех файлах указанной папки и её подпапках. | Delphi 5 | собранный (183Kb) исходники (7Kb) |
Test Editor 1.0 - может создавать, сохранять, загружать и проводить тесты | Delphi 4 | собранный (135Kb) исходники (40Kb) |
Далее программы-примеры в которых реализована какая-нибудь небольшая идея.
Название, описание | Язык | Скачать |
---|---|---|
BmpForm - Пример создания не прямоугольной формы, а на основе bmp файла. Оформлена в виде простенького тамагочи. | Delphi 5 | исходники (355Kb) |
x-o - бесконечные крестики-нолики. Многопользовательский режим работает, а компьюрная логика (AI) в зачаточном состоянии. DOS | Borland Pascal 7.0 | exe+src (62Kb) |
menu - пример реализации меню в текстовом режиме. DOS | Borland Pascal 7.0 | exe+src (5Kb) |
pRecoder - используя перекодировочную таблицу делает посимвольную замену содержимого файла. DOS | Borland Pascal 7.0 | exe+src (4Kb) |