Как Вы растете как разработчик, когда Вы - единственный в данной технологии в Вашей компании? [закрытый]

Как премия стороны, Silverlight основана на WPF, и запускающийся с любого позволяет Вам получить знание как для работы с другим. Если дела продолжают идти, веб-, имеющие предварительные знания (и библиотека существующего кода) для передачи легко браузеру (или Windows Live Mesh) могли бы помочь дать программному обеспечению дополнительный арендный договор относительно жизни.

17
задан mlusby 29 September 2009 в 01:37
поделиться

10 ответов

Я всегда так работал. Мои способы улучшить:

  • Чтение высококачественных блогов
  • Применение рекомендаций этих высококачественных блогов (когда это подходит вашему проекту и, конечно, когда позволяет время)
  • Чтение высоко -quality исходный код проекта с открытым исходным кодом
  • Написание как можно большего количества кода, всегда помня о том, что вы узнали, и всегда пытаясь поднять планку качества. Практика не делает совершенства. Только безупречная практика ведет к совершенству .
  • Следите за вещами, не имеющими отношения к вашей работе. Например, если ваша основная работа - кодирование ASP.NET на C #, прочтите материалы о функциональном программировании, F #, Haskell, других веб-фреймворках, таких как django, Ruby on Rails и т. Д. Я не говорю, что вы изучаете ] их, просто см. , как что-то можно сделать иначе. Это расширит ваш кругозор.
  • Когда вы обретете некоторую уверенность в себе: участвуйте в проектах с открытым исходным кодом, ведите блог.

О книгах: ИМХО, книги, которые являются высокотехнологичными (например, "Buzzword 2.0 in Action!" ) не стоит вашего времени. Все происходит так быстро, что, вероятно, они устареют через 6 месяцев после выпуска. Стоит покупать только те книги, которые касаются основных вопросов CS или архитектуры.

О классах: очень сложно найти качественные неуниверситетские классы, которые не были бы пустой тратой времени / денег. В большинстве случаев вы можете быстрее учиться сами. (ОБНОВЛЕНИЕ: перенесемся в 2013 год, МООК - потрясающий, высококачественный, бесплатный обучающий ресурс)

Также будьте осторожны с codeproject,

5
ответ дан 30 November 2019 в 12:44
поделиться

Без наставников вы можете сделать несколько вещей, чтобы улучшить свои навыки:

  • Посещайте занятия. .. особенно, если ваш работодатель будет платить за них.
  • Читайте книги. Они - лучшее в классе.
  • Читайте блоги разработчиков. Они могут не научить вас передовым методам, но они будут держать вас в курсе того, что нового в мире разработки. Это поможет вам не отставать.
  • Предоставлено сообществом Слушайте подкасты ( Hanselminutes , Stackoverflow и т. Д. ) и посмотрите скринкасты ( Dimecast содержит массу хорошего контента).
  • Участвуйте в жизни сообщества. Иногда мы можем казаться резкими, но вы услышите больше всего о лучших практиках, методах кодирования, шаблонах проектирования и т. Д. И различных способах применения всего.
9
ответ дан 30 November 2019 в 12:44
поделиться

Присоединяйтесь к некоторому проекту OSS, который работает с .NET, чтобы получить отзывы о своем коде от опытных разработчиков .NET. Вдобавок изучение чужого кода - отличный способ узнать что-то новое - точно так же, как и вы. Я также согласен с Джастином в том, что чтение блогов, таких как Эрика Липперта , очень полезно

2
ответ дан 30 November 2019 в 12:44
поделиться

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

2
ответ дан 30 November 2019 в 12:44
поделиться

Я нахожусь в той же ситуации, в которой находитесь вы. В основном я учусь на

  • предыдущих проектах / ошибках, особенно когда вы перенимаете старый проект у кого-то другого (50%)
  • google (25%)
  • forum / stackoverflow (25%)
3
ответ дан 30 November 2019 в 12:44
поделиться

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

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

Почему Perl слабо типизирован (или нет)? Что Perl лучше, чем .Net? Чем .Net хорош в Perl, то просто ужасен? Почему существуют эти различия? Как бы вы могли реализовать интерпретатор Perl в .Net? Почему вы можете захотеть?

Почему все в JavaScript - это хеш? Как наследование классов .Net соотносится с прототипами JavaScript? JavaScript ' s первоклассные функции - отличный инструмент или источник обскурантистских злоупотреблений по сравнению со строго и статически типизированными классами .Net?

Каковы фундаментальные структуры данных в каждом языке? Почему для каждого языка эти типы являются фундаментальными для этого языка? Какие различные дизайнерские решения (или отсутствие решений) мотивировали и повлияли на разработку и реализацию каждого языка? Можете ли вы выделить какие-либо общие «родовые» языки среди языков, используемых на вашем рабочем месте? Почему у нас нет «одного языка, чтобы управлять ими всеми»? Должны ли мы?

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

2
ответ дан 30 November 2019 в 12:44
поделиться

A year ago I was pretty much in the same boat and it's interesting when I look back at the things I wasn't so good at. Awareness of the technology you are using is an important one, many people have suggested reading books/blogs etc which are good.

One thing that may help you, is to look at the MCTS material, starting with a foundation exam (I'm working toward 70-536 .NET 2.0 Framework exam) to make sure you have a good base. One of the advantages of this is one that it is credited by Microsoft so you can add it to your CV for the future and it gives you a more structured approach than just reading books.

Secondly read up on design practises, or even design principles (such as Gang Of Four). Do your best to not cut corners, and develop your code in the best re-usable way. This keeps you thinking about design and maintainability which is extremely important.

Finally I'd probably suggest trying to ensure you're not doing the same thing over and over. Don't just work with databases, or UI's etc... Try to get a mixture of things to try new techniques and learn new stuff.

0
ответ дан 30 November 2019 в 12:44
поделиться

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

3
ответ дан 30 November 2019 в 12:44
поделиться

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

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

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

2
ответ дан 30 November 2019 в 12:44
поделиться

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

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

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

1
ответ дан 30 November 2019 в 12:44
поделиться