bckurera's thoughts

Just another WordPress.com site

Google abandoning “Google Code”

It is Googles’ fashion to shutdown services which are not popular enough. The latest victim was Google Code project [1] which was started in 2006. Google was very frank on the press release I suppose. I would like to quote the following.

When we started the Google Code project hosting service in 2006, the world of project hosting was limited. We were worried about reliability and stagnation, so we took action by giving the open source community another option to choose from. Since then, we’ve seen a wide variety of better project hosting services such as GitHub and Bitbucket bloom. Many projects moved away from Google Code to those other systems.

It is true that GitHub gained increase popularity among developers for code hosting and many developers are comfortable with it too. However as Google claimed it was true that in 2006 the choices were limited, even GitHub started in 2008 [1]. However the large picture is quite astonishing. In 2006, Google was a giant company and Google Code was one of the projects they have started. They could have done something better than GitHub, I believe.

However it is good to see the dynamics of Google, other than few, most of their interests never seems fixed. It quite sounds like the open source way too.

I worked closely with Google Code repositories few years back and it is quite sad to hear that it is getting shutdown. But I think it is the right decision they took. Need to move forward with new interests and causes.

Good Bye, Google Code for the support hosting open source projects through the decade of service.

Reference

[1] http://google-opensource.blogspot.com/2015/03/farewell-to-google-code.html

[2] https://en.wikipedia.org/wiki/GitHub

Leave a comment »

Wifi Security : In a nutshell

Wifi Security is a vast subject and of course a tiny sub set of cyber security which of course a sub set of IT security as a whole.

Well, no system in this world is safe. Therefore it is better to employ some security over your wifi router before someone steals your expensive data bundle. The best part is, smart intruders consume, may be 10% of your quota, even you dont have a chance to notice it.

“Is that the end of the story? Who cares about data, I have enough so it is better someone uses it”…..

I know you are person with a big heart. BUT do you know what the intruder is doing? May be he gets access to deep-web, running a web site that sells drugs or running a brute force bot, manning a DoD attack bot, or simply maintain a fake FB account, who knows? By the law, you are responsible for all this traffic, because you are the owner of the router. Scared enough? Good !!

So before it is too late, use some security features to block the unwanted access. Bear in mind, something is better than nothing. A mantra in security. Fortunately we are not living in Singapore, so anyone can try accessing any wifi network (not using the traffic but there is no law refrain the attempts to access the wifi network).

I composed a list of few security measurements that can be employed in your family Wifi router. Most of them are easy to employ. Just check the list below….

Choose the SSID wisely and dont make it public

SSID – Service Set Identifier. SSID is the name of the network you see. Do not use a SSID which is easy to guess. For an example dont use your home number or your name or your pet’s name. They are easy to guess. I mean the owner of the router. Use some arbitrary SSID which is not easy to crack using social engineering techniques. Then dont make it public. As an additional feature, broadcasting the SSID can also be stopped. In that case you need to enter the SSID manually as it is not visible when wifi is turned on in your device. It facilitates invisibility of the network for those who dont know youe SSID. Ideal for your home network.

Save energy, switch the router off when you leave home

Do not keep your wifi router running 24×7. Switch it off when you dont use it. Even before you sleep. This is a good practice.

Wifi router is not an ornament

Keep the router in a safe place where the public cant reach. Ideally not the living room.

Why? I did remove the sticker which was on the router which had the password and details. So cant I keep it in the living room? so that my neighbors know I have a wifi router.”

This is good. I would do the same if I owned a wifi router in 1980’s or 1990’s. But no more. Because, if they can see your router it reveals the model of the router. It is a good info and it narrows down the effort of the intrusion.

Never keep using the routers default password

Change the password of the router as soon you start using it. Never use the default password even though it seems very strong. It is very easy to crack it if the intruder knows the model of the router you are running.

Use a strong password and change it frequently

Are you a fan of “abc123” password or “1234567890” or ……………………………….??

Well it is time for a change, use a strong password. I mean a password with a higher entropy. And change it frequently. Lets say at least once a month. Higher the frequency, it is much safer.

Use MAC Filtering

This is a standard security feature to prevent intruders (at least theoretically). If you need more info just google.

Use strong encryption 

Fan of WEP (Wired Equivalent Privacy). God bless you. Less than 5 minutes the encryption can be broken. Not sure, ok try using a free tool like aircrack. Use WPA/ WPA-2 (Wi-Fi Protected Access) instead. At least it is better than WEP.

Use a firewall

Using a firewall is a good idea, go for a software firewall if you cant afford a hardware firewall. Some routers are equipped with firewalls. Check it !

Use extra layers/ tools/ hardware

This is the best security measurement, but very expensive. May be not suitable for a home but must have for the wifi network in your office.

Update firmware of the router

Keep the router’s firmware up to date as much as possible, this is very important and not that difficult too.

Be vigilant and keep monitoring

Even though the above measurements are in place, they are useless without proper monitoring. So make it a habit of checking the device history log in your router, at least. It tells you which devices has been connected to the router in past few days. If there is a suspicious device check for it.

Well this is the list I came up with. If you have anything which has not been listed here please use comments.

Leave a comment »

GTA : Grand Theft Auto III, 10th Anniversary edition on Android – Thoughts or Food

After few months of hard work, I have successfully completed GTA : Grand Theft Auto III, 10th Anniversary edition on Android today. While playing following idea came to my mind and think of listing them  as follows, to make it batter.

In future versions :

Vehicle with fuel constraints : It is good to indicate the amount of fuel on every vehicle so that it get reduced while driving all around. So the player need to shift vehicles or re-fuel through out the mission.

Energy for Claude : It is good to indicate Calude energy level (not the health) so that Claude should be fed with food through out the mission. As per the actions he performs the energy level should be reduced.

Weapon shops : It is nice to have an Armoury so that Claude can buy any weapon before they get unlocked. As much as he has money he can buy what he wants.

Bombs : Please include some bombs in the Armoury such as C4 chargers, claymores, time bombs and etc..

More strategy missions : Good to have more missions that should be completed with a strategy than driving and killing.

Mafia leader : It if good to develop Claudes character such as way that he can lead a gang of Mafia, recruiting members and lead them in missions with out Claude interfere in the mission every time.

I do hope such ideas make GTA a great gaming experience, the next goal is to try GTA Vice City on Android.

1 Comment »

An “Event Management System” for Fedora

Fedora Ambassadors are quite busy with organizing events to promote and spread the word about the Fedora OS and the project. The scale of the vent may vary small to a FUDCon, but the basic principles like preparation, budget management and stuff remain same for both ends. For a long time I tend to use few project management tools to organize those in a better way. But non satisfy my need 100% , therefore think of drafting a project idea to create and develop an Event Management System for focusing the Fedora project.

Event management can be devided into small peices which includes Budget Management, SWAG production, Attendees Management, Work Break-down Structure (WBS),Sponsorship Management and phases like Planning, Executing and After Event.

In Planning Phase, WBS should be properly implemented with deadlines, this is where Project Management principles should be implemented to make sure the event is under control. Simply the work that is break down should have deadline which the work should be completed, the planned cost for the work, earlier start and latest start, earlier completion and latest completion, successor work and predecessor work, priority and criticality, etc.. Simply we can consider this as a Work Object.

In Executing Phase, it should be possible to update the Work Object with the progress so that it can be possible to calculate the current progress and money spend at a given time.

After event Phase, it should be possible to create all the budget report and analyse the event.

The next important thing is the Attendees Management which includes Content Management as well. There should be a easy to set up component which enables Attendees Registration over a web site and the public should be able to submit content like speeches. The content should be supported according to the event type, Bar Camp style or Conference Style.

Sponsorship Management is quite important but we can think of that later.

I would like to see Object Orient design for the proposed system using the design pattern MVC with PHP.

Leave a comment »

GSoC 2013 – The Fedora Project has made it again!

With great pleasure on behalf the Fedora Summer Coding group I would like to announce that the Fedora project has been selected for the Google Summer Coding program 2013 and this would be the 8th time with GSoC.

Student’s application period has been started therefore please make sure you have submit the application in advance to avoid last time issues.

For more info and updates join with the mailing list and find more info at GSoC portal in Fedora http://fedoraproject.org/wiki/GSOC_2013

Wish you a happy summer coding !!!

Leave a comment »

__construct() in PHP, OOP with PHP

In PHP it is possible to use the construct method which is really useful, in java we can have several constructor methods and the rule is the method name should be as same as the class name. In PHP the rule is quite different. It uses a special method __construct which is called once an object is created or simply when new operator is used. Therefore this method is also known as “magic method” and it is one of the few magic methods in PHP.

Without further text, following would be an example of using constructor method with in PHP OOP.

class Cube1 {

	private $length;
	private $depth;
	private $height; 
	
	public function __construct() {
		$this->length = 10;
		$this->depth = 10;
		$this->height = 10;
	}
	
	public function getVolume() {
		return ($this->length * $this->depth * $this->height);
	}
}

$box=new Cube1();
echo $box->getVolume();

This looks really simple. How would it be if we need to have more than one constructor methods which can accept arguments.

class Cube1 {

	private $length;
	private $depth;
	private $height; 
	
	public function __construct($a=10,$b=10,$c=10) {
		$this->length = $a;
		$this->depth = $b;
		$this->height = $c;
	}
	
	public function getVolume() {
		return ($this->length * $this->depth * $this->height);
	}
}

$box=new Cube1(10,2.5);
echo $box->getVolume();

$box2=new Cube1(2);
echo $box2->getVolume();

Since in PHP the __construct method cannot be override directly as in Java but there are few techniques to use so that it is possible in the indirect way. Will discuss them in the next post.

It is up to you to use your imagination and creativity to make use the of this feature.

1 Comment »

Org perspective on Google Summer of Coding – Part 1

GSoC 2013 has been announced recently and both organizations and students have started working towards achieving the ultimate glory as Google OSO termed.

For a Free Software organization, GSoC is actualizing a good opportunity since it is creating a platform which enables the interaction with the university students. Nevertheless, most organizations envision one major objective that is, getting young contributors to the organization while fulfilling their need by successfully completing the project.

Keeping this hope in mind, the organizations invest considerably enormous effort on these students. Sometimes the mentor may take less time if it is done by himsel, but training a newbie is worthy. Mentors who were into this program earlier, may have noticed that much portion of the students get vanished once the program is over, being exact once they received their final payment. Some remains as contributors and they start vanishing after few months and few stays with the organization and become key players.

The challenge in front of the organizations is to increase the portion of few students that are contributing long term. In Students Application Review Process (SARP), most of the mentors are much interested in the students’ competencies rather than the students’ reliability. The highest demand makes the selection much more difficult. At the same time if they are more projects than the available slots then there is a new problem to rank the projects to match with the available slots. The important projects should be get done and those would be first in the list.

SARP is a three-dimensional process where the importance of the project, students long term contribution and student’s competencies are considered and evaluated. Neither factor cannot be disregarded since each of them are really important for organizations due to small number of slots that organizations are receiving due to high demand for the program. Obviously this is not a simple task for an organization that has a high demand or organization that manages more slots. The selection should be optimal, select the student who can finish the project and who stays with the organization and be a part of that.

Many organizations ask students to fix bugs, write small code segments and so on to elaborate their knowledge. What can be used to measure their reliability? The degree of the accuracy of the method? Questions need answers.

Therefore the challenge ahead is to find ensuring evaluation methods which both implementation of the project and the long term contribution of the students can be earned and ensured in order to get the maximum benefit of the GSoC program and the effort investing by the contributors.

1 Comment »

High Density Bipolar of order 3 (HDB3)

Yesterday I got a call asking about HDB3 encoding. Since I am not memorizing everything under the sun I couldn’t answer at once but I learnt it in few minutes thanks to Google (referng to classic Tanenbaums’ Computer Networks book is much boring) and fulfill the need of my friend.

Encoding exercises are always very interesting and fun. If you are into IT, you should have gone through Data Communication & Network  module which is full of protocols. Being frank I hate that subject, I am not good at memorizing things and applying them, I am not a robot after all.

Following is what HDB3 is, ( I am noting the rest for my own reference if required later)

High Density Bipolar of order 3 (HDB3)


Algorithm

  1. Get the signal
  2. Convert it to Alternate Mark Inversion (AMI) form
  3. Look for 4 consecutive zeros and replace them with either 000V or B00V, Rule: If number of + and – at the left hand site of the consecutive 4 zeros is odd then use B00V else 000V
  4. If it is 000V then V polarity should be as same as the polarity of the preceding pulse of those 4 consecutive zeros. If it is B00V, B and V are in same polarity but opposite to the preceding pulse of those 4 consecutive zeros.

Examples:

101000000000010

AMI : +0-0000000000+0

+0-000V000000+0
+0-000-B00V00+0
+0-000-+00+00-0

Note :

  1. V is known as the violation bit.
  2. If the violation bit and the imidiate AMI bits’ polarity is similar then change the polarity of all AMI bits at the right hand side of the violation bit to their opposite polarity , keep this repeating for violation bits which satisfy the rule.
  3. As soon a 4 consecutive zeros is found convert it and proceed, because you have to count + and – for the next 4 consecutive zeros including the + and – on the last 4 consecutive zeros which you finished converting.

Example:

1100000000110000010

AMI : +-00000000+-00000+0

+-000V0000+-00000-0
+-000-B00V+-00000-0
+-000-+00++-00000-0
+-000-+00+-+00000+0
+-000-+00+-+B00V0+0
+-000-+00+-+-00-0+0

Note:

Note the change (in green) after the violation bit due to immediate AMI bit and violation bit are in same polarity. All AMI bits are changed to its'(compliment of the AMI bit at right hand side of the violation bit) opposite polarity.

Example :

1 0 1 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0

AMI : + 0 – 0 0 0 0 0 + – 0 0 0 0 + – 0 0 0 0 0 0

+ 0 – 0 0 0 V 0 + – 0 0 0 0 + – 0 0 0 0 0 0
+ 0 – 0 0 0 – 0 + – B 0 0 V + – 0 0 0 0 0 0
+0 – 0 0 0 – 0 + – + 0 0 + – + 0 0 0 V 0 0
+ 0 – 0 0 0 – 0 + – + 0 0 + – + – 0 0 – 0 0

Example :

1 0 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 0 1 0 0 0 0

AIM : + 0 − 0 0 0 0 + 0 0 0 0 − + 0 0 0 0 − + − 0 0 0 0 + − + − 0 0 0 0 + 0 − 0 0 0 0

+ 0 − 0 0 0 V + 0 0 0 0 − + 0 0 0 0 − + − 0 0 0 0 + − + − 0 0 0 0 + 0 − 0 0 0 0
+ 0 − 0 0 0 – + 0 0 0 0 − + 0 0 0 0 − + − 0 0 0 0 + − + − 0 0 0 0 + 0 − 0 0 0 0
+ 0 − 0 0 0 – + 0 0 0 V − + 0 0 0 0 − + − 0 0 0 0 + − + − 0 0 0 0 + 0 − 0 0 0 0
+ 0 − 0 0 0 – + 0 0 0 + − + 0 0 0 0 − + − 0 0 0 0 + − + − 0 0 0 0 + 0 − 0 0 0 0
+ 0 − 0 0 0 – + 0 0 0 + − + B 0 0 V − + − 0 0 0 0 + − + − 0 0 0 0 + 0 − 0 0 0 0
+ 0 − 0 0 0 – + 0 0 0 + − + – 0 0 – + – + 0 0 0 0 – + – + 0 0 0 0 – 0 + 0 0 0 0
+ 0 − 0 0 0 – + 0 0 0 + − + – 0 0 – + – + 0 0 0 + – + – + B 0 0 V – 0 + 0 0 0 0
+ 0 − 0 0 0 – + 0 0 0 + − + – 0 0 – + – + 0 0 0 + – + – + – 0 0 – + 0 – 0 0 0 0
+ 0 − 0 0 0 – + 0 0 0 + − + – 0 0 – + – + 0 0 0 + – + – + – 0 0 – + 0 – B 0 0 V
+ 0 − 0 0 0 – + 0 0 0 + − + – 0 0 – + – + 0 0 0 + – + – + – 0 0 – + 0 – + 0 0 +

Reference : http://en.wikipedia.org/wiki/Modified_AMI_code#HDB3_.28European_E-carrier.29

Leave a comment »