Могу сказать по своему опыту. Я начинал с Objective-C где-то 8 лет назад, очень радовался когда вышел Swift и работал с ним по сути с момента его рождения. Swift лучше, чем Objective-C, но советовать на нем работать невозможно. Работать не в аутсорсе на мобайле будет невозможно и 99.9% проектов, которыми ты будешь заниматься, будут убогими и депрессивными, без нормальных требований. Xcode часто будет заявлять, что твой девайс залочен, когда он разлочен, и надо будет с него полностью выходить, вынимать телефон, вставлять обратно и заходить обратно в Xcode и снова ждать пока проект перекомпилится. Отгрузка в апстор — долго и боль, ты еще наверное даже не слышал про их ревьюеров и их правила. Новые версии Swift выходят (или по крайней мере выходили) очень часто, потом обновляется Xcode и говорит, что твоя версия языка устарела и будь добр перепиши весь свой проект, так как наш тул для автоматической конвертации кода не работает, кстати мы не поддерживаем последний iOS, установленный на твоем телефоне, удачи тебе тестить камеру на симуляторе. Если честно, меня такие вещи очень расстраивают. Interface Builder и storyboard’ы становятся твоими злейшими врагами, чем больше у тебя на экране элементов. Я могу это нытье еще очень долго продолжать, но не суть. Пару лет назад научился работать с бекендом на nginx+Python/Django, выучил React и React Native. Работать оказывается куда лучше, когда тебе не надо три минуты ждать пока перекомпилится весь проект, чтобы увидеть, что у UILabel теперь действительно красный background. Когда переходишь в бекенд и/или фронтенд, понимаешь, что мобайл это песочница, большинство нормальных проектов делается в вебе. Я вижу, тут люди советуют dart и flutter, но я бы и ими не советовал бы заниматься, так как это направление сейчас не очень стабильное. Больше всего мне понравилось работать с React, и тебе я тоже советую в его сторону посмотреть, начни с HTML/CSS/JavaScript. Захочешь пилить фронтенд — это можно делать с реактом, мобайл — с реакт нейтивом, идеи там одни и те же, прийдется просто выучить нюансы работы с самим мобайлом. Идти в бекенд не имея никакого опыта в разработке не советую, порог вхождения высокий, и если учишься без ментора, будет слишком сложно, так как учить надо будет далеко не только программирование. Для бекенда нужно в первую очередь определиться со языком, на котором ты захочешь учиться и работать в будущем, которых прилично — Python, PHP, Node.js, Ruby On Rails, Java, JS и т.п. Надо будет уметь работать с базами данных, и начнешь ты скорее всего с Firebase, а потом тебя очень сильно порадует вхождение в PostgreSQL или MySQL, надо будет понимать как настраивать вебсервер, подымать ubuntu, учить ее экосистему, учить в хоть какой-то мере bash, настраивать ssl. Я не знаю как сейчас на рынке с DevOps и повезет ли тебе попасть в команду, где он есть, но если его нет, будешь подымать вручную серверы на Amazon EC2/Beanstalk или еще на чем, и это далеко не конец. Я тут явно где-то перегибаю, но идея в том, что этот океан информации прийдется учить в любом случае. Для фронта нужен HTML/CSS/JS и фреймворк — Angular/React/Vue — не учитывая вещей, которые необходимы любым разработчикам вроде git, это все, может TypeScript, если попадешь в нормальную команду. Я советую JavaScript потому, что для меня это был самый гибкий и удобный вариант, на нем можно писать в любом направлении — бекенд на node.js, фронт на react, кросс-платформенный мобайл на react native. Еще раз очень настоятельно советую — забудь про Swift и смотри в сторону веба, на маке очень удобно под него писать, так как это та же unix система, что и ubuntu, на которую будет деплоиться твой код и с консолью будет проще осваиваться. Посмотри вот этот роадмап для общей идеи того, что надо учить — github.com/...ahmedse/developer-roadmap. На фронтенд сейчас самое высокое количество вакансий, много вакансий именно на реакт — jobs.dou.ua. Фронтенд очень хорош для новичков так как там есть визуальный фидбек, ты что-то пишешь — оно мгновенно обновляется и ты видишь, что произошло. www.udemy.com/...omplete-guide-incl-redux — вот этот курс учит большей части того, что надо будет знать, чтобы нормально работать с реактом, но прийдется и самому доучиваться, поставь его только хотя бы на 1.5 скорость, ато говорит медленно. Перед тем, как него браться, надо обязательно иметь базу с HTML и CSS. Попробуй посмотреть несколько качественных видео по обеим технологиям, начать надо с HTML www.youtube.com/watch?v=UB1O30fR-EE. Для справки можно использовать www.w3schools.com/html/default.asp, но учиться по нему практически невозможно. Будут вопросы, пиши.
Я прошел этот курс и могу сказать, что он достаточно хороший, особенно для начинающих программировать, так как Макс там разжевывает всю информацию до безобразия.
Если есть какие-то варианты, был бы признателен, если бы вы ими поделились. Я не большой специалист в выборе ноутбуков, сейчас у меня самого старенький макбук про, я им очень доволен, но бюджет на покупку ноутбука не резиновый и хотелось бы что-то в пределах 20-25к взять. Я смотрел на то, чтобы был хороший процессор, ssd, минимум 8гб оперативной памяти, 1080p и IPS матрица. Время работы не так важно, так как работать в основном ноутбук всегда будет подключен к розетке. Ремонтопригодность нормально оценить может наверное только бывалый в этом деле человек :)
Если носить 2к ноут в рюкзаке, а не наплечной сумке, то вес нормально выносится. У меня есть сумка, которая с формата сумки почтальона может настраиваться в такой себе рюкзачок + настоящий рюкзак для ноутбука тоже имеется. Я работал с 13″, и с ним можно ослепнуть. В перспективе конечно можно подключать к отдельному монитору, но не факт, что его будет предоставлять контора, куда она в итоге устроится работать. Сложный выбор.
Спасибо за комментарий, выбираю не для геймерства, так что если не найду достаточно весомых недостатков, однозначно буду брать его.
Типа такого? hotline.ua/...pad-edge-e580-20ks0063rt Стоит чуть больше, чем хотелось бы, но не критично. Отличия я вижу только в видеокарте, но в ней смысла нет, так как ноут не для игр берется, а так все параметры точно те же. Тот, что я кидал весит чуть меньше, что для меня плюс, так как его будет носить довольно хрупкая девушка :)
Ноут берется для веб разработки на реакте, чисто, чтобы вебшторм работал и ничего не висело, поскольку компилироваться там особо ничего не будет, думаю, он не будет слишком сильно разогреваться. Насколько сильные были проблемы? Можно было яичницу на нем жарить?
Кто-то работал с lenovo ideapad? Вот этот выглядит очень привлекательно, но что-то стремновато, ноуты с такими параметрами обычно стоят под 30к, а этот стоит 22. Переживаю, что он будет сильно шуметь и греться, но хз обосновано оно или нет. hotline.ua/...l-grey-81bq007dra/prices
Из того, что еще не упоминалось:
Jojo’s bizarre adventure — 0 филлеров, 100% акшон, поколения главных героев, все герои — драматичные качки
RWBY — сложно сказать, что это именно аниме, герои не орут свои атаки и оно в 3д, и не рисованное, в первом сезоне финансирования было не так много и это заметно по многим моделям, но если в целом нравится смотреть аниме, то очень советую, сюжет бомба, бои супер
Konosuba — типичный эччи гаремник, но с офигенным юмором, второй сезон все еще выходит
— Kiss x Sis( ͡° ͜ʖ ͡°)
Я бы советовал iOS, нужно выучить Objective-c, который после первых 6 месяцев уже не кажется ужасным, писать на нем вряд ли понадобится, но без него тебя на работу не возьмут, вдруг появится проект, написанный 5 лет назад на Obj-c, и тебе надо будет его поддерживать. На Swift очень весело писать — каждый год переучиваешь язык заново (Int[] -> [Int] и т.п. for-loop теперь for i in 0..5, i++, i— deprecated), половину кода нужно переписывать. twitter.com/...
s.dou.ua/storage-files/ISD-2.jpg Я влюбился в милую даму с метлой
Я последний раз заказывал в шашлыкяне шашлык из ошейка, всяких хачапури и пару килограмм овощной нарезки, ребятам понравилось, но это довольно дорого, на 10 человек будет около 2к грн. Еще до этого брал в осетинских пирогах пироги с мясом, сыром и сладкие на десерт, тоже хорошая вещь.
Мое мнение, конечно, базируется на том, что я и так уже работаю много лет на iOS, но все же, я бы сказал, выбирайте iOS. Java отличный язык, но Swift мне кажется лучше, я бы ставил на него. По заработку получится приблизительно одинаково (наверное), но купить себе макбук и айфон для разработки, будет очень дорого, гораздо дешевле писать на обычном домашнем компе и купить за 3к что-то на андроиде.
Многих вещей не хватает, чтобы дать точную оценку, но если очень грубо, то работа состоит из примерно таких пунктов:
0) Project setup — подключение необходимых библиотек, составление технической документации по API и обсуждение перед началом проекта
1) Product categories page (Landing) — первый экран приложения, отображаем группы товаров
2) Products page — переходим на него из п. 1. Отсюда добавляем товары в корзину
3) Shopping cart page — доступен глобально во всем приложении. Отображаем добавленные в корзину продукты с количеством, даем возможность удалить товар или изменить количество. Так же содержит в себе поле ввода номера телефона и кнопку отправки данных на сервер.
4) Testing & Deployment
В будущем могут быть такие моменты, как необходимость авторизации, история заказов и отслеживание их статуса выполнения, профиль пользователя, чтобы ввести номер телефона и не вводить его снова, но в вашем запросе это не учитывается, потому я это не дописываю к основному функционалу.
Далее по основному функционалу, приложение будет одновременно создаваться на Android и iOS. Серверную часть напишут одну под оба приложения, дизайн будут делать приблизительно одинаковый под оба приложения с небольшими отклонениями.
Берем приблизительную стоимость людей с опытом, достаточным для выполнения задачи:
1 Дизайнер ($10/hr)
1 Веб разработчик (только бекенд) ($20/hr)
1 iOS разработчик ($20/hr)
1 Android разработчик ($20/hr)
Считаем часы по пунктам, опять же приблизительно:
0) 8 hrs
1) 8 hrs
2) 16 hrs
3) 8 hrs
4) 8 hrs (без дизайнера)
Получаем приблизительно 48 часов работы разработчиков и 40 часов дизайнера.
Разработчики: $2,880.00
Дизайнер: $400.00
Total: $3,280.00
Работы в том, что вы описали, не так много, но нужно сразу понимать в каком направлении вы идете и как будете расширяться, с чем, естественно, будут расти затраты.
тру программированиемПросто выбрось это из головы. Есть работа, ты ее делаешь, за нее платят деньги. Если работа тебе нравится, то все збс. Этот ход мысли мог бы так же вбить тебе в голову, что ты не «тру мужик», потому, что Сталлоне или Шварцнегер по телевизору выглядят в разы лучше тебя.
я не вижу перспектив в мобильной разработке в смысле развития.Какие именно перспективы тебя интересуют? Занимаясь iOS разработкой на постоянной основе ты все время совершенствуешь свои навыки. Несколько недалеких перспектив у нашего труда — ускорение рутины с повышением навыка и + к зарплате, я их, например, вижу. Если тебе очень хочется разносторонне развиваться, то почему бы тебе на начать учить серверную часть? Будешь писать сам себе API, и знать как происходят все процессы от а до я, очень полезные знания.
к примеру кто такой senior iOS? чел который может быстро загуглить как запилить кнопку с синим бэкграундом?Это тот, кто может вовремя сдать то, что пообещал заказчику, понимает, что надо сделать задачу так, чтобы потом можно было пользоваться тем, что он сделал и знает куда смотреть чтобы это сделать быстро. То, что он пользуется гуглом или чем-либо другим для решения большинства своих задач — совершенно не важно, самое главное — найти решение проблеме, даже если это синий фон кнопки.
и вот еще с выходом swift — не станет ли через пару лет iOS областью с низким порогом вхождения для школоты?Во-первых, swift не такой уж и легкий и пока что писать на нем голом бестолку, надо знать как работают API Cocoa, чтобы хоть что-то умное на нем сделать. Да и что плохого в том, чтобы свежая кровь ломанулась в область? Чем насыщеннее рынок неквалифицированными кадрами, тем больше твоя стоимость как специалиста. Если ты боишься конкуренции со стороны школоты... ну ты понял.
Мне кажется, такие мысли возникают от скуки, так это, по крайней мере, было раньше у меня.
Очень хороший ответ. Спасибо за ссылку на лекцию Якова Файна.
Оптимизм это замечательно, но надо смотреть на реалии. Если тебе нужна работа, которая приносит деньги, лучше смотреть на то, какие вакансии востребованы в наибольшем количестве прямо сейчас и входить в поток. Переучиться на другой язык тогда, когда интересующие тебя тенденции доберутся до нашего рынка будет куда проще, когда уже будет база. Все адекватные языки программирования имеют одинаковые основы.