The best way to learn how to use the WebCore is by example. See the documentation for more information.

The requested URL is always shown first; if a page uses one or more WebCore templates, those are shown afterwards.

00 <?php
01 include_once ('webcore/init.php');
02  
03 /** @var THEMED_PAGE $page */
04 $page = $Page;
05  
06 $Page->title->subject = "Marco Von Ballmoos - Curriculum Vitae";
07 $Page->template_options->title = "C.V.";
08  
09 $Page->location->add_root_link ();
10 $Page->location->append ("Marco", "../");
11 $Page->location->append ("Curriculum Vitae", './');
12 $Page->location->append ("June 2016");
13  
14 $Page->theme->font_name_CSS_file_name = '{styles}/fonts/forum';
15 $Page->theme->font_size_CSS_file_name = '{styles}/core/medium';
16 $Page->theme->main_CSS_file_name = './styles/resume_2016_6.css';
17 $Page->start_display ();
18 ?>
19 <style type="text/css">
20   <?php
21
22   $first_year = 1985;
23   $last_year = date("Y");
24   $year_count = $last_year - $first_year;
25   $one_year_percent = 100 / $year_count;
26   $minimum_width=0;
27  
28   function get_left_margin($year)
29   {
30     global $first_year;
31     global $one_year_percent;
32     global $minimum_width;
33  
34     return ($year - $first_year - $minimum_width) * $one_year_percent;
35   }
36  
37   function get_right_margin($year)
38   {
39     global $last_year;
40     global $one_year_percent;
41  
42     return ($last_year - $year) * $one_year_percent;
43   }
44  
45   function get_width($years)
46   {
47     global $one_year_percent;
48     global $minimum_width;
49  
50     return ($years + $minimum_width) * $one_year_percent;
51   }
52  
53   for ($i = $first_year; $i <= $last_year; $i++)
54   {
55     $left_margin = get_left_margin($i);
56     $right_margin = get_right_margin($i);
57     $mid_right_margin = get_right_margin($i + 0.5);
58  
59     echo ".start_$i { margin-left: {$left_margin}% }\n";
60     echo ".end_$i { margin-right: {$right_margin}% }\n";
61     echo ".end_mid_$i { margin-right: {$mid_right_margin}% }\n";
62   }
63  
64   for ($i = 1; $i <= 40; $i++)
65   {
66     $width = get_width($i);
67     $mid_width = get_width($i + 0.5);
68  
69     echo ".years_$i { width: {$width}% }\n";
70     echo ".years_{$i}_5 { width: {$mid_width}% }\n";
71   }
72  
73   $current_year = date('Y');
74   ?>
75 </style>
76 <div class="main-box">
77   <div class="text-flow">
78     <section>
79       <h2>Contact</h2>
80       <div class="contact">
81         <div>
82           <h1>Marco Von Ballmoos</h1>
83           <h2>Software Architect &amp; Developer</h2>
84         </div>
85         <ul>
86           <li><a href="mailto:&#109;&#97;&#114;&#99;&#111;&#64;&#101;&#97;&#114;&#116;&#104;&#108;&#105;&#46;&#99;&#111;&#109;">&#109;&#97;&#114;&#99;&#111;&#64;&#101;&#97;&#114;&#116;&#104;&#108;&#105;&#46;&#99;&#111;&#109;</a></li>
87           <li><a href="https://earthli.com">https://earthli.com</a></li>
88         </ul>
89       </div>
90     </section>
91  
92     <section>
93       <h2>Profile</h2>
94       <div class="content">
95         <p>I have more than two decades of experience as a professional software developer, systems architect and technical project manager. I'm interested in high-quality solutions to tough problems. I co-founded Encodo Systems AG almost a dozen years ago.</p>
96         <p>My focus has always been on generalization and DRY using metadata and common libraries. I've written four frameworks over the years, in C#, C++, Delphi and PHP.</p>
97       </div>
98     </section>
99  
100     <section>
101       <h2>Skills</h2>
102       <div class="grid small-tiles">
103         <div>
104           <h3>Systems Architect</h3>
105           <p>Design back-end and front-systems. Integration with existing systems. Maintainable. Extendable. Understandable.</p>
106         </div>
107         <div>
108           <h3>Full Stack Developer</h3>
109           <p>Comfortable and experienced in writing high-performance, readable code in various languages and with various frameworks, libraries and technologies.</p>
110         </div>
111         <div>
112           <h3>Technical Project Manager</h3>
113           <p>Collect and create requirements. Manage issues and releases.</p>
114         </div>
115         <div>
116           <h3>Trainer & Educator</h3>
117           <p>Plan and execute trainings for small- to medium-sized teams. Write technical documentation and share knowledge via code reviews and frequent blogging.</p>
118         </div>
119       </div>
120     </section>
121  
122     <section>
123       <h2>Employment &amp; Education</h2>
124  
125       <div class="content grid small-tiles">
126         <div class="project">
127           <h3><a href="http://encodo.com">Encodo Systems AG</a></h3>
128           <h4>Winterthur, Switzerland</h4>
129           <h5 title="<?php echo $current_year - 2005; ?> years"><time datetime="2005-09">Sep 2005</time>&mdash;present</h5>
130           <ul class="details">
131             <li class="skills">Founding Partner, Technical Project Manager, Architect, Lead Developer, Support</li>
132           </ul>
133         </div>
134         <div class="project">
135           <h3><a href="http://opus.ch">Opus Software AG</a></h3>
136           <h4>Wetzikon, Switzerland</h4>
137           <h5 title="3 years"><time datetime="2002-10">Oct 2002</time>&mdash;<time datetime="2005-08">Aug 2005</time></h5>
138           <ul class="details">
139             <li class="skills">Architect, Lead Developer, Support</li>
140           </ul>
141         </div>
142         <div class="project">
143           <h3>Logicat, Inc.</h3>
144           <h4>New York, New York</h4>
145           <h5 title="8 years"><time datetime="1994-08">Aug 1994</time>&mdash;<time datetime="2002-08">Aug 2002</time></h5>
146           <ul class="details">
147             <li class="skills">Architect, Lead Developer</li>
148           </ul>
149         </div>
150         <div class="project">
151           <h3><a href="http://www.hamilton.edu">Hamilton College</a></h3>
152           <h4>Clinton, New York</h4>
153           <h5 title="4 years"><time datetime="1990-08">Aug 1990</time>&mdash;<time datetime="1994-05">May 1994</time></h5>
154           <ul class="details">
155             <li class="skills">Bachelor of Arts in Mathematics (minor in physics; undeclared major in computer science)</li>
156           </ul>
157         </div>
158       </div>
159     </section>
160  
161     <section>
162       <h2>Personal</h2>
163       <div>
164         <div class="content grid small-tiles">
165           <div>
166             <h3>Languages</h3>
167             <p>English, German: fluent (speaking, reading, writing)</p>
168           </div>
169           <div>
170             <h3>Interests</h3>
171             <p>Cycling, Hiking, Programming, Writing, Books, Movies</p>
172           </div>
173         </div>
174       </div>
175     </section>
176  
177     <section>
178       <h2>Project History</h2>
179       <div>
180         <h3><a href="http://encodo.com">Encodo Systems AG</a></h3>
181         <h4 title="<?php echo $current_year - 2005; ?> years">September 2005&mdash;present</h4>
182         <p>Our goal at Encodo is to build interesting and useful software. I've worked on many projects with a wide range
183           of technologies and target platforms. Our emphasis is on using the best, most appropriate tools for the job.</p>
184         <div class="grid small-tiles">
185           <div class="project">
186             <h4><a href="http://encodo.com/en/quino.php">Quino</a></h4>
187             <h5><time datetime="2007-09">Sep 2007</time>&mdash;present</h5>
188             <ul class="details">
189               <li class="skills">Technical PM, Architect, Lead Developer</li>
190               <li class="technologies">C#, Winforms, WPF, Web API, TypeScript, Less, React</li>
191               <li class="description">A metadata-centric framework to develop client and service applications. Includes an ORM, automated schema-migration, generated user interfaces and much more.</li>
192             </ul>
193           </div>
194           <div class="project">
195             <h4>Alps Handoff Training</h4>
196             <h5><time datetime="2015-10">Oct 2015</time></h5>
197             <ul class="details">
198               <li class="skills">Architect</li>
199               <li class="technologies">C#, Quino, Web API, TypeScript, Less, Knockout</li>
200               <li class="description">Created presentations and tutorials and presented a 5-day training to onboard a small team.</li>
201             </ul>
202           </div>
203           <div class="project">
204             <h4><a href="https://apps.apexclearing.com/alps">Alps</a></h4>
205             <h5><time datetime="2013-06">Jun 2013</time>&mdash;present</h5>
206             <ul class="details">
207               <li class="skills">Technical PM, Architect, Developer</li>
208               <li class="technologies">C#, Quino, Web API, TypeScript, Less, Knockout</li>
209               <li class="description">Services and web front-end for processing, overview and management of ACATS for <a href="http://apexclearing.com">Apex Clearing Corporation</a>.</li>
210             </ul>
211           </div>
212           <div class="project">
213             <h4><a href="https://qontis.ch">Qontis</a></h4>
214             <h5><time datetime="2013-03">Mar 2013</time>&mdash;<time datetime="2014-09">Sep 2014</time></h5>
215             <ul class="details">
216               <li class="skills">Architect, Developer</li>
217               <li class="technologies">C#, WCF, Meniga, JavaScript, Less, jQuery</li>
218               <li class="description">A personal finance manager with integration into various online banking systems.</li>
219             </ul>
220           </div>
221           <div class="project">
222             <h4>Crealogix MUX Training</h4>
223             <h5><time datetime="2014-08">Aug 2014</time></h5>
224             <ul class="details">
225               <li class="skills">Architect</li>
226               <li class="technologies">HTML 5, JavaScript, Less/Css</li>
227               <li class="description">Created a framework recommendation for a web-based project. Created presentations and tutorials and presented a 5-day training to onboard a small team.</li>
228             </ul>
229           </div>
230           <div class="project">
231             <h4>Roche HTML5 Training</h4>
232             <h5><time datetime="2013-11">Nov 2013</time></h5>
233             <ul class="details">
234               <li class="skills">Architect</li>
235               <li class="technologies">HTML 5, JavaScript, Less/Css</li>
236               <li class="description">Created presentations and tutorials and presented a 3-day, HTML5 introduction and training with a focus on architecture.</li>
237             </ul>
238           </div>
239           <div class="project">
240             <h4>Roche MUA</h4>
241             <h5><time datetime="2012-10">Oct 2012</time>&mdash;<time datetime="2013-06">Jun 2013</time></h5>
242             <ul class="details">
243               <li class="skills">Developer</li>
244               <li class="technologies">HTML 5, JavaScript, Less/Css</li>
245               <li class="description">A full-fledged port of a Silverlight user-assistance application to HTML for mobile devices.</li>
246             </ul>
247           </div>
248           <div class="project">
249             <h4><a href="http://peak6.com">Peak6 Launchpad</a></h4>
250             <h5><time datetime="2010-07">Jul 2010</time>&mdash;<time datetime="2012-09">Sep 2012</time></h5>
251             <ul class="details">
252               <li class="skills">Architect, Developer</li>
253               <li class="technologies">C#, Winforms, Quino</li>
254               <li class="description">A highly concurrent and high-performance query and display client for options traders.</li>
255             </ul>
256           </div>
257           <div class="project">
258             <h4>M9</h4>
259             <h5><time datetime="2013-03">Mar 2013</time>&mdash;<time datetime="2014-09">Sep 2014</time></h5>
260             <ul class="details">
261               <li class="skills">Architect, Developer</li>
262               <li class="technologies">C#, Winforms, Entity Framework</li>
263               <li class="description">A large-scale and high-volume contact bulk mail/campaign manager.</li>
264             </ul>
265           </div>
266           <div class="project">
267             <h4><a href="http://www.zag.zh.ch">eZag Admin</a></h4>
268             <h5><time datetime="2007-03">Mar 2007</time>&mdash;present</h5>
269             <ul class="details">
270               <li class="skills">Architect, Developer, Support</li>
271               <li class="technologies">C#, Winforms, Quino, ASP.Net, Exchange integration</li>
272               <li class="description">A product for managing a school, including basic data, curriculum and lesson planning software.</li>
273             </ul>
274           </div>
275           <div class="project">
276             <h4><a href="http://fides.ch">POC Raiffeisen</a></h4>
277             <h5><time datetime="2007-05">May 2007</time>&mdash;<time datetime="2007-08">Aug 2007</time></h5>
278             <ul class="details">
279               <li class="skills">Architect, Developer</li>
280               <li class="technologies">Java, Eclipse RCP</li>
281               <li class="description">A POC to wrap legacy software in a SOAP API with a Java client prototype.</li>
282             </ul>
283           </div>
284           <div class="project">
285             <h4><a href="http://fides.ch">Fides Client</a></h4>
286             <h5><time datetime="2006-06">Jun 2006</time>&mdash;<time datetime="2014-06">Jun 2014</time></h5>
287             <ul class="details">
288               <li class="skills">Architect, Developer, Support</li>
289               <li class="technologies">Delphi Pascal, VCL</li>
290               <li class="description">A client/server component to communicate in parallel and asynchronously via a custom, secure XML-based protocol.</li>
291             </ul>
292           </div>
293           <div class="project">
294             <h4><a href="http://fides.ch">Fides Reporting</a></h4>
295             <h5><time datetime="2006-06">Jun 2006</time>&mdash;<time datetime="2014-06">Jun 2014</time></h5>
296             <ul class="details">
297               <li class="skills">Architect, Lead Developer, Support</li>
298               <li class="technologies">Delphi Pascal, VCL</li>
299               <li class="description">A reporting engine and full-fledged designer for fixed-width text, HTML and PDF reports.</li>
300             </ul>
301           </div>
302           <div class="project">
303             <h4><a href="http://www.zag.zh.ch">ZAG Entlastungkontrolle</a></h4>
304             <h5><time datetime="2005-10">Oct 2005</time>&mdash;<time datetime="2014-10">Oct 2014</time></h5>
305             <ul class="details">
306               <li class="skills">Architect, Developer, Support</li>
307               <li class="technologies">Java, Tapestry</li>
308               <li class="description">A product for teachers and administrators to manage compensated and continuing eductation time.</li>
309             </ul>
310           </div>
311           <div class="project">
312             <h4><a href="http://www.zag.zh.ch">Q-ZAG</a></h4>
313             <h5><time datetime="2005-12">Dec 2005</time>&mdash;<time datetime="2014-10">Oct 2014</time></h5>
314             <ul class="details">
315               <li class="skills">Architect, Developer, Support</li>
316               <li class="technologies">Java, Tapestry</li>
317               <li class="description">A document management system for organizing materials related to the Quintessenz system.</li>
318             </ul>
319           </div>
320         </div>
321       </div>
322     </section>
323  
324     <section>
325       <div>
326         <table class="basic left-labels legend">
327           <tr>
328             <th>Architect</th>
329             <td class="architect"></td>
330           </tr>
331           <tr>
332             <th>Lead</th>
333             <td class="lead-developer"></td>
334           </tr>
335           <tr>
336             <th>Developer</th>
337             <td class="developer"></td>
338           </tr>
339           <tr>
340             <th>Technical PM</th>
341             <td class="project-manager"></td>
342           </tr>
343           <tr>
344             <th>Support</th>
345             <td class="support"></td>
346           </tr>
347         </table>
348       </div>
349       <div>
350         <div class="timeline">
351           <div class="encodo">
352             <div class="content">
353               <div class="years">
354                 <div>1985</div>
355                 <div>1990</div>
356                 <div>1995</div>
357                 <div>2000</div>
358                 <div>2005</div>
359                 <div>2010</div>
360                 <div>2015</div>
361               </div>
362               <div class="projects">
363                 <div class="start_2005 end_present years_<?php echo $current_year - 2005; ?> employee"></div>
364                 <div class="start_2007 end_present project-manager architect lead-developer">Quino</div>
365                 <div class="start_2013 end_present project-manager architect developer">Alps</div>
366                 <div class="start_2013 end_2014 architect developer">Qontis</div>
367                 <div class="start_2012 end_2013 developer">Roche UA</div>
368                 <div class="start_2010 end_2012 project-manager architect lead-developer">Peak6 Launchpad</div>
369                 <div class="start_2009 end_2010 project-manager architect developer">M9</div>
370                 <div class="single-line">
371                   <div class="start_2007 end_2009 developer">eZagAdmin</div>
372                   <div class="start_2009 end_present developer support">eZagAdmin</div>
373                 </div>
374                 <div class="start_2007 end_2008 developer">PoC Raiffeisen</div>
375                 <div class="single-line">
376                   <div class="start_2006 end_2007 architect lead-developer">Fides Reporting Engine</div>
377                   <div class="start_2007 end_2011 lead-developer support">Fides Reporting Engine</div>
378                 </div>
379                 <div class="single-line">
380                   <div class="start_2006 end_2007 lead-developer">Fides Client</div>
381                   <div class="start_2007 end_2014 developer support">Fides Client</div>
382                 </div>
383                 <div class="single-line">
384                   <div class="start_2005 end_2006 lead-developer">Q-ZAG</div>
385                   <div class="start_2006 end_2014 project-manager lead-developer support">Q-ZAG</div>
386                 </div>
387                 <div class="single-line">
388                   <div class="start_2005 end_2006 developer">Entlastungskontrolle</div>
389                   <div class="start_2006 end_2014 project-manager support">Entlastungskontrolle</div>
390                 </div>
391               </div>
392             </div>
393           </div>
394         </div>
395  
396         <div>
397           <h3>Opus Software GmbH</h3>
398           <h4 title="3 years">October 2002&mdash;August 2005</h4>
399           <p>I moved from New York City to Switzerland to work for Opus, where I went back to working with Object Pascal and Delphi.</p>
400           <div class="grid small-tiles">
401             <div class="project">
402               <h4>Atlas</h4>
403               <h5><time datetime="2002-10">Oct 2002</time>&mdash;<time datetime="2005-08">Aug 2005</time></h5>
404               <ul class="details">
405                 <li class="skills">Architect, Lead Developer</li>
406                 <li class="technologies">Delphi Pascal, VCL</li>
407                 <li class="description">A metadata-centric framework to develop client and service applications. Included an ORM, automated schema-migration, generated user interfaces and much more.</li>
408               </ul>
409             </div>
410             <div class="project">
411               <h4>SQL Server Data Driver</h4>
412               <h5><time datetime="2005-01">Jan 2005</time>&mdash;<time datetime="2005-08">Aug 2005</time></h5>
413               <ul class="details">
414                 <li class="skills">Lead Developer</li>
415                 <li class="technologies">Delphi Pascal, SQL Server 2000</li>
416                 <li class="description">A data driver for Atlas for SQL Server databases.</li>
417               </ul>
418             </div>
419             <div class="project">
420               <h4>Allbase Data Driver</h4>
421               <h5><time datetime="2004-06">Jun 2004</time>&mdash;<time datetime="2004-12">Dec 2004</time></h5>
422               <ul class="details">
423                 <li class="skills">Lead Developer</li>
424                 <li class="technologies">Delphi Pascal, HP Allbase</li>
425                 <li class="description">A data driver for Atlas for HP Allbase databases.</li>
426               </ul>
427             </div>
428             <div class="project">
429               <h4>Dialba 2000</h4>
430               <h5><time datetime="2003-06">Jun 2003</time>&mdash;<time datetime="2005-08">Aug 2005</time></h5>
431               <ul class="details">
432                 <li class="skills">Developer</li>
433                 <li class="technologies">Delphi Pascal, VCL, Btrieve/Powerflex</li>
434                 <li class="description">Support and enhancements for a feature-rich and powerful banking front-end written with Atlas.</li>
435               </ul>
436             </div>
437             <div class="project">
438               <h4>Atlas Startup</h4>
439               <h5><time datetime="2003-02">Feb 2003</time>&mdash;<time datetime="2003-06">Jun 2003</time></h5>
440               <ul class="details">
441                 <li class="skills">Lead Developer</li>
442                 <li class="technologies">Delphi Pascal</li>
443                 <li class="description">A flexible and declarative configuration and startup system for Atlas applications.</li>
444               </ul>
445             </div>
446             <div class="project">
447               <h4>Atlas Logging</h4>
448               <h5><time datetime="2003-04">Apr 2003</time>&mdash;<time datetime="2003-06">Jun 2003</time></h5>
449               <ul class="details">
450                 <li class="skills">Lead Developer</li>
451                 <li class="technologies">Delphi Pascal</li>
452                 <li class="description">Add configurable and semantic/information-rich logging for Atlas applications.</li>
453               </ul>
454             </div>
455             <div class="project">
456               <h4>earthli Projects 2.5</h4>
457               <h5><time datetime="2002-11">Nov 2002</time>&mdash;<time datetime="2003-01">Jan 2003</time></h5>
458               <ul class="details">
459                 <li class="skills">Lead Developer</li>
460                 <li class="technologies">PHP 4</li>
461                 <li class="description">Install and support earthli Projects as issue-tracker for Opus. Improve emails and subscriptions. Enrich job/issue data with multiple branch statuses.</li>
462               </ul>
463             </div>
464           </div>
465         </div>
466  
467         <div class="timeline">
468           <div class="opus">
469             <div class="content">
470               <div class="years">
471                 <div>1985</div>
472                 <div>1990</div>
473                 <div>1995</div>
474                 <div>2000</div>
475                 <div>2005</div>
476                 <div>2010</div>
477                 <div>2015</div>
478               </div>
479               <div class="projects">
480                 <div class="start_2002 end_2005 years_3 employee"></div>
481                 <div class="start_2005 end_mid_2005 developer">Sql Server Data Driver</div>
482                 <div class="start_2004 end_mid_2004 developer">Allbase Data Driver</div>
483                 <div class="start_2003 end_2005 developer">Dialba 2000</div>
484                 <div class="start_2003 end_mid_2003 developer">Atlas Startup</div>
485                 <div class="start_2003 end_mid_2003 developer">Atlas Logging</div>
486                 <div class="single-line">
487                   <div class="start_2002 end_2003 developer">Atlas</div>
488                   <div class="start_2003 end_2005 architect lead-developer">Atlas</div>
489                 </div>
490                 <div class="start_2002 end_mid_2002 developer">earthli Projects 2.5</div>
491               </div>
492             </div>
493           </div>
494         </div>
495  
496         <div>
497           <h3>Logicat, Inc.</h3>
498           <h4 title="8 years">August 1994&mdash;August 2002</h4>
499           <p>I moved from upstate New York to New York City to start my professional career at Logicat as a developer.</p>
500           <div class="grid small-tiles">
501             <div class="project">
502               <h4><a href="https://cemanager.micronapps.com">Logicat Course Administrator</a></h4>
503               <h5><time datetime="2002-05">May 2002</time>&mdash;<time datetime="2002-08">Aug 2002</time></h5>
504               <ul class="details">
505                 <li class="skills">Project Manager, Architect, Lead Developer</li>
506                 <li class="technologies">Visual Basic, ASP.Net, IIS 5, SQL Server 2000</li>
507                 <li class="description">Added multi-tenancy to CE Manager with features/permissions per customer and improved evaluation, reporting and views.</li>
508               </ul>
509             </div>
510             <div class="project">
511               <h4><a href="https://cemanager.micronapps.com">Logicat CE Manager</a></h4>
512               <h5><time datetime="2001-04">Apr 2001</time>&mdash;<time datetime="2002-04">Apr 2002</time></h5>
513               <ul class="details">
514                 <li class="skills">Project Manager, Architect, Lead Developer</li>
515                 <li class="technologies">Visual Basic, ASP.Net, IIS 5, SQL Server 2000</li>
516                 <li class="description">A web-based application with reports, reminders and statements for lawyers to track and manage continuing-education credits and licenses.</li>
517               </ul>
518             </div>
519             <div class="project">
520               <h4>Logicat Online Testing</h4>
521               <h5><time datetime="2001-02">Feb 2001</time>&mdash;<time datetime="2001-04">Apr 2001</time></h5>
522               <ul class="details">
523                 <li class="skills">Lead Developer</li>
524                 <li class="technologies">Visual C++ 6, IIS 5, SQL Server 2000, HTML/CSS/JS</li>
525                 <li class="description">An HTML-based testing platform for online learning solutions.</li>
526               </ul>
527             </div>
528             <div class="project">
529               <h4>One-on-One with the SAT 2</h4>
530               <h5><time datetime="1999-01">Jan 1999</time>&mdash;<time datetime="2001-02">Feb 2001</time></h5>
531               <ul class="details">
532                 <li class="skills">Project Manager, Architect, Lead Developer</li>
533                 <li class="technologies">Visual C++ 6, MFC, Win32, Metrowerks CodeWarrior 5, Macintosh Toolbox</li>
534                 <li class="description">Add full cross-platform support for Mac OS 9/Windows 95/98 for the Logicat Test Engine (including full renderer and file-format abstraction). Authors had significant scripting/formatting/layouting control.</li>
535               </ul>
536             </div>
537             <div class="project">
538               <h4>Logicat Test Engine</h4>
539               <h5><time datetime="1997-11">Nov 1997</time>&mdash;<time datetime="1998-12">Dec 1998</time></h5>
540               <ul class="details">
541                 <li class="skills">Project Manager, Architect, Lead Developer</li>
542                 <li class="technologies">Visual C++ 6, MFC, Win32</li>
543                 <li class="description">Extended ELF with sounds, images, videos, forms and event-based scripting to build a feature-rich and powerful testing framework. Initial content was for a BNL (Brookhaven National Labs) training manual.</li>
544               </ul>
545             </div>
546             <div class="project">
547               <h4>Logicat CPA Review Software Live Courses</h4>
548               <h5><time datetime="1997-05">May 1997</time>&mdash;<time datetime="1997-11">Nov 1997</time></h5>
549               <ul class="details">
550                 <li class="skills">Architect, Lead Developer</li>
551                 <li class="technologies">Visual C++ 5, MFC, Win32, Delphi 3, OLE/COM</li>
552                 <li class="description">Integrate study plan, calendar and PowerPoint presentations to support/enhance live instruction.</li>
553               </ul>
554             </div>
555             <div class="project">
556               <h4>Performance Transfer Utility</h4>
557               <h5><time datetime="1997-02">Feb 1997</time>&mdash;<time datetime="1997-04">Apr 1997</time></h5>
558               <ul class="details">
559                 <li class="skills">Lead Developer</li>
560                 <li class="technologies">Delphi 2.0, Wise 5.0, HTML/CSS</li>
561                 <li class="description">A hardware copy-protection utility for Logicat CPA Review with custom installer and detailed (100-page) manual.</li>
562               </ul>
563             </div>
564             <div class="project">
565               <h4>Logicat CPA Review</h4>
566               <h5><time datetime="1996-08">Aug 1996</time>&mdash;<time datetime="1997-01">Jan 1997</time></h5>
567               <ul class="details">
568                 <li class="skills">Architect, Lead Developer</li>
569                 <li class="technologies">Visual C++ 4.1/5, MFC, Win32, ELF</li>
570                 <li class="description">A rewrite of the popular PassMaster DOS program for Windows 95 using ELF.</li>
571               </ul>
572             </div>
573             <div class="project">
574               <h4>ELF (Extended Logicat Format)</h4>
575               <h5><time datetime="1996-02">Feb 1996</time>&mdash;<time datetime="1996-08">Aug 1996</time></h5>
576               <ul class="details">
577                 <li class="skills">Architect, Lead Developer</li>
578                 <li class="technologies">Borland Delphi 2, Microsoft Visual C++ 4.1</li>
579                 <li class="description">A content pipeline and rendering library that included a markup language, RTF parser and structured binary document format/database.</li>
580               </ul>
581             </div>
582             <div class="project">
583               <h4>PassMaster CPA Review Web Site</h4>
584               <h5><time datetime="1995-12">Dec 1995</time>&mdash;<time datetime="1996-01">Jan 1996</time></h5>
585               <ul class="details">
586                 <li class="skills">Lead Developer</li>
587                 <li class="technologies">JavaScript, HTML, Delphi</li>
588                 <li class="description">An online demonstration of some of the functionality of the DOS-based PassMaster CPA review software.</li>
589               </ul>
590             </div>
591             <div class="project">
592               <h4>One-on-One with the SAT Counselor Utility</h4>
593               <h5><time datetime="1995-09"><time datetime="1995-09">Sep 1995</time></time>&mdash;<time datetime="1995-11">Nov 1995</time></h5>
594               <ul class="details">
595                 <li class="skills">Lead Developer</li>
596                 <li class="technologies">Borland Object Pascal 7, Win32</li>
597                 <li class="description">A management and reporting utility for multi-user, networked school distributions of One-on-One with the SAT.</li>
598               </ul>
599             </div>
600             <div class="project">
601               <h4>One-on-One with the SAT</h4>
602               <h5><time datetime="1994-08">Aug 1994</time>&mdash;<time datetime="1995-09">Sep 1995</time></h5>
603               <ul class="details">
604                 <li class="skills">Developer</li>
605                 <li class="technologies">Borland Object Pascal 7, Win32</li>
606                 <li class="description">The official College Board SAT-preparation tool for Windows 3.1/95.</li>
607               </ul>
608             </div>
609           </div>
610         </div>
611  
612         <div class="timeline">
613           <div class="logicat">
614             <div class="content">
615               <div class="years">
616                 <div>1985</div>
617                 <div>1990</div>
618                 <div>1995</div>
619                 <div>2000</div>
620                 <div>2005</div>
621                 <div>2010</div>
622                 <div>2015</div>
623               </div>
624               <div class="projects">
625                 <div class="start_1994 end_mid_2002 years_8_5 employee"></div>
626                 <div class="start_2002 end_mid_2002 project-manager architect lead-developer">Course Administrator</div>
627                 <div class="start_2001 end_2002 project-manager architect lead-developer">Logicat CE Manager</div>
628                 <div class="start_2001 end_mid_2001 lead-developer">Online Testing</div>
629                 <div class="start_1999 end_2001 project-manager architect lead-developer">One-on-One with the SAT 2.0</div>
630                 <div class="start_1997 end_1998 project-manager architect lead-developer">Logicat Test Engine</div>
631                 <div class="start_1997 end_mid_1997 architect lead-developer">CPA Live Courses</div>
632                 <div class="start_1997 end_mid_1997 lead-developer">Performance Transfer</div>
633                 <div class="start_1996 end_1997 architect lead-developer">Logicat CPA Review</div>
634                 <div class="start_1996 end_mid_1996 architect lead-developer">ELF</div>
635                 <div class="start_1995 end_1996 lead-developer">PassMaster Web</div>
636                 <div class="start_1995 end_mid_1995 lead-developer">Counselor Utility</div>
637                 <div class="start_1994 end_1995 developer">One-on-One with the SAT</div>
638               </div>
639             </div>
640           </div>
641         </div>
642         <div>
643           <h3>Personal Projects</h3>
644           <h4 title="<?php echo $current_year - 1998; ?> years">January 1998&mdash;present</h4>
645           <p>I built and continue to maintain all of the software to run my web site. I've also started and participated in open-source projects over the years.</p>
646           <div class="grid small-tiles">
647             <div class="project">
648               <h4><a href="https://www.earthli.com/software/webcore/">earthli WebCore 3.x</a></h4>
649               <h5><time datetime="2002-04">Aug 2002</time>&mdash;present</h5>
650               <ul class="details">
651                 <li class="skills">Project Manager, Architect, Lead Developer</li>
652                 <li class="technologies">PHP 5, MySQL, HTML5, LESS/ CSS, JS</li>
653                 <li class="description">Continued maintenance (migrated to PHP5) as well as introducing features (newsfeeds/social optimization).</li>
654               </ul>
655             </div>
656             <div class="project">
657               <h4><a href="https://www.earthli.com/news/view_article.php?id=1428">TuneSync</a></h4>
658               <h5><time datetime="2004-12">Dec 2004</time>&mdash;<time datetime="2005-12">Dec 2005</time></h5>
659               <ul class="details">
660                 <li class="skills">Project Manager, Architect, Lead Developer</li>
661                 <li class="technologies">Delphi 7</li>
662                 <li class="description">An application for comparing and syncing iTunes libraries (ID3 tags, ratings, play counts, etc.).</li>
663               </ul>
664             </div>
665             <div class="project">
666               <h4><a href="https://www.phpdoc.org">PHPDocumentor</a></h4>
667               <h5><time datetime="2003-04">Apr 2003</time>&mdash;<time datetime="2010-12">Dec 2010</time></h5>
668               <ul class="details">
669                 <li class="skills">Developer</li>
670                 <li class="technologies">PHP 4/5</li>
671                 <li class="description">A documentation generator for PHP. Enhanced data and templates (HTML4/CSS valid) and fixed bugs.</li>
672               </ul>
673             </div>
674             <div class="project">
675               <h4><a href="https://www.earthli.com/software/webcore/">earthli WebCore 2</a></h4>
676               <h5><time datetime="2002-04">Apr 2002</time>&mdash;<time datetime="2002-08">Aug 2002</time></h5>
677               <ul class="details">
678                 <li class="skills">Architect, Lead Developer</li>
679                 <li class="technologies">PHP, MySQL 4</li>
680                 <li class="description">A refactoring of the framework to centralize common logic. Migration of all applications.</li>
681               </ul>
682             </div>
683             <div class="project">
684               <h4><a href="https://www.earthli.com/software/webcore/app_projects.php">earthli Projects</a></h4>
685               <h5><time datetime="2002-03">Mar 2002</time>&mdash;<time datetime="2002-07">Jul 2002</time></h5>
686               <ul class="details">
687                 <li class="skills">Lead Developer</li>
688                 <li class="technologies">PHP, MySQL, WebCore</li>
689                 <li class="description">An issue-tracker and version/release manager built with the earthli WebCore.</li>
690               </ul>
691             </div>
692             <div class="project">
693               <h4><a href="https://www.earthli.com/software/webcore/app_news.php">earthli News</a></h4>
694               <h5><time datetime="2002-01">Jan 2002</time>&mdash;<time datetime="2002-02">Feb 2002</time></h5>
695               <ul class="details">
696                 <li class="skills">Lead Developer</li>
697                 <li class="technologies">PHP, MySQL, WebCore</li>
698                 <li class="description">A blogging platform built with the earthli WebCore (replaced Forums).</li>
699               </ul>
700             </div>
701             <div class="project">
702               <h4><a href="https://www.earthli.com/software/webcore/app_recipes.php">earthli Recipes</a></h4>
703               <h5><time datetime="2002-01">Jan 2002</time>&mdash;<time datetime="2002-02">Feb 2002</time></h5>
704               <ul class="details">
705                 <li class="skills">Lead Developer</li>
706                 <li class="technologies">PHP, MySQL, WebCore</li>
707                 <li class="description">A recipe-management application built with the earthli WebCore.</li>
708               </ul>
709             </div>
710             <div class="project">
711               <h4><a href="https://earthli.com/software/webcore">earthli WebCore</a></h4>
712               <h5><time datetime="2001-10">Oct 2001</time>&mdash;<time datetime="2001-12">Dec 2001</time></h5>
713               <ul class="details">
714                 <li class="skills">Architect, Lead Developer</li>
715                 <li class="technologies">PHP, MySQL, HTML, CSS, JS</li>
716                 <li class="description">Built a web-application framework with themes, security, search, an ORM, an email publication engine and more. Rebuilt Albums with this framework.</li>
717               </ul>
718             </div>
719             <div class="project">
720               <h4>earthli Themes</h4>
721               <h5><time datetime="2001-06">Jun 2001</time>&mdash;<time datetime="2001-09">Sep 2001</time></h5>
722               <ul class="details">
723                 <li class="skills">Lead Developer</li>
724                 <li class="technologies">HTML, CSS</li>
725                 <li class="description">Rewrote web front-end with CSS to support multiple color schemes.</li>
726               </ul>
727             </div>
728             <div class="project">
729               <h4>earthli Forums</h4>
730               <h5><time datetime="2000-10">Oct 2000</time>&mdash;<time datetime="2000-12">Dec 2000</time></h5>
731               <ul class="details">
732                 <li class="skills">Architect, Lead Developer</li>
733                 <li class="technologies">PHP, MySQL, HTML, CSS, JS</li>
734                 <li class="description">Bulletin board with full-text search, nested commenting and ACL-based permissions.</li>
735               </ul>
736             </div>
737             <div class="project">
738               <h4><a href="https://www.earthli.com/software/webcore/app_albums.php">earthli Albums</a></h4>
739               <h5><time datetime="1999-10">Oct 1999</time>&mdash;<time datetime="2000-07">Jul 2000</time></h5>
740               <ul class="details">
741                 <li class="skills">Architect, Lead Developer</li>
742                 <li class="technologies">PHP, MySQL, HTML, CSS, JS</li>
743                 <li class="description">Albums with journal entries, photos, a calendar and support for multiple users.</li>
744               </ul>
745             </div>
746           </div>
747         </div>
748  
749         <div class="timeline">
750           <div class="personal">
751             <div class="content">
752               <div class="years">
753                 <div>1985</div>
754                 <div>1990</div>
755                 <div>1995</div>
756                 <div>2000</div>
757                 <div>2005</div>
758                 <div>2010</div>
759                 <div>2015</div>
760               </div>
761               <div class="projects">
762                 <div class="start_1998 end_present years_<?php echo $current_year - 1998; ?> employee"></div>
763                 <div class="start_2004 end_2005 project-manager architect lead-developer">TuneSync</div>
764                 <div class="start_2003 end_2010 developer">PHPDocumentor</div>
765                 <div class="start_2002 end_mid_2002 lead-developer">earthli Projects</div>
766                 <div class="start_2002 end_mid_2002 lead-developer">earthli News</div>
767                 <div class="start_2002 end_mid_2002 lead-developer">earthli Recipes</div>
768                 <div class="start_2001 end_present project-manager architect lead-developer">earthli WebCore</div>
769                 <div class="start_2001 end_mid_2001 lead-developer">earthli Themes</div>
770                 <div class="start_2000 end_mid_2000 architect lead-developer">earthli Forums</div>
771                 <div class="start_1999 end_2000 architect lead-developer">earthli Albums</div>
772               </div>
773             </div>
774           </div>
775         </div>
776       </div>
777     </section>
778  
779     <section>
780       <h2>Skills History</h2>
781       <div><h3>Techniques</h3></div>
782     </section>
783  
784     <section>
785       <div>
786         <table class="basic left-labels legend">
787           <tr>
788             <th>Expert</th>
789             <td class="level-expert"></td>
790           </tr>
791           <tr>
792             <th>Proficient</th>
793             <td class="level-proficient"></td>
794           </tr>
795           <tr>
796             <th>Competent</th>
797             <td class="level-competent"></td>
798           </tr>
799         </table>
800       </div>
801  
802       <div>
803         <div class="timeline">
804           <div class="years">
805             <div>1985</div>
806             <div>1990</div>
807             <div>1995</div>
808             <div>2000</div>
809             <div>2005</div>
810             <div>2010</div>
811             <div>2015</div>
812           </div>
813           <div class="projects">
814             <div class="start_2008 end_present level-expert">Functional Programming</div>
815             <div class="start_2005 end_present level-proficient">Project Management</div>
816             <div class="start_2002 end_present level-proficient">Technical Documentation</div>
817             <div class="start_2001 end_present level-expert">Technical Writing/Blogging</div>
818             <div class="start_1995 end_present level-expert">Architecture</div>
819             <div class="start_1992 end_present level-expert">OO Programming</div>
820             <div class="start_1984 end_1994 level-proficient">Procedural Programming</div>
821           </div>
822         </div>
823  
824         <h3>Languages</h3>
825         <div class="timeline">
826           <div class="years">
827             <div>1985</div>
828             <div>1990</div>
829             <div>1995</div>
830             <div>2000</div>
831             <div>2005</div>
832             <div>2010</div>
833             <div>2015</div>
834           </div>
835           <div class="projects">
836             <div class="start_2015 end_present level-competent">SASS</div>
837             <div class="start_2014 end_present level-competent">TypeScript</div>
838             <div class="start_2013 end_present level-expert">LESS</div>
839             <div class="start_2007 end_present level-expert">C#</div>
840             <div class="start_2005 end_2014 level-competent">Java</div>
841             <div class="start_2002 end_2014 level-expert">Delphi Pascal</div>
842             <div class="start_2002 end_present level-competent">Bash</div>
843             <div class="start_2000 end_2002 level-competent">VB</div>
844             <div class="start_1998 end_present level-expert">CSS</div>
845             <div class="start_1998 end_2002 level-proficient">C++</div>
846             <div class="start_1998 end_present level-expert">PHP</div>
847             <div class="start_1996 end_2003 level-competent">Eiffel</div>
848             <div class="start_1996 end_1997 level-competent">Delphi Pascal</div>
849             <div class="start_1995 end_present level-proficient">JavaScript</div>
850             <div class="start_1995 end_present level-expert">HTML</div>
851             <div class="start_1994 end_1996 level-expert">Object Pascal</div>
852             <div class="start_1992 end_1994 level-proficient">Pascal</div>
853             <div class="start_1990 end_1994 level-proficient">HyperTalk</div>
854             <div class="start_1984 end_1990 level-expert">Basic</div>
855           </div>
856         </div>
857  
858         <h3>Libraries &amp; Frameworks</h3>
859         <div class="timeline">
860           <div class="years">
861             <div>1985</div>
862             <div>1990</div>
863             <div>1995</div>
864             <div>2000</div>
865             <div>2005</div>
866             <div>2010</div>
867             <div>2015</div>
868           </div>
869           <div class="projects">
870             <div class="start_2014 end_present level-competent">Knockout</div>
871             <div class="start_2010 end_present level-competent">AntLR</div>
872             <div class="start_2008 end_present level-expert">ASP.NET</div>
873             <div class="start_2007 end_present level-expert">.NET</div>
874             <div class="start_2005 end_2014 level-proficient">Java Runtime</div>
875             <div class="start_2002 end_2014 level-expert">Delphi VCL</div>
876             <div class="start_2000 end_2002 level-competent">ASP.NET</div>
877             <div class="start_1999 end_2001 level-proficient">Metrowerks PowerPlant</div>
878             <div class="start_1999 end_2001 level-competent">MacOS Toolbox</div>
879             <div class="start_1998 end_present level-proficient">PHP Runtime</div>
880             <div class="start_1995 end_2002 level-competent">MFC</div>
881             <div class="start_1995 end_2002 level-proficient">STL</div>
882             <div class="start_1994 end_present level-proficient">Win32</div>
883             <div class="start_1992 end_1994 level-proficient">Think Pascal</div>
884             <div class="start_1990 end_1994 level-expert">HyperCard</div>
885           </div>
886         </div>
887  
888         <h3>Administration &amp; Tools</h3>
889         <div class="timeline">
890           <div class="years">
891             <div>1985</div>
892             <div>1990</div>
893             <div>1995</div>
894             <div>2000</div>
895             <div>2005</div>
896             <div>2010</div>
897             <div>2015</div>
898           </div>
899           <div class="projects">
900             <div class="start_2013 end_present level-competent">TeamCity</div>
901             <div class="start_2011 end_present level-competent">Mongo</div>
902             <div class="start_2011 end_2014 level-competent">Sqlite</div>
903             <div class="start_2010 end_2014 level-competent">Jenkins</div>
904             <div class="start_2010 end_present level-expert">Git</div>
905             <div class="start_2007 end_present level-proficient">PostgreSql</div>
906             <div class="start_2004 end_present level-proficient">Sql Server</div>
907             <div class="start_2004 end_present level-expert">Jira</div>
908             <div class="start_2002 end_2007 level-proficient">Sybase</div>
909             <div class="start_2002 end_present level-competent">Linux administration</div>
910             <div class="start_1999 end_present level-competent">MySql</div>
911             <div class="start_1997 end_2010 level-proficient">Perforce</div>
912             <div class="start_1995 end_present level-proficient">Windows administration</div>
913             <div class="start_1990 end_present level-proficient">Mac OS/OS X administration</div>
914           </div>
915         </div>
916       </div>
917     </section>
918   </div>
919 </div>
920 <?php
921 $Page->finish_display ();
922 ?>