Заколебало меня все это «множество сайтов» которыми я занимаюсь, вот и решил хотя бы один из них перенести сюда. Будет просто отдельная рубрика и все.
Первый пост. Про изучение Swift «почти с нуля».
Всем салют. Я в основном блоге недавно выкатил вот такой вот мини-пост. И там в конце было вот такое (если лень по ссылке переходить):
Я уже говорил, что лет 5 назал работал iOS-разрабом, только вот тогда еще был Objective-C, а сейчас какой-то Swift придумали… Надо освоить! Янг писал, что типа «хочешь научиться кодить — сделай компьютерную игру», отличная идея! чВ Попробую что-нибудь такое реализовать, прикинувшись, полным валенком в Swift — это ведь правда! Хотя мне что-то подсказывает, что там оч много общего со старым Objective-C… Короче поглядим, может тоже под это дело несколько постов закину сюда, или еще куда-нибудь, мож на Тильду?^^
Так вот… Тильда для блога конечно неплоха, но такое разделение меня бесит, так что нет — просто отдельная категория.
О чем это я?..
А ну собственно про саму идею я рассказал, теперь просто берем идеи из книги:
Карта конкретного проекта должна отвечать на вопросы «почему», «что» и «как».
Для сверхбыстрого обучения нужно развивать способность к сосредоточенности.
Обучение должно быть прямым и непосредственным, а не косвенным.
В процессе прямого обучения сосредоточьтесь на том, что получается медленнее всего, и упражняйтесь, пока не устраните узкое место. Для сохранения знаний нужно тренировать память.
Т.е. надо сделать карту обучения, верно? Вот этим в следующием посте и займусь.
Второй пост. План.
Ну это такой себе «план» конечно же, но суть проста. Вспоминаю то, что уже знал — смотрю новые фреймворки — делаю 2-3 аппы «пошустрому» — делаю Игру (да, для начала это будет 3-в-ряд).
Первую аппу сделаю «для себя», давно уже хотел совмещенную todo с возможностью отслеживать собственный «прогресс» по ряду параметров. И чтоб бесплатно и без смс! Это и реализую.
Что юзаю вообще?
Для начала вот на этом ресурсе проглядел «Основы программирования». Да-да, смешно, знаю, но это бесплатно, а далее, врубаем скорость х2 и за час вспоминаем все.
После, на этом же сайте можно прикупить курс (1300р за месяц полного доступа это н4м), что я собственно и сделаю, думаю Swift не сильно отличается от старого Objective-C и за 5-6 часов на ускоренном просмотре можно освоить.
Потом, открываем ИксКод и тыкаемся: «а че тут вапсче? много поменяли? а где та панелька? а кнопка была такая красная, куда дели?» и тому подобное.
А дальше пилим аппу;) Все довольно-таки просто звучит, поглядим чего выйдет.
З.Ы. Интересно, а какой-нибудь аккаунт разработчика у меня остался с прошлых работ, нехоцца опять деньги в Купертино высылать=(
Изначально эти два поста были на сайте skazoff.dev
Четверг будет днем рабочим. Сегодня пост про «схемы оплаты» работы для веб-агентства или для фрилансеров.
Я уже писал ранее, что мы с товарищем открываем веб-агентства и для портфолио делали сайты. Плюс по знакомству (никогда не берите такие заказы!) попросили сделать несколько сайтов (примерно 20…)
Что имеем в итоге на данный момент? Оплачено было только 4 кажется сайта, сделано 7. Обещания оплаты за оставшиеся уже слышим примерно месяц, а тут еще и проблемы с бизнесом у человека возникли… В общем деньги эти ждать будем долго, а это плохо т.к. их планировали пустить в рекламу и продвижение еще одного проекта.
К чему я это, без ошибок конечно нельзя, но блин я ведь знал, что так будет… Теперь перейдем к схеме оплаты проектов. Большинство веб-агентств, как я успел узнать работают по схеме 50-50 т.е. 50% аванс и 50% когда проект готов. Это полная фигня (не мне это говорить конечно т.к. мы эти проекты взяли вообще по 0-100), но схема есть получше. Увидел я ее в одном интервью или вебинаре от владельца веб-студии.
Схема 50-25-25.
Т.е. мы берем 50% предоплаты (аванс), когда готов дизайн сайта мы берем еще 25% и после того как сайт готов полностью еще 25%.
Какие плюсы?
— Чаще всего мы получим минимум 75% оплаты даже если заказчик потом «соскочит» или скажет, что проект запускать не будем;
— Есть деньги на оплату работы программиста (с 50% оплата дизайнера, 25% — программиста, еще 25% — прочие расходы);
— Итог — нас сложно «кинуть»
По идеи по такой схеме работать согласятся не все, но если не согласятся — повод задуматься, а действительно ли они заплатят и т.д.
Вот такой вот коротенький рабочий пост — полуотчет, полумануал.
На данный момент без Гита не обходится практически ни одна командная разработка, большинство программистов-одиночек также имеют свои репозитории на гите и все чаще при приеме на работу HR’ы спрашивают помимо всего прочего и ссылку на ваш репозиторий. Окей хорошо, но кто-то думаю уже завис на фразе «система управления версиями», что это? И снова почитаем вики:
Система управления версиями — программное обеспечение для облегчения работы с изменяющейся информацией. Система управления версиями позволяет хранить несколько версий одного и того же документа, при необходимости возвращаться к более ранним версиям, определять, кто и когда сделал то или иное изменение, и многое другое. Такие системы наиболее широко используются при разработке программного обеспечения для хранения исходных кодов разрабатываемой программы. Однако они могут с успехом применяться и в других областях, в которых ведётся работа с большим количеством непрерывно изменяющихся электронных документов.
По факту, гитом могут пользоваться практически все от программистов до поваров, в наше время у всех есть какая-либо информация изменяющаяся с течением времени.
Как удобнее всего пользоваться?
Лично я использую SmartGit (в гугле найти не сложно) и считаю его лучшим git-клиентом для начинающих юзеров. Плюсы:
Кроссплатформенный
Бесплатный для некоммерческого использования
Имеет графический интерфейс
Внешне очень похож на различные файловые-менеджеры (тотже ТоталКомандер)
Конечно, просто сразу сесть и начать пользоваться получится далеко не у всех, но в сети уже существует огромное количество уроков по ГИТу благодаря которым освоить его не составит труда. По времени займет это думаю около 2х часов, зато польза огромнейшая.
Пробуем продвигаться дальше, статистика гугла и яндекса конечно радует последнее время, но совершенству нет предела!=) Начинаем осваивать Телеграм канал.
Суть — все обновления блога будут автоматом публиковаться на канале, позже возможно добавлю еще что-нить=) Так что все кто юзают данный сервис — велкам!=)
Вспомнил тут, что есть у меня акк Tumblr’a… Зашел — удалил всякую фигню (емае, это правда я писал?! под чем же я тогда был…), короче очистил, щас пробуем настроить кросспостинг. Главное сейчас не запутаться, что куда репостится — твиттер, фб, тумблер и прочие соцсети (и куда мне столько…)
[su_quote cite=»Терри Пратчетт. Интересные времена»]Хаос всегда побеждает порядок, поскольку лучше организован.[/su_quote]
Хаос в делах, хаос дома, хаос на компе, хаос на столе, хаос, хаос, хаос… Ненавижу. Хаос на компе не дает работать — отвлекает. Хаос на столе — аналогично, отвлекает/раздражает/бесит >_<
На данный момент я дожил уже до хаоса в голове, вроде бы и дел куча, а ты прыгаешь с одного на другое в итоге ничего толкового не делая за день, так и до прокрастинации недалеко… Какие есть варианты решения такой фигни?
Что интересно, при «гуглении» фразы «контроль хаоса» — первым в списке падает одноименное приложение. По сути простой менеджер задач, может чуть удобнее других, но не суть, факт в том, что они (менеджеры эти) нафиг не нужны. Почему? Ну стоит у меня Эвернот (для длительных заметок) весь такой зашифрованный и вандерлист для ежедневных задач + каких-то быстрых заметок. Так вот в вандерлист я регулярно забываю заглядывать… Вывод? Для начала нужен самоконтроль! Исключаем все отвлекающие моменты:
Отвлекают игры? — удаляем все нафиг. Фильмы? — удаляем и блокируем сайты онлайнкино и т.д. и т.п.
Нет желания что-либо делать — пора побороть лень, хаос тут не при чем=)
Всякие соцсети, почта, твиттеры, телефоны — на время работы выключаем
И главное — перестать откладывать все «на понедельник». Так всю жизнь можно прождать «удачного момента начать» и них** в итоге не сделать. Каждый вечер перед сном спрашивайте себя — «Что я сегодня сделал для достижения своих целей/своей мечты?» и если ответ «нифига я не сделал» — стукните себя по голове пару раз xD
[su_quote cite=»Жозе Сарамаго. Двойник»]Хаос — это порядок, который нужно расшифровать.[/su_quote]
В связи с тем, что мне предстоят поиски второй работы (не фриланс и не какая-нибудь фирма однодневка) решил быстренько восстановить знания по Андройду, методологиям разработки, СУБД и прочим и подобным. Поскольку качество и читабельность моего кода мне самому крайне не нравится — буду исправляться, в связи с этим посты по играм временно приостанавливаются, а начинаются посты по «учебе», ну а в моем случае восстановлению знаний.
Буду писать что читаю, какие уроки выполняю, примеры кода выкладывать и т.д. Придется трудно, т.к. абстрагироваться от всего того что уже знаешь — это ппц. Часть действий я уже на автомате делаю, даже не задумываясь почему так, а иногда это неправильно — придется ломать привычки=(
Итак цель: в кротчайшие сроки (допустим до января 17ого) исправить все свои косяки в написание кода
Средства: все учебники и сайты какие попадутся, стэковерфлоу, друзья кодеры/программеры, различные курсы и уроки онлайн
Что нужно знать мидлу:
Опыт коммерческой разработки от 3+ лет (ну это есть, хотя подтвердить будет трудновато, ох уж эти неофициальные работы);
На данный момент нужны знания Android API 14 и выше;
Знать основные библиотеки (обязательно! про это позже набью отдельный пост, какие зачем и когда);
Знать ООП и структур данных (на ОТЛ+++);
Понимание принципов клиент-серверной архитектуры;
Понимание архитектуры и принципов работы HTTP(s), REST, SOAP;
UML (все не понимают зачем в универе то учат, но надо-надо);
Желательно умение разработать тесты;
Хорошее знание sqlite;
Уверенная работа с Android Studio, Gradle, Git, CVS, SVN;
Разговорный английский (Intermediate и выше).
Вот такие вот примерно требования, отмечу что сейчас многие фирмы просто спрашивают ссылки на ваш гитхаб или гугл аккаунт разработчика. Все требования выше взяты с описания вакансий на различных профильных сайтах.