• Куда двигаться дальше senior разработчику? Новый язык, технологии, opensource, стартап?

    gobananas
    @gobananas
    finishhim.ru
    пришло понимание, что программирование это не знание языка и фреймворков

    Какой вы для себя ответ определили на вопрос что же такое программирование?

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

    Стартап? Определите какая потребность не закрыта у вас и друзей и пилите его каждый вечер по часу-два.

    Big Data это ведь не самоцель. Вот прошли вы курс допустим. Что вы будете бигдейтить, на каких данных?

    Самое главное ответьте себе на вопрос что вам по-настоящему нравится и двигайтесь в эту сторону.
    Ответ написан
    3 комментария
  • Нестабильный заработок на продаже арта/мерча/рукоделии за рубеж через PayPal - стоит заводить ИП?

    opium
    @opium
    Просто люблю качественно работать
    на мелких суммах проще забить как будет стабильно от 1к баксов уже стоит думать
    Ответ написан
    Комментировать
  • Где программисту искать стартап-идею?

    @Meyvorrrata
    1) Потребность
    2) Ради прикола (так взлетели многие проекты)
    3) Для себя
    4) Идея не приходит за пару секунд, я бы вам посоветовал сесть и каждый день писать идеи (минимум 30-50 штук) как улучшить мир пусть сначала будут и бредовые, но как говориться, раз в год и палка стреляет
    Ответ написан
    Комментировать
  • Как передать значение аттрибута в метод Vue?

    0xD34F
    @0xD34F Куратор тега Vue.js
    Неудивительно, что "всплывают все блоки". Ведь блоков у вас три, а свойство, отвечающее за активность блока - одно, общее для всех. Никакие атрибуты тут не помогут. Вместо логического значения активности работайте с номером активного блока:

    <ul>
      <li
        v-for="(n, i) in items"
        :data-rel="`ex-${i + 1}`"
        @click="active = i"
      >item #{{ i + 1 }}</li>
    </ul>
    
    <div
      v-if="active !== null"
      @mouseleave="active = null"
    >{{ items[active] }}</div>

    data() {
      return {
        active: null,
        items: [
          'hello, world!!',
          'fuck the world',
          'fuck everything'
        ]
      }
    }

    https://jsfiddle.net/fh9nvt5b/
    Ответ написан
    Комментировать
  • Как передать значение аттрибута в метод Vue?

    amux
    @amux
    alp.ac
    В data храните номер активного таба, а в эвентах используйте его:

    Эвент:
    @mouseleave="expand(1)"

    В табах:
    :class="{ active: active == 1 }"

    data:
    data() {
        return {
          acitve: 1,
        };
     },


    а в методах:
    methods: {
        expand(number) {
          Vue.set(this, 'active', number); //this.active = number
        },
      },
    Ответ написан
    Комментировать
  • Как передать значение аттрибута в метод Vue?

    nikichv
    @nikichv
    Frontend dev. Current stack: Next.js/RTK/Saga
    Я бы сделал что-то типа этого. Суть в том, что у каждого разворачиваемого элемента должен быть свой флаг isActive. Ну и кстати, для разворачивания табов не обязательно использовать какие-то data- атрибуты. Ну и плюс в темплейте у тебя верстка неполная какая-то, тэги не закрыты, например.
    <template>
      <div>
        <li v-for="(item, index) in itemsVisibility" 
            :data-rel="`ex-${index}`" 
            @click="expand(index)"></li>
    
        <div v-for="(item, index) in itemsVisibility" 
             v-show="itemsVisibility[index]" 
             :class="{ active: itemsVisibility[index] }"
             :data-rel="`ex-${index}`"
             @mouseleave="expand(index)"></div>
      </div>
    </template>
    
    <script>
      export default {
        data() {
          return {
            itemsVisibility: [
              true, // первый таб по дефолту открыт
              false,
              false,
            ],
          };
        },
        methods: {
          expand(index) {
            this.itemsVisibility[index] = !this.itemsVisibility[index];
          },
        },
      };
    </script>
    Ответ написан
    1 комментарий
  • Как передать значение аттрибута в метод Vue?

    Fragster
    @Fragster
    помогло? отметь решением!
    Связываться они должны по data-attr.

    Это вам не к vue. В vue должно быть как-то так https://jsfiddle.net/fm4utx33/ (очень приближенно. на самом деле это скорее даже антипаттерн :) , но смысл тот, что ввод влияет на данные, а уже они влияют на отображение)
    Ну и если табы не единообразны, то вот тут надо почитать и попереходить по ссылкам: https://ru.vuejs.org/v2/guide/routing.html
    Ответ написан
    2 комментария
  • Разобраться в основах Vue.JS?

    data - это модель, объект где будут все данные приложения
    methods - функции обработки данных, логика приложения

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

    @mgremlin
    Бизнес в и вокруг IT
    1. Самое первое - ничего не закупать вперед! От слова "вообще". Все равно никогда не угадаешь.

    2. На конкурентов не смотреть! У всех разная ситуация, даже у равных, а вы им по определению не равны со своим дефицитом.

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

    4. Поставка, цена поставки, товар на нашем рынке - ничто. Есть только один фактор, который решает: продажи. если у вас есть продажи, если клиент доволен сервисом - смело ставьте цену выше. Выше всех! Ничего страшного.
    Ответ написан
    Комментировать
  • Как выйти на оборот, который позволит закупаться по оптовым ценам?

    И как правильно проводить тестирование спроса?

    Протестировать спрос можно и без закупки товара. Настроить небольшую кампанию в Яндекс.Директ и посмотреть сколько человек заказали товар и сколько потратил на рекламу. Сразу узнаешь примерную стоимость одного лида.

    Какие методы есть для определения какие позиции закупать и в каком количестве на старте?

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

    @boss_lexa
    • посмотрите у конкурентов какие товары в бестелерреах, больше отзывы, рейтинг и тд
    • проверьте частотность wordstat.
    • какие товары чаще продают/рекламируют на авито, соцсетях, контекстной рекламе
    • у самих поставщиков узнайте что самое ходовое сейчас.
    • агрегаторы вроде яндекс маркет


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

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

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

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Python
    software engineer
    К сожалению с начальным знанием программирования - никак.
    Вы не можете привлекать сторонних разработчиков, но уже привлекаете их через Тостер.

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

    Как говорят - оптимизация до оптимизации не нужна.

    У меня был опыт запуска интернет-магазина во времена, когда их было десяток на всю страну. Первый интернет-магазин мы писали почти полгода, внедрив в него тысячи фич, которые оказались невостребованными. Через год проект себя отбил, и мы заказали не редизайн а весь магазин с нуля. Разработка шла 2 месяца, обошлась в 4 раза дешевле. Функционал стал гораздо удобнее. И мы поняли, что в первый раз надо было тоже пойти по более простому пути, тогда мы мы запустились на 4 месяца раньше и отбились бы за полгода.
    Ответ написан
    1 комментарий
  • Ошибка версии gulp, проблема обновления node-sass?

    @Nikola24 Автор вопроса
    npm i -g npm-check-updates
    npm-check-updates -u
    npm install
    Ответ написан
    Комментировать
  • Как удается получить заказ на бирже?

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

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

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

    P.S Поройтесь на фрилансиме, контингент посерьезнее.
    Ответ написан
    Комментировать
  • Как написать самую простую форму на PHP с отправкой данных на E-Mail?

    Thelema
    @Thelema
    Напишу готовый код только за деньги
    Ответ написан
    Комментировать
  • Где используются прототипы, наследование в JS приложениях?

    yurakostin
    @yurakostin
    Front-end developer
    Здравствуйте.
    На самом деле всё проще.
    Не обижайтесь, но вы просто не так хорошо знаете сам javascript.

    1. prototype - ссылка на прототип объекта.
    Array.prototype, Number.prototype. В нём хранятся методы и свойства этого объекта, а также... (далее переходим к __proto__)

    2. __proto__ - тоже ссылка на прототип. Например, введите в консоли [] и раскройте ветвь. У вас всего два свойства. Одно - length - количество элементов в массиве. Другое - __proto__. А где же все методы, которые мы можем использовать с массивами filter, map, slice и так далее? Они лежат в __proto__. Более подробно здесь.

    3. inheritance соответственно - наследование. JS построен на прототипной парадигме (надеюсь, я тут не наврал). Array наследуется от Object. Это можно легко увидеть, посмотрев Array.prototype. Там вы увидите тот самый __proto__, являющийся ссылкой на Object.prototype. Вся инфа по ссылке выше.

    4, 5. call и apply постепенно уходят из обихода, но тем не менее про них важно знать и уметь ими пользоваться. Эти методы позволяют вызвать функцию в контексте, который вам необходим.

    Например вам нужно вызвать метод какого-то объекта, который работает с this в контексте другого объекта, у которого этого метода нет. Вы можете сделать следующее:
    var o_1 = {
    	name: 'Peter',
    	hello: function () {
    		console.log('Hello, ' + this.name);
    	}
    };
    
    var o_2 = {
    	name: 'Jane'
    };
    
    o_1.hello.call(o_2); // Фактически вы говорите "вызови метод такой-то для объекта такого-то"


    Для передачи аргументов в "заимствованную" функцию оба метода принимают аргументы, каждый по-своему.
    var o_1 = {
    	name: 'Peter',
    	hello: function () {
    		console.log('Hello, ' + this.name);
    	},
            sum: function (a, b) {
    		console.log(`${this.name} sum a and b to ${a + b}`);
    	}
    };
    
    var o_2 = {
    	name: 'Jane'
    };
    
    o_1.sum.call(o_2, 2, 4);
    o_1.sum.apply(o_2, [1, 2]);


    Отличие между этими двумя методами в том, как они принимают аргументы, которые попадут в функцию.
    call принимает список аргументов, начиная со второго, а apply, соответственно, принимает массив.

    Также, ничто не мешает вам вызвать функцию, которая не нуждается в контексте, для этого первым аргументом можно передать null.

    var o = {
    	sum: function (a, b) {
    		console.log(a + b);
    	}
    }
    o.sum.call(null, 1, 2);
    o.sum.apply(null, [1, 2]);


    Подробнее тут.

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

    var o = {
    	a: 1,
    	b: 2,
    	sum: function () {
    		console.log(this.a + this.b);
    	}
    };
    
    var o2 = {
    	a: 10,
    	b: 20
    };
    
    var o2Sum = o.sum.bind(o2);
    
    o2Sum();


    Также с помощью bind можно каррировать функции.
    Всё есть здесь

    PS: надеюсь, код не содержит ошибок и я нигде не налажал и всё правильно рассказал.
    Ответ написан
    4 комментария
  • Как решить проблему с концентрацией?

    mudrenokanton
    @mudrenokanton
    frontend dev
    Чето тут многие пишут страшилки про болезни и докторов, а при этом сами говорят, что они не доктора и не разбираются.

    Я лично не вижу ничего криминального. Обычная привычка, зависимость. Мы склонны подсаживаться на "новизну". Можете почитать статейку на эту тему, если с английским дружите:
    https://medium.com/the-spike/the-crimes-against-do...

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

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

    По поводу отвыкания от телефонов и соц-сетей, если проблема локальная. Я особо никогда не зависал, но моментами бывало, что ловил себя на мысли, что надо бы меньше времени на них тратить. Что я делал? Брал бумажку и перед тем как зайти в fb или instagram — четко писал на этой бумажке "что я собираюсь сделать" | "зачем я хочу это сделать" | "что в итоге сделал" в 3 колонки. В начале выходило чето в стиле "зайти в fb" | "спросить человека X про встречу" | "тупил 30 минут скроля ленту". Со временем 2 и 3 колонка начали все меньше отличаться, а потом мне стало таааааак влом это записывать, что мне казалось проще тупо не заходить. Буквально 1-2 недели максимум такой терапии надо, а то и несколько дней.

    Правильно писал Стивен Кови про момент, между раздражителем и реакцией. Чем четче этот момент будешь чувствовать — тем прикольней жизнь будет.
    Ответ написан
    3 комментария
  • Как бесплатно раскрутить instagram?

    Moon_Lobster
    @Moon_Lobster
    Инвестор
    Все может упираться в ваш контент, он всегда во главе угла. Пересмотрите подход к описанию в постах или к качеству фото.
    Бесплатно только ручной массфоловинг (советую сопровождать лайками). В остальном советую следующее:
    1. Установите программу SocialKit, для массфола и лайков, хорошо фильтрует аудиторию, есть возможность подтягивать людей из ВК, поиск по геолокации, по хештегам и т.д. Он сложнее "тулиграма", но круче!
    2. Используйте хэштеги, в том числе трендовые теги (вроде "до и после" и т.д.)
    3. Взаимопиар, очень мощный инструмент. Найдите таких же блогеров как и вы (по подписке и активности подписчиков) и предлагайте взаимный пиар. Сюда же можно и отнести рекламу у инста-блогеров, но уже платную., ищем лидеров мнений вашей ЦА, платим деньги и получаем фидбек.
    4. Реклама в инстаграме во всяком случае для теста стоит не дорого от 2-3 долларов, так что пробуйте экспериментируйте, главное хорошо настроить таргет.
    5. Конкурсы, ну тут все понятно, единственное на конкурс я бы настроил еще рекламу и купил бы рекламу у пары блогеров. И не советую конкурсы проводить, когда совсем мало подписчиков, большого профита от этого не получите.
    Удачи!
    Ответ написан
    Комментировать
  • Тупиковое и медленное развитие, лекарство?

    voronkovich
    @voronkovich
    Нужно позволить всякому шлаку проплыть мимо вас. Не нужно вкладывать много времени в изучение того, что завтра изменится. Лучше тратить время на фундаментальные вещи, срок жизни которых больше 5-10 лет.
    Примеры:
    • Реляционные СУБД. Я использую их уже лет 10, и ничего принципиально нового (с точки зрения разработчика) в них не появилось. Я как изучил SQL 10 лет назад, так и пользуюсь им до сих пор. В тоже время, я знаю достаточно хипстеров, которые каждый день пишут на новом фреймворке и при этом не смогут составить запрос с joinами. Изучайте реляционные базы данных и SQL - они будут жить еще лет 20-ть;
    • ООП. У меня на полке лежит книга банды 4-х, которую я купил давно. Мне не нужно каждый год покупать новый экземпляр из-за того, что шаблоны проектирования вдруг взяли и "устарели". Изучайте ООП. Оно будет актуальным еще очень долгое время;
    • Регулярные выражения;
    • Командные оболочки sh/bash;
    • и т.д.

    Короче говоря, не тратьте время на синтаксис, тратьте его на семантику.

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