Профессиональное развитие:Нахождение "любимого проекта” для работы - затем управление другими обязательствами [закрыто]

softwareengineering.stackexchange https://softwareengineering.stackexchange.com/questions/208232

Вопрос

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

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

Но я понятия не имею, как с ними справиться!Возьмем, к примеру, Встроенный фреймворк Chromium;Я всегда был поклонником пользовательского интерфейса приложения GitHub, а также был впечатлен Evernote и Spotify.Когда я узнал, как создавались эти пользовательские интерфейсы, я, естественно, попытался придумать проект, с которым я мог бы поиграть и спродюсировать за выходные.(Чего, при минимальном взаимодействии с операционной системой (возможно, простых манипуляций с файлами), должно быть достаточно) Но я не могу придумать ни одной вещи, которую можно было бы разработать.

На работе мне было поручено переквалифицироваться в Ruby on Rails;не желая действовать вслепую, я решил почитать несколько книг и попробовать несколько техник.Теперь помимо обычных Lynda.com примеров, и очень хороших "Гибкая веб-разработка с использованием Rails" проект из книги... Я не могу придумать ни одной вещи, которую можно было бы разработать.

Обычно я бы подумал о том, чтобы внести свой вклад в какое-нибудь программное обеспечение FOSS, и с фреймворками, которые я регулярно использую, у меня действительно есть несколько идей, и я состою в соответствующих списках рассылки, то есть в списке рассылки Apache Cordova, и подписал соответствующие документы, где это требуется.(например, Для проектов, лицензированных Apache)

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

Я боюсь, что это половина успеха, а другая половина состоит в том, как сохранить такой проект, когда рабочие обязательства могут поглощать ваше личное время, и как бы то ни было, время простоя - довольно ценный товар!

Это было полезно?

Решение

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

Вот как я это делаю.

Стандартные утилиты

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

Например, если вы хотите изучить CEF, вы можете создать действительно красивое HTML-представление для конверта и симпатичный пользовательский интерфейс.Вы могли бы создать его в ruby on rails и установить на свой домашний сервер, чтобы он мог хранить общие адреса и быть доступным для всей вашей семьи.Если вы хотите изучить структуру изображений, вы можете начать делать распечатки красивее.Вы можете написать приложение для мобильного телефона, чтобы оно изучало iOS или Android.

Хобби

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

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

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

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

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

Сработать может все, что угодно

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

Другие советы

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

Без этой искры вдохновения вам будет намного труднее двигаться вперед.

Если бы я был на вашем месте, я бы, возможно, нашел программу, которая вам нравится/нравится, и попробовала бы следующее:

  • Напишите клон (или его подмножество)
  • Напишите дополнительную/добавленную функцию
Лицензировано под: CC-BY-SA с атрибуция
scroll top