Ответы пользователя по тегу Веб-разработка
  • В каком этапе обучения нужно беспокоиться о безопасности?

    @mletov
    1) Почитайте спецификацию REST API
    2) Почитайте про JWT и авторизазацию по токену
    Ответ написан
    Комментировать
  • Почему Get запросы могут отправляться по 2 раза?

    @mletov
    Было приблизительно похожее. Тоже отправлял данные по API и запросы почему-то дублировались.
    Оказалось, что у одного из серверов-получателей запроса долгий отклик, запрос отваливался и тут же посылался новый - помогло увеличение таймаута при отправке.
    Может это и не ваш случай, но попробуйте.
    Ответ написан
    Комментировать
  • Есть вакансии вообще по ускорению сайта?

    @mletov
    У меня встречный вопрос: какой у вас профиль и какой опыт?

    Вот работают, скажем, над проектом frontend, backend и dba. И каждый старается увеличить скорость работы сайта на своем участке работы/уровне ответственности. Фронтендер оптимизирует графику и размеры css/js файлов, dba колдует над планами sql запросов, у бэкендера тоже свои методы увеличения скорости.

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

    Лучше вам определиться со своей специализацией и уже от нее отталкиваться.
    Ответ написан
    1 комментарий
  • Как формировать логику серверной части сайта блога?

    @mletov
    1) Определитесь с технологией, уберите из тегов PHP или ASP.NET

    2) Почитайте про 3 нормальных формы БД

    3) Посмотрите какие бывают wysiwyg редакторы

    4) Почитайте про ORM, используемый в выбранной вами технологии
    (Если выберите ASP.NET, то почитайте про навигационные свойства)

    5) Возвращайтесь на тостер и задайте более конкретный и узкосформулированный вопрос.

    PS если есть время - прорешайте обучающий этап на sql-ex.ru

    Пост можно хранить в html формате в поле типа text. Визуальный редактор сам генерит нужный html.
    Ответ написан
  • Скопировал фрагмент js кода, угражают судом, возможно ли?

    @mletov
    Имхо, любой адекватный компетентный судья должен их послать лесом. Да, массивы одинаковые. Но, блин, так можно и использование i в итераторах запатентовать. Но, конечно, закон что дышло...
    Расскажите потом о результатах, интересен прецедент.
    Удачи!
    Ответ написан
    Комментировать
  • Качество работы штатного программиста. Как оценивать?

    @mletov
    Тут надо понимать, что взгляд программиста и непрограммиста на критичность ошибок несколько разнится.

    Например, есть кнопка, по нажатию кнопки запускается хитрая-хитрая выборка из кучи источников с большими объемами данных + дополнительные расчеты. А еще при нажатии кнопка цвет должна менять.
    И вот программист закопался в логику, сначала оттестил чтобы результаты были всегда корректны. Потом увидел, что долго грузится - стал увеличивать производительность. Все сделал, а перекрашивание кнопки сделать забыл.

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

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

    Поэтому вам не зря написали: чтобы маломальски объективно оценивать труд программиста, нужно самому быть программистом. Задумайтесь, не является ли ваш взгляд на проблему поверхностным. Может быть в проекте так много мелких ошибок потому, что все силы программисты бросили на решение ключевых вопросов?
    Ответ написан
    Комментировать
  • Как обнаружить уязвимость на сайте?

    @mletov
    Прогоните Айболитом
    Обновите версию CMS
    Потом еще раз прогоните Айболитом

    PS А почему вы решили, что первый файл один?
    Кто мешает вирусу записаться сразу в 10 папок.

    А точкой входа может быть вообще какой-нибудь php код в базе, выполненный через eval.
    Ответ написан
  • Где найти учебные программы для школы сайтостроения?

    @mletov
    Преподают обычно от частного к целому, а не наоборот.
    Например, сначала в школе по отдельности преподают физику, химию, астрономию и прочие науки, а потом уже в институте проходят "Концепции современного естествознания", объясняющие взаимосвязь наук.

    Ради интереса гляньте
    www.avalon.ru/ProfRetraining/WebDeveloper2017

    Каждая дисциплина в курсе изучается отдельно.
    Ответ написан
    Комментировать
  • Как грамотно разбить бд на таблицы?

    @mletov
    Создайте одну таблицу categories, связь по parentId.
    У корневых родитель 0 или NULL.
    Ответ написан
    Комментировать
  • На чем писать веб приложения с GUI как в desktop app?

    @mletov
    Подскажите пожалуйста на чем можно писать веб решения с подходом как при разработке десктопных приложений?
    Я привык к подходу, что легко накидываешь интерфейс в конструкторе (окна, кнопки, таблицы, поля, прогрессбары), а потом в модулях описываешь логику.


    ASP.NET WebForms как раз использует такой подход

    Но я вам сразу скажу, что сейчас вакансий по нему нет, разве что legacy поддерживать.
    Все новые проекты все равно пишут на ASP.NET MVC или .NET Core.

    Идея натянуть десктопные концепции на веб была признана попыткой натянуть сову на глобус.

    И вроде бы что-то такое было и в Java, но не уверен.
    Ответ написан
    3 комментария
  • Можно ли сделать сайт под ключ на cms не зная backend?

    @mletov
    Теоретически - можно. Практически - при первой же маломальски нестандартной проблеме вам придется обращаться к знакомому бэкендеру.

    Чтобы я посоветовал:

    1) Раз вы уже хорошо разбираетесь в javascript, то освоить по аналогии основы PHP (переменные, циклы, массивы) вам будет несложно. Глубокого знания PHP не нужно (SOLID, паттерны, потоки, трейты и пр).

    2) Научитесь писать SQL запросы, хотя бы простенькие. Нет, при разработке напрямую вам их писать не придется, т к почти в каждой CMS есть свое API, которое эти запросы эмулирует, но полезно знать, что именно, какие виды соединений это API эмулирует.
    Ответ написан
    Комментировать
  • Хм.. Если реализация AJAX запросов - компетенция бекендера, он должен уметь и в js фреймворки?

    @mletov
    Бэкендер может вообще не знать js.

    Он реализует на каком-нибудь серверном языке (C#, PHP, Ruby и пр) некое API, по которому фронтендер уже отправляет ajax запросы.

    Это в теории)))

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

    @mletov
    php $_SERVER["USER_AGENT"]

    PS Главное, чтобы целевые приложения не маскировались под обычные браузеры
    Ответ написан
    Комментировать
  • Как составить такой sql запрос?

    @mletov
    SELECT t1.date,
    	   t2.income,
    	   t3.outcome
    FROM
    (
    	SELECT date 
    	FROM payments
    	UNION
    	SELECT date
    	FROM cash	
    ) AS t1
    LEFT JOIN
    (
    	SELECT date,
    	       SUM(income) AS income
    	FROM payments	   
    	GROUP BY date
    ) AS t2
    ON t1.date=t2.date
    LEFT JOIN
    (
    	SELECT date,
    	       SUM(summa) AS outcome
    	FROM payments	   
    	GROUP BY date
    ) AS t3
    ON t1.date=t3.date
    Ответ написан
    1 комментарий
  • Защита сайта от копирования в themeforest.Как защитить?

    @mletov
    Показывать только на своем сервере.
    Например, сделать так, чтобы куски верстки подтягивались с сервера через ajax, а на сервере ограничить адреса, с которых могут идти запросы.
    Весь css сливать в один файл, весь js - в другой, без разбивки на библиотеки.

    А еще мне как-то попал в руки html, сверстанный автоматом какой-то прогой, все классы назывались в духе div_1, div_2 и т д. Сверстано наглядно, но абсолютно неподдерживаемо. Возможно, есть что-нибудь для замены имен классов на бессмысленные.

    В общем, можно довести макет до состояния, чтобы было дешевле купить, чем поддерживать демку.
    Ответ написан
    1 комментарий
  • Не отправляется форма с сайта?

    @mletov
    Абстрагируйтесь пока от формы
    Напишите что-то вроде:

    mail("Ваш@email.ru", "test", "test");

    Если на почту придет, то проблема в коде и хостер не при делах. Если не придет - пишите хостеру или лучше для начала почитайте FAQ на его сайте, наверняка там этот случай описан.

    Ну и папку "Спам" у себя проверьте
    Ответ написан
    Комментировать
  • Как добавить A-запись с ru-center?

    @mletov
    1) Как уже посоветовал Андрей, A-записи должны прописываться на 1GB или другом хостинге, чьи DNS там прописаны.
    2) Но иногда почему-то хостеры встают в позу (так было с Агавой), говорят, не прописывайте наш DNS, а прописывайте DNS регистратора и в его настройках указывайте A-запись на наш айпишник. А у NIC.RU это доп деньги
    Ответ написан
  • Сколько браузеров оптимально использовать для тестирования сайтов?

    @mletov
    Десктоп:
    - Chrome
    - Firefox
    - IE10+ обязательно, более ранние версии - по ситуации, в зависимости от посещаемости и целевой аудитории
    - Opera (современная, а не та, которая Presto), Safari, Vivaldi, Яндекс.Браузер и прочий WebKit - тоже по ситуации. В 99% случаев все будет как в Chrome

    Ну и мобильные особняком идут
    Ответ написан
    Комментировать
  • Непонятные страницы GET запросов в статистике Яндекс Вебмастере, как с этим бороться?

    @mletov
    Точный ответ, откуда берутся такие ссылки, дать не могу. Может это особенности CMS, на которой вы сделали сайт. Может какие-нибудь баннерные сети, через которые вы рекламируетесь, генерят такие внешние ссылки на ваш сайт. Но все это не суть.

    1) Для всех страниц пропишите canonical
    2) Пропишите в robots.txt clean-param для cof, cx и пр
    https://yandex.ru/support/webmaster/controlling-ro...
    3) Сгенерите sitemap.xml

    Всякие левые url должны сами отсеяться.

    PS добавьте в теги "SEO" и "Поисковая оптимизация"
    Ответ написан
    1 комментарий
  • Где найти мануал по построению htaccess?

    @mletov
    Вас интересует именно та часть .htaccess, которая за реврайты отвечает?

    1) Почитайте про переменные окружения в PHP
    {REQUEST_URI} и {QUERY_STRING} вами упомянутые как раз они и есть.

    2) Почитайте про синтаксис регулярных выражений и попрактикуйтесь в их построении на каком-нибудь онлайн тренажере, например, www.pcre.ru/.

    3) Погуглите .htaccess + modrewrite

    А потом попробуйте объединить в голове полученные знания, поставьте себе задачу прописать правила для страниц такого-то вида с такими-то GET параметрами.
    Так чтобы все сразу и в одном месте вы вряд ли найдете
    RewriteEngine On
    RewriteCond %{QUERY_STRING} ^limitstart=([0-9]*)$
    RewriteRule ^(.+)$ /$1? [R=301,L]
    Ответ написан
    2 комментария