Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tyler Sharp Code Challenge #181

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

Redact0r
Copy link

Thank you for reviewing this. It was a fun exercise.

I coded this in vanilla JS, about as ES6 as you can get (hope fetch() is okay for the AJAX call!). Sometimes it's fun to break out of the routine of frameworks. Also, it allows the small widget to load as fast as possible for a better user experience.

Speaking of, once I had the code mostly done, I imaged myself as a customer using the app, invented scenarios such as 3 friends riding, a guy who is touring and wants to see the whole city, etc and made sure that those customer characters could navigate the app well for their purchasing needs. Before I got into tech, I was an ops manager in hospitality for way too long and this is one of the carry overs.

I was hitting the four hour mark so stopped, but given more time I'd expand on the bug-fixes.

For handling the anytime problem, I made the app just fix it for the customer and set it to anytime. Sometime the best way to fix it is to not let them know there's a problem at all.

Because anytime tickets start at 10 rides, if it is above 10, it will default to anytime for customer convenience. Given more time, I would have made a pop up or something to alert the customer to that fact, but that will go down as a "nice to have" for the scope of this project.

The following was considered for a11y / 508 standards:

-Very limited use of divs
-Where selectables were presented, used "value" attributes that lined up with what would be intelligible to the user rather than the code; the code handled what needed to be done on without effecting the communication to the user - for instance, the "value" sections for each Weekend, Weekday Evening, and Holiday are all read as different, but the code quietly treats them as the same price while still giving the user intelligible options/information.
-Used aria-labels and roles where necessary, but tried to lean more into semantic HTML
-labels for all inputs
-alt tags on images

A final tuning would have been to add tab indexes for keyboard only users. I had the structure but did not have the time to test it all out.

Thank you for your consideration and I look forward to next steps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant