Passez-vous vos heures de travail à apprendre? [fermé]

79

Passez-vous vos heures de travail à apprendre de nouvelles choses, à lire des blogs techniques, des livres sur la programmation, etc.? Quelle est votre opinion à ce sujet? Un employeur peut-il bénéficier d’avantages permettant aux développeurs de passer environ 1 à 1,5 heure par jour à l’apprentissage? Sera-t-il remboursé à l'avenir (avec une meilleure productivité, etc.)?

make_sense
la source
5
Personnellement, je consacre environ une heure par jour à la lecture de nouveaux articles, articles, etc. si mes tâches ne sont pas urgentes et que je pense que cela est utile. Vous pouvez dire que c'est mieux de le faire pendant votre temps libre, mais souvent, il est assez difficile d'y consacrer du temps, bien que tout dépende de vos priorités.
make_sense
4
J'ai remarqué que Programmers.SE get est beaucoup moins actif le soir (sous réserve de la variation du fuseau horaire), donc je suppose que la plupart d'entre nous le faisons.
Craige
3
Je passe beaucoup de temps en SE ... la moitié du temps, ça me sauve la vie - et l'autre moitié que je passe à essayer de participer à la communauté. Quoi qu'il en soit, c'est un investissement dans les objectifs à long terme de mon entreprise, car j'apprends chaque jour de nouvelles choses essentielles.
eckza
3
Si vous êtes un consultant ou un entrepreneur, vous n'avez pas trop le choix, vous devez consacrer 100% de votre temps facturable à la réalisation d'un projet.
aceinthehole
1
Je pense que cette question aurait pu être mieux si elle avait clarifié si elle faisait référence à l'apprentissage dans un domaine étroitement lié au travail ou à l'apprentissage dans un domaine uniquement lié à la programmation en général. Est-ce "J'ai besoin d'apprendre cette syntaxe SQL pour résoudre nos problèmes de base de données" ou est-ce plus comme 20% du temps de Google? Je pense que si le PO demandait environ 20% de temps, beaucoup de gens changeraient de réponse.
Neil Traft

Réponses:

127

Je suis d’avis qu’il est essentiel, pour un bon environnement de développement, de consacrer une heure ou deux au maximum à l’exploration et à l’apprentissage, à l’exception du moment critique pour une application.

Un environnement qui ne le fait pas est un drapeau rouge dans mon livre car il me dit qu'ils ne valorisent pas l'amélioration.

MODIFIER

Le pire de tous est le lieu qui réprimande ses développeurs pour la lecture de blogs / sites techniques au lieu de "l'écriture de code". Cela, pour moi, indique un environnement qui ne se soucie pas de ses développeurs, au-delà de ce qu’ils peuvent extraire d’eux.

Wayne Molina
la source
9
Ce qui est malheureux, c’est que j’ai rencontré beaucoup, beaucoup d’entreprises qui tombent dans cette catégorie et qui ne permettent aucun "temps mort" aux développeurs. Entendre "il y a toujours quelque chose à travailler" est la pire des choses pour moi.
Wayne Molina
Essentiel, mais très difficile.
Brian Knoblauch le
5
Très difficile de faire comprendre à une entreprise que c'est essentiel;)
Wayne Molina
9
Expliquez que c'est comme des couche-gardiens, ils doivent connaître toutes les nouvelles lois. Ou mieux, les médecins, ils ont besoin de connaître toutes les nouvelles techniques et études pour devenir un grand médecin. Les références évoluent constamment, tout comme en programmation.
1
@jwenting C'est mon point de vue; une bonne entreprise sait que "apprendre pendant les heures de bureau" est une bonne chose; un mauvais ne sait pas ou s'attend à ce qu'il soit indemnisé. Beaucoup plus d'entreprises tombent malheureusement dans la catégorie "mauvaise" que la "bonne" à cet égard.
Wayne Molina
44

Je pense que presque tous les employeurs finissent par payer les employés pour environ 1 à 2 heures d’apprentissage au moins quelques jours par semaine. Même si vous ne faites que rechercher de la documentation, vous apprenez encore quelque chose que vous ne saviez pas auparavant.

Personnellement, je n'aime pas mettre en place des «tranches de temps» pour les autres, c'est un peu trop l'impression de gérer le temps de quelqu'un d'autre. Si je vous ai engagé, je l’ai fait parce que j’ai le sentiment que vous savez gérer votre temps mieux que moi. Vous définissez des objectifs de productivité et des délais occasionnels, mais à part cela, laissez l'employé faire ce qui le rend le plus productif.

Si vous avez besoin de passer six heures à trouver le meilleur moyen d’aborder un problème en étudiant plusieurs algorithmes, c’est bien. Si vous avez besoin de passer 20 minutes à parcourir une référence d'implémentation linguistique, c'est bien.

En bref, encouragez simplement les gens à apprendre et à s’améliorer, car ils voient le besoin et la possibilité de le faire. Payer pour la formation quand cela fait sens et ne pas dépenser moins cher en livres. Cela se traduit généralement par une grande productivité et par le maintien d'excellents employés.

Tim Post
la source
4
+1 pour le dernier paragraphe seulement. Je souhaite plus d'entreprises pensé comme ça!
Wayne Molina
3
+1 parce que je suis d'accord pour dire que vous ne devriez pas avoir à configurer de "tranches" de temps pour apprendre. Apprenez selon vos besoins, et si vous avez appris ce que vous devez savoir et devriez travailler à sa mise en œuvre, faites-le plutôt.
Rachel le
une complany peut certainement augmenter la fidélité de ses développeurs si elle suit les conseils du dernier paragraphe.
make_sense
Je ne pense vraiment pas que c’est ce que le PO demandait. Bien sûr, tous les programmeurs apprennent au cours de leur travail, ce n'est même pas une question. La question que je voudrais poser est la suivante: "Passez-vous vos heures de travail à apprendre quelque chose qui ne vous aidera pas à résoudre tout problème immédiat (mais qui peut faire de vous un meilleur programmeur)?"
Neil Traft
Livres - yay, formation - nay
Arnis Lapsa
13

Je passe quelques heures chaque matin à apprendre quelque chose de nouveau. Cela peut être soit quelque chose lié à ma pile technologique principale (.NET, WPF, ASP.NET MVC, Linq, etc.) ou je vais jouer avec de nouveaux langages, des frameworks web, ou même faire du calcul et d'autres calculs difficiles à garder l'esprit souple. Bien sûr, je me rends au travail à 6h30 et le fais jusqu'à 9h00, heure à laquelle commence la journée de travail. Lorsque vous avez de petits enfants à la maison comme moi, vous devez travailler tôt le matin en dehors de la maison pour pouvoir vous concentrer totalement. Cela laisse aussi mes soirées ouvertes pour être papa. Donc, oui, je pense qu'il est important pour un employeur de donner du temps à ses travailleurs du savoirpour atteindre de nouvelles connaissances. Je dis toujours à mes développeurs de prendre le temps d'apprendre de nouvelles choses et même de les encourager à assister à des conférences et à des séminaires afin de garder leur esprit souple. Même s'ils n'écrivent rien à Erlang, cela peut éventuellement se manifester quelque part plus tard sur le plan conceptuel et s'avérer très utile dans un autre projet.

Nodey Le Node Guy
la source
2
Donc, vous apprenez de 18h30 à 21h00, puis de 9h00 à 17h00, et par conséquent, vous n’apprenez pas pendant les heures de travail? Je suis heureux que vous ayez la bonne attitude et je pense que vous êtes la première personne à avoir effectivement répondu à la question du PO, mais je ne peux pas m'empêcher de me faire un peu l'avocat du diable. :-)
Neil Traft le
@NeilTraft - Ha, j'ai compris votre argument. Je pense que je faisais référence à un apprentissage académique pur et à l'exploration de nouveaux concepts. Bien sûr, nous continuons à apprendre pendant que nous travaillons aussi, mais il s’agit plutôt d’une connaissance appliquée, du moins pour moi. J'apprendrais peut-être à utiliser quelque chose de nouveau avec ASP.NET MVC ou à écrire des requêtes killer Linq ou quelque chose du genre, mais il n'y a pas beaucoup de temps pour vérifier Rust or Go ou une nouvelle technologie.
Nodey The Node Guy
8

C’est pourquoi on l’appelle "salle de lecture" :) Configurez un lecteur RSS ou tout ce qui vous plait qui peut regrouper les publications de divers endroits que vous jugez utiles, puis imprimer quelques articles par jour et les emporter avec vous.

Mais au-delà de cela, si vous faites quelque chose dont vous connaissez déjà les réponses et ne passez pas au moins une partie de votre journée à la repérer, vous devez changer de travail. La complaisance est une tuerie dans cette profession.

Dave Wise
la source
11
Aussi très vrai. La complaisance mène à la stagnation. La stagnation mène à la paresse. La paresse conduit à l'obsolescence. Chemin vers le côté obscur, ils sont. Une fois que vous aurez emprunté le chemin sombre, il dominera à jamais votre destin.
Wayne Molina
7

En général, je n'ai pas vraiment commencé à écrire du code avant le déjeuner. Généralement, mes jours allaient quelque chose comme ceci:

9h-10h: Stackoverflow (y compris les liens de blog intéressants, etc.), email, peut-être revoir quelques-uns des changements récents dans le contrôle de source pour avoir une idée de la direction prise par le projet récemment.

10h-12h: habituellement consacré au codage "léger". Refactoring, corrections de bugs mineurs et conception de la manière dont la mise en œuvre fonctionnera, quel que soit le type de conception, avec parfois une conception un peu plus avancée au besoin

13h-15h: codage généralement lourd. Le codage fastidieux convient ici.

15h-15h30 / 16h: Un peu plus d'apprentissage comme "pause".

16h- ?: Si j'étais vraiment dans la zone, je serais connu pour rester environ une heure en retard. Bizarrement, c’est probablement le moment le plus productif pour moi. Parce que d'habitude je suis laissé seul après 16h et que je suis une personne de nuit naturelle alors tout ce qui se passe avant 12h me semble "tôt".

Maintenant, je dis que c'est injuste pour la compagnie de vous payer pour écrire des articles de blog et autres. Cela inclut parfois les réponses au débordement de pile .

Earlz
la source
3
Il est important de connaître le meilleur moment pour travailler sur le codage "dur" ou sur des problèmes "difficiles". Je trouve que lorsque mon esprit est au plus vif (le matin), je peux résoudre quelque chose en 10 minutes qui peut prendre des heures à d’autres moments.
B Seven
1
Je tire beaucoup de StackExchange. Les sites communautaires tels que celui-ci ne fonctionnent que si les gens remettent quelque chose. Si un responsable devait se plaindre de mes contributions, je répondrais que cela représente le coût des affaires: vous obtenez ce que vous donnez.
Underverse
5

Apprendre, hein? Je dirais que je le fais la plupart du temps au travail. Pour moi, l' apprentissage est l'essence même de la programmation et un corollaire naturel du fait que vous résolvez toujours de nouveaux problèmes (c'est-à-dire que vous ne faites pas la même chose deux fois). 

Si vous n'apprenez pas pendant vos heures de travail, vous le faites mal ou vous devez rechercher un meilleur environnement de travail.

(Cela dit, pour les blogs et les livres, j'ai surtout tendance à utiliser mon temps libre, sauf lorsque cela est étroitement lié au travail à accomplir.)

Jonik
la source
4

Du point de vue de la direction, les employeurs souhaitent généralement que leurs employés apprennent constamment. Cela peut être une formation en classe formelle ou un apprentissage en ligne, une mise à jour de vos flux RSS, la lecture de revues techniques, la lecture de vidéos, la présence d'un mentor, le mentorat d'autres personnes, etc.

Le frottement vient quand

  1. votre directeur pense que vous devriez déjà savoir ce genre de choses
  2. vous avez une date limite pour un projet
  3. vous commencez à forcer votre nouvel apprentissage sur le monde des affaires sans passer par les canaux appropriés (par exemple, je viens de tout savoir sur ObservableCollections et je pense que c'est génial, je vais donc commencer à le faire dans ma partie de codebase .)

Tout cela étant dit, l’attente générale est que vous devez diriger votre propre apprentissage par rapport au modèle 70-20-10.

  • 70% devraient suivre un apprentissage sur le tas, comme pour corriger votre code avec quelque chose de plus efficace
  • 20% devraient suivre un apprentissage informel, comme être mentoré et lire des blogs ou assister à une conférence
  • 10% devraient être une formation formelle, comme un événement en salle de classe de deux jours ou des modules d'apprentissage en ligne avec suivi SCORM

Si votre entreprise ne dispose pas de la portion de formation formelle de 10%, demandez-la.

Todd Main
la source
3

Pour moi, programmer, c'est apprendre . Chaque fois que j'écris une méthode, je peux apprendre quelque chose:

  • Est-ce la meilleure façon de faire cela?
  • Quelle est l'utilisation de la mémoire / du processeur?
  • Quels sont les compromis?
  • Quels sont les problèmes potentiels qui pourraient faire échouer cette méthode? (impasse, perte de connexion, etc.)
  • Est-ce que cette méthode doit faire partie d'une bibliothèque pour que je puisse la réutiliser plus tard?
  • Comment puis-je expliquer ce système en termes non techniques afin que tout le monde puisse le comprendre?
  • Comment vais-je me souvenir et organiser tout ce que je viens d'apprendre?

Chaque fois que je vais sur Programmers.SE ou Stack Overflow, j'apprends quelque chose.

Je pense qu'être programmeur, c'est apprendre. Et tout ce que nous apprenons peut être utilisé pour nous améliorer en tant que programmeur et contribuer à la réussite des projets sur lesquels nous travaillons.

B Seven
la source
2

Je passe environ (des heures de travail):

  • ~ 5% de temps pour écrire du code
  • ~ 10% du temps nécessaire pour regarder des vidéos de Starcraft2 sur YouTube et boire un café
  • ~ 20% du temps à réfléchir aux problèmes actuels auxquels le projet est confronté
  • ~ 65% du temps à apprendre des choses nouvelles et passionnantes
Arnis Lapsa
la source
3
Avec soin, vous postez des choses comme ça ... Certains employeurs peuvent ne pas prendre à la légère le temps que vous passez une journée payée par semaine à regarder des trucs de starcraft sur youtube. À moins que vous ne travailliez réellement sur la chose!
Newtopian
1
@Newtopian résultats comptent
Arnis Lapsa
@Arnis: ne vous méprenez pas, si j'étais votre patron et que vous livriez la marchandise, je ne pourrais pas vous donner l'âne d'un rat si vous passiez quelque temps sur votre tube. Je le vois peut-être comme un signe que je ne vous lance pas suffisamment de défi, mais c'est tout. Pour beaucoup d'autres chefs pointu, vous les volez et ils ne l'aimeront pas du tout. Cela dit, mon commentaire était davantage lié au fait que les gens se faisaient virer pour beaucoup moins simplement en postant des choses stupides sur leur page facebook, par exemple. J'espérais juste pour votre bien, votre patron n'était pas du genre poilu :-) A bientôt
Newtopian
2
@Newtopian comme je le vois - la programmation est un art. Vous ne pouvez pas le forcer. Si vous le faites, vous vous retrouvez avec de la musique pop moche. ce n'est pas que je ne veux pas travailler, c'est que parfois je ne peux tout simplement pas. et je suis complètement sans honte et honnête à ce sujet. :)
Arnis Lapsa le
1
@nikie o_0 pourquoi les programmeurs devraient-ils travailler à côté de votre évier de cuisine?! désolé, je ne peux pas répondre à ça. Je pense que c'est une analogie biaisée et mauvaise.
Arnis Lapsa
2

Lire des articles techniques sur le Web est une habitude pour moi depuis 2 ans. Chaque jour, je passe au moins une heure ou plus à parcourir des articles. Au début, je sautais sur chaque article et essayais d'apprendre. C’était mon intérêt et cela semblait improductif en raison du grand nombre d’articles et de sujets que l’on pouvait traiter. Probablement, "Jack de tous les métiers, mais maître de rien" correspond à cette situation. Au fil du temps, j'ai trouvé beaucoup de bonnes ressources et identifié mes intérêts. Après cela, j’ai réduit l’un des sujets et commencé à être sélectif.

Ce que j’ai gagné en lisant toutes les lectures, c’est de trouver de bonnes ressources comme le débordement de pile, Y Combinator, un magazine cinglant, etc. Ce que je gagnerai, c’est une expertise des sujets que je lis. Donc, ce que je veux dire, c'est qu'il faut aussi être sélectif dans la lecture. Lire est toujours une bonne habitude. La lecture sélective est excellente.

En outre, une autre observation est que presque toutes les personnes autour de moi que je considère comme de bons programmeurs, continuez à lire et à me montrer du bon matériel. C'est comme si notre lecture aidait les autres à devenir meilleurs - la partie sociale.

Sundeep
la source
1

Je préfère le temps d'apprentissage le matin. Je commence la journée en apprenant de nouvelles choses qui me trottent dans la tête et / ou en lisant les flux d'informations techniques que je suis dans Google Reader. Parfois, je passe aussi du temps après le déjeuner. Si j'ai envie d'apprendre quelque chose de nouveau qui ne bloque pas ma tâche actuelle, je le mets en place pour le lendemain matin.

Bien, j'évite aussi d'écrire un blog pendant les heures de travail car cela peut prendre plus que le temps estimé. Le meilleur moment pour écrire un blog ou participer à la communauté (pour moi) est après l'heure de bureau.

Yeameen
la source
1

on peut trouver les problèmes autour ou à partir des projets sur lesquels il travaille. Créez ou installez des problèmes pour votre endurance karmique. Regardez en profondeur autant que vous le pouvez. On trouvera son chemin sur les chemins glorifiés de la vie de travail autodidactique. Quand on devient plus productif, on trouve le temps d'apprendre à devenir plus productif que lui. La nourriture intellectuelle évolutive de soi-même, dis-je, fait toujours du bien, même si vous n'êtes pas programmeur. Cela améliore simplement le processus de réflexion. Il y a différentes façons d'aborder le problème. Optez pour l'option de creuser plus. Ne soyez jamais satisfait de la solution. Même après la livraison validée, il est possible de revoir la sortie. Il faut affûter ses outils. Le meilleur endroit pour développer votre propre soucoupe volante est définitivement dans votre chambre noire personnelle!

zudokod
la source