Tradesmen.Ie Research Manual

Total Page:16

File Type:pdf, Size:1020Kb

Tradesmen.Ie Research Manual 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 |
Recommended publications
  • Implementation of Calfem for Python
    IMPLEMENTATION OF CALFEM FOR PYTHON ANDREAS OTTOSSON Structural Master’s Dissertation Mechanics Detta är en tom sida! Department of Construction Sciences Structural Mechanics ISRN LUTVDG/TVSM--10/5167--SE (1-47) ISSN 0281-6679 IMPLEMENTATION OF CALFEM FOR PYTHON Master’s Dissertation by ANDREAS OTTOSSON Supervisors: Jonas Lindemann, PhD, Div. of Structural Mechanics Examiner: Ola Dahlblom, Professor, Div. of Structural Mechanics Copyright © 2010 by Structural Mechanics, LTH, Sweden. Printed by Wallin & Dalholm Digital AB, Lund, Sweden, August, 2010 (Pl). For information, address: Division of Structural Mechanics, LTH, Lund University, Box 118, SE-221 00 Lund, Sweden. Homepage: http://www.byggmek.lth.se Detta är en tom sida! Preface The work presented in this masters’s thesis was carried out during the period June 2009 to August 2010 at the Division of Structural Mechanics at the Faculty of Engineering, Lund University, Sweden. I would like to thank the staff of the Department of Structural Mechanics, es- pecially my supervisor Jonas Lindemann, for help during this work. I would also like to thank my Jennie, and both our families, for their support throughout my education. Lund, August 2010 Andreas Ottosson i Contents 1 Introduction 1 1.1Background.............................. 1 1.2WhyCALFEMforPython?..................... 1 1.3 Objective ............................... 1 2MATLAB 3 2.1Background.............................. 3 2.2 Objects ................................ 3 3 Python and NumPy 5 3.1Python................................ 5 3.1.1 Background.......................... 5 3.1.2 Influences ........................... 5 3.1.3 Objects ............................ 6 3.2NumPy................................ 6 3.2.1 Objects ............................ 7 3.2.2 Commonmatrixoperations................. 8 4 Integrated Development Environments 11 4.1MATLAB............................... 11 4.2PythonIDLE............................. 12 4.3IPython...............................
    [Show full text]
  • Python Programming
    Python Programming Wikibooks.org June 22, 2012 On the 28th of April 2012 the contents of the English as well as German Wikibooks and Wikipedia projects were licensed under Creative Commons Attribution-ShareAlike 3.0 Unported license. An URI to this license is given in the list of figures on page 149. If this document is a derived work from the contents of one of these projects and the content was still licensed by the project under this license at the time of derivation this document has to be licensed under the same, a similar or a compatible license, as stated in section 4b of the license. The list of contributors is included in chapter Contributors on page 143. The licenses GPL, LGPL and GFDL are included in chapter Licenses on page 153, since this book and/or parts of it may or may not be licensed under one or more of these licenses, and thus require inclusion of these licenses. The licenses of the figures are given in the list of figures on page 149. This PDF was generated by the LATEX typesetting software. The LATEX source code is included as an attachment (source.7z.txt) in this PDF file. To extract the source from the PDF file, we recommend the use of http://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/ utility or clicking the paper clip attachment symbol on the lower left of your PDF Viewer, selecting Save Attachment. After extracting it from the PDF file you have to rename it to source.7z. To uncompress the resulting archive we recommend the use of http://www.7-zip.org/.
    [Show full text]
  • Run Python Program from Terminal
    Run Python Program From Terminal Crunchiest and representationalism Alfonzo intertwines while slim Archy belly-flopped her redactions also and recapping pleasingly. Swampy Sivert somebreakaway: gracelessness he spreads jauntily. his Seoul Somerville and consecutively. Parliamentary and autecologic Carlyle infuriates her screwer borates while Jessey belie On the script from python test cases, for some experience, you can do you are Now you will connect with a great for the main file format instead of wine before we are distributed in python idle to our latest tutorials. This way you can interpret python programs that you might want to reverse a step in terminals as an excellent idea. In python program or run the id and. This program from websites and terminal window that are welcome our programs. At this topic, we go ahead and find the zip file in the map concept. This run it runs on terminal and code. For mac users and terminal commands using ssh for working with the python interactive mode by entering the run python program from terminal by system that i made. Python programming language is run your python available on the results in terminals as and. Passionate about some of terminal looks like python programming task! Spyder and functions and schedule scripts in web development environment where you. Hopefully you from our programs are running untrusted python programming? These other python running the run your path you can open a script will end, and scp or directly download. Path of files recursively on windows background application makes use for? Create programs from. Food notifier example of your file, we can also effective bu the utilities folder you see the full path to install both locally and how can put it accepts two orders or terminal program from python? Debugging mode by running.
    [Show full text]
  • Php Editor Mac Freeware Download
    Php editor mac freeware download Davor's PHP Editor (DPHPEdit) is a free PHP IDE (Integrated Development Environment) which allows Project Creation and Management, Editing with. Notepad++ is a free and open source code editor for Windows. It comes with syntax highlighting for many languages including PHP, JavaScript, HTML, and BBEdit costs $, you can also download a free trial version. PHP editor for Mac OS X, Windows, macOS, and Linux features such as the PHP code builder, the PHP code assistant, and the PHP function list tool. Browse, upload, download, rename, and delete files and directories and much more. PHP Editor free download. Get the latest version now. PHP Editor. CodeLite is an open source, free, cross platform IDE specialized in C, C++, PHP and ) programming languages which runs best on all major Platforms (OSX, Windows and Linux). You can Download CodeLite for the following OSs. Aptana Studio (Windows, Linux, Mac OS X) (FREE) Built-in macro language; Plugins can be downloaded and installed from within jEdit using . EditPlus is a text editor, HTML editor, PHP editor and Java editor for Windows. Download For Mac For macOS or later Release notes - Other platforms Atom is a text editor that's modern, approachable, yet hackable to the core—a tool. Komodo Edit is a simple, polyglot editor that provides the basic functionality you need for programming. unit testing, collaboration, or integration with build systems, download Komodo IDE and start your day trial. (x86), Mac OS X. Download your free trial of Zend Studio - the leading PHP Editor for Zend Studio - Mac OS bit fdbbdea, Download.
    [Show full text]
  • BUG ET DEBUG DEBUG Des Scripts PHP Les Niveaux D’Erreur De PHP
    BUG ET DEBUG DEBUG des scripts PHP Les niveaux d’erreur de PHP Pour debug, il faut commencer par la configuration dans php.ini : display_errors = On error_reporting = E_ALL Ce dernier peut aussi être défini dans le code : error_reporting(E_ALL ^ E_NOTICE); Ou pour SPIP, dans mes_options.php : define('SPIP_ERREUR_REPORT',E_ALL ^ E_NOTICE); define('SPIP_ERREUR_REPORT_INCLUDE_PLUGINS', E_ALL ^ E_NOTICE); La méthode débrouille On ajoute du code de test pour voir quel chemin suit le script <?php echo « il est passe par ici » ?> die(‘ici’); Voir la valeur d’une variable ou d’une expression var_dump($ma_variable); Voir la pile d’appel debug_print_backtrace(); C’est intrusif et long On modifie le code « pour voir » On relance le script, et on recommence jusqu’à réussir à voir la bonne variable, ou le bon chemin et comprendre le problème Et on laisse des var_dump dans le code … Améliorer les affichages Des affichages plus riches avec XDEBUG XDEBUG S’installe comme une extension de php Compilée en .dll sous windows ou .so sous *nix (la compilation sous Mac OS nécessite l’installation de Xcode) http://devzone.zend.com/article/2803 Guide d’install pour MAMP+Mac OS http:// www.netbeans.org/kb/docs/php/configure-php- environment-mac-os.html#installEnableXdebug XDEBUG http://www.xdebug.org/ Librairie libre sous licence dérivée de PHP Librairie qui facilite le debug Amélioration des affichages de debug Debug interactif Profilage Couverture de code Un joli var_dump Configurable via php.ini : Longueur maxi des chaines affichées
    [Show full text]
  • Company Profile
    About Us GISFY PRIVATE LIMITED GISFY PRIVATE We are recognized as a start-up by the Phoenix Tech Towers Department of Industrial Promotion and Policy; and have worked with renowned Uppal, Hyderabad, Telangana organizations like Nanyang Technology LIMITED University, University of West Indies, +91-9971777963 Innovative Hydrology, and World Business Product/Service Information Council for Sustainable Development [email protected] (WBCSD), Belize Social Investment Fund, and various Government departments and bodies. www.gisfy.co.in COMPETENCY GISFY’s core competency lies in providing solutions across the entire software value chain TEAM & STRENGHTH – from data creation, conversion, and enhancement to software development, modeling, analytics, and consulting. The ability GISFY is founded by highly motivated individuals to offer complete solutions, comprising data, with successful techno-commercial experience software, and engineering under one roof, is a of around 20 years. key differentiator for the company. GISFY has Team of dedicated 25+ experienced developers working from Noida and Hyderabad office to deliver best in class software solutions for our national and international clients. We work across Insurance, Agriculture, OVERVIEW Sustainable Energy, Integrated Water Resource Management, Water and Sanitation, Natural Resources Management, and Disaster & Climate GISFY PRIVATE LIMITED is a consulting Risk Reduction sectors. organization incorporated in 2016. We are a Government of India recognized start-up. We work across the world and provide services and solutions in the following areas of work. Website Development Android and Apple Mobile App Development Geospatial mapping and Data Development Mobile Based Survey Solution GIS and ICT Platforms (web and mobile) Monitoring and Evaluation Internet of Things Documentation & Knowledge Management WEBSITE & WEBGIS GISFY is expert in developing custom and content management system (CMS) based EGOVERNANCE SOLUTION website using various open source and proprietary technologies for both windows and Unix platform.
    [Show full text]
  • CMS Matrix - Cmsmatrix.Org - the Content Management Comparison Tool
    CMS Matrix - cmsmatrix.org - The Content Management Comparison Tool http://www.cmsmatrix.org/matrix/cms-matrix Proud Member of The Compare Stuff Network Great Data, Ugly Sites CMS Matrix Hosting Matrix Discussion Links About Advertising FAQ USER: VISITOR Compare Search Return to Matrix Comparison <sitekit> CMS +CMS Content Management System eZ Publish eZ TikiWiki 1 Man CMS Mambo Drupal Joomla! Xaraya Bricolage Publish CMS/Groupware 4.6.1 6.10 1.5.10 1.1.5 1.10 1024 AJAX CMS 4.1.3 and 3.2 1Work 4.0.6 2F CMS Last Updated 12/16/2006 2/26/2009 1/11/2009 9/23/2009 8/20/2009 9/27/2009 1/31/2006 eZ Publish 2flex TikiWiki System Mambo Joomla! eZ Publish Xaraya Bricolage Drupal 6.10 CMS/Groupware 360 Web Manager Requirements 4.6.1 1.5.10 4.1.3 and 1.1.5 1.10 3.2 4Steps2Web 4.0.6 ABO.CMS Application Server Apache Apache CGI Other Other Apache Apache Absolut Engine CMS/news publishing 30EUR + system Open-Source Approximate Cost Free Free Free VAT per Free Free (Free) Academic Portal domain AccelSite CMS Database MySQL MySQL MySQL MySQL MySQL MySQL Postgres Accessify WCMS Open Open Open Open Open License Open Source Open Source AccuCMS Source Source Source Source Source Platform Platform Platform Platform Platform Platform Accura Site CMS Operating System *nix Only Independent Independent Independent Independent Independent Independent ACM Ariadne Content Manager Programming Language PHP PHP PHP PHP PHP PHP Perl acms Root Access Yes No No No No No Yes ActivePortail Shell Access Yes No No No No No Yes activeWeb contentserver Web Server Apache Apache
    [Show full text]
  • Python Guide Documentation 0.0.1
    Python Guide Documentation 0.0.1 Kenneth Reitz 2015 09 13 Contents 1 Getting Started 3 1.1 Picking an Interpreter..........................................3 1.2 Installing Python on Mac OS X.....................................5 1.3 Installing Python on Windows......................................6 1.4 Installing Python on Linux........................................7 2 Writing Great Code 9 2.1 Structuring Your Project.........................................9 2.2 Code Style................................................ 15 2.3 Reading Great Code........................................... 24 2.4 Documentation.............................................. 24 2.5 Testing Your Code............................................ 26 2.6 Common Gotchas............................................ 30 2.7 Choosing a License............................................ 33 3 Scenario Guide 35 3.1 Network Applications.......................................... 35 3.2 Web Applications............................................ 36 3.3 HTML Scraping............................................. 41 3.4 Command Line Applications....................................... 42 3.5 GUI Applications............................................. 43 3.6 Databases................................................. 45 3.7 Networking................................................ 45 3.8 Systems Administration......................................... 46 3.9 Continuous Integration.......................................... 49 3.10 Speed..................................................
    [Show full text]
  • Joomla! 1.5.X
    CREACIÓN Y ADMINISTRACIÓN DE PÁGINAS WEB ORIENTADAS A LA DOCENCIA BLOQUE: JOOMLA! 1.5.X Pedro Luis Luque Calvo Junio 2011 Vamos a ver: • Joomla! Un CMS JOOMLA! SISTEMA DE GESTIÓN DE CONTENIDOS CONTENT MANAGEMENT SYSTEM (CMS) Motivación • Web creadas con HTML • Sitios web pequeños Joomla! 1.5 ¿Qué es un CMS? • Sistema de Gestión de Contenidos (Content Management System). • Administrar contenido digital. • Trabaja contra Base de Datos (y no contra ficheros html estáticos). • Muchas posibilidades de uso: formularios de contacto, búsqueda, etc. • Gratuitos y de pago. CMS frente a Trabajo desde 0 A FAVOR: EN CONTRA: • Escalabilidad • No se tiene • Extensiones “control total” • Multiplataforma • “Recursos • Comunidad limitados” • • Estándares ¿Curva de aprendizaje? • Desarrollo rápido/fiable Comparativa CMS Referencia Url Cmsmatrix http://cmsmatrix.org Joomla! http://joomla.org/ http://www.joomlaspanish.org/ Drupal http://drupal.org/ Wordpress http://es.wordpress.org/ Mojoportal http://ww.mojoportal.com/ Plone http://plone.org Joomla! 1.5 Breve Historia de Joomla! Joomla, transcripción fonética al inglés de la palabra “jumla”, que significa “TODOS JUNTOS” • En 2000, la compañia australiana Miro desarrolló un CMS propietario llamado Mambo y, un año después, lo ofreció de manera gratuita bajo la licencia GNU (GPL). • Pero en 2005, una lucha por el copyright con Mambo hizo que dimitiera la mayoría de los miembros de Mambo Core Team. El resultado fue una nueva entidad llamada Open Source Matters y una bifurcación del código de Mambo, llamada Joomla. • Joomla, se lanzó oficialmente con su versión 1.0 el 16 de septiembre de 2005. • El 22 de enero de 2008 se anunció la primera revisión principal de Joomla: Joomla 1.5, que lo elevó a ser uno de los más usados en el mundo del CMS de código libre.
    [Show full text]
  • Copyrighted Material
    24_575872 bindex.qxd 5/27/05 6:28 PM Page 417 Index PHP, 53 • A • security, 41 abstract classes, 403–404 Security Sockets Layer (SSL), 41 abstraction, 387–388 application development accessing consistency in coding style, 376 methods, 395–396, 399–400 constants, 376 MySQL databases, 33–34 discussion lists, 378 MySQL from PHP scripts, 37 documentation, 378 properties, 395–396 PHP source code, 377 Account class (HTTP authentication application) planning, 19–22, 375 code, 66–68 readability of code, 376 comparePassword method, 69–70 resource planning, 21–22 constructor, 68–69 reusable code, 377 properties, 66 schedule, 21 selectAccount method, 69 separating page layout from function, 377 Account class (user login application) testing code incrementally, 376 comparePassword method, 112 application scripts constructor, 111 accessing MySQL, 37 Admin-OO.php createNewAccount method, 112–114 , 303–307 Admin.php getMessage method, 112 , 269–274 Auth-OO.php selectAccount method, 111 , 73–76 Catalog-oo.php accounts (MySQL) , 155–157 CompanyHome-OO.php creating, 35–36 , 294–300 CompanyHome.php modifying, 35 , 253–262 passwords, 35–36 error handling, 32–33 Login-OO.php permissions, 35 , 119–125, 293 login.php root, 35 , 92–100, 246–249 Orders-oo.php activating MySQL, 12–13 , 224–230 addCart method, 220 outside sources, 25–30 postMessage-OO.php AddField method, 327 , 361–363 postMessage.php addItem method, 214 , 339–342 postReply-OO.php addslashes function, 39COPYRIGHTED MATERIAL, 364–368 postReply.php Admin-OO.php script, 303–307 , 342–345 ProcessOrder.php
    [Show full text]
  • Dnn Free Video Gallery Module
    Dnn free video gallery module Adding a video gallery doesn't have to be difficult. Keep your content and marketing materials up to date with easy-to-use video modules for DNN. This video walks you through installing and using the Lightbox Gallery module for DotNetNuke. This module. What is the best free video module that lets me upload and encode the video for The DotNetNuke Gallery module (v RC available at. Cross Video Gallery is an enterprise- class DNN module that enables multi-user Professional DNN modules, free DNN modules - DNN 7 Video & Audio & Youtube & Sideshow module - Cross Video Gallery - Demo Links. Coding Staff DotNetNuke Video Gallery is a powerful dnn media module that allows you to extend your Check free flv converting software by Coding Staff. Does anyone of you knows a free video gallery module? I would like to setup a page with videos in it? Can I just do it using media module or. It is ultra photo gallery framework built on top of DotNetNuke(DNN) platform. Ultra DNN Media Gallery Module with Image, Video & Slider Out of the box, you can manage your albums & photos; plus feel free to build your. Video player and video gallery module for the DotNetNuke Content Management System. Uses AJAX lists to provide a dynamic experience. Iphone and ipad. THE MOST Powerful DOTNETNUKE Free Touch Gallery Module. Responsive Touch Gallery Dnn / Dotnetnuke Module Video Tutorial. Videos Lorem ipsum dolor sit amet, consectetur adipiscing elit Lightbox gallery (supports images+video+audio) · Example 1 - Images with title and description. Easy Slider is a simple slider module and it's very easy to operate.
    [Show full text]
  • Methodologies and Tools for OSS: Current State of the Practice
    Electronic Communications of the EASST Volume 33 (2010) Proceedings of the Fourth International Workshop on Foundations and Techniques for Open Source Software Certification (OpenCert 2010) Methodologies and Tools for OSS: Current State of the Practice Zulqarnain Hashmi, Siraj A. Shaikh and Naveed Ikram 11 pages Guest Editors: Luis S. Barbosa, Antonio Cerone, Siraj A. Shaikh Managing Editors: Tiziana Margaria, Julia Padberg, Gabriele Taentzer ECEASST Home Page: http://www.easst.org/eceasst/ ISSN 1863-2122 ECEASST Methodologies and Tools for OSS: Current State of the Practice Zulqarnain Hashmi1, Siraj A. Shaikh2 and Naveed Ikram1 1 [email protected], [email protected] Department of Software Engineering, Faculty of Basic and Applied Sciences, International Islamic University, Islamabad, Pakistan 2 [email protected] Department of Computing and the Digital Environment, Faculty of Engineering and Computing, Coventry University, Coventry, United Kingdom Abstract: Over the years, the Open Source Software (OSS) development has ma- tured and strengthened, building on some established methodologies and tools. An understanding of the current state of the practice, however, is still lacking. This pa- per presents the results of a survey of the OSS developer community with a view to gain insight of peer review, testing and release management practices, along with the current tool sets used for testing, debugging and, build and release management. Such an insight is important to appreciate the obstacles to overcome to introduce cer- tification and more rigour into the development process. It is hoped that the results of this survey will initiate a useful discussion and allow the community to identify further process improvement opportunities for producing better quality software.
    [Show full text]