Posts

Java Web Services

Image
Service Oriented Architecture (SOA) is one of the most important software architectures nowadays, Many companies like Google, Microsoft, Amazon, Yahoo, and more, uses SOA to make their services available for the developers to embed them within the applications, and benefit from those services. 
Three main components in SOA:

Service Provider: where the service resides.Service Consumer: the client that uses the service.Registry: where service definitions are published,  allowing service consumers to look up and directly consume the services.

Web service is a way of communication that allows interoperability between different applications on different platforms, and it is based on SOA. Web Services makes interoperability possible by using xml messaging system, which is understandable by most modern languages.
Java and C# are between the most used languages for creating web services, because of the support they provide for it. IDEs such as Netbeans and Visual Studio also makes it easier to dea…

Step Wise Project Planning Example

Image
Step Wise is a planning method used in software project management. Step Wise is compatible with PRINCE 2 which is a set of project management standards published by the Central Computing and Telecommunications Agency (CCTA) to be used by the British government for IT projects.
PRINCE 2 and Step Wise are widely used in non-governmental projects also.

The file linked below is an example of a project plan for an e-mail system. The plan is developed by following the standards of Step Wise method.

This photo shows the steps of Step Wise Planning approach:


You can find the example on dropbox by following this link: SPM Project

IOS Image Picker with tap gesture

Image
While you are developing an IOS application, you may find yourself on a scenario where you want the user to pick a photo from Photo Library, then display it in an Image View. To do that, you can put a button on the scene, open image picker, then display the selected photo, but I think that if we let the user tap the image view to open the image picker, it would be more convincing, so i'll show you how to do it in a video as always. Hope you will find it useful.

Monte Carlo Filter using python

Image
When we talk about robotics and Autonomous Vehicles, one important problem arises, which is the localization problem. Let's take the self driving car as an example, The car needs to know its position in the world it operates in, this is very important, especially when it comes to navigation and path finding. A number of algorithms exist to solve this problem, one of them is Monte Carlo Localizer or Monte Carlo Filter. Monte Carlo Filter uses statistics with the help of sensing and moving operations to find the location that have the maximum probability that the robot is at.
Monte Carlo Filter is used in many real world examples where the world is represented as 2D Matrix, To simplify the algorithm, I implemented it in a 1D world using python, You can find the code at GitHub following this link. I also recorded the implementation process and uploaded it to YouTube. The Video:

Logistic Regression using matlab

Image
Logistic Regression is one of the most famous classification algorithms, like Linear Regression we discussed before , it is easy to implement and gives great predictions.
The Logistic Regression algorithm has two major categories:

Binary-Class: where the result is 0 or 1 (belong to a certain class or not), an example of it is the spam email detection problem, where the result could be 0 (not spam), or 1 (spam). Multi-Class: where the result could be any value in the range (0..n), where n is the number of classes, an example of it it the handwritten digit recognition, where we have 10 classes (n = 10), each class represent a number between 0 and 9. Implementing Binary-Class Logistic Regression using matlab is similar to implementing Linear Regression, with some modifications of the hypothesis and cost function formulas.
In this video, I implement the algorithm using matlab:

Linear Regression using matlab

Image
Linear Regression is a powerful algorithm when it comes to prediction, you only have to give it some training data that contains the properties and result for each sample, then it will draw a regression line through the data, and predict the results for a new set of properties without previously seeing them by the algorithm.
Implementing Linear Regression is a fun task, because it's not that hard to do, plus the outcome will be very useful.
In this video, I'm implementing Linear Regression using matlab, the training data consist of the population of a city, and the profit a company gaining from it, the algorithm should predict the profit for new cities given the population.
 you can find the code on github: Code Here