24 Jan

Moving from md5 towards a more secure hashing technique

Moving from md5 towards a more secure hashing technique

If you have an old website or a web application with some user-base and you have encrypted user passwords with md5, sha1, sha256, etc. With the knowledge about md5 or that, old hashing techniques been compromised with brute force attacks, collision attacks, etc., you are searching for a way to convert your hashing technique to something more secure like bcrypt or crypt_blowfish. This article talks about how to do that.

Read More

22 Jan

Joomla enters the world of FREE hosted websites on JOOMLA.COM

free hosting by joomla-com

Joomla is known as one of the most popular open source content management systems (CMS) in business. WordPress, which is another popular CSM, was in the business of providing FREE but restricted hosting for WordPress based sites under WORDPRESS.COM domain. This WordPress service has been known for higher positions in Google page rankings and higher visitor turnarounds.

Recently (actually on January 20, 2015) Joomla has started providing the same service in lesser-restricted way. By providing an option to have a free-hosted website for unlimited time, Joomla aims to become even more popular and substantially increase its user base.

Read More

21 Jan

Developing “Keep Me Logged In” / “Remember me” / “Stay signed in”option

stay signed in

I recently had to develop above feature couple of times in past few weeks. I came across several issues while implementing this feature. Most of these issues did not have any thing do with the programming language I used (i.e. they are not implementation related issues) but had to do with the concept of development (i.e. design issues). As these are concept level issues, I can make this article more abstract and do not have to couple with a programming language I used (PHP). However will show some code segments in PHP + pseudo, which will be very basic and can be easily translated to any other language.

First, I must emphasize that this method is based on one basic idea. “DO NOT PUT USER DATA IN COOKIE”, even in encrypted format. If you are OK with putting some user data in the cookie, because you believe that encryption cannot be broken or the information is useless to an attacker, jump to the “Not Recommended but Easy Solution” section at the end of the article

Read More

16 Jan

[Highcharts] Shared tooltips only in overlapping points

Shared tooltips only in overlapping points

Hope you understand the basics of the Highcharts tooltips. Highcharts has a shared tooltip option but it will be shared on all points. What if you want to have a shared tooltip only when points are overlapping? There is no such an option in Highcharts to get a shared tooltip only when the points are overlapping.

Below I have shown a work-around to get a shared tooltip only when the points overlap (graphs intersect).


Read More

09 Jan

Pomodoro Technique for Learning

I have to know about this technique when I was a university student. It worked really well for me and therefor I thought of sharing with the readers. This technique talks about taking small breaks in between work sprints.

A "pomodoro" kitchen timer, after which the method is named

A “pomodoro” kitchen timer, after which the method is named

What do you need?

  • A timer (If you cannot find it get a watch)
  • Notebook
  • Your learning material

Read More

16 Dec

How to use tooltip shape feature in the highchart version 4

How to use highchart tooltip shape

This article is going to talk about the tooltip shape feature in the Highcharts version 4 (And what are the available values for shape parameter). In early Highcharts versions tooltip shape is always rectangular. With this new feature, user can choose between few shapes that are defined in Highcharts. At the same time user can add new paths to the collection as functions. I haven’t done it so not going to talk about custom shapes.

Available shapes

  • ‘circle’
  • ‘diamond’
  • ‘square’
  • ‘triangle’
  • ‘triangle-down’

Jsfiddle: http://jsfiddle.net/Malinga/oo2njkhs/2/ (try changing the shape value)

15 Nov

How social media factors and weather variations can influence business

Leapset Software Engineers, Sasinda Premaratne and Malinga Perera took over this Friday’s Innovation Session with a discussion on ‘Connecting the Dots.’ They talked about how social media factors and weather variations can influence business, and how Leapset’s analytics solution ‘Leapset Insights’ takes these influences into account in order to help optimize business operations

Ref : Connecting the dots – Leapset Innovation Session

12 Jun

What to check after building a brand new website [New WebSite Checklist]

What to check after building a brand new website [New WebSite Checklist]

Once you have built a brand new site for anything, you might need to check on some general things that improve the site quality, maintainability and usability. As an example, did you place the author tag in your site (Google Rich Snippets )? Have you created a beautiful 404 page? Have you configured traffic analytical engine? You might forget some of these. Therefore, I decided to create a small checklist.

Tire One (If you forget these you might be in trouble)

  • You need to choose between www subdomain and bare domain (www.malinga.me vs. malinga.me). After deciding make sure, you build the other and redirected to your favorite domain.
  • Always test in all major browsers and screen resolutions
  • Always have a site search
  • Use readable (Human and SEO friendly) URLs
  • Verify your robots.txt and have a site map
  • Use security tools to assess any vulnerability (OWASP cheat sheet)

Read More

18 May

Camouflaged Spider at Home

Today i went to cut one of the trees, which seemed to provide too much shade to the small trees around it. In addition, I found an interesting creature, which looks like a spider. It was blended to the surrounding so well. I might not have seen it if it did not move. I took some pictures from different angles. Try to identify the creature. (I have scaled down the picture quality to suit web)

camouflaged spider malinga.me Read More

27 Feb

[Project][HCI] LearnOrgUpdated

This project was done in level 4 last semester under HCI (Human Computer Interaction) subject. It was a 4 man Group. LearnOrg (in short for Learning Organizer) is the primary course management tool used in the University of Moratuwa by all the students. Its primary uses include enrolling to new courses, unenrolling from enrolled courses, and providing a common platform to access the other academic services provided by the university. Although the LearnOrg is one of the primary tools used in the university, the overall quality of the web site is considerably poor, with respect to both HCI aspects
as well as functionality aspects. The aim of this project is to propose an improved design for the LearnOrg so that it can be used as a more user-friendly tool to fulfill the academic needs of the students.

How experiment was done

User Evaluation is done in 2 phases. First, we did a large user survey with 65 users including LearnOrg users with different areas. We shared the survey on Facebook as well as in mail groups. Then we built the updated version of the LearnOrg using the feedback. This new implementation was again evaluated using selected 15 on-site users. These users are selected from different user groups so we can get views from different angles. In these 15 users, 12 are IT related (5 from level 4, 6 from below batches, and 1 from MSc batches) and 3 are non-IT related (from architecture faculty). Feedbacks, derived Hypothesis, and Conclusions from these surveys are discussed in below report.


You can view the full report of this project though here

Access GitHub repository from here