Learn a bit of offline coding
Our dependence on the Internet is no longer to be explained. Nowadays, almost every single thing is done via/on the Internet. I remember back then around the year 2000 I use to pick up magazines and write down every domain name I met. I will then wait for a few days and go to a cafe to browse them one by one. We visited websites then because they are cool and fun to see. Mostly we don't visit the website because of what they offer. It's like browsing offline.
Then, one day Google appeared asking us to instead ask them whatever website we wanted to visit. They will do the collect from newspapers and magazines(wink) for us. That was more fun. In fact, we could(and still can) even focus on the type of content we wanted instead of hunting domain names. Yes, that was a great game-changing. We have learned something interesting: content is king.
Until then, our parents and grandparents were still using books and printed manuals on programming languages and computer systems. They had to keep a lot in mind so that they don't always have to look up in a book every time. That made them very productive. They could type fast. They knew in advance most of the code to write. As far as their computers were on they could always programme.
But as we say, "good things never last". Suddenly we moved to a Participative and Social Web very quickly. We've learned to drop our code snippets online for others to come and use it. We even got, later on, proper patforms for that purpose.
So we started breaking our bookshelves to make firewood. From time to time, some of us even burned it including "its whole content".
Now, when we reach work and the boss asks for a little code change, we call the Oracle or we ask StackOverflow to provide us with an all-made-code. Voila, boss!
I am not exaggerating. Look at the official definition of StackOverflow:
...Stack Overflow is the largest, most trusted online community for developers to learn, share their knowledge, and build their careers. More than 50 million professional and aspiring programmers visit Stack Overflow each month to help solve coding problems, develop new skills, and find job opportunities. About stackoverflow
Yes! You got it right, that's the point. But, that was, and still is a wonderful revolution in the developers' community.
At the same time it became another issue:
One of the frequent debates about Stack Overflow is whether the site needs to be open to questions from programming novices. Joel Spolsky, Joel On Software
Now we have a lot of novices out there looking for the best way to learn. The next generation is threatened.
We will not drag this much. I would like to exhort you to try to keep the legacy. We need to keep somethings in the brain to limit our dependency to the Internet. Learn how to keep things in mind and you can repeat them without wasting time. Mostly, developers just learn the basics, the procedure to code, and don't keep the exact how-tos. Every time you need to do something seriously, you have to google it. Once you have the snippet you just go ahead and copy it without asking yourself how it's done, in as much as it works, you're good to go.
Consequences:
- You waste time searching
- You can't code without the internet
- You are feeding your code-base with a mix up of coding styles
- You are taking the risk of introducing bad code in your project
- You don't reason, you don't learn
WRITE FROM SCRATCH. The types of skills needed for that are so different from copying another guy’s solution from Stack Overflow and changing it to your needs! Programming is about making conscientious choices. When you start writing programs from scratch, it will be hard, but it is absolutely necessary to learn to build things from zero. Igor Zhirkov
You need to practice a lot. You have to repeat everything several times to keep them in mind. If you live in countries where the Intenet and light are not stable you would realize the real value of what I am talking about here.