• Java junior developer кратчайший путь с нуля до реальной работы?

    @Mikeismynick Автор вопроса
    2 месяца как работаю разработчиком ))) желаю всем дойти до своей цели, на любые вопросы с радостью отвечу.

    Перед прочтением поста прошу достать свой компас сейчас мы будем его настраивать или же решим что он все таки показывает в отличную от программирования сторону, дело в том что люди которые читают подобные статьи находятся в смятении, и прочитав очередную саксес стори пытаются замотивировать себя идти в этом направлении, это все понятно - я писал этот пост именно для вас, выше вы найдете предисторию чтобы все это “примерить на себя”, чего таить и я в свое время делал точно также, причем я больше мотивировал себя чем шел к цели.
    Будучи разработчиком сейчас я вполне отдаю себе отчет что мог им и не стать, да у меня была цель, да были мотиваторы, но реально почти до самого конца я вел себя так как будто не хотел этого - чуть что давал слабину, расслаблялся и чуть-ли не забрасывал все это дело, года 2 я просто думал что выучу все сам и по факту вообще ничего не делал, уже будучи на курсах я держался в хвосте из - за чего постоянно был в авральном режим и чуть догонял костяк как тут-же сбавлял темп и отставал, вообще процесс обучения этому занятию переодически очень сильно вымораживает и тот самый фильтр который многие не проходят, я могу посоветовать тебе читатель иметь свою философию и подход к этому занятию, в итоге у тебя все равно все “поднимется” и “победится", советую читать и перечитывать tutorials.jenkov.com/software-as-career/learning-i... с правильным мировозрением все это преодолевается намного легче.
    Внимание! Если вы хотите стать разработчиком, то уже сегодня примените весь ресурс что у вас есть. Хотите попробовать сами выучить все ? Вперед! но общайтесь активно с комьюнити, ходите на конференции, и пишите код, много кода, и главное пишите его правильно, посмотрите как устроены небольшие опенсорс проекты, почитайте про трехслоную архитектуру и дерзайте! Не получается ? или вы видите что темп черепаший, а уже начинает надоедать и руки опускаются ? ОК! все к этому приходят, вам нужен турбоБуст а это ментор или курсы.

    Если Вы говорите себе что у вас нет денег то блин ребята это песня - займите, заработайте,
    украдите - это вообще не проблема, когда вы устроитесь разработчиком Вам будут платить деньги и не маленьикие, все это окупится с полна. Если через пол года самообучения Вы выгялдите на собеседовании как полный идиот, то нужно срочно что то менять!

    Ну если, вы и дальше ищите статьи и варианты выучить джаву за 21 день то просто перестаньте тратить свое время, это не ваше, увы и АХ!

    Как это было - много писать не буду (а получилось в итоге много И ДАЖЕ ОЧЕНЬ), могу посоветовать статьи Стаса Лазенко на dou.com, там расписан путь (на ближайший 1 - 1.5 года), не нужно учить все что там есть от корки до корки, но в конце у вас должно быть свое приложение в моем случае это https://bitbucket.org/Mikeismynick/phonebook, там написаны инструменты которыми я пользовался, все что там перечислено это технологии которые активно используются в современной веб разработке, если и не придется работать с ними в итоге то знать о них и пощупать надо, и да там не весь список технолгий которые нужно изучать, вот то что я указывал в резюме,

    Классические алгоритмы и структуры данных Java SE 7 ООП IO Collections Multithreading Concurrency Utilities JDBC JPA Hibernate(ниже написал что именно) Servlet JSP Spring Framework (IoC Container, JDBC, ORM, MVC) JavaScript jQuery Ajax JSON Twitter Bootstrap XML (DOM, SAX, StAX) JUnit Mockito IntelliJIDEA Git/Bitbucket Maven Tomcat MySQL

    по хибернейту - нужно уметь поставить на проект, знать где конф файлы и как их настраивать, список аннотаций которые должны быть в проекте изложен в первый 7 - 8 главах референса, на проекте должны быть таблицы находящиеся в отношениях manyToOne oneToOne, manyToMany соответственно хибер должен все это покрывать, неплохо поработать через jdbc для начала чтобы понять а зачем вообще нужен хибер.

    Приложение писалось 2 месяца (и не чисто писалось а с пробой технологий и перепиской на более современные с целью глубже понять как это современное работает под копотом и зачем оно в общем то нужно если и без него тоже можно написать рабочий вариант). Сразу скажу если хотите доучиться используйте весь доступный вам ресурс, не пускайте все на самотек со словами вот ща немного посижу и потом немного, вы просто потратите время, наймите ментора или идите на курсы в группу, самостоятельно учится конечно можно, но почти наверняка вы перегорите т.к. темп будет черепаший и вам будет казатся что вы этим плотно занимаетесь, а смысл в том что плотно это когда тебе снится java )) ( но вы в общем то и будете 90% времени учится самостоятельно даже на курсах и у ментора, т.к. программирование иначе никак не выучить).

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

    Я лично учился в группе getJavaJob (собственно мне это здесь и посоветовали, поклон ребят !!), чистыми учился около 6-7 месяцев, работал очень плотно, 3-4 часа в день минимум, конечно не всегда так получалось но и в выхи и в праздники я тоже учился так что назвал средние цифры. ну и у всех голова и бэкграйнд разный, считаю что быстро схватывал, но отсутствие бэкграунда и посредственный англ очень тормозили меня. На курсы пришел прочитав 150 стр. из "полного руководства" Шилдта.

    Что до конкретных курсов то очень рекомендую попробовать, курс поделен на 2 части, первая длится 2 месяца и там учат java se (алгоритмы, структуры данных) паралельно прививают правильный стиль программирования и учат работать с инструментами разработки (idea, git, debugger). Ну и организатор курсов суров, если начинаешь тупить и отставать то он быстро тебя подрежет и ты престыженный будешь дальше пилить, пилить ))

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

    Кстати в slack сидит русскоязычное комьюнити канал называется 3monthjunior, заточенное как понятно из названия на подъем до джуна и трудоустройство ))) чуть не забыл, мега важно иметь людей которые буду подсказывать и толкать вперед
    Ответ написан
    3 комментария
  • Почему интернет-магазины не используют спрайты для товаров?

    @metaf
    Спрайты - это background. Background - это оформление, а не контент. Ваши товары - это контент.
    Как потом в поиске ваши товары отображаться будут, или гугл должен будет их нарезать?
    Хотите ускорить работу - грузите картинки на cdn, а не занимайтесь извращениями.
    Ответ написан
    Комментировать
  • Как запустить php скрипт по расписанию с помощью cron?

    Sanasol
    @Sanasol Куратор тега PHP
    нельзя просто так взять и загуглить ошибку
    Ответ написан
    Комментировать
  • Как правильно реализовать паттерн Репозиторий в Laravel?

    dmitriylanets
    @dmitriylanets
    веб-разработчик
    $Criteria = (new Criteria())
    ->setWhere('name','test')
    ->setOrderBy('name');
    
    $users = $userRepository->findAllByCriteria($Criteria);
    $user = $userRepository->findById(1);
    $user->setName('newname');
    $userRepository->save($user);
    Ответ написан
    Комментировать
  • Какой паяльник купить на алиэкспресс?

    @tw1911
    Паяльная станция с феном однозначно рулит. Особенно если планируется паять микросхемы. Паять SMD элементы без подогрева вообще плохая идея. Неравномерная тепловая деформация убивает конденсаторы, транзисторы, МК. Ищи потом баг, если образовалась трещина, которая проявляется только при прогреве.
    Поясню проще, почему Вам нужна именно станция - припаять любую микросхему в любом SMD корпусе вы сможете паяльником, а вот снять ее - уже нет.
    Ответ написан
    Комментировать
  • Грамотная архитектура в Laravel?

    AmdY
    @AmdY
    PHP и прочие вебштучки
    Нелепица, в обоих примерах возвращается AR, смысла в таких репозиториях нет. Этим страдали 100500 лет назад, когда не было 100500 толковых db и придумывалось не под умирающий php, а под системы, где объекты долго хранятся в памяти и лишь иногда персистятся. Думал лет 10 назад все этой фигнёй отстрадали, так нет, вернулась мода на ddd.

    Репозитории должны оставаться простыми, если нужны дополнительные проверки, джойны, условия, сортировки, то создавайте критерии и спецификации https://en.wikipedia.org/wiki/Criteria_Pattern https://en.wikipedia.org/wiki/Specification_pattern
    Ответ написан
    1 комментарий
  • Как динамически поменяеть имя класса?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Если существует ли возможность динамической смены имени класса?

    Нет, даже через runkit.

    Это решение для очень кривой архитектуры

    Это не решение, а усугубление проблемы.

    разработчик не хочет использовать пространства имён ввиду того что проект насчитывает десятки тысяч классов.

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

    В остальном же - ничто не мешает начать перепил на найспейсы и человеческий автолоадинг помодульно. + Нормальные IDE типа PhpStorm с этим довольно быстро справляются.
    Ответ написан
    Комментировать
  • Законно ли копирование дизайна TechMedia (Тостер)?

    Кто-то буквально понял предложение "Создай клон тостера", которое является популярной рекомендацией начинающим :grimacing:
    Ответ написан
    Комментировать
  • Законно ли копирование дизайна TechMedia (Тостер)?

    safenoob
    @safenoob
    1. Там не полная копия, а... скажем так... слизана идея )) Думаю что законно.
    2. Это сделал какой-то школьник для тренировки, знаниями делится, проект для людей, полезный ну и отстаньте от него, наберётся опыта будет делать своё уникальное.
    Ответ написан
    1 комментарий
  • Программа или сайт для построения электросхем?

    Proteus, Electronic Workbench (Multisim сейчас) и другие программы для моделирования схем.
    В протеусе, вроде, можно и МК моделировать.

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

    gbg
    @gbg Куратор тега Электроника
    Любые ответы на любые вопросы
    Когда меня спрашивают какой паяльник выбрать, то уже не думая отвечаю проверенную опытом формулу — чтобы был с регулятором температуры и сменными жалами. В общем, наиболее близкий к паяльной станции.
    До недавних пор этим чудом был шедевральный CT-96 обладавший отличным функционалом за смешные деньги. Но халява продолжалась недолго, СТ-96 быстро начал дорожать с 200р до 600, а вскоре вообще исчез с продаж. Сейчас его найти можно разве что в рознице и то если на складе заваляется. Но не дремлет Китай и товарищи из СТ-brand родили очередное чудо — СТ-2092 я его еще в руках не вертел, но вот товарищ Кулибин им уже обзавелся и скинул мне отчет:

    DIHALT Отчет
    Ответ написан
    Комментировать
  • Действительно ли лучше писать интранет с нуля?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    Интранет - это такая штука, где лучше нанять человека/команду в штат и делать. Есть большие сомнения что получится заказать на стороне.
    Ответ написан
    6 комментариев
  • Вопрос по подключению системы кэширования?

    @mantyr
    Пишу много Golang кода с удовольствием:)
    Почитайте, optimization.guide и вот вам немного теории:

    Кешировать можно:
    • целиком всю страницу (для каждой страницы своя запись в кеше)
    • отдельные части сайта


    Кешировать можно в файлах:
    • генераруя готового html
    • генерируя html+php, так работают smarty и прочие шаблонизаторы собирая множество шаблонов в один
    • в виде бинарного содержимого, сюда и готовый html и готовые значения вычислений и прочее
    • в виде сериализованного массива с чем угодно, от предыдущего пункта отличается только форматом хранения


    Кешировать можно в базе:
    • в mysql/postgresql и прочих SQL - будет храниться на диске и горячие данные в памяти
    • в mysql/postgresql и прочих SQL в in-memory таблицах - будет храниться в оперативке, но без дополнительных усилий кеш пропадёт при рестарте сервера
    • в in-memory базах данных, часто это memcache, redis и прочее - опять таки выключили сервер - данные пропали
    • в in-memory базах данных с сохранением на диск, это Tarantool, memcachedb и прочие если там заявлена такая функциональность


    Так же можно:
    • кешировать всё кроме вставок динамики
    • кешировать куски вставляя их в динамику

    Это два противоположных подхода которые при особом желании можно смешивать в рамках одного проекта.

    Обновлять кеш можно:
    • при каждом запросе проверяя что старый кеш устарел
    • предкеширование - отдельным кроном/демоном/сервисом генерировать кеш раз в N минут
    • по мере изменения данных сбрасывать кеш и следующий запрос сгенерирует новый
    • по мере изменения данных сбрасывать кеш путём генерации сразу нового и замены старого на новый


    Кеш можно хранить:
    • на том же сервере что и сайт - нет задержек в сети, но зато ресурсы теже, CPU, диск, оперативная память
    • на внешнем сервере - задержки в сети, зато ресурсы отдельно


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

    Если используете CMS/CMF - посмотрите готовые плагины для кеширования. Если у вас не sharing-хостинг с мини-сайтом - озаботтесь профилированием (xhproof) и мониторингом, это поможет понять где и что кешировать.

    Так же стоит рассмотреть кэширование байт-кода:
    • OpCache
    • APC
    • XCache

    Стоит прочитать вот эту статью:
    Сравнение скорости исполнения кода Drupal для PHP 5.3-5.6 и 7.0. «Битва оптимизаторов кода» apc vs xcache vs opcache https://habrahabr.ru/post/264775/

    Так же стоит:
    • увеличить буферы в MySQL (если памяти много)
    • потюнить другие системы, например поставить nginx вместо apache, раздавать статику с другого хоста
    • и конечно же - посмотреть как долго работают SQL запросы и по возможности их облегчить


    Кеширование в MySQL с использованием HandlerSocket:
    • данные хранятся в MySQL innodb базе, а значит чтение и запись можно делать как по старинке через SQL так и через HandlerSocket
    • можно сделать любое количество колонок, лишь бы это позволял MySQL
    • быстрая вставка
    • быстрая выборка
    • бинарный протокол передачи данных
    • есть несколько библиотек для PHP, как относительно новых так и старых
    • в Percona Server (форк MySQL) HandlerSocket.so есть в поставке по умолчанию, разве что нужно включить
    • в MySQL необходимо собрать HandlerSocket самостоятельно и включить в MySQL


    Можно почитать вот тут:
    Ответ написан
    3 комментария
  • С чего начать в программировании микроконтроллеров?

    kashamalasha
    @kashamalasha
    Нужен будет следующий набор, чтобы было интересно что-то делать:
    • *duino плата (желательно Uno или Mega) - 1шт.
    • Макетная безпаечная плата (solderless breadboard) - 2шт.
    • Резисторы - по 10 шт каждого номинала от 1Ом до 22МОм по ряду Е12
    • Набор светодиодов 3мм. на 20мА - штук 5 лучше разных цветов
    • Тактовые кнопки - штуки 4-6
    • Потенциометры разных номиналов - пара штук
    • Фоторезисторы - пара штук
    • Полупроводниковые диоды - штук 10
    • Биполярные транзисторы npn 222 (для ключей) - штук 10
    • Полевые логические транзисторы для моторов и LED-лент - штуки 2
    • Блоки реле для коммутации 220В - несколько штук опционально
    • Набор конденсаторов электролитических - штук 10 разных номиналов на 12-35В
    • Регуляторы напряжения 7805 или 317 - опционально
    • Батарейка типа Крона - опционально


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

    Плюс скорее всего понадобится минимальный инструмент:
    • Паяльник 30Вт
    • Мультиметр любой
    • Пинцет
    • Узкогубцы
    • Куча обувных коробок, чтобы все это хранить


    Можно все купить одним набором, например так: amperka.ru/product/matryoshka-z выложив 4 стоимости от составляющих комплекта, либо все по кускам покупать на eBay.

    Ардуино хороша как старт. Можно абстрагироваться от Фреймворка Ардуино и программировать МК на C, штудируя datasheet. Но начинать бы я с этого не стал, т.к. есть шанс погрязнуть в настройке регистров, разочароваться и бросить.
    Ответ написан
    2 комментария
  • Как защитить запрос от изменения параметров?

    metallix
    @metallix
    Backend - developer
    Вот очень захотелось процитировать один из ответов автора в другом вопросе -
    Мда... Приложение сделать решили, а такую элементарщину не можете))) Ахаха))) Поэтому в сети миллионы говносайтов и подобных предложений и таких же тупых ответов от мастеров в кавычках)))
    Ответ написан
    3 комментария
  • Правильно ли заносить данные прямо из миграций?

    JhaoDa
    @JhaoDa
    LaravelRUS Team
    Здесь нет однозначного ответа. Но в целом можно следовать такой логике:
    — если это тестовые данные, то делайте это в сидах;
    — если это реальные данные для работы приложения, то либо в миграциях, либо напишите консольную команду, которая эти данные внесёт. Похоже на сиды, но уже в рамках приложения, с проверками разных условий (текущего окружения, например).

    У меня два последних проекта это перенос приложений с вордпресса на ларавел и я создавал консольные команды и механизмы импорта из csv/xml, а небольшие объемы типа ролей заливал в миграциях.
    Ответ написан
    Комментировать
  • Что написать на C++ для тренировки?

    @kstyle
    Ответ написан
    Комментировать
  • Что написать на C++ для тренировки?

    @JavaBoy
    Студент
    Вот тут отличный список задач на совершенно разные области для закрепления и оттачивания навыков
    Ответ написан
    Комментировать
  • Почему люди не нажимают на рекламу?

    @balamyt92
    ; select * from users; --
    Потому что с точки зрения нормального человека который интересуется Java твой сайт выглядит так:

    6c96182a897c4da99507c74d8ded4793.jpg
    Ответ написан
    2 комментария
  • Могут ли за такое заблокировать аккаунт?

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