akirich_pcroom

Categories:

Кодовое

Всем привет, меня зовут Кирилл Гальченко и я по долгу службы обязан программировать. Сегодня я расскажу о том, как пишут программисты самоучки и испишусь обо всем что нагорело.

Несмотря на то, что по образованию я связист, иногда с завидной регулярностью по работе приходится программировать. С детства я учил разные языки программирования, разметки и разные подходы к пользовательскому интерфейсу. Лет 15 назад, я таки остановился на HTML. Потом, более профессиональные кодеры, ребята не раз имевшие пьедестал на AСM ICPC меня подтянули к более адекватным, компилируемым или транслируемым языкам. К кодерам на C\C++\C# я отношусь с теплотой и уважением.

Я очень люблю программировать на PHP. Да, слон не всегда поворотлив, хотя я уже достиг той стадии профессионального искажения, когда выполняю код php не на сайте, а в консоли. (А на одном известном здесь проекте, этот код еще и в планировщик загнан!) 

ПХП, несмотря на свои особенности — прост. У него простые и адекватные правила синтаксиса. Транслятор, сразу же, бонусом заворачивает задницу на поворотах, если кодер забыл где-то запятую. Или наоборот неправильно набрал оператор, или функцию. Все. Дальше код выполняется одинаково, какой бы не был пользователь. (Если, конечно нет каких-то явно заданных условий.) Да, надо следить за версиями, и обновляться. Но в отличии от психов из гугла, которые штампуют обновы пачками и делают еще больше новых дыр в безопасности, в пыхе все немного иначе. До сих пор есть достаточное количество сайтов на PHP, использующих версию 5.3 и ниже. И это продолжает устойчиво работать даже с самыми новыми браузерами. Этот код (при адекватном обслуживании) может работать годами.

В JavaScript после обновления обозревателя у Василия Пупкина надо лезть в консоль и разбираться. Самое офигенное, это то что код выполняется у клиента обозревателем. И версии этих браузеров далеко не одинаковы. Их тысячи! Особый трэш — это мобильные версии. Хорошо если есть возможность оттестировать тот или иной браузер через отладчик. У файрфокса, и хромиум-подобных на андроиде — такая возможность есть. А вот с айосью — все очень плохо. Благо есть сайты ретрансляторы, которые позволяют вшить специальный код. Но это актуально не всегда, особенно если работаешь с персональными данными.

Замечательный форк js — это node-js. Ему похрен на браузер, он сам себе браузер. И сервер тоже. Ему плевать на очередные козни гугловских инженеров. Не без приколов, конечно, но любую вещь можно собрать ею, и будет отличный бэкэнд... 

Ой, извините. Забыл рассказать для несведущих, что такое фронтэнд, и бэкэнд. Вообще, такая философия программирования пришла из торговли, и в принципе справедливо. Давайте представим себе магазин. Торговый зал, по которому ходят посетители — это фронтэнд. Красивые витрины, приветливые дядечки и тетечки в зале, хороший свет, тачечки для удобства. Но магазин в основном работает не там. В любом достаточно большом магазине есть замечательная табличка — только для служебного персонала. За этой дверью начинается бэкэнд. Там считают выручку, потные грузчики готовят товар со склада на выдачу в зал, рядом разгружается фура, и фасуется развесной товар. Так вот, в последнее время эти части кода пишутся раздельно. Но это не всегда оправданно. Например, во всей сетке сайтов о работе общественного транспорта только один проект требует раздельной доставки данных — карта GPS трекинга. Со «склада» постоянно, каждые 15 секунд выезжают данные со «свежеразгруженной фуры». Все остальные — такой необходимости практически не имеют. Быстрее сгенерировать все данные самостоятельно и не нагружать клиент на стороне.

Отдельная боль — это классическая java. За три попытки подойти к ней, я так её и не осилил. Язык вечных сюрпризов, костылей и матюков. Но язык, по моему личному мнению — добившийся достояния общества. Откровенно говоря, среди языков классического программирования в IDE (специальной оснастки) — это один из трех самых популярных языков (вместе с дотнетом и классическими C). И это для меня боль. Я люблю писать код в чем угодно, чтобы его можно было запустить без нагромождения компилятора и той самой оснастки. На C++ я писал пару программ с интерфейсом (во времена знаменитой компании Borland). На .NET я написал одну программку во время студенчества. Единственный урок, извлеченный из той программки — хорошо что мне не приходится писать на дотнете или ASP.

Если говорить за работу, то серверное обеспечение позволяет обрабатывать часть задач автоматически без участия человека. При этом с сохранностью персональных данных. Даже копипаст в таких случаях не признается — надо писать и тестировать все самостоятельно или под личным надзором. (Короче, я со слезой сижу на работе поглядывая на недоступный мне composer.) Код огромный, надо выполнить кучу задач, например, вывести статистику по десяткам параметров, сделать срезы и фрагментацию. И все это для десятков тысяч записей, которые надо правильно объединить, обработать и вывести пользователю. 

Опыт исследованных утечек показывает, что красиво выглядящий проект, у которого не было длительных альфа- и бета- тестов — априори является опасным. Вы, кстати, уверены что приложение «Держава і я» (сокращенно Дія) не следит за вами? Если уверены, то зря. Куча государств попадалась за подобной слежкой, причем попадались уже после того, как подобные решения были взломаны. Последний скандал с приложением о CoViD-19 в Москве — очередное подтверждение. Сначала приложению уронили рейтинг на Google Play, а потом слили его исходный код. Еще раз подтвердив что большой брат следит за нами уже давно. 

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

https://t.me/itsorm/1581

Если вы думаете, что нам до них далеко, то напомню что приложение для Дии писали те же люди, что и писавшие приложение для Киевстара. Тот не прочь следить за людьми и стучать о поведении пользователя всем подряд.

Хух, на этом пока все. 

ЗЫ Почитал сейчас вещи о том, что происходит на удаленке с сотрудниками ответственными за наём. Как же жаль хрюш. Интересно, как там жизнь у чудаков на букву м, с тайм-трекерами?

promo akirich_pcroom september 1, 2013 01:18
Buy for 10 tokens
Размещайте рекламу в промо по уникально низким ставкам! Правила размещения промо в моем ЖЖ. Даже несмотря на непостоянство показов в данном журнале действуют ограничения по тематике промоутируемых материалов. Рекламируемый материал должен содержать материалы подходящие для группы 12+.…

Error

Anonymous comments are disabled in this journal

default userpic

Your reply will be screened

Your IP address will be recorded