• Какой фрэймворк выбрать Yii 2 или Symfony 2?

    IvanCher
    @IvanCher
    Мысли шире
    Симфонисты не работают с yii2 и не до конца понимают о чем пишут :)
    Я скажу так: оба фреймворка на высоте, по возможностям одинаковы, но подходы очень разные.
    Объективно скажу так: на yii2 не получится запускать отдельные модули без запуска всего приложения, тут у симфони2 огромный плюс. Так же у симфони более классные консольные команды для генерирования каркасов, мне больше нравится, чем gii(но дело вкуса). Но по факту большинство сильных сторон симфони не оправдывается в связи с высоким порогом вхождения. Найти хорошего симфони программиста намного сложнее, чем найти его на yii2. Поэтому взависимости от бюджета и масштаба проекта можете выбирать. Симфони2 - это больше уровень корпораций, yii2 более простой при практчески том же функционале.
    Если знаете симфони2, то лучше подтяните его. Yii2 изучить намного проще, намного всё прозрачнее внутри работает, там Вам хватит пару вечеров, чтобы пройтись по исходникам и всё для себя понять как изнутри как работает.
    Ответ написан
    7 комментариев
  • Как прeодолеть зону комфорта, стать фрилансером не обанкротившись?

    uvelichitel
    @uvelichitel
    habrahabr.ru/users/uvelichitel
    Я думаю на ресурсе полно действующих фрилансеров желающих получать >3К евро работая в сильной команде над интересными проектами. Иметь оплачиваемый отпуск, пенсионный стаж, мед. страховку, кофе печеньки и уборщицу в комфортабельном офисе, участие в профильных конференциях, хорошую запись в резюме и при этом время на семью. Рискну предположить, что это смахивает на мечту любого(ну почти любого) российского фрилансера. Есть еще хозяева дворовых веб студий, клепающих как семечки мусорные landing page и конвейерные your very own and truly original web site из пяти шаблонов. Для последней категории мечта неосуществима ввиду слабого профессионального уровня. Работу, которая у вас есть(если не лукавите) я бы стал менять только на лучшую или на собственный instagram, telegram, moneygram etc. Фриланс в вашем случае на мой взгляд просто шаг назад. Работа на дядю (даже паскудного) не такая уж трагедия.
    Ответ написан
    2 комментария
  • Как прeодолеть зону комфорта, стать фрилансером не обанкротившись?

    Bandicoot
    @Bandicoot
    Вась-программист
    Если бы я получал 3к евро, то просто сидел бы и не рыпался. Объективно человеку больше не так уж надо зарабатывать
    Ответ написан
  • Как прeодолеть зону комфорта, стать фрилансером не обанкротившись?

    kumaxim
    @kumaxim
    Web-программист
    Для начал ответь сам себе на вопрос "А чем тебе неудобна текущая золотая клетка"? Можешь не писать здесь, но определись для себя.

    Далее нужно осознать, что фриланс - это подвид бизнеса. Есть книжка Р.Киосаки "Квадрант денежного потока". Там всех людей, работающих в экономике разделяют на 4 части:
    1. Р - наемные работники
    2. П - предприниматели
    3. Б - бизнес
    4. И - инвесторы

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

    Переходя к твоему вопросу о выходе из зоны комфорта.
    Первое что рекомендую перед началом своего бизнеса - оплати все долги. Закрой ипотеку, погаси автокредит, все потребительские заемы и т.д. В случае если ты провалишься(первый блин, обычно, комом) по крайней мере ты со своей семьей не под мостом окажешься.
    Второе - содержание семьи. Никакие твои заработки не должны влиять на твою жену/ребенка. Твои родные, как минимум, должны иметь крышу над головой + еду на столе. Посчитай сколько ты платишь за комуналку + еду. Далее умножаешь эту сумму на 24 месяца. Это финансовая подушка твоей семьи.
    Третье - планирование. Бизнес без бизнес-плана - это не более чем хобби. С 16 лет стремился зарабатывать в сети. Продавал ссылки на sape.ru в 2008-2009, работал с трафиком в 2010-2012, продавал китайские безделушки с 2013-2014... Сейчас ушел в разработку одного SaaS-решения. Первые пару месяцев оптимизм из ушей хлещет, думаешь "Да все будет, да это фигня, преодалею...." Но вот начинаются черные полосы: ТИЦ сайта в планируемый апдейт не вырос до нужного значения, твой сайт на 9 месте в выдаче, вместо требуемой тебе 3-4 позиции, товар из Китая на таможне завис.... Да я могу до бесконечности перечислять проблемы, которые возникали у меня... А время - деньги: тебе нужно платить аренду, зарплату, рекламу, кредиты и т.д. Не платишь - начинается ругань, из Максима Александровича я сразу превращаюсь в мошенника, кидалу, сволочь... эх, во общем суть ты понял. Думай на 2 шага вперед, вот что я хочу сказать
    Четверное - не делай бизнес с полного нуля. Перт Осипов(проект Бизнес Молодость) в каком-то из видео говорил, что мы не ценим самое ценное что у нас есть, мы воспринимаем это как должное, когда для других людей это может быть сравни бриллианту среди кучи стекляшек. Вы не первый день работайте в ИТ по какой-то специализации, так ведите эту специализацию и дальше. Занимайтесь своим любимым делом.
    Пятое - не пытайтесь все делать сами. Когда я запустил свой самый первый интернет-магазин по Китайским безделушкам я все делал сам: рисовал дизайн, верстал его, настраивал рекламу, обзванивал клиентов, носил товар на почту.... В общем занимался вообще всем! Причем за всей этой рутиной я не видел, что мой сайт работает не эффективно, я упускаю из виду 20% горячих клиентов, 10% моих бандеролей исчезают в глубинах Почты России... Вы как первое лицо компании должны знать все процессы своего предприятия, иначе Вы не сможете им управлять, но Вам не нужно все процессы делать самому. Отдайте часть на аутсорс или делегируйте наемному сотруднику.
    Шестое - я на этом очень сильно обжегся около 3-х лет назад.... Ставьте своим сотрудникам четко достижимые KPI(ключевые показатели эффективности). Например, есть у меня форма заказ обратного звонка на сайте. Человек пишет туда своего Имя и номер телефона, после чего эти данные попадают в CRM. Для менеджеров, которые у меня обрабатывают вызовы клиентов один из KPI звучит так: перезвонить клиенту в течении 15 минут после поступления от него заявки, если она поступила в рабочее время. Причем все KPI Вы должны сформулировать максимально точно и подробно. Я сам с KPI работаю так: есть у человека базовый оклад и базовый набор KPI, которые ему необходимо выполнять. Если он их выполняет - получает оклад, выполняет лучше - получает оклад + премию. Причем оклад у меня сам небольшой, около 6 т.р., но нижняя з/п у меня примерно в 2,5 раза выше.

    Первые 4 пункта - это как мягко выйти, вторые два - как не свалиться.

    В целом о бизнесе в РФ могу сказать что его делать относительно легко. Достаточно просто делать что-то хорошо и по человечески относится к своим клиентам. Примерно за 1 год Вы нарабатываете определенную базу контактов(поставщики/партнеры/клиенты), которые Вас знают и доверяют Вам. А далее главное все это не растерять.

    Вам могут все Ваши родные/коллеги/друзья говорить "Да ты что, сейчас санкции, налоги, коррупция..." Поверьте, все это херня! Под прессом можно работать и зарабатывать, причем когда его снимут - Вы получите взрывной рост. А все эти отговорки про санкции, коррупцию, высокие налоги... Да просто у кого-то очко играет!
    Ответ написан
    14 комментариев
  • Как прeодолеть зону комфорта, стать фрилансером не обанкротившись?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    С учетом нынешнего курса - 3k евро в месяц на руки - это отличные деньги для не руководящей должности и очень неплохие для руководящей.
    Даже если на фрилансе получится зарабатывать сопоставимые деньги - геморроя будет в разы больше.
    Есть вариант работы по рекомендациям за большие деньги - но к этому надо целенаправленно идти, и опять же никакой стабильности.

    Уход в свой бизнес кажется мне более интересным в финансовом смысле - но потребует от Вас совершенно других навыков и полного изменения жизни.
    Ответ написан
    2 комментария
  • Как прeодолеть зону комфорта, стать фрилансером не обанкротившись?

    Походите по фрилансерским биржам (в том числе и забугорным), сравните сколько получаете сейчас и сколько бы получали фрилансером. Задайтесь вопросом "а стоит ли оно того?".
    Если понимаете, что "протухаете" на своей работе, займитесь своим проектом в свободное от работы время.
    Ответ написан
    Комментировать
  • Какой процессор лучше?

    AlanDrakes
    @AlanDrakes
    Думаю, поддержу bobrovskyserg и тоже выберу Pentium.
    Ответ написан
    Комментировать
  • Yii2 сжатие и объединение js и css файлов. Как сжимать пакетами (jquery отдельно, angular отдельно)?

    miraage
    @miraage
    Старый прогер
    Стоп, стоп, стоп!
    Я уверен на 99.999999999%, что проблема в аннотациях.
    https://docs.angularjs.org/guide/di

    Так нельзя!:
    function MyCtrl($scope, MyService) {
      $scope.data = MyService.getData();
    }
    angular.module('myapp').controller('MyCtrl', MyCtrl);


    Только так:
    MyCtrl.$inject = ['$scope', 'MyService'];
    function MyCtrl($scope, MyService) {
      $scope.data = MyService.getData();
    }
    angular.module('myapp').controller('MyCtrl', MyCtrl);


    Либо так:
    function MyCtrl($scope, MyService) {
      $scope.data = MyService.getData();
    }
    angular.module('myapp')
        .controller('MyCtrl', ['$scope', 'MyService', MyCtrl]);


    / / UPD

    ВНИМАТЕЛЬНО ПРОЧИТАЙТЕ МОЙ ОТВЕТ! В нем все описано.

    Вместе с ng-app="myapp" допишите ng-strict-di, и без компрессии посмотрите, где ругается.
    Ответ написан
    Комментировать
  • Объясните коротко, по делу что же лучше/производительнее/удобнее и в каких ситуациях?

    live отметаем сразу, т.к. он уже не только deprecated, но и deleted. С bind и click все интереснее - внутри (в коде jquery) они ссылаются на on, и возможно даже будут удалены в будущем. Отличие функциональности click в том, что он может возвращать уже привязанное событие (аналогично trigger), если оное уже есть. Например, объявление click выглядит как-то так (не скажу за все версии):
    function (data, fn) {
        return arguments.length > 0 ? this.on(name, null, data, fn) : this.trigger(name);
    }


    Также click не может делегировать события, т.е. вы не сможете сделать так, чтобы событие было актуально не только для всех элементов a, которые уже есть, но и для тех, что сгенерируются любым способом в будущем (собственно, это позволяют live и on, первый из которых имеет статус deleted и недопустим к использованию).

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

    Как-то так. Прошу извинить если немного напутал терминологию.

    UPD. live технически также ссылался на on, но, хотя в отличие от bind и прочих позволял отслеживать появление новых элементов, имел много недостатков - тут можно много интересного прочесть. Возможно, поэтому его и удалили.
    Ответ написан
    2 комментария
  • Объясните коротко, по делу что же лучше/производительнее/удобнее и в каких ситуациях?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    мне казалось что все что не .on помечено как deprecated...

    В любом случае:
    - .on - универсальный метод объеденяющий все ниже перечисленные. Всегда старайтесь использовать его.

    - .live - вешает листенер на document и проверяет источник события. Гуглить "Всплытие событий". Был еще .delegate, который делал ровно то же самое но вы сами указывали ноду на которую вешается обработчик. А теперь вопрос, что будет быстрее? Вешать обработчик напрямую на элемент или на его родителя и проверять с какого элемента этот ивент всплыл? Будет ли разница по глубине DOM дерева? Если мы дошли что чем ближе обработчик висит к целевой ноде, тем быстрее, почему вообще нужно использовать делегирование событий? Помимо упрощения работы (если DOM поменялся обработчики не нужно перерегистрировать так как контейнер не менялся и все еще хранит листенер) есть еще такой параметр как количество листенеров. Если у вас табличка аля эксель, проще повесить один листенер на контейнер чем много-тысяч на каждую ячейку.

    - .bind - просто вешает событие на элемент.

    - .click - алиас для .bind('click').
    Ответ написан
    Комментировать
  • Как вернуть код ошибки из метода?

    gbg
    @gbg Куратор тега Программирование
    Любые ответы на любые вопросы
    К фатальным ошибкам скорее относится считать, что исключения нужны только для отработки каких-то ужасов. На самом деле это наиболее корректный языковой механизм, верное применение которого гарантирует правильную раскрутку и очистку стека, а также освобождение ресурсов, особенно при использовании сложной, динамической логики захвата ресурсов.
    Ответ написан
    4 комментария
  • Как вернуть код ошибки из метода?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Если исключение ловить, то оно не относится к фатальным ошибкам.
    Ответ написан
    1 комментарий
  • Как вернуть код ошибки из метода?

    abler98
    @abler98
    Software Engineer
    Третий вариант самый оптимальный (для меня), таким образом можно получить все ошибки сразу или по отдельности. А ещё лучше записывать не коды ошибок, а сами ошибки.
    Ответ написан
  • Как заставить монтажников убрать скрутки в подъезде?

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

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

    Можно поискать радиопомехи, создаваемые скруткой, но скорее всего, таковых не найдется.

    Итого - если явных проблем с качеством нет, то и смысла убирать скрутку нет - она является частью зоны ответственности провайдера и его головной болью. Окислится, отвалится - придут, новую накрутят.
    Ответ написан
    2 комментария
  • Yii2 ajax регистрация и авторизация что это такое?

    abler98
    @abler98
    Software Engineer
    Выводите форму как и всегда в всплывающем окне + в Yii2 по умолчанию есть поддержка проверки на стороне клиент и ajax проверка введенных данных.

    /views/layouts/main.php
    <?php $model = new SignupForm(); ?>
    <?php $this->render('/site/user/signup', ['model' => $model]); ?>
    Ответ написан
  • Вредно ли копирование в программировании?

    thestump
    @thestump
    программист PHP
    Вредно ли пользоваться калькулятором? Если вы школьник 1-9 классов - да вредно, если вы бухгалтер с 20 летним стажем - нет не вредно, если кассир в магазине - нет не вредно и т.д. Также и с программированием. Вам трудно будет запомнить структуру оператора for если вы новичок и постоянно пользуетесь копипастой, а если вы программист левела сеньор то копипаста оператора цикла (уверен что ни один сеньор так делать не будет) из соседнего класса вам сэкономит пору долей секунды которые будут направленны на размышление об алгоритме и т.д.
    Ответ написан
    Комментировать
  • Вредно ли копирование в программировании?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Авторы скринкастов, видеоуроков и прочих легкоусвояемых материалов в большинстве своем - малолетние долботрясы. Которые ничего не смыслят в теме, которую взялись объяснять другим. Так что, если говорить о вредности для программирования - это скринкасты. Причем вредность фатальная. Здесь, на тостере, полно жертв скринкастов. Душераздирающее зрелище.
    Ответ написан
    Комментировать
  • Вредно ли копирование в программировании?

    gbg
    @gbg Куратор тега Программирование
    Любые ответы на любые вопросы
    Копирование может быть вредно только если копирующий учится скоростному слепому набору.

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

    А вот действительно вредно - использовать вместо имен тарабарщину вроде a, aaa, a1, a2, a3 и так далее.
    Ответ написан
    Комментировать
  • Вредно ли копирование в программировании?

    @dklokov
    php developer
    Хорошая IDE как компромисс ) Писать начал вроде сам, а дополняет уже она. Опечаток 0, продуктивность на высоте)
    Ответ написан
    Комментировать