• Как изменить название коммита в Git?

    EXL
    @EXL
    Энтузиаст
    git commit --amend исправляет (перезаписывает) только последний коммит. Если вам требуется изменить всю историю проекта - воспользуйтесь командой git rebase -i --root, про которую можно прочитать тут. Естественно коммиты не должны быть публичными.
    Ответ написан
    Комментировать
  • Как сделать так, чтобы этот скрипт клал файл в определенную папку?

    slo_nik
    @slo_nik Куратор тега PHP
    Добрый вечер.
    Во-первых, используйте copy(), если Вам надо скопировать файл с другого сервера.
    Во-вторых, запишите в переменную нужный путь и подставляйте в copy()
    Ответ написан
    Комментировать
  • Как автоматически заменить в разных CSS-файлах любые относительные пути на абсолютные?

    dmitry_pavlov
    @dmitry_pavlov
    World-class .NET freelance contractor (remotely)
    Не думаю, что это хорошая затея, так как при обновлении версий плагинов - будет проблема обновляться.

    Это видели? www.gambit.ph/converting-relative-urls-to-absolute...
    Ответ написан
    6 комментариев
  • Как выполнить цикл foreach в php со второй или последующих итераций?

    muhammad_97
    @muhammad_97
    PHP-разработчик
    foreach($array as $index => $element) {
        if ($index < 1) {
            continue;
        }
    
        // ...
    }
    Ответ написан
    4 комментария
  • Как остановить setInterval?

    riky
    @riky
    Laravel
    во первых clearInterval
    во вторых функцию вы сразу же вызываете

    надо так
    кнопка.addEventListener ("mouseup" , function() { 
        clearInterval(timerId); 
    } , false);
    Ответ написан
    Комментировать
  • Библиотеки и пространства имен. Нужно ли их переименовывать?

    okwinza
    @okwinza
    PHP Developer
    Нет. Зачем? Если вы не трогаете их код, они должны лежать себе в папке vendor спокойно.
    Ответ написан
    Комментировать
  • Как вы освоили шаблоны проектирования?

    dmitry_pavlov
    @dmitry_pavlov
    World-class .NET freelance contractor (remotely)
    Когда начался бум и восторг вокруг концепции паттернов проектирования, выкрики "GoF рулит!" и так далее, я озадачился тем, чтобы понять, что за шум?

    По своей сути - паттерны - это обычные шаблоны проектирования. Заимствовано у обычных архитекторов (те, которые зданиями занимаются). Суть проста. В работе архитектора есть задачи, которые удобно решать одним или несколькими проверенными способами.

    По аналогии в проектировании софта имееются свои архитектурные вопросы вроде разбиения приложения на компоненты/модули, организации зависимостей между ними, распределение функциональных обязанностей и т.п. Как ловко подметили авторы книжки из этой банды четырех (The "Gang of Four") в нашей индустрии можно также выделить некоторе количество типовых шаблонов, проверенных на практике, чтобы тем самым не наступать на уже обойденные другими грабли.

    Суть постижения паттернов заключается в том, чтобы осознать в каких ситуациях правильно использовать тот или иной шаблон проектирования и правильно его применить. Важно понимать при этом, что формула "чем больше паттернов я придумал засунуть с свое приложение - тем лучше" - неверная. Использовать их следует с умом и только там, где они действительно нужны. Кроме того, патерны устаревают, превращаются в анти-паттерны по мере развития технологий (которые в нашей области делают это более чем стремительно). Ну и, конечно, есть шаблоны общепринятые и есть те, которые успешно используются в узких кругах.
    Тут тоже надо понимать, что это не догма какая-то - типа 10 священных паттернов проектирования :)

    Чтобы понять, где они нужны - нужен опыт. То есть (я лично убежден), что учиться на ошибках других может только крайне ограниченное число людей. Все остальные обязаны набить шишки самостоятельно :)

    К изучению паттернов я дам такие советы:

    1) Прочтите пару книжек, чтобы понять, что это за зверь и с чем его едят. Можно взять одну из вариаций книжки GoF или какие-то производные для вашего стека разработки - познакомиться с основными популярными шаблонами. Сразу после этого я посоветовал бы прочесть книжку "Горький вкус Java" (Брюс Тейт) - она про анти-паттерны. Это чтобы понять обратную сторону их использования. Мне понравилась и уберегла думаю от многих проблем. То что на примере Java - неважно. Речь идет о шаблонах, так что представителям других стеков (к которым отношусь и я) будет просто понять все равно.

    2) Постарайтесь осознать, доводилось ли вам сталкиваться в работе раньше с чем-то, что является или могло бы легко стать одним из шаблонов. Где получалось применить концепт верно, а где из-за этого только проблемы были.

    3) В новых проектах, держите в голове полученные по шаблонам знания - вдруг пригодятся.

    В конечном итоге, знаете ли вы паттерны, или нет - с опытом приходит понимание того, какая архитектура будет правильная, а какая - нет. Как сделать удобно, а как нет. И неважно, какими паттернами это обозвать.

    Я даже пожалуй посоветовал бы подойти к освоению айтишной архитектурной мудрости с другой стороны - со стороны нефункциональных требований или так называемых "-ilities" - их много. Тут вот описаны 7 штук. А вообще их десятки.

    Среди прочих - такие как maintainability (простая поддержка кода), scalability (масштабируемость), extensibility (расширяемость), availability (устойчивость ) и тп. Если, проектируя свое приложение, вы задумываетесь об этих "илитях" и стараетесь их обеспечить в необходимом проекту объеме, то, как правило, ваше приложение будет иметь отличную архитектуру. При этом шаблоны проектирования в ней появятся лаконично сами собой.

    Поскольку идея использовать шаблоны - это попытка опытных программных инженеров дать десяток готовых рецептов менее опытным, чтобы пока они не научились варить "вкусную кашу", они не варили уж что-то совсем несъедобное. :) Учитесь "готовить", разбирайтесь в -ilites :) и все будет хорошо
    Ответ написан
    6 комментариев
  • Как вы освоили шаблоны проектирования?

    goodprogrammer
    @goodprogrammer
    к. ф.-м. н.
    Опасная дорожка — заставлять себя применять паттерны. Паттерны не волшебная таблетка.

    Гораздо лучше самому сесть и подумать над решением, потом решить, набить шишек и через время изучить паттерны. Тогда будет настоящее понимание, где и как их применять.

    А то такого набыдлокодите, что мама не горюй :(
    Ответ написан
    3 комментария
  • Как, помимо mac-адреса, wifi-роутер мог бы идентифицировать устройство?

    @NRinat
    Идентифицировать можно еще по сертификату устройства.
    Ответ написан
    Комментировать
  • Как, помимо mac-адреса, wifi-роутер мог бы идентифицировать устройство?

    MaxDukov
    @MaxDukov
    впишусь в проект как SRE/DevOps.
    я бы посоветовал почитать про 802.1X
    Ответ написан
    Комментировать
  • Можно ли передать в CDBCriteria->addInCondition параметр через плейсхолдер?

    R0dger
    @R0dger
    Laravel/Yii/2 AngularJs PHP RESTful API
    Ну вроде Вам в
    Документации
    все написано. Так нельзя. Ну хочется выежнуться, пишите на SQL и добавляйте там все плейсхолдеры вручную. ну вот только смысл.....
    Ответ написан
    Комментировать
  • Yii 1: Почему dynamicRender помирает (без логов) на CListView?

    R0dger
    @R0dger
    Laravel/Yii/2 AngularJs PHP RESTful API
    Логи сервера как я понимаю, а что в логах $app/runtime/logs/app.log
    ошибки обычно там пишутся.
    Ответ написан
    4 комментария
  • Считается ли плохой практикой использование текстовых узлов?

    alexk111
    @alexk111
    Автор Ботодрома (автоматизация Telegram, VK и др.)
    лучше обернуть:
    1. в случае чего будет проще искать куски кода, которые работают с числом.
    2. при обращении не через childNodes, а по селектору, Вы будете застрахованы от багов в связи с добавлением каких-нибудь новых элементов внутри
    Ответ написан
    Комментировать
  • Считается ли плохой практикой использование текстовых узлов?

    @dmitryKovalskiy
    программист средней руки
    Тег span сделан для логического выделения текста. Если у вас есть блок, который меняется средствами клиентских скриптов - логично выделять такие элементы в отдельный тег. На мой взгляд проблема в том что сегодня у вас есть возможность по косвенным признакам выдрать этот текст, а завтра там что-то добавится и уже такая возможность пропадет и все равно придется делать выделение в тег.
    Ответ написан
    Комментировать
  • Загадочный SintaxError: в чём же ошибка?

    var fb.widgets

    попробуй заменить на
    fb.widgets
    Ответ написан
    Комментировать
  • Действительно ли важно правильное питание для мозга программиста (с точки зрения науки)?

    DmitryITWorksMakarov
    @DmitryITWorksMakarov
    По своему опыту скажу: вот когда на каком-нибудь мероприятии выпьешь так от души (не один бокал красного, а побольше), дня 3-4 нормально не соображается. Я могу кодить. Но придумывать красивые абстракции и писать отличный код, вряд ли. Мозг функционирует на каком-то самом верхнем уровне.
    Также заметил, что если не принимаю витамины, то все время хочется спать. Весь день сонный. Домой приходишь, поужинал и вырубился. Никаких домашних дел, личной жизни, хобби. С витаминами сил как-то больше. Витамины - обычный Компливит.

    По поводу других людей. Люди же разные. У кого-то изначально здоровья побольше, у кого-то соображаловки, у кого-то мозги по другому устроены и конкретно в этой задаче они могут даже в состоянии жёсткого похмелья решать вопросы, которые для других запредельно сложны, у кого-то учителя были отличные и они уже сейчас умеют делать то, до чего ты дойдешь лет через 5...7 своей головой и руками.
    Но это все не значит, что они через десять лет будут также продуктивны, что они будут способны угнаться за прогрессом, который в нашей области деятельности более чем стремителен.

    А вообще в таких вопросах нет четкого конкретного ответа: если будешь бухать Золушка, то ровно в 12 часов твоя голова превратится в тыкву. Тут правильнее говорить о корреляции. Чем менее правильный образ жизни ведешь, тем больше вероятности ты получишь проблемы и тем раньше.
    Ответ написан
    4 комментария
  • Действительно ли важно правильное питание для мозга программиста (с точки зрения науки)?

    @LEKAPb
    Расскажу историю из моей жизни которая началась в сентябре этого года, а выводы делайте сами. К своим 25 годам я имел безумную продуктивность со следующим рационом:
    1. Сигареты - 3 пачки в сутки.
    2.Отличный молотый кофе из кофемашины с безумным количеством сахара- 10 -12 кружек.
    3.Очень жирная и калорийная и безумно вкусная еда.
    4. Энергетики несколько банок для разогреву.
    5. Шоколадки и прочее сладкое в неограниченном количестве.
    Данный рацион вводил организм в "pежим бога" на 7 дней в неделю , можно было не есть или не спать ,очень продуктивно решать задачи почти круглосуточно , а того более и несколько задач одновременно. Безумное маниакальное желание постоянно кодить ,позволяло успевать делать сайд проекты и работать на фрилансе. Все было отлично и я не собирался сбавлять темп до тех пор, пока скорая не увезла меня чуть ли не с рабочего кресла в больницу, где я провалялся ещё около месяца. Сейчас строгая диета - сухари и травяной чай. Успокоительные и постельный режим. Конечно я понимаю что у меня это крайний случай и на него ориентироваться не стоит, но выводы для себя можно сделать следующие:
    1.'Самое главное - это здоровье. Когда ты полудохлых тебя меньше всего интересует твоя продуктивность.
    2. Здоровьем надо заниматься и правильно питаться исходя минимум из самоуважения к себе.
    3. Работа должна стать частью вашей жизни а не самоцелью, правильно расставив приоритеты вы поймёте, что необходимо развивать что бы быть более успешным в своём деле. Продуктивность - это далеко не самый важный показатель в работнике, есть и другие которые тоже влияют на то как ваша работа оценивается.
    4. Вы прежде всего человек. Начните правильно питаться и вести Зож хотя бы как человек, а потом уже как программист.
    Ответ написан
    Комментировать