An Algorithm Directed My Month. Here's What Happened

Tags:

While on sick leave after an accident, I realized after about two weeks in that I was not only bored out of my mind, but I was also dawdling my unscheduled time away to the point of not getting anything done. I also felt overwhelmed from my long list of to-dos. These are the same needs which I uncovered as a common occurrence across multiple demographics during UX Research for my Interaction Design capstone project at UCSD. -

So I went ahead and developed a web app to treat this need - DayQ. DayQ uses the same optimization algorithm that wire cutting machines use to minimize waste, but remixed by applying it to a person's prioritized, chunked, and recurring tasks.

I began training DayQ on how long I take on average to do each specific recurring task. It's as simple as entering the task title, its value and then hit the start button when I begin doing the task and then hit the stop button once I have completed the task. I then set a time limit and the important tasks I have time for turn green, adjusting automatically as time progresses. I put higher value numbers for more valuable tasks. The time limit refers to the beginning of an already blocked-off pre-scheduled time, such as the start of a drive to work, sleep, or a meeting. By September 2019, I had fully trained DayQ and began using it daily to direct recurring tasks.

Side note: I organized physical items, books, and paper files using a different web app I developed one weekend - TagSpot. TagSpot is a tool to virtually organize items in storage without physically organizing them by noting coordinates with searchable keyword tags to describe the item placed in that spot. I put measuring tapes along the X and Y axes edges of my storage area to form a coordinates system. TagSpot: Put it wherever, organize it virtually.

Week One: For week one I had a 82% overall success rate for tasks with 9 tasks at 100% success.

Week one took some adjusting. I realized a couple things about my current habits. Firstly, I normally burn away a ton of free time listening to podcasts and watching YouTube videos. Usually it's practical, education or historical content that interests me, but this takes up too much of my free time. Secondly, I can do multiple tasks in overlapping time, such as cooking while reading a book. This is not a major issue with the app but DayQ is not currently setup to calculate with multitasking. To increase the accuracy of DayQ's task time cost prediction, I simply used the start-stop feature to re-train DayQ whenever I conducted a task. There is room for another feature to improve DayQ further - a button to skip non-applicable tasks for that day. For example, I don't pay utility bills every single day - monthly rather, but DayQ assumes that I do. This is a feature I plan on adding soon.

Week Two: For week two I had an 83% overall success rate with 9 tasks at 100% success.

I tried doing the read ten pages book task before bed instead of when optimal unlike in week one, but to my surprise I found that I was repeatedly too sleepy to read before bed. If I read 10 pages every day, I will finish The Brothers Karamazov in 11 weeks or 77 days.

Week Three: For week three I had an 91% overall success rate with 14 tasks at 100% success.

Nearly all tasks were repeatedly accomplished with the exception of the task called read 10 pages book. This task is higher priority than several other tasks, but I chose to focus on the next tasks instead which is quite irrational since the task only takes 15 minutes. DayQ is not so restrictive meaning it allows some freedom in tasks picked.

Week Four: For week four I had an 80% overall success rate with 11 tasks at 100% success.

This week there was an unexpected emergency at work which caused my hours occupied by work to increase dramatically. This seems correlated to how I accomplished less tasks in week four.

Week Five: For week five I had an 87% overall success rate with 15 tasks at 100% success.

Calling week five a whole week is a misnomer since it is simply the last two days of the testing month which don't fall into any of the other weeks. Irrespective of this fact, it is still worthwhile data to capture.

Retrospective

Upon completion of a month of using DayQ to manage my recurring tasks, I had certainly measured an increase in productivity. Having to-dos chunked and knowing at-a-glance which tasks to start with has been an effective way to reduce the amount of time feeling overwhelmed.

The glaring opportunity for DayQ is to add a skip tasks feature to recalculate optimal tasks without including certain non-applicable tasks for that time window such as monthly bill pay. I plan on adding this feature in the near future.

I look forward to more people using DayQ to improve their days.

Crowdsourced Sherlock: The Case of The Laundry Loiterer

Tags:

In my apartment building, there is a silly but very annoying problem for the tenants. At least one particular tenant leaves their dried laundry in the shared dryers for hours after the machine has finished drying their clothes. There are only two pairs of washers and dryers. This is a source of irritation and inconvenience for most tenants who each have limited time windows to do their laundry. Even though this is a first-world problem, the mystery remained - which tenant is doing this inconsiderate act?

Naturally, there was a technological means to do detective work - Crowdsourcing data collection with ALOUD smart signs. ALOUD smart signs are simple printed menus with embedded NFC tags or QR codes. To report a loitering laundry event, a person can tap their phone to a menu option on the sign. This automatically opens a link to the ALOUD web page which displays a message thanking the user for their feedback. Then the Aloud website automatically logs the timestamp and menu option of that submission to a spreadsheet and sends an alert email on instant, weekly, or monthly intervals to the survey admin. In addition to tap-to-report using embedded NFC tags, QR code based smart signs can be generated as printable PDFs from within the ALOUD admin panel. To avoid faked data entry, identical users are limited to reporting an event only once every 24 hours.

Of course, a sound recognition based device might be more expedient, but that could involve expensive development or hardware costs.

Users are much more likely to leave feedback when the survey taking is instant in a single tap to an option at the immediate point of interaction.

These smart signs run completely off-the-grid and are extreme temperature and water resistant.

There are many additional use cases for ALOUD smart signs. For example:

So how was the mystery to be solved? The hypothesis was that for several months, tenants would report the offender using the smart sign. To deduce who the culprit was, a table would be made to compare the timestamps of reporting to security camera footage that shows which tenant's cars were parked in their designated spots in the parking lot at that time. By using the table for process-of-elimination noting which tenant was present at the most reported times, the exact tenant could be determined to a high likelihood. The offender could then be address by management. Shown below is fictional data to illustrate my hypothesis.

August 2019: It's been a month now and so far zero tenants have used the smart sign to report abandoned laundry loads. This is not overly surprising, but it shows room for growth. It may be be the case that the risk of being reported warded off the culprit who noticed the sign or that one tenant who moved out in early September was the culprit.

September 2019: First reporting occurred on the 29th. Upon checking the parking lot cam at the same timestamp of the reporting, All tenant's cars are present except for #4. However, in a cursory glance children's clothing was spotted sitting dry and abandoned in both washers. The only tenant with children is apartment #4. It turns out #4's car is parked in a neighboring lot. Clever!

Additional use cases were discovered for using the system as an alternative to expensive and high-maintenance IoT smart sensors by using crowd-sourcing. For example; On-demand garbage pickup where citizens report levels in dumpsters using ALOUD smart signs and service can be adaptive based on demand instead of a fixed pickup schedule.

I Tried Automating My Job. Here's What Happened

Tags:

After performing the same repetitive tasks at my job as School District Technology Coordinator hundreds of times, I decided to try automating these roles in order to free up my time for IT work that required human discernment, online research abilities, and communication. Automated systems can do repetitive and tedious tasks with far less errors and more rapidly than a human.

Full disclosure, I did not use any fancy AI to automate. Simple scripts and chatbots were more than adequate to eat up a portion of my labor.

I focused this automation on two specific tasks - IT requests and daily student computer setup for test prep .

Streamlined Customer Support & Data Entry with Custom-Built Chatbot

Situation: My employer was switching to a new school information platform which lacked a way for staff to conveniently submit support requests, log inventory and keep track of task status. Often the support needed is answerable in one paragraph. Since IT staff are not omnipresent and do not have 99% uptime, this shows room for partial automation.

Action: I began developing a custom chat bot using PHP and Facebook messenger to act as a conversational interface between support staff and the rest of the staff who need help. This acts as a screener for FAQ, with video quick guides, handling all spreadsheet data entry for logging and inventory, and automating scheduling. I had no prior experience developing using PHP, which was required.

Results: The pilot program proved the practicality of the chat bot, however the challenge remained that most staff who used the chatbot did not adopt using the chatbot regularly and instead preferred two-way radio or email to request technical support.

Automated Keyboard - Chromebook Setup

Situation: Several tasks during my work as District Technology Coordinator were repetitive and error prone. For example, per each chromebook, setting up WiFi, logging the previous student out, and logging the next student in to their school account. This is a task better done by a machine than a human because it can be faster and less prone to typos.

Action: I Researched computer automators and discovered called a "USB Rubber Ducky" which automatically imitates human computer interface navigation when plugged into a computer. It was very expensive so improvised to use a DigiSpark Arduino board which cost 20 times cheaper. I wrote a custom script that runs on the board and optimized performance.

Results: My employer appreciated my increased productivity caused by freeing my work time from such specific menial tasks to be automated. The automated process ran 2x to 3x as fast as manual execution.

Summary

I found that the most basic automation lacking AI was capable to occupy a noticeable portion of my labor related to repetitive and human-error-prone tasks.. This freed up my time for more roles that are currently better suited for humans - Discernment, high dexterity physical labor, and interpersonal communication. Since I was paid for results not labor, this suited my particular job well.

P.S. - Later we developed a Windows app (DuckyTrainer) that makes the coding skills needed to program a USB Rubber Ducky obsolete. It can record keystrokes then translates into Arduino script, which can be flashed onto a DigiSpark Board to replay the same keystrokes. Unlike a Macro, no admin permissions are needed nor are any programs needed to replay on the destination computer

Weekend Project

Tags:

You may have seen the controversial viral video where an employee complains about being faulted for being late for work, claiming a condition called "time blindness". Let's suspend disbelief to perform a thought experiment...

"I keep embarrassing myself."

Why?

"Because I'm late for work."

Why?

"Because I have a weak sense of time and lose track easily."

Why?

"Because I haven't practiced estimating time enough."

Let's spot the disconnect in this process, challenge assumptions, and seek variables:

Why must you be late for work in order to practice being on time?

This question inspired the mini web app below. You can use the app to practice estimating time elapsed to develop a better sense of time. Also, a chime sounds every half hour. You can use this as a cue to take a brain break to ground yourself, get hydrated, do a few exercises, etc...

Does your underdeveloped sense of time keep making you late? Don't learn through embarrassment. Improve your sense of time virtually with TimelySim!