Tradesmen.Ie Research Manual
Total Page:16
File Type:pdf, Size:1020Kb
I.T. CARLOW, SCHOOL OF SCIENCE AND ENGINEERING Tradesmen.ie Research Manual Ilya Biryukov. [email protected], [email protected] 11/16/2010 Mentor: Joseph Kehoe Contents Introduction ............................................................................................................................................ 3 Tradesmen.ie – Existing application ....................................................................................................... 4 Process Bids ........................................................................................................................................ 8 Case 1 .............................................................................................................................................. 9 Software Platform ............................................................................................................................... 9 Existing Ranking Algorithms .................................................................................................................. 10 Importance of Ranking ...................................................................................................................... 10 Google Page Rank ............................................................................................................................. 11 Definitions of Page Rank ............................................................................................................... 12 Criticism ........................................................................................................................................ 14 EBay Reputation System ................................................................................................................... 15 Powerseller Accounts .................................................................................................................... 18 EBay Reputation Criticism ............................................................................................................. 19 Proposed Ranking Algorithm ................................................................................................................ 20 Overall Rank ...................................................................................................................................... 20 Adjusted In-Time Rank ...................................................................................................................... 20 Sample Execution .............................................................................................................................. 21 Remarks ............................................................................................................................................ 21 Algorithm Test ................................................................................................................................... 21 Available Software Platforms Overview ............................................................................................... 25 Programming Languages ................................................................................................................... 25 PHP ................................................................................................................................................ 26 Python ........................................................................................................................................... 41 C# & .NET ...................................................................................................................................... 47 Databases .......................................................................................................................................... 56 MySQL ........................................................................................................................................... 56 SQLite ............................................................................................................................................ 58 Microsoft SQL Server .................................................................................................................... 59 MongoDB ...................................................................................................................................... 61 Mobile Platform Languages .............................................................................................................. 62 HTML 5 and CSS 3 ......................................................................................................................... 62 Custom Data-* Attributes ............................................................................................................. 66 New JS Selectors ........................................................................................................................... 66 1 | P a g e JavaScript Mobile Frameworks ......................................................................................................... 70 Sencha ........................................................................................................................................... 70 Phone Gap ..................................................................................................................................... 72 JQuery Mobile ............................................................................................................................... 73 Platform Choice................................................................................................................................. 75 Conclusion ............................................................................................................................................. 77 References ............................................................................................................................................ 78 2 | P a g e Introduction This research manual describes the project I am about to begin. It provides an overview of the existing application that will need to be redesigned to some extent, a new ranking algorithm that will need to be developed and a mobile application that will also need to be developed. The goal of this project is to redesign the main functionality of the web site described below, namely, registration process for both clients and tradesmen, bid placing process and bids browsing functionality and to upgrade the code base from older classical ASP technology to a new platform that will be chosen during my research. The second goal of this project is to design a safe and fair ranking algorithm that will be able to sort bids made by tradesmen for a given job in such order that only the tradesmen fit for the job will be given the opportunity for complete the job in question. And the final goal is to develop a cross platform mobile application that will enable tradesmen and clients to use the functionality provided by the main web site on their smart phones such as iPhone and Android. 3 | P a g e Tradesmen.ie – Existing application Tradesmen.ie is a free online service for customers looking for a tradesman helping them get up to 4 quotes for their job. The customer fills in a form online describing the work that they want carried out and the type of tradesman they are looking for. The service then sends text messages and/or emails to all of the tradesmen who have expressed an interest in work in that area. The first 4 tradesmen who reply are sent the customer contact details and get a chance to quote for the job. (1) (See figure 1). On the other hand, tradesmen need to create an account on the system to start participating (see figure 2). Before the account is made active, the system sends out a text message with verification code that the tradesman is required to enter on the web site to activate the account and verify the correctness of the mobile number. The final step of registration is a request for references from three previous customers (see figure 3). The tradesman enters details for three previous customers, their mobile numbers and submits the request. Once the request is validated by the web site administrators, reference requests are sent out by a text message to clients. In order to leave the feedback, clients simply reply to the text message with the wording of the reference. Once the registration process is completed, the tradesman can start placing bids on jobs. S/he can browse through the list of current jobs and view specific information about each of the jobs like budget, location, date created and the job id. If a tradesman wishes to bid on a particular job, s/he would need to send a text message to a special number with the job id followed by their bid amount. The bid amount that I refer to here is not the actual price for the job, but rather how much the tradesman is willing to pay to get the clients order, or in this case the contact details of the client. When the bidding time is over, the system picks top 4 bidders and sells the lead to them for the price of the lowest bid from those top 4. When the sale is over the system provides each of the tradesmen with the client’s contact details. From that point, the system no longer interferes in the process and tradesmen communicate to the client in private, provide their job quotes and try to win the job. 4 | P a g e Figure 1. New Job Creation Screen. 5 | P a g e Figure 2. Tradesman registration screen. 6 |