Give us a Like

Sunday, July 7, 2013

Compiling C sharp programs in Command Prompt

To compile any program via a compiler, firstly we need to edit the environment variables.

Adding the path of CSC.exe ( C sharp compiler ) is troublesome if you really don't know where it resides.

In Windows 8 the path for the compiler is as follows.

"C:\Windows\Microsoft.NET\Framework64\v4.0.30319"




Sunday, December 16, 2012

Google Patents

Seems like Google has everything you want.

Recently Google visited our faculty for a session with our students.At the presentation, an interesting fact that they mentioned was ; "we are not just a search engine company, our focus is to ARRANGE each and every information in an accessible manner". What they meant was, that the motive of Google is to arrange information so that it is way easier to find some information than it was before.

I realized that Gmail, Google maps, Google docs, Youtube etc. all follows the above motive.

Currently I am taking a course on "Intellectual Property" at my university. For the people who have no idea what it is, here's what Wikepedia says about it.

"Intellectual property (IP) is a juridical concept which refers to creations of the mind for which exclusive rights are recognized.[1] Under intellectual property law, owners are granted certain exclusive rights to a variety of intangible assets, such as musical, literary, and artistic works; discoveries and inventions; and words, phrases, symbols, and designs. Common types of intellectual property rights include copyrighttrademarkspatents,industrial design rights and in some jurisdictions trade secrets."


In simple terms, It discusses about legal issues regarding innovations and creative ideas. Patents play a big role within the subject. If you need to get a patent for some innovation you did, It has to be the first of such kind in the world. It shouldn't have been patented anywhere in the world before 

Okay, imagine a situation where you think you have found something new to this world. Are you really sure about it? I mean,that you were the first to invent it? How can you make sure of that? Every country has a separate department regarding intellectual property.  So of course, you can ask from them about the validity of your innovation, but there seems to be an easy way. 

Whoa! Google really did ARRANGE it. It is "Google Patents". All you have to do is to visit the link www.google.com/patents and search the whole database of patents ever invented to this world. They are well categorized, very well documented and easy to understand. ( This basically provides the US patent database,but other patent databases can be accessed via visiting the respective web sites )


This is why I respect Google. They make life easier. It wouldn't have been easier to do this, but they did it. Google patents is not only useful for innovators. I find it very useful to increase our knowledge about the great inventions, coming up each and everyday. 

Nice Work Google. Thank you.

Monday, December 10, 2012

What is Scareware?

I'm sure all of you have heard about 'Malware'...But what about 'Scareware'? Heard about it anywhere?  okay since I'm rhyming, now you might be wondering whether i'm into poetry or something. :D

Even though if you might haven't heard the word, i'm pretty sure you would have been affected by it( assuming that you are a normal Internet user).

Scareware, as its name suggests, is some program used to scare people. It pop-ups some frightening messages telling the user that their system has been affected with some viruses or some other sort of vulnerability. It urges the user to download that specific program into their system, and to scan their system with this program. Many users fall into this trap. They download these software, and some times even pay for them( not in Sri Lanka though; we never pay for digital stuff :D ).

First thing to understand is that the message is fake.You don't have the viruses or vulnerabilities which the program says that you do, but worth to note that you already have some sort of virus now; it is the scareware program itself.




If you were a victim in the future, make sure not to pay. The procedure they use to trap many of the users is, they would allow you to download the software for free, but to remove the viruses which the program says you have ( we know its fake ), you will be asked to pay. Once you give the credit card information it might steal the data and affect you in a very bad way, or else they might deceive you by saying that the viruses have been deleted, but after a month or sometime they might try the same trick on you once again.

If your system is protected with a full version of a well recognized antivirus or Internet security program, you will be safe from these scareware most of the time. If you ever try to install an antivirus program after you have been affected with the scareware, most of the time, it wouldn't even allow to open up the antivirus program. Then you have no luck than trying an online tutorial to remove the scareware or to format your computer and install your operating system back again.

I have come through lots of scareware programs in the past, but I never knew that they were false alarms. I'm sure you would have seen these kinds of fake programs which scared you. I'm sharing a video below, which describes how a scareware would look like.

Thank you for reading through. I hope now you have a fair knowledge to avoid scareware, and to save your system from them.

Watch the video here

Saturday, December 8, 2012

32 bit vs 64 bit

You all might have heard about these different versions of processors,operating systems,applications which are categorized into 16, 32 or 64 bit. What makes these different from others? Why couldn't they come up with a single version of bit system? Which is better? In this post I am hoping to discuss these topics.


First thing to understand is, that there are processors categorized into these bit systems. If a processor is said to be 32 bit, it implies that it is working with 32 bit chunks. As a result a 32 bit processor can support only up to 4GB of physical memory( RAM ) : cs guys, you know why! ( Mostly I will not be getting into details about these because I want everyone who reads my articles to understand what I am talking about)

Okay, Now why did the manufacturers have to design these different types of processors ? why couldn't they design a standard system without changing the number of bits? Below, I have listed down two advantages of increasing the number of bits which a processor uses.


As the number of bits increases there are two important benefits.
  • More bits means that data can be processed in larger chunks which also means more accurately.
  • More bits means our system can point to or address a larger number of locations in physical memory.
So that is why they came up with different systems.

Okay, now let us come to something important. Think that you don't know what your system is( in bit terms ), can you install any version of operating system into it? will a 32 bit processor support a 64 bit version of OS, and vice versa?

 Then what about applications? Can a 32 bit operating system run a 64 bit application? or what about the other way around?

I found a wonderful summary for that. Check the illustration below.




Google Trends

Last week i came through a wonderful feature which Google has given free access to the public. You may be familiar with this feature already, but I guess most of you don't know that something like this exists.

It is called "Google Trends".

This gives statistics about the trends of keywords people use in search. Once you enter a search term and check for the statistics, it will give a wonderful graph which will show how many times, the specific keyword has been searched throughout the history. This is really informative for people who are doing researches about the public. Personally I found it very interesting, and informative. I am really glad that Google has given access for the public to look into this kind of data.


All you have to do is to visit www.google.com/ trends and play around with the features.

I don't want to make this post more longer since I am blogging through my smartphone and I am not a very good at typing for longer using it. Keep in touch!

Thursday, December 6, 2012

The Fundamental Theorem of Arithmetic

I have decided to write a series of articles about Cryptography(Which I am always enthusiastic about), starting off with the "Fundamental theorem of Arithmetic". I will try my best to put it in the most simple way.

okay, let's get the ball rolling.

Computers as we all know, will be dumb without mathematics. There is no way a person can understand how computers really work, without the knowledge on mathematics. Cryptography which is the branch of securing information in computers, uses mathematics effectively in order to fulfill its needs. The fundamental theorem of Arithmetic is such a building block which cryptography is depended upon.

The first thing to note is there are two types of numbers, Prime(http://en.wikipedia.org/wiki/Prime_number) and Composite. Each has their own characteristics.

The next step is to understand that any composite number can be built with a prime number adding up several times.

 10= 2 + 2 + 2 + 2 +2
 15=3 + 3 + 3 + 3 + 3
 30= 5+5+5+5+5+5+5
Euclid observed this, and went on building upon that observation.
The next thing he noticed was that a composite number can be expressed with different prime numbers adding up some specific time.It is illustrated below.

30= 2+2+2+2+2+2+2+2+2+2+2+2+2+2+2
30=3+3+3+3+3+3+3+3+3+3
30=5+5+5+5+5+5

With this, we can find the prime factors of that number. i.e 2,3, and 5 are the prime factors of the number 30. Euclid realized that you could multiply these factors a specific amount of times to build that number. In this case each prime factor, once.

30=2*3*5
Take any composite number, this will work. The important thing to notice here is that there is no other way to build 30 by multiplying some other  group of prime numbers together. Every possible number has one and only one possible prime factorization. This gives a unique identification for a composite number. This is known as the  "Fundamental theorem of Arithmetic". Understanding this is very important in terms of cryptography. This idea is one of the main concepts which cryptography has grown on.

I hope you understood what I tried to explain.This doesn't teach you any sort of cryptography, but if you understand this, the rest will really blow your mind.Stay tuned.




Thursday, November 29, 2012

Performance vs Specifications

Consumer electronics have changed our lives. It has changed the way we live. It is embedded into our lifestyle.Now there is no way back.

People are changing from feature phones to smartphones. Pentiums to multiple cores. It is happening way faster than we think. 

What I see in most of the people who are buying these stuff is non other than falling into a marketing hype. Advertisements are prepared in such a way that people will like the product no matter what the product is really capable of. People are too busy to think. They rarely have the knowledge about the technology which powers these products.



Okay. So if a normal person doesn't have the knowledge to choose the best product which matches to his needs, what would he focus on? Specifications? Features? or both?.  

What I believe is there is no product which can give all what we need. There is always a trade off between features and performance. You expect more from the first, you would be disappointed  in the latter. That is how these products work, and also how the nature works.

What most of the average people think is that they should choose the product with the best specifications. Suppose if a smartphone has a dual core processor and another has more cores, people are tend to guess that the latter would be working faster. Which is not always true. It is not the specification which matters to the performance. It is how well the programs have been managed to work in that specific processor. A slow program in a faster processor would take more time than a fast program in the slower processor. There are often times I have experienced smartphones with faster processors getting lagged in running a specific application, and the the phone with the slower processor runs smoothly. The average person doesn't understand this.

I'll quote a comment of some unknown person, who had commented in an article on a social media site.I totally agree with him.

"It's not about how much MHZ or cores processor has, and how much RAM does phone have. It's how fast it works. For all i know it could have 8gig of ram, and 4 cores ? 3ghz CPU. But if it lags, it sucks"

The next thing I wanna talk is about the feature lovers. Features are always great, but I would say performance is inversely proportional to the number of features. Less features is always faster. So one cannot simply expect all the features in his smartphone, and yet expect it to work very smoothly all the time. More features means the processor has more work to do. So it is obvious that it can lag.

What I am trying to point out here is that there is no best smartphone. It is always a trade off between performance and features. If you prefer your smartphone to work smoothly all the time, do not expect every set of features in it, and vice versa. 

There are always people who hate one brand of smartphones over another. My request to them is choose what you love, and let them chose what they love. Your priorities might not be the same with the others.