Десять правил ведения бизнеса в России
Совершенно разумные правила ведения бизнеса в нашей стране, согласен на все сто:
1. Держите сервера за границей
Почему так? Далеко за примерами ходить не надо, а случай не единичный.
Представьте, что у вас, например, сервис электронных магазинов. Или хостинг. И тут под предлогом «поиска улик» у вас выключают и опечатывают все сервера. Вы теряете клиентов и попадаете на убытки. В лучшем случае вы просто вне бизнеса, в худшем — еще и с долгами.
Да даже если ваш скромный интернет-магазин никому не нужен, где гарантия, что когда будут трахать вашего хостера, не вырубят ваш сервер, даже бекапы не дав сделать. Да, и делайте бекапы регулярно. Любое серьезное изменение — бекап на локальную машину или сервер в датацентре, не связанном с тем, где хостится ваш сайт. А то обычно оказывается, что и бекапы все были на той же машине.
Полезное свойство функции substr в PHP
Функция substr служит для взятия подстроки, синткасис у нее следующий:
string substr ( string string, int start [, int length] )
Допустим, вам нужно отрезать последний символ, знатоки Javascript или Си напишут примерно следующее:
$s = 'some string1'; $s = substr($s,0,strlen($s)-1); //some string
пока терпимо, хотя код уже явно громоздкий и трудный для понимания, задача усложняется если нужно получить несколько последних символов в строке:
$s = 'some string123'; $s = substr($s,strlen($s)-4); //123
понять что делает этот код довольно трудно, несмотря на то что его назначение тривиальнейшее.
К счастью в PHP в substr можно использовать ОТРИЦАТЕЛЬНЫЕ ЗНАЧЕНИЯ для стартового символа и длинны:
//пример первый $s = 'some string1'; $s = substr($s,0,-1); //some string //пример второй $s = 'some string123'; $s = substr($s,-3); //123
Кака видно, в этом случае код читается на порядок проще. Ничего подобного нет ни в Си ни в JavaScript, а жаль.
Про науку и образование в России
Про то, что науку и образование в России уничтожают сейчас говорить уже даже не интересно. При этом по телевизору постоянно твердят о куче миллионов якобы выделяемых на науку.
Типичный пример - покупка ПО для школ и ВУЗов. Из бюджета выделили огромные деньги на закупку программного обеспечения для нужд образования. Причем провернули все очень технично, никто ничего даже не заметил. Сначала взяли за шкирку сельского учителя с хорошей говорящей фамилией Поносов. Раструбили о проблеме на всю страну, а потом взяли да и закупили ПО от Microsoft во все школы и ВУЗы.
Как раз это происходило когда я работал в Саратовском Государственном Техническом Университете - история сама по себе любопытная.
На нашей кафедре годами существовал собственный парк компьютеров. Компьютеры были так себе - их собирали годами на деньги студентов, которые не хотят учиться сами кафедры. Когда началась борьба за лицензионное программное обеспечение в один прекрасный день на кафедру принесли совершенно новые современные компьютеры с предустановленным Microsoft Windows , Microsoft Word, Mathcad, Matlab.
Представляете сколько это все стоит только на одной машине? А компьютеров на кафедру выделили около пятнадцати штук. И это только на одной кафедре - тоже самое было на других кафедрах. Везде новые компьютеры, и везде Windows.
Во всем мире вузы стараются экономить на программном обеспечении, поэтому все открытое программное обеспечение разрабатывается энтузиастами - студентами и преподавателями в вузах. Причем, выигрывают от этого все - студенты получают прекрасную возможность приобрести навыки программирования, преподаватели имеют возможность показать студентам как надо разрабатывать ПО, причем на конкретных примерах - тысячи исходных кодов доступны для ознакомления.
Однако, в нашей стране все не так. В нашей стране на каждом компьютере стоит Microsoft Windows, открытое ПО пусть пишут в других странах а мы и так программировать научимся.
На мой взгляд для школ и вузов Microsoft Windows противопоказан. Студенту гораздо нагляднее и проще освоить программирование в Unix среде - ведь это по сути большой конструктор. Для линукса не нужен антивирус - а это значительная статья расходов для вуза. В линуксе из коробки есть все необходимое для работы. В то же время на Windows нужно покупать и ставить кучу дополнительного софта, особенно это касается разработки ПО и научных программ.
Но все дело в том что Линукс не выгоден ВУЗам - все в России живут откатами - больше платить преподавателям не выгодно - преподаватели не откатывают ректору за повышение зарплаты - но если пустить эти денежки на закупку новых компьютеров - будьте уверены, те кто принимают решение у какой фирмы эти компьютеры закупать получат хорошие откаты. Как можно получить откат с покупки Линкус, он же бесплатный! Наоборот, придется платить специалистам за внедрение, а они откаты как то не очень дают - работы у них и без ВУЗов выше крыши. А с ПО Microsoft будьте уверены - все хорошо наварятся. Антивирусы же вообще весчь отличная - за них платят каждый год - а значит бюджетные денежки будут освоены без проблем.
Хотя все же говорить, что виноваты в том, что в ВУЗах стоит Windows а не Линукс только руководители не совсем правильно. Преподаватели тоже виноваты. Если бы на всех кафедрах уже стоял Линукс - хрен бы его кто заменил на Windows - все бы сразу взбунтовались. Но на кафедрах стояла левая винда.
Просто после определенного возраста очень сложно осваивать новые технологии. А на кафедрах сейчас работают одни старики - молодежь туда не заманишь - зарплаты в ВУЗах сейчас смешные - правда почему никто то не смеётся. Доценту платят в месяц столько, сколько хороший программист зарабатывает за день. Новых людей на кафедре нет, старые - умирают. За те пять лет что я там проработал - от старости и болезней умерло пять человек, и это только на одной кафедре.
Поэтому, образованию в том виде в котором оно было в советские времена приходит пушистый северный зверек. То образование, которым мы все так гордимся уходит вместе с последними представителями старой системы. Новой системы никто не создал. Какое образование будут получать наши дети это еще не известно. Но все в наших руках, давайте же не бояться осваивать новые технологии, давайте сами решать какие программы нам нужны - иначе за нас это сделают другие.
Как найти все жесткие ссылки на файл
Чтобы найти все жесткие ссылки на файл, сначала выполнием ls и смотрим какой у файла inode, затем скармливаем этот inode команде find:
> ls -li filetosearch.txt
9964445 -rwxrwxrwx 2 root root 1813 Sep 25 03:06 filetosearch.txt
> find /home -xdev -inum 9964445