or “What I Learned This Summer…” 📚

Image for post
Image for post
https://unsplash.com/photos/zNRITe8NPqY

M y recent internship 💼 was arranged by CodeDay, a nonprofit organization that promotes STEM education for underserved students. With my 12-week-long internship graduation requirement yet to be completed as COVID loomed, I was ecstatic to be set up with a team for the summer!

I collaborated remotely from July to October with a small team 👩‍👩‍👦‍👦 around America to build an open-source MERN-stack application. The interns, accompanied by our volunteer mentor (a software engineer at Nordstrom!), met weekly to research, scope, design, and build a web app 🖥️ that allows writers to track their progress across all their projects.

In three months, we shipped three versions, iterated design a lot, wrote️ as much documentation ✏️ as code, user interviewed and consequently changed the entire focus of the platform 😅), and became a team 💃💃.

What I Learned Along the Way

During my internship, I learned and grew in several different respects. First, there was the aspect of working remotely with a team I had never met. …


Autocompletion in software was once a nice-to-have feature, but now is necessary to make user interactions feel quick and snappy. UX Magazine published an article detailing the ways in which autocomplete can be used to “help users save time, iterate on their searches, and get the results they want”. When autocomplete is applied effectively in applications, users feel as though the product they’re using understands them and their needs, thus boosting their overall image of the software.

Image for post
Image for post
https://giphy.com/gifs/google-turned-searches-h6kwmY5FZeg9i

Plenty of software engineers will need to work with autocomplete throughout their career in order to provide an exemplary user experience. For the web, it’s a right of passage. Text fields for user input with autocomplete are as common as the next element. Lots of these operations run on the backend, for example a Google query, but it’s not uncommon to have more simple autocompletion running client-side. It’s no wonder that there are hundreds of NPM modules in the search results for “autocomplete”.

The most popular of these packages, however, are tightly-coupled with the DOM. These modules essentially say, “Hey, you wanna use my autocomplete library? Use my custom element in your DOM then!” While this plug-and-play options may be a very useful solution for many cases, it’s can also be less than optimal for other use uses of autocomplete — especially when you just want to use your own element. …


Achieve Your Dreams with Just 2 New Skills

Around the globe, people like to set goals for themselves at the start of a new year. The beginning of 2020 was no different — in fact, perhaps more people than usual set resolutions for themselves to kick off the decade. 🎉 But studies show that by February, 80% of folks with these goals have already failed. So why are we so bad at keeping New Year’s Resolutions? 🤔

It boils down to 2 skills that you can learn in the next 5 minutes:

1) Designing SMART goals 🏁
2) Forming new habits 🛌

Image for post
Image for post

You might not know how to set goals.

Common goals you’ve heard when going into a new year are objectives like exercising more 🏃‍♀️or getting less screen time 📲. These are amazing accomplishments to aim for! …So what is it that makes these goals flop? …


Trees are a popular abstract data structure used in computer science that are organized in a hierarchy of nodes. Anything stored in a tree is represented with a node that keeps track of its own data, as well as other properties like references to their children’s locations 👩‍👩‍👦. Trees can be incredibly complicated — for example, a tree with a height of thirty where each node has two children contains two billion nodes. This makes trees a really easy data type for binary search.

Let’s explore a perfect binary tree together!
Wait, what is a perfect binary tree? 🧐

      4     
↙️ ↘️ A binary tree is perfect when
3 6 all internal nodes have two children,
↙️↘️ ↙️↘️ and all leaves are at the same level. …


The best part about software engineering is how enjoyable and satisfying my work is. I pour my time, love, and tears into the development of my projects because they are my babies. And unlike real babies, we have the power to make our projects perfect… but only when our code is perfect. 🤷

Image for post
Image for post
pretty much how my early code was written

Back when I was the juniorest of junior engineers, s̶o̶ ̶a̶ ̶f̶e̶w̶ ̶m̶o̶n̶t̶h̶s̶ ̶a̶g̶o̶, I worked solo on a product I adored called Daily. The problem with Daily? When I built it, I only had seven weeks of development experience and was challenged to code it in five days.


What are sessions and cookies, and why do we need them?

Image for post
Image for post
HTTP Get Request for the Mozilla Docs in French.

If I passed you this note, what would you write back? Maybe you’d be like “🤔❓🤷” and send back a 404, but maybe you’ve read up on HTTP messages, so you’d know what to respond with (which is, kinda, this). 🌐

What is HTTP?

HTTP (Hypertext Transfer Protocol) is how we send data on the web. HTTP can send files containing text, images, video, sound, and any other multimedia you run into on the web. …


The Creation of Regina, by Victoria Murray and Jasmine Humbert

In an unsurprisingly predictable and disheartening New York Times article appropriately titled ‘The Top Jobs Where Women Are Outnumbered by Men Named John’, we learn that women are at a disadvantage in the modern workplace — in numbers, in power, and (yes) in pay. With 20,000 Googlers protesting the company’s culture and harassment policies and the outcry of millions from the #MeToo Movement, along with my personal experiences as a woman in Silicon Valley, providing support for women has become a high priority task.

For me, this looks like leading a weekly women’s group at Make School, where I study computer science: an industry reporting 73% of workers believe it is sexist. Our school goes out of its way to make female students feel as comfortable and respected as possible — but despite their best efforts, the members of Lady Circle consistently return positive feedback emphasizing on how great it feels to have the chance to meet and be heard in a male-dominated space like the tech industry. …


Anyone can create, but preparing for your creation and its impact is what guides an idea to success. Properly researching, identifying, and exploring a problem domain and product idea turns a concept into a machine that helps users accomplish their goals. Performing a thorough examination involves doing different types of analyses, researching the industry and its main competitors, and conducting user interviews to investigate and receive insight from those affected. Planning your product revolves around feedback and iteration, and a lot of thought.

Exploring a Problem Domain

Sometimes the first step of analyzing a problem domain is learning what a problem domain is in the first place: a specific area of associated problems. I compiled a list of about twenty problem domains, such as education, wellness, politics, and ecommerce. Each domain has its subsets of problems — for example, in finance there are many factors involved, like mobile banking, budgeting, savings, and social payments. …

About

Tori Murray

Learning @ Make School

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store