iOS7 с плоским дизайном – эволюционный шаг вперед

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

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

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

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

Здесь  еще офис Майкрософт вспомнился – весь успех благодаря привычкам людей пользоваться бумагой и разбиением на страницы.

Примерно так я и вижу переход к плоскому дизайну (метро-дизайн) – люди уже довольно хорошо научились пользоваться мобильными устройствам, да и компьютерами в целом.
Поэтому уже нет необходимости проводить аналогии со старым и “привычным”, чтобы легче было учиться – кнопками, тумблерами и тому подобным механическим устройствам управления.
И появляется больше степеней свободы.

Итак.
Дело даже не в плоском интерфейсе, дело даже не в том, будет ли новый интерфейс успешен или нет. А в том, что начался уход от интерфейса, симулирующего объемные объекты.
А что нового покажет Apple еще предстоит увидеть.

Ссылки по теме:
1. “iOS 7” by Matt Gemmell
2. История скевоморфизма в продуктах Apple

Знакомство с андройдом как разработчика

Вступление

В связи с популярностью Андройда, захотелось мне попробовать что-то написать под него.
Знакомство состоялось.
До знакомство сложно было представить, что это ткое.
С одной стороны у меня по положительному шуму в интернете сложилось впечатление, что на Андройде классно приятно писать, что также явилось одной из причин, почему захотелось глянуть глубже.
С другой стороны, на данный момент знакомсто с Анрдойдом как пользователем закончилось, завершающая фаза освещена на странице “Not enough storage on android device” в вопросах, ответах и комментариях.

Знакомство

Приятно то, что в Android используется язык Java, и если есть опыт разработки с использованием Java, то все довольно просто.Google рекомендует использовать Eclipse, но я пробовал в IDEA, тем более есть приятный опыт разработки на Java именно в IDEA.

Во время экспериментов, в голове сидел iOS, с которым часто сравнивал. Поэтому буду часто упоминать и в посте.

Сразу бросилось в глаза то, что очень много приведений типов использовалось, когда взаимодействие осуществялось через вездесущий класс Intent. Соответственно ошибки неверно использованных типов могут отлавливаться только во время исполнения.

Страницы с элементами управления делаются с использованием класса android.app.Activity (логика) и xml-разметки (визуальное представление). Но вся связь между ними пишется вручную.
В iOS к примеру связи делаются перетаскиванием мышью, при этом генерируются новые классы с членами, что дает возможность проверять несоответствие типов во время компиляции.
Видимо в Андройд тоже можно такой подход использовать, но это не является распространенной практикой, да и было бы более громоздко писать, поскольку нет аналогов XCode для iOS, который делает большую часть работы для разработчика.

Понравилось, как реализована совместимость. Если коротко, то есть так называемые Support libraries. И если нужно, чтобы приложение для более новой версии Анрдойда работало на более старой, то поставляется с библиотеками, которые похожи на кусок новой части Анрдойда, которой не хватает в более старой версии.

Для анимации нужно указывать названия переменных как строки, используется рефлексия – еще один источних ошибок.
В iOS видимо тоже используется рефлексия, но она скрыта от разработчика приложений.
Аналогичная ситуация в WPF от Microsoft (хотя это нельзя отнести к mobile development, но думаю, аналоги будут, а может и уже есть, на гаджетах от Microsoft) – для этого разработан механизм Dependency Property, в случае необходимости их создания в своей компоненте очень поможет помощь Visual Studio – опять натыкаемся на то, что среда разработки сильно помогает.

Для отображения списков данных используется класс ArrayAdapter.
Сначала было бы логично подумать, что он используется только для хранения данных. Но оказывается, что он также и связан с графическим представлением – нет четкого разделения на представления и данные. До конца не понял, как у них реализован MVC или его аналог, неочевидное разделение ответственностей. От Google-а ожидал чего-то более качественного.

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

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

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

Выводы

Андройд сильно молодой и это видно.
В архитектурном плане ему еще очень далеко до технологий Apple или Microsoft.
Я не вижу, как Google приблизится к ним, не выпустив собственной среды разработки, но она сразу не появится.

Андройд очевидно будет развиваться и использоваться на все большем количестве устройств. Мне правда не видно, как эти устройства могут стать лучшими среди конкурирующих. Универсальному редко удается стать лучшим в конкретной нише.

Думаю, будут компании, если они еще не появились, которые будут заниматься кастомизацией Андройда – приходит аналогия с различными коммерческими дистрибутивами Линукса.
А сам Гугл пока зарабатывает на том, что вендорам гаджетов продает свои приложения, хотя сам андройд и бесплатен.

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

ИТ меняет все … как чему приведет? понятия не имею…

Как меняют производительность интернет-технологии и что потом?
Начнем по порядку.
Машинистки уже не печатают целый лист, а только исправляют то, что нужно – одно измерение производительности имеем.
И собственно на этом Майкрософт и сумела заработать бОльшую часть своего состояния, обеспечив переход с печатных машинок на MS Office.
Идем дальше.
Что делает один программист с офисными сотрудниками?
Он медленно но уверенно заменяет их.
Раз написал софт – на всегда упразнил рабочее место.
Это еще одно измерение.
А что дальше? Творение программиста можно скопировать в другие офисы с той же деятельностью.
В одном офисе написал – во всех офисах убрал рабочие места.
Да, это утрировано, но я думаю суть понятна.
Для тех, кто говорит о высокой оплате труда программиста, не удосужив себя хоть немного разобраться, почему программистам выгодно платить большие зарплаты, думаю, ответ уже понятен – все дело в производительности и отдачи для фирмы. Да, это часто более рисковано, чем нанять человека, но оно того стоит.
Но…. Если это чисто офисная работа, то если раньше компания была видна, как правило, в своей местности, то теперь она видна во всем мире.
В теории да, на практике сложнее – ВЕД, языковой барьер, культура и т. д.
Но в целом конкуренция жестче и интернет стирает и границы, и многие компании….
В итого интернет стирает еще одно измерение.
Кстати, в банках сейчас к примеру комиссии при оплате счетов через интернет ниже, чем в кассах.
Касательно самой информации – самый яркий пример – это Википедия, которая содержит меньше ошибок, чем Britannica. И если раньше нужно было идти в библиотеку, то сейчас можно узнать то же, просто когда взбрело, например во время поездки в метро – это уже благодаря недавно появившимся мобильным устройствам. В Индии, к примеру, интернет доступен большему количеству людей, чем туалет.
Теперь сюда добавляем Open Source Software, которое опять таки стало возможным в полной мере только благодаря интернету и усовершенствованию средств разработки ПО – получаем автоматизацию новых отраслей еще быстрее, чем это было раньше. Софт можно назвать «живой информацией», динамической, можно пожинать только ее качество, а не изучать, как в той же Википедии.
Кстати, программирование очень быстро развивается именно благодаря тому, что в нем наиболее часто используются преимущества интернета.
Если выше были количественные изменения, что само по себе уже очень существенно, то дальше начинается самое интересное.
Начинаются вещи, которые раньше были просто не возможны.
Представим эксперта в некоторой области. Если ему удается вложить с помощью программиста хотя бы 10% своих знаний, то знания большинства середнячков в данной сфере уже не нужны.
А где нужен человек?
Вопрос в том, какой человек.
РОботы медленно, но уверенно развиваются, и все в какой-то момент все будет опять очень быстро меняться уже благодаря им.
И если вы приходите на работу и точно знаете, что и как будете делать, все стабильно и нет никакого риска, а значит творческой составляющий – то ваше рабочее место рано или поздно исчезнет, возможно не сразу, постепенно.
Например, авто без водителей, которыми уже давненько Гугл занимается.
Сдесь хочу вспомнить о 3D-печати. Что это? А по сути это создание единичных копий промышленными или близкими к ним технологиями. Это уже доступно практически каждому. Так что необходимость «ручной работы» тоже значительно уменьшается.
А вот то, что дальше, я абсолютно не понимаю, к чему приведет.
А это изменения в образовании – мне сложно представить, что произойдет, когда люди будут учиться скажем в 100 эффективнее – с текущей системой образования это более чем реально, тем более она чаще вредит, а не приносит пользу. Уже и так довольно много качественной информации касательно «настоящего» образования в интернете: по запросу «инфобизнес» можно очень много чего найти – далеко не все качественно, но при желании качествого очень много.
Но критической массы еще нет, все таки правительства сильнее со своей системой образования, чем пока еще малочисленное онлайн-образование.
Но это временно. Уже сейчас очевидно разделение на две группы людей.
Одни думают, что «кризис пройдет» – нет, не пройдет!
Вторые постоянно учатся – это органический процесс во время своей основной деятельности. И пропасть между первыми и вторыми растет.
А что будет, когда по вебконференции в той же школе будет читать лекцию лучший преподаватель страны? Куда денутся горе-преподаватели, которых более 90%? … я не знаю…
А кто-то подумает, а если программисты «все запрограммируют», тоже станут не нужны?
Нет, не станут. Это будет как спорт – у меня такая аналогия.
Если раньше компании-конкуренты можно сравнить с людьми, которые бежали на перегонки, то теперь они на автомобилях.
Понятно, что произойдет с теми, кто еще пешком?
А программисты где? А они являются теми, кто чинит авто, причем на ходу, потому что останавливаться нельзя.
Будет востребовано умственная работа и творчество.
А если уж работать на себя, то нужно искать что по душе и становиться лучшим – так сказать «нарезать ниши» – искать то, что сильно нравиться и становиться как можно лучшим. Больших успеход добиться не получится, если занимаешься не тем, что по душе, а значит в таком случае “вылетаешь с обоймы”.
P.S. Только закончил писать и попалась на глаза статья, очень в тему: America Has Hit “Peak Jobs” – только подтверждает то, что написано выше.

Софт, который я использовал на iPhone во время путешествия

Во время поездки на Бали подумал о том, что можно попробовать себе несколько облегчить жизнь с помощью iPhone.Главный экран у меня выглядел следующим образом:

Теперь по порядку.

Photos (стандартное приложение) – очевидно фотографии.

Camera (стандартное приложение) – очевидно создание фотографий и видео. На iPhone 4S очень даже ничего получается и видео, и фотографии. Отдельно возить фотоаппарат с объективом не хотелось. Мыльницы была, хоть и немного лучше качество, но в iPhone дополнительный плюс – это сохранение места, где создана фотография и время. Мыльницу так ни разу не доставал.

А с выходом iOS 6 еще появилась возможность содавать панорамы за несколько секунд. Здесь пример одной из них.

Calendar (стандартное приложение) – удобная штука, чтобы не забыть, что-то сделать. Хотя в поездке мало что нужно делать, но иногда нужно: точное время вылета, купить что-то, разные мелочи – позволяет освободить голову от лишних мыслей и наслаждаться путешествием. Особенно удобно, что поддерживается веб-интерфейс и синхронизация устройст и работа оффлайн. Создавал события в основном с Mac-book, читал уже на iPhone. После этого уже использовал и в коротких поездках.

Дополнительно также рассматривал календарь на возможность полностью на него перейти с Microsoft Outlook. На данный момент останавливают несколько вещей: не хватает Offline-клиента для Windows, а также категорий с возможностью выделения разными цветами. А уже хочется забыть про календарь, доступный только “дома”.

Clock (стандартное приложение) – здесь особых пояснений не требуется: часы и будильник. Плюс удобно также, что есть возможность вывести на одном экране время в разных точках Земли. При перелетах удобно.

Settings – чаще всего, это проверка наличия Wi-Fi.

Messages – на всякий случай. А также подтверждение при снятии денег с банкомата 🙂

Weather+ – погода. В отличии от стандартного приложения работает, без наличия интернета. Когда есть интернет, приложение кеширует прогноз погоды, потом его показывает. Также удобно, что можно добавить несколько городов сразу.

Mail (стандартное приложение) – ну, Mail 🙂

Maps (стандартное приложение) – Карты от Apple, которые пока еще глючные, но уже красивые 🙂 В целом не использовал, скорее пробовал. Тут также следует отметить, что те же Google Maps не очень хороши в поездках, в них частенько отображается некорректная информация. Они скорее хороши в больших населенных пунктах, но в данном случае нужно к ним относиться острожно.

Dict EN-RU Free – Бесплатный англо-русско-английский словарь, который работает оффлайн. Слов не очень много, но достаточно. Индонезийцы больше и не знают.
В следующий раз буду еще брать и словарь с местным языком. Как туристу достаточно и английского, но иногда было бы проще сказать индонезийской слово, ну и плюс с местными жителями было бы приятнее общаться 🙂

Light – использует вспышку как фонарик. Не припомню, чтобы активно использовал, возможно всего лишь несколько раз включал.

PDF Reader Lite – читалка PDF-файлов. Чаще всего использовал в аэропортах.
Недавно узнал об ограничении бесплатной версии: открывать максимум 10 разных файлов. После этого начал пробовать стандартный iBooks для чтения PDF. Сейчас не припомню, почему раньше не использовал iBooks – то ли не умел еще PDF-ы заливать, гыг, то ли PDF не поддерживался. Сейчас вообще через Dropbox заливаю файлы.

Currencies – Currency Converter – конвертер валют. Удобно что работает без интернета, при его наличии загружает обновленные курсы. Очень полезная штука, когда за короткий период времени сталкиваешься с гривнами, рублями, долларами, дирхами и рупиями…

Simplenote – приложение для заметок. Перешел на него после того, как надоели проблемы синхронизации в Evernote. Работает гораздо надежнее, но тоже не идеально.

Dropbox – начал использовать этот сервис за несколько часов до поездки, для резервной копии документов, но потом это приложение начало меня все больше и больше радовать – одно удовольствие ним пользоваться! До этого использовал Google Drive, и, в целом, видел, что он глючит. Но думал, это связано с тем, что я разные извраты делаю: компилирую сразу на Google Drive с временными файлами, что-то там переименовываю. Также Google всегда ценил за качественность технологически сложных задач, чего не скажешь у них про usability. Но когда я просто скопировал папку в Google Drive с компьютера, а на другом случайно заметил, что некоторые файлы не скопировались без какой-либо закономерности, то решил быстро искать альтернативу. Поскольку был наслышан о Dropbox, его и установил. Не могу нарадоваться, я себе уже и фото через него с iPhone загружаю, и PDF на iPhone, и многие другие мелочи, а предварительный просмотр документов еще и избавил от необходимости с бумагами в руках ходить, хотя конечно бумаги желательно имень на всякий случай.

(Если кто-то решит попробовать Dropbox, просьба использовать для регистрации следующую ссылку http://db.tt/y1sCGUCe – таким образом и вы и я получим по 500Мб дополнительного дискового пространства)

Хочу отметить также, что в последнее время Google Drive – не единственный сервис Google, от которого я отказался: перешел с Youtube на Vimeo из-за непонятных метаморфоз с качеством видео при его загрузке на Youtube, с Google Docs/Drive сперва на Evernote, потом на SimpleNote – в Google Docs не было возможности оффлайн редактирования заметок, возможно уже и есть, да и интерфейс оставляет желать лучшего, с Android на iPhone.
Мыслей вернуться назад не появлялось. Думаю, это еще не конец конец миграции с Google…

EveryTrail – интересное приложение в путешествии. Позволяет записывать передвижение с отметками на карте, использует Google Maps. Потом есть возможность просмотреть свой маршрут как слайдшоу с просмотром фотографий, заметками – интерактивно и приятно. Правда периодические его выключал, потому что GPS довольно быстро использует ресурсы питания…

Но не смотря на хорошую задумку, приложение использовать вероятнее всего больше не буду. Когда записывал маршруты длительность несколько часов, то все было ок. Но на длинном маршруте в этот раз начались глюки. При удалении фотографий или “ratake photo” уже в самом приложений что-то невнятное начало происходить при их просмотре – неправильное соответствие мест и фотографий, а позже еще заметил, что некоторые фото не были загружены в камеру, иногда удалялись не те фото (благо, такое не часто происходило), а также в некоторых фотографиях не сохранялись координаты, с которых делался снимок. Ну и в завершение ко всему мне так и не удалось выгрузить маршрут в интернет, а очень хотелось. Суппорт молчит. Надежнее выгружать фото в Picasa и просматривать карту с размещенными своими фото, хотя в данном случае, конечно, маршрут полностью проследить не получится.

Все что осталось – это картинка, вырезанная из скриншота:

Notes (стандартное приложение) – приложение для заметок. Поскольку и Simplenote, и Evernote глючат, то в поездке проводил испытания Notes. Иногда тоже проскакивали глюки, но потери данных не заметил, только дубликацию. Похоже, сделать 100% надежно при низком качестве связи – это сложная технологическая задача. В любом случае, при появлении тегов или категорий вероятнее всего перейду с Simplenote на Notes.

Phone (стандартное приложение) – чтобы не забыть, что iPhone – это, кроме прочего еще и телефон :). Для местной связи использовал другую железяку.

Safari (стандартное приложение) – веб-браузер, который меня устраивает. А еще недавно появилась функциональность сохранения веб-страниц с offline-доступом – в путешествии иногда довольно удобно.

Music – music)

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

UPDATE:
Нашел удобное приложение:
Budget . Много функций. 80% не используется. Но то, что можно использовать, работает стабильно и без сюрпризов.
Можно отослать транзакции по e-mail. А из e-mail сохранить в тот же Dropbox – это на тот, случай, если возникнет желание просмотреть данные в Excel и что-то с ними сделать.

Unit Converter – перевод между различными единицами длин, температур, веса и т.д.

Если есть, что добавить, буду рад прочитать в комментариях.

КУЛ ИТ. О заказчиках и ИТ-аутсорсинге

Павел Обод – CEO Sloboda Studio на КУЛ ИТ рассказывал о создании и работе аутсорсинговой компании и спецификой работы с заказчиками.


В ближайшие дни также запускается проект Яркий Аутсорс по обучению тому, как создать свою аутсорсинговую компанию.
Там же можно найти две его книги об ИТ-аутсорсинге: как создать аутсорсинговую компанию, и как увеличить прибыль существующей.Также можно прочить его статьи на DOU.UA.

О компании Sloboda Studio:  
Технологии: Ruby on Rails, Android, iOS.
30 чел.
Офис в Харькове.
Есть удаленный постоянные сотрудники.


Итак.
Поскольку компания появились из фриланса, где сравнительно много свободы, то такая же свободна продолжается оставаться и компании.

Люди ищутся автономные – люди, которые уже заинтересованы в росте, чтобы не нужно было “мотивировать”.

Как понять заказчика?
“Хочешь словить кошку – думай, как кошка”

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

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


Женская линия поведения у заказчиков:
* внимание
* истерики
* требования
* иногда пассивность.

Заказчик – женское поведение – слушатель – пассивная позиция
Исполнитель – мужское поведение – выступающий – активная позиция.

Если мы заказчики, то хотим:
* перед началом узнать стоимость
* стоимость средняя по рынку (чтобы не чувствовать себя обиженный :)))))
* высокий сервис
* соответствие срокам и предупреждения в случаях измений планов или форсмажорах
* гарантия

Настроение у заказчиков такое же, как и у вас, когда вы заказываете кофе.

В ИТ зависимость заказчика от исполнителя очень большая.


Заказчик привыкает к суммам. (причем чтобы не случилось – заказчик привык платить. Часто при периодической подписке, на например, люди платят, потому что лень отписываться.
Также может быть и в случае с ИТ проектами.
Заказчик не соскочит, когда привык – нужно уж очень сильно что-то испортить, чтобы это случилось)

Заказчик привыкает к нам.

Дружба с заказчиком:
* Если удаленность, то пытаться ее размыть (например фото в ФБ. Фото, ДР, видео чаты – легко и эффективно, поездки заказчика к исполнителю)
* регулярность общения (не создавать “ощущение заброшенности”. А то, обидется и не захочет платить 🙂 )
* честность и прямота (сложная тема)
* преданность и ответственность делу (либо есть, либо нет. Полезный навык исполнителя для заказчика – но способов поощрения нет)
* бизнес-подход к задачам клиента.
* анализ потребностей заказчика
* прозрачность + доверие (рассказывать побольше заказчику, что у нас происходит, даже если это не очень важно)
Если все условия исполняются, то дружба неизбежна 🙂

Как потерять заказчика: 
* не следить за проектом
* поставить плохого исполнителя
* необосновано ставить часы/цены
* игнорировать

Риски исполнителя при работа с заказчиками:
* управление тобой и твоим временем.
* паники и истерики
* вербовка твоих исполнителей
* монополия заказов и зависимость


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

Кейс, совсем недавний.
* Маржа 60% для ПМ-овнера.
* Один ключевой разработчик в команде.
* Заказчик не знал рейты девелоперов, но потом узнал и сказал, что его “грабят”.
Решение.
* Последние 3-4 месяца на прямую не участвовал в проекте, и поэтому было недовольство заказчика психологическое – нужно быть “в теме”, причем не обязательно тратить много времени.
* Подготовил отчет по аутсорсу для Украины в сравнении с другими странами и показал заказчику – заказчик “бурчал”, но согласился.
* повысили ЗП сотрудиками и понизили рейт заказчика. В итоге получилось 20% маржи (вынужденная мера, поскольку не было денег для ЗП сотрудникам)
* стал более вовлеченным в проект.
* ушли потом всего 2 разработчика. Но в итоге вырос один из оставшихся. Появились новые люди и т.д. (Да, таки “незаменимых людей не бывает”, как говорил Иосиф Виссарионович)

* нашел новых заказчиков и этот заказчик перестал быть ключевым (заказчик выиграл в краткосрочной перспективе, но проиграл в долгосрочной)
Сейчас бы:
* не уменьшал бы рейт для заказчика.

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

О клиентах.
* нужно стремиться к постоянным заказчикам. Бизнес начинается с постоянных клиентов. Появляются деньги, возможность прогнозировать, реинвестиции, рост.
* Контролировать все равно нужно.
* поднять рейт на 10% – доп. прибыть. Мотив: “гречка дорожает”
* как относишься к сотрудникам, так они относятся к клиентам.
* иногда нужно увольнять заказчиков. (Принцип 80-20).

Лит.
Книга. “Кармический менеджмент”
Управлять бизнесом с точки зрения кармы 🙂
Я – в центре. Вокруг – потребители, сотрудники, поставщики, мир (пример для “мира”: волонтерство. Практикующие говорят, что это работает, но не понимают как :)).
Иногда может получиться отжать высокий рейт, но в итоге заказчик уйдет.

Несколько слов о курсе “Яркий аутсорс
Как создать свою компанию.
* моя история
* выбор ниши
* как стартовать и сколько нужно денег (схож с консалтингом – не нужно много денег для старта)
* где и как набирать первых сотрудников
* подводные камни (первое время – нужно много работать, но потом почти пассивный доход)
* как не стать заложником
* дорогу осилит идущий 🙂


Большинство заказов из фриланс-бирж.
Часто есть небольшие заказы, но если все ок – то потом появляются более крупные от тех же заказчиков.

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


Преимущество аутсорсинг ИТ-бизнеса в Украине – нельзя захватить рейдерством, а если захватить, то все развалится. Власти не понимают, как толком все работает, как деньги идут и т.д.

Все наши заказчики храбрые – их за это нужно уважать!

Первое iPhone приложение в ожидании review в AppStore

Отправил свое первое (пробное) приложение на review в AppStore.

Самые интересные запреты

В списке запретов замым интересным показалось следующие пункты:

  • Apps that duplicate apps already in the App Store may be rejected, particularly if there are many of them, such as fart, burp, flashlight, and Kama Sutra apps. (свистелки и перделки больше не принимаются 🙂 )
  • Apps that link to external mechanisms for purchases or subscriptions to be used in the app, such as a “buy” button that goes to a web site to purchase a digital book, will be rejected (все продажи только через Apple)
  • Any app that is defamatory, offensive, mean-spirited, or likely to place the targeted individual or group in harms way will be rejected. Professional political satirists and humorists are exempt from the ban on offensive or mean-spirited commentary (политики – козлы отпущения, хотя раньше банили такие приложения. Хорошая статья с 9-тью кейсами бана приложение доступна здесь.)
  • Apps portraying realistic images of people or animals being killed or maimed, shot, stabbed, tortured or injured will be rejected (“Лики смерти” не пропустят)
  • Apps that include games of Russian roulette will be rejected (Джодж Карлин видимо думает иначе :))
  • Apps containing pornographic material, defined by Webster’s Dictionary as “explicit descriptions or displays of sexual organs or activities intended to stimulate erotic rather than aesthetic or emotional feelings”, will be rejected (различают порнографию и творчество – приятно)
  • Apps that include the ability to make donations to recognized charitable organizations must be free

Полезные ссылки

Для меня полезными оказались следующие ссылки:

App store Approval Process (одна из родных страниц)
https://developer.apple.com/appstore/resources/approval/index.html

How to import a developer profile into Xcode?
http://forums.gamesalad.com/discussion/40223/how-to-import-a-developer-profile-into-xcode

How to upload an app to the App Store with XCode 4
http://www.touch-code-magazine.com/how-to-upload-an-app-to-the-app-store-with-xcode-4/

Prepare for App Submission
https://developer.apple.com/appstore/resources/submission/index.html

How to upload an app to the App Store with XCode 4
http://www.touch-code-magazine.com/how-to-upload-an-app-to-the-app-store-with-xcode-4/

Error: “No identities are available for signing” Xcode 4.3.1
http://stackoverflow.com/questions/9635939/error-no-identities-are-available-for-signing-xcode-4-3-1

Устанавливаем Git под Mac OS X / XCode

Когда начал писать под Mac OS X в XCode, то увидел, что в нем есть поддержка Git.
Решил его и использовать.

Знакомство с git

Если с Git-ом не сталкивались, то може быть полезным сайт git – fast-version-control (есть русский перевод).

Для тех, кто знаком с SVN, может быть полезной статья Git Svn Crash Course. Пользователям Subversion по началу Git может показаться слегка наркоманским 🙂

Поддержка Git в XCode 

Установить Git можно, начиная со страницы git-osx-installer


Если появилось желание существующий XCode проект посадить под Git, то могут быть полезными следующий ссылки:
1. Using Git with an existing XCode project
2. Setting up a git repository in XCode for a pre-existing project

Клиент с графическим интерфейсом можно найти на странице gitx.
Клиент очень удобный, но, похоже, уже 2 года не поддерживается.
Последний раз я скачивал его со страницы http://gitx.frim.nl.
OpenInGitX позволяет добавить кнопку в панель инструментов Finder-а, чтобы можно было открывать GitX, нажимая на нее, если вы находитесь в репозитории git.

Напомню, чтобы увидеть служебные файлы Git, нужно включить отображений скрытых файлов.

Есть также еще один клиент с графическим интерфейсом gitk, но я его не использовал.

Далее используем в XCode c помощью команды File -> Source control -> Commit… и близ-лежащих.

Некоторые полезные операции

Git ignore file for Xcode projects describe at :

Checkout the revision you want to work with.
$ git reset --hard abcd93

More info: http://stackoverflow.com/a/890006/13441

To follow history after file renamed:
git log --follow
More info: http://stackoverflow.com/a/1321962/13441

Revert changes:
git checkout path/to/file/to/revert
git checkout -- .
More info: http://stackoverflow.com/a/52713/13441

Сommit all deleted files to Git
git add -u
This tells git to automatically stage tracked files – including deleting the previously tracked files.
More info: http://stackoverflow.com/a/1402793/13441

Find children revisions (commits)
git log -g
More info: http://www.kernel.org/pub/software/scm/git/docs/git-log.html

Rename project in XCode:
1. Rename project itself: http://stackoverflow.com/q/5416677/13441
2. Rename folder with sources with git to preserve history with git mv
3. Fix XCode project: http://stackoverflow.com/q/8262613/13441

SimpleNote после Evernote – первые впечатления

Переход на Evernote

Несколько месяцев назад попробовал для себя Evernote.
До этого использовал Goolge Docs. Но в Google Docs нельзя было редактировать документы в офлайне да и в целом не очень все юзабельно.

Сначала Evernote очень приятно удивил, особенно юзабельностью.
Но через некоторое время я начал подозревать глюки с головой… “вроде записал” а оно не записалось….
Но как оказалось в данном слючае глюки все таки были с Evernote.

Потери данных в Evernote

Evernote довольно часто теряет данные, когда метку часто редактируешь, причем на разных девайсах.
“Забыл нажать Done” – не подходит.
Кстати суппорт тоже как-то странно реагирует.

А еще самое интересное происходит, когда длинная заметка.
Я так прочитал книгу на iPhone-е и при этом копи-пастил фрагменты книги во время чтения в Evernote, получился конспект.
Но когда я ее перечитал, некоторые фрагменты встречались дважды, а некоторые, похоже, исчезли (сложно это вспомнить, потому как намеренно хочется забыть, когда в Evernote скинул 🙂 )

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

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

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

Первый взгяд на SimpleNote

Вот и присмотрел я SimpleNote.
Пока пробовал только веб-интерфейс и iPhone-приложение.
Видимо API открыто и доступно множество клиентов и для других платформ.

Сразу обрадовало то, что заметки все сразу скачиваются и можно полностью спокойно в офлайне редактировать с iPhone.

Синхронизация очень классно сделана –  я о таком мечтал, но не особо надеялся 🙂
Приведу пример теста, который я проводил.
Создал заметку с несколькими строками в веб-клиенте, она синхронизировалась на iPhone.
Потом отключил iPhone от Wi-Fi и начал ее редактировать в конце текста, а также потом редактировал ту же заметку через веб-интерфейс в начале текста.
Потом я опять подключал iPhone к сети и захожу в SimpleNote.
И вуаля! Добавленный кусочек текста  с iPhone версии вставился именно в нужное место и его можно было увидеть в веб-клиенте.

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

Ну и как бонус в веб-клиенте можно просмотреть историю заметки.
В Evernote даже в платной версии такого нет, есть только бекапы.

Из минусов SimpleNote после Evernote:
Нет ссылок на отдельные публикации из веб-клиента (есть в планах, правда что-то затягивается).
Нет форматированного текста, хотя эту фичу я редко использовал (для гиков есть поддержка Markdown).
Нет заголовков заметки – берется первая строка заметки считается заголовком.

В итоге, первые впечатления очень хорошие, хотя более развитое форматирование  все таки не помешало бы.

Update. Спустя 3 недели.

SimpleNote web interface и iPhone клиент работает очень даже ничего.
Единственно, что иногда бывают дублирующие строки в заметках, видимо когда часто происходит синхронизация и связь с интернетом не стабильная.
Но в целом с этим можно мириться, все гораздо-гораздо лучше, чем Evernote.

А вот десктопные клиенты я сначала себе поставил, а потом посносил.
Интерфейс мне понравился.
Но иногда создается впечатления, что они при синхронизации как бы не замечают, что метка на сервере изменилась и в лучшем случае не подтягивают изменения при синхронизации, в худшем – затирают изменения на сервере.
Подозреваю, что это проблема не склиентами (они кстати thirty party), а с API Simplenote, поскольку симптомы одинаковые у двух разных клиентов.
Пробовал работать с Metanota и  ResophNotes.

И меня что-то разочаровала публикация на суппорте – оказывается, что система не проектировалась так, чтобы данные не терялись при разрыве связи. Для мобильных клиентов это вообще что-то непонятное….

Ох доиграются они, что доберется до них Google, Apple или тот же Microsoft и сделает технически надежное решение.
А плюнет юзер на юзабили в обмен на стабильность до первой замеченной пропажи данных…

Update 2. Наступающий реквием проблем с заметками на разных устройствах…

… у Apple уже Notes на iPhone работают, в клауд сохраняются, и вот веб-интерфейс добавился и работают очень даже ничего, предсказуемо в случае разных извратов…
Пока тестирую.
Жду добавления тегов или категорий и видимо скажу SimpleNote-у, Evernote и тому подобным: Ты кто такой? Давай, до свидания!
Хотя нужно добавить, что Evernote уже перестал тупо удалять данные, которые считает нужным, при проблемах синхронизации.

Работа разработчика софта в компании и во фрилансе – различия и польза друг другу

Была мысль поделиться своим опытом о том, какая разница между работой в компании и во фрилансе. Но как-то все не доходили руки, чтобы закончить статью, и все время появляется новый опыт, и понимаешь различие все глубже и глубже. А тема для меня теряет актуальность и соответсвенно интерес. Но поскольку так я никогда бы и не закончил, то выкладываю то, что есть. …. возможно я уже и сам с чем-то не согалсен из того что написал ниже.
Итак, поехали.Часто при сравнении фриланса с работой в компании в офисе в основном можно встретить следующий аргументы. Фрилансеры говорят, что свободный график и больше свободы. Работающие в компаниях говорят что у них все стабильно и понятно, а фриланс – это как то не стабильно.
Я попробую коротко собрать аргументы “за” и “против”, по возможности, со ссылками. Более того, имея определенный опыт работы фрилансером, я начал понимать, на сколько больше возможностей было при работе в компании.
Тут следует оговориться, что работа как в разных компаниях, так и во фрилансе уж очень сильно может отличаться, поэтому эта статья ни в коем случае не претендует на полноту, а скорее взгляд через призму моего опыта и коллег, с которыми я общался.

Что такое фриланс?

Чем больше пытаюсь точно сформулировать, тем меньше начал четко понимать, что же это такое 🙂

Фрилансер – это внештатный работник.
Это может быть кратковременное сотрудничество, как принято обычно считать.
А также это может быть и долговременное сотрудничество. В целом как заказчик, так и исполнитель не заинтересованы в том, чтобы тратить время на поиск друг друга, и поэтому при успешном кратковременном сотрудничестве оно часто перерастает и в долговременное.
Отличия от работы по найму все таки значительные. Как правило легко договориться о гибком графике, неполной занятости, нет необходимости все время находиться в офисе заказчика. Но от фрилансера требуется более высокая степень организованности, дисциплины и ответственности – это часто становится камнем преткновения успешного сотрудничества.
Заказчику это может быть выгодно в плане экономии на офисном помещении или же когда нет возможности полной загрузки человека. Работа со специалистом, которого по каким-то причинам нет возможности или желания брать в офисе – находится в другой стране, не хочет тратить время на дорогу и т.д.

Что такое “работа в компании”?

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

Некоторые очевидные плюсы и минусы работы в компании и фрилансе

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

Польза опыта работы в компании для фриланса

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

Польза опыта работы фрилансером для компании

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

Стабильность и возможности роста в фрилансе и компании

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

Рост

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

Необходимость обучения

Чтобы быть самостоятельным, нужно постоянно учиться, желательно это вообще включить в свое повседневное расписание. Не смотря на то, что это требования для нашей профессии довольно высоко и при работе в компаниях, во фрилансе оно еще выше.
Как я уже упоминал выше, в компании как правило больше людей вокруг, которые подскажут что почитать, посоветовать что-то. Хотя и во фрилансе есть возможность использовать ресурсы, например сайты вроде StackOverflow, но это далеко не то же самое, что личное общение.
Английский язык знать нужно на порядок лучше, поскольку лучше работать с западными заказчиками, у вас есть возможость получить ту маржу, которую обычно остается у аутсорсинговорой компании. И даже работая с зарубежным заказчиком при работе компании требования к знанию английского как правило ниже, поскольку часто работа происходит не напрямую с заказчиком.
Еще как вариант, который работает во фрилансе – это договориться с заказчиком, что в случае незнания вы будете подучивать, и будете в офлайне, так вы можете изучать в реальных проектах новые технологии. О смене технологий я писал в статье Профессиональная переориентация — смена технологий разработки ПО.
Здесь есть интересный момент. Бывает так, что заказчик захочет чтобы вы учили технологии и он это оплачивает, хотя явно он это говорить не будет. Тут ситуация в том, что заказчику может быть спокойнее видеть вас в онлайне, чем думать, а не переключаетесь ли вы на другой проект.

Особенности работы во фрилансе после работы в компании

Первое, чего нет во фрилансе – это присутствия вас с заказчиком в одном офисе. Вначале вообще непонятно, то ли вы дома, то ли на работе.
Поэтому на первых порах может быть полезным установить для себя, сколько часов вы работаете в неделю, сколько выходных, а также расписание. После работы в компании это очень важно, поскольку чувства времени еще не достаточно хорошо развито, а “мотивировать” себя особо не кому, кроме как самому себе. Со временем чувство времени будет вырабатываться и можно ограничения смягчать и уже более гибко делать выбор между работой и отдыхом.
Эффект присутствия также желательно создавать и для заказчика. Больше показывать рабочей, даже промежуточной информации, доступной заказчику, чтобы как минимум убрать эффект пропадания, максимум – чтобы заказчику была возможность легко разобраться со статусом проекта. В системах управления проектами обычно есть лог изменений – это довольно полезно.
Здесь также полезно учитывать время по возможности небольшими отрезками. И как вариант чаще коммитить изменения, даже есть это промежуточные версии.
Для тех, кто любит программировать в свободное время, можно работать и в компании. и быть частично занятым во фрилансе..
Если при работе в компании о вас знают коллеги. И даже при смене компании это обычно происходит в том же городе, и о вас все равно узнают.
То во фрилансе всего этого нет, и при поиске заказчика сильно может помочь прохождение тестов. Да, вы потом все равно будете проходить собеседование, но как минимум альтернатив будет больше.
Повышать рейт можно часто, но желательно постепенно
В ф. вам также прийдется самостоятельно оформлять бумаги. Но это разовое действие. Ну и на во вторых на случай изменения законодательства, хорошо иметь знакомых в больших компаниях и у них узнавать какие бумаги меняются. Также первый раз желательно все объяснить заказчику.
Но в последствии все это занимает не больше часа в месяц и некоторая плата бухгалтеру и курьеру.
Ну и как еще одна возможность вы можете работать где хотите, хоть на море, хоть а горах, лишь бы интернет был.

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

Откуда взялся негативный имидж фриланса и работы с фрилансерами?

С одной стороны некоторые работодатели говорят, что после фриланса человека брать в компанию не хотят, потому как он не умеет работать.
С другой стороны мне известны случаи когда люди переходят с фриланса в очень пристижные компании или же на хорошие позиции.
А также неоднократно слышал отзывы от бывших фрилансеров, что в компаниях на много легче работать: то кофе попил, то на митинг сходил, во фрилансе, особенно при почасовой оплате время кофепития никто тебе не оплачивает.
Здесь опять же нужно прояснить ситуацию. Как я писал выше те, кто идут в фриланс не работая в компании возможно не смогут быть эффективными. А вот те, кто хорошо понимает что такое фриланс, уже зная что такое компании – совсем другое дело, они понимают и уровень ответственности, и возможности. И как правило краткосрочные проекты длятся для таких людей недолго, поскольку появляются заказчики, желающие сотрудничать на долговременной основе.
И спрашивается, с чего вдруг такому разработчику возвращаться работать в компанию.
Вот и напрашивается вопрос. А кто же с фриланса идет в компании? Ответ очевиден – не самые лучшие фрилансеры, по которым и судят о всех.
Более того, также часто люди уходят из компаний работать во фрилансе, а потом о опять возвращаются в компании, причем общаясь с человеком имеющий очень богатый опыт рекрутинга, я не заметил, что у него сложилось впечатление, что с бывшими фрилансерами сложно работать.
Иногда даже довольно успешные сейчас люди не могли найти себя во фрилансе. Тут могу лишь сказать, что нужно искать, как достичь желаемого у у людей, которые добились успеха в этой же области, а не другой, хотя изучить ошибки неудач, чтобы не повторять их, все таки стоит, главное не заражаться негативным настроением.

О заказчиках и где легче а где сложнее

Есть компании требующие небольшого количества разработчиков, и основной источник дохода у них с разработкой ПО не связан. И, как мне кажется, их довольно много. Они не в силах тягаться с поиском кадров больших аутсорсинговых компаний, “пылесосами” на жаргоне, поскольку первые не могут себе позволить посадить рекрутера для ИТ.. А в последних сидят рекрутеры целый день только поиском и занимаются. Очевидно кто будет в этом успешен.
Но то, что фрилансер может работать меньше, это да. Но это не значит хуже. Более того, об этом хорошо сказано в книге 37 сигналов: “те, кто много работают, создают больше работы и проблем, чем результатов”. Поэтому тут уж надо смотреть, на что ориентирована компания, рассматривающего кандидатуру человека, которые работал до этого не в офисе – на результат или на “биомассу”, разбавленную синьорами, продающую ваши часы заказчику.

Между фрилансом и компанией

В статье я в основном рассматривал крайние случаи.
Но есть также и промежуточные варианты.
Есть большие компании, у которых организована работа большого количества людей удаленно, например DevFactory или тот же TopCoder, где разработка ПО организована по принципу соревнований..
Промежуточный варианты – продуктовая компания, участие в роли разработчика (не кофаундера) в стартапе, фриланс на долгосрочной работе.
Отдельное место занимает удаленная работа, как правило между фрилансом на долгосрочной основе и участием в стартапе, как минимум человек должен обладать достаточными знаниями, чтобы полностью настроить себе рабочее место.
А продукт может быть внутренним или внешним.

Резюме

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

Ссылки по теме (я там далеко не совсем согласен)

  1. Плюсы и минусы работы из дома http://habrahabr.ru/blogs/gtd/102747/
  2. Как студенту-фрилансеру стать руководителем http://habrahabr.ru/blogs/freelance/127404/
  3. 6 причин, по которым нужно стартовать с бирж http://habrahabr.ru/blogs/freelance/124992/
  4. Школа фриланса http://www.freelance-school.ru/
  5. Фриланс VS Офис — дуэль! (Видео отчет) http://habrahabr.ru/blogs/freelance/117794/ (Холи-вар)
  6. Как фрилансеру распознать нежелательного заказчика? http://habrahabr.ru/blogs/freelance/96142/
  7. Пять гарантированных способов уменьшить свой заработок на фрилансе http://habrahabr.ru/blogs/freelance/85204/
  8. Грустная статистика… http://habrahabr.ru/blogs/freelance/74232/
  9. Как повысить доверие заказчика к профессионалу в области IT  http://habrahabr.ru/blogs/freelance/90600/

Мобильный интернет – все меняется гораздо-гораздо сильнее, очередной виток спирали развития

Первый фактор – это то, что появляются новые пользователи, которые с обычным интернетом никогда бы не появились. В мобильном интернете расстояние одной кнопки в телефоне.Весело, что в Индии доступ к интернету есть у большего числа людей, чем доступ к туалету :)Не смотря на то, что сам мобильный интернет растет очень сильно, но внутри него все еще интереснее происходит.Люди на много чаще используют приложения, чем сидят в браузере, а если сидят в браузере, то не пользуются поисковиком. Это кстати тревожный звоночек для Гугла, видимо поэтому он так за Андройд взялся.

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

Идем дальше. Есть мнения, который также предрекают сложную ситуацию Фейсбуку, потому что на мобильниках не видно рекламы.
Но с одной стороны я думаю, здесь свой вклад может сделать команда Инстаграм.
А с другой стороны связь людей в интернете – это гораздо больше, чем лента новостей с рекламой справа. И Марк Цукерберг это понимает гораздо лучше, что кто либо другой.
И я думаю клиентское приложение и бизнес модели Фейсбука поменяются в ближайшее время очень сильно, но Фейсбук от этого только выиграет.

А тут еще и Apple c Facebook-ом обещают очень сильно интегрироваться в iOS6 – люди есть люди.

В итого получается что Apple, Facebook и Microsoft в определенном отношении партнеры.
… и при этом выпускают свои гаджеты…. Все это как то очень интересно выглядит.

Но самое интересное дальше. Учитываю огромный опыт все упомянутых выше монстров, а также то, что Facebook cверхгибкий и быстрый в разработке, что у него активно перенимает Гугл, что видно в Андройде, разработка софта изменяется кардинально.

Приходит конец интернет-браузерам. Точнее, они будут использоваться кардинально реже.
С точки зрения пользователей я уже описал почему так происходит.
А для разработчиков приходят полноценные платформы разработки, от Аппл и Гугл.
И писать под интернет богатый интерфейс пользователя, где основная логика клиента на JavaScript всегда было извращением. Да, что-то улучшали, но теперь приходят полноценные операционные системы и средства разработки.

Но почему же все таки возник HTTP-интернет?
Вся проблема была в том, что Microsoft Windows всех победил и принес свои геморрои, особенно в установку приложений.

Теперь установить приложение через AppStore становится элементарно.
А поскольку лучшие приложения будут пользоваться лучшим спросом и на платформе iOS или Андройд это сделать легче, чем под Web Browser-ы, то очевидно, кто на коне.

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

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