• Стоит ли идти в веб-разработку?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Советую идти в мобильную НАТИВНУЮ разработку.
    Будете сразу делать приложения, взаимодействующие с веб-серверами и использовать все "железки" мобильного устройства по необходимости.
    И денег - больше платят за приложение, чем за обычную вёрстку.

    UPD: Вам нужно выучить основные принципы обмена данными по сети, чтобы чувствовать себя более увереннее.
    Ответ написан
  • Замыкания в чем конкретно разница?

    @afanasiyz
    Javascript-разработчик
    поменяйте var на let - это быстрое решение.

    https://learn.javascript.ru/closures-usage

    а вот тут, в задачках - решение вашей проблемы
    Ответ написан
  • Интересная задача на JS?

    profesor08
    @profesor08 Куратор тега JavaScript
    А зачем это задаче js? Решается парой css свойств.

    Ответ написан
  • Как правильно построить модульный SPA?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    Положите в основу https://github.com/thiagobustamante/typescript-ioc чтобы у плагинов была возможность без особого труда получать доступ к различным компонентам системы.
    Typescript может работать в браузере https://github.com/Microsoft/TypeScript/wiki/Using... и обрабатывать обычный js код.
    разработчикам писать плагины для него

    https://github.com/Microsoft/monaco-typescript - наиболее продвинутый ts/js редактор для web
    Ответ написан
  • Чем опытнее разработчик, тем меньше соблюдается принцип KISS?

    Adamos
    @Adamos
    Чем опытнее разработчик, тем чаще, выполняя конкретную задачу, он понимает, что примерно такую уже решал. Поэтому опытный разработчик видит уровни абстракции, общие для многих решений. И описывает их так, чтобы потом, при решении очередной конкретной задачи, использовать написанное ранее с минимумом дополнительных усилий.
    Вы, не имея такого опыта, просто не понимаете, что все эти лееры, провайдеры и трейты - прекрасная возможность написать две строчки и быть уверенным в их работе там, где вы угробите два дня на написание "простого" решения, а потом еще неделю будете отлавливать его глюки.
    Ответ написан
  • Как сделать безопасную авторизацию с помощью JWT?

    @akass
    Developer
    https://gist.github.com/zmts/802dc9c3510d79fd40f9d...
    Отдаешь два токена и время жизни access token, которое обычно минут 30.
    Соответственно если угоняют access, то он стухнет через пол часа, а если угонят оба, то юзер не сможет обновить по реврешу, его кинет на перелогин и тогда у угонщика все стухнет.
    Ответ написан
  • Какие преимущества у Appcelerator'а по сравнению с Phone Gap и что лучше использовать?

    ZimM
    @ZimM
    Phone Gap — это, грубо говоря, приложение в виде однооконного браузера, где добавили несколько простых API (уведомления, контакты и простенькие уведомления).
    Appcelerator же — SDK для разработки полноценных приложений. Кроме того, что API у него обширнее на порядок и затрагивает не только веб-технологии, основное отличие от Phone Gap в том, что он выдает также специфические API платформы. Так, например, на Андроиде можно пускать Ongoing уведомления, создавать фоновые сервисы, стандартные андроидовские меню (по кнопке Menu). В общем и целом, Appcelerator позволяет делать абсолютно полноценные сложные приложения с «родным» интерфейсом, учитывающим особенности и возможности платформы. Гляньте стандартный пример Kitchen Sink в Titanium Studio (IDE Appcelerator'а) — вопросы отпадут.
    Phone Gap же предназначен для разработки простых веб-приложений. Если вам необходимо и достаточно скомпилировать HTML5-приложение в приложение для Андроида — Phone Gap будет достаточно. В противном случае только Appcelerator. Имхо.
    Ответ написан
  • Как создать очень простое мобильное приложение "на 1 раз"?

    sim3x
    @sim3x
    Цель: гость фотографирует QR код в гостинице и устанавливает приложение, цель - всегда наш телефон под рукой, всегда актуальные цены, ссылка на наш сайт, может фотки друзьям показать...
    не будет устанавливать
    не будет показывать
    цены будет смотреть на букинге или другом агрегаторе

    Сделайте мобайл-френдли сайт и продвигайтесь в таких агрегаторах
    Ответ написан
  • Правда ли что программистам навязывают определенные мысли?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    1)обязательно надо знать математику алгоритмы и тд(даже если это не используется)

    Если хочется выйти за рамки дешевой рабочей силы - да.

    2)надо работать бесплатно на первых порах

    Зависит от навыков самообразования. Кто-то уже в школе делает деньги, а кому то и после университета сложно найти работу.

    3)создавать open source проекты бесплатно чтобы показать всем свой код

    Скорее нет

    4)всегда думать о работе даже по выходным и тд

    Если хочется выйти за рамки дешевой рабочей силы - ДА.

    UPD:
    Реальность такова, что если вы хотите выйти за рамки дешевой рабочей силы - у вас ровно 2 способа это сделать:
    а) вы можете основать собственное дело
    b) вы можете в чужом деле вырасти из человека который пишет код, в партнера который решает проблемы бизнеса ( что в конечном счете эквивалентно предыдущему пункту)

    И то и другое подразумевает что вы перестаете разделять свою жизнь и работу.
    Вы, это и есть то дело, которым Вы занимаетесь. 24/7/365.
    И это к слову сказать справедливо для практически любой сферы, не только IT.
    Ответ написан
  • Совместимы ли хороший рейт, фултайм и long-term на фрилансе/удалёнке?

    Sanes
    @Sanes
    реально ли вообще заниматься кодингом столько часов (8 часов в день, 5 дней в неделю) на протяжении многих месяцев, лет?

    Нет конечно. По крайней мере продуктивно.
    Ответ написан
  • Совместимы ли хороший рейт, фултайм и long-term на фрилансе/удалёнке?

    AndrewPokora
    @AndrewPokora
    Database developer
    Тут на самом деле несколько вопросов. Постоянная работа на высоком рейте -- да, возможно. Не "ибо в целом в теории", а вот предметно так, грубо, зримо. Это легко проверить, сделав поиск по тому же Upwork. Когда у меня не получается взять заказ, то всегда потом стараюсь проверить, кому он ушел -- нередко вижу одних и тех же фрилансеров. По профилю можно посмотреть, сколько они взяли заказов, сколько отработали, и примерно сколько заработали. Есть монстры, у которых существенно больше 40 k в год. Меня злит, что я проигрываю им заказы, но они же меня и мотивируют работать лучше. То есть если вопрос: "Можно ли?", то ответ - "Да".

    Другой вопрос: "Как"? Тут уже однозначного ответа нет. Как минимум, ваши навыки должны быть востребованы и оценены заказчиками. Это уже сильно зависит от вас и от того, чем вы занимаетесь. Я не специалист в вашей области и не могу сказать, насколько это все нужно на рынке. Но опять же — никто же вам на роду не записал заниматься только фронтендом, ищите себе нишу, развивайтесь, для себя же стараетесь.

    И последнее -- насколько вас хватит. 40 полноценных рабочих часов в неделю на удаленке -- это реально много. Это не то же самое, что 40 часов в офисе, в которые входит кофе с коллегами, покурить, обедик, посмотреть в окно, на хорошенькую соседку, и т.д. и т.п. У меня лично хороший день -- это максимум 4-5 часов продуктивной работы. Тянуть каждую неделю по 40 часов я бы не советовал вне зависимости от рейта. Если ориентироваться на фриланс/удаленку как на постоянный источник дохода -- делайте перерывы, выходные, обязательно выделяйте время для спорта/семьи, несколько раз в год берите короткие (на неделю) отпуска. Не рассматривайте это как бонус, которым можно пожертвовать во имя заработка. Время для отдыха и семьи нужно планировать и выделять точно так же, как для работы - иначе быстро сгорите, и работа в офисе за доширак покажется за счастье. Если ваша задача не срубить по быстрому бабла на приработке, а там хоть трава не рости, а действительно работать постоянно и удаленно — жизнь нужно планировать иначе.
    Ответ написан
  • Как развить навык проектирования приложения или как стать Senior?

    @OldCrazyCoder
    Писать код. Читать код. Например, популярные опенсорсные проекты на гитхабе. Если очень уж книгу хочется, то вот минимальный джентельменский набор:
    1. Совершенный код. С. Макконнелл
    2. Чистый код: создание, анализ и рефакторинг. Роберт Мартин
    3. Приёмы объектно-ориентированного проектирования. Паттерны проектирования. Банда четырех))
    4. PHP. Объекты, шаблоны и методики программирования. Мэт Зандстра
    5. Рефакторинг: улучшение существующего кода. Мартин Фаулер
    И т.д. Книг крайне много. И статей много. И простое их чтение мало что даст. Практика, много практики. Критичное отношение к своему коду, однако без перегибов - не стоит упираться в перфекционизм.
    Ответ написан
  • 16 лет. Идти во фриланс или начинать junior'ом в конторе?

    DevMan
    @DevMan Куратор тега Карьера в IT
    на галеры. в смысле в контору.
    если контора нормальная:
    1. быстрее подростешь в проф.плане
    2. увидишь/поймешь как устроена разработка ПО
    3. прокачаешь коммуникационный скил

    а потом уже можно на фриланс, если захочется свободы.
    Ответ написан
  • Правильно ли построен план обучения?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Весь ваш план обучения никак не годится для получения знаний. Он годится только для ознакомления.
    Почему? Потому что в нем ВООБЩЕ нет практики, одно чтение книг.

    Не парьтесь с чистотой помыслов, просто пробуйте устраиваться джуниором - с реальной практикой, обучение будет в разы быстрее.

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

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

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Не рекомендую ничего делать с сайтом. Как бы ни было жалко работу, своя репутация дороже - это на случай, если вы хотите навредить.
    Но:

    1. Вы можете попробовать найти заказчика, для которого написан сайт, написать ему письмо или связаться другим способом и разъяснить, что вся работа по сайту на самом деле была сделана не студией, а лично вами. Можете вкратце пояснить, что студия с вами не расплатилась, и если заказчику нужны будут доработки, то пусть он связывается с Вами напрямую, а не через студию, которая вас "кинула".

    2. Сайт смело можно добавлять в свое портфолио и искать другую работу.

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

    alsopub
    @alsopub
    "Точка следования" - alenacpp.blogspot.ru/2005/11/sequence-points.html
    Там есть почти ваш случай - x[i] = ++i;
    Значение не то чтобы не определено, компилятор в праве решить что сделать сначала - вычислить адрес x[i] или сделать ++i.
    Я так понял.
    Ответ написан
  • Vuejs и Angular аналоги? В чём разница?

    @vkdv
    1) vuejs - простой и ненавязчивый фреймворк который призван максимально просто и тесно взаимодействовать с произвольной версткой, в этом плане он очень похож на angular 1 , только проще, чище и чуть логичнее. При этом оп предоставляет инструменты для компонентного подхода(для фанатов клиента) и даже серверный рендеринг. На мой взгляд vuejs - это идеальное решение для быстрой разработки с допустимым уровнем качества.

    2) Backbone - это далеко не библиотека и он в прошлом. Его главный минус - это невозможность управлять поведением dom, если этот dom не был сформирован через backbone-engine. Что делает его почти бесполезным, если только ты не хочешь написать проект , который будет намертво зависеть от выбранного инструмента и в котором будет невероятное множество клинтских шаблонов

    3) React - это скорее концепция + движек для ее реализации, чем фреймворк Его существенный плюс в том, что верстка идет с изолированной логикой в паре, но это плюс скорее концептуальный , точно также можно поступать и используя jquery в изолированом скоупе прямо в верстке в html- фалах - виджетах (Я пробовал уже после реакта и это очень просто и надежно, но я fullstack и мне от клиента большего не нужно)
    Минус реакта в том, что верстка должна рендериться только через шаблонизатор реакта, это значит что весь проект нужно рендерить через реакт иначе же в проекте будет хаос.

    4) Ember - тоже говорят вещь хорошая, но я бы никогда не выбрал Ember по той же причине что и backbone.
    5) Riot и еще 50 подобных фреймворков похожи либо на Angular, либо подражают React, либо идут по пути Backbone&Ember или же какие-то "гибридные" со своими фишками.
    6) Angular 2 - я пока не понял его фишку.

    Если рассматривать весь этот зоопарк с точки зрения бизнеса - то лучше выбрать то, что максимально проще и либеральней
    Ответ написан
  • С помощью чего делается анимация на лендингах?

    webirus
    @webirus
    Тыжверстальщик! Наверстай мне упущенное...
    JS:
    viewportchecker.js или wow.js на выбор
    CSS:
    animate.css, есть и другие, но эта самая популярная

    Я чаще всего использую связку viewportchecker + animate.css.

    $('.bxslider').addClass('hidden').viewportChecker({ // добавляем класс hidden
    // ждем появления блока в поле зрения, чтобы применить к нему анимацию
        classToAdd: 'visible animated fadeIn', // меняем классы, выполняем анимацию
        offset: '50%', // доп параметры, когда начинать анимацию
        repeat: true, // повторять при возвращении снизу вверх
    });

    PS: Классы hidden и visible нужно добавить в css.
    Если используете Bootstrap, то лучше классы сделать другие, чтобы не было конфликта.

    Преимущество подключения именно viewportchecker для меня.
    То, что его можно использовать для любых скриптов вообще, не только для анимации.
    Запуск видео, инициализация слайдера, "убийство" слайдера, особенно animateNumber.js ( описание ) удобно привязать, чтобы анимация цифр срабатывала не при загрузке, а именно в момент скролла до блока.
    И библиотека весит совсем немного.
    Ответ написан