Sunday, November 20, 2011

My very first project in 'FreeLancer'

I guess most of you know the freelancer website but you may have not tried to do a project in that yet. From this post I'm telling you about my very first project in freelancer.

I got registered at freelancer few months back following a request sent via email by a fellow student at SLIIT (Mihiran). I didn't have any idea about completing projects and getting paid then. I wasn't even bothered to place bids on projects. 
These days I'm spending holidays after completing the 2nd year at SLIIT and I thought I should really try to complete a project and earn some money without wasting time on watching movies and TV Series.

I placed bids on 5 projects, three of them were data entry projects, one was to develop a web application with database connectivity and the other was a Java Assignment.

I received a message from the publisher of the Java Assignment asking whether I could finish it successfully.
The price range for the project was $30-$70 (Canadian Dollars) and my bid was 30$. When I placed the bid, I mentioned that I could finish the project in one day. I replied saying that I could finish it and then I received the details of the project.

My Java knowledge is not very high since I learned Java in the 1st semester of the 2nd year at SLIIT and after that I didn't write much programs in Java since I did the 2nd semester project in C#. 


According to that I had to write two Java programs. Both the programs were command line programs, but for inputting data I had to use GUI with JOptionPane in java. For output, both command prompt and GUI was used.

The first program was based on a complex mathematical equation and I had to do a dry run which was a tedious task since I got some logical errors in the program. It was because a condition given in the assignment had a printing mistake where it had printed '>' instead of '<'. Finally I found it and completed the program getting the correct output.



The second program was to develop a customized commanding environment where user can enter predefined commands. The program should implement the identification of those commands and I had to write some string handling methods for that. I could successfully finish that also.


Finally my client asked to do some modifications to the programs saying that he would pay me additional 20$s. I did them too and after delivering the project I received 50$ (CAD). From that 5$s were deducted from the freelancer website as a commission.


I take this opportunity to thank my Java teacher at SLIIT, Ms. Abarnah Kirupananda who introduced me Java and the notes she gave us were really helpful when finishing the project. 

-Tharindu Edirisinghe-
-SLIIT 10'-

Tuesday, November 15, 2011

Participated in the 'Etisalat Android Forum 2011'

Android is a widely spreading operating system for mobile devices such as smart phones and tabs. As IT undergraduates, we must be alerted with the latest technologies. In order to introduce the capabilities of 'Android', Etisalat (One of the leading telecommunication provider in Sri Lanka) organized a forum with the theme 'WHAT CAN ANDROID DO FOR YOU?'. 

Luckily I got the chance to attend the forum by registering on the Etisalat website. It was really helpful to understand Android and Android application development. I hope to develop some Android applications very soon.

These are some photos of the event.

This is the beginning of the event.
In this picture, Sameera, Guru, Sasika and I are seating in the front row if you can see :D Over 1000 people attended the event.
 A guest speaker.
 A demonstration on Android application development was done by a lecturer at SLIIT (see image below) and unfortunately I can't remember his name.
At the end of the event, there was a raffle draw and for the winners, Android Tabs and smart phones were awarded. 

See more photos from 'Etisalat Android Forum Facebook Album'.

For those who are interested,
there is a good video tutorial for Android application development in lynda.com.
'Hello Android' book is also a great resource for beginners.

-Tharindu Edirisinghe-
-SLIIT 10'-

Saturday, September 24, 2011

Algorithm Simulator - Insertion Sort, Selection Sort and Bubble Sort


For the 'Design and Analysis of Algorithms' (DAA) subject in the 2nd semester of the 2nd year at SLIIT, we had to develop an application to demonstrate the usage of some algorithms. We were given a list of algorithms and we were given freedom to choose any programming language and tool for the development. 

I chose C# since I'm familiar with .NET framework than Java and Visual Studio 2008 as the IDE. The algorithms I selected were Insertion sort, Selection Sort and Bubble sort. The user should be able to provide inputs and then the application should simulate how the sorting is done. 

I used Labels to display the elements in the array and Timers to move the Labels accordingly. 

I'd like to share the source code so that those who are new to this can learn how to develop such kind of application.

To improve the user friendliness and appearance, I used an 'Outlook bar' in the application. It was an open source project where I found the code from CodeProject

Special thanks to Professor Godfrey Muganda of the Department of Computer Science, North Central College, Naperville, IL for the support provided via emails replying to my questions related to the development of this project.

These are some screen shots of the application.







-Tharindu Edirisinghe-
-SLIIT 10'-

Saturday, September 3, 2011

Issue with DropBox

I normally use mediafire to share my files but sometimes mediafire is not working at SLIIT due to the proxy server. Therefore I wanted to find a better way to share files. Emailing is not possible because most of the time my files contain exe files and gmail is not allowing exe file attachments.

Then I moved into dropbox. It is a very good solution since it synchronizes the files in my PC so that I can access them from anywhere. Sharing is also easy because we can get a public link and share the link so that the particular file can be downloaded using the link.

This is the place where the problem encountered. When I drag a file into the public folder of dropbox in my PC, the file is uploaded to the server. I can right click on that file and get the link for public sharing.

 Suppose I have two files in my drop box called 'Simulator.zip' and 'MATCH.exe'. Now I'll get the public sharing links for those two files.
For security reasons I've indicated some part of the link as 'XXXXXXX' but in both links those are same. Now suppose I have another file called 'Hello.txt' in my public folder. Now somebody who has a public link of my drop box can download it without knowing the URL for that file. 
It can be derived as 'http://dl.dropbox.com/u/XXXXXXXX/Hello.txt'. So if somebody has a link of a file in my dropbox and also if he knows the file name then he can download that file like this. Or even by guessing the name of the file it might work. So when you are putting your personal files to your dropbox, be careful.

-Tharindu Edirisinghe-
-SLIIT 10'

Saturday, August 27, 2011

Looking Back


It's been long since I wrote the last post. Not because I was busy, just because I didn't feel like writing. I'm reaching to the end of the 2nd year at SLIIT. 2 years is not a very long period but during that I had so many experiences, learned so many things and also made mistakes.

I received so many good comments for the series of posts I wrote (Mission 4.0 GPA at SLIIT) before the final semester examination of last semester. Unfortunately I couldn't get 4.0 GPA this time but finally ended up getting 3.94 GPA. I made some silly mistakes in Software Engineering I paper and so I got an A- for that. Anyway I'm happy because I was not just studying the subjects but besides that I did so many extra things including blogging, experimenting technologies and also helping my friends. I received a full scholarship for my results this time also which means I have saved nearly Rs. 75,000 during the last semester. This time the cut off GPA for full scholarships was 3.94.

I still remember how I did the 'ST 1' and 'ITA' group projects last year and sometimes I read the blog posts I have written and I wonder how I could complete them successfully. When I started doing them there were so many things I didn't know but one by one I learned them on my own and did them. The resources were limited such as previously done projects by SLIIT students. That's why I have posted the source codes of my projects so that our juniors can learn. Unfortunately it doesn't seem like happening when I see how the 1st years do their projects. Anyway I don't want to talk about it much.

I wrote this post just to avoid removal of my blog from the blog syndicatiors. Hope to write something meaningful next time. Thanks for reading.

-Tharindu Edirisinghe-
-SLIIT 10'-  

Sunday, July 17, 2011

Tak Tik Tuk Version 3.0 with improved Algorithms

From my last post I introduced the version 2.0 of the game I developed. I further developed  it by adding new algorithms with pattern matching capabilities. 

Now the difficulty level of the game is so high and even I cannot win the game. If you can, please let me know :D
I changed the user interface of the game a little bit to improve the appearance.Same as the previous version, .NET framework 3.5 is required to play the game.

Follow this link to download the game. (144.31 KB)

These are some screen shots of the game. 

Enjoy playing and send me your comments.

-Tharindu Edirisinghe-
-SLIIT 10'-

Monday, July 4, 2011

Tak Tik Tuk Game Version 2.0

Recently I developed a Tak Tik Tuk game (Version 1.0) using Microsoft Visual Studio 2010, WPF and C#. Since it wasn't much capable of matching the winning patterns, I released it among very few of my friends to gather a feed back. Then I developed an algorithm to match the winning patterns and it succeeded. I used the Transparent Effect in WPF which improves the appearance of the game. Besides that I added some voice features also to improve the interactivity. Here are some screen shots.



Click Here to download the game. (110.42 KB)
You need to have .NET Framework 3.5 installed in your PC to play this game.

Enjoy it and send me your comments.

-Tharindu Edirisinghe-
-SLIIT 10'-

Saturday, July 2, 2011

Stacks and Queues GUI applications

These are some GUI applications I developed when I was following the 'Software Technology I' subject when I was in the second semester of the first year at SLIIT. I think this will be useful to learn not only Stacks and Queues but also tasks like exception handling when implementing a C++ GUI application in Visual Studio.

This Stack application demonstrates the fundamental tasks of a Stacks such as Push, Pop and Peek methods.




Click Here to download the application. (19.84 KB)
Click Here to download the Visual Studio project source code. (2.4 MB)


The Queue application demonstrates the tasks related to Queues such as Enqueue, Dequeue and Peek Front.

Click Here to download the application. (20.09 KB)
Click Here to download the Visual Studio project source code. (3.11 MB)

You need to have .NET Framework 3.5 installed in your PC to run these applications.


-Tharindu Edirisinghe-
-SLIIT 10'-

Wednesday, June 15, 2011

Ebook Linker Down - Source CODE Released !!!

 During the last examination period at SLIIT, the Ebook sharing website (Thariya's Ebook Linker) which I designed was very much helpful for me and for my friends to share the learning resources we had. I received so many good comments for developing that from my friends as well as my lecturers at SLIIT. 

It was successfully hosted at http://tharindu.somee.com but after two or three weeks I got to know that the website was not working properly. The reason was the deletion of the database from the server. I guess it was done by the site administrators at somee.com and I can't blame them since it's a free hosting service. Maybe they received complains from the book authors for violating copy rights.

I have no intention of running the site by uploading a database to the server. Therefore I thought of sharing the source code of the website with you. It was developed using Microsoft Visual Studio 2008, .NET framework 3.5, ASP.NET and C# as the programming language. 

This will be useful for 1st year students at SLIIT for the ITA group project.


The database is also included in the Zip file. You have to attach the database to the MS SQL server on your PC when running the website. (Read this post for more information

Then open the project in Microsoft Visual Studio. You need to modify the web.config file with your MS SQL server name. In my PC it is (local). Replace (local) with your server name.

If you don't know the server name, you can open the Microsoft SQL Server Management Studio and the Server Name will appear as shown in the image below.
If you have any problem regarding the source code, just drop me a message via the contact me page.

-Tharindu Edirisinghe-
-SLIIT 10-

Friday, May 6, 2011

How to install and configure mySQL on Windows

Before going to install mySQL, first lets check whether we have already installed mySQL on the PC. Go to the command prompt and type 'mysql' and press Enter key.
If it is not installed you will get an error message saying 'mysql is not reconnized as an internal or external command, operable program or batch file'. Now lets look at how to install it.
First you need to have the MySQL community server. You can download the installer package from this link. Select the platform as 'Microsoft Windows' and download the MSI installer according to your operating system (either 32 bit or 64 bit). 
Once you have downloaded the MSI package, it will appear like this.
Double click on the installer and run it. The the following window appears. 

Click Next.
select 'I accept the terms in the license agreement' and click Next.
Now you need to select the setup type. I'll select 'Typical and click Next.
Now it shows the destination folder of the installation. Click 'Install'.
It may take few minutes. For the next dialogue boxes appear, click Next.

Now you get the following window.
Tick 'Configure the MySQL Server now' and click 'Finish'.

Click Next.

Select 'Standard Configuration' and click Next.
Make the selections as in the above image and click Next.
Select 'Modify Security Settings' and type the root password. This password is needed when we do modifications to the server so don't forget it. Click Next.
Click 'Execute'.
Click Finish. Now we have successfully installed the mySQL server on the PC.
Go to command prompt and type 'mysql' and press Enter.
Now we are getting an error message because it cannot identify the user. So lets create a user account on the server. First you need to login to the root account. Type the following in the command prompt and press Enter.

mysql -u root -p

It will prompt to enter the root password. Type your root password and press enter.

Now you are in the root account. So lets create a user. The commands are shown in the image below. Don't forget to put semicolons (;) at the end of each statement.


CREATE USER username ;
GRANT ALL ON *.* TO username WITH GRANT OPTION ;
FLUSH PRIVILEGES ;
UPDATE mysql.user SET Password = PASSWORD ('your password') WHERE User = 'username' ;
FLUSH PRIVILEGES ;
exit ;

Here I have granted all the permission for this user also. If not you can grant permissions for a selected set of commands. Setting a password for the account is optional. You need to change the words appearing in red color.

If you didn't set a password for the account, this is the command to login to the account.

mysql -u username

If you set a password this is the command to login.

mysql -u username -p

Then it will prompt to enter the password of the account. Type it and press enter.

Instead of command prompt, you can also use the 'MySQL Command Line Client'. You can find it in 
Start -> All Programs - > MySQL - > MySQL Server 
if you are using Windows 7.

From my next post I'll show you some important commands in mySQL. So keep in touch.

-Tharindu Edirisinghe-
-SLIIT 10-