Задать вопрос
  • Как избавиться от кучи хлама в выводе sudo apt update (какие-то 404, игноры и пр.)?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Есть ли какой-то простой способ, чтобы не вникать во всю эту муть
    Конечно есть - нанять специалиста.
    Ответ написан
    8 комментариев
  • Как НЕ фиксировать транзакцию после отработки php скрипта?

    Stalker_RED
    @Stalker_RED
    Непонятно что именно вы таким образом делаете, но в целом похоже на довольно распространенные случаи типа "незавершенная регистрация" или "неоплаченная корзина с покупками", "недописанный и неопубликованный пост" например.
    Если эти данные вам не особо нужны можно вместо БД использовать какое-то другое хранилище - сессию или даже localStorage на клиенте.
    Если нужны, лучше писать все-таки в базу, ставить пометку о том, что это незавершенная история, или устанавливать время жизни, чтобы потом по расписанию удалить просроченные.

    Про сажаю/не сажаю вообще непонятно о чем речь.
    Ответ написан
    5 комментариев
  • Как вывести любую часть древовидного списка?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега MySQL
    Для реализации этой задачи хорошо подходит хранение в виде Nested Set. Хранение в виде Adjacency List подразумевает рекурсию и полную выборку.

    Но самое простое решение в данном случае - просто закешировать отсортированную выборку, не меняя хранение, и резать для пагинации уже её.
    Ответ написан
    Комментировать
  • Как определить, что юзер сайта неактивен в течение определенного времени?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    It depends.
    Если у вас регистрация на сессиях, то можно просто задать время жизни сессии.
    Если на JWT, то соответствующее время жизни токена обновления.
    Если какой-то свой нестандартный вариант, то при запросе проверять время с момента последнего запроса.
    Ответ написан
    8 комментариев
  • Какой хороший ресурс чтобы изучить шаблоны проектирования ООП и все нюансы?

    refactoring.guru - один из наиболее качественных, если говорить о паттернах GoF.
    Ещё книга из серии Head First по паттернам достаточно легко читается.

    Но где применять в реальных задачах - это, в основном, только на практике.
    Ответ написан
    43 комментария
  • Как запустить выполнение кода на серверной стороне по истечении определённого времени?

    Adamos
    @Adamos
    1. Если эти итоги должны только отображаться.
    На той странице, которая будет отображать эти итоги, проверять, подведены ли они и не пора ли.
    Чтобы не случилось так, что страница открыта снова раньше, чем подведены итоги - блокировка.
    2. Если сразу при подведении должны быть выполнены некоторые действия
    Вешать на крон.
    Ответ написан
    3 комментария
  • Как создать тег на хабр Q & A?

    0xD34F
    @0xD34F
    Открываете форму обратной связи. В выпадающем списке "тема" выбираете пункт "гениальная идея". В текстовом поле "текст сообщения" излагаете суть - что за тэг, и почему его следует добавить. Подсказка: "почему следует добавить" - это, как минимум, наличие уже существующих вопросов, к которым новый тэг можно будет прицепить, и, наверное, не в количестве 3-5-10 штук, а побольше. Так что прежде чем предлагать добавление тэга, стоит воспользоваться поиском - убедитесь, что оно того стоит.
    Ответ написан
    Комментировать
  • Как при запросе к ссылке на FOREIGN KEY получить имя пользователя а не id?

    @alexalexes
    https://www.w3schools.com/sql/sql_join.asp
    В вашем случае Orders это artist,
    Customers это track,
    Customers.CustomerName - это ваш искомый artistname.
    В джоине участвуют атрибуты:
    ON Orders.CustomerID=Customers.CustomerID
    а у вас будут:
    ON artist.artistid=track.trackartist
    Ответ написан
    Комментировать
  • Как извлечь данные из привязанной таблицы?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    JOIN
    Ответ написан
    Комментировать
  • Как узнать, для какого процессора предназначен файл?

    bingo347
    @bingo347
    Crazy on performance...
    readelf -h /home/usr/qt-android/mylib.so
    Ответ написан
    Комментировать
  • Какие навыки требуются Junior программисту микроконтроллеров?

    @dima20155
    you don't choose c++. It chooses you
    1. Прежде всего, нужно знание схемотехники, но в вашем случае этот этап можно вычеркнуть.
    2. Естественно, знание основ С и С++ (синтаксиса, базовых конструкций). Советую вам использовать в своих проектах С++, поскольку зачастую вы сможете писать в стиле С без каких-либо проблем, а при необходимости воспользоваться фичами/библиотеками для С++.
    3. Навыки hardware и software отладки. Здесь просто нужна практика с любимой IDE.
    4. Понимание указателей, типов памяти (статическая, динамическая, автоматическая, регистровая). Как память выделяяется и прочее.
    5. Знание базовых структур данных. Это немного скользкий пункт, поскольку С++ предоставляет хорошую (хотя и весьма минималистичную) стандартную библиотеку STL, в которой есть большинство из необходимых структур данных, но они используют довольно много дополнительной аллокации памяти, поэтому если пишете под что-то 8битное, то имейте это ввиду.
    6. Знание git на базовом уровне сейчас важно для джуна любой IT специализации.
    7. Неплохо бы иметь базовое представление о том как устроен микроконтроллер и его архитектура.
    8. Неплохо бы понимать RTOS (FreeRTOS - классика жанра), а главное зачем он нужен, а когда он не нужен или вреден.
    9. Лично мне всегда в работе пригождается python, но это всегда сторонние задачи/автоматизация.

    P.S. Нашел ещё вот такой RoadMap.
    P.S.S. Получилось довольно объемно. Но пункты 2-5 по сути можно объединить в один. Все это можно изучить написав парочку проектов для классической STM32 + HAL.
    P.S.S.S. Сам начинал как hardware разработчик. Путь embedded разработчика начального уровня не был сложным для меня и занял не очень много времени.
    Ответ написан
    Комментировать
  • Почему доступен не весь объем SSD на linux?

    SagePtr
    @SagePtr
    Еда - это святое
    Часть зарезервирована пользователю root, недоступная другим пользователям, через tune2fs можно изменить.
    Ответ написан
    2 комментария
  • Почему вылезает ошибка tuple index out of range?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Потому что fetchone возвращает кортеж колонок выборки. Выбираете вы одну колонку - vig, соответственно, это кортеж из одного элемента. Вы же пытаетесь обратиться к 4-у, что и вызывает ошибку.
    Ответ написан
    1 комментарий
  • Можно ли написать SQL запрос с выражением в WHERE и в SELECT, но без повторения этого выражения и без вложенного SELECT?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    --WHERE val = 'e59253548ffcb090ecc0cd0944afd27f'
    ++HAVING val = 'e59253548ffcb090ecc0cd0944afd27f'
    Ответ написан
    Комментировать
  • Почему ПК не включается хотя, сигнал от матери есть на секунду?

    1HAWK1
    @1HAWK1
    Причин, по которым ПК не включается даже при наличии сигнала от материнской платы в течение секунды может быть несколько. Вот некоторые возможные причины:

    Проблемы с блоком питания: если блок питания не обеспечивает достаточную мощность для материнской платы, ПК может не включаться должным образом. Это может быть связано с неисправным блоком питания, ненадежным соединением или скачком напряжения, который повредил блок питания.

    Перегрев: если компьютер перегрелся, он может выключиться, чтобы предотвратить повреждение оборудования. Это может произойти, если система охлаждения не работает должным образом или если в системе скопились пыль и мусор.

    Неисправное оборудование. Неисправный аппаратный компонент, например, оперативная память или процессор, может привести к тому, что ПК не включится. Это может произойти, если компонент поврежден, неправильно установлен или несовместим с материнской платой.

    Проблемы с BIOS: если настройки BIOS неверны, компьютер может не включиться должным образом. Это может произойти, если BIOS был сброшен или возникла проблема с прошивкой BIOS.

    Проблемы с материнской платой: если материнская плата повреждена или неисправна, она может не иметь возможности должным образом взаимодействовать с другими аппаратными компонентами ПК. Это может привести к невозможности включения или короткому сигналу перед выключением.

    Чтобы определить точную причину проблемы, может потребоваться выполнить некоторые шаги по устранению неполадок или обратиться за помощью к профессиональному специалисту.
    Ответ написан
    Комментировать
  • Могу я задать вопрос по коду, как мегаджун JS?

    @collapsoid
    1. Лишние манипуляции над домом.
    appendChild нужно делать только после того, как элемент и все его дети будут настроены. Т.е. если в функции showMessage сначала настроить messageWrapper (задать класс; добавить в него message) и только потом сделать document.body.appendChild, то можно выиграть в производительности за счет меньшего количества обращений к DOM-дереву.

    Эти строки вызывают вопрос, т.к. не очень понятно, зачем нужно добавлять элементу класс и через 100 миллисекунд его убирать. Выглядит, как что-то ненужное
    messageWrapper.classList.add("messageWrapperUnvis");
    setTimeout(() => {
      messageWrapper.classList.remove("messageWrapperUnvis");
    }, 100);


    2. Ивент листенеры нужно удалять за собой.
    Нужно убирать отратобавшие event listeners, т.к. их накопление приводит к утечке памяти.
    Также желательно пересмотреть подход к определению слушателей вообще, т.к. в функции modalWindow на каждое событие contextmenu устанавливается другое событие contextmenu, назначение которого только лишь в том, чтобы удалить предыдущий currentDiv. Имеет смысл вынести currentDiv в функцию modalWindow, а внутри слушателя делать необходимую проверку.

    3. Нерациональный ранний выход из функции.
    В функции modalWindow нет смысла создавать элементы, кроме wrapper, т.к. при срабатывании условия e.target.matches("#input") произойдет return и ранее созданные элементы просто окажутся бесполезными. Т.е. if нужно разместить непосредственно после wrapper.

    4. Бесполезные элементы.
    Функцию addNewItem я бы вообще переделал, т.к. внутри нее на каждый keypress производится куча действий над элементами, которые в итоге так и не попадут на страницу: nListItem и remove будут добавлены только при e.key === "Enter" && input.value !== "" (кстати, нет смысла плодить вложенные if'ы, когда можно использовать булевы выражения).

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

    Когда код небольшой части приложения становится осмысленным для создающего, появляется мотивация упорядочивать его в глобальных масштабах, т.е. решать архитектурные вопросы, что в совокупности с шишками, которые принесет этот процесс, в конечном итоге, сделает тебя более скилованным разработчиком.
    Ответ написан
    Комментировать
  • Могу я задать вопрос по коду, как мегаджун JS?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    1) Плохой код, который выполняет задачу, лучше чем отсутствие кода
    2) Перед работой составьте примерный план, например: "сначала получаем данные, потом с ними делаем это или это, потом выводим..." Это помогает не лепить откровенную фигню по ходу дела и не переписывать все по 10 раз.
    3) Смысл рассматривать простыню из кода новичка отсутствует, так как это похоже на оценку походки будущей фотомодели по первым шагам в ходунках. Никто не пишет хороший код сразу, учиться и писать много - лучший путь обучения.
    4) Смотрите на чужие готовые решения, думайте как использовать интересные приемы, именно свои выводы и ошибки делают вас программистом+, а не гов*окодером. Задатки и желание у вас есть, значит все получится.
    Ответ написан
    Комментировать
  • Как убрать нумерацию в начале строки через регулярные выражения?

    Stalker_RED
    @Stalker_RED
    /^[\d\.\s]+/
    ^ - искать в начале строки
    []- список символов
    \d - цифры
    \. - точка
    \s - пробельные символы
    + - в количестве от одного

    Вот этот сервис очень удобен для отладки регулярок. Там и шпаргалка, и подробно расписано как что работает,и разные реализации регулярных выражений (не во всех языках реализована полная поддержка).
    https://regex101.com/r/otwtgd/1
    Ответ написан
    Комментировать