Programming is cool. But behind the scenes it's also difficult for many people. Many people are defeated at the early stage of learning programming. When you are not so familiar with programming, you may find you don't know where to start and what to start with first and where to apply the knowledge. Once you go though the tough period of the learning phase, you will find a whole new world. Below are some advice which can help you improve your programming skills quickly.
Write more code. The best thing to learn something quickly is practicing. You should spend more of your time on building and writing code since you won't get better unless you practice the craft. You may start by writing some simple programs with the basic knowledge you have about the language.

Work on different types of projects. After you gain enough familiarity of one language, you should start to work on something real. This will help you have a comprehensive understanding of the capability of the language This will in turn push you to learn other stuff related to the language. Later ff you find yourself always doing similar tasks using similar methods, it's going to be hard to get out of your comfort zone and to pick up new skills.

Master one or two programming languages that you use. Read a good book or two on the languages. Focus on developing a solid grasp of the advanced concepts in that language, and gain familiarity with core, language libraries. Make sure that at least one of your languages is a scripting language.

Start reading. Read as many books as possible. Books usually can give you a systematic graph about a language and they will lead you through all the aspects of a language This is especially useful for beginners Here's a start: What is the single most influential book every programmer should read?

Join discussions. When discussing with other people, you will find new ideas or thoughts you may not notice before. During this phase, you can also learn from other people and it's also a good chance for you to test how well you grasp a language by sharing your opinions about programming.

Read through any technical, educational material available internally.Google, for instance, has a wide array of codelabs that teach core abstractions and high-quality guides of best practices that veteran engineers have written for various languages based on decades of experience. If your company doesn't have similar resources, Google's open sourced some of their guides: https://code.google.com/p/google....

Write blogs. While learning programming, you may encounter different issues and you will try to defeat the problems with all means. It's a good chance for you to write down the process you resolve the problems and your gains from the process. Others can benefit from your experience as well. You can also make friends with people who have similar interests with you.

As for the time spent on learning programming. You should start by carving out 20% of your time to devote to your own skills development. If possible, it'll be better if that 20% comes from one or two hours a day rather than a day a week because you can then make a daily habit out of improving your skills. Your productivity may decrease initially (or it might not change much if you're replacing web surfing or other distractions), but the goal is to make investments that will make you more effective in the long run.

Advice on improving your programming skills的更多相关文章

  1. 提高编程能力的7条建议 分类: T_TALENT 2014-04-12 10:41 294人阅读 评论(0) 收藏

    编程是非常酷的一件事情,但是在酷炫的背后它对很多人来说还是挺难的.很多人在学习编程之初就被困难击败了. 当你不熟悉编程的时候,你可能会觉得无从下手,并且不知道如何运用学到的知识.只要你通过了这一困难的 ...

  2. 8 Ways to Become a Better Coder

    It’s time to get serious about improving your programming skills. Let’s do it! That’s an easy career ...

  3. What is the Best Programming Language to Learn in 2014?

    It’s been a year since I revealed the best languages to learn in 2013. Once again, I’ve examined the ...

  4. net-force.nl/programming writeup

    从 wechall.net 到 net-force.nl 网站,发现网站的内容不错,里面也有不同类型的挑战题目:Javascript / Java Applets / Cryptography / E ...

  5. 10 Questions To Make Programming Interviews Less Expensive--reference

    Conducting Interview is not cheap and costs both time and money to a company. It take a lot of time ...

  6. 2014 Benelux Algorithm Programming Contest (BAPC 14)E

    题目链接:https://vjudge.net/contest/187496#problem/E E Excellent Engineers You are working for an agency ...

  7. How do I improve my English speaking skills in a very short time?

    You have asked some very important questions. I think the first step is to prioritize the issues: Yo ...

  8. WOJ1022 Competition of Programming 贪心 WOJ1023 Division dp

    title: WOJ1022 Competition of Programming 贪心 date: 2020-03-19 13:43:00 categories: acm tags: [acm,wo ...

  9. Beginner's Guide to Python-新手指导

    Refer English Version: http://wiki.python.org/moin/BeginnersGuide New to programming? Python is free ...

随机推荐

  1. IE 8兼容:X-UA-Compatible的解释

    来源:http://www.ido321.com/940.html 来自StackOverFlow 问题描述: 1: <meta http-equiv="X-UA-Compatible ...

  2. Calculating a bearing between points in location-aware apps

    https://software.intel.com/en-us/blogs/2012/11/30/calculating-a-bearing-between-points-in-location-a ...

  3. crontab读取环境变量方法

    crontab如果不注意的话早晚会出问题,而且这种问题一旦出一次,就会永远记得,因为这种问题很折腾人.                                                  ...

  4. 修复Debian(Ubuntu)Grub2 引导

    重装win7, 之前的系统debian 的引导就没有了. 而debian 的盘似乎没有ubuntu的livecd模式,于是用ultraISO将ubuntu的ios文件写入到u盘中. boot时选择启动 ...

  5. Java设计模式系列之责任链模式

    责任链模式 责任链模式是一种对象的行为模式.在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链.请求在这个链上传递,直到链上的某一个对象决定处理此请求.发出这个请求的客户端并不知道 ...

  6. poj 3268 Silver Cow Party(最短路)

    Silver Cow Party Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 17017   Accepted: 7767 ...

  7. Educational Codeforces Round 5 - C. The Labyrinth (dfs联通块操作)

    题目链接:http://codeforces.com/contest/616/problem/C 题意就是 给你一个n行m列的图,让你求’*‘这个元素上下左右相连的连续的’.‘有多少(本身也算一个), ...

  8. 认识JavaScript的原型

    本来打算也写一个JavaScript学习笔记的系列,不过由于笔者不太想买大部头的js数据,和网上的资料也不少,所以js系列就打算写到了算了了. 要理解JavaScript就要理解其原型,首先我们先区分 ...

  9. opennebula 自定义安装目录

    /bin//mkinstalldirs /usr/local/lib /bin//mkinstalldirs /usr/local/include /bin//mkinstalldirs /usr/l ...

  10. CSS基础(02)

    CSS 选择器 1.CSS3 选择器简介 在 CSS 中,选择器是一种模式,用于选择需要添加样式的元素. 语法: 下面中"CSS" 列指示该属性是在哪个 CSS 版本中定义的.(C ...