Kotlin: A beginner’s guide

If you’ve not heard about it before then here it now! 

From Google I/O 17, Kotlin has been added as the official programming language for Android development!

Hearing the word “Kotlin” for the first time?

Kotlin is a super new and a super cool programming language. Developed by JetBrains which also developed the JetBrains IDE that Android Studio- Google’s official developer tool is based on. (Woah??!1!)

If you’re too scared thinking that it would replace Java for Android? Fret not! Java is not going anywhere and it will stay here.

Also, if the thought of learning a new language scares you, then there’s good news because Kotlin is very similar to your best friend Java; object-orientedstatically typed and designed for similar problems.

So, Why Kotlin?

Some features include:-

1.Kotlin tools will be included with Android Studio 3.0, so you don’t need to worry about downloading anything.

2.Google and Jetbrains, both pledge to support the language wholeheartedly

3.It is very compatible with Java. This means you can mix and match both Kotlin and Java into your project.

4. It is a concise language so IT drastically reduces the size of your code

5. Hate when you see Null Pointer Exception as an error? Well, Kotlin is here to solve it for you.

On top of all this, Kotlin has already been accepted by major developers like Pinterest, Expedia, Square and others for their production apps. It’s a clean, concise language.

Start making your first app in Kotlin by joining our Android Courses!

Happy Developing 🙂

BE THE NINJA AMBASSADOR IN YOUR CAMPUS!

Do you have the panache in you that sets yourself different from your peers?

Are you good at organising events in college(mass bunk also counts)?

Are you well connected and spend most of your times juggling societies and clubs in college?

Does your social game make your friends insecure?

Do you wish to get those extra points on your resume and that too in a fun-filled way?

If you answered most of these questions with a straight YES then what we have for you is exactly what you need. 😀 Coding Ninjas has launched their Campus Ambassador program for students ready to hone their Marketing and Leadership skills. Let’s add more Ninjas to your community!No automatic alt text available.

Eligibilty Criteria?

You need to be in a college, duh!

What we need?

  • All we need is for you to organise hackathons and talks(pre-placement) which are to be conducted on your campus.
  • Promote us on the college campus through posters(Offline), and Social media marketing(Online).
  • Maintain a database of your peers of all batches
  • Promote and associate us in cultural and departmental fests
  • Encourage your peers to use our very own CodeZen as a programming platform in your college

What you get?

  • Free merch!!
  • Extra points on your resume because we’ll provide you with a certificate on completion of your term
  • Linkedin recommendation to all eligible candidates!
  • special bonus to the Campus Ambassador of the month
  • An exposure of working with a start-up
  • A wonderful opportunity to become a part of Ninjas(Internship/TAship)
  • Interaction with experts professionals and get guided personally
  • Meet targets, and get our online courses absolutely FREE

Not only this, but also

If you write blogs for us, we’ll feature you on our website.

An out of the box idea will get a big SURPRISE from us.

Apart from this, you’ll get an amazing opportunity to expose yourself in the startup world, interact with expert professionals and communicate with other College Ambassadors to experience the life and culture of other campuses.

Come make the best of this opportunity and the join the wonderful Campus Ambassador Community to polish your marketing and Leadership skills!

Register here!

Debunking The Myths About Coding!

“Coding is difficult, programming is not everyone’s cup of tea, you can’t…”, blaah.. blaah.. blaah! Things keep coming, don’t they? Wherever there’s a fact there’s always a myth surrounding it too. In fact, Science has always begun with myths and with the criticism of myths. The thing about myths is that they are dangerous. Why? Because they stop progression and pull you back. So we’ll debunk such myths that are holding you back from becoming a successful programmer.
Related image
Programming is for geniuses. I am an average student, not my cup of tea.
No! Not at all! Learning to code is not like jumping into the sea without knowing how to swim. Being a coder is more about your logical thinking and problem-solving abilities than your domain knowledge and smartness. For sure there’ll be problems in the world that only a handful of developers may be able to solve, but in general, all it requires is your dedication, sincerity, creativity and common sense.
Image result for difficult gif
Oh and yes, you’re smarter than you think, so stop underestimating yourself and get out there and code.
 
Okay, I’ve convinced myself to code, but I’m sure I’ll never be able to catch up.
This is a common mindset that prevails in every new developer’s heart. Programming is an ocean of concepts, I’ve taken a plunge but how will I cross it? How will I catch up with the people who have been working on these challenges for years and years now? etc. To be frank, that’s the beauty of programming, you’re never really stuck up. It’s a constant learning process with tools, technology, and new languages coming up every day. So, what is the way out? Get the fundamentals right, throw in your own style and thought process, stay at par with the latest coding standards and tools and TADAA!!! You are killing it!
Related image
Coding is only for computer science graduates.
One of the biggest myths ever! A big NO to that. Coding is for everyone. A degree or a certificate is not required to become a developer. In fact, the stats prove that 70% of the developers are self-taught! For instance, a stupid Electronics and Instrumentation engineer like me today writes code to fetch and analyze the data of Fortune 500 companies by creating models to give them insights and business strategies! Never did I learn to code, it became a necessity and it just happened! Hence, I say learning to code is not really a big deal but your patience and perseverance are what need to be big here.
Image result for coder gif
I must only learn the best programming language
There is no ‘best programming language’ as such. The best language is the one which suits your purpose. You cannot build an Android App by learning SQL fundamentals, can you? Obviously not. Choose your language with a purpose in mind. However, there are good languages to start off with learning how to code. Python is one such language, which is highly appreciated by the masses for their ease of readability, complexity and flexibility.
Image result for best gif
Coding is not for the fairer sex!
Let me be upfront here, I’ve met several women coder in my life and let me tell you al of them are kickass! The rise of women coders throughout the world is an evidence enough to prove how they are racing all the way into the tech domain. Ada Lovelace, Grace Hooper, Marissa Mayer… you name it. Be it any field women are making their mark equally. You go, girl!
Image result for girl coder
The road won’t be easy, your path will be strewn with difficulties and challenges but winning over them is what makes a Coding Ninja doesn’t it? Get-set-code!

Stories Behind Famous Programmers

blog_famous_prog
‘Hello world!’, remember this output from the first program you ever wrote? I do, I’m sure you do too! Making the computer work on your instructions is a feeling that is inexplicable! So much control, power and exhilaration, ain’t it mate? Computer programming has come a long way over decades and changed the face of technology.This is a known and a well-accepted fact. But behind every successful phenomenon ( as I would like to call it) are a group of crafty hands who moulded it to perfection. These programmers were the biggest contributors to the path-breaking computer revolution and we’re here to give you a sneak peek into their lives.
 
“UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity.”
Image result for story of dennis ritchie
The golden words by none other than the Father of Modern programming language, Dennis Ritchie. His contributions as the creator of C programming language and co-creator of Unix were monumental. I can’t even begin to admit how indebted we are to him. For us, our entire universe revolved around C when we heard the word programming. Widely used in application developments, embedded systems and operating systems, C has a major influence over all the modern programming languages. Such a humble beginning and such a great impact I must say!
 
Ada Lovelace
This beauty with brains wrote the first algorithm ever. She gave us hope, she showed us the way to this glorious future! An English mathematician by profession, Lady Lovelace wrote the first algorithm for Charles Babbage’s first general purpose machine called the Analytical Engine. She has always been an inspiration for the female coders and we salute her.
Bill Gates Photo
A billionaire, a business magnet, a philanthropist, a magician of the codes, PC Pioneer and the co-founder of the world’s largest personal computer software company. There aren’t enough words to describe this man who opened the ‘windows’ of the next level of software technology for the world. Believe it or not, for the first five years, he literally oversaw each code that went into the production! Such commitment, much wow!

Image result for bjarne stroustrup biography

We owe C++ to this man! A Danish scientist who brought this wonderful language into our lives. Not only did he invent it but also helped it to evolve through stages. Turn to your basics of the C++ textbook and you’ll remember it all!
 
He created one of the most sophisticated and user-friendly languages which are widely used everywhere today. Still trying to remember? Okay, it’s like a new student’s buddy for life and a data monger’s half girlfriend (:P). Still confused? Okay a final one, the language shares it’s named with a ferocious reptile. There you got it, Python! He developed Python while working at Google and later joined Dropbox.

Image result for niklaus Wirth
What is common between languages like Euler, Pascal, Modula, Modula-2, Algol W,  Oberon, Oberon-2, and Oberon-07? They were all created by this pioneer of computer languages. Right from designing PL/0 which created the foundation of compiler design classes in universities to creating operating systems like Lilith and Oberon, this man did it all! Due to his innumerable contributions to the field, Wirth was awarded the prestigious Turing Award.
The name spells it all! Someone who created the biggest internet sensation of all times sitting in his dorm room. Nothing more, nothing less, this person is a sheer genius and today as we know it, Facebook is one of the world’s largest firms with multi-billion $ profits. We practically get up and sleep to Facebook notifications. This Harvard dropout is an employer everybody wishes to work for! Remember how he built a real Jarvis for himself with some complex and stupendous machine learning, IOT and AI efforts? What a time to be alive!

It’s not the language but the logic that matters

You cannot just start speaking Chinese if you don’t learn Chinese, can you? The thought of even picking up a ‘Dummy’s Guide to Chinese’ haunts you for life. But you’d love listening to a Chinese folklore in your language for that matter. So what is more important? The language or the rich cultural heritage and the beautiful stories that can be conveyed to you in any communication form (verbal, written, visual etc.)?
Image result for confused gif
Such is the age-old debate on the importance of programming languages in programming. Some say that the syntax is the soul of a language, while some argue that the logic and concepts are what really matter. Me? Well, I rest my faith on both of them partly and my version of the answer to the question is that the concepts have a higher hand than the language itself in programming. Why? Let us see:
Image result for well yeah gif
 
The commonality between languages:
All programming languages have one thing in common, the logic for solving a problem remains the same in every language. For instance, if you’re designing a calculator, the addition logic will not become a division with the change in language. A regression model built in R will not differ in logic when built in Python. This commonality brings all the languages together with a common aim of solving problems.
Image result for logic gif
 
Framework
For any computer language, you learn it’s framework, not just the language. The inbuilt functions, tools and overall form fitting of logic are what is more important in a language than the look and feel of the syntax. You can learn the formatting easily, but the framework is what will ultimately get your shit done!
Image result for logic gif
‘Coz logic is the key to everything
Once you ace the logic, you gain the super-powers to do anything. All that a programming language needs is love, your unconditional love for logic. Once you understand and know how to implement a logic to get the desired output, you’ve done it. You can then open up any language and all you need to do is change the syntax and not the logic. Long story cut short if you’ve enhanced your logical abilities you can learn any language. All that is needed is your sincerity and dedication.
So folks, what did we learn today? That programming languages don’t matter? – Nope, It’s not the language but what you aim to achieve through it is what matters. So get going and code, no stopping! Cheers!

Why Coding should be taken as a skill rather than a subject?

skill_blog

A night before the data structures exam, I’m biting my nails and cursing why did I have to choose engineering, planning a strategy on what topics to leave and what to study, just enough so that I pass this semester without a back. I’m sure I’m not the only one who does this. All-nighters are the only way we know how to study in college, cramming the subject just the night before the exam.

Most people literally cram entire codes to topics a night before the exam. Guys, you are legends! But the fact is in the long run, this won’t help you. The more you cram, the less you’ll remember what it was about. Also, in the next semester, when a bigger version of the subject appears, you’ll start again with the same old cycle of cursing the subject, your decision of taking the course, the education system and so on.

Programming, instead of rote learning it as a theoretical subject, should instead be approached more practically. It should be understood and the codes should be practised instead of cramming. The concept of syntax, dealing with a problem through a particular method, and the “logic” should be understood. If you’ve done this bit, I bet you don’t even need to open the book before the exam(but please do).

Before I enrolled in the course at Ninjas, I didn’t even know that there was an actual code for Hashing ( I possibly must have left the entire chapter then :p) possibly because I thought it did not carry enough weightage for the exam. But I was so wrong.

Coding Ninjas not only teaches you a language, they teach you how to study. They start with absolute basics so that even newbies who don’t  know “hello world” can relate to the subject. The classes are loaded with brain teasers to kick start your brains, short teaching sessions and more questions to practice so that you focus on problem-solving instead of cramming. They don’t focus on the language or syntax but most importantly on how to approach the problem so that you can do the same for any other language. All of this, not only fascinates you but makes you fall in love with the world of programming.

Subjects which used to be complicated and scared you till death will now look like a piece of cake. Not only this, imagine actually creating something from scratch. Now imagine, a lot of people actually using “that” something which you made. Sounds like magic? Well, it is! This is what programming does for you. Your favourite app or the website that you love to browse are all things essentially based on programming.

To quote Ankush sir, the most empowering moment of his career was when he and his team launched the Facebook timeline and more than a 100 million people used it on the very day it was launched!

Get inspired. Start programming today to build something amazing for tomorrow!

PS: The weightage of hashing? Well, it’s supposedly one of the most frequent questions asked by Amazon. Don’t make the same mistake. :3

How to master a language inside out?

If you’re a newbie coder and slightly struggling with programming, don’t fret too much! Coding can be slightly taxing at first, especially when you are new to it. But once you make sure that you give it enough time and work, you’ll love it!

So, let’s face it, you want to learn a language, and there are so many ways you can do that, but the question is how can you really master a language? “Master” is a heavy word, but today all those bigwigs are actually looking for expertise coders. Besides, programming can be really stressful if you don’t approach it with a right mindset and attitude.

So, here are 7 ways to master a language inside out:-

1. DON’T DO IT IN ONE NIGHT

The idea of learning a skill overnight is exhilarating, yes! and being so used to those “all nighters” for college examinations can make us think that that’s the only way to study, but NO, trying to cram programming overnight can be a big mistake.

One needs to take it one session at a time, giving every session ample amount of time and using it more practically than mugging up the theory.

2. ENROLL IN A COURSE

Of course! What’s better than enrolling yourself in a course where you have amazing mentors to guide you, newbies like yourself to get along with, and TA’s to assist you through every step. An environment of healthy competition and learning in a group will not only keep you highly motivated, but you’ll also learn at your own pace.

Register for our courses  here!

For all those who are too lazy to get out from their houses(it’s the heat, we don’t blame you!) or people who live too far from our center, we have this awesome option for you, ONLINE COURSES! with amazing features like adaptive learning, individual TA support, and lots more! (A little bit of promotion never killed anyone!)

3. PRACTICE! PRACTICE! PRACTICE!

Well, who doesn’t get a hard time from the semicolon and the brackets?! If you don’t have any prior coding experience, the number of syntax rules in any coding language can make your head go for a spin. The best approach to this is practice, one needs to practice a lot of questions and over a period of time, those silly syntax rules will come naturally to you.

One needs to take practice seriously, solving a lot of questions will definitely build your expertise in the field and your approach to solving questions will develop, turning you into a Code Genin.

4. IF YOU CAN’T EXPLAIN IT, YOU SIMPLY DON’T UNDERSTAND WELL ENOUGH

A very interesting approach to learning anything is the Feynman approach, based on the great physicist Richard Feynman who believed that the best way to grasp something is by breaking it into simpler concepts and teaching it to someone.

Explaining things to someone else will help you analyse your weak areas and will definitely solidify the concepts in your mind. It will help diagnose the weaker niches and compel you to learn things better from a newer angle.

5. JOIN COMPETITIVE PROGRAMMING

One sure wants that edge when they’re learning the language, don’t they?  To get that extra panache in your coding realms, one must start with competitive programming. Competitive programming is a mind sport taking place in particular forum involving participants to program according to provided specifications.

Competitive programming will allow you to code under tight specifications. This will strain you brain to think under constraints, increasing your skills exponentially! Also, coding in an environment of healthy competition will keep you glued to it.

Join the world of competitive programming at CodeZen, Stand out in the leaderboard and win amazing cash prizes!

6. PLAY WITH PROJECTS

Once you’re comfortable with the language, syntax and the concept, it’s time to put those skills in to use! For absolute newbies, think of  a simple game like Tic-Tac-Toe, Othello, to head start with your skills. Building even a small project will not only build your confidence but you’ll know exactly how to apply your newly acquired knowledge actively.

Be creative! Code something that interests you or what you’d actually want to use. Projects will help you retain a lot better and will interest you at a very personal level.

7. DON’T PANIC!

Relax! It’s not you, it’s programming.

Programming can be a little intimidating and it’s okay to struggle with it. The important thing is to keep yourself on track and keep trying. Ask help when you need it, try different resources and keep recalling previous concepts. Give it a little time, and it will surely come your way.

Embrace your bugs and errors. Learn how to debug and avoid them in future. Practicing can help you build confidence, and that will keep you away from stress.

5 reasons why you SHOULD’NT TAKE OUR ONLINE COURSES- Wait, what? :O

cover-tune-code_blog

Education is the most powerful weapon that you can use to change the world! Your education steers the boat of your life. But what if a high tide helped you sail faster, better and at an unparalleled speed? This goliath tide beats the challenges faced by the traditional classroom education and helps you battle the odds in your way of success. What is it called? Well, oh well ONLINE EDUCATION!
The continuously evolving methodologies of online learning have fueled its expansion immensely. Researches vouch that online education can be just as effective as a classroom education. And so the world of online education began expanding. There are a plethora of online coding courses out there. We at Coding Ninjas are also providing you a hassle-free, adaptive and excelling online courses to help you achieve your codes the panache it deserves. But you SHOULD NOT ENROLL WITH US! Yes, that’s correct. I mean why would you take our courses if you don’t want to experience:
  • An online classroom so good that you would never skip a class.
  • An education so convenient that you don’t even need to step out from your room to attend a class. Leave alone getting late and missing lectures.
  • With trainers so experienced that they’ve conquered Stanford University, IITs, IIITs etc. and have been master craftsmen with years of industry experience at companies like Facebook, Amazon, American Express, Times Internet etc.
Oh, wait, oh wait. I can go on forever like this. But let me give you 5 solid reasons as to why you SHOULDN’T ATTEND our online courses. YOU ABSOLUTELY SHOULDN’T!
Experience_good-Coding-Ninjas
1. Because who wants a learning experience so good that it propels you towards success.
Experienced, engaging instructors take you a jetpack joyride in our high-quality video lessons. Needless to mention there are highly engaging study materials, regular tests and one-to-one chat with mentors for doubts. Bonus? A Discussion forum with an interactive and super-talented coding community where you can find your code buddies and throw in your ideas!
Adaptive-Learning-Coding-Ninjas
2. Because who needs a course with an Adaptive Technology and unending features.
Our courses are completely adaptive and dynamic in nature. You learn at your own pace and understanding. Our courses are aided with adaptive technology that helps you unlock the next level whenever you clear a base one. This helps you build your fundamentals right and gives you a holistic learning experience.  A steep learning curve all along!
Practice-hard-Coding-Ninjas
3. Because we make you practice hard to attain perfection
There will be a sea of problem statements, innumerable study resources and challenges to quench your thirst for problem-solving.   Code directly in the browser with our course assignments, bringing to life what you’ve learned and receive immediate, helpful feedback and code validation. Which ensures credible and secure exam delivery.
TA_Support-Coding-Ninjas
4. Because when you have doubts we are ready to clear ’em off in a jiffy!
Individualized TA sessions for doubt clearing, live webinars to discuss problems, 1-on-1 mentor chats, discussion forums, groups chats…. let’s keep it going.
certified-Coding-Ninjas5.Because who wants an accreditation so strong and authentic that it shouts out your top ninja skills to the world
When you pass the course, you’ll receive a verified certificate that provides a level of comfort to those who may want assurance about the authenticity of your course work. You have a perfect alibi to your stellar coding skills.
Not convinced enough? Ah, I knew it! Well, I knew you were going to do it anyway. Fine, go on, register for our online courses and pave your way to a brighter future! Go, go hurry!
Image result for register now button gif

Types of coders you’ll meet along your road to code!

Coders are the coolest people on earth. Each one comes with his/her own swag and distinct characteristics. In fact, I believe, there should be a dedicated field of sciences just to study them! No kidding, check out and decide for yourself.
Which one are you?
SuperMan
  • The ‘Jugaad’ innovator: They live by their anthem ‘Get sh*t done!’ They will understand and fix your problems fast. They won’t care about code quality or indentation and will use duct tape if they have to but will always find a fix to the problem. Nevertheless, they actually write good code from time to time and are happy when other people refactor their code – as long as it works. Oh yes, statuary warning: THEY HATE PERFECTIONISTS!.
Image result for jugaad innovation
  • The Perfectionist: This one can spend days on a task that takes a couple of minutes for Jugaadu guy but the resulting code is impeccable. His logic, codes, and indentations will put you to shame. Trust me, you never want this person to do your code reviews.
Image result for perfectionist coder gif
  • The wise sage: He is the wise one with years of experiences in his pocket. He has seen it all and his advice is never to be ignored. He would cost 10X times a newbie but is an asset to the company. In a case of deadlocks, you seek wisdom from this great saint!
Image result for code guru cartoon
  • The Code Nazi:He/She suffers from a serious case of code OCD and will frown upon your disorganized coding ethics. They won’t stand anything extra or less, just the right amount. They unquestionably prefer tabs over spaces and would have memorized the company’s style formats by heart.
  • Ctrl+C<->Ctrl+V: This copy-paste coders are mostly newbies who code ‘coz it’s cool! Shortcuts to everything is his first love and he would thank his seniors every day for backups and code versioning systems they left behind.
Image result for perfectionist coder gif
  • The Coding Ninja: This one is our favorite! An absolute rock star who tries out new editors, frameworks, build tools, programming languages, and keyboards. He has that zest to learn and is really keen on trying out the latest stuff. He strives towards excellence and believes in learning by doing. Such coders are the explorers of technology and creators of the future. The one, we want you to be! Code like a ninja, be a Coding Ninja!!
Reason_1-01-01

Be a code genin!

Codegenin_BLOG1A Genin is an inception rank in a Ninja’s career. A Genin is sincere and completely dedicated to the pursuit of his code. With great perseverance and discipline, a Genin ultimately evolves into a Coding Ninja. The evolution of a Code Genin to a Coding Ninja is an adventurous journey and every new challenge enhances their problem solving abilities as well as levels up the coding skills. Challenges make a Genin’s life interesting and overcoming the challenges is what makes them an ultimate Ninja.

Image result for genin gif
 
So how do you become a Code Genin?
You code and code and code! Complete our challenges and tests and make your spot on the leaderboard. Now, what’s a leaderboard? Well, it’s nothing less than your report card. It tells you where you stand among the other Genins. This doesn’t only infuse that competitive spirit in you but also makes you ready for the real time battle of the coders.
coding_ninjas_3-01
A challenge always comes with a reward
Remember your school days? The first three top rankers of our classes used to win medals and shields for their highly meritorious performances. Similarly, the top three Genins will walk away with hefty cash prizes. More than the cash it’s the honor that you earn among your fellow coding mates making yourself closer to the designation of the Ultimate Coding Ninja.
Image result for cash prize gif
How it works
It will be a continuous evaluation process based on the challenges you solve, the problems of the day and other practice question sets. The leaderboard will be published bi-weekly and the top contenders will be chosen based on their performance in the challenges.
Inline image 1
Getting prepped up?
There is no substitute for hard work as they say. Solve as many questions as you can. Complete the challenges, take the tests and viola! Your hard work will definitely pay off.
It’s a fun learning by doing marathon where the winners take it all. What’s interesting about this format is that everybody here is a winner. Why? The spirit of the competition unleashes your full potential and as they say, more challenges = better skills.

Reason_1-01-01
Are you ready to ride this ROAD TO CODE?