Задать вопрос
Ответы пользователя по тегу IT-образование
  • Существуют ли эталонно красиво написанные программы?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Просто код-конвенции изучите + литература по эффективному коду. Архитектура это дело отдельного проекта
    Ответ написан
    Комментировать
  • Можно ли с нуля обучится программированию, используя только интернет и не тратив деньги?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Вообще да, потому что самообучение это основа всего. Курсы и другие инфоцыгане должны давать вам ответы на вопросы. Вопросы должны возникать в ходе обучения. Если вы не обучаетесь, то никаких вопросов у вас быть не может. Курсы это на тот случай, когда вы не смогли полноценно обучиться некоторым деталям либо вам нужны комплексные знания либо их закрепление.

    Но курсы никогда не дадут вам того результата, который они обещают. Хотят тут могу немного солгать, потому что есть курсы, которые обещают трудоустройство, и это важно! Есть разница между курсами, которые обещают что: "После наших курсов вы сможете смело написать в своём резюме, что вы претендент за з\п 100500 долларов в час!". Хоть сейчас пишите, толку не будет, только деньги выкинете впустую.

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

    Но получить полноценные опыт, который вы сможете применять и сказать, что вы там очень круто - это невозможно. Почему? Тут даже курсы не помогут. Вам нужен наставник, либо какой-то друг/коллега/знакомый, который сможет дать вам задачу и показать направление движения, куда вам нужно двигаться и что учиться, правильный ли вы сделали задачу или нет, над чем стоит поработать. Это всё берётся не с потолка и не приходит само собою, это обобщённые практики на базе опыта, которые вы не сможете получить просто так. Да, и курсы вам тут не помогут. Они дадут вам общие знания для начала вашего пути, но никак не то что нужно для работы.

    UPD: И как говорилось в других ответах, всё зависит от вас. Программирование это та сфера где вам нужно учиться самому всегда и всего. Если вы этого не умеете и сможете так делать, значит это не для вас. Курсы это всего лишь приманка на деньги для тех, кому программирование не под силу, только поймут они это после того, как потратят целое состояние на обучение на курсах.
    Ответ написан
    1 комментарий
  • Как найти работу после курсов по фронтенду?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Как я уже писал в ответе на этот вопрос, с работой в IT сейчас ооочень туго. Перечислю первичные проблемы, которые к этому привели:
    • Быстрый рост количество программистов (И других профессий в IT)
    • Большое количество начинающих ITшников
    • Почти еженедельные прогрессы в технологиях
    • Нереально быстро развивающиеся нейросети
    • Мировой кризис вызванный войной


    Обо всём по порядку

    дело во мне лично, или в моем уровне.

    Просто ДА. Тут играет роль несколько факторов. У вас начинающий стек, который программист с кое-каким опытом осваивает за неделю. Стоит ли это того, что бы нанять программиста-новичка (Верстальщика-новчика) за тех самых 300 долларов (Хотя бы), или просто доплатить их человеку, который уже работает на фирме/компании? Тут ответ очевиден.

    Из этого вытекает два момента. Первое - нереальный рост программистов в сфере IT. Все, кто не связан с IT думаю, что это легко. Если у вас не получилось в другой области, у вас есть два варианта: Идти в IT или открыть свой бизнес. Это логика 90% людей стран СНГ. Если взять для примера студента, который реально знает и хочет чего-то достичь и старается, просто по резюме его выбрать среди 500 откликнувшихся нереально.

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

    Ещё несколько моментов, почему нет фитбека? Тут опять же есть несколько вариантов. По первых, до этого все (Более 90%) заказы были фактически на фриланс/аутсорсинг, то т.к. сейчас много западных компаний отказывается от работы с программистами со стран СНГ (На это есть ряд причин), идёт ожесточенная борьба за заказы между компаниями. Т.к. нет инвестиций из-за границы (Желательно в валюте) зарплаты начинают падать, хотя и не во всех. Те что остались, их достаточно мало по сравнению с тем уровнем, что был ранее.

    Почему большие компании не желают нанимать программистов-новичков? Во-первых, сейчас очень стремительно развиваются нейросети и владельцам компании на много проце заплатить, условно, 100 долларов за нейронку и дасть её в руки опытному программисту, чем ради этого нанимать 10 разработчиков. То, что вы сейчас научились верстать, нейросети делают в 10 раз лучше и в 1 000 000 раз быстрее, на самых новых front-end фреймворках.

    Т.к. рабочих мест нету, .вы просто никому не нужны, потому что html/css/js это стек, которым владеет 90% программистов в IT. Ваша задача составить конкуренцию, а не выучить что-то что относится к IT. Посмотрите вакансии, посмотрите сколько желающих на это рабочее место. Вы сможете сказать, что вы лучше 95% из них? А нужно, что бы так и было.

    В дополнение к этому, повторюсь, рекомендую прочитать этот ответ
    Ответ написан
  • Как понять что я выучил основы C#?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Вообще вы можете язык очень много лет учить. Что вы знаете о языке C#? Можете написать несколько классов, прокинуть соединение к БД, написать несколько linq запросов? А что на счёт делегатов, событий? Рефлексия учится долго. Потоки, и тут имеется ввиду не просто банальный async/await, а прям взаимодействие с памятью и системными потоками. Знаете? Нет? Учить будете? Само собой, что будете, а стоит ли оно того?

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

    А знаете где она используется? Для примера это Dependency Injection контейнер в asp.net.

    А где используются событие? Для примера это handler'ы в таких фреймворках как Windows Forms и WPF.

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

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Сейчас меня будут бить

    Лично я бы посоветовал бы вас начать с C++. Сразу кажу, не из-за того что... Да чёрт его знает. В двух словах. Питон отличается от других языков программирования (Императивно - Декларативных), так что не очень хороший старт. Почему? Потому что у вас будет направление только Питон и, масимум Реакт. Я НЕ ГОВОРЮ ЧТО ЭТО ПЛОХОЙ СТЕК.

    Для примера, почему я предлагаю начать с C++. Вы детально разберёте работу с памятью, типами данных, структурами и алгоритмами. Отсюда у вас буде уже очень мощная база для выхода куда угодно, та хоть в микроконтроллеры. Вообще отсюда можно идти уже во многих направлениях, C#, php, Java и т.д.

    Но опять же, это моё субъективное мнение, что я считаю C++ лучше чем Python

    UPD: да и C++ могли лучше прокачивает чем Python. На Python обычно очень много школьников начинают, на C++ работают инженеры)) Илон Маск начинал с программирования на C++ )))
    Ответ написан
    21 комментарий
  • Как лучше начать изучение c#?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Хотелось бы стать специалистом по backend, а не fullstack.

    Так не получится, либо очень мало вероятно.

    большинство вакансий по c# это идет fullstack разработка и активная работа с фронтом

    Если брать back-end, тогда да. Если брать desktop, то там ситуация другая.

    Если хотите работать на веб, тогда вот вам с чего начать (Чисто ключевые моменты для изучения asp.net core MVC):

    Client:
    1. Html/css
    1.1 margin, padding
    1.2 !important
    1.3 class
    1.4 :hover, :active, :focus-visible
    1.5 media requests

    2. Bootstrap 5
    2.1 form-control
    2.2 alert, alert-danger
    2.3 d-none
    2.4 row, col-sm, col-md, col-lg

    3. Java Script
    3.1 let, dynamic object
    3.2 document
    3.3 getElementById
    3.4 getElementBySelector
    3.5 innerHtml
    3.6 undefined
    3.7 addEventListener()
    3.8 JSON
    3.9 JSON.stringify()
    3.10 JSON.parse()

    4 jQuery
    4.1 jQuery selectors
    4.2 .on()
    4.3 .on('click', ... )
    4.4 .change()

    5 ajax
    5.1 ajax HttpGet request
    5.2 ajax HttpPost request
    5.3 ajax send FormData

    Simple C#:
    6 OOP
    6.1 Data types
    6.2 Condition operators (if-else, switch). bool type
    6.3 Loops (while, do-while, for, foreach)
    6.4 array
    6.5 List<>

    Classes in C#
    7.1 Classes
    7.2 Fields
    7.3 Properties
    7.4 Constructors
    7.5 Methods
    7.6 Inheritance
    7.7 Abstract classes
    7.8 Abstract and virtual methods
    7.9 Interfaces
    7.10 Generics
    7.11 Generic Methods
    7.12 Generic Interfaces
    7.13 Principals of OOP

    Server (asp.net):
    8.1 MVC architecture in asp.net
    8.2 Controllers and Actions
    8.3 Routing
    8.4 [HttpGet]. [HttpPost]
    8.5 [IgnoreAntyforgeryToken]
    8.6 IActionResult
    8.7 Razor Pages
    8.8 Build correct model in asp.net mvc
    8.9 View
    8.10 Dependency Injections
    8.11 asp.net mvc configuration
    8.12 AddSingleton, AddScoped, AddTransient

    Entity Framework
    9.1 DbContext
    9.2 DbSet<>
    9.3 Connection String Parameters
    9.4 IEntityTypeConfigraiton<>
    9.5 EF Core one-to-one configuration
    9.6 EF Core one-to-many configuration
    9.7 EF Core many-to-many configuratio
    9.8 .Include()
    9.9 Migrations, Database.Migrate()
    9.10 asp.net core .AddDbContext()
    9.11 Generic Repository Antipattern
    9.12 How to build custom services and include them to Dependency Injection

    10. Fluent Validation in asp.net mvc

    11. Authentication/Authorization
    11.1 Different between Authentication and Authorization
    11.2 Cookie
    11.3 JWT (JSON web token)
    11.4 Register authentication (app.UseAuthentication, app.UseAuthorization)
    11.5 Claims (Claim, ClaimPlincipal, ClaimIdentity)
    11.6 Authentication By Cookie
    11.7 services.AddAuthentication()
    Ответ написан
    Комментировать
  • Работать в IT или продолжить учебу?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Не буду много писать, скажу так: я IT есть такое понятие, что за две-три недели на работе ты выучишь материала больше, чем сам за пол года.

    Потратить 4 года в универе вы будете знать минимум, что бы пойти почти никем куда-то в контору, за 4 года опыта работы в IT у вас будет стек + опыт работы + з/п $2к+ и вы сможете двигаться куда сами захотите, тогда сможете сами какие-то курсы дорогие проходить, что в 100500 раз эффективнее универа или колледжа.
    Ответ написан
    Комментировать
  • Как получить диплом сред-спец образования программисту без техникума и 4 лет впустую?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Чисто из моего опыта. Как много вакансий вы видели, где требуется диплом? Лично я ДВЕ (Одна - гос., вторая - международная, были связи с универом и требовали закончить 4й курс бакалавра).

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

    Наличие диплом вам может помочь только в работе в гос.учреждениях и если будете работать в других сферах, где ещё существует миф о дипломах
    Ответ написан
  • Как начать писать код?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Это главная проблема всех новичков, вы не один такой!

    1), вам нужно проанализировать, что вы вообще хотите написать и как оно должно выглядеть.
    2) Разработать логику взаимодействий внутри вашей программы
    3) С чего начать? Запустите ваш проект! Что вы там видите? А что хотели бы видеть? Хотели видеть страницу регистрации? Значит с неё начинайте! Хотели видеть главное меню игры? С него и начинайте! Хотели видеть окно выбора персонажа или сцену вступления? С неё и начинайте!
    Главное помните, что такие процессы ИТЕРАНИВНЫЕ. Если вы столкнётесь с трудностями и захотите переписать проект - удаляйте старый и пишите новый! Вы набьёте на этом руку САМИ и будете знать, после старого проекта, что вам нужно сделать в ПЕРВУЮ ОЧЕРЕДЬ, когда вы будете писать его заново
    Ответ написан
  • Каким образом лучше всего изучать программирование?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Microsoft каждый год планируется выпускать новую версию .NET, старые версии поддерживаются +- 3 года.
    Конкретно за книги, они учат логики и философии кодинга, где можно рассказать примеры и объяснить принципы работы "Водой", что является очень важным аспектом, т.к. при собеседовании на фирме вам будут давать [возможно] тесты по языку и фреймворку, а так же тестовое задание, где будет оцениваться как работоспособность проекта, так и правильность написания.
    Если смотреть в сторону профессиональных курсов, то вас будут ругать даже за неправильно названные переменные, это уже если не говорить об самой логике написния задачи.
    Цель подобных книг - закрепить понимание языка, а не зазубрить синтаксис. Тот же metanit показывает сугубо синтаксис и как правильно его юзать, но он вас никогда не будет учить, где его использовать, как и при каких условиях, почему этот метод плох, а где он будет незаменим. Тем более, что изучать что-то по метаните легко в начале, т.к. на сложный задачах вам метанит не поможет никак вообще. В этот момент вы поймёте, что там есть просто примитив, и вам придётся потратить много времени, что бы понять, как воду из метанита превратить в вино, которое нужно залить в проект

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

    Тут очень хороший пример с математикой: что бы быть хорошим математиком, ты должен не знать математику, ты должен её понимать. В программировании аналогично
    Ответ написан
    2 комментария