{"id":164,"date":"2017-08-08T16:26:14","date_gmt":"2017-08-08T20:26:14","guid":{"rendered":"http:\/\/gnarly\/TSdC\/?page_id=164"},"modified":"2017-11-02T17:18:37","modified_gmt":"2017-11-02T21:18:37","slug":"webdevelopment","status":"publish","type":"page","link":"http:\/\/www.timspekkens.com\/index.php\/portfolios\/webdevelopment\/","title":{"rendered":"Web Development"},"content":{"rendered":"<h2>Portfolio of Web Development projects<\/h2>\n<p>The following is not a complete list of the projects that I have worked on. \u00a0Some projects are not included as they are too similar to other projects, too boring to mention, not contemporary enough, or I don&#8217;t have permission to discuss publicly.\u00a0 Projects which are no longer active will be linked to a snapshot at archive.org though beware that not all site functionality will be available from the snapshot.<\/p>\n<h3>Tim-Spekkens-dot-com<\/h3>\n<table width=\"100%\">\n<tbody>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\"><strong>Description:<\/strong><\/td>\n<td style=\"text-align: left;\" width=\"75%\">My personal website.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\"><strong>Role:<\/strong><\/td>\n<td style=\"text-align: left;\" width=\"75%\">Designer, Developer, Contributor: 2017-present<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\"><strong>Address:<\/strong><\/td>\n<td style=\"text-align: left;\" width=\"75%\"><a href=\"http:\/\/www.timspekkens.com\">www.timspekkens.com<\/a><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\"><strong>Requirements:<\/strong><\/td>\n<td style=\"text-align: left;\" width=\"75%\">Provide a platform to showcase my past work, share information, and distribute media.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\"><strong>Technologies:<\/strong><\/td>\n<td style=\"text-align: left;\" width=\"75%\">WordPress, PHP, HTML, CSS, MySQL<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\"><strong>Notes:<\/strong><\/td>\n<td style=\"text-align: left;\" width=\"75%\">What you see here is the latest incarnation of my personal website which I hope to make into a single site which satisfies all my needs.\u00a0 As of the last update to this page the site is still actively under development with new features and content getting deployed as it is ready. \u00a0I implemented the custom WordPress theme and a variety of shortcodes specifically\u00a0for this site.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" colspan=\"2\" width=\"100%\"><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>PMConnect!<\/h3>\n<table width=\"100%\">\n<tbody>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Description:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">Corporate client interaction portal.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Role:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">Designer, Developer: 2008-2017<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Address:<\/td>\n<td style=\"text-align: left;\" width=\"75%\"><a href=\"https:\/\/web.archive.org\/web\/20130604132002\/http:\/\/connect.pmc.ca\/\" target=\"_blank\" rel=\"noopener noreferrer\">connect.pmc.ca<\/a>\u00a0&#8211; Defunct<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Requirements:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">Provide a platform to interact with clients including integration of a ticket management system (support), online classroom (training), and human resources profiling (careers).<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Technologies:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">PHP, HTML, CSS, MySQL, jQuery, Java, Python, Flash, SMTP, ClamAV, Eventum, LDAP, and Citrix Presentation Server.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Notes:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">PMConnect! had been retooled at various points during its life in order to respond to the changing needs of PMC and its clients.\u00a0 While the PMConnect! portal was available on the public internet, a back-end integration would synchronize support ticket information between the portal and an internally-hosted Eventum-based ticket management system.\u00a0 The human resources profiling tool would allow users to create and maintain a credential and experience profile which PMC resources could search when looking for resources to fill positions.\u00a0 The training element of PMConnect! gave students access to an e-learning classroom through which they could access a variety of business tools via Citrix session for training purposes.\u00a0 PMC provided training for Oracle Primavera P6 Professional, Microsoft Project, and a variety of other tools through this system.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\" colspan=\"2\" width=\"100%\">\n<div class=\"TgalThumb\" style=\"float: left; height: 190px; width: 190px;\">\n <span class=\"TgalThumbHelper\"><\/span>\n <a onclick=\"showOverlay('http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMConnect-4.png', 'Human resources management system, client file management UI.', '')\" href=\"javascript:void(0);\">\n  <img style=\"max-width:100%; max-height: 100%;\" src=\"http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMConnect-4.png\" alt=\"Human resources management system, client file management UI.\" title=\"Human resources management system, client file management UI.\" \/>\n <\/a>\n<\/div>\n<div class=\"TgalThumb\" style=\"float: left; height: 190px; width: 190px;\">\n <span class=\"TgalThumbHelper\"><\/span>\n <a onclick=\"showOverlay('http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMConnect-2.png', 'Online training classroom window (background) and P6 session launched via Citrix (foreground).', '')\" href=\"javascript:void(0);\">\n  <img style=\"max-width:100%; max-height: 100%;\" src=\"http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMConnect-2.png\" alt=\"Online training classroom window (background) and P6 session launched via Citrix (foreground).\" title=\"Online training classroom window (background) and P6 session launched via Citrix (foreground).\" \/>\n <\/a>\n<\/div>\n<div class=\"TgalThumb\" style=\"float: left; height: 190px; width: 190px;\">\n <span class=\"TgalThumbHelper\"><\/span>\n <a onclick=\"showOverlay('http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMConnect-3.png', 'Online training Citrix preferences configuration UI in the portal.  Settings configured here are saved on a per-user basis and used when launching remote applications through the classroom.', '')\" href=\"javascript:void(0);\">\n  <img style=\"max-width:100%; max-height: 100%;\" src=\"http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMConnect-3.png\" alt=\"Online training Citrix preferences configuration UI in the portal.  Settings configured here are saved on a per-user basis and used when launching remote applications through the classroom.\" title=\"Online training Citrix preferences configuration UI in the portal.  Settings configured here are saved on a per-user basis and used when launching remote applications through the classroom.\" \/>\n <\/a>\n<\/div><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>PrivateerMTB<\/h3>\n<table width=\"100%\">\n<tbody>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Description:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">Online home for the Ottawa downhill mountain biking community.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Role:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">Co-Founder, Developer, Contributor: 2009-2014<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Address:<\/td>\n<td style=\"text-align: left;\" width=\"75%\"><a href=\"https:\/\/web.archive.org\/web\/20110930062729\/http:\/\/www.privateermtb.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">www.privateermtb.com<\/a> &#8211; Defunct<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Requirements:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">Unite the local riding community by providing the ability to share relevant news and content with each other.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Technologies:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">vBulletin, PHP, HTML, CSS, MySQL<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Notes:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">The website&#8217;s initial goal of uniting the community and helping to secure ongoing lift\u00a0access at Camp Fortune was a success.\u00a0 The website evolved over it&#8217;s run, responding to the community needs and testing out different features.\u00a0 When the majority of the community moved to Facebook and Pinkbike.com the administrative burden of maintaining an older\u00a0release of vBulletin made it easier to shutter the website rather than continue maintaining it.\u00a0 There is currently some talk about bringing the site back in a third incarnation in tandem with a revival of the Privateer Phat Moose Racing Team.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\" colspan=\"2\" width=\"100%\">\n<div class=\"TgalThumb\" style=\"float: left; height: 190px; width: 190px;\">\n <span class=\"TgalThumbHelper\"><\/span>\n <a onclick=\"showOverlay('http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMTB-1.png', 'Custom skinned homepage featuring recent news, posts, and blogs.', '')\" href=\"javascript:void(0);\">\n  <img style=\"max-width:100%; max-height: 100%;\" src=\"http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMTB-1.png\" alt=\"Custom skinned homepage featuring recent news, posts, and blogs.\" title=\"Custom skinned homepage featuring recent news, posts, and blogs.\" \/>\n <\/a>\n<\/div>\n<div class=\"TgalThumb\" style=\"float: left; height: 190px; width: 190px;\">\n <span class=\"TgalThumbHelper\"><\/span>\n <a onclick=\"showOverlay('http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMTB-5.png', 'Custom skinned news article view.', '')\" href=\"javascript:void(0);\">\n  <img style=\"max-width:100%; max-height: 100%;\" src=\"http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMTB-5.png\" alt=\"Custom skinned news article view.\" title=\"Custom skinned news article view.\" \/>\n <\/a>\n<\/div>\n<div class=\"TgalThumb\" style=\"float: left; height: 190px; width: 190px;\">\n <span class=\"TgalThumbHelper\"><\/span>\n <a onclick=\"showOverlay('http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMTB-3.png', 'Forum index with a custom skin.', '')\" href=\"javascript:void(0);\">\n  <img style=\"max-width:100%; max-height: 100%;\" src=\"http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMTB-3.png\" alt=\"Forum index with a custom skin.\" title=\"Forum index with a custom skin.\" \/>\n <\/a>\n<\/div>\n<div class=\"TgalThumb\" style=\"float: left; height: 190px; width: 190px;\">\n <span class=\"TgalThumbHelper\"><\/span>\n <a onclick=\"showOverlay('http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMTB-4.png', 'User blog section.', '')\" href=\"javascript:void(0);\">\n  <img style=\"max-width:100%; max-height: 100%;\" src=\"http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMTB-4.png\" alt=\"User blog section.\" title=\"User blog section.\" \/>\n <\/a>\n<\/div>\n<div class=\"TgalThumb\" style=\"float: left; height: 190px; width: 190px;\">\n <span class=\"TgalThumbHelper\"><\/span>\n <a onclick=\"showOverlay('http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMTB-2.png', 'Trail indexing and crowd-sourced status system built as a vBulletin module.', '')\" href=\"javascript:void(0);\">\n  <img style=\"max-width:100%; max-height: 100%;\" src=\"http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/PMTB-2.png\" alt=\"Trail indexing and crowd-sourced status system built as a vBulletin module.\" title=\"Trail indexing and crowd-sourced status system built as a vBulletin module.\" \/>\n <\/a>\n<\/div><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Vankleek Hill and District Nature Society<\/h3>\n<table width=\"100%\">\n<tbody>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Description:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">Information page and event calendar for a rural society.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Role:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">Developer, Host: 2010-2013<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Address:<\/td>\n<td style=\"text-align: left;\" width=\"75%\"><a href=\"https:\/\/web.archive.org\/web\/20110926232950\/http:\/\/www.vankleeknature.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">www.vankleeknature.org<\/a> &#8211; Defunct<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Requirements:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">A website which is easy to navigate, quick to render, and has a small footprint.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Technologies:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">PHP, HTML, CSS<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\" width=\"25%\">Notes:<\/td>\n<td style=\"text-align: left;\" width=\"75%\">While many websites demand innovative features, beautiful aesthetic appeal, and reactive design, the proposal for this website requested the opposite.\u00a0 With a user base made up largely of retirees in a rural setting fast page rendering (especially for users on dial-up connections and older computer hardware) involved using a minimalist approach and hand-coding everything in order to ensure each page load was under 20 KB.\u00a0 As the leadership of the society changed and rural high-speed internet became more common the society elected to move to a more contemporary design, retiring this web property.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\" colspan=\"2\" width=\"100%\">\n<div class=\"TgalThumb\" style=\"float: left; height: 190px; width: 190px;\">\n <span class=\"TgalThumbHelper\"><\/span>\n <a onclick=\"showOverlay('http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/VKHNS-1.png', 'Landing page, 16Kb total load including page, logo, CSS, and JS.', '')\" href=\"javascript:void(0);\">\n  <img style=\"max-width:100%; max-height: 100%;\" src=\"http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/VKHNS-1.png\" alt=\"Landing page, 16Kb total load including page, logo, CSS, and JS.\" title=\"Landing page, 16Kb total load including page, logo, CSS, and JS.\" \/>\n <\/a>\n<\/div>\n<div class=\"TgalThumb\" style=\"float: left; height: 190px; width: 190px;\">\n <span class=\"TgalThumbHelper\"><\/span>\n <a onclick=\"showOverlay('http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/VKHNS-2.png', 'Upcoming events page.  Past events are automatically hidden ensuring no stale data while only requiring administrators to add new events.', '')\" href=\"javascript:void(0);\">\n  <img style=\"max-width:100%; max-height: 100%;\" src=\"http:\/\/www.timspekkens.com\/wp-content\/uploads\/2017\/08\/VKHNS-2.png\" alt=\"Upcoming events page.  Past events are automatically hidden ensuring no stale data while only requiring administrators to add new events.\" title=\"Upcoming events page.  Past events are automatically hidden ensuring no stale data while only requiring administrators to add new events.\" \/>\n <\/a>\n<\/div><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Portfolio of Web Development projects The following is not a complete list of the projects that I have worked on. \u00a0Some projects are not included as they are too similar to other projects, too boring to mention, not contemporary enough, or I don&#8217;t have permission to discuss publicly.\u00a0 Projects which are no longer active will &hellip; <a href=\"http:\/\/www.timspekkens.com\/index.php\/portfolios\/webdevelopment\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Web Development&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"parent":75,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"_links":{"self":[{"href":"http:\/\/www.timspekkens.com\/index.php\/wp-json\/wp\/v2\/pages\/164"}],"collection":[{"href":"http:\/\/www.timspekkens.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/www.timspekkens.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/www.timspekkens.com\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.timspekkens.com\/index.php\/wp-json\/wp\/v2\/comments?post=164"}],"version-history":[{"count":38,"href":"http:\/\/www.timspekkens.com\/index.php\/wp-json\/wp\/v2\/pages\/164\/revisions"}],"predecessor-version":[{"id":439,"href":"http:\/\/www.timspekkens.com\/index.php\/wp-json\/wp\/v2\/pages\/164\/revisions\/439"}],"up":[{"embeddable":true,"href":"http:\/\/www.timspekkens.com\/index.php\/wp-json\/wp\/v2\/pages\/75"}],"wp:attachment":[{"href":"http:\/\/www.timspekkens.com\/index.php\/wp-json\/wp\/v2\/media?parent=164"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}