The Crazy Programmerhttps://www.thecrazyprogrammer.com
Programming, Design and DevelopmentSat, 17 Mar 2018 10:41:40 +0000en-UShourly1https://www.thecrazyprogrammer.com/wp-content/uploads/2016/09/cropped-484916_442860602439830_1518519815_n-32x32.pngThe Crazy Programmerhttps://www.thecrazyprogrammer.com
32327 Best Github Alternatives in 2018https://www.thecrazyprogrammer.com/2018/03/github-alternatives.html
https://www.thecrazyprogrammer.com/2018/03/github-alternatives.html#respondSat, 17 Mar 2018 10:41:40 +0000https://www.thecrazyprogrammer.com/?p=8549Here you will get list of some best github alternatives that provide private and public repository. Being into software development we very often find ourselves in the need to host our code to any website. For the purpose, masses are blindly following one single medium for this, Github. It can not be denied that Github… Read More »

]]>Here you will get list of some best github alternatives that provide private and public repository.

Being into software development we very often find ourselves in the need to host our code to any website. For the purpose, masses are blindly following one single medium for this, Github. It can not be denied that Github users have their choice to use either Git or Subversion for version control. Also there is a facility of unlimited public code repository for all users of Github. One more fascinating feature of Github is that allows to create ‘organizations’, which at its own is a normal account but at least one user account is required to be listed as the owner of the organization.

Apart from providing desktop apps for Windows and OSX, Github also provides the facility to its users and organizations to host one website and unlimited project pages for free on the Github’s website. The typical domain for the hosted websites look something like username.github.io and address of the project pages may look like username.github.io/project-page.

Moving ahead, we have compiled a list of few other mediums that can also be used in place Github without any harm. So come let’s have a look on the list.

7 Best Github Alternatives in 2018

On contrary to the Github, the Bitbucket comes just next to it in terms of usage and global popularity. Bitbucket also provides a free account for the users and organizations as well with limit for five users. Also, it provides access to unlimited private and public repos. One of the features which is note worthy is its allowance for the users to puch their files using any of the Git client/Git command line.

Atlassian is the developer of Bitbucket providing access to the version capability to the users using their web interface. A free Mac and Windows interface is also available for using Gitbucket’s own Git and Mercurial client Source Tree.

The domain for your hosted website on Bitbucket will look something like: accountname.bitbucket.org and domain for that of project pages will be like: accountname.bitbucket.org/project. On the other hand Bitbucket also allows its users to use their own domain name for their website.

Beanstalk as another good Github alternative but it is not free. You can get a trial of the resource for two weeks after which if you wish to continue you will have a pay an amount of minimum $15 for its cheapest Bronze package. Bronze package lets you have maximum of 10 repositories with 3 Gigabytes of storage capacity and maximum upto 5 users.

Beanstalk supports the most demanded Git and Subversion control systems for version control. It is developed by Wildbit and also allows for code editing in the browser itself so that user need not to switch to command line every now and then.

GitLab is popular among the users due to its features like dedicated project website and an integrated project wiki. Also GitLab facilitates its users by providing automated testing and code delivery so that a user can do more work in lesser time without waiting for the tests to pass manually. Some of the else features to be noted are pull requests, code viewer and merge conflict resolution.

Developed by Fog Creek, unlike Github Kiln is not a free source to host your software or website. You can have an overview or experience of their version control and code hosting for Git and Mercurial for 30 days trial period, after that users need to upgrade to the premium version (minimum $18 a month) inorder to continue working with Kiln. Kiln also charges its users for the code review module separately.

If you host your website with Kiln, your domain will look something like this:

It is believed by observing abundance of projects being hosted on the SourceForge that it has existed for a longer time. When compared to the Github, SourceForge (developed by Slashdot Media) has an entirely different structure of the project. Unlike other websites for version control, SourceForge allows you to host both static and dynamic pages as well. One of the vulnerability of this medium for version control is that a user is allowed to create projects and get it hosted on the site with unique names only.

Typical domain for your hosted project will look like proj.sourceforge.net

Scripting languages like Python, Perl, PHP, Tcl, Ruby and Shell are being supported by the SourceForge servers. Users are free to choosing either Git, Subversion or Mercurial for the version control system.

This Google’s Git version control came into existence and moved to the Google Cloud platform when Google code was put out of the market by google itself. Although google provides its own repositories to work upon, but you can even connect the Cloud Source to other version control mediums like Github, Bitbucket, etc. Cloud Source offers storage for its users codes and apps across the google infrastructure itself which makes it even more reliable. Users have the freeship to search their code in the browser itself and also gets feature of cloud diagnostics to track the problems while code keeps running in the background.

Cloud Source offers Stackdriver Debugger that helps use the debugger in parallel with the other applications running.

GitKraken became popular among the developers day by day due to the exclusive features it provides to it users are just adorable. The primary point of attraction towards Gitkraken is its beautiful interface and also it focus on speed and ease of use for Git. GitKraken comes with an incredibly handy ‘undo’ button which helps its users to quickly omit the redundancies occurred by mistake. GitKraken provides a free version which can have upto 20 users and a premium version as well with several other good features.

We hope you guys enjoyed learning with us. If any doubts, queries or suggestions please lets us know in the comment section below. Do share in comments if you know any other good github alternatives.

]]>https://www.thecrazyprogrammer.com/2018/03/github-alternatives.html/feed05 Best Python IDEs for Windows/Mac/Linuxhttps://www.thecrazyprogrammer.com/2018/03/best-python-ides.html
https://www.thecrazyprogrammer.com/2018/03/best-python-ides.html#commentsThu, 15 Mar 2018 12:15:36 +0000https://www.thecrazyprogrammer.com/?p=8542Here you will get list of best python ides for windows, mac and linux operating system. Most of us think that Almost all the basic programs in any programming languages can be written using a text editor and can be run by command line then why we need to use an IDE (Integrated development environment)?… Read More »

]]>Here you will get list of best python ides for windows, mac and linux operating system.

Most of us think that Almost all the basic programs in any programming languages can be written using a text editor and can be run by command line then why we need to use an IDE (Integrated development environment)?

Let’s suppose you are writing a program. First you’ll need a text-editor like notepad, gedit, notepad++, vim editor or sublime etc. To run it we need to use command line then the command line will compile your source code and check whether there is any error or not. We have to write the code accurately. If any error occurs then again we have to debug the code. Writing a code using a text-editor is a time-taking task and you’ve to remember all the methods or properties given by the particular language.

On other hand an IDE (Integrated Development Environment) is a software that contains all of the necessary needs to make programs at one place just like a code editor, build automation tools, a debugger, compiler and interpreter. So we don’t need to use several softwares to make a program.

Using an IDE can save a lot your time by auto completing the code and syntax checking.

We can’t say that which IDE is best for Python Programming because each IDE has some extra advantages and new features than others. Just like if you’re new to python then you should use Pycharm Educational Edition or if you want to work with scientific programming then you’ll love Spyder IDE.

So here is the list of some most used python IDEs with there features. Choose any one among them according to your need.

Details: Pycharm is available in two editions, first one is community edition which is free to use. On other hand Professional Edition is paid one having some extra features (like Scientific tools, python web frameworks, python profiler, Remote development capabilities, Database & SQL support). However there is an another Edition named as Pycharm Educational Edition for those who wanted to learn or teach programming with Python.

2. Spyder

Developed by: Spyder developer community

Features: editor with syntax highlighting and introspection for code completion, support for multiple Python Consoles (including IPython),the ability to explore and edit variables from a GUI, available plugins (Static Code Analysis with Pylint, Code Profiling, Conda Package Manager with Conda),

OS Support: cross-platform through Anaconda, on Windows with WinPython and Python(x,y), on MacOs through MacPorts, and on major Linux distributions such Arch Linux, Debian, Fedora, Gentoo Linux, OpenSUSE and Ubuntu.

Details: It is an open source IDE released under MIT License mostly used for Scientific programming with Python Language. Spyder stands for Scientific PYthon Development EnviRonment. A powerful ide for Python with advanced editing, interactive testing, debugging and introspection features and a numerical computing environment, thanks to the support of IPython (enhanced interactive Python interpreter) and popular Python libraries such as NumPy (linear algebra), SciPy (signal and image processing) or matplotlib (interactive 2D/3D plotting).

So if you’re working with Scientific programming just like Data analysis, or for people with experience of both RStudio and MATLAB, Spyder IDE is best choice.

3. PyDev

Details: Pydev is not an IDE itself but it is a third party plugin for Eclipse. If you’ve worked with Java or Android then you may have used or heard about Eclipse. Having PyDev with Eclipse provides a great environment to code in Python.

5. Eric

Developed by: Detlev Offenbach

OS support: Linux, macOS, windows

Details: Eric is another free best IDE for Python development which provide all necessary tools needed for writing code and professional management of a software project. Eric also support many other languages such as Ruby as high as Python.

So these were some of most used best python IDEs to work with. There are a lot of other alternatives out there like Rodeo for scientific development, or VIM text editor which offers featured Python development environment when configured correctly for Python Development and many other IDEs like Komodo, Emacs.

Conclusion:

As we know Python is very old programming language so there are many development tools to work with python. We’ve mentioned top 5 most used IDE’s above. Choose any of them as suits to your requirements.

]]>https://www.thecrazyprogrammer.com/2018/03/best-python-ides.html/feed2Best Books for Machine Learning and Artificial Intelligencehttps://www.thecrazyprogrammer.com/2018/03/best-books-for-machine-learning-and-artificial-intelligence.html
https://www.thecrazyprogrammer.com/2018/03/best-books-for-machine-learning-and-artificial-intelligence.html#respondSat, 10 Mar 2018 19:52:23 +0000https://www.thecrazyprogrammer.com/?p=8528Here you will get list of best books for Machine Learning and Artificial Intelligence that are useful for beginners and intermediates. Hope you all are doing good. We are again here in front you all with another successive post on Machine Learning. We almost have covered the theoretical portion of the course and will be… Read More »

]]>Here you will get list of best books for Machine Learning and Artificial Intelligence that are useful for beginners and intermediates.

Hope you all are doing good. We are again here in front you all with another successive post on Machine Learning. We almost have covered the theoretical portion of the course and will be doing the hands-on practical soon. We all know that there are plenty of resources on the internet that we can use to study and learn almost anything. But again availability of the contents in such a humongous amount haunts the learners that where to start their journey and very often a learner ends up confused and irritated. Great scholars suggest reading books, ain’t they? So why don’t we take the easier path? While the internet is full of plenty of choices that seem very confusing for a novice, we would suggest to start the journey with conventional steps, of course books.

Again you guys do not really worry or need to wander here and there in search of books neither you have to ask someone else’s suggestion for what book to have. Here we have complied a list of some useful books that will give a kick-start to your effort towards data sciences and analytics also on the other hand are interesting to read. Moreover keeping in mind our readers convenience, we’ve also provided the links from where you can order books of your choice without even stepping out of the comfort of your home. So without talking much let’s get started and step toward the list we have compiled for you.

Best Books for Machine Learning (ML)

As the name itself suggests, this book aims at explaining the algorithms of machine learning mathematically with a tint of statistics. The three authors are Trevor Hastie, Robert Tibshirani and Jerome Friedman has emphasized on explaining the logic behind the machine learning algorithms with the help of mathematical derivations.

Note: If you have a good grasp of linear algebra, we would suggest to go with this book.

This very books provide a simplified understanding of the complex areas of machine learning. Instead of lengthy explanations, small and to-the point explanation is being provided by Yaser Abu Mostafa, Malik Magdon Ismail and Hsuan-Tien Lin. We would suggest this book as a good means to learn and apply the principles of machine learning for the beginners.

Moreover in addition to the book reading you can also refer to online tutorials by Yaser Abu Mostafa.

This book popularly known as PCI in the world of machine learning is said to have all that requires to start learning machine learning. It is believed that this book was written long before the evolution of machine learning as we see it today, but to our surprise, the topics and chapters discussed entirely relate to the version of machine learning we have today.

We strongly recommend this book to every aspiring data scientist, ml enthusiast and even folks who are into machine learning since quite a few time. We bet you won’t regret giving this book a try.

After reading the book mentioned just above, we would recommend you to give this too a try. Tom has tried to make his readers understand the concept of machine learning with the help of pseudocodes and case studies. You will also find some interesting basic examples to understand the algorithms with ease.

Best Books for Artificial Intelligence (AI)

This book is considered as the holy book for understanding the immense field of AI. Peter Norvig and Stuart Russell worked together to make this art happen. This book is suited to the people new to AI. Not only this provides an overview about AI but also covers some advanced topics like search algorithms, working with logic, machine learning, language processing, etc.

This book too is written by Peter Norvig. This book primarily aims at teaching its readers the common lisp techniques to build robust AI systems. Instead of just teaching theory, in this book Norvig has put more emphasis on the practical part to let his readers develop programs and systems at their own. If a personnel want to make his/her career in the AI domain, this book is worth giving a shot.

Jeff Heaton, the author of this book aims to teach his readers the basic AI algorithms like clustering, error calculation, linear regression, etc. This book is well equipped with good examples and relevant test cases. Moreover this book demands good grasp on mathematics in order to understand the equations described.

This book is an introductory step towards AI and written by Deepak Khemani. This book is written in such a manner that a person from non-programming background can also understand the concepts easily. Although the advanced topics are not explained into depth, but the overall structure of the book is acceptable. The books explains the classical methods and the updated concepts as well.

Any doubts or suggestions are welcomed in the comment section below. Also let us know if there is any other best books for machine learning and artificial intelligence you have read and is worth mentioning in the list.

]]>https://www.thecrazyprogrammer.com/2018/03/best-books-for-machine-learning-and-artificial-intelligence.html/feed0Difference between while and do while Loophttps://www.thecrazyprogrammer.com/2018/03/difference-between-while-and-do-while-loop.html
https://www.thecrazyprogrammer.com/2018/03/difference-between-while-and-do-while-loop.html#respondFri, 09 Mar 2018 21:11:59 +0000https://www.thecrazyprogrammer.com/?p=8520Here you will get to know about difference between while and do while loop. Both while and do while loops are used to execute set of statements multiple times. But there are some differences between them in terms of syntax and working that I have discussed below. Difference between while and do while Loop while… Read More »

]]>https://www.thecrazyprogrammer.com/2018/03/difference-between-while-and-do-while-loop.html/feed0Difference between Deep Learning and Machine Learninghttps://www.thecrazyprogrammer.com/2018/03/difference-deep-learning-machine-learning.html
https://www.thecrazyprogrammer.com/2018/03/difference-deep-learning-machine-learning.html#respondSun, 04 Mar 2018 18:46:58 +0000https://www.thecrazyprogrammer.com/?p=8515Here you will learn about difference between deep learning and machine learning. We already are aware of the term and in brief that Deep Learning is the subset of a wider domain called Machine Learning. If talking combined of Machine Learning and Deep Learning we can think of how Netflix is able to predict and… Read More »

]]>Here you will learn about difference between deep learning and machine learning.

We already are aware of the term and in brief that Deep Learning is the subset of a wider domain called Machine Learning. If talking combined of Machine Learning and Deep Learning we can think of how Netflix is able to predict and recommend shows to watch based on your taste and how Facebook is able to recognize the face in the pictures you upload.

Also as Machine Learning is the superset of Deep Learning, Artificial Intelligence is the superset of Machine Learning. So, instead of using these terms interchangeably we should be able to distinguish between them.

Deep Learning is being used by Google in its image and voice recognition algorithms, by Amazon to predict and recommend what a customer wants next and by MIT researchers to predict the future.

Before moving further let us quickly get a brief intro of what Deep Learning actually do so as to maintain its existence. It is quite clear that it will be focusing on the principles of ML and AI being subset of them. So come let’s see what’s new there for us to learn.

How does Deep Learning work?

Primarily the basic concept behind Deep learning is to feed the computer with decent amount of data/information which can be later used for the decision making process about some other set of data. Now you might be wondering, how the heck are we going to feed the computer? Is that similar to the process we adopted in case of ML? Yes, you got this right. The exact same method as ML is also entertained in deep learning i.e. via Neural Networks.

These networks are also termed as logical constructions which classify every bit of data that passes from them on the basis of answers received to every binary (TRUE/FALSE) questions being asked to the bits passing via network. Since Deep Learning is associated with the perspective of developing these networks, therefore are also known as Deep Neural Networks. Such networks are witnessed to process comparatively large datasets like Google’s image library, or Facebook’s feeds repository. Now we can very easily get an idea of what efforts are needed by computers to handle such a large datasets with extremely sophisticated networks. On the other hand how all these tasks are accomplished by humans with intense ease is remarkable.

Working of deep neural networks are better tested with images as inputs because of the fact that images consist of several different elements and it is pretty interesting to observe that how computer with its calculation-oriented, one track mind can learn to identify and distinguish the images like we humans do.

Note: Deep Learning can also be applied on several other types of data such as signals, speech, audio, video, written texts, etc. to produce conclusions.

Let us make this explanation bit easy to understand with the help of an example.

Problem Statement: To take input of all the cars passing along a public road and classify them on the basis of make and model.

Solution: First step towards the solution would be to provide the system access to the large database containing the information about the cars (like shape, size, engine sound, etc.). This can be accomplished manually or in the most advanced manner where the system can be programmed to search the internet for the relevant information and interpret the information found there.

Next step would be the intake of the data that needs to be processed. In this case the images and sound captured by cameras, microphones and other sensors are input to the system. The data from the sensors are compared with the data already being present within the system or the data what system has learned. And thus the system is able to classify the cars on the basis of their make and model with certain probability of accuracy.

Up till now this all was pretty straightforward. Now, the interesting part comes in when we talk about “Deep Learning” in this, as the time passes, the system gains more and more experience and become more able to classify the cars after being trained on new data with improved probability every time, like humans do. The system also learns from the mistakes that it make during the classification process just like humans do and with passing time the accuracy is observed to be improved significantly.

Some of the noteworthy work and examples of Deep Learning are self-driving cars, predicting the outcome of legal proceedings, precision medicine, game playing and many more.

Note: In order to dive deeper in context of deep learning you may refer to Bernard Marr’s new book Data Strategy.

Difference between Deep Learning and Machine Learning

As already told in the beginning of this post, Deep Learning is the subset of Machine Learning. A machine learning model needs to be told explicitly by feeding more and more data that how it should be making accurate prediction, on the contrary the deep learning model is capable of self-learning through its own method of computing (so-called its own brain).

A deep learning model is designed in a way so as to interpret the data with some logic structure to copy the human’s ability of drawing conclusions. To accomplish this with simplicity and ease deep learning models uses a layered structure of algorithms known as Artificial Neural Network (ANN), whose structure is known to be very similar to the biological neural network present in human beings. Due to these facts the models made following the principles of deep learning are observed to be far more capable in the decision making process when compared to a typical machine learning model.

Despite of all complex networks resembling a human neuron, it is not always ensured that models pertaining to deep learning will not draw an incorrect conclusion. Also observing the degree of certainty the deep learning models are considered as the potential support to AI. One of the noteworthy accomplishment in the field of deep learning is Google’s AlphaGo. Google created a deep learning model that become expert in a board game “Go” by playing against professional Go players and learning step by step what moves to make. The model was too featured in the news when it defeated multiple times winner.

In the last we think we should have a quick recap of what we have learnt so far in this post. To get a better grasp, let us do this in a tabular way.

Machine Learning

Deep Learning

Machine Learning is a subset of AI

Deep Learning is a subset of ML

Such models uses data to learn from them and then make decisions accordingly.

Deep learning has got ML covered by providing even better capabilities to the existing ML models.

Examples: face recognition, spam filtering, weather forecasting, etc.

Examples: Google’s AlphaGo, Tesla’s self-driving car, etc.

End Notes

We are pretty sure that our readers must be fascinated with the facts and figures we’ve discussed in this post regarding deep learning. Moreover as we have seen that a huge amount of data is required to fuel up the deep learning vehicle, this domain is believed to prosper in this era of big data and in times to come. It is believed that in the coming decades, deep learning would be having examples that humans cannot even imagine of.

In an interview with Wired Magazine, Baidu’s chief scientist Andrew Ng was reported to say : “I think AI is akin to building a rocket ship. You need a huge engine and a lot of fuel, if you have large engine and a tiny amount of fuel, you can’t even lift off. To build a rocket you need a huge engine and a lot of fuel.” (Source: Wired)

In the last we would like to thank our readers, We hope you guys enjoyed this post. Any suggestions or queries are always welcomed from readers end. If there exist any doubt or ambiguity regarding Deep Learning vs Machine Learning, please do let us know in the comment section below. Also let us know what other topics do you want us to write about, we would be more than happy.

]]>https://www.thecrazyprogrammer.com/2018/03/difference-deep-learning-machine-learning.html/feed05 Best TV Series That Every Programmer Should Watchhttps://www.thecrazyprogrammer.com/2018/02/best-tv-series-every-programmer-watch.html
https://www.thecrazyprogrammer.com/2018/02/best-tv-series-every-programmer-watch.html#commentsTue, 27 Feb 2018 19:10:26 +0000https://www.thecrazyprogrammer.com/?p=8512If you got bored of writing code all day and night then this article will surely help you to refresh your mind. Here I am sharing some tv series that revolves around programming or hacking. If you are a programmer then you must watch them. In case I have missed any good show then mention… Read More »

]]>If you got bored of writing code all day and night then this article will surely help you to refresh your mind. Here I am sharing some tv series that revolves around programming or hacking. If you are a programmer then you must watch them.

In case I have missed any good show then mention in comment section. I will try to add it in the list.

5 Best TV Series for Programmers

1. Mr. Robot

This show is about a programmer who works as a cyber security engineer in a company during day and a vigilante hacker at night.

2. Silicon Valley

The story revolves around a silicon valley engineer who struggles to build his company named Pied Piper.

3. Person of Interest

This tv series is about a rich programmer who saves life with the help of surveillance AI that sends them information about the people involved in impending crimes.

4. Halt and Catch Fire

Another awesome programmer show which is about personal computing boom through the eyes of an engineer and a prodigy whose innovations directly confront the corporate behemoths of the time.

5. Scorpion

Based on the real life of genius Walter O’Brienm, who have an IQ of 197. He is asked by Homeland Security to build a special group of gifted individuals to troubleshoot the most difficult problems that the US & the world may encounter.

Comment below what is your favorite show among these. And don’t forget to share the article with your programmer friends.

]]>https://www.thecrazyprogrammer.com/2018/02/best-tv-series-every-programmer-watch.html/feed3Advantages and Disadvantages of Artificial Intelligencehttps://www.thecrazyprogrammer.com/2018/02/advantages-disadvantages-artificial-intelligence.html
https://www.thecrazyprogrammer.com/2018/02/advantages-disadvantages-artificial-intelligence.html#respondSun, 25 Feb 2018 19:09:17 +0000https://www.thecrazyprogrammer.com/?p=8507In this article you’ll see the advantages and disadvantages of artificial intelligence. Artificial intelligence is designing programs or machines that have ability to think, so machines can take decisions without interference of human. Giving thinking capacity to machines can arise several problems and advantages too. So let’s see them. Image Source Advantages of Artificial Intelligence… Read More »

Advantages of Artificial Intelligence

Less Errors: As decisions are taken on previously gathered information and certain algorithms, without the interference of humans, so errors are reduced and the chance of reaching accuracy with a greater degree of precision is a possibility.

Faster Decisions: Using Artificial intelligence, decisions can be taken very fast. For example, we all have played Chess game in Windows. It is nearly impossible to beat CPU in hard mode because of the A.I. behind that game. Because it took the best possible step in very short time according the algorithms used behind it.

Daily Applications: In today’s era, A.I. is used in many applications just like Apple’s Siri, Window’s Cortana, Google’s OK Google. Using these type of applications we can communicate with our device using our voice. Which makes our work easy. For example, in recent android phones if we want to search for a location then all we have to do is say “OK Google where is Agra”. It will show you Agra’s location on google map and best path between you and Agra.

No Emotions: The complete absence of emotions makes machines to think logically and take right decision where in humans emotions are associated with moods that can affect human efficiency. Complete absence of emotions make machines to take right decisions.

Digital Assistants: Some of highly advanced organizations uses digital assistants to interact with users which saves need of human resource. Digital assistant also used in many websites to provide things that user want. We can chat with them about what we are looking for. Some chat bots are designed in such a way that its become hard to determine that we’re chatting with a chat bot or a human being. For Example, Mitsuku.

No Breaks: Unlike humans, machines can work 24*7 without any break. Humans need a break after work to regain their speed and freshness whereas machines can work for long hours without getting bored or distracted.

Medical Applications: Increasing the integration of A.I. tools in every day medical applications could improve the efficiency of treatments and avoid cost by minimizing the risk of false diagnosis. AI has begun transforming the field of surgical robotics wherein it has enabled the advent of robots that perform semi-automated surgical tasks with increasing efficiency. A.I is not going to replace Doctors, it will help them by providing the relevant data need to take care of patient (such as history of aortic aneurism, high blood pressure, coronary blockages, history of smoking, prior pulmonary embolism, cancer, implantable devices or deep vein thrombosis). Otherwise this information would take long time to collect.

Taking risks on behalf of humans: In various situations, Robots can be used instead of Humans to avoid the risks. Such as Robots can be programmed to explore Space because metal body can suffer in different situations but the human body can not. In Military forces Robots can be programmed to defuse a bomb, so the error will be reduced and can save human lives. Complex machines can be used for exploring the ocean floor and hence overcoming the human limitations.

Public Utilities: Self-Driving cars, which would greatly reduce the number of car crashes. Facial recognition can be used for security. Natural language processing to communicate with humans in their language.

There were some pros or benefits of artificial intelligence. Lets talk about some of its cons.

Disadvantages of Artificial Intelligence

High Costs: The hardware and software need to get updated with time to meet the latest requirements. Machines need repairing and maintenance which need plenty of cost.

Unemployment: The increasing number of machines leading to unemployment and job security issues. As machines are replacing human resources, the rate of people losing their jobs will increase. Because machines can work 24*7 with no break, which is more beneficial of industries instead of working with people who needs break and refreshment. Machines do their work as they programmed to do without any error while error can be occurred from humans.

Can’t think out of box: Robots can only do the work that they are programmed to do. They cannot act any different outside of whatever algorithm or programming is stored in their internal circuits. And when it comes to a creative mind, nothing can beat a human mind. A computer can’t think differently while making or drawing something. The thoughts comes from the emotions and experience which machine’s cannot. So machine can’t think out of box whereas thousands of new thoughts and ideas comes into a human mind.

Can’t feel Compassion and Sympathy: There is no doubt that machines are much better when it comes to working efficiently but they cannot replace the human connection that makes the team. Machines cannot develop a bond with humans.

Highly dependent on machines: In todays generation, most of the people are highly dependent on Applications like Siri. With so much assistance from machine, if humans do not need their thinking abilities, these abilities will be gradually decrease. In future with the heavy use of application of artificial intelligence, human may become fully dependent on machines, losing their mental capacities.

These are some advantages and disadvantages of Artificial Intelligence. Some people also say that Artificial intelligence can destroy human civilization if it goes into wrong hands. But still none of the A.I. application made at that scale that can destroy or enslave human (as shown in some movies like Megatron in Transformers and ultron in Marvel). So we should not consider this as disadvantage of Artificial intelligence.

If you have any questions related with this article, comment below. We’ll reply as soon as possible.

]]>https://www.thecrazyprogrammer.com/2018/02/advantages-disadvantages-artificial-intelligence.html/feed0Python Operator Overloadinghttps://www.thecrazyprogrammer.com/2018/02/python-operator-overloading.html
https://www.thecrazyprogrammer.com/2018/02/python-operator-overloading.html#commentsWed, 21 Feb 2018 19:43:50 +0000https://www.thecrazyprogrammer.com/?p=8501In this article, you’ll learn about python operator overloading with examples. We all know what are operators (+, -, <=). In python, operators work for built in classes, but some operator behaves differently with different types. For example ‘+’ operator can add two numbers and also can concatenate two strings. Program: [crayon-5aafff068e014523843866/] Output: 30 [crayon-5aafff068e01c513484336/] Output:… Read More »

We all know what are operators (+, -, <=). In python, operators work for built in classes, but some operator behaves differently with different types. For example ‘+’ operator can add two numbers and also can concatenate two strings.

Program:

a = 10
b = 20
print (a+b)

Output:

30

a = "hello "
b = "programmer"
print(a+b)

Output:

“hello programmer”

So, using any operator to perform different operation that are not usually performed, is known as operator overloading. We can change the behavior of operators using operator overloading.

Or we can also say that “assigning a different work to an operator is known as operator overloading”.

To perform operator overloading, there are some magic methods provided by Python. Using these methods we can perform any operation we want on a operator.

The operators that can be overloaded are as follows:

Operators

Methods

+

__add__(self, other)

–

__sub__(self, other)

*

__mul__(self, other)

//

__floordiv__(self, other)

/

__div__(self, other)

%

__mod__(self, other)

**

__pow__(self, other[ , modulo])

<

__lt__(self, other)

<=

__le__(self, other)

==

__eq__(self, other)

!=

__ne__(self , other)

>=

__ge__(self, other)

The basic idea to perform the operator overloading in python is to define any of these methods in the class then call them using operators.

Let’s see an example. Suppose we want to overload ‘+’ operator.

As mentioned above that we can concatenate two strings and add two numbers with the help of ‘+’ operator but here we’ll perform the addition on two objects of a class named as Test.

So there is an error that says that we can’t perform addition to add values of the both the Test class’s objects. So we will define the __add___(self, other) method here to add the values of both the objects.

]]>https://www.thecrazyprogrammer.com/2018/02/python-operator-overloading.html/feed2Android Studio Keyboard Shortcuts for Windows/Linux/Machttps://www.thecrazyprogrammer.com/2018/02/android-studio-keyboard-shortcuts.html
https://www.thecrazyprogrammer.com/2018/02/android-studio-keyboard-shortcuts.html#respondWed, 14 Feb 2018 18:58:12 +0000https://www.thecrazyprogrammer.com/?p=8494Here you will get android studio keyboard shortcuts for windows, linux and mac os that I have taken from official android developers website. Knowing keyboard shortcuts makes our work little bit faster while using an application, specially when you are an android developer. 🙂 Below is the android studio cheat sheet that shows all useful… Read More »

]]>https://www.thecrazyprogrammer.com/2018/02/android-studio-keyboard-shortcuts.html/feed0Python = vs ==https://www.thecrazyprogrammer.com/2018/02/python-equal-vs-double-equal.html
https://www.thecrazyprogrammer.com/2018/02/python-equal-vs-double-equal.html#commentsThu, 08 Feb 2018 20:26:33 +0000https://www.thecrazyprogrammer.com/?p=8490Hello everyone, in this tutorial you’ll see what’s the difference between = and == in python. Most of new programmers get confused with them. Python = vs == = (assignment operator) Well, in simple words, ‘=’ is an assignment operator which is used to assign a value (on right side) to a variable (on left side). Example:… Read More »

]]>Hello everyone, in this tutorial you’ll see what’s the difference between = and == in python. Most of new programmers get confused with them.

Python = vs ==

= (assignment operator)

Well, in simple words, ‘=’is an assignment operator which is used to assign a value (on right side) to a variable (on left side).

Example:

var_name = 10

here var_name is a variable name and 10 is the value to be assigned, we’re using ‘=’ to assign it.

Example Programs:

#example 1
n = 10
print("n = ", n)

Output:

n = 10

#example 2
n1 = 10
n2 = 20
sum = n1 + n2
print("sum = ", sum)

Output:

sum = 30

As in above program, we can also write an expression on the right side of ‘=’ . the result of that expression will be assigned to the variable on left side.

#example 3
n1,n2 = 10,20
print("n1 = " , n1)
print("n2 = " , n2)

Output:

n1 = 10

n2 = 20

In python, we can also assign more than one value at once using commas.

#example 4
n = input("please enter your name:")
print("name = " + n)

Output:

please enter your name : crazy programmer

name = crazy programmer

The value received by input() function will be assigned to variable ‘n’.

== (equal to operator)

“==” equal to operator is a relational operator just like “!=”, “<=”. It is used to compare the operands on both of its side. It returns a boolean value (true or false), when both operands are equal then it returns ‘true’ otherwise ‘false’. Mostly it is used in conditional statements.

Example Programs:

#example 1
n = 10
print(n == 12)

Output:

False

In above program, the operands on both side of ‘==’ will be compared with each other. If they are equal then program will print “True”, if not then it will print “False”. The output of above program will be ‘False’ because ‘n’ is not equal to ‘12’.

In this program first user will enter a name then interpreter will check the condition. Inside the if statement we wrote ‘name == “xyz”’. If the name entered by user is ‘xyz’ then it will return ‘True’ otherwise ‘False’. In output window we’re entering ‘xyz’ as name then the ‘if’ will be true and will print “login successful”.

I hope your doubt has been cleared. If you have any problem related with this article then please comment below, we’ll reply as soon as possible.