Хотел я, значит, запустить веб-сервер на NodeJS на удаленном сервере, чтобы протестировать одну штуку. Ну а там крутится Apache, разумеется. Сделать это (как выяснилось после долгих разбирательств) можно. Но если всякие разные настройки Апача для конкретный папок можно прописывать в файле .htaccess, то конкретно эти настройки нельзя - только в httpd.config, доступ к которому - только root. Следовательно, или обходиться апачем, или искать хостинг, который поддерживает Node JS, или покупать выделенный сервер, где сам себе root и делай, что хочешь.
среда, 14 августа 2019 г.
воскресенье, 4 августа 2019 г.
A programmer: JavaScript #13
Сегодня речь о нескольких нюансах, которые знатокам покажутся очевидными, но у меня вызвали затруднения в последние дни.
1.
Когда мы экспортируем модуль, экспортируется не функция, а объект:
module.exports = { message: message }
то есть когда мы хотим вызвать функцию message из этого модуля, надо писать не message();, а message.message();.
Разумеется, предполагается, что модуль импортирован:
var message = require('./module.js');
2.
В других языках ответ на этот вопрос находился быстро, а тут пришлось поискать, как сравнить два объекта (а не значения переменных). Ответ вот:
Object.is(value1, value2);
3.
Ну и по мелочи - проверять все мелочи. Например, не путать атрибуты html-формы "id" и "name". Или не забывать про urlencodedParser, когда пишешь обработчик для POST-метода (а то у меня был шок, когда body вообще не обнаруживалось). Или просто уточнять синтаксис.
среда, 3 июля 2019 г.
Arnold Schwarzenegger 2019 - The speech that broke the internet - Motivational & Inspiring
Way to success:
1. Have vision
2. Say "Yes"
3. Work hard
4. Don't have Plan B
5. Don't afraid fail
6. Help people
пятница, 1 марта 2019 г.
Всё в твоих руках
В очередной раз думаю о “безвизе”. Шутка о том, что счастье - это когда выходишь за хлебом, на всякий случай берешь с собой загранпаспорт, перестала быть шуткой. Теперь можно просто купить билет и поехать - от Польши до Португалии. Точно так же, как, например, в Киев или Львов. Круто же! Ещё бы Великобритания, США, Канада, Австралия - и было бы вообще счастье.
Вспоминается также разговор с торговцем книгами в поезде:
- Сейчас люди книг не читают.
- Мы читаем.
- Та какие там у вас книги!
- Эмм… Все!
И действительно - в телефоне, под рукой - практически все книги! Что это значит? Это значит, что больше нет отмазок. Теперь - если ты чего-то не смог, то проблема не в отсутствии ресурсов, а только в тебе. Только в тебе. Сам дурак.
А значит, актуальным - больше, чем когда-либо - становится вопрос о том, как организовать себя: преодолеть прокрастинацию, избавиться от плохих привычек, сформировать useful skills, time management и всё такое.
Разумеется, читаю всякое на эту тему. Интересно, может я смог бы стать, например, нейрофизиологом?
Вспоминается также разговор с торговцем книгами в поезде:
- Сейчас люди книг не читают.
- Мы читаем.
- Та какие там у вас книги!
- Эмм… Все!
И действительно - в телефоне, под рукой - практически все книги! Что это значит? Это значит, что больше нет отмазок. Теперь - если ты чего-то не смог, то проблема не в отсутствии ресурсов, а только в тебе. Только в тебе. Сам дурак.
А значит, актуальным - больше, чем когда-либо - становится вопрос о том, как организовать себя: преодолеть прокрастинацию, избавиться от плохих привычек, сформировать useful skills, time management и всё такое.
Разумеется, читаю всякое на эту тему. Интересно, может я смог бы стать, например, нейрофизиологом?
воскресенье, 17 февраля 2019 г.
О медитации
Кроме того, что многие советуют медитировать, мнения о том, как правильно это делать, могут отличаться. Кто-то говорит, что надо сесть в позу лотоса и отрешиться от мыслей, кто-то рекомендует просто наблюдать за своими мыслями, кто-то советует петь мантры, а кто-то сосредотачиваться на собственном дыхании. Всё это прекрасно, если может помочь - не так у ж важно, чему именно - просто помочь. Я сейчас о том, чем (на данный момент, по крайней мере) медитация оказывается для меня.
Я вспоминаю. Хотел сказать "детство", но не совсем детство. Я смотрю на то, как падает солнечный свет, как поют птицы, как теплый воздух плывёт, отбрасывая легкую тень на стене. И я вспоминаю, что в детстве было существенно больше моментов, когда ты всё это замечал. Замечал-то всё то же самое, а моментов было больше. Просто потому, что сейчас ты занят какими-то непрекращающимися более или менее важными делами (или тем, как от них избавиться), а тогда просто мог на минуту другую перевести взгляд из песочницы куда-то в небо и подумать. Даже не подумать, а посозерцать что-ли.
И вспоминая об этом сейчас, понимаешь, что, в сущности, ничего не изменилось - ни солнце, ни небо, ни птички, ни тёплый воздух. Всё это такое же, как было в твоём детстве - 40 лет назад, сто лет назад, тысячу лет назад. И понимаешь величие природы и ничтожность всего остального на этом фоне.
Даже ты сам - в сущности - не изменился. Видимо, это и значит "стать собой"? Только добавились дела, заботы, достижения, желания достижений, моменты стыда и неудовлетворенности собой и миром, дурные привычки и т.д. и т.п. Но в сущности - ты такой же, надо только вспомнить. Остановиться и вспомнить. И подумать, насколько всё то привнесенное действительно важно. И важно ли. Хороший вопрос...
Я вспоминаю. Хотел сказать "детство", но не совсем детство. Я смотрю на то, как падает солнечный свет, как поют птицы, как теплый воздух плывёт, отбрасывая легкую тень на стене. И я вспоминаю, что в детстве было существенно больше моментов, когда ты всё это замечал. Замечал-то всё то же самое, а моментов было больше. Просто потому, что сейчас ты занят какими-то непрекращающимися более или менее важными делами (или тем, как от них избавиться), а тогда просто мог на минуту другую перевести взгляд из песочницы куда-то в небо и подумать. Даже не подумать, а посозерцать что-ли.
И вспоминая об этом сейчас, понимаешь, что, в сущности, ничего не изменилось - ни солнце, ни небо, ни птички, ни тёплый воздух. Всё это такое же, как было в твоём детстве - 40 лет назад, сто лет назад, тысячу лет назад. И понимаешь величие природы и ничтожность всего остального на этом фоне.
Даже ты сам - в сущности - не изменился. Видимо, это и значит "стать собой"? Только добавились дела, заботы, достижения, желания достижений, моменты стыда и неудовлетворенности собой и миром, дурные привычки и т.д. и т.п. Но в сущности - ты такой же, надо только вспомнить. Остановиться и вспомнить. И подумать, насколько всё то привнесенное действительно важно. И важно ли. Хороший вопрос...
понедельник, 14 января 2019 г.
Маховик
Это цитата из книги Джима Коллинза "От хорошего к великому". Меня вдохновляет.
Представьте огромный, тяжелый маховик, массивный
металлический диск, укрепленный горизонтально на оси, примерно тридцати
футов в диаметре, в два фута толщиной и весом примерно пять тысяч
фунтов. А теперь представьте, что вам надо вращать маховик вокруг его
оси как можно быстрее и как можно дольше.
Толкая изо всех сил, вы сдвинулись всего на дюйм и
кажется, что все напрасно. Вы продолжаете толкать и после двух-трех
часов настойчивых усилий удается сделать один полный оборот.
Вы продолжаете толкать, и маховик движется теперь
немного быстрее, затратив огромные усилия, вы завершаете второй оборот.
Вы толкаете в том же направлении. Три оборота, четыре… пять… шесть…
скорость растет, семь… восемь… вы толкаете… девять… десять… скорость еще
больше, одиннадцать… двенадцать… быстрее с каждым оборотом, двадцать…
тридцать… пятьдесят… сто.
Затем, в какой-то момент — прорыв! Инерция достигла
такой силы, что начинает тащить маховик, оборот за оборотом… ух!.. и
его собственный вес работает на вас. Вы тратите не больше усилий, чем во
время первой попытки, но маховик крутится все быстрее и быстрее. Каждый
новый оборот использует энергию, накопленную предыдущим, происходит
аккумуляция усилий. В тысячу раз быстрее, затем — в десять тысяч раз,
затем — в сто тысяч раз. Огромный, тяжелый диск летит вперед, и его уже
не остановить.
А кто-то придет и спросит: «А что было тем самым первым толчком, который заставил маховик вращаться с такой скоростью?»
Вы не сможете ответить. Это бессмысленный вопрос.
Был ли это первый толчок? Второй? Пятый? Сотый? Нет! Это были они все,
вместе взятые, совокупные усилия в определенном направлении. Некоторые
из толчков были сильнее, чем другие, но каждое отдельно взятое усилие,
не важно, насколько значительным оно было, — лишь малая доля общего
стремления разогнать колесо.
понедельник, 19 ноября 2018 г.
A programmer: jQuery
Последние несколько занятий разбирался с jQuery. Ничего сложного. jQuery - это фреймворк JavaScript для того, чтобы существенно упростить работу по обеспечению интерактивности веб-страниц.
Подключается он на странице так же, как и любые скрипты - или скачать и прописать путь к файлу, или указать ссылку в интернете. Важно, что указать ссылку на него надо перед ссылкой на пользовательский скрипт.
Нюанс в том, что поскольку jQuery работает с разметкой страницы, его нужно прописывать не в , а перед закрывающим тегом
- для того, чтобы разметка страницы загрузилась до вызова jQuery. Если же все-таки прописывать в , то содержание js-файла должно быть заключено в следующую обертку:Подключается он на странице так же, как и любые скрипты - или скачать и прописать путь к файлу, или указать ссылку в интернете. Важно, что указать ссылку на него надо перед ссылкой на пользовательский скрипт.
Нюанс в том, что поскольку jQuery работает с разметкой страницы, его нужно прописывать не в , а перед закрывающим тегом
jQuery('document').ready(function() {
// код
});
Как он в принципе работает? Очень просто. В самом общем виде команда выглядит следующим образом:
jQuery('document').ready();
Здесь вместо 'document' надо указать теги (селекторы), а вместо ready() - метод, описывающий, что с ними надо сделать (например, что-то добавить/удалить, скрыть/покачать и т.д.).
Для совсем уж интерактива есть методы, которые выполняются при определенном событии (нажатие, передвижение мышки и т.д.). Выглядит это, в общем почти так же:
jQuery('button').on('click', function() {
// код
});
Собственно, и все. Описание методов и событий - см. на сайте jQuery.
Да, все эти команды можно сохранять в переменные и передавать, куда нужно. Особенно востребовано это - если с помощью jQuery получаешь пользовательский ввод:
var value = jQuery('input').val();
И дальше уже можешь использовать эту переменную, как тебе нужно.
Ярлыки:
Become a Programmer,
JavaScript,
jQuery
Подписаться на:
Сообщения (Atom)
