“Decorators” in Python

One of most powerful and advanced features of “Object-Oriented Programming” in python, is “Decorators”. But before you dive in to the decorator’s topic, you need to know somethings in advance. For C++ and Java programmers, functions inside of functions is weird and unfamiliar, but python supports creating functions inside of functions and a function can have an argument which is a function itself! Please don’t mess it up with recursion. In recursion (which is supported by C++ and java as well), same function is called inside of definition of function, but in python you can define a new function inside a function (like a wrapper function), and return of your function could be a function. This is so beautiful feature and makes a great tool for professional programmers to write codes.

Continue reading ““Decorators” in Python”

What is “Computer Vision”?

The word “Computer Vision” or “Machine Vision”, refers to when a computer or machine can see a thing almost as a human see. The computer vision is different from CC Cameras (Close-Circuit Camera), because CC Camera just streams the objects to Monitor, but in computer vision, computer (by some algorithms) can interpret the objects in stream and for example can detect faces or humans or animals in pictures or videos or even in online video streams. First technologies for computer vision, appeared in early 2000’s. The OpenCV almost was the first popular tool for computer vision which created by “Intel” Corporation, in 2000. The first Algorithms for object detection was the “Viola Jones Algorithm” which invented in 2001 by Paul Viola and Michael Jones. This algorithm is based on “Haar like features” and it estimates any important feature of an object by a Haar like shape and if an object in a picture or video, has all of this Haar like features, then that is our desired object. A sliding window with specified size (which is customized by programmer), starts from top left of image or video and it moves to right after each step and then to down after end of the row. Each window that has our desired object will be covered by a colored rectangle in image or video. “Haar like features” and “Sliding Window” are shown in below pictures.

Continue reading “What is “Computer Vision”?”

A Comparison between 8 Most Popular Programming Languages

According to most of statics from reliable sources, we can name 8 most popular programming languages, as below:

Python, JavaScript, C++, C#, Java, Ruby, PhP and Objective C

There are some more programming languages like “Swift”, which is mostly designed for iOS mobile applications and is popular well, but at this point, I don’t talk about it.

Continue reading “A Comparison between 8 Most Popular Programming Languages”

What is advantages of Python Programming Language than other Languages?!

First of all, if you don’t have any prior knowledge about none of the programming languages, but you want to start learning a programming language, “What do you do at this step??!!”

That’s right. You go to google and search something like, “which language is most popular?” or “which language has better job opportunity?” or “which language is easiest to learn for dummies?”

Hear, I try to answer to some of your questions. According to almost all of statics, python is in top 3 or top 5 programming languages which has more developer worldwide and has wider job market and …

Continue reading “What is advantages of Python Programming Language than other Languages?!”

Why Do I Need a Tutor?!

Maybe you think you can learn anything by just reading books or watching video lectures or attending in group classes with a lot of students or searching through internet or YouTube or etc. But experiences and researches shows that only less than 20 percent of all people can learn anything by those ways and rest of people need someone to help them through learning process.
Maybe you have experienced this, which in first hours of watching a video lecture or in first pages of a book, you faced a lot of questions that rest of materials depended on the answers of question. And of course no one was near you to help and you had to leave rest of video lecture or book and or by searching a lot in internet, you got tired and preferred not to go on. In this moments, you really feel you need a tutor beside you to help you to get start and grow. Obviously after some tutoring programs, you can be like an expert and you can solve your problems on your own.

Continue reading “Why Do I Need a Tutor?!”