My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Featured
Downloads
Wiki pages
Links

Quick Update: iHacky 1.0 Released!

This is the project homepage for the iHacky facebook application.

Introduction

The objective of this project is to create a social networking application for software developers through the popular social network site "Facebook." In order for the project to be successful, the project must satisfy the 3 prime directives. Details on the how the system works can be found in the developer guide. A brief description of the main feature is it will gather data from the Hackystat system, store and share the data to create a social network. Proposed features of the system are listed here:

Prime Directive #1: Provide useful features

  • Personal and community discussions on software engineering

  • Statistics on programming languages and tools
  • Ranking system that determines a user's software engineering prowess based on Hackystat data and their contributions to the iHacky community
  • iHacky profile that includes user's developer webpage and blog, rank, and personal statistics
  • Searchable data about problems and issues.

  • Automatically notify other users that a iHacky user needs help.

  • Able to display project information users are developing.
  • Able to search other users based on their skills and expertise

Prime Directive #2: External users can successfully install the system

The current state of the application allows any user to install the application on their facebook. The application has not yet been fully published, meaning that Facebook users cannot search for the iHacky application in the Facebook application search function. Users can install the application by clicking here.

Prime Directive #3: External developers can further develop the system

This project will be an open source project. iHacky will be developed entirely on open source technologies such as PHP and MySQL. The advantages of using open source technologies is that any developer can develop iHacky without concern about cost. We will gladly accept developers who are interested in contributing to this project. Developers can download the iHacky source code at our downloads section. Developers can also learn how to set up their own iHacky application from the Developers Guide. We also appreciate any feedback, recommendations, or ideas for this project.

Current System

The current iHacky system gathers data primarily from 2 different sensordata types from the Hackystat framework. iHacky gathers "DevEvent" and "Coupling" data from each iHacky member. The "DevEvent" data describes the user's development actions. These "DevEvent" data are creating when the user edits or saves a file. The "Coupling" data is created when the user invokes apache Ant with the dependencyFinder.build.xml file. This file uses the DependencyFinder tool to record the Java packages that the user utilizes. The iHacky application process these 2 sensor data by counting the number of times the user created "DevEvent" data with a certain file and compare it with the "Coupling" data with the same file. With this comparison, we can generally estimate the proficiency of the user's knowledge with a certain package. The iHacky application records all these data into the iHacky database. More information on what information is stored can be found in our developers guide.

The iHacky system will allow the user to search through all of the Java packages and find other iHacky members associated with those packages. The iHacky application has a built in email messaging system that allows the user to communicate with other members. The iHacky application also has a expertise browser to allow the user to browse through all the current Java packages that iHacky contains in its database. The following screen shots are from the current iHacky system.

iHacky main page

iHacky displaying package search results

iHacky displaying member results

Data Flow:

Powered by Google Project Hosting