• Как урезать свой перфекционизм?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Цените свое время и деньги.
    За перфекционизм не платят, платят за работу, которая соответствует требованиям заказчика, а не вашим личным.

    Перфекционизм должен вам помочь не стоять на месте и постоянно развиваться, но это означает, что делая работу вы все время обращаете внимание на мелочи и учитесь их делать лучше - в будущем это вам поможет сразу делать круче и соответственно находить более сложные и высокооплачиваемые задачи.

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

    Короче. Правильно ставьте приоритеты.
    Ответ написан
    Комментировать
  • Как бороться с рябью на экране в Ubuntu?

    Winsik
    @Winsik
    сис.админ, недопрограммист :)
    попробуйте другой монитор, есть вероятность что БП у монитора барахлит
    Ответ написан
    4 комментария
  • BASH. Как получить PID запускаемого процесса, чтобы его потом убить?

    dlinyj
    @dlinyj Автор вопроса
    Сам спросил, сам ответил.. unix.stackexchange.com/questions/30370/how-to-get-...
    Ответ написан
    Комментировать
  • 301 редирект, как правильно расположить по порядку?

    shambler81
    @shambler81 Куратор тега htaccess
    если вы используете двухуровневые конструкции типа

    RewriteCond %{REQUEST_URI} ^(.*)/{2,}(.*)$
    RewriteRule . %1/%2 [R=301,L]
    то разницы нет никакой.
    А вот если вы делаете просто
    RewriteRule catalog$ http://site.ru/goods[R=301,L]
    RewriteRule catalog/tovar3.html$ http://site.ru/goods/tovar/tovar3[R=301,L]
    то в таком случае редирект каталога должен стоять после редиректов всех внутри него.
    Ответ написан
    Комментировать
  • Как сделать, чтобы слайдер показывал часть предыдущего и следующего слайдов?

    @elenabaranova
    UX Designer
    в owl carousel опция stagePadding,
    www.owlcarousel.owlgraphic.com/demos/stagepadding.html
    Ответ написан
    Комментировать
  • Как устроена организация многостраничного сайта?

    @Sratimon
    Засовываешь повторяющиеся блоки в php файлы
    к примеру меню , сайт бары , шапку и подвал.
    а далее на тех страницах на которых они повторяются просто подключаешь их и все !
    по сути на сайте меняется только контент а стольные блоки просто нету смысла копировать и заново писать в 5 html .
    Да и при использовании php тебе не придется делать изменения в 5 html файлах что бы поправить меню просто находишь в каком php лежит твое меню и правишь .
    Еще большой + при использование php можно хранить название кнопок меню и ссылак на них в бд .
    А при использование циклов код ставиться сказкой =)
    Ответ написан
    Комментировать
  • Как продвигать доску объявлений?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    сначала наполните, с того же Авито, но лучше бы генератором, потом уникализируйте новые тексты и добейтесь чтобы быстро попадали в Яндекс
    Ответ написан
    2 комментария
  • Почему сильно греется видеокарта на ноутбуке под Linux?

    Chvalov
    @Chvalov
    Было такое на ЦП, когда радиатор с кулером был плохо прижат к процессору, может и у вас также
    5 мин и комп уходил в защиту
    Ответ написан
    1 комментарий
  • Где и как лучше хранить конфиденциальные данные для разворачивания проекта?

    @redakoc
    Разделять/отделять/четко ограничивать полномочия.

    Небольшой сервис, управляющий ключом, например, а остальные не имеют к ключам доступа, а только к этому сервису обращаются. А он им разрешает делать только то, что можно.

    Или пример как работает CloudFlare KeyLess посмотрите.
    Ответ написан
    Комментировать
  • Как убрать отступы на телефонах в бутстрап?

    Выставить для
    .col-xs-* {
        padding: 0;
    }

    Или использовать
    class="container-fluid"
    Ответ написан
    Комментировать
  • Как убрать отступы на телефонах в бутстрап?

    @entermix
    Используйте медиа-запросы
    Ответ написан
    Комментировать
  • Как сверстать такое меню?

    Padreramnt
    @Padreramnt
    Padreramnt
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style>
            .tab-controls {
                display: flex;
                flex-direction: row;
            }
    
            .tab-control {
                flex: 0 0 100px;
                z-index: 0;
                height: 60px;
                width: 100px;
                margin-left: -5px;
                border-bottom: 1px solid rgb(12, 12, 12);
                -webkit-box-sizing: border-box;
                -moz-box-sizing: border-box;
                box-sizing: border-box;
            }
            .spacer {
                flex: 1 1 8000px;
                border-bottom: 1px solid rgb(12, 12, 12);
            }
    
            .tab-control:first-child {
                margin-left: 0;
            }
    
            .tab-panel {
                display: none;
            }
    
            #tab input:nth-of-type(1):checked ~ .tab-panels .tab-panel:nth-child(1),
            #tab input:nth-of-type(2):checked ~ .tab-panels .tab-panel:nth-child(2),
            #tab input:nth-of-type(3):checked ~ .tab-panels .tab-panel:nth-child(3),
            #tab input:nth-of-type(4):checked ~ .tab-panels .tab-panel:nth-child(4),
            #tab input:nth-of-type(5):checked ~ .tab-panels .tab-panel:nth-child(5) {
                display: block;
            }
    
            #tab input:nth-of-type(1):checked ~ .tab-controls .tab-control:nth-child(1),
            #tab input:nth-of-type(2):checked ~ .tab-controls .tab-control:nth-child(2),
            #tab input:nth-of-type(3):checked ~ .tab-controls .tab-control:nth-child(3),
            #tab input:nth-of-type(4):checked ~ .tab-controls .tab-control:nth-child(4),
            #tab input:nth-of-type(5):checked ~ .tab-controls .tab-control:nth-child(5) {
                z-index: 9;
                border-bottom: 1px solid rgba(0, 0, 0, 0);
            }
        </style>
    </head>
    <body>
    <div id="tab">
        <input id="tabInput1" type="radio" name="tabControlsNamespace">
        <input id="tabInput2" type="radio" name="tabControlsNamespace">
        <input id="tabInput3" type="radio" name="tabControlsNamespace">
        <input id="tabInput4" type="radio" name="tabControlsNamespace">
        <input id="tabInput5" type="radio" name="tabControlsNamespace">
    
        <div class="tab-controls">
            <label id="tabControl1" for="tabInput1" class="tab-control">
                <svg width="100" height="60">
                    <path d="M100,60 C80,0 80,0 70,0 L0,0 L0,60" fill="black" stroke-width="2" stroke="black"
                          shape-rendering="geometricPrecision"></path>
                </svg>
            </label>
            <label id="tabControl2" for="tabInput2" class="tab-control">
                <svg width="100" height="60">
                    <path d="M100,60 C80,0 80,0 70,0 L5,0 L0,60" fill="red" stroke-width="2" stroke="black"
                          shape-rendering="geometricPrecision"></path>
                </svg>
            </label>
            <label id="tabControl3" for="tabInput3" class="tab-control">
                <svg width="100" height="60">
                    <path d="M100,60 C80,0 80,0 70,0 L5,0 L0,60" fill="green" stroke-width="2" stroke="black"
                          shape-rendering="geometricPrecision"></path>
                </svg>
            </label>
            <label id="tabControl4" for="tabInput4" class="tab-control">
                <svg width="100" height="60">
                    <path d="M100,60 C80,0 80,0 70,0 L5,0 L0,60" fill="blue" stroke-width="2" stroke="black"
                          shape-rendering="geometricPrecision"></path>
                </svg>
            </label>
            <label id="tabControl5" for="tabInput5" class="tab-control">
                <svg width="100" height="60">
                    <path d="M100,60 C80,0 80,0 70,0 L5,0 L0,60" fill="steel" stroke-width="2" stroke="black"
                          shape-rendering="geometricPrecision"></path>
                </svg>
            </label>
            <div class="spacer"></div>
        </div>
        <div class="tab-panels">
            <div id="tabPanel1" class="tab-panel">
                это первая панелька
            </div>
            <div id="tabPanel2" class="tab-panel">
                это вторая панелька
            </div>
            <div id="tabPanel3" class="tab-panel">
                третья панелька
            </div>
            <div id="tabPanel4" class="tab-panel">
                третья панелька
            </div>
            <div id="tabPanel5" class="tab-panel">
                четвертая панелька
            </div>
        </div>
    </div>
    </body>
    </html>

    прошу прощения за "дивную" верстку
    как пользоваться:
    1. создайте обертку для будущего виджета с закладками tab-widget
    2. добавьте нужное кл-во радио-кнопок (не забудьте про пространство имен этих кнопок, если желаете использовать несколько таб-виджетов на странице)
    3. добавьте блок-контейнер для кнопок control-box
    4. добавьте в control-box необходимое кол-во лейблов control-label (не забудьте связать их с инпутами for="{{tabInputId}}")
    5. добавьте в tab-widget блок-контейнер panel-box
    6. добавьте в panel-box необходимое кол-во панелей


    для интересного дизайна использовались svg (Scalable Vector Graphics)
    принцип работы svg path:
    коодринаты холста: 0, 0 - верхний левый угол; 100, 60 - нижний правый
    M - абсолютное перемещение кисти в точку x, y
    C - кубическая кривая Безье, стартует из текущей точки кисти, через управляющие точки x1, y1; x2, y2 в точку x, y
    L - рисование прямой в абсолютную точку x, y
    baedc35203794df08fdef38df71a9043.png
    что такое svg, читайте в интернете
    Основной принцип я изложил; стили, цвета и размеры кнопок и панелей подбирайте сами
    как работают кривые Безье можно посмотреть здесь: jquerymy.com/#CW-bzier-curv
    удачи =З
    Ответ написан
    Комментировать
  • А вы сохраняете себе кусочки кода для повторного использования?

    iCoderXXI
    @iCoderXXI
    React.JS/FrontEnd engineer
    Есть блоки, которые применяются постоянно и кочуют из проекта в проект. Например роутер - блок кода, который решает, как и чем обрабатывать запрос. Или, например, блок, который готовит данные для отображения в jqGrid по AJAX запросам. Или блок, который занимается аутентификацией/авторизацией.

    В целом по мере накопления опыта за годы выкристаллизовался мини-MVC-фреймворк, который вполне справляется с возложенными на него задачами. Конечно это поделка на коленке и для серьезного продакшена не подходит, но при этом 30 тысяч уников в сутки держало на хлипеньком шаренном хостинге нормально... :) И да, ломать пытались постоянно, но безуспешно. В том числе благодаря библиотеке DBSimple.
    Ответ написан
    Комментировать
  • Почему не работает сайт (ошибка 500)?

    jacksparrow
    @jacksparrow
    Как раз недавно читал анекдот. У незнающего человека сломалась машина, ну он и начал менять воду для дворников.
    Вы дали примерно ноль информации, которая могла бы помочь дать ответ. Вам нужно открыть логи, либо вывести ошибки в браузер. И вот по ним уже можно хоть как то ориентироваться, что не так. Если вы не знаете: как, зачем это нужно и тд., вам следует подтянуть базовые знания по работе с вебом, либо нанять человека, который этим бы занимался, т.к. это действительно не проблемы поддержки таймвеба.
    Ответ написан
    Комментировать
  • Почему не работает сайт (ошибка 500)?

    VladimirAndreev
    @VladimirAndreev
    php web dev
    я бы в лог ошибок заглянул...
    Ответ написан
    Комментировать
  • Что лучше использовать ID или class?

    @DP-Studio
    20 лет веб-разработки
    Когда в коде появляется ID, где-то в мире грустит котёнок...
    Ответ написан
    Комментировать
  • Почему не срабатывает код в htaccess?

    aliencash
    @aliencash Автор вопроса
    Партизан
    Все, разобрался. Оказалось просто опечатки.
    Ответ написан
    Комментировать
  • Как сделать, чтобы редактор автоматически закрывал тег и помещал курсор между открывающим и закрывающим тегом?

    Kublyakov
    @Kublyakov
    Emmet разве не используете для html? Ввели тэг, нажали Tab - получили развернутый тэг с курсором между ними.
    P.S. Кроме этого куча незаменимых фишек прилагается emmet.io
    Ответ написан
    2 комментария
  • Что нужно сделать, чтобы при прокрутке вверх с мобильного перестала дёргаться картинка?

    Kublyakov
    @Kublyakov
    Предположу, что из-за размеров и веса изображения происходят такие скачки. Попробуйте для маленьких разрешений загружать изображение меньшего размера через media выражения.
    Ответ написан
    1 комментарий
  • Как понять return (current.push([next, obj[next]]), current)?

    petermzg
    @petermzg
    Самый лучший программист
    В массив current добавляется элемент-массив из 2х элементов [x , y],
    где x = next, а y = obj[next].
    А затем возращается из функции обьект current.
    Ответ написан
    1 комментарий