Jay Digital

SW.035 ·2019 ·Education Resources Inc Paid Work

Client work

Education Resources Inc Digital Library

A login, quiz, and certificate fulfillment system built for government-oriented clients, and the job that taught me how databases actually work.

ERI Digital Library


Categories
Web & Product
Role
Web Designer, Developer
Software
Aptana Studio
Language
PHP, HTML, CSS

The story

Before I built the login and quizzing system for Education Resources Inc, I had never written a line of PHP. The client, Wayne at Resourceful Recordings, needed a quiz and certificate fulfillment system for several government-oriented clients. His budget ruled out the developers he was finding locally. He found me on Craigslist, I told him I could figure it out, and I did. The system went live and was used. That was the outcome. Everything below is how it happened.

The Situation

Wayne ran Resourceful Recordings and served a set of government-oriented clients who needed a way to deliver quizzes, manage user accounts, and issue certificates online. He had been trying to find a developer who could build that infrastructure at a price that made sense for what he could charge his clients. He found me on Craigslist. I was posting my services. We connected, talked through what was needed, and I took the job.

What Was in the Way

There were two separate problems sitting in front of this project, and only one of them was about Wayne.

Wayne’s immediate problem was cost. The developers he was finding in his area priced above what his margins allowed, so the work kept stalling. His resources were thinning and the need was real: clients who required a working quiz and certificate system were waiting on him to deliver. Without that system, he could not charge what the work was worth.

My problem was that I had never written server-side code. Up to that point, every site I had built was front-end only, HTML, CSS, and jQuery, focused on layout and information. I understood how a page looked and how it behaved in a browser. I did not understand how to talk to a database, how to store a user’s login session, how to record a quiz result, or how to trigger a certificate once a user passed. Those are not styling problems. They require a server to process requests, check conditions, and write to or read from a database. I had not needed that before, and I had not learned it.

There was also no blueprint. Wayne could describe what his clients wanted in plain terms, quiz, login, certificate, but there was no technical specification, no wireframe, no prior system to reverse engineer. The shape of the thing had to be figured out through conversation and then built from scratch in a language I was teaching myself in real time.

The cost of those two problems together was delay and uncertainty. Wayne needed something that worked. I had to learn enough PHP to make it work before either of us knew whether I could.

What I Did

I told Wayne plainly that I did not know how to do what he was describing, but that I could learn it and apply it to the job. He decided that was acceptable. I started learning PHP on my own, working through how server-side processing handles form submissions, how sessions track a logged-in user, and how a database stores and retrieves records.

I used Aptana Studio as my code editor and built the system with PHP, HTML, CSS, and jQuery. The core of the work was the database layer: user accounts that could log in, quiz questions that could be served and evaluated, results that could be stored, and a certificate that could be issued once a user met the passing condition. None of that exists in HTML alone. Every piece required the server to hold state and make decisions.

I asked questions throughout. When I hit something I did not understand, I found the answer before moving forward rather than guessing and breaking something downstream. That slowed individual moments but kept the build from accumulating structural debt it could not absorb.

The initial build took a few weeks. After delivery, I stayed on for months doing maintenance and adjustments as Wayne and his clients used the system and found what needed refining. I would have done some of the user experience differently with what I know now, the interface was functional but not considered, and there were features I did not have the knowledge to offer at the time.

What Happened

The system was delivered and used. Wayne’s government-oriented clients had a working login and quizzing system with certificate fulfillment, which was what they needed and what Wayne had been trying to find a way to provide. It was not perfect. Wayne and his clients found gaps between what the system did and what they had imagined it doing, and some of those were addressed during the months of follow-on maintenance. Others were not fully resolved.

Wayne’s clients used the product for a meaningful stretch of time. Whether it fully met every expectation is harder to say. What I can say is that before I took the job, the system did not exist and Wayne could not find an affordable path to building it. After, it existed and was in use.

What I Took From It

This was the job that opened backend development to me. Before it, I was building websites that displayed information and looked a certain way. After it, I understood that a database could hold state, that a server could process logic, and that almost any kind of interactive system I could describe was now something I could build toward. That shift in what I understood to be possible did not come from a course or a tutorial sequence. It came from a job with a real deadline and a client who needed something that worked.

What I would carry forward: ask more questions earlier about the user experience, not just the functional requirements. The system did what it needed to do, but the people using it deserved a more considered interface. I had the skills to build the logic. I did not yet have the habit of thinking through how someone would actually move through it.

01 Education Resources Inc Digital Library
I told him I didn't know how to do it, but that I could figure it out. He said that was acceptable, and I got to work.

/More images 1 from this project

/Behind the scenes

This was the one job that taught me how to do backend development. It completely changed how I build websites.

/Index

Year
2019
Category
Web & Product
Role
Web Designer, Developer
Deliverables
The login and quizzing system.
Software
Aptana Studio
Language
PHP, HTML, CSS
Framework
JQuery
Tags
Web Development, PHP, Quiz System, User Authentication, Certificate Fulfillment, Backend Development

/Get in touch

Start a conversation.

Tell me what you are working on. Replies come from johnathankmgeary@gmail.com.