SaaS platform that empowers developers and data providers to build dynamic 3D geospatial applications. Built integrations for popular 3D content creation tools - WebODM, Blender, and 3D Maxs - for easy workflows to upload to Cesium ion to generate 3D Tiles for use in CesiumJS and other 3D engines.
Self-driving car kit developed by George Hotz; focusing on data to solve difficult problems. Designed a mapping engine capable of loading 5,000,000+ miles of data. Structured toolset to generate 3D Tiles, render the data within a browser context, and provide metadata when interacting with the mapping frontend.
Provides a better way to search your content, give it business context, organize it, work on it with others – to make content-focused teamwork more effective. Analysed 2000GBs of data, creating a recommendation system for categorizing files and folders. Using HTML5 implemented a document preview engine capable of loading documents with hundreds of pages.
An analytics, strategy and technology development company focused on nonprofit, higher education, and social enterprise clients. Worked with clients like Teach For America and the Robinhood Foundation for SalesForce integrations.
An unmanned vehicle technology startup developing an aerial imaging and mapping service for commercial markets. Optimized daily operations by building a tool capable of doing data consolidation of 100+ gigabytes from the web platform with a custom live zip micro-service. Also built the mapping platform's aerial avoidance system and integrated video based capture, capable of recording 2+ hours of footage.
A HIPAA compliant data enablement platform for healthcare, empowering users to operationalize their most sensitive data. Worked on the Android API platform to ensure continuity and scalability. Created a CI system generating docker environments for easy automated staging and production testing.
Activities and Events
Founded West Chester University's' first hackathon. Registered over 300 students of which 150 attended. Within three months, raised $20,000 in sponsorship. Manage a team of five to help organize, market, and finance future hackathons.
Organize club events to help enhance understanding of Computer Science topics while opening opportunities for internships. Currently perusing two new initiatives to help enhance the schools atmosphere: HackWCU, a hackathon in the Philadelphia area where students are free to explore their interests. Innovate, a makerspace open to all students with over $10,000 of hardware.
Evaluate stocks to be purchased for the growth fund – worth over $20,000. Pitch stocks to be purchased for the fund; representing 50% growth since recommendation. Collaborating with current leadership to implement a more analytics-oriented approach for evaluating other funds and performance.
Volunteered to help a local non-profit with their website and technical needs. Migrated them to a different web platform and currently developing their website. Work with the non-profit for about three hours every week.
Organized the first high school hackathons in Pennsylvania. STEMHack's mission was to get high schoolers interested and involved in technology! Reached $10,000 in sponsorshop and 100 in atteendance in the first year.
A competitive team in the FIRST league winning up to the East Regional Competition. Developed utilities to assist in the usage or construction of the robot. Mentored other teams in programming and software design. Wrote the software to control the autonomous and drive portion of the robot.
Participated in the longest-standing hackathon against 242 competing teams, reaching the top 10. Engineered an assistive device for cross-space navigation and obstacle avoidance through SLAM with haptic feedback.
Devised path-keeping system for the visually-impaired elderly. Using ARCore compared the expected path against the actual path, providing feedback accordingly. Managed planning and infrastructure between hardware and software systems.
Developed a big data app capable of finding any person with minimal amount of information scraping through Facebook, Whitepages, and other websites. Ended up being awarded for the best in the category after the tool demonstrated it's flexibility to the judges.
The control award is given to the team who has the best coding implementation along with consistent performance. Our team won for our implementation of a Kalman filter, PID drive, and integration of sensors in the control of our robot.
Given a list of companies you must create an application to solve a problem that are current. Created an application to motivate underprivileged kids into working to get to college through the gamification of scholarships. Although the Team was proud of the product the app did not place.
Competed with over 500 students to invent an application in the 24 hour deadline. Created iOculist, an app to test eyesight acuity and ended up winning second place. The event would then inspire STEMHacks after recognizing the potential of these genres of events.
An invitation only competition for innovative science related projects. Developed a mind-controlled prosthetic arm. Won second place, received an award from the Navy, the Army, received an excellence in engineering award, and invited to Broadcom MASTERS.
Research & Articles
WebODM allows users to generate point clouds, 3D models, and terrain from aerial images. With this Cesium ion integration, users can also fuse the data they’ve collected with other geospatial datasets, such as Cesium World Terrain, all placed in an accurate global context.
Add-on that makes it easier to publish and stream 3D models on the web via Cesium ion. Using the official Khronos glTF Blender exporter to convert the model to glTF before uploading to ion for tiling.
The future of navigation will be centralized around HD maps. While plenty of companies exist to provide this type of data, all are limited by paywalls and strict Terms-of-Service. A new map viewer, called “comma maps,” visualizes recorded paths driven, lane markings, and world features. Discussing the benefits of comma's approach to mapping, and the release of open source tool such as entium.
From games to complex traffic control systems, collision detection plays an important role in today’s modern computers. Currently there are two algorithms – Quad-Tree and Spatial Hashing – that are often used and at times it is based on personal preference. Spatial Hashing is a “bucket” based system where an objects relative area is increased and then inserted into surrounded buckets to be queried against. Quad-Trees are a recursive data structure that divide into quadrants as an object capacity is hit and a bounding box is identified for the selection of a quadrants.
Tools and Frameworks
An Intelligent Walker
Ask your Alexa to take you to a room in the house, and Elderlyf will automatically detect which room you're currently in, mapping out a path from your current room to your target room. With vibration disks strategically located underneath the hand rests, Elderlyf gives you haptic feedback to let you know when objects are in your way and in which direction you should turn. With an intelligent turning system, Elderlyf gently helps with turning corners and avoiding obstacles.
With a Jetson Nano and RealSense Cameras, front view obstacles are detected and a map of the possible routes are generated. SLAM localization was also achieved using those technologies. By using two servo motors that could independently apply a gentle brake to the wheels to aid users when turning and avoiding obstacles. Piezoelectric vibrating disks were also used to provide haptic feedback in which direction to turn and when obstacles are close.
Path Guidance for the Elderly
Utilizes open source hardware and API's to make the world more accessible for blind elderly people. Android Studio controls extrapolated 3D features using monocular vision. In addition, Android Studio provides a variety of packages and bluetooth solutions to alert the user of possible dangers in their path of travel. Arduino Uno and ESP 32 are used to enhance the connectivity of bluetooth to pass data from the user to the interface. The Arduino connects to two DC motors with home-made counter weights to generate vibrations that prevent the user from walking into unexpected objects.
Pairing Student Parents with Student Sitters
Ramily is a mobile app built on the mission of enriching the lives of student parents through reducing childcare concerns. Currently, an unmet need exists at West Chester University (WCU) for student parents, increasing the challenges of the already intense college process. Traditional daycare centers can cost on average $972 a month for toddlers and do not allow parents to pick and choose days of use. Using local West Chester babysitters allows for flexibility in being able to utilize the service only when needed. The app will function specifically for the West Chester University community as participants will be required to enroll with a WCU ID number.
3D Tile Converter for Cesium
Smart form for VC Investment Curation
Categorize startups and compare them for venture capitalists' analysis purposes. Utilized information extraction and entity recognition to identify and deduct the key aspects of a startup. Built the training data by scraping scraped from Bloomberg articles with a Quora question. In the backend, implemented a deep neural network architecture composing of two LSTM units for word semantic embedding for the two documents linked to a series of dense layers terminated with a single unit softmax output for sentence similarity.
Eyes for the Visually Impaired
The app utilizes the front facing camera and a minimalistic UI to analyze a room, then providing feedback reguarding the surroundings. Furthermore, by enabling the user to use voice commands they can interact through a much easier mean and find out important information. Some features include being able to tell which side of the room and item of interest is on, and describing the general surroundings.
Map of Companies in Nuclear
A map featuring over 1000+ companies working in the nuclear industry and their associated information – location, website, and short description. Built on Mapbox’s infrastructure and Github Pages static hosting, provides a simplistic visualization of the spread of data and their according categorization. All data is downloaded on the fly and uses minimal system resources.
Former Students Seach Engine
YCDS Matcher runs on facebooks graph api, whitepages and pipl. Each of the sources contribute their own parts of the data and act as forms of validation. Its works by scraping through multiple different online sources and building a genealogy to then track down a person who you lack their information.
Friends Through Concerts
Vibez was the result of a challenge in Outsidelands Hacks, build a way to connect people who attend the concert. Our idea was to connect people with people of similar taste so they could attend but also bond with friends. The app is built using AngularJS but depends on ionic for components, it also uses a NodeJS server for data retrieval.
Simple and Available Web Proxy
FancyProx is an easy to deploy proxy utilizing Google App Engine as a host. FancyProx is a more optimized proxy in comparison to others because it caches websites as it goes allowing for quicker retrieval on a secondary visit. Furthermore, because it is on google app engine it allows for users to create their own personal proxy easily.
Share school To MyHomework
MyTransfer integrates Learning Systems, Schoology, Edmodo, and Blackboard, and the homework management system, MyHomework, together. MyTransfer reverse engineers the MyHomework system so that you do not need to worry about adding assignments anymore. Best of all it copies all relevant information like date, time, description and more!
Your School Schedule in a Convenient Place
Deployed to over 800 students. This tool allows a user to view the amount of time remaining in a class period and the schedule format that corresponds with the day. This was a difficult project to make because it requires native code injection to enable notifications.
An Eye Test More Convenient than the Doctor
A mobile application that tracks the distance between the user's eyes as he backs away from his phone. It uses Snellen's formulas and voice recognition to generate a highly accurate eye exam on your iOS or Android device. This test checks for visual acuity, color blindness, and astigmatism.
Updates schoology to be more user friendly and intuitive!
Enhances Schoology with Tons of Features: Circle icons opposed to squares, Hiding classes, Rearrange classes, A stagnate sidebar and top bar, Infinite Scrolling, Removal of School Themes, Rename Classes, Popup Scroll Lock, Boostogy Settings, Quiz Highlighter and Tools, and Many minor tweaks.
Advanced Collision Based Image Generation
Inspired by Wordle I attempted to make an Open Source version of API that would allow developers to easily generate word clouds. This was a fun project to make because it required an extensive math knowledge and pushed my technical ability to the next level implementing and learning algorithms to make my tool more efficient.
Spend Less Time Traveling and More Time Having Fun
Middle Meets is an Android application that relies on a Java RESTful server to provide it with its necessary map data. The application allows friends and acquaintances to easily meet at a center-point based off a list of locations. I enjoyed making this project because I saw a real need in the app market.
Planning Hackathons In One Place
STEMHacks Admin is an elegantly coded dashboard the centralizes my teams functions. I created STEMHacks as a basic automatic emailer for our sponsors but the project slowly snowballed into an entire dashboard with user, chat, broadcasting, support with many other tools. STEMHacks encompasses a lot of languages and frameworks increasing its complexity while increasing the team's productivity.
Score FTC Match and Analyse Match Data
FTC Scouter is a Material Design Android application focused in collecting match data and analyzing it. The data is serialized in JSON and then converted into a mySQL database where Tableau visualizes the data. This application was fun to build because it required support for a large squee of devices and required a lot of libraries to simulate the Material Design look.
Seamless Audio Syncing Over the Web
After getting irritated when trying to listen to a song with my friend I decided to make BeatSync. BeatSync allows the user to create a playlist using their favorite streaming service and have the audio seamlessly synced between multiple devices. I enjoyed making this project because I ended up having to write my own web protocol that would allow the music to sync with no auditory difference.
A Simple App To Tell Jokes
Comprised of a app engine host and an app, The Laugher, allows users to create and share jokes. This was a fun project to make not because of the sheer amount of funny jokes I saw, but the complexity of writing a bot that could scrape websites for jokes and classify them.
The Simplest Static Storage Available
EasyCache is a simplistic yet well documented caching library focused towards Android in making the retrieval and serialization of objects for short term storage simplistic. Using a combination of annotations and a strong class structure EasyCache makes it efficient to quickly retrieve and store objects for later.
Analyse Your Conversations through Natural Language Processing
Using Natural Language Processing and data management techniques FCE allows for a user to see the subjects brought up in a Facebook conversation and whether that conversation was a negative or positive experience. Using libraries such as D3 and NLTK the application makes it easy to display conversation metrics and information. I thoroughly enjoyed making this because it was something I hadn't experimented with before
Quick And Simple Way To Take Screenshots
Built ontop of BitBar, a simple dock framework, the tool allows for easy screenshots. The app utilizes AppleScript and shell to activate the machines screen capture tool and then redirects the image to where the user wants.
Advanced Dynamic Packaging System For On The Fly App Modification
Using maven and a custom installer android apps can on the fly load code. The maven plugin uses the Android compiler to convert Java applications into native Android applications and copies to code into the phone's directory. The phone then uses a dynamic loader to easily inject the code into the program.
Neurally Controlling A Prostetic Arm Through EEG's
Using the Emotive EPOC headset, a simple pattern recognition algorithm, and a Bluetooth interface a LEGO prosthetic arm can be controlled through thought. The headset takes in a raw EEG input then a program made in C using the emotive developer library correlates certain thought patterns to a calibrated action. The application then activates the Lego Mindstorms through a Bluetooth connection. Currently, the hand only has two groups of movable fingers and the thumb; however, in newer versions of the prosthetic more hydraulic arms could be added. The project was recognized by multiple fairs and has a broad range of applications.