Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Это idle-игра стратегия о рыцарях, исследованиях, крафте и сражениях, которая предоставляет пользователям расслабляющий опыт. Игра не требует концентрации и идеально подходит, когда вам нужно сделать перерыв или отдохнуть.

Герои Мини-Королевства

Кликер, Стратегии, Мидкорные

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

Swift + Программирование

С этим тегом используют

Политика Санкции Банк Экономика Россия Тинькофф банк IT Программист IT юмор Разработка Python Картинка с текстом Юмор Все
42 поста сначала свежее
99
Phoenexxx
Phoenexxx
4 года назад
IT-юмор

Когда купил книгу и решил присоединится к дружелюбному сообществу⁠⁠

Когда купил книгу и решил присоединится к дружелюбному сообществу Swift, Программирование, Telegram, Мат
Показать полностью 1
[моё] Swift Программирование Telegram Мат
20
762
DELETED
4 года назад
IT-юмор

Когда кодишь на JS⁠⁠1

Когда кодишь на JS IT юмор, Программирование, Мат, Swift
Показать полностью 1
IT юмор Программирование Мат Swift
152
63
BOGEMNII2.0
4 года назад

Какой язык программирования учить в 2020-м?⁠⁠

Статей с подобными заголовками существует уже множество. Но в них постоянно какая-то дичь! Смотрите, Google ещё до основных результатов советует такое:

Какой язык программирования учить в 2020-м? Россия, Языки программирования, Выбор, Программирование, Java, Swift, HTML, Тег, Сравнение, Длиннопост

HCL , Карл! Язык, который не просто очень далёк от «Самых Популярных», но ещё и создан для конфигурации, так что его вообще странно ставить в один ряд с языками общего назначения. Страшно представить приключения новичка, который решит строить карьеру по таким советам. Начнём с того, что по запросу «как выучить HCL» вместо туториалов по языку вылезают тексты о соляной кислоте.


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


В чём проблемы


Тексты «какие языки учить» зачастую такие слабые, что опытные разработчики разнесли бы их в пух и прах, но опытные разработчики их просто не открывают. Их открывают новички, у которых нет компетенции, чтобы заметить подвох. В результате новички доверяют всякой ерунде, а проблемы в текстах остаются незамеченными и процветают. Что именно это за проблемы?


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


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

Однако также стоит учесть, что JavaScript – это один из наиболее популярных языков программирования. А это значит, что на него существует как достаточный спрос, так и огромное количество предложений. Поэтому если вы изучаете или хотите изучить этот язык, то постарайтесь максимально в нем разобраться и стать отличным специалистом».


Проблема вторая: закидывание читателя мелочами без объяснения главного.

Представьте, что человек захотел впервые купить автомобиль. Он ещё не вполне понимает, какие есть варианты кузовов, приводов и коробок передач. А ему с ходу вываливают список из десяти машин, где смешано в кучу всё: внедорожники, малолитражки, грузовики. И вместо пояснений о том, в чём их принципиальные различия, пишут набор разрозненных фактов вроде «у этого автомобиля есть защита картера». Сильно ли это поможет человеку?


А с текстами о языках происходит именно так. Похоже, когда кому-то ставят задачу написать про них, зачастую автор гуглит по пять случайных фактов про каждый и уверенно идёт за гонораром.

Пример: «Go использовался для создания Ethereum». Что, серьёзно, вот это самая важная информация про язык (когда речь идёт не о Solidity)? Вот она поможет сделать правильный выбор?


Проблема третья: сообщают вещи, которые начинающим попросту ничего не скажут.

Пример: «Недостатки Python: нет таких модификаторов доступа, как protected, private и public».


Так и представляется картина маслом. Школьница Василиса Пупкина, ещё почти ничего не понимающая в программировании, пытается выбрать себе первый язык. Читает такое описание и говорит: «а, ну раз нет модификатора protected, конечно, я предпочту C#». Ну камон, неужели не ясно, что подобная информация даст Василисе только ощущение «всё это программирование непонятная хрень, лучше послушаю песню "Валенки"»?



Проблема четвёртая: бездумное следование рейтингам популярности языков. «А-а-а, Go поднялся в индексе TIOBE на несколько строчек, срочно учим его!» Ну слушайте, а ещё по TIOBE получается, что обучающий язык Scratch обошёл Dart — и что теперь, дартовикам надо срочно перейти на детский язык, что ли?


Все эти пузомерки очень условные: результат зависит от того, какую метрику использовать. Поэтому не надо молиться на конкретные места в рейтингах, будто это какая-то спущенная свыше истина. Да, популярность языка имеет значение (по популярным больше справочного материала и вакансий), но не требуется разбираться «какой самый главный в мире», из ряда самых известных подойдёт любой. А чтобы найти эти «самые известные», не требуется лезть в рейтинги, они и так на слуху.


Пример: «В некоторых списках Python фигурирует на 5-ом месте, в других его ставят на 2-ое».


Проблема пятая: за всем перечисленным порой забывают про области применения, а для новичков это может быть важнее всего. Представим, что школьница Василиса, которая каждый день пользуется кучей мобильных приложений, захотела сделать своё собственное. Какая ей тогда разница, какие модификаторы доступа у Python, кто кого обошёл в рейтингах и на чём написан Ethereum? Всё, что ей надо знать — на чём пишут для iOS и для Android.


Поэтому вот текст, который пробует от всего этого уйти:


Вступление


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

Поэтому для начала надо понять свои задачи. Из-за чего вообще встал вопрос выбора языка? Захотелось делать что-то конкретное (игры, сайты, мобильные приложения)? Или важно как можно скорее получить работу в IT любой ценой, что бы ни пришлось кодить? Или хочется просто попробовать «посмотрим, интересно ли мне окажется, а там как пойдёт»?


Если хочется заниматься чем-то определённым — тогда важнее не теоретические сравнения языков, а то, какие используются конкретно в этой области. Часть информации об этом можно получить из текста ниже, но есть смысл и погуглить «what languages are used for %интересующая_область%».


Если важно как можно скорее пройти путь до получения работы, тогда тоже важнее текстов-сравнений может оказаться другая вещь. Стоит посмотреть на сайте вроде HeadHunter вакансии Junior-разработчиков своего города: какие языки чаще всего упоминаются в них?


А если нет ни спешки, ни определённого запроса, тогда спрошу так: есть ли потребность делать что-то такое, что пользователь видит глазами? Работа над веб-сервисами делится на фронтенд и бэкенд. Грубо говоря, фронтенд — это «что видно в браузере», а бэкенд — это «что выполняется далеко на сервере, чтобы фронтенду было что показывать». Когда пользователь нажимает на кнопку, её поведение прописал фронтендер — но если это кнопка «перейти к диалогу» и надо показать историю переписки, то дальше бэкенд извлечёт сообщения из базы данных на сервере.


Так что разработчикам-фронтендерам при работе над кодом приходится задумываться о том, как выглядит пользовательский интерфейс, а вот бэкендерам — только непосредственно о коде. Кому-то близка визуальная сторона и хочется показывать пальцем «смотри, мама, вот это добавил я» (для этого подходит фронтенд или мобильная разработка), кому-то больше нравится иметь дело с внутренней логикой, чем с «кнопочками». Так что если уже есть понимание, что ближе, это может помочь с выбором.


А вот теперь можно читать про конкретные языки и решать, какой из них соотносится с личными целями. Расположил популярные языки по хронологии, в порядке их появления:


C (1972) и C++ (1985)


C++ изначально появился как развитие языка C, поэтому я объединил оба в одном пункте. Можно сказать, что это дедушка и отец остальных языков в этом списке: они здесь старше всех и очень повлияли на другие языки.


Сейчас они выглядят не точно так, как в момент появления (у C++ каждые три года принимают новый стандарт, недавно был принят C++20), и с годами всё сильнее различаются. Но идеи, заложенные ещё в начале, продолжают накладывать свой отпечаток. Когда создавался C, компьютеры были куда менее производительными, так что их ресурсы приходилось экономить куда старательнее. И тогда всё было «ближе к железу»: программирование в большей степени, чем сейчас, требовало понимать, как физически работает компьютер.

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


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


Python (1991)


В каком-то смысле Python — противоположность C: если там «сложно, зато производительно», то здесь «просто, зато к производительности есть вопросы».

Такое категоричное заявление требует уточнений. Во-первых, о простоте: свои хитрости здесь тоже есть, но они не так болезненны для новичков. С какими-то языками сразу врезаешься лицом в стену из непонятных терминов и теряешь всё желание что-то делать, а здесь начинаешь с куда более простого и понятного кода. Для многих базовых задач предоставлены встроенные способы решения, Python называют «языком с батарейками в комплекте». Неудивительно, что его часто рекомендуют в качестве первого языка, и он стал очень популярен в образовании.

Что же до производительности, то Python действительно проигрывает и C++, и многим другим языкам. Но порой его называют «медленным» презрительно, а вот это уже зря. Вспомним слова о том, что языки хороши или плохи не сами по себе, а применительно к задачам. Да, есть задачи, для которых Python не подойдёт — но есть и такие, где разница в скорости между ним и другим языком вообще не будет заметна. У Python есть свои области применения, для которых он достаточно хорош.

Что это за области? Ещё давно Python полюбили учёные — и теперь с его помощью занимаются такими околонаучными вещами, как машинное обучение и data science. В бэкенде веб-сервисов его тоже используют. Про образование уже сказано. А помимо разработки, его любят в системном администрировании — там он отлично подходит для мелких утилит.


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


JavaScript (1995)


Если в бэкенде разные языки активно конкурируют, то с фронтендом всё проще: там господствует JavaScript. Так что, если вам интересна конкретно эта область, выбор первого языка очевиден. А из-за такого доминирования востребованность языка гигантская, количество вакансий очень большое — так что с точки зрения трудоустройства это тоже хороший вариант.

JS считается относительно простым языком для обучения. Но стоит учесть, что во фронтенде сейчас почти никто не использует «просто JavaScript», нужно будет ещё освоить один из популярных фреймворков (а также научиться пользоваться инфраструктурой). И вот к ним нареканий о сложности заметно больше — так что по пути к карьере фронтендера боль может возникнуть на этом этапе.

При популярности JavaScript и у него, и у всей современной фронтенд-разработки хватает ненавистников. Кто-то говорит, что во фронтенде всё постоянно меняется и надо постоянно переучиваться вместо спокойной работы (правда, в 2020-м таких жалоб уже заметно меньше, пик остался в прошлом). Кто-то жалуется на странности в логике JS. Во многом такие оценки субъективные, их не назвать «правильными» или «неправильными» (одно и то же кого-то злит, а кого-то радует) — так что неизвестно, что будете ощущать лично вы.


Помимо фронтенда, JavaScript используют и в других областях (бэкенде, компьютерных программах, мобильных приложениях и не только), но в них он от господства далёк.

Java (1995)


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

Java используется в первую очередь в бэкенде, и хотя не царит там безраздельно, как JS во фронтенде, позиции очень хорошие. Порой можно услышать пренебрежительное «да она уже устарела и вот-вот умрёт». Ну, во-первых, скажу так: эти слова звучат уже лет дцать, а она что-то никуда не делась. Мы в JUG Ru Group проводим конференции по разным языкам, и по Java получаются самые посещаемые, в прошлом году собралось больше 2000 участников — это никак не выглядит смертью.


А во-вторых, даже если исходить из того, что когда-то она умрёт, это не значит «учить её сейчас бессмысленно»: простой инерции явно хватит ещё настолько, что скорее вы сами захотите переключиться на что-то другое, чем придётся делать это вынужденно.


Другая популярная претензия к Java — мол, она «скучная и многословная», и используют её скучные компании вроде банков, а какие-то другие языки позволяют реализовать то же выразительнее и лаконичнее, и их ценят в весёлых стартапах. Ну, тут всё тоже субъективно, как с JS: знаю многих людей, которые говорят о Java с огнём в глазах и видят в банковской разработке множество интересных задач, но если для кого-то скучно, с этим не поспоришь.


C# (2000)


Когда компания Microsoft представила C#, многие назвали это «ответом Microsoft на Java». Разумеется, между этими языками хватает различий (и за прошедшие 20 лет их число лишь увеличилось), но некоторая перекличка действительно есть, и знание любого из этих языков помогает быстрее освоить другой.


Изначально самая заметная разница была не в самих языках (в синтаксисе или рантайме), а в сферах их применения. Microsoft создал C# как часть своей платформы .NET, связанной с Windows. И если нужно было сделать программу для Windows, то напрашивающимся вариантом выглядел .NET. А вот если такую программу, чтобы запускалась и на Windows, и на Linux, и на Mac — тут могла помочь Java.

Но с годами ситуация изменилась: у .NET появилась новая версия .NET Core, уже не привязанная к конкретной операционной системе, а люди стали реже устанавливать программы на компьютер и больше делать в браузере. Это отчасти сблизило сферу применения языков: если посмотреть сейчас вакансии с названием C#, там, как и у Java, часто будет написано что-то вроде «Построение бэкенда для веб-приложений».


Впрочем, это не единственный вариант. В играх на движке Unity тоже используют C#, а это самый популярный движок в мире — так что в геймдеве язык тоже активно представлен (в отличие от Java).


Kotlin (2011)


Этот язык создала в Санкт-Петербурге компания JetBrains. Он совместим с Java, поэтому Java-проекты можно постепенно переводить на Kotlin: не переписывая всё разом, а постепенно добавляя туда Kotlin-код. И многие попробовавшие его Java-разработчики захотели к нему перейти, ощутив, что тут нет «скуки и многословности», всё выразительнее и современнее.


Пока что язык покорил одну конкретную область: разработку приложений для Android. Изначально их писали на Java, но в последние годы начался массовый переход к Kotlin, он стал новым индустриальным стандартом. Поскольку никто не хочет просто выбрасывать уже написанное раньше, сейчас во многих приложениях есть код и на Java, и на Kotlin, поэтому сегодня Android-разработчику желательно знать оба языка. Но похоже, что в будущем будет достаточно Kotlin — уже сейчас во многих Android-вакансиях упомянут только он.


JetBrains совершенно не хотят останавливаться на Android и метят с Kotlin в самые разные ниши, даже те, где не представлена Java. Каких-то успехов в этом компания добивается, с каждым годом язык становится популярнее, но от других вроде той же Java пока что сильно отстаёт, и насколько ещё ему получится вырасти — открытый вопрос. Так что, если учить Kotlin, в Android-разработке это точно очень пригодится, а в других областях — как повезёт.


Swift (2014)


Наконец, самый молодой язык из перечисленных — он был представлен меньше шести лет назад. Обычно за такое время языки не успевают стать достаточно популярными для попадания в такие списки. Но здесь ситуация особая: компания Apple, создавшая его, ясно дала понять, что теперь iOS-приложения надо писать на нём. А тут как Apple скажет — так и будет, свою платформу компания контролирует.


Но вот всё остальное в мире компания Apple не контролирует. Поэтому, хотя в принципе этот язык можно использовать и для других целей, больше его не применяют особо нигде. Есть попытки серверного использования, но по сравнению с основными бэкендными языками это всё кошкины слёзки.


И в итоге выбор получается совсем простой. Хотите писать приложения для айфонов (ну или для Mac, Apple TV, Apple Watch) — учите Swift. Не хотите их писать — не учите Swift. Ну, если хотите делать приложения «для iOS и Android сразу», существуют ещё кроссплатформенные решения вроде Flutter, но они куда менее популярны.


Прочие языки


Молодые: Go, Dart, Rust и так далее

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


Охотно верю, что в заметной степени это правда. Но есть проблема: почти все такие языки используются в индустрии заметно меньше тех самых «предшественников». Так что даже в Москве такой выбор резко сужает круг вакансий, а если вы в городе размеров Омска, то Rust-вакансии вряд ли встретите в принципе. Конечно, можно искать удалёнку, но для первой работы это не лучший вариант.


И какие из этих языков со временем по-настоящему расправят крылья, а какие останутся нишевыми или вообще завянут — сказать сложно. А значит, учить такой язык — это отчасти лотерея. Думаю, что начинать разумно всё-таки с проверенного временем языка, а к «стильному, модному, молодёжному» переходить позже, уже хорошо понимая, что именно делаешь и зачем.


Высокооплачиваемые: Scala, F#, Haskell и так далее.


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


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


Узкоспецифичные языки: SQL, HTML, Bash и так далее


Упомяну для полноты картины. До этого речь шла о языках общего назначения, на которых гипотетически можно писать что угодно. Но существуют ещё языки, используемые строго для конкретного круга задач. Например, SQL используется конкретно для работы с базами данных. И его знание вам может понадобиться «в дополнение» к вашему основному языку.

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


Заключение


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

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

Что если я заявляю «надо объяснять главные различия», то надо было обязательно рассказать про типизацию.

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

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


Статья рассчитана на начинающих изучать то или иное направление в программировании и думает с чего начать.

В общем классная статья.


https://m.habr.com/ru/company/jugru/blog/503250/

Показать полностью
Россия Языки программирования Выбор Программирование Java Swift HTML Тег Сравнение Длиннопост
105
dr.spo
4 года назад

Товарищи программисты, помогите советом⁠⁠

Я какое-то время изучала Java, а сейчас приняла решение перейти на мобильную разработку на Swift. У меня было оплачено обучение и сейчас идёт тема «Архитектура и шаблоны проектирования на Java». Так вот вопрос таков: похожи ли в плане архитектуры Swift и Java? Стоит ли тратить время на изучение этого курса, если Java я уже не буду использовать, и может ли мне пригодиться эта тема потом в изучении Swift? Не смогла найти в интернете какую-либо информацию по этому вопросу, но знаю, что здесь сидит много опытных программистов, знающих по несколько языков.

Программирование Java Swift Вопрос Программист Текст
41
20
pikselnsk
pikselnsk
5 лет назад

Долгий путь в айти. Часть 3. Первые 10_000 пользователей⁠⁠

Всем первый привет в 11111100100!


Я тут что-то вроде ежемесячного дневника веду о том, как решил профессию сменить и в погромисты податься.


Часть 0

Часть 1

Часть 2


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

Долгий путь в айти. Часть 3. Первые 10_000 пользователей Без рейтинга, Саморазвитие, Программирование, Android, iOS, Kotlin, Swift, Длиннопост

Пока-что всё идёт как в песнях Летова. Код пишется, курсы смотрятся, технологии изучаются, приложения качаются. Всё, можем расходиться, дальше будут мои влажные фантазии, благодарности и немного статистики.


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

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

- отключение телефона, проверка почты, соцсетей и пикабу до вечера. Первая, продуктивная половина суток для работы и учёбы, вечер для отдыха. Попробовал заниматься с утра до позднего вечера - психологический ад с комком в горле в конце дня. Не надо так.

- разделение задачи на порции, планирование, приоритеты. Каждое утро создаю список что сделать и освоить в первую очередь с разделением на подпункты, и несколько задач поменьше - бонусных.

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

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


Kotlin после Java впитался как родной, приложения писать одно удовольствие, а видео с Андреем Бреславом очень хорошо заряжают мотивацией, видно как человек гордится тем, что у них получается делать хороший ЯП. Молодцы, прям хочется идти за такими. Надо только корутинки подтянуть, но с этим проблем не будет. Также очень плотно подаётся материал на курсе. Приходится порой работать над домашними заданиями в ущерб работе над своими проектами, но информация очень полезная подаётся. Видимо к Java я вернусь не скоро. Даже грустно немного.

Swift оказался очень похожим на Котлин (или наоборот?🤨), осталось дело за освоением ios sdk. Думаю ещё, раз дело идёт хорошо, может и чуть-чуть php апнуть, а то сервер то для синхронизации надо как-то писать.. но пока отложу этот вопрос на пару-тройку месяцев вперёд, а то голова взорвётся и жене потом оттирать мозги от обоев. И кому моя коллекция трансформеров достанется? Такое себе.

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


Будильник:

- всего загрузок 27126

- активных пользователей (те, кто не удалили приложение и запускали его хотя бы раз за последние 30 дней) 12794

- всплески по загрузкам перешагнули 1000 в день! Йюхууу!!!

- вышел в топ 5 по запросу "будильник" в play market

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

Долгий путь в айти. Часть 3. Первые 10_000 пользователей Без рейтинга, Саморазвитие, Программирование, Android, iOS, Kotlin, Swift, Длиннопост
Долгий путь в айти. Часть 3. Первые 10_000 пользователей Без рейтинга, Саморазвитие, Программирование, Android, iOS, Kotlin, Swift, Длиннопост

Работу над старым блокнотом я свернул, так как он написан был ещё на фрэймворке Cordova, там есть проблемы с новыми устройствами. Удалять пока из маркета не буду, но всё к тому идёт.

Зато над вторым блокнотом я поработаю как следует. Хочу сделать этакий универсальный карманный комбайн, в котором можно будет помимо создания заметок работать с календарём, создавать разные напоминания, работать с вложенными папками и многое другое. Над дизайном также придётся попотеть.

Дела у него скромнее, чем у будильника, но люблю его не меньше😊:

- всего загрузок 1942

- активных пользователей 1255

По запросу "блокнот" в маркете еле-еле держится в первых 15 приложениях, надеюсь после обновления уверенно зайдёт в десятку.

Скоро должен дотянуть до планки 100 загрузок в день

Долгий путь в айти. Часть 3. Первые 10_000 пользователей Без рейтинга, Саморазвитие, Программирование, Android, iOS, Kotlin, Swift, Длиннопост
Долгий путь в айти. Часть 3. Первые 10_000 пользователей Без рейтинга, Саморазвитие, Программирование, Android, iOS, Kotlin, Swift, Длиннопост

Что же, до планки в 1_000_000 ещё далековато, но время есть, что делать понятно. Следующий пост уже напишу после релиза нового приложения. Надеюсь после победы над паразитами сил будет ещё больше и продуктивность повысится.

Желаю всем в новом году кучу мотивации на хорошие дела, вдохновения и пусть каждый найдёт своё хобби, которое станет профессией. Если вдруг среди прочитавших это есть пользователи моих приложений, то хочу сказать ВАМ СПАСИБО! Вы делаете меня лучше, я очень вас ценю. Всем добра.


Ps. очень не хватает общения с околоайти людьми в реале. Если есть в Новосибирске кто-то, кто как и я пытается в одиночку оседлать play market - пишите, может быть мы сможем сделать это вместе🙃

Показать полностью 5
[моё] Без рейтинга Саморазвитие Программирование Android iOS Kotlin Swift Длиннопост
6
10
pikselnsk
pikselnsk
5 лет назад

Вызов самому себе. Первый срез.⁠⁠

Ребят, а вы кто?😅 Похоже, что вести дневник своего фиаско мне придётся гораздо тщательней, ведь после поста о начале пути у меня появилась почти сотня подписчиков! И судя по соотношению людей/плюсов, большинство успеха в моей затее не видит.

Ну что же, присядем и сделаем выводы первых трёх недель.

Вызов самому себе. Первый срез. Kotlin, Swift, Android, Программирование, Самообразование, iOS, Длиннопост

Пока что самое сложное было - это выработать режим, подойти к моей затее систематически. Я взял на вооружение тактику "помидор" в сочетании с планированием. Мне очень хорошо подходит. Утром несколько минут уделяю на планирование минимальной задачи на день, что доработать в приложении, какие главы изучить, какие статьи прочитать. Первую половину дня выделяю только на программирование. Выключаю телефон, почту, соцсети, делаю 6-8 заходов программирования по 25 минут, 5-15 минут перерывы. Вторая половина также с таймером посвящена пока что изучению книг. Книги стараюсь прорабатывать, вести краткий конспект, по которому на следующей день кратко проверяю себя, освежая прочитанное накануне.

По Котлин выбрал - "Kotlin in action" и "Котлин. Программирование для профессионалов". Первую прочёл, второй сейчас закрепляю.

По Android очень понравилась книга "Android. Программирование для профессионалов."

Основываясь на ней сделал выбор в сторону этих же авторов и по Swift🤓

Параллельно идёт изучение Swift. Изучаю по книге "Swift. Основы разработки приложений под iOS, iPadOS и macOS. 5 издание." Также обязательно выделю время на видеокурсы. На торрентах лежит неплохой материал от сфифтбук. Этого должно будет хватить, что бы портировать то, что написал на Android.

Вызов самому себе. Первый срез. Kotlin, Swift, Android, Программирование, Самообразование, iOS, Длиннопост

Приложения на Android сильно успехом не пользуются, но я чуда пока не жду. Хотя уже есть в сумме более тысячи пользователей и первые доллары, что очень мотивирует😺

Вызов самому себе. Первый срез. Kotlin, Swift, Android, Программирование, Самообразование, iOS, Длиннопост
Вызов самому себе. Первый срез. Kotlin, Swift, Android, Программирование, Самообразование, iOS, Длиннопост
Вызов самому себе. Первый срез. Kotlin, Swift, Android, Программирование, Самообразование, iOS, Длиннопост

Сделал себе дома рабочий угол. Для разработки под apple необходима macOS, пришлось ставить хакинтош и внепланово разориться на подходящую простенькую видеокарту. На этих нескольких квадратных метрах мне ещё предстоит просидеть пару-тройку тысяч часов, так что постарался окружить себя радующими глаз вещами и котом😅 

Вызов самому себе. Первый срез. Kotlin, Swift, Android, Программирование, Самообразование, iOS, Длиннопост

В принципе, что делать дальше - понимание есть. До нового года заканчиваю изучение книг по языкам, досматриваю видеокурсы и смещаю баланс времени на кодинг. 2-3 месяца уйдёт на написание больших обновлений для имеющихся приложений. 1 месяц посвящу на создание нового будильника. Да, банально, но оказывается это то, что люди качают с удовольствием и пользуются постоянно. Оставшиеся полгода посвящу тому, что займусь портированием будильников и блокнота на ios и созданию системы управления клиентами для малого бизнеса под обе платформы. Мне кажется это направление довольно перспективным. Также несколько часов в неделю буду уделять урокам по дизайну приложений. Приходится много времени тратить на банальные вещи, связанные с созданием иконок,  слайдов и т.д.


Огромное спасибо всем, кто поддержал меня в комментариях! Впереди много работы, надеюсь она будет проделана не зря и я всё-таки смогу достичь через 11 месяцев заветной отметки в 1_000_000 пользователей. В каждом из нас есть тяга к созиданию и очень круто, что мы живём в таком мире, где ты можешь что-то придумать на одном стороне планеты, а на другой плод твоих мыслей уже через какой-то час  может приносить кому-то пользу.

Бонусом держите трансформеров в комментариях. Всем добра🙃

Ps. книги и источники в посте - не реклама, всё очень субъективно.

Показать полностью 6
[моё] Kotlin Swift Android Программирование Самообразование iOS Длиннопост
17
12
oxyfire
oxyfire
5 лет назад
Всё об iOS

Будни iOS программиста в новом проекте.⁠⁠

Будни iOS программиста в новом проекте. iOS, Программирование, Программист, Разработка, Swift, Жизнь, Директор

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

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

Я пришел на собеседования вовремя и мне пришлось немного подождать руководителя, как я думал, какого-то отдела. После милой беседы я понял, что со мной разговаривая САМ ОН, создатель всего этого добра и походу работать я буду именно здесь. Человек оказался интересным и творческим, конечно не без своих тараканов, как я потом понял, но все же меня все устраивало. Выслушал все "хотелки" я принялся задавать вопросы:
- Есть ли у Вас дизайн окон (UI/UX)
- Есть ли серверная часть
И другие технические моменты. Нужно сказать, что обычно дизайн приложения выполняется в специализированных программах векторной графики - это уточнение важно и прошу его запомнить. В качественно дизайне можно посмотреть: шрифты, цвета, отступы от других элементов и это очень важно.

Так вот, все ответы на технические вопросы меня удовлетворили, мы пожали руки и подписали договор о сотрудничестве.

Мой первый рабочий день... я его никогда не забуду.... Мне притащили MAC для работы, дали все логины и пароли - работай не хочу... Но не все так празднично, как казалось на первый взгляд. Первым, что я попросил была техническая документация, о которой мы столько говорили, но, кроме описания методов (API)  работы с сервером, документацию так и не нашли. ТЗ мне прислали в виде 60 строк текста в скайпе. Далее еще веселее! Напомню про дизайн сделанный в специализированной программе... Я попросил мне предоставить мне его (UI/UX), что бы ознакомиться и начать верстать окна приложения... и... О, чудо! Меня позвал САМ ОН, что бы передать святая святых - дизайн. Войдя в кабинет, из сейфа достали... Как Вы думаете что? Флешку? Жесткий диск? НЕЕЕЕЕТ! Достали блокнот формата А4... С смачным цоканьем и гордость директор передал мне блокнотик и сказал, что вот он! Дизайн наш! Ребята, вы не поверите! Я открыл блокнот и там разными фломастерами (по цвету и толщине) отрисованы окна приложения, аккуратно по линейке. Со славами: "Дерзай!" меня отправили из кабинета.

Боже 20 страниц А4 отрисованных руками экранов... Вы думаете я сразу уволился? НЕТ! Мне стало интересно, а смогу ли я сделать из этого ... приложения? Да, я смог и вот скоро оно выйдет в свет и будет радовать пользователей.

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

С уважением,
Ваш Оксигена.

Показать полностью
[моё] iOS Программирование Программист Разработка Swift Жизнь Директор
9
Партнёрский материал Реклама
specials
specials

Сколько нужно времени, чтобы уложить теплый пол?⁠⁠

Точно не скажем, но в нашем проекте с этим можно справиться буквально за минуту одной левой!

Попробовать

Ремонт Теплый пол Текст
Dr.Moscow
Dr.Moscow
6 лет назад

Вопрос про программирование. (Swift в Xcode)⁠⁠

Ребятушки, подскажите нормальные самоучители или учебники про программирование на языке Swift  в Xcode. Я новичок  в этом, хоть и активный пользователь ПК. Все что я находил в инете, сводится к: "тут выбирайте это, а там вот это, тут поставьте галочку, а вон ту галочку не трогайте"

Хочется что бы максимально просто и по делу был туториал, почему тут писать надо это а не то и тд.

Может есть у кого-то в закромах обучающие уроки или литература.

Максимум что я могу на данный момент - создать простенькое приложение "Аля нажми на кнопку и вылезет текст"

PS: я не лентяй и нашел какую-никакую литературу, но это уже все то же что и было найдено ранее.

Вопрос про программирование. (Swift в Xcode) Программирование, Xcode, Apple, Swift
[моё] Программирование Xcode Apple Swift
17
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии