Categories
Design Development

Microsoft Azure U.S. Hack for Accessibility

Had a lot of fun working on the Microsoft Azure U.S. Hack for Accessibility. Paired up with 4 really great and random teammates on this one. We would up making AI Dog, which was a service that specialize in providing accessible directions for users to safely and more easily navigate to a campus. Here’s the entry on DevPost.

I had a great experience working with this team and thought we came up with a very creative idea. There’s a lot going on in the project, but it ultimately uses the Google Streetview API to grab photos of a college campus, that we then analyze using the Azure Computer Vision API to determine whether the photo is an accessible scene or not. We then use the data from the location photos to determine the most accessible route a user is searching on using our accessible website.

One of our teammates did an amazing job setting up the backend in Python. I’ll try to find the path to his repo. It really was amazing work, I’m still impressed at his skills. It was ultimately turned into an Azure Function, which we could then call on a simple web page.

I helped out on the frontend. Using Bootstrap 5 for the basic grid and applying a good amount of Javascript for the UI.

I really thought we had a good shot at winning this one, but the other entrants were just as if not more deserving as well. What a great experience. If I could go back I’d have us spend just a little bit more time on the presentation.

Categories
Design Development

Terminal >Hackathon

So I entered another hackathon through DevPost. This one was for Terminal >Hackathon Tech Takes On Mental Health. We had to come up with something for mental health.

I paired up with with someone from the previous hackathon and I believe two others joined in. With the short turnaround I was the only developer on this one, but everyone chipped in other ways.

We would up making Tell Me Something Good. It’s a basic page that allows a user to input how they are feeling. It then sends that submission to the Google Cloud Natural Language REST API. The API takes the text submitted and analyzes it’s sentiment, returning a score. A 1 or it’s very positive, a -1 if it’s extremely negative, with increments in between.

It’s actually a pretty slick API. We threw all sorts of sentences and paragraphs at it, and the ML (machine learning) really does an amazing job of giving accurate results.

An example of the project can be found here on Glitch:

https://maize-sable-triceratops.glitch.me

and on GitHub here:

https://github.com/joedag32/cheerup-gcnl-api

This one was very fun too. It took me a little bit to the the authorization going with the REST API, but once I got it going it was very flexible and easy to work with. I’m starting to get some very creative uses of sentiment analysis.

Categories
Design Development

Microsoft Azure Hack for Social Justice

PrivIQ logo

Just wrapped up our team’s entry for the Microsoft Azure Hack for Social Justice hosted on Devpost. It was such a fun experience.

I signed up pretty early on, but was having a really hard time finding teammates. I asked some friends and some strangers with no luck. Just as I thought oh well, it’s a no go for me I got a request to join a team.

My team was great, with people located all over the country. Many in school and some with full-time jobs. It was a solid mix.

We ultimately developed PrivIQ. It is an Edge Extension that helps simplify if a site collects private data on a visitor.

My task was to create the NLP (neural linguistic programming). So I had to analyze privacy policy text and determine if the policy should alert a visitor that it does collect their private data.

I decided to use the Azure Text Analytics client library. Their API works great with Javascript and their Key Phrases service was a great fit. I was able to pass text from a privacy policy with a POST request to the API with Fetch and it would analyze the text and return an object of key terms.

What really impressed me most was how fast the Text Analytics analyzed and returned the response. I was sending over 5000 characters and it was milliseconds in its return. I wasn’t expecting such an immediate response.

So once we got our response of key words, we then compared them to our list of privacy terms we were looking for. Depending on how many matches were returned we either alerted the visitor through the Extension that yes your data is being collected, or that it may be being collected.

Luckily I got that part down with more than a week to spare. I’d say I got a lot better at sending and receiving POST requests to an API in vanilla Javascript. So that was a big plus!

Other team members worked on the design of the extension, the web scraper that would called the privacy text from a site and putting it all together in an Edge Extension.

Unfortunately we had a hard time getting our scraper to work in the Extension. There were some CORS issues (which did make sense), and we attempted to called an outside server side script like and API at the last moment, but alas ran out of time.

I would like to continue to learn how to better write an Azure Function. That’s the route I would have like to of taken.

We got our almost fully operational example submitted just a few minutes ago, and am really glad I participated. It really was a lot of fun and forced me to learn some new/better ways of coding.

Categories
Development

Microsoft Developer – Beginner’s Series to JavaScript

In my never ending quest to be a better developer I came across a new JavaScript series from Microsoft. I have to say I was pretty impressed with it. The videos are short and focused for folks who already have some programming knowledge. Still a bit in shock that Microsoft has embraced JavaScript, would have never guessed that a few years back, but very glad they have and are sharing so much with the community.

The particular videos that really stood out to me were the JavaScript Object Notation (JSON) and Objects in Javascript videos. Those were tough concepts for me to grasp when I had first started learning the language, and while I know them pretty well now, the author did a pretty amazing job of explaining how they work. It really clicked with me, and wish I had seen those two years ago!

I could still use some work on Promises and Async/Await, but the videos on those topics were extremely helpful too. While I can still use them, I can’t 100% say that I fully understand what I’m doing when I use them and wouldn’t want to have to explain how they work to others myself just yet. Ha, someday I’ll have them mastered.

Categories
Development

Hacktoberfest 2020

Hacktoberfest 2020 logo

While 2020 certainly hasn’t been the finest of years thus far, there have been some bright spots to the year. I’ve found that the my amount of online learning has gone up with so many of my other activities having gone down.

This year I’ve gone full speed into Hacktoberfest, and have already submitted my 4 pull requests! ok, 2 of them were rather simple pull requests, but 4 nonetheless. Hopefully I will get a t-shirt when it’s all said and done.

I believe my finest pull request went towards confetti.js. A pretty slick little script o display confetti on a page. I added the ability to customize the colors used in the confetti, and sent a Pull Request in. Hopefully it’s something they can incorporate.

Hacktoberfest does a really great job of going over the basics of using GitHub. While I do use GitHub often, there’s always something new to learn or a better way to do things using it.

While I typically keep myself rather busy, Hacktoberfest really just gets me excited to contribute to open source projects. A great event and looking forward to contributing to more projects, and hopefully score a free t-shirt!

Categories
Development

Codecademy – Learn JavaScript

A few months back I started the Learn JavaScript course on Codecademy. I was already fairly proficient with JavaScript, but always looking to up my skill plus get a better grasp of some of the ES6 and ES8 techniques that I know but when it comes to code typically stick with ES5.

This was my first course on Codecademy, and I have to say I was really impressed. The interface was great, very intuitive with the concepts chunked up into an easy to follow way.

I didn’t try the Projects and Quizzes as they’re part of the Pro membership (which I’m not seriously considering giving a shot), but everything else was pretty great. I’d say I learned a couple of new tricks and am a lot more comfortable using the newer ES6 syntax in my projects now.

I’d highly recommend Codecademy to those looking to learn to code or to improve their coding skills.