-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathadvice-to-junior-developers.html
181 lines (166 loc) · 14.1 KB
/
advice-to-junior-developers.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
<!DOCTYPE html>
<html lang="en">
<head>
<link href='//fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,700,400italic' rel='stylesheet' type='text/css'>
<link rel="stylesheet" type="text/css" href="http://www.emadmokhtar.com/theme/stylesheet/style.min.css">
<link rel="stylesheet" type="text/css" href="http://www.emadmokhtar.com/theme/stylesheet/pygments.min.css">
<link rel="stylesheet" type="text/css" href="http://www.emadmokhtar.com/theme/stylesheet/font-awesome.min.css">
<link href="http://www.emadmokhtar.com/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="Emad Mokhtar's Framework Atom">
<link href="http://www.emadmokhtar.com/feeds/all.rss.xml" type="application/rss+xml" rel="alternate" title="Emad Mokhtar's Framework RSS">
<link rel="shortcut icon" href="http://www.emadmokhtar.com/images/favicon.ico" type="image/x-icon">
<link rel="icon" href="http://www.emadmokhtar.com/images/favicon.ico" type="image/x-icon">
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="robots" content="" />
<meta name="author" content="Emad Mokhtar" />
<meta name="description" content="One day I answered What is the best advice you can give to a junior programmer? question on Quora.com. I was shocked that my answer got many upvotes, so I thought to share my answer to this question on my blog. First, let me acknowledge you that my answers are just my experience, what I missed during my career as software developer, and I wished someone told me this advice. Be humble be foolish be patient, you have a long journey of learning, so keep learning. Technologies are changing so fast, so fast that you can't master everything, but you need to read about everything in software development, read blogs, news, etc. Invest your learning time in what you'll be master in. Don’t be afraid to fail. Making mistakes is a part of the learning, so please don’t be afraid to make mistakes, but learn from them. Even great software developers got fired, made mistakes, and they feel down, but what makes them great that they get up and learn from mistakes. Read about The Ten Commandments of Egoless Programming You will need these commandments during your journey, They helped me in my first job with a …" />
<meta name="keywords" content="career, developer, programmer">
<meta property="og:site_name" content="Emad Mokhtar's Framework"/>
<meta property="og:title" content="Advice to Junior Developers"/>
<meta property="og:description" content="One day I answered What is the best advice you can give to a junior programmer? question on Quora.com. I was shocked that my answer got many upvotes, so I thought to share my answer to this question on my blog. First, let me acknowledge you that my answers are just my experience, what I missed during my career as software developer, and I wished someone told me this advice. Be humble be foolish be patient, you have a long journey of learning, so keep learning. Technologies are changing so fast, so fast that you can't master everything, but you need to read about everything in software development, read blogs, news, etc. Invest your learning time in what you'll be master in. Don’t be afraid to fail. Making mistakes is a part of the learning, so please don’t be afraid to make mistakes, but learn from them. Even great software developers got fired, made mistakes, and they feel down, but what makes them great that they get up and learn from mistakes. Read about The Ten Commandments of Egoless Programming You will need these commandments during your journey, They helped me in my first job with a …"/>
<meta property="og:locale" content="en_US"/>
<meta property="og:url" content="http://www.emadmokhtar.com/advice-to-junior-developers.html"/>
<meta property="og:type" content="article"/>
<meta property="article:published_time" content="2018-04-09 19:00:00+03:00"/>
<meta property="article:modified_time" content=""/>
<meta property="article:author" content="http://www.emadmokhtar.com/author/emad-mokhtar.html">
<meta property="article:section" content="career"/>
<meta property="article:tag" content="career"/>
<meta property="article:tag" content="developer"/>
<meta property="article:tag" content="programmer"/>
<meta property="og:image" content="http://www.emadmokhtar.com/images/profile.jpg">
<title>Emad Mokhtar's Framework – Advice to Junior Developers</title>
</head>
<body>
<aside>
<div>
<a href="http://www.emadmokhtar.com">
<img src="http://www.emadmokhtar.com/images/profile.jpg" alt="" title="">
</a>
<h1><a href="http://www.emadmokhtar.com"></a></h1>
<p>Geek developer who's in search of code perfection.</p>
<nav>
<ul class="list">
<li><a href="http://www.emadmokhtar.com">Blog</a></li>
<li><a href="http://www.emadmokhtar.com/pages/podcasts.html#podcasts">Podcasts</a></li>
<li><a href="http://www.emadmokhtar.com/pages/projects.html#projects">Projects</a></li>
<li><a href="https://emadmokhtar.github.io/resume" target="_blank">Resume</a></li>
</ul>
</nav>
<ul class="social">
<li><a class="sc-envelope-o" href="mailto:emad@emadmokhtar.com" target="_blank"><i class="fa fa-envelope-o"></i></a></li>
<li><a class="sc-github" href="https://www.github.com/EmadMokhtar" target="_blank"><i class="fa fa-github"></i></a></li>
<li><a class="sc-linkedin" href="https://www.linkedin.com/in/emadmokhtar/" target="_blank"><i class="fa fa-linkedin"></i></a></li>
<li><a class="sc-stack-overflow" href="http://stackoverflow.com/users/373051/emad-mokhtar" target="_blank"><i class="fa fa-stack-overflow"></i></a></li>
<li><a class="sc-facebook" href="https://www.facebook.com/emadmokhtarframework/" target="_blank"><i class="fa fa-facebook"></i></a></li>
<li><a class="sc-twitter" href="https://twitter.com/emadmokhtar" target="_blank"><i class="fa fa-twitter"></i></a></li>
</ul>
</div>
</aside>
<main>
<nav>
<a href="http://www.emadmokhtar.com">Home</a>
<a href="https://emadmokhtar.github.io/resume">Resume</a>
<a href="http://www.emadmokhtar.com/feeds/all.atom.xml">Atom</a>
<a href="http://www.emadmokhtar.com/feeds/all.rss.xml">RSS</a>
</nav>
<article>
<header>
<h1 id="advice-to-junior-developers">Advice to Junior Developers</h1>
<p>Posted on Mon 09 April 2018 in <a href="http://www.emadmokhtar.com/category/career.html">career</a> <b>Read in 3 min.</b></p>
</header>
<div>
<p><img alt="journey" src="http://www.emadmokhtar.com/images/oziel-gomez-555955-unsplash.jpg"></p>
<p>One day I answered <a href="https://www.quora.com/What-is-the-best-advice-you-can-give-to-a-junior-programmer/answer/Emad-Mokhtar">What is the best advice you can give to a junior programmer?</a> question on Quora.com. I was shocked that my answer got many upvotes, so I thought to share my answer to this question on my blog.</p>
<p>First, let me acknowledge you that my answers are just my experience, what I missed during my career as software developer, and I wished someone told me this advice.</p>
<ol>
<li>
<p><strong>Be humble be foolish be patient, you have a long journey of learning, so keep learning.</strong> Technologies are changing so fast, so fast that you can't master everything, but you need to read about everything in software development, read blogs, news, etc. Invest your learning time in what you'll be master in.</p>
</li>
<li>
<p><strong>Don’t be afraid to fail.</strong> Making mistakes is a part of the learning, so please don’t be afraid to make mistakes, but learn from them. Even great software developers got fired, made mistakes, and they feel down, but what makes them great that they get up and learn from mistakes.</p>
</li>
<li>
<p><strong><a href="https://blog.codinghorror.com/the-ten-commandments-of-egoless-programming/">Read about The Ten Commandments of Egoless Programming </a></strong> You will need these commandments during your journey, They helped me in <a href="http://www.emadmokhtar.com/being-a-team-member.html">my first job with a team</a> and they are so nice that I want to print them as a poster and hang it on my home office.</p>
</li>
<li>
<p><strong>Read other developers code.</strong> Github is your friends, so pick some projects and start to read their codes, when I tried to contribute to Django project for the first time, I was not understanding anything from the code, and you'll feel the same first time, don't worry ask someone (Check the next point) and learn to read someone else code. One day during my tech interview the interviewee told me that what you are missing it reading Python code, please go read Python source code, dig deep into it, and learn.</p>
</li>
<li>
<p><strong>Ask, ask, ask, ask, and ask.</strong> Yes, like I said in point number 1 be humble, so keep asking your mates and other programmer and learn from them, and listen and evaluate after that, don't take everyone's advice with research, please don't do research to prove they are wrong, do the research to get second opinion and learn more about it.</p>
</li>
<li>
<p><strong>THERE IS NO ROCKSTAR/NINJA/GURU developer</strong> it is a marketing word, and they are not true, nice programmers are making mistakes and they are not superheroes, there are some companies that advertise they need Ninja, Rockstar or Guru developer, no way they do not exist and they won't, developer are human who make mistakes, learn, and improve. In other words, it is a <a href="https://en.wikipedia.org/wiki/Software_craftsmanship">craftsmanship</a>.</p>
</li>
<li>
<p><strong>Read books about the career beside learning the tools/language/framework, programming is not about writing code only.</strong> Here is my list of <a href="http://www.emadmokhtar.com/how-do-i-learn.html">books to read</a>.</p>
</li>
<li>
<p><strong>Write a blog.</strong> Start a blog and write what you have learned during your day, and write is as your source of knowledge. I started this one for this purpose and many times I'll return to my blog to get the information I need.</p>
</li>
<li>
<p><strong>Contribute to open source software.</strong> You will learn a lot from contributing to open source project, so you will learn, helping the community, and the maintainers will be happy. Start small and learn more about the project, start with a framework/tool you are using, there are so many ways to contribute to open source projects, you can:</p>
<ul>
<li>Report a bug.</li>
<li>Reproduce the bug, and write how to reproduce it on the ticket.</li>
<li>Write a documentation.</li>
<li>Translate the software or the documentation.</li>
<li>Write some code to fix a bug or implement a new feature.</li>
</ul>
</li>
<li>
<p><strong>Enjoy the journey.</strong> You need to enjoy the journey, it won't be an easy one, and you will have some difficult times, but remember to be patient, and like what you are doing to keep going.</p>
</li>
</ol>
</div>
<div class="tag-cloud">
<p>
<a href="http://www.emadmokhtar.com/tag/career.html">career</a>
<a href="http://www.emadmokhtar.com/tag/developer.html">developer</a>
<a href="http://www.emadmokhtar.com/tag/programmer.html">programmer</a>
</p>
</div>
<div id="disqus_thread"></div>
<script type="text/javascript">
var disqus_shortname = 'emadmokhtarsframework';
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript" rel="nofollow">comments powered by Disqus.</a></noscript>
</article>
<footer>
<p>© Emad Mokhtar </p>
<p>Built using <a href="http://getpelican.com" target="_blank">Pelican</a> - <a href="https://github.com/alexandrevicenzi/flex" target="_blank">Flex</a> theme by <a href="http://alexandrevicenzi.com" target="_blank">Alexandre Vicenzi</a></p> </footer>
</main>
<!-- Google Analytics -->
<script type="text/javascript">
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-11401860-2', 'auto');
ga('send', 'pageview');
</script>
<!-- End Google Analytics -->
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BlogPosting",
"name": "Advice to Junior Developers",
"headline": "Advice to Junior Developers",
"datePublished": "2018-04-09 19:00:00+03:00",
"dateModified": "",
"author": {
"@type": "Person",
"name": "Emad Mokhtar",
"url": "http://www.emadmokhtar.com/author/emad-mokhtar.html"
},
"image": "http://www.emadmokhtar.com/images/profile.jpg",
"url": "http://www.emadmokhtar.com/advice-to-junior-developers.html",
"description": "One day I answered What is the best advice you can give to a junior programmer? question on Quora.com. I was shocked that my answer got many upvotes, so I thought to share my answer to this question on my blog. First, let me acknowledge you that my answers are just my experience, what I missed during my career as software developer, and I wished someone told me this advice. Be humble be foolish be patient, you have a long journey of learning, so keep learning. Technologies are changing so fast, so fast that you can't master everything, but you need to read about everything in software development, read blogs, news, etc. Invest your learning time in what you'll be master in. Don’t be afraid to fail. Making mistakes is a part of the learning, so please don’t be afraid to make mistakes, but learn from them. Even great software developers got fired, made mistakes, and they feel down, but what makes them great that they get up and learn from mistakes. Read about The Ten Commandments of Egoless Programming You will need these commandments during your journey, They helped me in my first job with a …"
}
</script></body>
</html>