Задать вопрос
  • Сколько времени в среднем проходит для освоения программирования с нуля и возможностью заработка?

    FirstX
    @FirstX
    .net developer
    На самом деле кол-во таких вопрос действительно зашкаливает, потому что беспокоит многих, но каждый считает, что именно ему ответят каким-то уникальным образом. К сожалению нет, не ответят, универсальных рецептов нет. Я сам одно время, брался за одной, брался за другое, загорался и снова перегорал. Потом приходит понимание, что топчешься на одной месте, даже совершая "гипер прыжки" в кратчайшее время, такие переключения с новым "гипер-прыжком" отбрасывают сильно назад. Это как вектор, который резко меняет направление. Сумма таких векторов может не порадовать точно :)

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

    Какой же выход из этого порочного круга. Наверное составить Roadmap, где придется проверить свою силу воли. Составить карту планов на год. Проанализируйте такие вопросы как:

    1. Что интересно
    2. Что проще всего дается
    3. Что востребовано на местном рынке
    4. Рассматривается ли возможность переезда
    5. Что востребовано на фриланс биржах и каков уровень конкуренции в данном сегменте

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

    Теперь ответ на ваш вопрос: время освоения программирования с нуля и возможность заработка никак между собой напрямую не связаны. То есть ответа конкретного никто не сможет дать.

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

    Бывает человек 10 лет программирует, но качество кода остается на уровне джуниора и решать задачи в написании серьезных приложений на фрилансе он не сможет. Получается в локальном вопросе, для конкретной компании этот человек может продать свою работу и получает за это деньги, в более масштабном плане - ему будем сложно себя продать и соответственно шансы на заработок не так велики. Это же и объясняет тот факт, что не всегда умные люди добиваются успеха в компаниях. Человек может быть не самым полезным, не самым эффективным, но грамотный "само-маркетинг, нетворкинг ака полезные связи" бывает творят чудеса.

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

    FirstX
    @FirstX
    .net developer
    Также следует учесть, что вы - программист, только что ушедший из крошечной фирмы и у вас нету опыта серьезной промышленной разработки.

    Вы единственный программист.


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

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

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

    FirstX
    @FirstX
    .net developer
    В полноценном варианте - это возможно только при джейлбрэйке, тогда вы действительно видите настоящую файловую систему, структуру папок и все компоненты.

    Только фотографии и видео - как уже было сказано, оно и так определяется как внешний накопитель, но без возможности записи и редактирования (только забрать данные).

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

    FirstX
    @FirstX
    .net developer
    Не только под андроид такая ситуация, но и вообще под мобильные платформы. Бум то начался мобильных приложений и все хотят быстрых результатов, поэтому видимо и ищут уже готовых специалистов. Возможно с ростом кадрового дефицита в этой сфере начнут появляться вакансии, но тут еще может начать внутренняя конкуренция с опытными программистами, которые будут переходить с других языков.

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

    А вообще, выбор языка, технологии, это своего рода бизнес, где нужно оценить рынок, оценить перспективы, свои возможности, цели и желания, и вложить достаточное кол-во времени, сил и средств. А потом еще и эффективно себя продать на рынке. И нет никаких гарантий на успех. Поэтому и какого-то готового рецепта быть не может, все сугубо индивидуально, у каждого свои мысли на этот счет, которые меняются вплоть до зависимости от географического месторасположения.
    Ответ написан
    Комментировать
  • Будут ли Rhino, Maya и Autodesk inventor нормально работать на Macbook?

    FirstX
    @FirstX
    .net developer
    Исходить нужно из нескольких факторов. Предположим вы собрались ставить винду, но тут есть 2 варианта:

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

    2. Поставить винду через виртуалку под мак ос. Вот тут я уже бы допустил долю сомнений на счет производительности. Не знаю, как под другими виртуалками, но я пользуюсь последней версией Parallels на макбук 15 ретина, добавил для виртуалки ресурсов по-больше, но тем не менее в работе в той же Visual Studio иногда бывают подтормаживания. Хотя для небольшого рендеринга я думаю и этого варианта должно быть достаточно, но все еще зависит от приобретаемой модели.
    Ответ написан
    Комментировать
  • Не поздно ли начинать программировать?

    FirstX
    @FirstX
    .net developer
    И вот у меня возникли такие вопросы:
    1) Не поздно ли в 25 лет начинать программировать?


    Так спрашиваете, будто вот-вот уже пенсия. Люди и гораздо позже начинают. Разница лишь в том, что если вы хотите на профессиональном уровне этим заняться, то вам придется и изучать более ускоренно. Так сказать "пятилетку за 2 года". Основная фишка - не возраст, а мозги. Что толку от того, что человек со студенчества занимается программированием, но не растет профессионально.

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

    2) Не будет ли человек 26-28 лет отталкивать на собеседовании работодателя предъявив диплом гуманитария, да и вообще не совсем ли дико идти на джуниора в таком возрасте?


    Я думаю, что скорее будет, чем нет. Если бы на собеседованиях всегда проходил через адекватного технического специалиста, который разумно увидит, что у вас больше потенциала для проф роста, чем у многих выпускников - то никакой дикости бы и не было. Но на практике вы будете встречаться с ситуациями, когда девушки эйчары этого не увидят, и будут фильтровать и по такому критерию тоже (" ооо... ему столько лет и нет опыта программистом? - безнадежен!"). С другой стороны, как написано "стучите - и вам отворят".

    3) Нужно ли идти учиться заново? Если да — то заочка с нуля или магистратура с имеющимся дипломом? Учитывается и значимость такого диплома в случае эмиграции в абсолютно любую страну.

    Если вопрос стоит об эмиграции, то диплом нужен, при чем не абы какой. В России ситуация тоже не самая определенная, поэтому если физически у вас останутся еще силы, то наверное лучше поступить на заочку на второе высшее. Только нужно учитывать, что обучение в вузе будет иметь мало точек соприкосновения с реальным промышленным программированием, поэтому придется, помимо предварительно изучения ООП и языка:
    1. Работать джуниором
    2. Изучать активно технологии по которым работаете и
    3. Изучать программу вуза, сдавать сессии) - не каждый может сразу так на старте осилить.
    Ответ написан
    Комментировать
  • Как сделать красивый интерфейс в IOS 7?

    FirstX
    @FirstX
    .net developer
    Для этого нужен дизайнер, который хорошо умеет работать в графических приложениях. Он рисует и иконки, и интерфейс, а разработчик потом нарезает все это на составные части и "раскидывает" изображения по элементам управления, чтобы получить то, что нарисовал дизайнер.
    Как вариант, можно поискать в интернете готовые PSD шаблоны для дизайна, которые можно взять за основу.
    Ответ написан
    Комментировать
  • ООП в Objective-C концепция отправки сообщений вместо вызова метода, почему так?

    FirstX
    @FirstX
    .net developer
    Лично мне кажется, хотя я и сам только начал изучать C-objective, что это всего лишь исторически сложившаяся концепция, которая принципиально на практике ничем не отличается, кроме формы записи.
    В теории да, различия есть, что при вызове метода мы сразу переключаемся на исполнение блока кода (метода) этого самого объекта и например попытка переключиться к исполнению кода, когда объект равен null - вызовет проблему.

    Посылая же сообщение, поведение более динамично, в том плане, что объект может и не ответить на наше сообщение. Если мы для пустого указателя пошлем запрос, то ничего страшного не случится, мы просто не получим ответа на наш запрос и все.

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

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

    FirstX
    @FirstX
    .net developer
    Для подработки лучше то, что можно сделать быстро, освоить не так сложно, поэтому я бы выбрал Php + сопутствующие технологии (верстка, популярные cms). Это позволит и относительно быстро изучать и объем фриланс заказов вполне неплохой.

    Если же выбирать C# например, то это больше корпоративный сектор.
    Если программирование под мобильные устройства, то нужен бы фундамент хороший, мне кажется все-таки это сложнее будет чем php. Да и заказы это ведь либо проекты под ключ, либо полноценная работа на контору. Редко требуются доделки. А под ключ хорошее приложение в свободное время может быть проблематично делать.
    Ответ написан
    Комментировать
  • Есть хорошая база по Pascal, куда идти дальше?

    FirstX
    @FirstX
    .net developer
    Расскажу на личном опыте, так получилось, что во время обучения решил, что теория теорией, но хочу на практике поработать в ИТ (городок очень маленький, ИТ стремится к нулю), повезло устроиться на работу сисадмином. В итоге после короткого периода времени, стал бОльшую часть времени заниматься разработкой на 1С. Да, это прибыльно, да в наших местах это наиболее перспективно (да и по стране вон статистика), но меня ломало, особенно первое время. Я решал бухгалтерский задачи и вспоминал слова одного молодого преподавателя, который тоже начинал в 1С. Он тогда сказал "Если интересуют деньги, вам в 1С, потому что вся страна встанет колом, а бухгалтерия будет продолжать считать" (сам же он ушел из 1С).

    Я встречал мнение, что типо кто попал в 1С, уже "нормальным программистом" не станет и я категорически не согласен. Чуть позже мне удалось попасть в команду разработки на C#, что мне намного больше нравится, чем работа с 1С. Да тут больше кода писать, да в 1С многое проще, там нужно просто очень хорошо ориентироваться в конфигурациях, платформе и предметной области (например бух.учет). Но мне нравится C# и я не жалею о переходе, хоть в зп и проиграл. Занимался когда-то PHP, не зацепило, хотя по вакансиям да, у PHPишников больше возможностей.

    P.s. еще интересуюсь в свободное время C-Objective, но на C# проще например начать.
    Ответ написан