Let me share a story with you.
It's about a poor man who had an amazing parrot, so amazing he could have a complete conversation with it. He decided to make some money using his parrot’s ability so he took it to the market, where he met a very wealthy man who was interested in paying for a conversation with the parrot. After a couple of days the parrot said no words, with anger and disappointment the poor man went back home with his parrot, on their arrival he set the silent parrot back to it cage only to hear the parrot saying “That was a stressful day.”
Yeah that’s the common scenario with apps, always perfect on your local machine but once in production it becomes the silent parrot.
As a developer, what’s your worst fear? I know mine and it’s not Hello World!
.
When I started learning to code, I remember building ToDo and Weather apps in so many different languages and frameworks especially in Javascript
and PHP
, I was able to build functions like registration, login/logout, friend request, post status, comments and likes.
Then I started reading articles, watching tutorials and going to meet ups and they would mention words like Algorithm, Database Design, Scalable apps and Reusable Codes.
Algorithm… is this another language? Database design… do I need a pencil for this? Scalable apps… what framework is that? Reusable codes… haven’t I done enough copy and paste.
Hearing these words made me feel like the parrot in the field, all the apps I built were for my eyes only, the codes were a complete clone from the video tutorials I watched, some were even a direct copy and paste of an article.
That was a part of the problem, the other was the fact that even though I had done a complete code to code clone from the video tutorial or a copy and paste from an article it just not the same, some functions will always fail.
This created some big questions on my mind, how do I identify myself as a Professional? When do I transform from the learner to the fulfilled? And most importantly how do I build the confident of a developer?
Most clients don’t request for anything close to what my tutorials have thought me.
Some are requesting for apps that can identify where a car is parked, provide the driver with choices of breakfast, lunch, dinner and even pick a fight with the neighbors. I’m like while he is at it, why don’t we put a call to his grandma.
I would see job openings with request of three years experience for a junior developer, Proficient in Vanilla Javascript, must be comfortable with DOM, must understand RESTful API, must understand Everything.js (Not the framework), must remember every co-worker’s name, ability to work with Joker and Dark Vader, must have Facebook, Google, GitHub, Twitter, Medium, Instagram, LinkedIn, Yahoo!, Hotmail (Don’t Panic) and must be ready to attend the gym. Wait… with all the listed features do we still need to gym?
before we continue this is based on my own research
Do you know that, an average tutorial go through at least 5 productions stages, where edits of codes and bugs had to make them reproduce the content over and over again?
Are you getting the picture, this game has no master.
These tutorials do not show you the practical errors they have to face before producing the videos or the articles.
So back to that question about your worst fear, I can’t know yours but mine is kind of related to the tweet below and so with some friends I have interacted with.
Ella Vincent@codegirlchicago@CodeNewbies A2: I haven't contributed to open source projects because I'm afraid I'll mess up the project! I need… twitter.com/i/web/status/9…01:21 AM - 26 Oct 2017
Do you know you can build that client’s app and even get it to call his grandma while he is at it, although that’s of course if she’s alive.
Liquid error: internal
The one tutorial that is very rare online is the tutorial on confidence, there is no framework or library for it, no particular language on it or a design pattern to it.
The important thing when learning to code is to understand the concept and learn the basics of the course, the confident is a thing you have to build, even though we need constant practice with codes to build that, we don’t necessarily use codes to build that, hope I’m not confusing you.
One of the best ways to build that confident is to attend Tech Meet Ups and Tech Conferences, don’t forget to eat those free foods it an important part of building the confident. I think.
Another vital way is to write a blog, you mustn’t write for an audience to read, write first for yourself to remember, if it helps you, indirectly you are helping someone because you are someone and just to mentioned a few free blog spaces you can use medium.com, dev.to, scotch.io and github.io.
Another way which I myself learned from a lady at a We Code Meet Up. Is to develop something and put it out there, let the public use it, let them bring the fight to you because sometimes defense is the best attack.
Just so you understand that this is not a battle field let me put it this way. Build the app, post it and wait for the comments.
Sincerely this article wasn’t supposed to be this long, I just hope you are still reading it which now bring me to another point, no matter what you are building, no matter how important it is especially when there is a deadline simply take a break, take a walk, take a run, talk to people just do something that doesn’t include the electronics.
Joining communities is a very supportive way to build confidence you get to interact with people of your species, Join online forums, visit www.stackoverflow.com, Facebook Groups and Twitter. If you can accept some recommendations from me on twitter follow @CodeNewBies, @ThePracticalDev and @iNidAName. Yeah…. you caught me the last one is mine.
Jump in to discussion don’t be an observer, ask questions, answer questions to your best knowledge, if you miss something out someone will correct you. I thought that was why we came here in the first place. Just make sure whatever you do your questions or answers are in the scope and please don’t be offensive.
And most importantly ASK FOR HELP, don’t be the silent parrot, speak to the wealthy man, what’s there to lose.
Don’t Trust those Tutorial…! Seriously I’m sure by now you understand, I only meant that we need more diverse tutorials. Please follow those tutorials, why else would you look for a courage.
Thank You. I am iNidAName and I’ve just shared my worst fear with you.
Top comments (14)
Awesome article, I was always afraid of writing answers because it can be wrong/not deep enoug. Never thought that it could actually help me in the learning process
Still you must write answer bro,, you dont know even if your not right maybe you will light the way for someone to find some answers from your wrong answer ^^
I relate to this in so many levels. Last year, I tried to make a game on Unity, using C#, but I'd not seen a lot of programming. What did I do?! Followed a 40 video-tutorial series.
It was the biggest mistake I could make. It was so fast and I thought I was learning it all, but most of it was copy and paste, even though I watched every second of it.
When I ended it, I was lost and couldn't add new functionalities to the game or even change a little of what it had. So the game was put on hold.. :/
Buuut, now that I've worked sometime on a company that values learning from practice and discussing the results, I've been back on it. That made me be not as lost as before, because I have an idea of how I should face those problems. I must say that having a realistic expectation is very satisfying and helps me to maintain myself motivated ;)
Thanks for the great article!! Hope you guys find your learning ways too hahaha
I believe I have found the missing piece in my self-study-to-professional puzzle! Thank you for this article.
But still: tutorials are great--as a starting point.
I think when one has the basic and intermediate skills and understanding down pat, they can start with open source projects and build their portfolio from there.
Even so, maybe finding a bootcamp course that covers full-stack or a tutorial covering back-end/database programming in addition to front-end may suffice.
In the end, the student must understand how everything is put together, how things could possibly fall apart, take the app down, build it back up, etc.
I absolutely agree with you on the networking aspect: go to meetups, participate in discussions, ask questions, and write down your progress.
Again, excellent article-- thank you for writing this.
Straight home! I am seasoned dev and can pull my own at a Meetup, but still this is a daily struggle. Stuff seems so easy when presented by the author of the framework. I deeply appreciate blog posts with more errors than successfull code. Tutorials that explore beyond the edges of well known practicess are the ones that really teach beyond parroting.
And don't even get me started on the "courses". But at least they get you somewhere, if you are persistent enough, stack overflow will help you in a big chunk of the missing gap.
Great article, thanks
(sorry for any typos, corrector is broken)
I was afraid of answering on stackoverflow, so I didn't even create an account even though I've always used code from there. Later I started doing that few months ago and built enough reputation for a small account. :D
Thank you for writing this up. I'm trying to teach people to code in my YouTube channel and I'm continuously struggling with deciding what to show and not. The ultimate strategy for deciding this seems to unobtainable. There is simply too many variables in our heads that may combine with the world. But your words are true. Nothing beats trial and error.
So glad you enjoyed it, thank you
Nice article. You actually addressed me directly. I hope to start writing some articles
Wow, I am just a beginner in programming, but this article is really inspiring for me as a starter in this exciting and interesting field!
Great article. You hit the nail in the head
Awesome