Programming Series 1.0 — C Programming
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.
- What mistakes have you made as a Junior Developer?
- 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:
- Geeksforgeeks.org — Best website for learning the fundamentals.
- 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:
- TheNewBoston
- Learncode.Academy
Books for self prep:
- The C Programming Language by Brian W. Kernighan and Dennis M. Ritchie
- Programming in C by Al Kelley and Ira Pohl
- Let us C by Yashavant P. Kanetkar
Forums to help you get your doubts resolved during self prep:
- StackOverflow — The best place to meet and interact with programmers and techies.
- 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:
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的更多相关文章
- 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_{ ...
- 2018 JUST Programming Contest 1.0 题解
题目链接 gym101778 Problem A 转化成绝对值之后算一下概率.这个题有点像 2018 ZOJ Monthly March Problem D ? 不过那个题要难一些~ #includ ...
- gym101532 2017 JUST Programming Contest 4.0
台州学院ICPC赛前训练5 人生第一次ak,而且ak得还蛮快的,感谢队友带我飞 A 直接用claris的模板啊,他模板确实比较强大,其实就是因为更新的很快 #include<bits/stdc+ ...
- 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 ...
- 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 ...
- 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 ...
- 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 ...
- 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 ...
- 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 ...
随机推荐
- haproxy反向代理
haproxy是个高性能的tcp和http的反向代理.它就是个代理.不像nginx还做web服务器 官网地址为www.haproxy.org nginx的优点和缺点 优点: 1.web服务器,应用比较 ...
- redis 批量删除 keys
#!/bin/bash redis_list=("192.168.252.174:7000" "192.168.252.174:7001" "192. ...
- 存储专栏:一句话说清RAID2.0
今天,西瓜哥来谈谈高端存储的一股势力,RAID 2.0,最近被华为HVS搞得风生水起,神奇的让人摸不着头脑.我还是从一个高端存储的江湖说起吧. 据说很久很久以前(别扔臭鸡蛋,讲故事都是这样的…),L ...
- Axure RP 7 8
Axure RP 7.0 用户名:axureuser 序列号:8wFfIX7a8hHq6yAy6T8zCz5R0NBKeVxo9IKu+kgKh79FL6IyPD6lK7G6+tqEV4LG Axur ...
- HTML5 Audio(音频)
<audio controls> <source src="horse.ogg" type="audio/ogg"> <s ...
- nvidia驱动自动更新版本后问题解决 -- failed to initialize nvml: driver/library version mismatch
因为必须关闭桌面窗口, 建议另外一台电脑ssh连接操作 1. 卸载旧版本并关闭图形界面 sudo apt-get remove --purge nvidia-\* sudo service light ...
- android studio Authentication failed for
今天更新项目代码提示 Authentication failed for 后来一起是把git平台密码修改了 忘了修改android studio 密码所以更新失败 我在android studi ...
- 搭建 Jest+ Enzyme 测试环境
1.为什么要使用单元测试工具? 因为代码之间的相互调用关系,又希望测试过程单元相互独立,又能正常运行,这就需要我们对被测函数的依赖函数和环境进行mock,在测试数据输入.测试执行和测试结果检查方面存在 ...
- 序列化模块_pickle
序列化: 把不能够直接存储的数据变成字节流(bytes)保存在文件, 进行持久化存储 反序列化: 任何数据都可以转成字节流(bytes)进行存储: 1. dumps 把任意对象序列化 li = [1, ...
- Mysql 分组选择
Mysql 分组选择 在其他的数据库中我们遇到分组选择的问题时,比如在分组中计算前10名的平均分 我们可以使用row_number()over() 比较方便的得到. 但是在mysql中,问题就被抛了出 ...