• Оцените пожалуйста вёрстку?

    ThunderCat
    @ThunderCat Куратор тега CSS
    {PHP, MySql, HTML, JS, CSS} developer
    первый хорош, но 2 момента смущают:
    во первых меню гамбургер в десктопе
    во вторых - чего то не хватает в визуале, вроде стиль "много воздуха и пятна", но он как то не смотрится... Короче чисто личное восприятие, без конкретики, увы.
    Вторй - субъективно нравится, однако именно отсутствие адаптива - огромный минус. Сделайте хоть под вьюпорт скэйл...
    Ответ написан
    Комментировать
  • Как с js сделать отсчет от 1 до 0?

    rockon404
    @rockon404
    Frontend Developer
    Ответ написан
    Комментировать
  • Как с js сделать отсчет от 1 до 0?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    y = (x > 750 ? 1 : (x - 1) / 749);
    Ответ написан
    Комментировать
  • Где найти хорошие курсы unity по разработке 2D игр?

    @keksmr
    Unity разработчик
    Из платных:
    Udemy
    Из бесплатных ютуб в помощь
    Ответ написан
    Комментировать
  • Почему у блока с 100% шириной ширина - не 100%?

    JRK_DV
    @JRK_DV
    Рецепты https://codepen.io/jrkdv/full/LKLXdq
    честно говоря много причин может быть и без песочницы трудно однозначно сказать, но всё же предположение напишу.
    viewport (окно) у вас имеет размер 986px
    body имеет размер min-width: 1140px;
    .background имеет позицию absolute и выноситься в отдельный контекст - тут ключевой момент.
    т.к. блоки html и body у вас в другом контексте (в основном), то для блока .background позиция и размеры берутся из параметров viewport браузера.
    Итог:
    попробуйте для body указать position: relative;
    Ответ написан
    1 комментарий
  • Как сделать то, что изображено на скрине?

    LenovoId
    @LenovoId
    svg, css,js
    Комментировать
  • Почему стиль не работает?

    JRK_DV
    @JRK_DV
    Рецепты https://codepen.io/jrkdv/full/LKLXdq
    из второго скрина видно только, что этот стиль выключен (снята галочка) - из-за этого тоже "перечёркивается"
    Ответ написан
    3 комментария
  • Как синхронизировать репозиторий на 2 компьютерах?

    DevMan
    @DevMan
    git clone первый раз, git pull для обновления.
    Ответ написан
    Комментировать
  • Как синхронизировать репозиторий на 2 компьютерах?

    GavriKos
    @GavriKos
    git clone
    Ответ написан
    Комментировать
  • Как работать с чужим проектом в wordpress?

    mrusklon
    @mrusklon
    Не получается? Яростно гугли!
    поставь phpstorm , подгрузи в него wordpress и все файлы шаблона , когда он проиндексирует их берешь через ctrl + ЛКМ на функцию и тебя кидает в то место где она "родилась" , там и посмотришь
    Ответ написан
    5 комментариев
  • Есть ли аналог htmlacademy или javarush для начинающих PHP-разработчиков на русском языке?

    @MasterMike
    Приплыли.
    Курсы html-академи (которая, кстати, является русскоязычной калькой буржуйского ресурса и после которых даже верстальщиком не устроиться) производят приятное впечатление.

    Что дальше?
    Курсы по php, где учат делать запросы к бд в цикле?
    Ответ написан
    7 комментариев
  • Android: может ли воспроизводить музыку через кабель как iOS?

    Konstantin18ko
    @Konstantin18ko
    Стоматолог
    Это зависит не от телефона, а от возможности медиаконтроллера.

    Ford Focus с базовой системой Sony может и через BT и через провод, но только в подлокотнике.
    Ответ написан
    Комментировать
  • Как правильно составить план самообучения?

    @php65535
    Для начала определись, чего хочешь на самом деле. Если твердо уверен в желании связать всю оставшуюся жизнь с программированием, советую пока сконцентрироваться на теории. Самостоятельно углубляйся в темы, которые дают в ВУЗе, подбирай дополнительную литературу. В качестве ориентира можешь взять программу одного из ведущих американских университетов, в интернете есть множество вариантов со ссылками на все необходимые материалы (пример). Всем этим стоит заниматься именно сейчас, потому что потом может банально не хватить времени и мотивации.

    Если же пока хочется просто заработать денег, стоит уделить больше внимания прикладным знаниям и практике с прицелом на то, чтобы как можно скорее устроиться на работу. Для начала следует определиться с нишей. Она должна соответствовать как минимум двум критериям:
    • Достаточная широта. Чем больше в нише компаний, тем статистически больше твои шансы найти работу.
    • Минимальное время, за которое можно получить навыки, необходимые для работы в нише. От начала обучения до трудоустройства тебя должно отделять 12-18 месяцев. Чем быстрее сможешь устроиться на работу и начать зарабатывать, тем лучше. Это даст хороший толчок как мотивации, там и твоему профессиональному росту.


    Я знаю только 2 ниши, удовлетворяющие этим критериям (заметь, это не значит, что других нет):
    • Мобильная разработка (Android, iOS).
    • Веб (фронтенд или бекенд). Ты правильно подметил, что в вебе большая конкуренция. Но конкурируют между собой в основном низкоквалифицированные работники. Минимально адекватных людей с базовыми знаниями отрывают с руками. Если потратишь год-полтора на правильное самообразование, то без проблем сможешь получить свои $1.5-2k (в Москве/на удаленке) на старте.


    Мобильную разработку и веб совершенно точно можно освоить за полтора года, если голова соображает хоть сколько-то. Подтверждений тому множество, есть они и на Тостере (пример).

    При выборе направления игнорируй безосновательные мнения задротов с их "настоящий мужик программист должен" и "X - плохо, пнятненько?". Все эти выпады - просто сезонное обострение синдрома вахтера.

    Когда определился с нишей, выбирай самый популярный в этой нише язык. Критерий популярности - количество вакансий на этом языке. Для разработки под Android это будут Java и Kotlin, для iOS - Objective C и Swift, для веб бекенда - PHP, для веб фронтенда - JS и TypeScript. Как уже писали, первый язык программирования - не приговор. Если ты хорошо освоишь хотя бы один, то сможешь без проблем перейти на другой (в той же парадигме) за 3-6 месяцев.

    Один из вариантов плана обучения такой:
    1. Заходишь на свой любимый сайт с вакансиями
    2. Ищешь 10 вакансий "middle %language% developer" (именно middle, это важно)
    3. Выписываешь все, что встречается хотя бы в 8 из 10 вакансий
    4. Гуглишь одну из тем по запросу "%topic% interview questions". Отмечаешь вопросы, на которые не знаешь ответа. Поначалу многое будет непонятно - это нормально, по мере изучения картина станет ясней.
    5. Гуглишь тему по запросу "%topic% introduction"
    6. Если попадаются книги, берешь первую попавшуюся и читаешь. Если книг нет, читаешь первые 5 статей. Как-то особенно заморачиваться с выбором книг на данном этапе вряд ли стоит: вводная литература вся примерно одинакова, и у тебя еще нет нужных знаний, чтобы отделить зерна от плевел. Если очень хочется, можешь попросить рекомендации на форумах/в чатах, где сидят программисты, работающие в выбранной тобой нише.
    7. Возвращаешься к пункту 4. Если еще остались какие-то непонятные вопросы, гуглишь их индивидуально.
    8. Повторяешь пункты 4-7 для каждой темы


    Если изучаешь какой-то практический навык (например, работу с системой контроля версий или язык программирования), обязательно подкрепляй теорию решением небольших, но реальных задач. Один из хороших вариантов - сделать какой-то свой проект и экспериментировать на нем. Если совсем нет идей для проектов, можно выбрать что-то из https://eax.me/programming-language-learning/ .

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

    Контролировать прогресс в теоретических вопросах самостоятельно трудно, желательно иметь внешнюю обратную связь. Один из вариантов ее получения - собеседования. Если на следующем собеседовании смог ответить на вопросы, на которых завалился на предыдущем, значит, прогресс есть)

    Практические задачи и проекты можно разбивать на небольшие завершенные шаги. Например, если делаешь мобильное приложение, которое выводит погоду в выбранном пользователем городе. Можно выделить следующие подзадачи:
    1. Создать проект в IDE
    2. Добавить главный экран
    3. Добавить на главный экран контрол выбора города
    4. ...

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

    Как только сможешь без подглядывания в Гугл отвечать на 80% вопросов с собеседований по всем темам своего направления, можешь начинать рассылать свое резюме. Лучше устроиться на работу как можно быстрее, но ни в коем случае не "за бесплатно". В компаниях, где платят мало, как правило, плохая инженерная культура, и никакого полезного опыта там все равно не получишь, а только потеряешь время.
    Ответ написан
    Комментировать
  • Gulp 4 и BrowserSync reload?

    potapchino
    @potapchino
    var gulp       	 = require('gulp');
    var sass       	 = require('gulp-sass');
    var browserSync 	 = require('browser-sync').create();
    var autoprefixer 	 = require('gulp-autoprefixer');
    var plumber 		 = require('gulp-plumber');
    
    gulp.task('browser-sync', function(done) { 
      browserSync.init({
        server: {
          baseDir: './out'
        },
        notify: false
      });
      
      browserSync.watch('out/').on('change', browserSync.reload);
      
      done()
    });	
    
    gulp.task('sass', function(done){
      gulp.src('app/scss/*.scss')
        .pipe(plumber({
          errorHandler : function(err) {
            console.log(err);
            this.emit('end');
          }
        }))
        .pipe(sass({errLogToConsole: true}))
        .pipe(sass({outputStyle: 'compact'}))
        .pipe(autoprefixer({
          browsers: ['last 4 versions'],
          cascade: false
        }))
       .pipe(gulp.dest('out/assets/css'))
       .pipe(browserSync.reload({stream: true}));
      
      done()
    });
    
    gulp.task('watch', gulp.series('sass', 'browser-sync', function(done) {
      gulp.watch('app/**/*.*', gulp.series('sass'));
      
      done()
    }));
    Ответ написан
    Комментировать
  • Как наложить изображение поверх слоя?

    @SpideR-KOSS
    Для нужного блока, который должен быть поверх остальных задать свойство CSS:
    .block1 {
       z-index: 999;
    }

    И этим свойством можно делать различные наложения блоков, например:
    .block1 {
       z-index: 1;
    }
    .block2 {
       z-index: 2;
    }
    .block3 {
       z-index: 3;
    }

    Соответственно block3 будет самый верхний, а block1 самый нижний, т.е чем выше значение z-index, тем выше блок.
    Ответ написан
    Комментировать