A Guide to Grace Hopper 2013
6 Min Read
The Grace Hopper Celebration of 2013 was hosted in Minneapolis, MN earlier this month and fired off with a keynote address by Sheryl Sandberg, who provided words of encouragement to 3,500+ attendees. She delivered focus points from her book, Lean In, and urged us to go for our opportunities and prevent our female tendencies from hindering our successes.
For instance, at a project management in tech talk, a participant answered a workshop question with just one example and stated she would save the other examples. A panelist abruptly responded, “If you were a man would you be so quick to hand off the mic?” Although the conference celebrates women in technology, men were present as participants and speakers. And although the encouragement of women in tech and other industries is very important, speakers and participants did not generally gravitate towards the inequality issues between men and women today. With Sandberg’s advice for leaning in, we easily dove into technical talks, where the fact that we were mostly women was easily forgotten and disregarded.
Below are some of these tech talks that excited me the most:
1. Creating Rich Media Sites with Parallax Effects Emily Yang, Yahoo!
Parallax scrolling is an effect that is widely used to create the illusion of depth on a webpage. See tedxguc.com or flashvhtml.com and if you do not see the depth, try a different (ahem, better) browser. Challenges that arise from parallax scrolling include minimizing page load time and supporting alternatives for older browsers and mobile devices. Additionally, the usage of the parallax effect should be planned–identify the story or showcase you are trying to convey and include navigation tools to communicate to the user their current position. Need some libraries to help get you there? Try YUI, developed by front-end engineers at Yahoo!, or Jarallax, which is open-source.
the takeaway: websites are becoming more and more sophisticated, beautiful, interactive, and down-right stunning.
2. Social Fingerprinting Denise R. Koessler, University of Tennessee
Imagine your mobile interactions with a family member or friend through out the course of a week. You might call your mother for about twenty minutes (give or take) in the evening to provide her a daily update. Now nerd it up and visualize a graph, with time of day along the x-axis and the y-axis as duration of phone calls (or some other quantifiable interaction). Your various phone calls with your mother collect as a cluster of vertical lines. Koessler identified for us this cluster actually results in a probability density function (a bell-curve), and that other interactions with your mother and interactions with the other people you communicate will also result in probability density functions along your weekly graph.
The collection of these probability density functions over some time period (in our case, one week) is exactly what Koessler identifies as a social fingerprint. Furthermore, she asserts that any one person can be identified by their social fingerprint. If this is true, interactions, made quantifiable by metrics resulting from your phone calls, texts, Facebook usage, Twitter usage, etc., map uniquely to individuals. You may have some skepticism and questions, so I took the liberty of providing some answers:
1. Yes, she has the science and the data to back it up (and acquired it without learning of any real persons’ names or tapping into the content of their interactions).
2. Yes, this still implies violation of privacy.
3. Yes, there are real-world applications and among them fraud-detection was most highlighted by Koessler.
4. No, I do not think Koessler is creepy (which she had jokingly called herself).
the takeaway: social fingerprinting can be applied to any system that supports quantifiable interactions among identified users. The fingerprinting includes a machine learning process, which essentially means the fingerprinting tool becomes smarter as it collects and uses more data over time. Within the ecommerce world, such fingerprinting could be a means for improved fraud detection of online transactions against user behavior, better timed email marketing campaigns to specific groups of users, and identifying market trends.
3. Google Glass Thad Starner, Technical Lead/Manager on Google’s Project Glass but also director of the Contextual Computing Group at Georgia Tech’s College of Computing
Thad Starner, who wears and uses Google Glass quite consistently, gave me the courtesy of his fully undivided attention when we met and spoke at the conference. And that’s exactly how conversations should take place–full immersion in the present moment.
In his presentation on Google Glass, he included a snapshot of what he speculates to be the average American family at Thanksgiving dinner: smartphones out, heads down. The audience could not help but laugh and exchange guilty looks.
Google Glass is a wearable computer that is meant to foster quick, micro “look ups” and virtual connectivity, similar to smartphones but even faster, as to eliminate the interruption of real world experiences. A Thanksgiving dinner for the Google Glass wearing family would look quite different: Google Glass on standby, heads up.
Later in the conference a friendly Google Glass enthusiast allowed me to try on her pair, which she had acquired through an early beta release at a previous conference. It honestly gave me a headache at first, but it was incredibly powerful and convenient in that I could command this wearable device to answer a question, take a picture, shoot a video, or tell me if it’s raining outside as an integrated part of my reality.
the takeaway: a shift towards integrating our realities and virtual worlds may be on the horizon, but most likely only for micro actions and queries, such as sending a text or performing a Google search.
4. Sharding for Scaling “scaling = replacing all the components of a car while driving it at 100mph” — Mike Kreiger, Instagram co-founder
Many fast growing internet startups struggle with the issue of scalability (the ability to maintain performance under growing load). For one, making the transition from one architecture to another is not easy. And to add to that, sometimes after adjustments have been made for the current server load, new solutions need to be implemented to support the new load. At two independent talks, the solution of sharding was emphasized: Tamar Bercovici of Box told her company’s success story with the technique, while a set of panelists from Pinterest, airbnb, LinkedIn, Square, and Etsy gave a mini-lesson on what it is.
So, what is sharding anyway? Typically a scalability solution involves throwing a load balancer and more machines onto the architecture. Pooling, a solution different from sharding, involves placing the same information on all of the servers. In contrast, sharding involves breaking up the database tables so that each server contains different groups of tables. The downside of sharding is that it requires more effort during the recovery process, should anything be lost.
At Box, Bercovici explained they applied sharding to their database at Box after identifying their problem of many requests for their files and folder database tables. The partitioning of database tables across separate servers allowed for a huge decrease in the number of queries required to resolve a request. By the design and usage of their system, they knew the user requests were most crucial to quicken. Thus, they decided to shard by users, which is a fairly common approach.
the takeaway: scaling is difficult to implement and the pros and cons of scaling solutions should be carefully weighed before making architecture changes.
5. Automated Performance Testing Qi Luo, William and Mary
Qi Luo and her team at William and Mary have performed research on automated performance testing and even implemented it for a few companies as a testing round. Their automated performance testing is a tool they’ve developed for identifying trouble spots and inputs that lead to long execution times.
Luo fired off her presentation with a cartoon image of a woman holding a gun up to a computer due to frustrations in receiving errors like “connection timeout” when shopping online.
What causes these frustrations for our online customers? The application, or the site code, sits in between the users of the site clicking around on the frontend and the database working behind the scenes. The application channels actions from both ends and in turn becomes a bottleneck at times.
To help identify these “times”, Luo and her team decided to select only the inputs that trigger intensive computations, find the rules that govern these inputs, and use a test script called JMeter to simulate users. A research paper is in the works and will dive deep into their findings and methods used for automated performance testing, such as machine learning and capturing individual cases that cause the bottlenecks.
the takeaway: web development is becoming more sophisticated through research similar to that of Luo’s team as well as the work done by companies (like Box, above). They help calculate pain points and provide new solutions and ecommerce is shown to carry weight for the importance of minimizing pain points and solidifying new solutions.
Photos via GraceHopper.org + Girls in Tech Minneapolis