In the growing world of technology, C programming has kind of lost its way. Today, we have a million new languages and frameworks to code. A few being JavaScript, Java, C, Python, C++, PHP, C#, Ruby, Perl, Swift, Haskell, Erlang and what not.

But a lot us kind of forget that all these languages have something or the other in common with C programming. Truly why C is the most fundamental language even till date. A few recent surveys and reports state that C is still one amongst those popular languages out there.

Hacker Rank’s Developer Skill Report 2019 — It clearly states that C is the 3rd most popular language of choice.

How to get started with learning C?

The only mantra that one needs to follow and not chant when it comes to mastering a language is

LEARN + PRACTICE + PRACTICE + PRACTICE + PRACTICE……………PRACTICE.

The endless process of practicing is what will keep the learning going when it comes to programming. It isn’t math to learn the formula and then solve the problem. Rather, here you learn the formula while you are trying to solve the challenge. That's how it works when it comes to any kind of a role involving programming.

The second secret to mastering any language is:

THINK (90%) + CODE (10%) = EXECUTION & SUCCESS

For example, I once met a Senior Developer from a top firm. I just had two questions for him.

  1. What mistakes have you made as a Junior Developer?
  2. What keeps your spirits high?

Here is what he share……

When a Junior Developer, it is natural that we would want to kick start our new job and grow professionally within no time. I would not suggest you slow down, but yeah you gotta do a lot of thinking than coding. While most of us start dripping the code the minute we hear a challenge, probably that not how you are supposed to function. You need to focus on thinking of the logic. Once the logic gets you or you get the logic, then is when you might have to drip your code. And of all programming is an art — the more you master it, the easier it is to stay in the state of flow.

While these tips would help a Junior Developer at work, then what about a beginner?

As a beginner, you need to need to put in efforts to just get yourself through with the basics — Once and for all. Here is my take on what mediums and websites to choose from.

Websites to refer for self prep:

  1. Geeksforgeeks.org — Best website for learning the fundamentals.
  2. Faceprep.in — Best websites for practicing some of the basic programs in C and Data Structures & Algorithms.

C programming | Data structure & Algorithms

3. Hacker Rank — The go-to site for practicing advanced questions.

Online Tutorials for self prep:

  1. TheNewBoston
  2. Learncode.Academy

Books for self prep:

  1. The C Programming Language by Brian W. Kernighan and Dennis M. Ritchie
  2. Programming in C by Al Kelley and Ira Pohl
  3. Let us C by Yashavant P. Kanetkar

Forums to help you get your doubts resolved during self prep:

  1. StackOverflow — The best place to meet and interact with programmers and techies.
  2. Faceprep  — Good place to interact with your peers. But not sure of how useful is it to get your doubts clarified. This is one of the websites with a good forum and hence suggested.

Websites for competitive coding prep:

  1. Hacker Rank
  2. Codechef
  3. Hacker earth

Choose the best medium and best website and get started. When it comes to learning, specially programming, its never too late.

Happy learning. Happy Coding!

Programming Series 1.0 — C Programming的更多相关文章

  1. 2017 JUST Programming Contest 2.0 题解

    [题目链接] A - On The Way to Lucky Plaza 首先,$n>m$或$k>m$或$k>n$就无解. 设$p = \frac{A}{B}$,$ans = C_{ ...

  2. 2018 JUST Programming Contest 1.0 题解

    题目链接  gym101778 Problem A 转化成绝对值之后算一下概率.这个题有点像 2018 ZOJ Monthly March Problem D ? 不过那个题要难一些~ #includ ...

  3. gym101532 2017 JUST Programming Contest 4.0

    台州学院ICPC赛前训练5 人生第一次ak,而且ak得还蛮快的,感谢队友带我飞 A 直接用claris的模板啊,他模板确实比较强大,其实就是因为更新的很快 #include<bits/stdc+ ...

  4. 2017 JUST Programming Contest 3.0 B. Linear Algebra Test

    B. Linear Algebra Test time limit per test 3.0 s memory limit per test 256 MB input standard input o ...

  5. 2017 JUST Programming Contest 3.0 I. Move Between Numbers

    I. Move Between Numbers time limit per test 2.0 s memory limit per test 256 MB input standard input ...

  6. 2017 JUST Programming Contest 3.0 D. Dice Game

    D. Dice Game time limit per test 1.0 s memory limit per test 256 MB input standard input output stan ...

  7. 2017 JUST Programming Contest 3.0 H. Eyad and Math

    H. Eyad and Math time limit per test 2.0 s memory limit per test 256 MB input standard input output ...

  8. 2017 JUST Programming Contest 3.0 K. Malek and Summer Semester

    K. Malek and Summer Semester time limit per test 1.0 s memory limit per test 256 MB input standard i ...

  9. 2017 JUST Programming Contest 3.0 E. The Architect Omar

    E. The Architect Omar time limit per test 1.0 s memory limit per test 256 MB input standard input ou ...

随机推荐

  1. sqlserver数据库知识点总结(转)

  2. 学习php

    一.php是什么? 1.PHP:Hypertext Preprocessor(超文本预处理语言),是一种开源脚本语言. 2.PHP是脚本语言 3.PHP最流行的网站开发语言 4.PHP官网:http: ...

  3. 新手入门HTML5有什么推荐的书籍?

    很多想迈入HTML5开发行列的人,都会问一个问题:要成为一个更好的开发人员,我应该读哪些书?有哪些HTML5开发的书籍推荐吗? 有人说开卷有益,读万卷书行万里路;有人说,书不在多,精益求精;有人说,书 ...

  4. [随笔][Java][something]

    import 只能导入包中的类,不能导入某个包.为了方便,一般不导入单独的类,而是导入包下的所有类.import java.util.*; 包java.lang中的所有类默认由编译器全部导入了,不必手 ...

  5. Java高级特性 第15节 解析XML文档(3) - JDOM和DOM4J技术

    一.JDOM解析 特征: 1.仅使用具体类,而不使用接口. 2.API大量使用了Collections类. Jdom由6个包构成: Element类表示XML文档的元素 org.jdom: 解析xml ...

  6. Jenkins 部署自动化测试脚本(15)

    自动化测试脚本开发完成以后,希望可以把脚本放在公共的环境下提供一个入口供大家一起使用,目前最好的解决方案就是需要把代码部署在Jenkins上,下面看下如何在Jenkins配合自动化测试任务: 1.首先 ...

  7. python ctypes库3_如何传递并返回一个数组

    可以将数组指针传递给dll,但无法返回数组指针,python中没有对应的数组指针类型. 如果需要返回数组,需借助结构体. 参考ctypes官方文档: https://docs.python.org/3 ...

  8. js 获取url中的参数 修改url 参数 移除url参数

    js 获取url中的参数 修改url 参数 移除url参数 var jsUrlHelper = { getUrlParam : function(url, ref) { var str = " ...

  9. Android USB ADB ATUH 验证包验证流程

    #define ADB_AUTH_TOKEN 1 #define ADB_AUTH_SIGNATURE 2 #define ADB_AUTH_RSAPUBLICKEY 3   1. 连接USB,手机发 ...

  10. 20175236 2018-2019-2 《Java程序设计》第五周学习总结

    教材学习内容总结 接口回调 1.接口属于引用型变量,可以存放实现该接口类的实例的引用,即存放对象的引用. 2.接口回调理解上跟对象的上转型对象差不多. 理解接口 接口可以抽象出重要的行为标准. 接口多 ...