• Как правильно создать такую РК в Google Ads?

    DeoZ
    @DeoZ
    Веб-разработка и Реклама
    По идее должно работать так:
    1 группа: [билеты в москву]
    2 группа: билеты в москву ( в минус-слова группы добавить [билеты в москву] )
    Если сразу не начнёт ругаться, чтобы удалили минус-слово из группы, то должно сработать.
    Ответ написан
    1 комментарий
  • Как сделать, чтобы при удалении записей остальные id записей начинались с 0?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Никак не делать .
    Этот вопрос очень часто задают новички, от непонимания базовых принципов

    Ид вообще никогда не надо трогать.
    Менять ид в базе это все равно что ученикам в классе каждый раз давать новые имена, чтобы они всегда сидели по алфавиту

    Либо тебе это поле вообще не нужно, и его надо убрать, либо просто оставь его в покое и никогда не трогай его руками
    Ответ написан
    1 комментарий
  • Как открыть доступ из интернета и локальной сети на локальный веб сервер?

    @maxtrelle Автор вопроса
    Решение:
    nano /etc/nat

    #Разрешаем входящие подключения на 80
    iptables -A FORWARD -i eth0 -p tcp --dport 80 -j ACCEPT

    # Форвардинг 80
    iptables -t nat -A PREROUTING -p tcp -d $EXT --dport 80 -j DNAT --to-destination $IPlocal
    iptables -t nat -A POSTROUTING -p tcp --dst $IPlocal --dport 80 -j SNAT --to-source $EXT

    $EXT - внешняя
    $IPlocal - внутренняя IP веб сервера

    nano /etc/network/interfaces
    допишем:
    post-up /etc/nat

    Спасибо всем
    Ответ написан
    Комментировать
  • Как сделать такого рода эффект?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    не могу найти в поиске

    SVG-маски, маски с помощью clip-path в CSS, маски на канвасе, маски в шейдерах, и.т.д. В общем гуглите все, что связано со словом "маска". Вариант с шейдерами самый производительный, с SVG - самый простой.

    Пример с SVG:


    Пример с шейдерами (не совсем такой, но для передачи идеи пойдет):
    Ответ написан
    Комментировать
  • Как взять вторые 10 значений из БД?

    dyuriev
    @dyuriev
    A posteriori
    $first_page= acc("SELECT * FROM `list` ORDER BY `id` DESC LIMIT 10 OFFSET 10");


    В документации все есть
    https://dev.mysql.com/doc/refman/8.0/en/select.html

    [LIMIT {[offset,] row_count | row_count OFFSET offset}]
    Ответ написан
    1 комментарий
  • Как прикрутить многопоточную обработку без проблем с памятью?

    Генерацию самих строк стоит оформить как IEnumerable, а их обработку - при помощи Task.
    Ответ написан
    Комментировать
  • Как работать с большим количеством запросов?

    Использовать транзакцию и выполнять блокировку строки таблицы на запись перед увеличением значения
    Ответ написан
    2 комментария
  • Встречались ли вам овер-инженеры среди джунов и миддлов? Как надо с такими поступать?

    DevMan
    @DevMan
    человек вообще ни у чом не уиноват.
    просто в компании не выстроены (или не правильно выстроены) бизнес-процессы.

    человек с горящими глазами и скилованный - офигенный актив. прост нужно этот энтузиазм направить в нужное русло. и это элементарно решается административными способами, если между собой разобраться не удаётся.
    Ответ написан
    10 комментариев
  • В чем разница .NET и C#?

    ArXen42
    @ArXen42
    .NET - платформа, в частности включает в себя CLR, CLS и FCL. C# - один из языков, компилируемых в IL код под эту самую CLR. Также существует альтернативная реализация некоторой части .NET (в т.ч. компиляторы некоторых языков и сама среда исполнения) - Mono.
    P.S. надо же, запомнил наконец эти аббревиатуры.
    Ответ написан
    1 комментарий
  • Как такое сверстать?

    RAX7
    @RAX7
    Держи, немного поправил один из своих старых набросков.

    Принцип работы примерно, как описал Максим Морев в своем ответе.
    Ответ написан
    2 комментария
  • Как вы систематизируете компоненты и стили в Фигме?

    Nekto_Habr
    @Nekto_Habr
    Чат дизайнеров: https://t.me/figma_life
    Мда, чуваки придумали охрененно крутую новую парадигму работы над дизайном, но по сути кинули щенят в реку, а нам теперь самим выплывать. Сам миллиард раз переделывал один и тот же макет, т.к. в процессе постоянно приходили новые идеи, как этот самый процесс оптимизировать.

    По поводу цветов. Есть два подхода, старый и новый.

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

    Новый - хранить цвет в стиле, тут лишний раз объяснять не нужно, но есть нюансы. Главная боль - политика именования. Как называть цвета? "Главный акцент - светлый / средний / тёмный", "Вторичный акцент - ... "? Или же "Голубой - светлый / средний / темный", "Зелёный - ..."? Или "Активный / Отключенный / Ховер"? Лично я для себя решил, что первый вариант лучше. Еще одна проблема - я хочу иметь под рукой не только лишь ограниченный набор цветовых стилей, а целую палитру, особенно актуально это в начале дизайна, когда хз какие цвета закрепятся в макете.

    Но это целый вагон стилей. Например в материальной палитре их 256 (гики, лол), и листать мелкую панельку со стилями банально отнимает драгоценное время. Вот в таком случае выручают компонентные цвета, т.к. компоненты аккуратно сортируются в выпадающем меню инстансов (если их правильно обозвать, разумеется).

    5c26392b5b998478772190.png

    По поводу твоей проблемы - а ты не пробовал инструменты выделения?
    5c2639f3b2e78215242530.png

    *
    По поводу состояния элементов. Раньше я тоже внутри кнопки хранил еще и другие ее состояния, в скрытом виде.

    Теперь поступаю проще - создаю отдельные компоненты её фона: активная, ховер, и т.п., и создаю компонент кнопки например из текста и компонента активного фона, который потом заменяю на disabled, focus, hover, что угодно, ну и цвет текста меняю (стилем цвета или компонентным цветом опять таки). Это сильно упрощает структуру кнопки и улучшает вид стопки слоёв.

    По поводу твоей проблемы - ты создаешь отдельные компоненты, и потом облазишь макет и заменяешь инстансы на новые дизайны, а ты попробуй сделать ровно наоборот: создай копии оригинальных компонентов, детачни их в качестве бек-апа, и смело модифицируй оригиналы. В теории, это сэкономит время, т.к. дизайн поменяется автоматически, а если что - переделаешь потом компоненты на старый лад. Этот процесс сильно ускоряется шорткатами ctrl+alt+c и ctrl+alt+v (копирование и вставка свойств объекта) с зажатым ctrl (это позволяет проникать внутрь группы в один клик).

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

    А проблема с прыжками ко фрейму (или выделенной странице) с компонентами и обратно к макету решается очень просто: я тупо перетаскиваю все компоненты поближе к макету, с которым я в данный момент работаю, даже если он на другой странице. Сильно экономит время.

    По поводу политики имён компонентов. Здесь хорошо действует принцип, позволяющий грамотно организовывать папки на жестком диске: структура каталогов должна быть максимально плоской. Даже для крупного проекта достаточно создать всего три фрейма:

    - Иконки (даже если под сотню)
    - Элементы интерфейса (атомы и молекулы)
    - Интерфейсы (организмы и страницы)

    Ну и если решил создать компонентные цвета - еще и для них фрейм. Внутри этих фреймов не нужно использовать слеши в названиях компонентов! Компоненты будут наследовать имена страницы и фрейма, на котором они находятся, типа Page1/icons/vk-logo. Понятно, что например иконок может быть под сотню, но в итоге такая плоская структура сильно способствует скорости работы, а быстрый поиск в длиннющем списке через меню инстансов должен облегчаться грамотными префиксами и суффиксами названий, например вместо того чтобы создавать отдельный каталог иконок соцсетей вида Page1/icons/social/vk, нужно тупо название этого каталога сделать префиксом: Page1/icons/social-vk

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

    Важный момент в каталогизации компонентов: не оборачивайте слэши пробелами! То есть, именовать нужно вот так: catalogue1/subcatalogueA/component-alpha, а не catalogue1 / subcatalogueA / component-alpha. Суть в том, что при экспорте компонентов в файлы на жесткий диск образуются ломанные папки, если юзать пробелы вокруг слэшей.
    Ответ написан
    1 комментарий
  • Что значит фраза "пайтон, язык с самым полным ООП"?

    HemulGM
    @HemulGM Куратор тега Python
    Delphi Developer, сис. админ
    Это ложное утверждение

    Wiki
    Дизайн языка Python построен вокруг объектно-ориентированной модели программирования. Реализация ООП в Python является хорошо продуманной, но вместе с тем достаточно специфической по сравнению с другими объектно-ориентированными языками. В языке всё является объектами — либо экземплярами классов, либо экземплярами метаклассов. Исключением является базовый встроенный метакласс type. Таким образом, классы на самом деле являются экземплярами метаклассов, а производные метаклассы являются экземплярами метакласса type. Метаклассы являются частью концепции метапрограммирования и предоставляют возможность управления наследованием классов, что позволяет создавать абстрактные классы, регистрировать классы или добавлять в них какой-либо программный интерфейс в рамках библиотеки или фреймворка[22].

    Классы по своей сути представляют план или описание того, как создать объект, и хранят в себе описание атрибутов объекта и методов для работы с ним. Парадигма ООП основывается на инкапсуляции, наследовании и полиморфизме[80]. Инкапсуляция в Python представлена возможностью хранения публичных и скрытых атрибутов (полей) в объекте с предоставлением методов для работы с ними[80], при этом на самом деле все атрибуты являются публичными, но для пометки скрытых атрибутов существует соглашение об именовании[81]. Наследование позволяет создавать производные объекты без необходимости повторного написания кода, а полиморфизм заключается в возможности переопределения любых методов объекта (в Python все методы являются виртуальными[81]), а также в перегрузке методов и операторов. Перегрузка методов в Python реализуется за счёт возможности вызова одного и того же метода с разным набором аргументов[80]. Особенностью Python является возможность модифицировать классы после их объявления, добавляя в них новые атрибуты и методы[36], также можно модифицировать и сами объекты, в результате чего классы могут использоваться как структуры для хранения произвольных данных[81].

    https://ru.wikipedia.org/wiki/Python
    Ответ написан
    Комментировать
  • Сворачивать в трей WhatsApp for Windows 10 - чем?

    zamboga
    @zamboga
    Аналитика данных, BI-аналитика, дашборды
    2 варианта.
    1. https://github.com/D4koon/WhatsappTray/releases
      UPD. По состоянию на 06.01.2019 последняя рабочая версия, в которой нет проблем — 1.4.3
    2. https://www.anvir.net/ — при сворачивании с нажатым SHIFT — сворачивается в трей
    любое приложение.

    зы. Не увидел сразу, что у вас Whatsapp tray 1.3 не работает. Странное поведение, у меня всё ок.
    UPD. По состоянию на 06.01.2019 последняя рабочая версия, в которой точно нет такой проблемы — 1.4.3
    Удалять не стану — чтобы в будущем из поисковых систем сюда люди могли придти.
    Ответ написан
    2 комментария
  • Почему никто не учит C# но на каждом углу учат Java?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Ява чуть больше востребована. C# и .NET очень хорошо поднялись за несколько лет.
    А то что нет вакансий на джунов, я так думаю что нужны готовые специалисты. В крупных фирмах просто перекидывают с других направлений. Ну и фишка в том что шарп сильно завязан на бизнес. Писать что то для платформы это значит уже видеть специалиста уровня начиная от мидла.
    Ответ написан
    Комментировать
  • Почему никто не учит C# но на каждом углу учат Java?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Тут пожалуй, важную роль в популяризации играет не возможности языка, а политика компаний, которые разрабатывают языки.
    Так исторически сложилось, что Java появилась раньше, чем C# и соответственно, к моменту появления C# уже было написано огромное количество проектов-миллионников. Также компания Майкрософт довольно долго (чуть ли не 8-9 лет) ограничивала применение .Net на других платформах из-за чего это тоже сыграло свою роль. Соответственно, определенная часть рынка в энтерпрайз была утеряна для C#. Но зато C# смогла утвердить себя в сфере gamedev (фреймворк Unity), а также в сфере desktop разработки. Но не стоит сбрасывать со счетов C# в энтерпрайз и веб сферах. На нем пишут довольно серьезные проекты.
    Думаю, что остальное лишь предпочтения разработчиков.
    Ответ написан
    4 комментария
  • Есть ли перспектива у WPF в обозримом будущем?

    DevMan
    @DevMan
    за три года спокойно может появиться совершенно новая платформа. вам дело делать или в гадалки играть?

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

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Хм ну начнём с того что любой новый офисный файл это zip архив содержащий кучу xml вот в них и прописано все. Руками править неблагодарное занятие есть библиотеки которые в разной степени упрощают это. А так ищите спецификацию pptx формата
    Ответ написан
    6 комментариев