John
Repici


Career

< Career
    Terse Resume
  Skills
Contact
Forums
Personal
Misc.

























 












 

Résumé 
 


Twitter follow Button

  John Repici
("ra-PEECH-ee")

 
Objective: To code, design, architect, and manage your software development projects... Without blaming defects on the tools that were used, or not used; to work as the customer intended, possibly as he or she wished but did not ask, and sometimes beyond what was ever expected; Embracing technology when it can improve the solution being developed and not simply because it's new; Always troubled by bugs, however inevitable, and always seeking real improvements to products and process.
 

[Bracketed] links to references are restricted. Prospective employers please contact me for a password.

  • [Telegenix90] Designed, developed, and deployed one of the first easy-to-use electronic readerboard systems for the call center industry while working for a panel manufacturer in 1989. Though it was a DOS system, it was quite powerful for its time (just before Windows 3.1®).

  • [LSI92] Designed and developed credit card verification, point-of-sale, AS/400 hotel interface, and casino player tracking software and systems, during the early 1990s while working for a software firm.

  • [EMC94] While working for a high-tech manufacturing concern during the mid to late 1990s:
    • Designed and developed manufacturing software to connect low level equipment such as meters and automation to high level systems such as SQL databases
    • Designed and developed many interfaces to a low level record manager called BTrieve used in the company's MRP system (MRP is a precursor to ERP, it was used at the company for everything from shop floor routing and scheduling, to sales information and configuration).
    • Managed the company's Novel network.

  • [Telegenix97] Returned to the panel manufacturer in the late 1990s to manage their software development effort, and to redesign and implement a Windows® version of the original readerboard software.

  • Creativyst2000 Began working for myself in 2001, doing software design and consultation for local businesses.



Lead With Examples

  • Some Browser Based Applications
    These are toy programs that were needed for one reason or another. For obvious reasons, software I've developed under NDA's and exclusive license agreements will not be listed here. One client has given me permission to demo a system developed for them, which I will be happy to demonstrate for you if you are interested.

    • Perl Code Compressor (PCC) - PCC will remove most whitespace and comments from your perl code. This reduces its size for better server utilization. PCC also (optionally) renames subroutine and local variable names with short cryptic names, further reducing the size of your application.

    • Convert RSS Feeds to JSMsg Feeds - JSMsg is a JavaScript syndication file convention I wrote to display dynamic content using only client-side scripting (see documents below). This utility allows people who already offer an RSS feed to easily provide a JSMsg feed as well.

    • A Collection of JSMsg-ready Scrollers & Faders - This page holds a collection of content scrollers and faders that can be interfaced to JSMsg, a JavaScript syndication file convention. These scrollers will display dynamic content using only client-side scripting (see documents below).

    • Job Scheduling and Tracking - This demonstration is a fully functioning version, but with security turned off so you can try it out. It was developed for a local kitchen & bath concern under a non-exclusive license agreement.

    • Website Glossary system - The best glossary maintenance software available demonstrated on this neural network glossary at the Stand Out Publishing site.

    • JavaScript Compressor - lets you write well formatted and commented JavaScript code and then compress it down to a tiny chunk of data that doesn't waste bandwidth. This is a re-invented wheel. Early on, I ran a decent compressor that was written by another programmer. His written policy was that I was not allowed to give him, or anybody else credit for the code, and there was no way to contact him. Fine for exuberant youths I suppose, but for me it was like somebody dragging their finger-nails over a black-board. I eventually wrote this compressor from scratch.

    • News Entry Widget - lets you easily enter company or site news and announcements for publication on your own sites or on outside sites. It includes an XML feed in the popular RSS format so you can list your announcements on news aggregator sites such as NewsIsFree.com.

    • CSV to XML Converter - CSV is a legacy data transport convention which will be in use for some time into the future despite XML's popularity. Conversion facilities will help ease the transition.

    • CSV to JavaScript Converter - CSV (Comma Separated Values) are produced by many popular software packages. This applications quickly converts the data from a CSV file into a set of JavaScript arrays for use on your Internet and intranet web pages.

    • Quote Catcher - For displaying comments from a database of messages, such as famous quotes. This employs a JavaScript code that can be inserted into your pages along with a server-side script for mainaining the database of quotes. The server side script dynamically updates the JavaScript in the same way news-scrollers do, to dynamically update the quotes that display on web pages.



  • Platform Locked Applications
    [real soon now...] Applications and projects I've designed and developed for various platforms (like DOS, Windows, the Z-80, etc.). Many of these are just listed here as they were done for employers and are not open.


  • Web Pages
    All web pages are hand coded using D/HTML, Perl, JavaScript, etc. All code is designed and written by me except bulletin boards (there are too many good low-cost or free bulletin boards out there to merit developing "yet another" one). My code includes Contact Forms, Dynamic Web(tm) Page areas, Membership security and maintenance scripts, File Upload Areas for members, Votes, etc...

    • Stand Out Publishing I wrote a book. Not exactly an activity that's in my wheelhouse, but it was a horse, kicking to get out.

    • Creativyst, Inc. - The Corporate web page for my software business (always evolving).

    • JohnRepici.com - (This site). It employs old-school html and is far from being complete, but you may get some idea of aesthetic sensibilities from it. In a nutshell, if you're primarily interested in someone to make your website aesthetically dazzling, I'm, uhm, not your man. :-)




Patents

As of 12-October-2010, I'm officially a patent holder.





Articles & Documents

Here are some articles, conventions, and open specifications written for the freelance site: Creativyst Software, and for the blog at the Stand Out Publishing site (to support Netlab effort). There are also some other misc. things, such as articles written by others about my work.

  • Neural Network Stuff (To Support Netlab Loligo)
    These are the more recent things. They mostly take the form of blog entries at the Stand Out Publishing site's Loligo Blog.

    • Multitemporal Synapses and Our Perception of a Present Moment
      Multi-temporal synapse is a (now) patented method and device that has emerged from the Netlab™ effort. This blog entry explains the underlying theory of learning that has led to this development. Stated simply, the theory behind multitemporal synapses is that we maintain the blunt essence of past lessons in long-term connections. Everything else is re-learned in the moment.

    • Introducing: Influence Learning
      A blog entry describing one of two new learning algorithms introduced in the book. Both algorithms are in patent pending status at this writing.

    • The McGurk Effect
      The McGurk effect, presented in a video in this article, seems to show, convincingly, that what you see with your eyes can change what you here with your ears.

    • Simile, Metaphor, Analogy: Differences and Similarities
      Understanding of these concepts is becoming increasingly important to our understanding of thought, and of how the functions of the brain lead to the processes of the mind. They are also important to understand if you, like me, recognize a real need to improve your writing skills.

    • Synaesthesia: Not a mental anomaly, a mental characteristic
      We seem to be advancing rapidly on what can best be described (metaphorically), as the brain-function correlates of metaphor and analogy. Synaesthesia—mistaking sound for color, or perceiving numbers as having colors, etc.—may, in fact, be a characteristic of basic, inherent functions and structures, which are common in all brains. The determining factor may be only a question of degrees. This blog-entry is merely a book report on a video lecture given by Vilayanur Ramachandran about his research regarding this theory. Links to three videos containing the lecture are also included.

    • Red Sky In Morning - Temporality, Sequence, and Causality
      "...In a more present context, this effect (or something similar from a perceptual stand-point) may happen when we try to analyze one or more individual parts of a complex interacting collection of parts, in isolation. This tendency to analyze things from too small an aperture may happen more often than we'd like to admit..."

    • Actuators
      This article explores the subject of actuators at a fairly introductory level. In essence, this is written by a programmer, who is trying to learn some of the details about what the robotics folk are up to. It attempts to organize the available details into a more coherent understanding.

    • Memristors
      The marketeers are always working feverishly to persuade us of our absolute need for whatever “next-big-thing” they think they can convince us to buy. It turns out, however, that memristors don't really need the market-speak and the sokalisms from the persuasive-arts crowd. Memristors really are extremely useful, and will almost surely bring about some seriously cool changes in the technological world.

    • Time In Three Parts - A Practical Definition of Temporality
      Tech/Exploratory: This paper documents specific relationships between time, frequency, sequence, and temporality and uses that understanding of those relationships to propose an alternative, narrow definition for the terms "temporal" and "temporality".



      Netlab Loligo - New Approaches to Neural Network Simulation — Recently developed a new version of a neural network development environment called Netlab. This, in turn, has led to an entire book on the subject (much to my surprise). If you have an interest in neural networks, but you have become a bit disenchanted with books that try to hide a lack of "new ideas" behind a wall of "new computational complexity", you may find this book refreshing.

    Not sure? The excerpts pages contain some teaser-content from the book.



  • Programming Articles (mostly at Creativyst Software).
    Following are articles about programming issues. Most, but not all of them, are published at Creativyst.com. Most recent writing has been in support of Netlab Loligo (see above), but I still update quite a bit at this site as well.

    • The Return of the LOC Monster
      Lines-Of-Code: An ambiguous metric with the "look and feel" of numerical precision. This article explores it, and offers some suggestions of better metrics for counting the amount of program coded.

    • Platform Independent Computing
      A high-level and tactical-level paper about Platform Independent Web Applications. What they are, what they are not, the advantages and disadvantages they bring to your corporate processes.

    • Creativyst JSMsg Webpage Display Convention
      A JavaScript content sharing convention developed to respond to one major drawback to RSS (imo). RSS can't be used to display content in webpages with only server-side scripting.

    • Tables for Layout: The Only Option for Hardware-Independent and Re-Sizable Pages
      The truth will set you free. CSS for layout is clearly a BAD design practice at this time.

    • The Un-Methodology
      A short list of software design and development practices that should be considered before throwing out the bathwater.

    • Computer Science Versus Laurence Olivier
      The sub-title is: "Use a safety net when programming, but only if you can work safely without one" It is really just a random note entry. It pokes fun at the professional students whose primary concern seems to be about making programming something that's easier for them to fake (such optimists).

    • Hybrid Oriented Programming & Design
      Embrace design, not dogma. :-)

    • Agile Bridge Building
      Just poking a little fun at me and my peers, who can't seem to resist turning our vocation into our religion.

    • Understanding Comma Separated Values (CSV) File Format
      Originally done as research for some CSV parsing code. This article describes the subtle stumbling stones that, taken together, are the CSV file format as it is used in Excel and a whole bunch of other applications.

    • CTX - Creativyst Table eXchange Format
      The CSV analysis listed above led to the realization that there is a lot of room for an alternative data exchange format out there. On the one hand, CSV lacks functionality. On the other hand, XML gives you some structure-defining functionality, but at the cost of very high overhead. Here's the blurb for this article, which seeks to define an alternative:

      CTX is a more precisely defined and functional alternative to CSV, and a lower overhead alternative to many applications of XML. The CTX exchange format embodies the simplicity of CSV, while permitting, via optional secondary mechanisms, the exchange of data with complex structural hierarchy.

    • Use SoundEx to Search for terms that Sound-Alike
      This paper presents an in-depth review of the classic SoundEx algorithm for matching words and names based on phonetic similarities (source code included!). Check out the converter form at the bottom of the article.

    • Glossary XML
      This paper describes a proposed XML DTD for transporting dictionary or glossary information between applications. It is one of the export conventions used in my glossary software.

    • Software Stability Ratings
      This paper describes a proposed rating system for software stability that can change independently of the software's version/release number.

    • Reducing Dependence on Proprietary Systems
      The first article concerned with managing IT. This article discusses immediate tactical steps the dependent IT shop can begin taking to reduce their overall dependence on proprietary technologies such a Microsoft.

    • Convert Dell Service Tag to Express Service Code
      How To: - Includes pop-up converter form - This is useful for any programmer writing software that must track equipment purchased from Dell. Their serial numbers (called "Service Tag" numbers) are alpha-numeric and should be converted to a number called an Express Service Code when calling their automated support line. This article explains how that's done.

    • CUF™ (Main Information Page)
      This is the starting index to a set of documents that describe CUF(tm); a set of message formatting codes that are simple and easy for everyone to use. There is nothing new here. These are based on bracket-codes that have been used for a long time on the web. I was first introduced to them as UBB (Ultimate Bulletin Board) codes. I needed to produce a library of formatting functions that implement formatting for multiple projects, so these descriptions serve as the specification for that library.

      The text of the recommendation describes the standard concisely in it's gorry detail. For a more human treatment of the subject see the CUF Code Refference which is a listing and terse description of all the formatting codes in the standard. Lastly, the application's user help provides a brief explaination of how CUF™ codes are used to format messages.

    • Show XML in Your HTML
      This paper descibes how to use Microsoft Internet Explorer's data binding to display the contents of XML documents within your web-site's HTML pages. The upside is, it's very powerful, easy-to-use, and flexible. The downside is, it only works in MS I.E.

    • Menu Flowers
      A simple—and very early— page exploring creative and interesting ways to practice some tedious table design techniques.



  • Articles About My Work
    I'm not sure if a resume is the best place for this, but a place to collect references to mentions of my stuff in the press was needed. So, here it shall go. :-)





Continuous Improvement

Some recent courses in a life-long process.
  • Dale Carnegie Course A course in public speaking. Including knowledge of personal and professional relationship management. I highly recommend this course, especially for those with a technical background who may need to improve their inter-personal skills. Dale Carnegie
  • Introductory Visual Basic Programming I probably should have taken a more advanced course going into this. It may be good for those with little or no experience. CorporateU
  • Connecting To The World Wide Web A very good course for developers using TCP/IP over dial-up or ethernet. Recommended. Data-Tech Institute
  • Windows On Netware Recommended only if you are personally responsible for supporting Windows users over a Novell Netware server.
  • Software and the Agile Manufacturer Given by Brian Maskell (a well known author on manufacturing). I highly recommend this course for any developer doing work for world class manufacturing concerns. The basic tenet: "If it aint broke, break it!" Sounds cliché but it's actually just what the best programmers have been doing to make their wares better for years. Brian Maskell Associates, Inc.
  • C++Builder Foundations These courses were very difficult to find at the time. It's a good introduction to the Borland way of doing things (much more "high-level" than MFC). Borland
  • Programmable Logic Design With VHDL Great introductory course to a wonderful language used to produce concise, text based descriptions of digital circuitry. Cypress Semiconductors
  • Understanding TCP/IP A good introductory course to this ubiquitous protocol. Given by a great instructor (Dr. Sidnie Feit). Data-Tech Institute
  • How To Design Attention-Grabbing Brochures, Catalogs, Ads, Newsletters, and Reports A great course given by a great instructor (no problem going off the prepared script when needed). The bang-for-the-buck was great on this course. SkillPath Seminars
  • Educational Objectives: Future courseware is likely to include: More Dale Carnegie!; Work in "Safe Software" development and current best practices; Work in business and management practices; Related work in business quality practices such as ISO9000; Work in the latest software standards that look likely to become mainstream such as UML, XML, IPv6, WAP, etc.



Memberships & Associations


Association for Computing Machinery
 
International Webmasters Association    


 







 



























© Copyright 2000-2012 D. John Repici, and Creativyst, Inc.