Big thanks to WeWork for hosting.
Food and drinks are sponsored by the pseudo-anonymous Jay Kay! Thanks Jay Kay!
Want to be an official sponsor? Check out https://dc.hackandtell.org/sponsor.html
Notes copied directly from the hackpad!
66 Tolls: Alexa skill that provides current tolls for I-66 inside the beltway, as well as travel speeds on I-66 and US 50, utilizing open data from VDOT.
66 Tolls change dynamically but they can be as high as $40! VDOT makes open data available with their Smarter Roads dataset (28 datasets available). Yearly statistics (construction) to secondly (signal phase and timing data). Tolling and trip pricing. Data formats include XML, XLS, JSON, Shapefile, etc.
Alexa Device -> I-66 Tolls Skill -> Lambda -> Gets SmarterRoads data -> DynamoDB
Store most common inbound / outbound entrance and exit in the database
“What’s the outbound toll from Washington to I-495?” $6.00
“What’s the current Inbound toll Route 7 to Washington?” $0.00
“What’s the travel speeds?”
“Save my outbound route”
Lots of tutorials with easy things, very few on more intermediate
Test voice interface with
It would be nice to expand to I-495 and I-95 toll lanes, but they use TransUrban and no public API
Maybe port to Google Assistant?
Tool for discovering multi-word homophones, i.e. what combinations of words can be recombined into different words based on sound alone?
Homophones are words that sound the same but have different meanings
Some of these aren’t words.
Used a Carnegie-Mellon dictionary which contains a lot of sounds that aren’t words. An IPA dictionary would be better as it defines symbols
Likes to find clever domain names; hence “doe mane”
Discovery tool looks for homophones via brute force. But it generates a LOT of homophones, so how to filter to just find ones that are clever?
Using the stress sounds will make homophones sound much more like the homophones
How difficult would it be to extend this to homophone Markov chains?
Haven’t found any fun domain names yet; this is stage one!
Generated 36 GB of homophones, so need to come up with some better heurististics
Ttygif is used to make GIFs of the terminals
User interface was built in Brick for Haskell (all built in Haskell)
Shannon Turner https://twitter.com/svthmc
Need to create unit tests to make sure the code is working. Works well on the backend, if the tests fail, great, now we know what to fix. HOWEVER, when writing a test in python, we only test the python [SAD FACE]. Used Selenium to test the full integration, 30 tests. Comes in many flavors, but there is a python version. GIves me (as the dev) peace of mind.
Using Selenium actually encouraged changing the underlying HTML and CSS to find the selectors better. Right now, there aren’t any good tests for mobile – this is a good thing to add in the future!
Dots and Fs (Success and fail)
Tests all written in Python
Download image functionality breaks all the tests.
Selenium can run headless
Grant Harper https://twitter.com/grant_emersn
Cooking assistant that uses websockets to synchronize multiple possible inputs (screen button, Alexa) to guide users through a recipe.
The problem grant always ran into – in a very interactive scenario, you keep wanting to interrupt it or change what it’s doing
Having a screen in addition to the guidance – both are useful when putting together your recipe.
Get a preview of your recipe -> Click “Let’s Cook” to see the full thing
Integrates perfectly with Alexa to narrate the ingredients, and the website allows you to see the steps.
Building the library of recipes takes a long time and is very difficult to get a standardized format that makes those interactions really nice! (Inline ingredients, streamlined
Built a websocket broker; Alexa makes a call to the websocket broker; any screen connected will then get the latest and greatest.
Multiple users / concurrency is not a problem! Each person has its own websocket topic
If you click a button and you’re in the middle of a session with Alexa, it’s a race condition that hasn’t been solved just yet.
Travis Hoppe https://twitter.com/metasemantic
Deep vaporwave aesthetic using drone footage, colors from art, and depth map blurs.
A vision of the future (from the 80s)
An unreasonable fascination with the 80s aesthetic
Ugly, clashing Chroma
Could I recreate these effects with Pixelhouse?
Shift the three chromas (RGB), blur them -» VCR effect!
Learn a really cool color space -> apply the deep-learned
Use a depth map
Nathan Mika Epstein https://twitter.com/Aeium
Multi-layer sculpture via python + laser
Joined a MakerSpace & learned how to use the laser cutter!
Created with a DXF file; can write it in Python and output the results!
Whichever pattern you want to make, you can write that in your code. Take the intersection of negative space or union
If you stack a bunch of layers of cuts, you can make really intricate designs
8x4 feet of finishing paneling for $8, so a 2x2 foot square is about $2
Mostly, do the cut and whatever depth
To make waves: code two sine waves, repeat the process some distance apart in a loop
Byron Gaskin https://twitter.com/ByronTweetsData
Using ML to decide what photography to post on social media
Lots of photographs that have never been published (~8300)
Wrote some code to automate the choosing and do something a little more sophisticated.
Using Google Drive for the storage, so can use Google Colab to use a Jupyter notebook
Complete data dump from the camera, so needed to be able to read raw camera data.
Used PIL and rawpy to get the image data in different formats
Created a neural net, trained on image net
Run all 8400 images, for each image, get a 2048-length vector and used it for K-means clustering
Lots of pictures of things and buildings/architecture,
Used principal component analysis
What are these four categories?
- Things and textures
- Architecture, places, buildings
- Individual people
- Crowds of people