Infrastructure Hackathon - Sat Dec 14th 2019

DMS has a lot of specific needs when it comes to IT infrastructure and we’ve outgrown some of the systems that have helped us run the organization. This hackathon is a chance for us to make big improvements to the often overlooked parts of the organization, while having fun and eating junk food.

While this event will primarily be software focused, there will also be hardware (arduino, rpi, circuit design, etc) and plain old elbow grease stuff to do as well.

Event starts Saturday December 14th at 10am and runs until midnight (or later). We’ll spend the first hour or so figuring out what projects we can accomplish in a day and then break off into teams to get them done.

Food (likely pizza!) and a small selection of soda will be provided, feel free to bring your own source of caffeine or buy something in the galley.

Project ideas

  • Makermanager rewrite (to use newer CakePHP framework)
    I have some groundwork already laid for this.
  • Access control (badge) system
    Either improving the existing software/hardware or building/kit-bashing something new
  • Project storage system rewrite
  • Running ethernet cable and putting in drops
  • Reprogramming phones/phone-system
  • Calendar software improvements

These are just some examples off the top of my head, if you’ve got something in mind come on out and we’ll get it built.

You don’t need to be a software engineer with decades of experience to write software for DMS, some of the most useful things we have are simple PHP and Python scripts. I’ll also be around all day writing software and providing planning, deployment and design guidance to teams so we can keep things moving. The goal is blast through any roadblocks quickly by having everyone in the same place.

Please come out and help us make DMS run better than ever! If you’ve got any questions feel free to PM me or ask in this thread. If your idea requires hardware for a Proof of Concept, let me know ahead of time and I’ll see what I can do.


May I suggest including day/date in the body of the posting as well?


Good call, post updated!


I can help with our WordPress site updates and fix the “map”.


Got another good suggestion from @axeonos: Put the current time/date on the calendar tablets for classrooms.


If any of the hackagroups works on the Calendar, could I request the correction of the ongoing typo shown in the lower left corner of this screenshot??

Reading it is the brain equivalent of fingernails on a chalkboard. SKREEECHHH!


@AndrewLeCody, speaking of nails on chalkboard, can the hackathoners delete the line break hypertext? It’s preventing the bulb and warning emojis from appearing. I have to manually delete these whenever I create a ticket.


I won’t be able to attend but I’m interested in working on a badge system. Allen, Thomas, and I made one previously that might be a good starting place. It used an Atmega and C code to read Wiegand and a Raspberry Pi and Python code to query AD. It had caching so if AD was down the doors would still work. It was in use for years but I think it was removed a few months back (not sure why). It worked the whole time. I had a badge that wasn’t in AD that I would occasionally use to see if the system still worked.

1 Like

Could you link me to the source code and any schematics?

In typical maker fashion it never made it that far (to GitHub) and kind of died on the vine. I’m pretty sure Allen has physical control of the device at this point and thus should have the source code as well. I can reach out to him directly this weekend to figure out where things are. If that fails, I learned a lot the first time around. Maybe we can make a better successor with the lessons learned on the first. If I recall correctly it was a hundred lines of Python, give or take, which wasn’t overly complicated. I’m a C amateur so that code was beyond me. Allen did all of the Atmega code. I’m not sure what as involved on that side of things.

Edit for the schematic. I don’t recall there being custom boards involved. It was a couple of jumpers between the Arduino and Pi to gather the Wiegand data. The relay control came from a commercially available hat.

1 Like

Infra+machine shop made a badge system that needs to be polished a little in terms of documentation, testing, and making a web interface to access logs.

There are units in the machine shop if Freddy or Tim are interested in getting some additional development out the door

Also one idea I’ve been wanting to see is another kiosk to supplement the storage one. People use those tickets for tagouts, temporary notes, and other things.

I’d like to see a similar unit that can automatically open an issue here on talk with the info put into the unit, and the printout be taped to the machine

@hon1nbo is there an accessible repo for that stuff? I’ve got someone here who would like to work on the web interface part.

1 Like

Exists on the sdcards for the RFID boxes (needs to go on GitHub). The kiosk is on GitHub I think.

Talk to @malcolmputer and @yashsedai

How’d yesterday’s event go? Looking forward to hearing about all the cool stuff that got done yesterday.

1 Like

It went really well and I’d like to again thank all the members who came out and helped! Here are some of the things we accomplished:

  • Storage Kiosk
    • Uploaded the code to a github repo
    • Switched over to using a database instead of a flat text file to record storage tickets
    • Laid groundwork for e-mail notifications to members when their storage ticket is expiring
  • Calendar
    • Github repo and the code deployed to the server are now in-sync, and making deployment of new features easier.
    • Fixed the typo @jrkriehn mentioned
    • Added a “kiosk mode” for the calendar, which allows us to change up the presentation of the page when viewed by the calendar displays outside classrooms. This allowed us to add the clock as suggested by @axeonos
    • Fixed a security issue by updating dependencies to patched versions
    • Made it easier to run the app locally, this lowers the barrier to helping contribute code for developers
    • Laid groundwork for a QR-Code based system for opening exterior doors for non-members who are attending a class.
  • Access Control
    • Had an in-depth design discussion about the previous Proof-of-Concept system that was deployed
    • Worked on architecture for a new system, re-using some of the pieces from the PoC system

We also helped members with various minor issues throughout the day. I’m going to schedule another hackathon soon, but with a bit more lead time so more people can join.


This wasn’t during the hackathon, but the cleanup of the repo allowed me to quickly and easily fix a bug that @jast pointed out in discord today. The drop down menu of the calendar, when in a mobile browser, is now readable.


Great job by all involved! Thank you for your hard work!

1 Like

Thanks to all the white hat hackers!