• Какой набор пакетов использовать, чтобы реализовать простой веб-сайт?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Disclaimer: я регулярно даю на собеседованиях тестовое задание "сделать что-то без фреймворков", все что написано дальше это моя личная точка зрения.

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

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

    По списку:
    1. Роутер: https://github.com/search?q=php+router
    2. Аутентификация пользователей - зачем тут какой-то пакет??
    3. ORM - использование ORM в живом проекте очень холиварно. Скорее всего смысл задания - проверить еще и ваше умение писать запросы руками.
    Ответ написан
    5 комментариев
  • Как добиться немного нестандартного инпута?

    Seasle
    @Seasle Куратор тега CSS
    Ответ написан
    Комментировать
  • Как исправить 'str' object is not callable?

    @deliro
    Как же вы одолели, мамкины ботописцы, по 50 постов в день от вас. Откуда вы взялись такие бездари? И хоть бы один толковый вопрос про питон, архитектуру, что угодно. Нет, все ваши вопросы связаны с тем, что вы, бездари, не в силах взять свои малюсенькие ручонки в кулак, засунуть туда свою лень и прочитать три десятка страниц учебника по языку, на котором пишете.
    Ответ написан
    2 комментария
  • Можно ли говорить upgrade/downgrade вместо upcasting/downcasting в C#?

    Griboks
    @Griboks Куратор тега C#
    Можно ли говорить обновить/откатить вместо обобщить/уточнить? Это разные слова с разным смыслом. Но главное - что бы вас понимали, а термины могут меняться.
    Ответ написан
    Комментировать
  • Стоит ли идти в веб-разработку?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Web-разработка - это не только сайты для малого и среднего бизнеса. И HTML+CSS+JS - это лишь малая часть web-разработки. Самый главный минус в том, что на входе огромная конкуренция. Но если прорваться через это барьер, то тут не хуже, чем в любых других направлениях ИТ.
    Ответ написан
    9 комментариев
  • Почему это говнокод?

    SeaInside
    @SeaInside
    15 лет пилю все эти штуки
    if(is_singular( 'portfolio' ) ) {
    Это так называемый WordPress codestyle (расставление скобок и пробелов) - забудьте как страшный сон, фу.
    А если уж и следуете - то следуйте везде, а у вас тут так, тут иначе.

    <?
    Нельзя короткую открывающую конструкцию использовать, пишите полностью.
    Исключение - <?= - я бы даже рекомендовал использовать такую запись, если кроме вывода действительно ничего не надо.

    Код вперемешку с разметкой - это очень плохо и сложно для восприятия. WordPress, к сожалению, не предлагает никаких штатных опций этого избежать, им то ли кажется, что это норма, то ли объём кодовой базы такой, что переписать нормально возможности нет. Сами себе придумайте вариант разделения от простого выноса логики в функции (например, в последнем блоке кода выдумайте какую-нибудь функцию getPostTags и ей получайте разметку) до шаблонизаторов.

    Отступы крайне странные - читать неудобно, кроме того, код фолдинг сломается в Саблайме например (он использует отступы для этого). Пишите код на той же вложенности, где тег открыли.

    В логику вникать лень. Сами посмотрите ещё раз и оцените, есть ли там повторяющиеся куски кода, можно ли сделать эффективнее...

    Как можно заметить, большая часть косяков относится к визуальному форматированию - и это логично, ибо код мы гораздо чаще читаем, чем пишем, и надо сделать этот процесс удобным.
    Приведите форматирование к единому виду - и нормально будет.
    Говно, не говно - у меня вот крайне редко возникает мысль "вау, великолепный код!".
    Если код можно без проблем прочесть и понять чего автор хотел - он нормальный, и это окей.
    Ответ написан
    Комментировать
  • Какие задачи решают на Rust, а какие на Golang?

    bingo347
    @bingo347
    Crazy on performance...
    Какие задачи решают на Rust
    любые. Rust - язык общего назначения, применимый к большинству возможных задач. Rust достаточно высокоуровневый для написания на нем прикладного ПО и компилируется в достаточно эффективный машинный код, для применения в ядрах ОС, драйверах или embedded разработке. Так же Rust на сегодня имеет самый маленький размер при компиляции в wasm, что критично для использования в web. Я честно не знаю такой сферы, к которой бы не подошел Rust.
    Единственной проблемой в применимости Rust я вижу недостаточную его распиаренность в РФ, что часто бывает самым важным критерием для "манагеров" и прочих людей принимающих решения о используемом стеке.
    а какие на Golang
    Golang тоже язык общего назначения, но имеющий ряд ограничений:
    - Крайне тяжелый рантайм не дает возможность использовать его в wasm, embedded или компонентах ядра.
    - Необходимость в сборке мусора опять таки ограничивает разработку для embedded или компонентов ядра.
    - Отказ от llvm в качестве бэкенда компилятора ограничивает число целевых платформ.
    Можно один заменить другим?
    Rust спокойно заменяет Golang в любой возможной на последнем задаче, наоборот же иногда имеем ряд ограничений.

    Вместо P.S.:
    Golang скорее всего окажется более быстрым для прототипирования и быстрого старта. Однако отсутствие полиморфизма в любом виде (утиная типизация не в счет) и ограниченность одной парадигмой структурного программирования делает этот язык крайне дорогим в поддержке. Так же этому (и быстрому прототипированию и дорогой поддержке кода) способствует лютая ненависть создателей языка к принципу DRY.
    Rust имеет такую редкую сегодня строгую типизацию, одним из нюансов которой являются концепции владения и заимствования (которые позволяют делать автоматическое управление памятью в compile time), что порождает с одной стороны высокий порог входа в технологию (что сглаживается человекопонятным выводом компилятора, если входящие умеют читать, что еще более редко встречается сегодня, чем строгая типизация), но так же удешевляет поддержку продукта длительное время. Так же надо понимать, что Rust не спасет от кривых рученок быдлокодеров (разве что они не смогут его освоить), так как при большом желании можно сделать и утечки памяти и дедлоки и гонки данных (хотя в Golang это все сделать на порядок проще).
    Ну и надо не забывать, что много где присутствует hype-driven-development и Golang распиарен, а Rust нет.
    Ответ написан
    3 комментария
  • Перспективы карьерного роста в интернет-провайдере?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Сколько времени - зависит конкретно от вас. Какими навыками приходится овладевать зависит от конкретного работодателя. Единственно правильного ответа быть просто не может. Разве что читайте книжки по сетям.
    Ответ написан
    3 комментария
  • While vs foreach при sql запросе?

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

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

    Идея в том чтобы не тащить с собой базу данных по всему приложению. Соединился, получил нужные данные, передал в другой модуль сами данные, а не соединение с бд.

    Должен например модуль формирования html знать что-то про базу данных? Не должен. Его должны интересовать сами данные, а не средства работы с ними.

    Ну и разумеется, код для работы с БД не должен смешиваться с кодом вывода в браузер. Это аксиома.
    Ответ написан
    4 комментария
  • Клик по элементу имеющему случайное название класса selenium?

    glaphire
    @glaphire
    PHP developer
    Если у элемента нет уникального идентификатора, то надо подобрать относительный идентификатор (составной), нп. div1 > div2 > div3[0] ( образно, в xpath оно иначе записывается)
    Ответ написан
    Комментировать
  • Как вы разрабатываете свои приложения?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Я тут предполагаю что вы хотите сделать какой-то стоящий продукт, который кому-то нужен:

    Вас посетила очередная идея на миллиард. Вы полны решимости осуществить проект, но пока, кроме абстрактной идеи, ничего нет. Ваши действия?

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

    Если сильно верите в какую-то идею, для начала - валидируете.

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

    Тут вы почти уловили суть. Ваша "идея" вам должна говорить, какие элементы нужны, зачем они нужны и почему именно их надо делать прямо вот сейчас а не что-то другое. Пока этого нет - у вас не идея а какая-то смутная фантазия, вы не знаете что делаете, и вряд ли что-то сделаете.

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

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

    @anikavoi
    Мне 48 лет, из них больше 30 я в IT. Образование - 8 классов и "подворотня".
    Мне иногда ужасающе нехватает высшего образования.
    Все-таки лучше когда "школу обучения" прививают специалисты.
    То что "программит на (чемугодно)" не столкнется с чем-то из математики - не верь.
    Сидишь такой фигачишь сайты, и тут хренак - GIS-проект, и ты начинаешь натягивать теорему арксинусов на геоид Красовского, потому что нужны расстояния между точками поверхности.
    Или задача фильтрации данных, и ты пытаешься осилить преобразование Фурье.
    Или данные от источника могут поступать с запоротыми битами, потому что источник болтается на орбите, и ты впарываешься в коды Боуза-Чоудхури-Хоквингема...

    Википедия? Агась!
    https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%B4_%...
    Стало понятнее? Вот-вот...

    Так что, послушай старого дурака, который всю жизнь испытывает трудности с тем, чему его могли давным-давно научить - бери вышку! Потом не пожалеешь.
    Ответ написан
    2 комментария
  • Сложно ли будет переквалифицировать на swift или backend разработчика?

    RomReed
    @RomReed
    JavaScript, Flutter, ReactNative, Redux, Firebase
    переквалифицироваться можно хоть на ассемблер было бы желание и время
    Ответ написан
    Комментировать
  • Разработчик недисциплинированно трекает время. Что делать?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    А зачем вообще трекать время? Уложился в дедлайн - молодец. Не уложился - разбор полётов. Хронически не укладывается - понижение грейда или увольнение.
    Ответ написан
    21 комментарий
  • Что думаете на счет no-code платформ?

    inoise
    @inoise
    Solution Architect, AWS Certified, Serverless
    Не совсем про no-code, но выскажусь как архитектор и фанат serverless.
    1. Любой проект это реализованная идея
    2. Идея хорошо работает либо когда она уникальна, либо когда ее качество неоспоримо
    3. Если идею можно сделать из "говна, палок и пылесосы шлангов" - делаем, это абсолютно нормальный шаг
    4. Большинству проектов чтобы выделиться приходится делать уникальную бизнес-логику, которую не купишь в сервисе
    5. Можно выбирать компромисс в виде делегации части работы сторонним сервисам (Serverless концепция)


    Так что как по мне то обращать внимание надо на те проекты, которые облегчают жизнь. Я так, например, пришел в AWS, но при этом далеко не каждый мой проект строится вокруг этих концепций
    Ответ написан
    1 комментарий
  • Какие есть best practices при смешивании вёрстки с php?

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

    <div blabla>
    <?php foreahch(): ?>
        <div blah>
    <?php    if(): ?>
            <table>
    <?php        foreach(): ?>
                <tr>

    Получилось в теории ровно но на практике еще более уродливо.
    А потом стал пользоваться шаблонизаторами и забыл про все эти куличики в песчнице
    Ответ написан
    2 комментария
  • Что быстрее массив или объект?

    Мне это напомнило историю, когда некий докладчик сравнил поиск в Яндексе и прямое указание сайта в адресной строке. Типа, когда он пишет адрес сайта, то сразу переходит на него, и якобы поиск не включается. Однако даже при прямом указании адреса сайта всё равно включается поиск: вы ввели адрес сайта, но это не точный путь к серверу, где хранятся данные. Пока идёт запрос к данным, и пока они идут обратно, включаются несколько поисков на разных этапах.

    Так же и здесь. По сути системе нужно достать некое значение из памяти. Массивы изначально заточены под машинную организацию памяти: по порядку. Логично предположить, что если вам нужно N-e значение, то оно быстрее достанется из памяти, так как оно N-e в самой памяти, начиная от некой ячейки (грубо говоря). Более сложные ассоциативные массивы (или объекты) организованы в памяти более сложно (извиняюсь за тавтологию). Ассоциативный массив - это, как минимум, два обычных массива. Соответственно, выполняя поиск по нему, работают уже минимум два поиска.

    это всегда перебор всего массива каждый раз.

    Если ключи уникальны, а в обычных javascript массивах это так, то вряд ли поиск продолжается после нахождения нужного элемента.

    В целом веб-приложения это не совсем та сфера, где надо оптимизировать запросы, на базе архитектуры, я имею в виду, когда получаешь выигрыш в пару миллисекунд. Страница грузится пару секунд, анимации длятся 0.3с и так далее - на этом фоне выигрыш будет нулевой, даже с 1 миллиардом пользователей онлайн )

    По существу вопроса, мне кажется, вы всё делаете совершенно правильно, потому что в вебе самое главное - это удобство постоянного развития проекта. Если код внешне, и по логике похож на то, как данные организованы в бытовом восприятии, это удобно: быстро вникаешь и можно дорабатывать.
    Ответ написан
    Комментировать
  • Сколько стоят услуги веб-программиста?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Зависит от программиста, от проекта, от конъюнктуры локального рынка и т.д. и т.п. От нуля до нескольких миллионов.
    Ответ написан
    Комментировать
  • Как стать популярным на Гитхабе?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Во-первых, репы с самым большим количеством звёздочек - это не веб-приложения, а библиотеки и фреймворки. Популярность на GitHub - это популярность среди программистов, а не обычных людей. Во-вторых, спрашивать здесь идею востребованного проекта бессмысленно. Либо другие пользователи не имеют такой идеи так же, как и вы, либо они её уже реализовали и стали популярным за вас.
    Ответ написан
    Комментировать