вторник, 6 октября 2009 г.

Плагин для работы с Jira из InetlliJ Idea

На самом деле, заголовок звучит немного неверно, так как данный плагин позволяет работать не только с Jira, но и с остальными продуктами Atlassian (Bamboo, Crucible, FishEye). Но сейчас мне бы хотелось сделать акцент именно на Jira. Итак, поехали.

Установка



Отправляемся в настройки Idea -> Plugins -> Available
Далее пишем в поиске Atlassian Connector и видим примерно следующее.

Загружаем его и перезапускаем Idea.
После этого в верхней панели инструментов у нас добавится следующая дополнительная панель.

В нижней панели так же произойдут изменения.


Настройка


В нижней панели инструментов щелкаем по соответствующей кнопке, далее настройки и настройки проекта (Ctrl+Shift+G).

В появившемся окне выбираем добавить Jira и забиваем ее настройки.

Теперь мы можем работать с Jira сразу из Idea. Ура =)

Что же мы можем



    Вот небольшой список того, что мы теперь можем делать:

  • Видеть список своих задач

  • Проводить полный workflow по задачам (вешать на себя, создавать, удалять и так далее)

  • Комментировать и просматривать комментарии для существующих задач

  • Привязывать задачи к конкретным файлам

Теперь собственно перейдем к работе с данным плагином.
Примерно так будет выглядеть ваша рабочая область.

С помощью контекстого меню, которое видно на скриншоте доступны следующие действия:


  • Open Issue — Просмотреть выбранную задачу. После этого можно будет увидеть примерно такое окно

  • Start/Stop Work — Начать/завершить работу над задачей. В случае начала работы над задачей он автоматически становится активной

  • View in Browser — Открыть задачу в браузере.

  • Edit in Browser — Открыть задачу в браузере для редактирования.

  • Add Comment — Добавить комментарий.

  • Log Work — Отметить сколько времени было потрачено на задачу.

  • Create ChangeList — Добавить changelist, связанный с задачей. Сhangelist это все изменения на одним или несколькими программными фалами, объединенные логически.

  • Assign to Me — Перевешивание данной задачи на себя.

  • Assign to User — Перевешивание данной задачи на другого пользователя

  • Copy to Clipboard — Удобный функционал, если вы хотите использовать данные по этой задачи в другом приложении (например отослать в письме). Возможны следующие условия копирования:


    • Номер задачи

    • Ссылку на сервер JIRA

    • Описание задачи

    • Номер и описание

  • Perform Issue Workflow Actions — Позволяет выполнить одно из действий по работе с задачей (закрыть и прочее).


Интересные фичи


Я думаю многие страдали от того, что неудобно смотреть длинные stack trace и приходится искать нужные классы и строки. Разработчики это учли и теперь просмотр stack trace стал выглядеть вот так:


Кроме этого, поиск задач стал значительно проще. Теперь найти задачу можно:

  • Используя хоткей Shift-Alt-J и выбор из выпадающего списка

  • Поиск по номеру

  • Переход по ссылке из кода



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

понедельник, 5 октября 2009 г.

[Перевод] Sun убрало Swing Application Framework из Java 7

Компания, в которой я работаю, пишет на Java. Это известно. Мы так же много пишем на Swing. Это тоже известно. А вот то, что свинг по сути умер, это пока что не особо известно, поэтому публикую этот перевод.

Компания Sun прекратила разработку стандарта JSR 296: Swing Application Framework (SAF), входящего в Java 7. Вот как пишет об этом в своем блоге Александр Поточкин:
После продолжительных дискуссий стало очевидно, что Swing Application Framework API в том виде, в каком он есть сейчас, не удовлетворяет требованиям, и мы осознаем, что наша работа над ним еще не окончена.Предполагалось, что мы закончим SAF API к пятому обновлению JDK 7, и когда подошло назначенное время, мы поняли, что не сможем выполнить задачу в срок, в итоге мы убрали саф апи из всех планов по сдаче JDK 7.

В 5 версию, в соответствии с планом, вовремя было добавлено всего два новых компонента: это криптосистема на основе эллиптических кривых и Swing JXLayer. В результате этого, Sun пришлось объединить 5 и 6 обновления, передвинув срок сдачи 5 обновления до 29 октября. Только после этого пятое обновление стало полным, включив в себя новый функционал из Project Coin, JXDatePicker для Swing, а так же обновления, связанные с JAXP, JAXB и JAX-WS API, которые дополнили группу Java XML технологий, сделав их более устойчивыми. Следуя плану обновлений, с конца октября Sun планирует выпустить еще 14 версий, закончив работу над ними к февралю 2010.
С того момента как Поточкин сделал свое заявление, было развернуто как минимум две ветки проекта (BSAF, SAFF). Вот как выразил свое мнение по этому поводу Джонатан Гиллз (Jonathan Giles) в своем блоге:
От оригинального проекта SAF, требования о помощи которого так и не были услышаны (по крайне мере со стороны Sun не было видно каких-то видимых действий), мы пришли к двум новым разработкам. Конечно, если бы мы могли вернуть время вспять, на тот этап когда JSR-296 было только включено в JDK 7, мы могли бы этого не сделать, но время было упущено и идея оказалась загубленной, так что нам, видимо, придется ждать JDK 8, прежде чем Swing framework будет включен в выпуск.

Позднее Гиллз отправил письмо в рассылку SAF, в котором предлагал сделать выбор между двумя ветками проекта, и, прекратив разработку одной, полностью сосредоточиться на второй.
Принимая во внимание мнение разработчиков, нам следует выбрать одну из веток и назвать ее SAF.next. Разработку же второй следует немедленно прекратить, дабы в будущем не возникло никаких конфликтов.

Поточкин также рассказал InfoQ, что другое очень ожидаемое нововведение, а именно поддержка CSS для компонент Swing, которое могло бы войти в 5 обновление, в дальнейшем не появится в Java 7. Данный функционал включен в JavaFX, а Этан Николас (Ethan Nicholas) создал более чем тщательно разработанный прототип для Swing, о чем он написал в своем блоге летом 2008. Он также написал руководство и код, которые доступны для скачивания с вебсайта проекта.

четверг, 1 октября 2009 г.

Пути саморазвития студента. Практика 2 - Учимся писать

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

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

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

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

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

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

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

Объемы и сложность текста. Зачастую в университете обязывают писать рефераты жестко ограничивая одну из границ объема, например не более 15 листов. С одной стороны, это верно, так как позволит оставаться лаконичным, что является очень важной чертой при написании статей. С другой стороны, если поставлена нижняя граница, то может возникнуть необходимость наполнять работу бессмысленными данными, что, очевидно, портит ее восприятие. А наложение сложности темы, которую требует раскрыть, следование указанным объемам становиться более чем сложным заданием, поэтому здесь всегда приходится искать тонкую грань.

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

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

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

среда, 30 сентября 2009 г.

Перевод - Инструментарий фрилансера: 33 полезных приложения и вебсайта.

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



Инструменты для работы с финансами

1. Hourly Rate Calculator


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

2. Web Development Project estimator


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


3. Freshbooks

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

4. CurdBee


Простое и и незамысловатое решения для произведения выписки счетов, которое также может быть интегрировано с PayPal и Google Checkout.

Дублирование данных и вопросы безопасности

5. DropBox


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

6. Mozy


Mozy является другим популярным средством для дублирования данных, есть возможность использовать бесплатный вариант!

7. ClamAV для PC или ClamXav для Mac


Опенсорс антивирус как для Мак, так и для PC.

8. Tor


Давая возможность серфится анонимно, Tor защищает вас от сетевого слежения, которое угрожает вашей свободе и безопасности. Так же есть очень удобный плагин для ФФ: Tor Button.

9. Snort


Опенсорс система для предотвращения проникновения и обнаружения для Mac.

10. Pastor


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

Производительность


11. Remember the Milk


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

12. Highrise


Совершенный онлайновый менеджер встреч. Highrise подготовит вас к следующему звонку, встрече, этапу переговоров, завершению сделки или новым продажам.

13. Things


Органайзер для Mac, соответсвующий требованиям современного делового человека.

14. EverNote


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

15. Quicksilver


Эффективная оболочка для OS X, позволяющая работать значительно быстрее (пользователям Windows рекомендуется Launchy).

Управление проектами

16. Fuze Meeting


Организуйте ваши онлайн встречи где и когда угодно Доступна бесплатная версия.

17. drop.io


Простой инструмент для онлайн сотрудничесва, проведения презентаций и обмена данными.

18. MindMeister


Интернет приложения для построения диаграмм зависимостей.

19. Basecamp


Ведущий сервис предназначенный для управления проектами, обменом материалом, назначением задач, сбора фидбеков и так далее.

20. AgileTracker


Air-приложение для ведения отчетности о клиентских временных затратах на проект.

21. Ora Time & Expense


Ora позволяет вам отслеживать затраты, вести лист задач, запускать активности по ним и так далее.

Инструменты сбора фидбэков

22. Please Critique me


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

23. ConceptFeedback


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

24. 5 seconds test


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

Маркетинг

25. AWeber


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

26. iContact


Легко создает, отсылает и отслеживает новости, обзоры и ответы на электронные сообщения.

27. Ping.fm


Ping.fm является простым и бесплатным сервисом, который позволяет вам оставаться в курсе изменений, в социальных сетях, где вы состоите.

28. Shozu


Является аналогом Ping.fm, но уже дял изображений. Загружайте ваши фото и видео в любое из сообществ где вы состоите, будь то Facebook или YouTube, Twitter или Flickr или любой другой.

29. LinkedIn


Хороший способ оставаться в постоянном контакте с вашими коллегами или строить новые отношения по работе.

Аналитика

30. Google Website Optimizer


Website Optimizer является простым в использовании решением от Google, приносящим реальные результаты, для проверки содержимого сайта. Он является отличным инструментом для повышения отдачи от вашего ресурса.

31. Compete


Отслеживайте конкуренцию на рынке, получая статистику и отражение общей ситуации.

33. Google Analytics


Бесплатное многофункционально решение от Google, позволяющие расставлять приоритеты и отслеживать динамику их изменения.

суббота, 26 сентября 2009 г.

Как для меня прошел 404 фест

Сегодня в Самаре прошло такое замечательное событие как #404fest. Именно такой хэш-тэг можно было весь день видеть в русском твиттере. Данный фестиваль проходит уже второй раз и из самарского вырос до российского, так как здесь были гости из Москвы, Питера, Казани, Уфы и других замечательных городов. Мероприятие проходило в замечательном отеле Холидей Инн и было более чем позитивным и насыщенным. Но это все эмоции, а мне хочется рассказать о том, кого же там я услышал. Итак, начнем по порядку.


Никита рассказывал об основах Agile методики в web-разработки. Доклад безусловно понравился, так как был достаточно живым и интересным. Почти все, о чем Никита говорил, мне было в той или иной степени известно, другое дело, что он все достаточно неплохо разложил по полочкам и осветил отличие scrum от других методик, в частности от waterfall.
Позднее, уже на открытой террасе, состоялось внесекционное общение, где Никита рассказал об особенности использования скрама в распределенных командах. Тема была затронута еще на другом докладе, о котором я расскажу ниже. Так вот, возвращаясь к общению с Никитой, по его словам, распределенная разработка тоже может быть разная. Команды могут находиться например в Самаре и Тольятти, и тогда опять же можно раз в две недели собраться и обсудить планы на спринт, и это хороший вариант. А может быть вариант, когда часть команды в Самаре, а часть, например, в Сингапуре. И пока самарцы работают, сингапурцы мирно спят. Для обоих ситуаций Никита рассказал о возможных решения данной проблемы и удобном инструментарии.
Еще один из вопросов, который он осветил, это был вопрос преодоления менеджерского авторитаризма и продавливания решения использования скрама в рамках проекта.
Оба вопроса являются для меня актуальными, так что общение получилось более чем полезным.


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


Сразу хочу оговориться, что Илья мой хороший друг и во многом наставник, так как именно он рассказал мне в свое время о Flex, сагитировал выступить на RAFPUF`08 в Самаре и съездить на РИФ+КИБ 2009. Так вот Илья в своей наверное уже привычной манере начал заинтересовывать слушателей еще до начала своего доклада, развернув в холле, а точнее на стене холла интерактивный стенд, где каждый мог поиграть в простую флэш игру пользуясь интересным маркером, о котором Илья рассказал позднее.




























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


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


Доклад Константина был мне наверное ближе всех по своей теме, так как он рассказывал про групповые фокусы, а именно про то, какие средства использует компания Яндекс внутри себя, чтобы улучшить процесс разработки. Было приятно узнать, что сейчас я иду верным путем (а именно внедряя Wiki и средства коллаборативной разработки), а так же стало понятно что делать в дальнейшем. Опять же был затронут вопрос совместной работы распределенных команд, на которой Константин с успехом ответил. Вообще, временами казалось, что он приготовил массу заготовленных ответов - так быстро он отвечал. Опять же, этот доклад хотелось бы послушать еще раз.


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

пятница, 25 сентября 2009 г.

Пути саморазвития студента. Практика 1 - Инструментарий.

Продолжая линию, начатую статьями 1 и 2, захотелось как и в университете перейти от лекций к практикам. Практик планируется несколько, а данная будет посвящена основам, а именно тому, какими же инструментами мы обладаем, для более эффективной работы. Под катом обзор сервисов, которые постоянно мне помогают.
1. Evernote
Да, да, да и еще раз да. Про evernote сказано уже много, добавлю и я, рассказав о том, как я его использую. Сбор ссылок. Проводя много времени на хабре, в чтении рсс-лент и твиттера, постоянно просматриваю десятки ссылок. И в тех случаях, если я что то не успеваю просмотреть - то кидаю в отдельный блокнот, где ссылки сгруппированы по тематике, например: Дизайн, Тайм-менеджмент, ExtJS и так далее. А в тех случаях, когда у меня есть время, но нет компьютера, я эти ссылки могу просмотреть, и понять, нужны ли мне они. Переводы. Англоязычный интернет полон интересных статей. И совмещая приятное с полезным - чтение статей и повышение навыка английского языка - я завел отдельный блокнот под переводы. В нем каждая заметка озаглавлена названием статьи, содержит в сфебе ссылку на статью, а так же английский текст. Под каждым абзацем на английском я пишу перевод на русском, потом собираю все в единое целое и перевод готов. Написание статей. Любая статья - дело серьезное, поэтому на ее написание нужно время, которого катастрофически не хватает. Поэтому имея Эвернот я могу на работе, дома и в любой точке эти статьи читать, редактировать и писать. В частности эта статья была частично написана с айфона. Учебные материалы. Как любой студент, я пишу лекции, читаю методички и прочее. Так вот, занеся лекции и прочие учебные материалы в айфон я всегда буду иметь доступ к ним, а так же мне легко по ним навигироваться.
2. Dropbox
Еще один популярный сервис, который не только позволяет синхронизировать данные на разных компьютерах, но и вести совместную работу. Что я имею ввиду. Распространив среди своих одногруппников dropbox и заведя там отдельную папку для материалов посвященных университету, мы можем регулярно обмениваться написанными лекциями, присланными методичками и сканами учебников, заданиями на лабораторные и практики. Так же очень удобно им пользоваться при написании каких либо совместных работ, так как всегда под рукой и материалы, и последняя версия документа.
3. Assembla
Assembla является достаточно серьезным инструментов совместной работы, но он просто незаменима при написании совместных программ. И если в случае небольших заданий можно просто пересылать по почте куски кода, то серьезные работы, как например курсовые, безусловно гораздо проще создавать здесь. Тем более если ввести практику заведения issue и пользования trac.
4. Writeboard
Еще один инструмент совместной работы, чем то напоминающий вики по своей сути. На мой взгляд отличная вещь, при подготовке докладов и презентаций. Если смотреть шире, то он позволяет устраивать крупные мероприятия, обсуждать те или иные аспекты и опять же назначать задания.
5. Google Reader
В принципе, в данном пункте может идти абсолютно любой rss-reader, тут уж дело вкуса, объясню почему мне нравится именно этот продукт. Во-первых, это онлайн сервис, то есть нашли компьютер и уже можно просматривать свежие новости. Во-вторых система создания общих записей очень удобна, потому что невозможно самому собирать и просматривать тысячи записей ежедневно, а тут мы уже получаем готовую выборку. В-третьих, у меня просто есть аккаунт гугл, почему бы не использовать его на всю катушку. Обсудив личностные пристрастия, объясню зачем это нужно студенту. Основываясь на собственно опыте, могу сказать, что в университете мы находимся практически в информационном вакууме, то есть нам не рассказывают новинок современной it-индустрии, как в области новых информационных технологий, так и в области технических новинок. Поэтому ничего не остается, как самому искать интересующие новости. Тут и приходит на помощь rss-reader, позволяющий собирать все записи в одном месте. Кстати, из всего списка, это было первое, что я начал использовать.
6. ToDo list
Вот здесь уж точно все на вкус и цвет, так как сервисов действительно очень много и по возможностям они достаточно идентичны. Могу лишь посоветовать вот этот ресурс, где сравниваются несколько различных продуктов. Я же хотел бы рассказать про самое мощное на мой взгляд решение - Remember The Milk. Данный продукт создан маленькой австралийской компанией, имеет весьма приятный и понятный интерфейс и, что является несомненным плюсом, доступен на русском языке. В целом, добавление задач мало отличается от аналогичных разработок — указываете событие, когда оно состоится, будет ли оно повторяться, прописываете теги, добавляете заметки. Но есть и одна особенность — уведомления о событии можно получать не только по электронной почте, но и на мобильный телефон, интернет-пейджер (большой список поддерживаемых протоколов включает в себя и ICQ, и Google Talk, и даже Skype). Думаю прелесть подобного приложения очевидно, можно очень грамотно распланировать свое расписание, сделать уведомления о том, что надо подготовить то или иное задание, напомнить себе, что расписание изменилось или просто разбудить себя на первую пару =) И в завершении этого списка, наверное несколько неожиданный участник, а именно
7. Twitter
Так для чего же он нужен студенту. Одно из самых простых объяснений - опять же сбор информации. Учитывая то, сколько компаний и просто интересных людей ежедневно публикуют интересные статьи, причем не только публикуют но и ретвитят, то найти информацию на любую тему не составляет труда. Но на мой взгляд, твиттер имеет и еще одну важную функцию для студента - его социализацию в интернет сообществе. Как я уже писал, надо учиться писать. Так вот, твиттер, создав ограничение в 140 символов, сделал поистине гениальную вещь - он учит писать кратко и емко. Данную тему я бы хотел расписать уже в следующей практике, посвященной тому, как учиться писать. Надеюсь, все рассмотренные мною инструменты, действительно кому-то пригодятся, причем не только студенту, но и каждому человеку.

среда, 23 сентября 2009 г.

Пути саморазвития студента

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

  • Проведите анализ рынка занятости, выясните, что наиболее востребовано на текущий момент. И не забывайте получать новые знания и перенимать опыт там, где это возможно - это позволит сфокусироваться на действительно значимых вещах.
  • Будьте в сети, как для обучения, так и для поиска новых контактов в заинтересовавшей вас области.
  • Используйте с максимальной пользой такой ресурс как Student Portal.

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

На сегодняшний день я 3 год работаю в роли программиста и с 1 сентября стал студентом первого курса. Учусь на факультете информатики одного из лучших ВУЗов нашего города, и всегда думал, что на нашем факультете собраны людям, которым интересно развиваться. Но как показывает практика, многие обучаются лишь в рамках того курса, который им дается по учебной программе. И долгое время я считал, что это из за того, что мои сокурсники настолько статичные люди. Но общаясь с ними на эту тему, я понял, что люди просто не в курсе того, что есть на сегодняшний день. Как в плане технологий, так и в плане каких-либо способов получения новой информации, как например рсс-ридеры или твиттер. Поэтому написать данную статью меня мотивировал позыв, помочь тем студентам, которые хотят развиваться дальше, но не знают с чего начать.

0. Поставьте себе четкую цель.

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

1. Начните читать.

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

2. Начните писать.

Например можно начать с бумажного дневника. Или с аккаунта в живом журнале. Что писать? Пишите свои мысли, идеи, состояние, просто статусы.
Зачем это нужно. Когда мы пишем - мы формулируем мысль. Таким образом, во время написания какие-либо записей мы учимся правильно, грамотно, лаконично и законченно думать. Согласитесь, это очень важный навык. Обязательной перечитывайте свои записи, давайте их прочитать другим людям. Ведь то, что кажется правильным и логичным вам, может показаться абсурдным другим людям.

3. Начните говорить.

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

4. Выйдите в сеть.

Наверное это будет самый объемный пункт.
Во-первых, заведите себе нормальную почту, которая содержит ваши инициалы или ФИО. В будущем, вы обязательно будете отсылать свое резюме в фирму работодателя или вести переписку по сети. Так вот, когда мне приходит письмо с отправителем вида myasnik1989@somemail.ru, то первым желанием является отправить это письмо в спам.
Во-вторых, подпишитесь на известные блоги, в той области которая вам просто интересна, в частности и тот же самый Хабрахабр. Для упрощение, заведите себе rss-reader, сэкономите много времени, так как все интересные статьи будете читать в одном месте. и два совета:
  1. не заводите слишком много подписок - будете теряться в массе сообщений
  2. рекомендую google reader, так как это веб-приложение, да и возможность шарить свои и читать чужие расшаренные записи мне очень уж по душе, да и выглядит приятно.
Так же, настоятельно советую завести аккаунт в твиттере. Для меня твиттер является одним из основным источником получения новой информации, так как ежедневно в нем обсуждаются все возможные технологии и находятся решения на великое множество проблем.

5. Пробуйте и делайте

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

6. Научитесь планировать.

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


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

Война против "велосипедов"

Я работаю в одной компании, занимающейся написанием программного обеспечения в основном в области логистики. Работаю я уже 3 год, прошел через несколько проектов и узнал о тех, которые были до меня. И так уж повелось, что для каждого проекта заводилась своя внутренняя вики, которая по окончании проекта архивировалась и складировалась в таком виде на сервере. Проходило время, люди уходили и приходили, и опыт, накопленный по данному проекту постепенно забывался. Начинался новые проект и конвейер по производству велосипедов запускался вновь.Я думаю, подобная ситуация существовала не только в нашей компании, но и существует во многих других. Лично меня эта ситуация долгое время не устраивала, но к сожалению я ничего не мог поделать - мнение junior developer`ов редко учитывается. Но опять шло время, я немного подрос по лестнице, и у меня ко всем обязанностям прибавилась еще одна - UI expert. Что это такое. Это роль эксперта-аналитика в области технологий для создания пользовательских интерфейсов. В мои обязанности входит как обзор существующих технологий (RIA, Swing и js фреймворки), так и консультации других проектов, а так же составление аналитических обзоров по их требованиям. Все эти обзоры вносились в специальный раздел одной из проектных вики и каждые две недели составлялся викикаст с обзором самых интересных статей.Данная активность оказалась более чем полезна компании, я набирал "баллы" и в определенный момент с помощью поддержки начальства война против велосипедов была развернута. Было решено сделать единое хранилище данных, где бы содержала и аккумулировалась вся накопленная и найденная информация. Фронт был развернут по двум направлениям: единая вики и внутренний блог.


Вики

Первым шагом было решено перейти от множества разрозненных вики к одной, где бы были разделы для каждого проекта, общий раздел для информации о компании, раздел для экспертиз (UI, server side и прочих), раздел для QA команды, а так же раздел с различными полезными советами и библиотекой компонент внутреннего репозитория maven. Когда было решено, что такая вики необходимо, стал вопрос в выборе движка. Было множество споров: как должны храниться страницы - в виде файлов или записей в бд, какую разметку выбирать и многие другие. Разрешить эти споры удалось благодаря такому ресурсу как http://www.wikimatrix.org/. Что это за ресурс. На нем расположена информация примерно о 50 различных движках и есть возможность сравнить интересные вам движки. В таблице сравнения можно найти такие пункты как: General Features (Version, Last Release Date, License, Development status ....), System Requirements, Datastorage, Development/Support, Syntax Features и многие другие. Кроме того, сюда стекается информация обо всех новостях, связанных с данными движками, есть возможность посмотреть имеющиеся реализации и спросить мнение экспертов.

После долгих сравнений мы решили остановиться на DokuWiki (http://www.dokuwiki.org). Данный движок понравился как своими возможностями по умолчанию, так и возможностью расширения.

Основные характеристики

  • Работа с текстовыми файлами — не требуется поддержка баз данных
  • Простой синтаксис дополнен кнопками разметки, которые облегчают редактирование
  • Обширные возможности разметки, может быть включена поддержка HTML, PHP.
  • Редактирование страницы по частям
  • Автоматическое сохранение черновика при редактировании страницы
  • Автоматическое создание оглавления для страницы и списка всех страниц Вики
  • Неограниченная история изменений страницы (поддаётся настройке)
  • Возможность загрузки файлов, изображения могут отражаться в тексте
  • Настройка прав доступа (чтение, запись, создание страниц, загрузка файлов, удаление страниц) для категорий пользователей и пользователей в отдельности для отдельных страниц и пространств имён
  • Поддерживается отправка последних изменений по RSS
  • Страницы разделяются по пространcтвам имён
  • Ссылки внутри Вики и на внешние ресурсы (технология InterWiki)
  • Лёгкость навигации
  • Полнотекстовый поиск собственными средствами, индексирование страниц
  • Быстрый поиск по названиям страниц (по AJAX технологии)
  • Многоязыковая поддержка интерфейса и текста вики (но не имён страниц)
  • Защита от спама с помощью чёрного списка слов и CAPTCHA
  • Вся настройка за исключением первого запуска производится с помощью локализованного веб-интерфейса
  • Большое количество плагинов, расширяющих базовый функционал
  • Поддержка OpenSearch(англ.)
  • Существует определённый набор готовых шаблонов внешнего вида. Самостоятельное редактирование внешнего вида приветствуется. (все страницы написаны с помощью php) (http://ru.wikipedia.org/wiki/DokuWiki)

Некоторые сспользуемые плагины

В определенный момент встал политический вопрос о переезде со старых вики. Основная проблема в том, что перебивать руками такой объем текста задача не из легких. И было приятно узнать, когда выяснилось, что разработчики DokuWiki уже позаботились об этом в разделе Tips and Tricks (http://www.dokuwiki.org/tips), где в одном из пунктов описаны различные инструменты для удобного переезда.

Блог

Создание вики приносило свои плоды, но главный недостаток вики - отсутствие общения. А ведь общение и мозговой штурм основные инструменты при решении проблем. Поэтому было так же решено поднять и свой внутренний блог. Опять же вставал вопрос выбора движка. Одним из вариантов было даже использование плагина для DokuWiki. Но уже полюбишийся дизайн Хабра оказал свое влияние - был выбран движок LiveStreet (http://livestreet.ru). В плюсах этого движка и как уже было сказано удобный и привычный дизайн, опять же набор регулярно пополняющих плагинов, подробные руководства и помощь на самом сайте. Все это несомненно сделало данный движок нашим фаворитом. Приведу список основных возможностей с сайта разработчика:

Основные возможности

  • Использование UTF-8
  • Ведение персональных блогов
  • Возможность создания коллективных блогов
  • Система рейтингов блогов, топиков, комментариев, пользователей
  • Система голосования за блоги, топики, комментарии, пользователей
  • Функциональные комментарии на Ajax'е с возможностью навигации
  • Полнотекстовый поиск по сайту с использованием Sphinx
  • Возможность добавлять топики в избранное
  • Автоподстановка тегов
  • Коллективная внутренняя почта
  • Система контроля доступа(ACL) к разным возможностям сети(создание блога, возможность голосования и т.п.)
  • Возможность создать закрытый сайт
  • Система инвайтов
  • Топики-ссылки
  • Топики-опросы
  • Администрирование своих блогов
  • Назначение модераторов блогов
  • Настройки оповещений на емайл
  • Ограничение по времени на голосования за топики и комментарии
  • Возможность экранирования ссылок от поисковиков
Что же публикуется в нащ внутренний блог. Сюда идут все новости по проектам, по изменениям в самой компании, обзоры экспертиз, обзоры новых технологий (например ведется очень крупный блог по maven), блог Help!, где задаются наболевшие вопросы, и конечно же есть личные блоги каждого.
Немаловажным фактов было заинтересовать людей, чтобы они стали посещать этот блог регулярно. Для это ежедневно составляется и кидается в общую рассылку дайджест, содержащий все новые статьи. Таким образом, через неделю использования блога треть сотрудников уже была зарегестрирована на
блоге, а половина из них активно писала.

Итоги

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

вторник, 22 сентября 2009 г.

Приложения для айфона повышаюшие продуктивность

Evernote

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

Сбор ссылок Проводя много времени на хабре, в чтении рсс-лент и твиттера, постоянно просматриваю десятки ссылок. И в тех случаях, если я что то не успеваю просмотреть - то кидаю в отдельный блокнот, где ссылки сгруппированы по тематике, например: Дизайн, Тайм-менеджмент, ExtJS и так далее. А в тех случаях, когда у меня есть время, но нет компьютера, я эти ссылки могу просмотреть, и понять, нужны ли мне они.
Переводы Англоязычный интернет полон интересных статей. И совмещая приятное с полезным - чтение статей и повышение навыка английского языка - я завел отдельный блокнот под переводы. В нем каждая заметка озаглавлена названием статьи, содержит в сфебе ссылку на статью, а так же английский текст. Под каждым абзацем на английском я пишу перевод на русском, потом собираю все в единое целое и перевод готов.
Написание статей Любая статья - дело серьезное, поэтому на ее написание нужно время, которого катастрофически не хватает. Поэтому имея Эвернот я могу на работе, дома и в любой точке эти статьи читать, редактировать и писать. В частности эта статья была частично написана с айфона.
Учеба Я студент. И как любой студент, я пишу лекции, читаю методички и прочее. Так вот, занеся лекции и прочие учебные материалы в айфон я всегда буду иметь доступ к ним, а так же мне легко по ним навигироваться.
Линк на iStore

Mighty Docs

Те, кто используют Google Docs, обязательно оценят это приложение. Mighty Docs позволяет вам загружать на айфон документы из своего гугл аккаунта. Загрузка происходит в два этапа. На первом вы просто видите список всех имеющихся документов, как в общем списке, так и в варианте группировки по папкам. На втором этапе вы выбираете документ и он заливается к вам на телефон. Я в первую очередь использую его для просмотра презентаций и таблиц эксэля.
Линк на iStore

Remember The Milk


Одно из тех приложений, на которые следует потратить свои кровные. Органайзер Remember The Milk, созданный маленькой австралийской компанией, имеет весьма приятный и понятный интерфейс и, что является несомнен-ным плюсом, доступен на русском языке. Кроме набора стандартных опций (список задач, групповая работа и т. д.), Remember The Milk имеет и интересную особенность. Благодаря интеграции с Google Maps выполняется привязка задач к определенным местам, т. е. вы можете составить список для каждого из городов, которые планируете посетить. В целом, добавление задач мало отличается от аналогичных разработок — указываете событие, когда оно состоится, будет ли оно повторяться, прописываете теги, добавляете заметки. Но есть и одна особенность — уведомления о событии можно получать не только по электронной почте, но и на мобильный телефон, интернет-пейджер (большой список поддерживаемых протоколов включает в себя и ICQ, и Google Talk, и даже Skype).
Линк на iStore

TwitterFon/TwitterFon Pro


Twitter захватывает все большую и большую аудиторию, так что без него никак остаться нельзя. А возможность просматривать статьи не выходя из него, заливать фотографии и делать все остальное, что дает веб-вариант, делает это приложение невероятно удобным. Интерфейс состоит из 5 вкладок: Friends – здесь можно читать ленты ваших друзей, если они вставили ссылку то можно прямо сразу на неё нажать и просмотреть через встроенный браузер. Mentions - в этой вкладке можно посмотреть ваши ретвиты Messages - здесь можно просматривать ваши личные сообщения. Favorites - здесь можно просматривать ваши любимые сообщения Search - в этой вкладке можно искать по тегам,скажем вы хотите узнать мнение людей по поводу Snow leopard вы ищете по тегу Snow leopard и видите все сообщения ,в которых он упоминался.. Основные отличия Pro версии от Free:
  1. возможность работы с несколькими акаунтами.
  2. полноразмерная клавиатура.
  3. загрузка фотографий на flickr.
  4. интеграция с ping.fm
  5. встряска телефона для обновления.
  6. 4 темы.

Линк на iStore

Files/Files Lite


Files позволяет закачивать с Mac или PC различные документы на iPhone\iPod touch через wifi и открывать их на телефоне. Поддерживаемые форматы: Microsoft Office, iWork, PDF, фото, картинки, TXT, HTML, видео- и аудио-файлы, поддерживаемые iPhone\iPod Touch. Есть полноэкранный просмотр, вертикальный и горизонтальный режимы. Также можно добавлять закладки на длинные файлы при просмотре, удалять ненужные файлы, ставить пароль на блокировку просмотра файлов. Подключение идет по протоколу WebDAV. Отличия Files lite:
  1. Ограничение объема данных 200 MB (в полной версии можно использовать все свободное простраyство диска iPhone)
  2. Отсутствие возможности установки пароля на файлы
  3. Нет поиска, закладок
  4. Нет копирования картинок из Files в альбом iPhone

Линк на iStore

RssRunner


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

Линк на iStore

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