Новые фотографии

Летом посещаемость сайтов сильно падает. И в принципе нет никакого смысла выпускать новые обновления, их все равно мало кто замечает. Все так. Но, с другой стороны, сайты должны развиваться постоянно, тем более, что материалов для развития более чем достаточно.

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

И вот, уже несколько лет как обрели свое постоянное место. Я надеюсь…
Читать полностью »



Мое прошлое и будущее

Нет, писать мемуары я пока не буду. Рановато. Да и как их вообще писать, затрагивая жизнь стольких людей? А вдруг они вовсе не хотят такой огласки фактов из своей жизни? Так что с мемуарами торопиться не будем, хотя, конечно, и в моей жизни было немало забавного и интересного. Но многое еще впереди…

Так вот, я не о том. Я о творчестве, его вариантах и перспективах. А тут, как выясняется, далеко не все так уж очевидно и понятно…
Читать полностью »



Критерии профессионализма

В последнее время некоторые сайты и соцсети бурно обсуждают самоубийство Даяната Рзаева. У меня нет намерений говорить что-либо об этом человеке, хотя бы потому, что я никогда с ним не сталкивался, а чтение нескольких его интервью и высказываний в качестве «известного психолога» недостаточно для вынесения полноценного вердикта.

Однако, один из новостных сайтов упорно твердит, что не был господин Рзаев психологом, что это журналисты по своей воле дали ему такой титул, а на самом деле он окончил институт физкультуры. Ну, диплома я не видел, но насколько я знаю, понятие «спортивный психолог» существует и вполне вероятно, что учат данной специальности именно в институте физкультуры.

Так вот, хотелось бы поговорить не о данном случае, а в целом о весьма плачевной ситуации у нас в стране, где мало кто работает по своей специальности…
Читать полностью »



Новая версия Windows

Как известно, в конце июля ожидается выход новой ОС от Microsoft. Перескочив через номер 9 (был бы 13 — понятно), разработчики дали новой версии номер 10 и объявили, что она будет последней. Правда, не совсем понятно, в каком смысле последней? То ли мелкомягкие вообще бульше не будут делать ОС, то ли «десятка» будет такой удачной, что новые версии просто не понадобятся…

Мне сложно судить о популярности разных ОС в мире. Но если говорить о корпоративных и личных компьютерах в Баку, то версии Линукса тут практически не встречаются. А значит… Так вот, об этом и поговорим, тем более, что, будучи монополистом, эта компания с сомнительной репутацией бизнес свой ведет, мягко говоря, не совсем прилично.
Читать полностью »



Потусторонний мир программ

     Итак, мой «Виртуальный дом» вернулся из небытия. Не буду говорить о том, что у меня уже возникли проблемы с поисковиками, счетчиками и каталогами, которые теперь не знаю как решить. И хотя моей вины тут нет, но Яндекс явно не собирается брать на себя ответственность за пятидневный «провал» в работе сайта и хоть как-то извиняться или содействовать решению указанных проблем. Это все ясно, но в данном случае не так интересно.
     Интересно другое. Вот сайт существует. На сервере. Но ни один компьютер в мире не может его увидеть. «FireFox не может найти сайт http://sitename.zona» — что это значит, в философском плане? Существует сайт в этот момент, или нет?
     Если и «родственные» вопросы. В какое время «живет» программа? Вот сейчас мой компьютер работает, некоторые программы находятся в оперативной памяти и процессор выполняет их код. Они живы! Но вот я нажимаю крестик в углу окна, и… Что «и»? Программа умерла? Нет, она может быть запущена снова. Видимо, можно считать ее спящей.
     А что же такое «смерть»? Видимо, это ситуация, когда в мире не остается ни одной копии данной программы. Однако… Однако, если есть ее исходные тексты — можно ли считать, что «дух» программы все еще существует? И что программа может снова получить «физическое воплощение» и снова начать жить, работать и даже размножаться?
     Конечно, все эти вопросы применительно к программам мало кого интересуют. Но не кажется ли удивительным очень близкое подобие жизни компьютерной информации и жизни реальных людей? Весь мир — это огромная сеть. Каждый человек — компьютер, в котором хранится и работает некая ОС — его дух. Когда компьютер ломается (человек умирает) код программы переносят на другой носитель, программа начинает работать на другом компьютере. Получает новое воплощение…
     Разумеется, новая копия программы есть полное повторение прошлой копии. В отличие от человеческого духа, который за время воплощения набирается знаний и опыта, которые переносятся им в следующую жизнь. Однако, самообучающиеся программы известны давно. И если с испорченного компьютера на новый переносится не только «ехе»-файл, но и вся папка программы вместе со всеми созданными ею файлами, то это уже полный аналог реинкарнации человека.
     Возникает интересный вопрос. Не потому ли сейчас все большую популярность приобретают «портабл»-программы, которые переносятся простым архивированием папки и не требуют инсталляцию? Ведь каждая инсталляция начинает жизнь программы «с нуля», с чистого листа. Это первое рождение. Но ведь как глупо терять накопленный опыт!
     И самый главный Программист (имя которого не принято упоминать всуе) придумал «портабл»-человека, не требующего инсталляции. Возник бессмертный дух…
     Люди, у вас все «dll» работают? 🙂



Нужно ли уметь программировать?

     Я понимаю, что это очень специфическая тема и мало кому интересная. Но молчать тоже не могу! Тем более, что вопрос гораздо глубже, чем кажется… Речь о небольшой статье про обучение программированию. И уже не первый раз в таких случаях комментарии к статье гораздо важнее и показательнее, чем сама статья.
     Раньше, лет 40 назад, словом «программист» называли человека, который имел хоть какое-то отношение к компьютерам — набору шкафов, занимающих огромную комнату и очень громко шумящих. Потому что в то время общение с компьютерами было уделом «избранных волшебников», которые могли заставить эту железку делать то, что им нужно.
     Уже лет 30 назад ситуация изменилась. Были отдельно наладчики, отдельно программисты, отдельно операторы ЭВМ… Всех их вместе все равно было мало, но они уже не казались волшебниками, тем более, что в институтах почти всех стали учить компьютерной грамотности (была такая кампания в СССР). Правда, бедным учителям физкультуры или истории приходилось туго, помню, как они в институтской библиотеке шпаргалки писали… 🙂
     Лет 20 назад появились персональные компьютеры и ореол волшебства окончательно исчез из компьютерного обихода… Но при этом практически все владельцы персоналок в той или иной мере умели программировать, хоть как-то! Тем более, что этому продолжали обучать принудительно всех, даже уже в школе.
     Лет 10 назад и сейчас — разницы уже нет. Персоналки стали привычным домашним агрегатом, как холодильник и телевизор. Вы знаете как устроен телевизор? Нет? Но смотрите его каждый день! Так и с компьютерами. Люди играют в тетрис и стрелялки, пишут письма и говорят по скайпу, но большинство этих «юзеров» (как их сейчас называют) даже не догадываются, что и Ворд, и Скайп, и Фотошоп — это программы, которые написаны живыми программистами. В их восприятии все эти иконки — неотъемлемая часть этого ящика с кнопками (не выдумка, а мой опыт).
     На чем пишут программисты? За десятилетия компьютерной истории языков программирования появилось огромное число — многие десятки, а с учетом версий и диалектов — сотни. Ситуация примерно как в реальной жизни! Есть языки распространенные, есть экзотические. Есть программисты, знающие один язык, есть полиглоты.
     На самом деле, языки делятся на несколько групп, причем можно делить по разным признакам.
     Есть языки низкого уровня, для программирования на уровне микросхем (грубо говоря). Это — различные версии ассемблера, языка, напрямую привязанного к конкретному «железу». Кстати, когда-то ничего другого и не было, даже ассемблера не было, писали в машинных кодах! Замечу, что к этой же группе относились языки программируемых калькуляторов (смотрите примеры калькуляторных программ).
     Есть алгоритмические языки, программы на которых однозначно отражали алгоритм решения задачи. Это и сейчас всем известные Фортран, Бейсик, Паскаль, Си, а также устаревшие Алгол, ПЛ и т.д. Эти языки развиваются в ногу со временем, а сейчас и вовсе стали очень похожими друг на друга, давно сравнявшись в своих возможностях. Сейчас они не столько структурные, сколько объектные…
     Есть языки для программирования в интернете — PHP, Javascript и т.д. А та же Java является почти универсальным языком, применяется для написания программ и для серверов, и для мобильников…
     Могу упомянуть и вовсе экзотические языки (кто-то их называет даже эзотерическими), самый известный из которых — язык «Brainfuck». Даже я сам когда-то создал два языка — один для калькуляторов («ПРАЛ»), один для компьютеров («Ellochka»).
     Есть еще «Форт», который мне когда-то очень нравился и который принципиально отличается от всего перечисленного… Есть «Пролог», для программирования экспертных систем, до сих пор где-то «в закромах» транслятор валяется… 🙂
     Впрочем, я не собираюсь писать историю языков, она давно известна. Тут речь о другом.
     Вопросов два: надо ли массово учить программированию, и если надо, то на каком языке?
     На первый вопрос я могу ответить однозначно — НЕ НАДО! Программирование — это, прежде всего, искусство. Бесполезно учить музыке человека, если у него нет музыкального слуха. Тут тоже нужен определенный «слух», плюс логика, математические способности и многое другое. А самое главное — любовь к этому занятию! Программистов «по призванию» не больше, чем музыкантов.
     Да, каждого можно научить «бренькать на рояле», особенно по чужим нотам. Но подбирать музыку самому — не каждого. А уж на скрипке играть — тем более… И как написано в рассматриваемой статье, каждому можно объяснить смысл операторов цикла и присваивания. В принципе, это полезно — он будет уважать и ценить труд программиста. Но сам программистом не станет…
     Что касается второго вопроса — тут сложнее. Каждый (и это хорошо видно по комментариям к статье) тянет рубашку на себя. Если человек знает Паскаль — он говорит, что надо учить Паскалю. Если он пишет на Си, то «только Си, все прочее — не языки, а барахло». Автор статьи предлагает начать с Бейсика, несмотря на свист «профессионалов».
     Лично я тоже поклонник Бейсика. И мне плевать на «свист». Почему? Объясню.
     Когда-то, когда я только начинал программировать, мне было все равно на чем. Я знал только фортран для «Больших ЭВМ», а на персоналках не знал ничего. Попробовал и Бейсик, и Паскаль, и Си. Бейсик мне понравился двумя моментами: логичностью и простотой синтаксиса, а также — своими огромными возможностями, которых не было ни в Паскале, ни в Си (не буду тут подробно писать, места не хватит).
     Так я его и выбрал. И должен сказать, что ни разу не пожалел! Но я знаю, почему «профессионалы» нстроены против Бейсика. Его просто дискредитировали неумелым использованием. Произошла примитивная девальвация! Бейсику учили всех подряд, учили поверхностно и самым примитивным его версиям (версий-то было много)… Понятно, что после такого «обучения» человек не мог называться программистом, но называл себя именно так! И искренне считал, что умеет писать Программы (с большой буквы). Разумеется, он не мог решить ни одной задачи, и явление это было массовым. В результате в глазах компьютерного сообщества виноватым оказался язык, а не безграмотные дураки, его применявшие… И стереотип этот тянется годами, хотя история его давно забыта…
     На самом деле, выбор языка — это дело вкуса. Понятно, что есть и языки специальные, и ситуации разные. Драйверы лучше писать на ассемблере, а написать для сайта скрипт на Паскале не получится при всем желании… Ну и т.д.
     Невозможно знать все языки. Точнее, можно иметь понятие о большинстве языков. Но на их детальное изучение — не хватит жизни. Поэтому лучше выбрать тот язык, который нравится, из той группы, которая подходит для решения задач в будущей профессиональной деятельности. Но выбрав язык, нужно освоить его в совершенстве! Тогда никто не станет свистеть и насмехаться, даже если вы пишете на «Фокале»… 🙂
     Пишите в свое удовольствие! Программа рождается «из ничего, из сумасбродства моего» — и это настоящее «Обыкновенное чудо»!