This is a cheat sheet video for markdown syntax files. You might have seen these files as readme.md or example.md files on GitHub or flutter libraries. These files are super easy to create and provides a full walkthrough to your application/library/framework.
In this video, we are going to learn about these markdown files as quickly as possible.
Here is the code mentioned in the video
# heading 1
## Heading 2
[Visit website](https://learncodeonline.in "LCO")
![LCO Mascot](https://learncodeonline.in/mascot.png "LCO")
Use `for` loop
var name = "hitesh";
| Table | Goes | Here |
| ----- | ---- | ----- |
| one | Two | Three |
> Keep smiliing and work harder
1. List one
1. List Two
1. List three
- List four
We have heard a lot about SQL, Structured Query Language. But What is this GraphSQL? What does even it mean. Where can I use it? What benefits does it provide over SQL? How good is it as compared to regular REST API.
What is GraphQL?
GraphQL is a query language designed to build client application by providing an intuitive and flexible syntax for describing their data requirement.
Yep, that is the most perfect definition and little bit jargon too.
Let me explain that in better and easier syntax. The main goal of GraphQL is to make query smarter. Currently, if you want to ask questions like “Give me Names, Age and highest score of top 5 players who played in the final of 2015 world cup”. Surely It can be done. But present endpoints in REST API looks like this:
Often endpoints without IDs just return everything and end points with ID returns full information about 1 resource. The biggest issue is you are either under fetching or over fetching information. Imagine you are over fetching 100s of IDs and making 100 API calls and then filtering just 5 values form it. It is expensive on servers. Servers like cricket information and Facebook.
GraphQL makes these endpoints smarter so that it can pick selective data, making it cost effective and faster.
Comparing REST API and GraphQL would be comparing a self-serving restaurant and waiter served restaurant.
REST API aka self-serving and GraphQL aka waiter served.
In self-serving restaurant, you manually take what you need while in another case, you just ask a waiter to bring what you need from all tables.
Now, let’s move to some common questions about GraphQL.
Is GraphQL related to Graph databases?
Nope. I agree that name looks the same but it’s not like that. The ability of GraphQL to crawl across API gave the name graph and you know what QL means.
Should I stop using REST API now?
Nope. In fact, most application doesn’t need graphQL. Most applications are not that much filled with data that you need to implement GraphQL for your application. It won’t be making a night and day difference. If you have it, it’s awesome. can be a little advantage for developers but no need to panic. You are fine without it too.
What is the syntax difference between REST API and GraphQL?
Just 1, GraphQL can dig deep into API and can ask smarter questions directly.
So, What Do I need to implement GraphQL or to learn GraphQL
basically, you need 2 things:
GraphQL Server – to serve your API
GraphQL client– to connect your endpoints.
For server, you can use GraphQL-JS (Node)with express-graphQL to create servers and for client, you can use Relay. Relay was once an internal tool at Facebook, so mostly you will feel like it’s overwhelming for you.
But there are many other server and client resources that you can look around.
NOTE: This was not an actual project given by MKBHD
In this video, I have tried to create an animated logo for MKBHD. Surely this was done in a hurry, otherwise, I would have given more thought in designing an actual image and then adding such animations to it.
Goal of this video is that you can repeat every line of code after me.
What this video to get whole idea about NoSQL databases.
Relational SQL databases are the product of decades of technology evolution, good practice, and real-world testing. They are designed for reliable transactions and proper schema of data to be stored.
But this comes with the limitation of rigid schema and problem in scalability. Now, don’t get me wrong. I have seen relational databases handling millions of queries in a fraction of time but what we are talking about here is about the amount of queries operations done by giants like Google, Amazon, and Facebook.
NoSQL databases arose in response to those limitations. NoSQL systems store and manage data in ways that allow for high operational speed and great flexibility on the part of the developers. Many were developed by companies like Google, Amazon, Yahoo, and Facebook that sought better ways to store content or process data for massive websites. Unlike SQL databases, many NoSQL databases can be scaled horizontally across hundreds or thousands of servers.
The fundamental difference between SQL and NoSQL is not all that complicated.
With SQL databases, all data has an inherent structure. Databases like Microsoft SQL Server, MySQL, use a schema—a formal definition of how data inserted into the database.
While in NoSQL, data can be stored as free-form, means data that you are not even expecting can be stored while in a typical relational database, there is no way to handle such data, that is not expected.
Okay, What more I need to know about NoSQL. Glad you asked.
Most NoSQL databases lie into 1 of the 4 categories:
1. Most common one is Document database like MongoDB, in which inserted data is stored in the form of free-form JSON structure, where the data can be anything. This is my personal favorite one.
2. Next is Key-value stores like Redis, where everything in the database is accessed via keys.
3. Next up is Wide column stores like Cassandra, where data is stored in columns instead of rows. Any columns in this type of database can be aggregated for query purpose.
4. Final one is Graph databases like Neo4J, where data is stored as network or graph, with each node in the graph is a free form of data or relation.
Okay, so what are the cases when anyone would like to use NoSQL instead of conventional SQL databases.
It’s actually not that easy to decide. Companies take months to decide the next stack that they want to move or choose their first stack. After all it’s all a business aka money decision. But the major factor is that you want to have fast access to the data and you are concerned more with the speed and simplicity of access. Or maybe you are storing a large volume of data as scalability is a big concern in relational databases.
The biggest advantages of NoSQL is Flexibility, high performance, and Scalability.
While Scalability is the biggest nightmare in traditional relational databases.
Now, you might be thinking that NoSQL is all amazing, so why not to just abandon relational databases and move totally to NoSQL. Actually many companies are now moving to NoSQL but nothing is this world is all sunshine and rainbows.
NoSQL comes with some limitations too. The simple answer: Many applications still call for the kinds of constraints, consistency, and safeguards that SQL databases provide. In those cases, some “advantages” of NoSQL may turn to disadvantages.
Here is a quick chart comparing a classic SQL and MongoDB terms.
Welcome to MERN full stack development live bootcamp.
What we will be creating:
We will be designing an application where a user can signup and login. User can ask questions. Other users will be able to upvote and downvote questions and can post answers. Users profile will be created based on Github API. We will be using MongoDB as our backend with NodeJS.
For Front end, we will be using reactJS and final application will be fetched to Heroku and will be ready to serve thousands of users.
Will I get certificate for this course?
There will be NO CERTIFICATE for this course to avoid the uninterested audience.
What will be the timing and Date of start?
Bootcamp will start on 2nd of May, 2018. timings will be 9:30 PM (Indian Standard Time)
Can I ask my questions?
Yes, of course. You can ask questions at any point in time. Also, you can share your code with me and other students to ask your problems. We will be using discord for interaction.
Is there any fees?
Yep, We are charging 6000 Indian rupees per student for this course. Our international seats are already filled and we cannot take more than 30 students.
Link to join the course.
You can fill up this form and instructions will be sent to you via email. This is first come first serve basis category. So in case, you are late, there might be no email in your inbox.
Companies like Facebook, Google and Amazon have got a lot of data about us. Even the small companies have got a lot of data like signup information, number of logins, Product purchase, products that we are looking for. All this data can be processed and can give any company a boost in productivity and increase in sale.
That is why machine learning is growing so fast.
Companies can offer amazing features like quick replies that are context based in Gmail, Uber driver arrival time or time to reach at the destination via Google maps, self-driving cars etc. This is just a start of machine learning and power of data science.
Welcome to data science and machine learning course!
One of the best online resource to understand and implement Machine learning and data science concepts. Usually, people think that data science can only be learned by Ph.D. but that not true, anyone can learn data science and machine learning.
What will you learn in this course?
We will start with python installing and getting a refresher on it. We will take some challenges like printing patterns, multiplication table, and web scrapping to refresh python memories.
After that, we will move to Anaconda distribution so that we don’t have to worry about installation anymore.
First we will deal with Numpy library. This is one library that every data science and Machine learning student should master.
The real fun begins with pandas. Bring data from HTML, css, xls or any database, pandas can handle almost everything.
One of the key aspect of data science is to understand the data and it’s pattern. This all is done using graphs. Matplotlib helps you to plot variety of graphs and deduce results from it.
Seaborn is another plotting library. But it is comparatively it is much easier and powerful. We will be analyzing 911 call dataset, iris flower dataset and Fat consumption through this library.
After we will learn about supervised and unsupervised and reinforcement learning. These are the core pillars and division criteria for all machine learning algorithms.
Machine Learning Algorithms
After that we will take on most common machine learning algorithms. We will take mathematics and code part of every algorithm like,
Linear Regression Algorithm Decision Tree Regression Algorithm K-nearest neighbors Algorithm Support Vector Machine classifier aka SVM Naive Bayes Algorithm
The main goal of this course is to make sure that you understand Machine learning and data science. Catch you inside the course.
Why not. Apple always creates this excitement around iPhone and in this post, you will learn all that you want to know about iPhone.
Happened at Steve Jobs Theater. and this was the first time that this theater is being used. This was the last project that Steve worked on. The moment you take Steve’s name on stage, it brings back the awesomeness of Steve and his incredible presentation.
Iphone comes with iPhone and iPhone plus, comes in silver, space gray and gold finish. Stereo speaker with A11 bionic chip. But hey apple, where is bezel less display. Perhaps we took the expectation too high. Everything faster and thiner. 12MP camera in iPhone and iPhone plus. The plus version has a telephoto lens.
Supports Bluetooth 5 and finally Wireless charging. I think this is the only good thing that they came up in this year.
699$ for iPhone 8.
I will pass this time apple.
Coming to iPhone X.
iPhone 10 aka iPhone X is just like what you have seen in rumors.
It has got a Super retina display. Means more color accuracy. No more Home button as it has a got edge to edge display. Swipe from bottom to up and it’s now a replacement of home button.
What about Unlocking?
Did you thought to Face detection? Yep, it’s face detection.
So, if you were panicked about your finger print going to apple, now it will be your face. Although they say that nothing is going to apple server but I am little ehhhh about it.
Animojis aka animated emojis. I think this is the most amazing thing and my favorite thing in this entire event. Yes, animated poop animoji is a real thing.
Yes, it does support wireless charging.
Steve Jobs, we are missing your creativity. While the apps are increasing in quality every day and with amazing games but that charm of iPhone is somehow getting a little low.
You want to get started with programming and looking to buy a new laptop. Obviously buying a new laptop is not easy, you need to answer a lot of questions. In this blog post, I will help you to figure out best possible programming laptop that will not break your budget. There are some strong things that need to consider before buying a laptop. Out of all these important things, 1st is:
You always want the out of budget thing and this is a common human nature. If you are cutting cost then some features will get cut off too. So here are laptops and their specific programming usage.
If you can afford you can go for the latest and most advanced one but a couple-year-old is also good enough for iOS development. Make sure that it is getting all latest updates from apple for it’s OS. This machine is good enough for iOS/Android/web/Game development.
Price: It usually changes a lot so I recommend to click on image and look for best price that you can find for this model.
For Android Development:
For Android development, you can go even under 45K or so. These are 3 laptops that I recommend as of September, 2017 that are good enough for Android development. Not only just Android development, you can do Game development as well as complete web development on these laptops.
Lenovo Ideapad (I am using this one, recent purchase and it’s amazing)
These laptops are under 50K and are good enough to do Android/Game/Web development. Again, these are not the fastest laptops to play latest GTA games but are good enough to make your dream Android app or game.
For just Web Development:
Sometimes budget is a big issue and you just want to do basic web development either front end or back end. Web development is a really basic thing and doesn’t consume much or resources.
Keep in mind that you will not be able to do Android/Game development on these very budget laptops. Although you will be able to do all kind of web development including front end, reactJS, AngularJS, PHP, dotNet, Django etc.
Acer Aspire ES1-572 15.6-inch Laptop (6th Gen Core i3-6006U/4GB/500GB/Linux/Integrated Graphics), Black
Hyper Text Transfer Protocol Secure is an advanced and secure version of http protocol. Whenever you try to open a webpage like google.com or facebook.com, you make a request to a server. This request transmission happens over http protocol. This request when leaves your browser and reaches to the server can be intercepted as it is traveling in clear text format. In early days, data was not that sensitive and hacking was not much advanced, this http was Ok to have. But in present world http needs an upgrade and result is https. This additional S in https, is secure. Whole story short, it is used to encrypt communication between end user and server.
How does https work?
All https websites use either of 2 protocols to encrypt communication between user and server, SSL aka Secure Socket Layer or TLS aka Transport layer Security. Both of this SSL and TLS uses an asymmetric public key Infrastructure system. Yes, I am aware that some readers don’t know about PKI (public key Infrastructure). Basically, 2 keys are used, public key and private key. Anything encrypted with a public key can only be decrypted with a private key and vice versa.
In a case of websites, private key remains securely at a web server and public key distributed to all users of the website that need the ability to decrypt the information. I really can geek out a lot on public key and private keys but for now, that’s enough.
What is https certificate?
This is the hero of this story. When a request is made to https website, server/website sends it’s certificate to the browser. This certificate contains public key needed for the secure connection. Based on this initial exchange, your browser and server start a SSL handshake. This handshake involves the generation of shared secrets to establish a secure connection between your browser and website/server.
When a trusted SSL digital certificate is used during a https connection, a user sees a lock icon in a browser and when an Extended Validation Certificate, then you see a complete website name in green. This extended SSL certificate is common to see in banking websites.
What type of attacks does SSL protect?
SSL or https encrypts the whole data as it gets transferred to the web server. This means all the eavesdropping is avoided. So, if anyone is trying to intercept a request, also known as Man in the Middle attack, this is usually avoided by the use of https.
What https/SSL does not protect you from?
End letter in https stands for secure but this doesn’t mean that your entire website is secure now. Attacks like SQL injection and cross site scripting are still immune to https. Https has nothing to do with web logics design and processing of data. Https means you are avoiding Man in the middle attack and that’s it. You have to take care of rest of attacks via other methods.
Does everyone need SSL?
The answer to this question is tricky and there is no YES or NO answer to this question. SSL is a great thing to have but it does cost and adds to the budget of your website. SSL certificate needs you to have a DEDICATED IP. Not every plan of hosting that you have purchased from GoDaddy or HostGator are capable of installing SSL certificate. So before you buy a SSL, make sure to reach out to your hosting provider and clear things about it.
If your website is more like a brochure website you can avoid having SSL but if your website is having transaction then having an SSL is a good idea. Now there are ways to avoid the need of SSL even with a transaction. There are payment gateways that can take care of the whole transaction over a secure connection and can pass you a token that you can use for further process and then destroy that. But let’s keep it simple as of now, Payment means get a secure connection.
Also, recently Google has made it clear that websites with https are going to rank higher and will be given more priority as compared to http websites. Browsers are also displaying a “not secure” message with a website not having SSL. Now, I say that it’s good to promote security but displaying a message like that is not good either. Displaying a message like encrypted communication and the regular connection would have been a better choice.
How to install SSL?
First, you need to have a DEDICATED IP in order to install SSL certificate on your site. Also, in some hosting, having a plan to park unlimited domain might work but first be clear with hosting about the acceptance of SSL certificates. Now, this is getting longer and I will link a pdf that includes the step by step instruction with screenshots to install SSL certificate.
Here is a great website link that you can visit and just enter your website name to check the installation success for SSL. it usually takes 12-24 hour to reset all things in DNS but might be quicker, as it depends on hosting.
I know this was a long post but this is now a one stop for a reader to know about SSL. Recently, everything is moved to SSL aka https at learncodeonline.in, check out https://courses.learncodeonline.in/learn