• Верно ли я сделал RoadMap для full-stack разработчика с нуля?

    Dreamka
    @Dreamka
    Web-разработчик.
    Ох уж эти входильщики в IT.
    Все эти карты ни к чему. Есть более простая схема.
    1) Что ты хочешь делать? (Сайты[дизаны, верстки, програминг, api], Приложения, Администрирование и тд)
    2) Узнаешь как это делается и какими инструментами.
    3) Изучаешь наиболее востребованные инструменты и технологии. И попутно начинаешь брать реальные заказы по тем технологиям, которые учишь. В процессе выполнения заказов ты сразу будешь видеть чего не хватает тебе для реализации бизнес задач.

    Процесс ради процесса это конечно хорошо, если есть куча ненужного свободного времени, но все упирается в то для чего тебе это все? Какие задачи ты собираешься решать и собираешься ли решать задачи вообще?

    А когда будут реальные задачи - под них обязательно найдется инструмент.
    Ответ написан
    Комментировать
  • Где есть годные БЕСПЛАТНЫЕ уроки для vue.js?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Ответ написан
    Комментировать
  • С чего начать изучение C Sharp чайнику?

    mindtester
    @mindtester Куратор тега C#
    http://iczin.su/hexagram_48
    Комментировать
  • Что делают программисты на Unity целый день на работе?

    Tiendil
    @Tiendil
    Разработчик ПО.
    Обычно игровая логика (это к примеру):
    - управляемый персонаж
    - способность персонажем взаимодействовать с миром (предметами)
    - какие-то подвижные элементы в игре
    - АИ врагов и НПС
    - кнопки интерфейса, инвентарь.
    И всё... Так если ты умеешь уже это делать и ты "типо программист на Юнити", то ты напишешь всё это гораздо раньше, чем начнется твоя первая зарплата. А чё потом делать?

    Большинство программистов один элемент из этого списка качественно за месяц сделать не в состоянии.

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

    P.S. для примера. Моей первой работой была вот эта игра: https://en.wikipedia.org/wiki/Order_of_War

    Первые задачи на ней были примерно такие:

    - реалистичный поворот башни танка, синхронизированный с логикой ~ 3 недели, дошло до того, что рисовал графики в excel, чтобы обосновать, почему именно такая визуализация правильная и почему нельзя сделать лучше.
    - интерфейс управления отрядами (чтобы формацию сохраняли, не перестраивались лишний раз, etc) ~ месяц.
    - оптимизация цикла обновления графики с двухпроходного на однопроходный ~ два дня :-D
    Ответ написан
    2 комментария
  • Как убрать отступы?

    Wolfnsex
    @Wolfnsex Куратор тега CSS
    Если не хочешь быть первым - не вставай в очередь!
    Когда я выставляю нулевые значения, то мои строки игнорируются. Не понимаю в чем дело
    Подозреваю, что дело в том, что стиль который пишите Вы находится на странице выше, чем тот стиль, который задаёт отступы.

    Варианта решения:
    1. Подключить Ваш стиль после того стиля, который задаёт отступы
    2. Использовать !important
    3. Написать более длинный/"точный" селектор, например: header .col-md-6 { ... }
    Ответ написан
    Комментировать
  • Как устроиться на первую работу в IT?

    terrier
    @terrier
    Уберите, пожалуйста из резюме "Поддержка мостика судна в состоянии ..." и т.д. и добавьте туда портфолио в виде непосредственно ссылок на сайты, которые можно посмотреть.
    Я вот мельком посмотрел ваш гитхаб ( а что там, кстати, должно впечатлить работодателя? ), а люди из компаний при первичном скрининге этого делать не будут.
    Если есть возможность вписать в резюме строчку типа "авг 2016 - фев 2017. Делал сайт для фирмы "Вектор лтд", вот ссылка", то надо добавить ( и не особо важно, что "Вектор лтд." никогда особо не существовал или это фирма вашего друга, который вам за это не платил).
    Мелкие фирмы, к сожалению, может пугать ваше гражданство, они не понимают, что с этим делать и есть ли тонкости работы с инстранцами, но тут вы ничего не сделаете - скрывать это из резюме и предъявлять сюрпризом на собеседовании довольно рискованно.
    Вот такие практические советы. Желаю вам удачи в карьере -
    это не пост о несправедливости, что работодатели такие плохие, а я вот такой вот хороший тут, нет. Мне нужно эффективное решение в этой проблеме, и все.

    подход очень правильный
    Ответ написан
    1 комментарий
  • Backend-язык для фриланса?

    @semt1
    Тот что ты лучше знаешь.
    Желательно из мейнстримовых.

    Во многом случае заказчику наплевать на чем ты делаешь.
    У меня за последние 10 лет был только 1 отказ, потому что наши с заказчиком видения на инструменты разработки не совпали.

    Разумеется, нужно не забывать о том как это будет развернуто.
    Скажем выбрать .NET для веб-сайта, который как правило будет хоститься под *nix - решение не гуд.
    Ну или заводить Java-машину под небольшой сайт тоже не круто.

    Как правило львинная доля заказов - это PHP.
    Лабать ли на нем?
    Заказов много, но и конкуренции среди исполнителей - много.
    В PHP довольно низкий средний уровень оплаты из-за этого.

    Полноценные бэкенды (это такие где заказчик согласен, что нужно будет администрировать каким то не примитивным способом, не просто залить на shared-хостинг) это:

    Go, Ruby, Python, PHP - основные для бэкенда сейчас.
    реже C#, Java/Scala. Реже но все же встречаются не исчезающе мало.
    Erlang - встречается.
    в принципе можно любую технологию, которая позволяет генерировать бинарники использовать.
    Ответ написан
    Комментировать
  • Как переходить между окнами android-приложения по меню?

    @IceJOKER
    Web/Android developer
    BaseActivity -> выполняет общие функции(в вашем случае отображает и обрабатывает меню)

    FirstActivity extends BaseActivity
    SecondActivity extends BaseActivity

    и т.д.
    Ответ написан
    Комментировать
  • Насколько легко трудоустроиться программисту в 40+, 50+ итд лет?

    @Matar
    что то какой то бред написали )
    я пошел в программисты в 37 (!) лет. Причем, сознательно шел на слом своего мозга, ибо до этого 15 лет работал гуманитарием в сфере рекламы и маркетинга.
    И когда я пошел устраиваться на работу, на меня все смотрели не как на прыщавого джуна, а с уважением.
    Возрастных ограничений не увидел вообще, когда менял вторую работу программиста, то оценивался именно опыт как программирования, так и опыт тупо возрастного опыта.
    сейчас я заведую it отделом. справа от меня сидит программист 25 лет, слева 27 лет.
    Причем оба сильнее меня, как спецы. А начальник я. А почему? Потому что опыт )
    вот таки дела, малята )
    Ответ написан
    2 комментария
  • Насколько легко трудоустроиться программисту в 40+, 50+ итд лет?

    Arris
    @Arris
    Сапиенсы учатся, играя.
    Трудно - и с каждым годом будет все сложнее и хуже. С каждым годом растет объем пула "минимально-необходимых для программиста компетенций" . Каждый год появляются какие-то новые фреймворки, инструменты, фишки - которые по идее должны облегчать и упрощать разработку - но на деле вырастают непреодолимой стеной между тобой и "реальным миром веб-разработки". Потому что ты стареешь, а технологии молодеют.

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

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

    Уже сейчас чтобы тебя считали верстальщиком/программистом/фронтэндером/бэкэндером - надо знать в 2 раза больше технологий, чем 2 года назад. Этакий Закон Мура наоборот. Да вы сами просто посмотрите эти списки "компетенций"!

    Читаешь список требований к "Web-программистам" и видишь, что месяц за месяцем, год за годом HR-ы и те, кто там им задачи ставит, вписывают в требования все больше умных словечек, которые они сами услышали и не понимают, зачем оно им нужно и нужно ли? Все ближе и ближе ситуация подходит к "Если бы водителей принимали на работу как програм.... В 2010 году это была "шутка юмора". Сейчас это уже почти реальность.

    Пример хотите?

    Одна государственная организация выставила список требований к "веб-программисту". При зарплате в 35000 рублей он должен уметь чуть ли не МКС программировать и чуть ли не кластера из сотен серверов настраивать. А на деле основной задачей человека будет - таскать проекторы из аудитории в аудиторию, чистить мышки студентам, переставлять winxp и изредка, раз в полгода - добавлять статью на сайт гос.организации. Откуда информация? Связался с человеком, которому 45, который в этой организации работает уже 18 лет. Ему стаж капает, а деньги он зарабатывает совсем в другом месте.


    Что уж говорить об организациях коммерческих? Особенно тех, для которых веб-программист - и чтец, и жнец, и на дуде игрец?

    Но это все лирика и крик души. Извините.

    И да, к 35-40-45 годам по мнению "молодых и амбициозных IT-специалистов" ты должен обладать строго определенным списком компетенций как в профессии, так и по жизни (к примеру, я столнулся с отказом в приеме на позицию программиста потому что у меня нет... автомобиля. Зачем программисту автомобиль? Ну там сложная и длинная логическая цепочка, сводящася к "раз у тебя нет автомобиля - ты лох, а лохи нам не нужны").
    Мне кажется, проблема в том числе и в том, что подавляющее большинство этих самых "молодых и амбициозных" специалистов совершенно не думают о своем будущем. Нет, я не про то будущее, которое "куда я пойду, когда закончу вот этот крутой проект". Я о реальности. В их понимании 35 лет - это недостижимо далёкое будущее, а до 50 они не доживут (а если и доживут - то в мечтах тимлидами в гугле).

    Соответственно "молодые и амбициозные специалисты" с презрением смотрят на людей, которые отдали 15 лет разработке определенной платформы, платформы, которую сейчас тщится заменить какой-то пул новых технологий. По их мнению - все что старше 5 лет - ненужное устаревшее говно мамонта. А те, кто не знают появившуюся полгода назад технологию - отставшие от жизни ламеры.
    Also, Эффект Даннинга—Крюгера тут работает в полную силу.

    Резюмирую: трудно, если у тебя нет в резюме стапятисот сделанных проектов. И чем дальше - тем сложнее и труднее будет. Но тебе может повезти - если ты компетентный специалист в узкой области (даже если она 'legacy'). Или ты можешь найти синекуру - гос.организацию, в которой ты присоединишься к когорте таких же скинутых с паровоза прогресса "молодыми и амбициозными". Не переживай, через 20 лет скинут их. А ты останешься.

    Вот только кушать хочется сейчас. Хотя бы просто хлебушка.
    Ответ написан
    23 комментария
  • Как авторизоваться на videoigr.net с помощью PHP/cURL?

    glebovgin
    @glebovgin
    Full Stack Web Developer
    1. Получаете curl'ом страницу http://videoigr.net/login.php
    2. Находите form, у которой name="login" и забираете оттуда значение action, например
    http://videoigr.net/login.php?action=process&osCsid=e1caaae9002758dc6bcbdc7179c14d82
    - osCsid скорее всего играет роль (а, может, и нет. надо экспериментировать)
    3. На полученный из action адрес отправляете post-запрос с полями email_address и password
    Всё.

    Важные моменты:
    • Используя CURLOPT_FOLLOWLOCATION равным 1, после авторизации вас сразу редиректнет скорее всего в личный кабинет. Если нет - сделаете новый запрос по нужному адресу.
    • curl сохранит куки сам
    curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt'); // сохранять куки в файл
    curl_setopt($ch, CURLOPT_COOKIEFILE,  'cookie.txt'); // считываем куки
    Ответ написан
    2 комментария
  • Есть ли книга по Python НЕ для новичков?

    OlegWock
    @OlegWock
    Python, Java+Android, Frontend
    Многим Dive into Python нравится. Я лично не читал, так, просмотрел. На первый взгляд годная и уже для более продвинутых юзеров
    Ответ написан
    5 комментариев
  • Почему не работает php в html?

    Закройте туториал из которого Вы берёте код и никогда не открывайте. И пожалуйта, не пытайтесь больше вставить PHP в HTML.
    Ответ написан
    2 комментария
  • Как лечится кризис начинающего программиста?

    kumaxim
    @kumaxim
    Web-программист
    Господин начинающий, у Вас извращенный подход к программированию в целом.
    Программа - это способ более эффективно решить какую-то задачу... способ достижения какой-то заданной цели с меньшим количеством ресурсов.

    Возьмем, как пример, тот же бух.учет на предприятии. Как Вы думаете, почему 1С Бухгалтерия так широко распространилась в РФ и СНГ? Эта программа позволяет бухгалтеру в 2-3 клика мышки сформировать отчет для регулятора(ФНС, ПФР и т.д.), вместо того чтобы человеку сидеть руками искать платежные поручения, вычислять налоги и т.п. Софт просто подтягивает выписку из банка, анализирует ее и выдает готовую для печати бумажку, что экономит бухгалтеру сильно много времени. Расчет заплатанный налогов и отчеты в соц.фонды это вообще красота - 8 кликов мышкой и все готово :-)

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

    И вот, далее Вы для себя определитесь, какая Ваша основная цель? Какой Ваш основной посыл обществу?

    Личной мой посыл - "Я помогаю людям экономить: время, деньги, нервы и т.д.".

    Как я это делаю?
    У меня сначала был маленький интернет-магазин по продаже катализаторов для бензина(в поиск "кондиционеры метала для а/м"). При соблюдении определенных условий, расход топлива на малометражках снижался от 20% до 45%
    Вторым моим проектам было небольшое мобильное приложение для отслеживания хода исполнительного производства в ФССП(для взыскательней, уже сдохло). Мне и моим знакомым(не юристы) это экономило достаточно много времени на ругань с приставами, чего они должны делать и т.д. Кто сталкивался с этой службой должен знать эффективность и оперативность их работы, особенно в регионах...
    Сейчас я пишу небольшой конструктор сайтов, который поможет одной дружественной мне веб-студии сильно оптимизировать процесс создания низкобюджетных сайтов визиток

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

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

    Если говорить о чисто практических инструментах(функции стандартной библиотеки, фреймворки и т.д.)... Лично я могу считать себя профессионалом в какой бы то ни было технологии, ни когда я прочитал 1-2 книги и/или написал 1,5 задачи оттуда же. С таким уровнем я не могу сказать что я знаю язык/технологию в принципе, просто знаком - да, но я ее не знаю. Считать себя профессионалом я могу после того как решу не менее сотни задач, используя эту технологию и написал не менее 1 млн строк кода, именно написал, а не сгенерировал rake/gii/artisan или чем-то там еще.

    Вам же я желаю не останавливаться, развивайтесь. Мастерство приходит с опытом.

    P.S.: от холиваров на тему 1С прошу всех воздержаться
    Ответ написан
    11 комментариев
  • Есть ли фриланс ближе к 30?

    viktorvsk
    @viktorvsk
    Не учите технологии. Учитесь решать задачи. Особенно с исходными данными и запасом прочности.
    Мне кажется, есть 2 пути успеха в айти сегодня:
    1. Рвение к чему-то конкретному (например, нейронным сетям, компьютерному зрению, машинному обучению, электронной коммерции, визуализации ... ) - тут, судя по последнему абзацу, мимо кассы
    2. Не знание технологий или даже стеков, а умение решать практические задачи. Вот тут очень похоже, что оно.

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

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

    На выходе, даже если не сделаете новый супер-хит, то:
    1. Познакомитесь со всеми технологиями и приемами (где-то больше, где-то меньше)
    2. Будет опыт в реальном технологическом процессе

    P.S. Если все же интересует именно только екоммерс и интернет-магазины (не самая привлекательная часть айти, на самом деле), то не рвитесь сразу верстать шаблоны под битрикс. Найдите важные задачи для бизнеса, которые не решаются стандартными методами (их уймы) и попробуйте решить одну из них.
    Ответ написан
    4 комментария
  • Sublime Text 2 не "билдит" питоновские проекты, как починить?

    angru
    @angru
    В файле exec.py надо заменить следующую строку:
    proc_env[k] = os.path.expandvars(v).encode(sys.getfilesystemencoding())

    на:
    os.path.expandvars(v.decode(sys.getfilesystemencoding())).encode(sys.getfilesystemencoding())


    Сам файл лежит где-то в:
    C:/Users/%username%/AppData/Roaming/Sublime Text 2/Packages/Default/
    Ответ написан
    1 комментарий
  • Post и Get запросы, какая между ними разница и что лучше и для каких целей?

    socengel
    @socengel
    7 лет native php в продакшене, онлайн 20000+,
    Общего между ними то что они работают одинаково. Разницы между ними технически никакой. А вот идеологические различия есть.

    Я расскажу о них в контексте PHP. Прошу заметить что протокол HTTP к PHP имеет косвенное отношение потому что он создавался для обмена html страницами а PHP просто расширяет возможности и того и другого.

    GET запрос используется чтобы получить данные а POST чтобы отправить. (Напоминаю что технически они работают одинаково).

    Поэтому в контексте PHP опираясь на эту идеологию сделали следующим образом:
    1. При каждом запуске PHP по умолчанию создаются суперглобальные массивы ($_GET, $_POST).
    2. Если в строке запроса есть вопросительный знак(?). То все что после него считается параметрами GET запроса они представлены в формате 'ключ'='значение' и в качестве разделителя используется знак амперсанда (&)
    Пример:
    GET /index.php?name=Андрей&surname=Галкин
    это строка запроса, тут 2 параметра. эти параметры попадут в массив $_GET.
    3. $_POST заполняется другим способом. содержимое этого массива заполняется из "заголовков запроса". То есть из места, скрытого от глаз в явном виде. Всю рутину по созданию таких заголовков берет на себя браузер. Хотя иногда и что-то редактируется в заголовках в ручную.

    Чаще всего пост запрос используется в формах (для отправки данных).

    Например у нас есть форма для входа 2 поля логин и пароль.

    Представим что мы используем GET метод. Тогда при отправке формы мы перейдем на следующий адрес /login.php?login=Андрей&password=123 согласитесь что так передавать такую информацию совсем не безопасно. Любой может открыть ваш браузер и начиная вводить адрес сайта он из истории может увидеть ваши пароли и логины.

    А вот если бы мы указали методом POST то мы бы получили следующий запрос:
    POST /login.php (login=Андрей&password=123) то что в скобочках было бы скрыто и никак не сохранено в браузере.

    Теперь другая ситуация например форма поиска. Мы вводим текст и получаем страницу с результатами. Вот тут уместнее GET форма. потому что нам было бы удобно сразу иметь ссылку на результат поиска, то есть добавить в строку запроса можно выразится "Публичные параметры", которыми можно поделиться. И как результат в строке браузера будет конкретная ссылка на текущую страницу. Мы можем ее скопировать, и разместить где-нибудь, или например скинуть другу. И получить при переходе одну и ту же страницу. А не просить других людей зайти на сайт и в поиск вбить определенную фразу чтобы получить необходимую страницу.

    В общем подводя итог:
    GET - это чтобы получить определенную страницу в определенном виде ( сортировка, текущая страница в блоге, строка поиска и т.п. ).
    POST - для оправки данных которые не влияют на отображение страницы, в том плане что эти данные влияют только на результат выполнения скрипта ( логины, пароли, номера кредиток, сообщения и т.п. ).

    И еще одна хорошая новость их можно комбинировать, например
    POST /index.php?page=login (login=Андрей&password=123) Думаю я уже достаточно объяснил что из этого получится и какие параметры в какой массив попадут.
    Ответ написан
    2 комментария
  • Есть ли в Москве "кружок" робототехники для уже не детей?

    TomasHuk
    @TomasHuk
    Можете попробовать хакспейс Neuron, современный взрослый кружок. Вот нашел статью про обучение начина....
    Ответ написан
    Комментировать