• Как написать консоль?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Как я понял, идея сделать аналог DOS'а с command line.
    OS Tutorial.
    Ответ написан
    Комментировать
  • Зачем менять php_ini через .htaccess, если можно в php - через ini_set? Есть ли разница?

    SagePtr
    @SagePtr
    Еда - это святое
    Как хотите, так и меняйте, но имейте ввиду, что через ini_set можно установить не все параметры (подробнее - в документации), а через .htaccess - сработает только в том случае, когда PHP подключён как модуль Apache (что используется далеко не всегда и не везде).
    Ответ написан
    1 комментарий
  • Fatal error: Uncaught Error: Call to undefined function arry() в чем ошибка в коде?

    usdglander
    @usdglander Куратор тега PHP
    Yipee-ki-yay
    Не объявлена функция arry. Написано же!
    Ответ написан
    2 комментария
  • Как работает оператор continue?

    GavriKos
    @GavriKos
    continue завершает текущую итерацию цикла.
    Т.е. если i%2 !=0 - то все дальнейшие действия в цикле игнорируются, и он перейдет на след. итерацию.
    Код с аналогичным действием, но без continue:

    for(int i = 0; i<100; i++)
                {
                    if (i % 2 == 0) //инвертированное условие!
                            {
                                Console.WriteLine(i);
                            }
                }
    Ответ написан
    1 комментарий
  • Как работает технология dual lan в материнских платах?

    fzfx
    @fzfx
    18,5 дм
    > указывается на сайте производителя могут работать совместно
    намекают на то, что для обоих адаптеров можно настроить teaming (lacp). в ОС появится виртуальный адаптер, состоящий из двух физических. если на противоположных концах будет стоять коммутатор, также поддерживающий объединение портов с помощью lacp - линк поднимется. в зависимости от MAC адреса источника и MAC адреса назначения пакет будет идти по одному из двух физических портов виртуального адаптера.
    Ответ написан
    Комментировать
  • Аналоги GNS3. Кто какие знает?

    DmZ
    @DmZ
    Dynagen это обертка над Dynamips — эмулятором роутера. GNS3 как раз и используется для визуализации правил Dynagen/Dynamips + еще много чего.
    На той же GNS3 возможно запустить эмулятор (через QEMU) Cisco ASA, Cisco IDS. Так же поддерживается Juniper (JunOS на QEMU). И Cisco PIX (через pixemu).
    К сожалению L2 уровень никак не поддерживается, вернее есть свои свитчи, а не Cisco CLI.

    Из «условно» бесплатных GNS3 наверно единственная сборка с таким функционалом. Почему «условно»? Потому что IOS/ASA/PIX/JunOS имаджи все-таки нужно где-то доставать — они не бесплатны.

    Чуть больше работать с L2 позволяет работать Packet Tracer — он тоже «условно» бесплатный — доступный любому участнику Cisco Network Academy.

    Из платных и доступных это Bosson NetSim, NetVisualizer, Network Sims — их уже называли.

    Из не платных и не доступных — это Cisco IOS on Unix (на самом деле и под Linux есть ;) ) — он содержит фирмварь роутера и свича и позволяет собирать довольно сложные архитектуры (используется для подготовки к CCIE в том числе)

    Экспериментировать с топологией сети можно и с помощью программ типа Open vSwitch или VDE (Virtual Distributed Environment), которые позволяют задавать L2 уровень программно. Я использую VDE довольно плотно совместно с Qemu/GNS3.
    Ответ написан
    4 комментария
  • Как сделать систему переписки сообщений?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Как сделать систему переписки?
    сесть и сделать. Написать код(клиента и сервера), создать бд/таблички, настроить сокеты... Много чего сделать чтоб создать...

    Ну как в ВК, или Telegram.
    Вообще 2 разные системы, первая сайт-соцсеть, вторая приложение.

    Как сделать её быстрой?
    Оптимизировать код, оптимизировать запросы, купить сервер по мощнее, раздать всем быстрый интернет...

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

    И как сделать чтобы показывалось прочитано или нет.
    при загрузке сообщения смотреть активно ли окно диалога, если активно - на сервер отослать что сообщение прочитано, если нет - по активации окна отослать что все ранее присланные сообщения прочитаны.

    Редактирование и удаление сообщений.
    Да. В смысле делай. Все так же, код редактирования, код удаления...
    Ответ написан
    5 комментариев
  • Обязательно ли учить PHP для сайта?

    Moskus
    @Moskus
    Определитесь, в чем ваш конечный вопрос.
    Если это "можно ли написать back end не на PHP?", то ответ - "безусловно, можно".
    Если это "на сколько плох PHP относительно других языков для этой задачи?", то ответ - "для вас - без разницы".
    Если это "можно ли вообще не уметь программировать и сделать сайт?", то ответ - "можно, используя конструкторы, только он будет весьма типовым и шаблонным".
    Если это "проще ли вам, не умея программировать, будет научиться это делать на других языках вместо PHP?", то ответ - "нет, не будет проще".

    Ну и, как всегда, "учить" (тупо запоминать) - бесполезно. Нужно "изучать" (разбираться и понимать).
    Ответ написан
    Комментировать
  • Нужно ли защищать обработчик формы (PHP файл) от прямого доступа?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Не бывает никакого "непрямого" доступа к обработчикам форм. Доступ всегда прямой.
    Не бывает никаких отдельных специальных обработчиков форм. Твой обработчик - это обычный пхп скрипт, такой же как все остальные. И защищать его надо не больше и не меньше, чем остальные скрипты.

    Поэтому надо выкинуть эти фантазии из головы и заняться чем-нибудь полезным.
    Ответ написан
    13 комментариев
  • Что посоветуете почитать про HDD?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Ну на самом деле многие вещи являются внутренней информацией производителя дисков. В публичный доступ детали обычно не выкладываются, а внутренние документы все равно постоянно обновляются - никто не стоит на месте.

    Почитайте для начала википедию, только англоязычную - она гораздо более полная и содержит ссылки на интересные источники.
    https://en.wikipedia.org/wiki/Cylinder-head-sector
    https://web.archive.org/web/20190204014430/http://...

    Плюс к этому - можно ли в принципе что-то узнать о физическом (не логическом) устройстве какого-то конкретного жесткого диска? Производители не распространяются особо о дисках - сколько, например, у него пластин, какой тип головок. Есть ли тут какие-то утилиты, позволяющие извлечь информацию из какой-то служебной памяти устройства (а она у него есть наверняка), где все прописано? Без вреда для диска естественно.

    Производители могут сообщить общие сведения.
    Утилит как таковых в публичном доступе нет и не должно быть, поскольку работать напрямую с диском, не разбирая его вы не можете. А работая с контроллером - вы ограничены стандартным API. Об инженерных забытых паролях можно попробовать что-то найти, но вероятность невелика.

    Как и в стандартном мире embedded программирования, версия софта в контроллере диска обычно залочена под продакшн. То есть оттуда вычищают все отладочные примочки, входы, выходы. Учитывая массовость и сложность производства дисков, разработку скорее всего проводят на специальных инженерных контроллерах, где есть и выходы и дополнительные интерфейсы для подключения, тестирования и программирования. А в продажу выходят диски, контроллеры на которых уже залочены, и возможно собственно даже сами интерфейсы не распаяны или даже отсутствуют.
    Ответ написан
    Комментировать
  • Что делать если увольняют с работы(IT компания. Скорее всего по статье за несоответствие занимаемой должности)?

    Очень не хочется портить трудовую 2-мя месяцами работы.
    Трудовую вашу увидят только после того, как примут решение взять на работу. Соответственно, вы можете вообще в резюме не указывать, что где-то в это время работали. Это первое. Второе - если вы всё же будете бодаться и указывать эту компанию в резюме, то как только потенциальные работодатели позвонят на прошлое место работы и услышат про суд, ваша кандидатура из рассмотрения, скорее всего, выпадет.

    Словом, уходите по собственному и при поиске работы объясняйте такой короткий срок. В целом, это нормально - на то испытательный срок и существует, чтобы не только компания к вам присмотрелась, но и вы к компании. Единичная подобная история нормального кадровика не смутит.
    Ответ написан
    4 комментария
  • Как эффективно выучить PHP?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Во-первых, грешно знать одну парадигму. Учите и процедурный подход, и объектно-ориентированный и функциональный. Во-вторых, читайте учебники, они намного полезнее курсов и видео-уроков. В-третьих, самое эффективное обучение - это работа в профессиональном коллективе над реальными задачами.
    Ответ написан
    3 комментария
  • Что можете сказать об IT Hub колледже?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    IMHO средненький инфобизнес, но раскручен на широкую ногу (ну понятно 30к с каждого студента, из которых видимо 90% на раскрутку и веселый сайтец).

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

    Вот зашел в программирование, читаю единственное, что хоть как-то похоже на программу, по пунктам:

    Профессиональные компетенции выпускника:
    * Работа с технологиями PHP, Java, Ruby, Python, Perl, Node JS

    Из этого технологией с натяжкой можно назвать NodeJS, потому что на самом деле это все языки программирования, а NodeJS это скорее платформа для выполнения JS (которого кстати в списке нет)

    * Подключение и использование фреймов

    Фреймов? Фреймы есть в сетевых пакетах. А Фреймворки - так их не подключают, на них пишут.

    * Back-end разработка, «серверная часть» в веб-приложении; настройка и создание баз данных

    Настройка и создание баз данных - это небось будет предустановленный Mysql (который ставится в пару кликов) и какая-нить create table
    Как можно работать с базой данных, не указывая что в программе изучения есть ХОТЯ бы базовый SQL?

    * Организация серверного окружения, администрирования баз данных и масштабирования приложений с учетом всех стандартов безопасности

    Учесть все стандарты безопасности не всегда могут крупные организации, которые уже 50 лет в IT. Тут явно будет какая-то чушь.

    * Создание функциональных API

    API это весьма простая вещь, как только ты в принципе научился писать бэкенд. Весь бэкенд из него и состоит. Но ведь он уже был во втором пункте. Тогда что тут?

    * Работа по Scrum и Kanban

    Это вообще можно не учить. Про это можно почитать, потому что это просто Agile разработка. Она в каждой конторе, в каждом проекте немного по-своему. Освоить то, что нужно разработчику можно за день, и в ходе работы разобраться. А знать как оно работает - надо скрам мастеру.

    * Работа с системами контроля версий (Git)

    Ну вот хоть что-то полезное. Но оно же осваивается за полчаса на официальном сайте - там и видяшки и учебник и туториал. https://git-scm.com/book/ru/v2

    Итого: Я не понимаю за что такие деньги, учитывая что реальной информации на сайте практически нет.
    Отзывы - везде только положительные и как одним копирайтером написаны.

    Понятно, что научиться в колледже чему-то можно, но если человек способен научиться, то он может это сделать и без колледжа, потратив деньги более эффективно.
    Ответ написан
    7 комментариев
  • Какой фреймворк для каких задач?

    rockon404
    @rockon404 Куратор тега React
    Frontend Developer
    Современные фреймворки вроде Angular/React/Vue созданы для решения одних и тех же задач. Использовать лучше тот, который больше нравится и который лучше знаете. При неумелом использовании все преимущества конкретного фреймворка меркнут, и на Vue, в таком случае, вы можете получить медленную скорость разработки, а на React неподдеживаемый код.
    Ответ написан
    Комментировать
  • Как парсить большие объёмы Yii2?

    myks92
    @myks92 Куратор тега Yii
    Нашёл решение — пометь вопрос ответом!
    1. Использовать консольные контроллеры вместо web и установить периодичность его работы.

    2. Использовать очереди. Кидаете задачу в очередь. Консольная команда проходит по всем очередям и выполняет задачу. Схоже с первым вариантом.

    3. Самый не актуальный, но действенный в вашей ситуации - использовать для запросов не объекты и Active Query, а «голые» SQL запросы которые выдают данные в массиве. AR потребляет не мало памяти на объекты. На какое то время вас это спасёт. Но лучше использовать консольные команды. Это больше подходит для подобный задач.

    4. Подготавливать денормализованные данные для быстрого запроса в отдельную таблицу СУБД или использовать быстрые NOSQL базы данных. И уже из них считывать ваши данные.
    Ответ написан
    1 комментарий
  • Возможен ли вариант Почтового сервера без белого ip по средствам A и MX записей сервиса NoIP?

    @mezhuev
    Системный администратор
    Возможно, но не нужно. Для почтового сервера далеко не последнюю роль играет репутация IP-адреса. Ваша почта просто будет улетать в спам.
    Ответ написан
  • Не создается метод, почему?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Красным по серому написано, что Студия не видит ресурса с идентификатором textViewOrder. Первым делом надо проверить, что в макетах есть элемент с таким идентификатором. Если действительно есть, но ошибка сохраняется, то попробуйте Build->Clean Project, File->Sync Project with Gradle Files и File -> Invalidate Caches / Restart.
    Ответ написан
    Комментировать
  • Перестал работать emmet без двоеточий в аббревиатурах в последнем обновлении. Как исправить?

    delphinpro
    @delphinpro Автор вопроса, куратор тега PhpStorm
    frontend developer
    Нашлось решение.

    Нужно включить опцию «Enable fuzzy search among CSS abbreviations» на странице Editor > Emmet > CSS
    Ответ написан
    Комментировать
  • Как работать с atomic locks в Laravel?

    Alex_Wells
    @Alex_Wells
    PHP/Kotlin
    Ну хз куда уж проще, чем в доке:

    $product = Product::first();
    
    $lock = Cache::lock('product_edit.' . $product->id, 10);
    
    if ($lock->get()) {
        // ту-ту-ту, я делаю что хочу
        $product->name = 'flower pot';
        $product->save();
    
        // ла-ла-ла, я сделал что хотел
        // дам возможность другим редактировать эту сущность заранее, зачем ждать еще 9 секунд
        $lock->release();
    } else {
        // сорри чел, кто-то другой редагирует эту сущность
    }


    Часть с "ту-ту-ту" и "lock->release()" можно, например, вынести туда, где сохраняется эта сущность, что бы сбросить лок если юзер закончил редактировать сущность.

    В общем концепт простой, применяй
    Ответ написан
    Комментировать
  • В чем ошибка python?

    @deliro
    Ошибки питона тут нет. Это твоя личная ошибка. Прими её и ещё раз, с болью в душе, изучи хотя бы одну страницу учебника по питону, где рассказывают про синтаксис
    Ответ написан
    Комментировать