November 30, 2012

45 рекоммендаций для стартапов и стартаперов

Наткнулся на хороший список рекоммендаций для стартапов и стартаперов.

45 Simple Yet Profound Startup Insights

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

46. Learn english.

Восстановление коммита в Git репозитории

Сегодня случилось страшное. Я потерял порядка 2-х дней работы сделав git rebase для перемещения бранча в Git репозитории. Тем самым "потерял" код. В кавычках потому что надежда еще есть. Мне светило переписать все заново, а это для меня в разы хуже чем писать в первый раз. Но, мне удалось найти способ восстановить потерянное, а на сэкономленное время расскажу вам как это делать, заодно и для себя будет заметка на будущее.

November 13, 2012

Что читать стартаперу

Наткнулся на хорошую статью — Что читать стартаперу: Аркадий Морейнис.

В главу "Книги, которые не надо читать" и буквы не добавить, все четко и верно.

Вот еще один кусочек:
Нельзя научиться делать бизнес, читая бизнес-книги. Нужно начать бизнес и в процессе читать книги, которые помогут. Пока человек не прошел через мышление к пониманию, рецепт ему ничего не даст. Если в голове ничего нет, то умножение на ноль дает ноль. А то многим чтение книжек заменяет думание.
Похоже эта мысль касается многих вещей. Я, например, буквально на днях одному товарищу пытался втереть мысль о том что нельзя выучить язык программирования читая книжки и пробуя примеры из серии "Hello World". Надо начать реальный проект и по ходу дела учиться посматривая в интернет либо в книжки. После этого прочесть что-то типа  Best practices чтобы поставить все в мозгах на место.
Вот стартаперы хотят прочитать книжку о презентациях и сделать крутую презентацию. Не, так не получится. Надо сначала сделать кучу плохих презентаций, потом прочитать книжку и сделать хорошую.
А это еще раз развеяло во мне миф про то что "дураки учатся на своих ошибках, умные на чужих". На чужих нельзя научиться ибо знания об ошибках допущенных другими ничего не дают. А вот свой опыт бесценен.

Добавил рекомендованные книги в свой список чего и вам желаю.

November 12, 2012

Как переместить репозиторий от GitHub на свой приватный сервер

Недавно мне пришлось проделать эту, как оказалось, не сложную операцию.
> git clone --bare git@github.com:{USERNAME}/{REPOSITORY_NAME}.git
> cd {REPOSITORY_NAME}.git
> git push --mirror git@myhost.com:my-new-repo.git
> cd ..
> rm -rf {REPOSITORY_NAME}.git
Теперь на в рабочей копии необходимо изменить адрес ремоута:
> git remote set-url origin git@myhost.com:my-new-repo.git
Для GIT сервера я рекоммендую использовать gitosis.

Update: Недавно я присмотрелся к Bitbucket, оказывается у них в отличие от Github есть неограниченное количество приватных репозиториев и при этом до 5 человек бесплатно. 

Не то что бы я не знал про Bitbucket, но когда я к нему присматривался он не поддерживал GIT, а мигрировать на Mercurial небыло желания, да и выглядел он уныловато. Сейчас похоже Atlassian взялись за дизайн, у них даже Jira стала более приятной. А GitHub наоборот наделал странных изменений в UI.

Лайфхак в OS X для терминальщиков

Если вы пользуетесь терминалом (консолью) в OS X то в некоторых местах вам вероятно надоело нажимать лишние кнопки, например Shift чтобы начать писать названия папок и файлов начинающихся с большой буквы либо писать больше когда хотите попасть в ~/Library/Application Support/.

Во-первых добавляем следующую строку в ~/.inputrc:
FIGNORE=".o:~:Application Scripts"
это заставит игнорировать папку Application Scripts когда вы хотите набрать Applications Support, это значит достаточно набрать ~/Library/Ap и нажать таб. Сюда же можно добавить и другие директории на ваше усмотрение.

Во-вторых добавляем туда же следующие строки строку
set completion-ignore-case on
set mark-symlinked-directories on
set show-all-if-ambiguous on
что позволит игнорировать регистр при наборе названия файла или папки (достаточно cd ~/li⇥ вместо cd ~/Li⇥), автоматически добавит слеш если symlink залинкован на директорию и подскажет возможные варианты вместо тупого бибикания если по нажатию на ⇥ есть несколько вариантов автодополнения.

Happy terminaling!

З.Ы. Вы все еще пользуетесь Terminal? Тогда iTerm2 идет к вам.