Задать вопрос
  • Почему ASP.NET не используют в крупных компаниях?

    В настоящий момент С# (asp.net) имеет целый ряд преимуществ над тем, что нам дает Java (в плане удобства и синтаксиса языка). Это правда!

    Проблема заключается в том, что Java появился раньше, Java был открытым для использования на Linux. В итоге под сервера на Java написали огромный список уникальных решений, которые сейчас используют топовые команды (посмотри, что такое хадуп, например). В итоге, компании либо не видели смысла переписывать все на C#, так как уже имели билды на Java, либо не хотели тратить время на разработку того, что уже есть на Java.

    Именно по этой причине Microsoft сейчас активно начинает спариваться с Linux и везде кричит, что они его любят.

    Что касается текущего состояния, то сейчас достаточно много компаний, кто начинает писать свои системы на С# (asp.net) - чаще всего новые компании, например, Додо-Пицца. Но старички с Java уже просто не слезут.
    Ответ написан
    6 комментариев
  • Как найти причину дублирования почтовых сообщений в битриксе?

    Я бы посмотрел компоненты которые отвечают за генерацию почтовых сообщений а именно место с CEvent::Send на предмет повторного вызова либо на двойное срабатывание функции либо сценария. Если оба письма одинаковые (одинаковые получатели письма с одинаковым содержимым) я бы именно этот момент и проверил.
    Ответ написан
    2 комментария
  • Почему не меняется флаг оплаты после успешной оплаты заказа?

    @photosho Автор вопроса
    Вопрос решен установкой галочки "Автоматически оплачивать заказ при получении успешного статуса оплаты" в настройках обработчика платежной системы.
    Ответ написан
    2 комментария
  • Какой стек технологий взять для админки сайта?

    @awesomer
    Посоветуйте - какой можно взять оптимальный стек технологий для создания админки сайта.


    Использовать тот стек, что ты (или программист, которого ты наймешь) лучше всего знаешь.
    Ответ написан
    2 комментария
  • Как php сказать ajax, что он fail?

    impwx
    @impwx
    Разработчик
    Для того, чтобы установить код ответа, можно использовать функцию http_response_code(). При этом возвращать тело сообщения не обязательно, но это может помочь при отладке.

    Callback для fail вызовется, если с сервера придет ответ с кодом 4XX (ошибка в запросе) или 5XX (ошибка в самом сервере). Посмотрите список стандартных кодов и выберите подходящий для вашей ситуации.
    Ответ написан
    Комментировать
  • С чего начать изучение Yii2?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Да, есть официальная документация.
    Только совет - если задумаете что-то написать, потрудитесь поискать уже готовое решение. Главная проблема новичков в Yii - после пары часов прочтения документации они уже подписываются на выполнение заказов на фрилансе, и затем в коде разрастаются велосипеды, реализация которых даже в фреймворке имеется.
    Ответ написан
    Комментировать
  • От чего выпадает такая ошибка битрикс?

    Anumik
    @Anumik Автор вопроса
    Отловил и решил проблему восстановлением БД из стандартной проверки системы
    Ответ написан
    1 комментарий
  • Редирект с одного домена на другой, как реализовать?

    doniys_a
    @doniys_a
    Backend-разработчик (Php, node.js, python, ruby)
    server {
    	listen 80;
    	server_name domain1.com;
    	return 301 $scheme://domain2.com$request_uri;
    }

    Это вместо конфига 1-го домена, если используется nginx

    В случае с apache, то в .htaccess первого домена пропишите
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^domain1.com [NC,OR]
    RewriteCond %{HTTP_HOST} ^www.domain1.com [NC]
    RewriteRule ^(.*)$ http://domain2.com/$1 [L,R=301,NC]
    Ответ написан
    3 комментария
  • Как добавить на 1С Битрикс ссылку canonical?

    tomgif
    @tomgif
    Веб-разработчик
    $APPLICATION->SetPageProperty('canonical', $arResult["CANONICAL_PAGE_URL"]);
    Ответ написан
    Комментировать
  • Почему Yii/Yii2 не подходит для крупных проектов?

    qonand
    @qonand
    Software Engineer
    Хоть Yii и создан в первую очередь как фреймворк для быстрой разработки приложений, ничего не мешает сделать на нем крупный проект. Как сказал oxidmod Yii ничего не навязывает разработчику, в этом его плюс и минус одновременно. Если проект реализовывают профессионалы - они спокойно его сделают на Yii качественно, если новички - они спокойно заговнокодят проект. Т.е. тут вопрос только в радиусе кривизны рук. Yii реже выбирают для крупных проектов чем тот же Symfony, т.к. с точки зрения бизнеса он более оптимальный, например:
    - в стандартной реализации Yii нацелен в первую очередь на скорость разработки, симфони - на качество. Соответственно в крупном проекте дешевле использовать Symfony со всеми его инструментами, чем реализовывать эти инструменты с нуля. Например, yii-шный ActiveRecord - хорош на простых проектах, но в сложных проектах он приносить больше проблем чем пользы, а в стандартной реализации никаких альтернатив ему не предусмотрено ...
    - Symfony накладывает определенные правила разработки для программистов, соответственно из за этого проще внедрять на проект новых разработчиков, не боясь что они заговнокодят.
    - в Yii низкий порог входа, соответственно "качество" многих разработчиков желает лучшего ...
    Ответ написан
    5 комментариев
  • Как сделать документацию по проекту?

    PhpDoc+ todo + PhpStorm
    Ответ написан
    Комментировать
  • Какую систему Вы используете для сбора и анализа статистики скорости генерации страниц?

    Мы из shutdown handler вызываем getrusage и результат отправляем в graphite, для визуализации - grafana
    Ответ написан
    2 комментария
  • Как распараллелить процессы php?

    LINKeRxUA
    @LINKeRxUA
    web dev
    Я бы делал так:
    Сперва собрать в таблицу БД коллекцию ссылок для обработки парсером. По завершению - не через file_get_html() а через мультипоточный cURL запросить контент и сохранить его в базу. По завершению - в цикле пробежаться по таблице и порциями в 20 записей выбирать id не обработанных парсером записей и тем же мультикурлом запросить другой урл для обработки, к примеру "/parser.php?id=1" .../parser.php?id=20"
    Каждый из 20 запросов будет работать паралельно.

    Скорее всего у вас проблема не в парсинге а соединении. По-этому мультикурл вам поможет, так как это подобно открытию страниц одновременно в нескольких вкладках браузера, а ваш код - это работ в одном окне и в одной вкладке.

    И между прочем расставьте метки времени в своем коде для профилирования и отсчета времени на операцию. и вы будете знать наверняка, что заняло больше времени.
    Ответ написан
    Комментировать
  • Где можно найти разбор реальных проектов по языкам JavaScript/PHP,чтобы попрактиковаться в них?

    yurygolikov
    @yurygolikov
    Смотри код. Например на GitHub.
    Ответ написан
    Комментировать
  • Дальнейшее развитие для новичка при отсутствии вакансий в городе?

    @FoxInSox
    По поводу фриланса, вариант развития:

    1. вы несколько лет работаете за копейки
    2. понимаете что конкурировать с индусами и школьниками не получается
    3. т.к. вы один, то вам не у кого учиться, и вы делаете все абы как лишь успеть до дед-лайна
    4. все проекты которые вы делаете очень примитивные и не приносят вам никакого опыта
    5. вы понимаете что вы плохой менеджер и не можете грамотно работать с несколькими клиентами, да еще и писать код
    6. вас время от времени кидают и вас это жутко бесит
    7. иногда гонорар бывает внушительный, но вы понимаете что это только в рублях. Новый компьютер за доллары вы себе позволить не можете
    8. после нескольких лет вы пытаетесь найти full-time работу, но оказывается что вы говнокодер, и никто с вами работать не хочет.
    9. вам 30, вы плохой разработчик и плохой менеджер, у вас ребенок которому 2 года, и жена которая хочет от вас уйти. Так же вы живете в съемной маленькой квартире, т.к. банк не дает вам кредит на квартиру из-за того, что вы не трудоустроены официально. И даже на junior вакансии вас никто не берет уже.
    Ответ написан
    3 комментария
  • Что значит хорошо знать фреймворк?

    romy4
    @romy4
    Exception handler
    это значит, что когда тебе сказали запили фичу, то ты не сидишь ломая голову и изучая чужие примеры, пиля костыли, спрашивая на этом форуме, а делаешь сам зная какие модули надо использовать и как, знаешь мануал на столько, что тебе не нужны подсказки вроде "а как мне сделать такую-то шнягу?", ты просто знаешь, что её можно сделать так и так двумя-тремя способами, надо только глянуть на страницу мануала подсмотреть синтаксис функций.
    Ответ написан
    Комментировать
  • Как подписывать разработанные сайты?

    @Battletoads
    Humans.txt
    Ответ написан
    Комментировать
  • Как найти пересечения слов в строках и объединить в группы похожие строки (php)?

    littleguga
    @littleguga
    Не стыдно не знать, а стыдно не интересоваться.
    Примерно так: https://ideone.com/kylhD6

    Конечно, надо немного доработать, чтобы определяло именно слова, а не совпадения по буквам. То есть сейчас он в Ленинград и "Ленинградский" запихнет.

    upd:
    https://ideone.com/aBSGzA
    Допилил так, чтобы искал именно слова, а не просто вхождения строки.
    Если нужно искать именно слова, то можно допилить так:
    strpos(" ".$phrase." ", " ".$word." ") !== false

    Исходный код:
    spoiler
    <?php
    $arr = [
    'Концерт группы Ленинград',
    'Группа ZebraHead',
    'ZebraHead',
    'Группа СПЛИН',
    'Ленинград',
    'Концерт группы ZebraHead',
    'ZebraHead. Презентация альбома',
    'СПЛИН в Олимпийском',
    'Крематорий',
    'Группировка Ленинград'
    ];
    $newarr = [];
     
    $words = [];
    $result = [];
     
    foreach($arr as $key => $val){
        //приводим к нижнему регистру
        $val = strtolower($val);
     
        //убираем знаки препинания и прочие символы
        $val = str_replace(".", "", $val);
        $val = str_replace(",", "", $val);
        $val = str_replace("/", "", $val);
        $val = str_replace(";", "", $val);
        $val = trim($val);
     
        //запоминаем "очищенные" слова
        $newarr[$key] = $val;
     
        //разделяем слова в массив
        $cw = explode(" ", $val);
     
        //запоминаем весь список слов
        foreach($cw as $word){
        	array_push($words, $word);
        }
    }
     
     
    foreach($words as $word){
    	$ca = [];
     
    	foreach($newarr as $key => $phrase){
    		//проверяем, что фраза содержит это слово
    		if(strpos($phrase, $word) !== false){
    			//если так, то запоминаем
    			array_push($ca, $arr[$key]);
    		}
    	}
     
    	$result[$word] = $ca;
    }
     
    print_r($result);

    Ответ написан
    Комментировать
  • Как на сервере(php) прервать обработку, прерванного AJAX запроса?

    @l0vefist
    Сервер поймет что соединение разорвано, только когда попытается отправить что-то клиенту.
    Подробнее: www.php.su/phphttp/?connhandling
    Ответ написан
    Комментировать
  • Как на сервере(php) прервать обработку, прерванного AJAX запроса?

    Никак. abort отменяет ожидание ответа от сервера, на сам сервер это не влияет никак. Это как если бы вы отправили письмо и пока оно идет, решили переехать в другую квартиру. Письмо все равно будет прочитано адресатом.
    Ответ написан
    Комментировать