Showing posts with label ghc13. Show all posts
Showing posts with label ghc13. Show all posts

Thursday, October 3, 2013

The Coolest Research Ever!

This morning I attended "Looking for Bugs in All The Right Places", a talk by Elaine Weyuker.  She presented what she described as 'the coolest research ever' - and she's right, her work is awesome.  This is probably one of the best talks I've been to at any GHC, ever.

Weyuker introduced the goals of her research as finding the parts of a large software system which are likely to contain the largest numbers of bugs in the future.  At first, I was worried about job security!  But when it comes down to it, if possible this would allow testers to:
  • Find bugs faster
  • Get higher quality code for lower cost
  • Help Devs know when to do design and code reviews and what to re-implement
  • Focus on a particularly risky part of the code
The first step in the project was to verify that bugs are non-uniformly distributed among files.  Generally from our experience as Testers we know this - but it's still important to verify it so that the dataset can be well understood.

One of the most interesting findings is that there are only five simple predictors of whether a file will contain bugs or not:
  • Size of file (the larger, the more bugs)
  • Number of changes to the file in the previous two releases (it turns out some changes can improve a file, but others can make it even worse.  We Testers know this all too well and are paranoid about any changes being made.)
  • Number of bugs in the file in the previous release
  • Age of the file (number of releases the file has been in the system)
  • Languages the file is written in (if you use many different languages, there are more likely to be bugs when the code interacts)
A surprising result is that the author of the code is not a predictor.  One reason is that good programmers tend to get more difficult assignments, resulting in riskier code and potentially more bugs.  Poorer programmers tend to have more critical code reviews and their code is more scrutinized. 

Weyuker studied nine systems and found that 83% of the bugs in a given system can be found in 20% of the files.  She was asked if she considered the severity of the bugs found, which is the question I was really curious about too!  She said that they did consider severity in their study but found that it was very inaccurately reported (at least in the databases they looked at); roughly 1% of bugs were reported as severity one, while others were downgraded to severity two for political reasons.  At the same time, severity three bugs often get filed as severity two bugs (I can believe this as passionate testers want their bugs fixed and might think a higher severity will convince the powers at be to do so).  This made me think about how important it is to build 'doing the right thing' into any bug filing and triage processes a company creates to ensure that games aren't played with bugs to either hide or promote issues.

At the end of a talk I asked Weyuker whether they considered the type of bugs (i.e. UI vs. performance bugs) in her study.  She said hey didn't in this particular work but had done other research that did include how the bugs were found.  One thing I've been thinking about lately is how to find bugs that aren't necessarily functional problems but rather UI defects - what if font sizes are off, there is a 2 pixel offset, etc.  I think an interesting future direction for this work would be to see if it can be used to predict which files are likely to contain which kinds of bugs.

GHC Gets Going - Keynote Day 2

This morning we heard Megan Smith give the morning's keynote.  She touched on a number of things, from innovation and 'moonshot' thinking to addressing how we can build diversity into the tech world.  She showed us examples from the space program, how Google is using big data and geo tech to map the world and build self-driving cars, and then bridged into examples of extraordinary women who helped develop these technologies throughout the 20th century.

Smith also mentioned the Makers documentary made by PBS.  If you haven't watched it, I highly recommend it!  Although centered on American women, it is still very inspiring and shows great examples of women who pioneered their way through various fields, from politics to high tech.  Check it out, it's a great way to spend some downtime at GHC!

What did you think of the Keynote this morning?

Wednesday, October 2, 2013

First Day of GHC13! And So It Begins...

This morning I attended the first Keynote of GHC13, which included a fascinating discussion between Maria Klawe (President of Harvey Mudd College), Sheryl Sanderg (COO of Facebook) and Telle Whitney (President of the Anita Borg Institute).  What a great way to start the day!

From Maria, we heard about some of the ways Harvey Mudd was able to increase the percentage of women in their CS program from 15 to 40%.  Klawe doesn't take credit but says that Mudd helped change the numbers in a few ways - by making the intro CS for beginners' course the 'gold' course (instead of black), by making it fun and exciting and showing real-world applications related to robotics and physics.  As more women took the class, more women considered CS as a major.

Sheryl talked about her Lean In initiative and foundation.  She gave some personal examples about why it matters and the impact it can have on women's lives, the most shocking of which was a story about how at a recent conference, a fellow panelist said to Sandberg, "Most women aren't like you Sheryl, they aren't competent". 

While I've heard some of her stories before, I think Sandberg really moved the audience and got people thinking about why we should have events like GHC and why they are important.  She said, "We need events like this [and Lean In Circles] because gender bias exists; we need to acknowledge it instead of hiding the problem".  After hearing her story of her panel experience, I think we all can (and should) get behind that statement.

Wednesday, August 28, 2013

GHC13 Schedule

Every year I post my schedule for GHC, and this year's no different.  Unlike other years I decided to put the events directly into my Outlook calendar since it syncs directly with my phone and will be much more accessible this way.  Here it is (click for a full view):
 

The awesome thing about this year's conference is that there are so many excellent technical sessions I want to attend (notice I'm doubly and even quadruply booked in some time slots)!

You'll notice that I've colour coded my calendar; here's the key:
  • Yellow: Community-related or social events
  • Green: Sessions I'm participating in
  • Red: Microsoft-related events/activities
  • Purple: Technical sessions
  • Blue: Career-related sessions
  • Orange: Women in Tech-related sessions
Somewhere in the gaps I will somehow find time to blog the sessions I attend, post on Facebook and Tweet as I have at every GHC I've attended.  I'll also be popping up at the Microsoft career fair booth, so stop by and say hello!

Friday, August 23, 2013

Be a Communities Volunteer!

If you've been to GHC before, then you've probably heard of communities volunteers (or even been one).  If not, this post is for you!

What do Communities Volunteers Do?
Communities Volunteers help build the community for GHC attendees online, mainly by maintaining the GHC wiki and blogging. 

Benefits of Volunteering
Why should you volunteer?
  • As hard as we may try, there's no way we can attend every session.  As a Communities Volunteer, you will be essential in helping attendees find out what happened in the sessions they miss!
  • You'll get an extra boost to your networking ability at the conference: you'll be highly visible as an official blogger / wiki poster - other attendees will recognize you and seek you out to ask questions about the sessions you attended.  In past years, I've made valuable connections as an official blogger and am in contact with them to this day!
  • The chance to see your blog's name in lights!  There will be roughly 4000 attendees at GHC this year.  A great many of them will read your contribution to our communities and you'll see a definite boost to your blog readership/Twitter activity/Klout score/etc.
  • As an Official Blogger/Note-Taker, you’ll receive a cool GHC Communities ribbon for your badge (ribbons are highly coveted at GHC, and the more the better, but only available if you blog/note-take!)
Where Do I Sign Up?
Follow this link and click on 'Volunteer Application' in the right hand column to fill out the application to sign up.
 
Don't have a blog but still want to volunteer?  Don't worry - you can take notes on three or more sessions for our wiki or create a new blog expressly for the purpose of blogging at GHC.  You can also tweet using #ghc13 and/or you can join our Facebook group.  Here is a full list of the online communities associated with the conference:
Any contribution, no matter how small, helps make our online communities richer! 

Saturday, July 13, 2013

How to Get Funding to Attend GHC: Don't Be Afraid to Ask!

Each year, I hear again and again from people who struggle to get funding to attend the Grace Hopper Conference.  It can be hard for students if their university doesn't support them to attend, or if they are given the choice between using student travel awards to attend a technical conference in their field or GHC.  It can also be hard for those in industry, especially more junior employees who don't feel empowered to ask for funding to attend.

I've attended the conference four times now, and each time I was able to get some level of support to go.  I'll share what I did each year and hopefully if you are in a similar situation, you will find it useful when preparing for GHC13!

2007
The first year I attended, I applied to our CS department for an Undergraduate Travel Scholarship.  Since I was also participating in the Richard Tapia Conference Robotics Competition, it was easy to justify my attendance.  The Women in Machine Learning workshop was also held in the same location, so I was able to sell attending GHC and miss a week of work on my Undergraduate Research Assistantship.

I was also a Hopper (volunteer), which meant I could use the travel award to fund flights/hotel rather than conference fees.

Key Takeaways:
  1. Find out if there are technical talks, workshops or events happening during the conference time that will help you learn and grow as a student or employee through your participation in them.
  2. Be a Hopper or find some way to get involved with the conference (i.e. be an Official Blogger, Official Tweeter, or Community Evangelist - applications will open soon!).  Conference involvement can also help you get funding from your school or company.
2008
The second year I attended, I won a Google Global Community Scholarship to attend the conference.  I think one thing that helped my application was that I was participating in the conference as a Blogger and I had a talk proposal accepted.  Since I knew our CS department could give the travel award money, I organized a group of CS women to attend and helped them apply for funding.  Our CS department had a rule that graduate students had to use their travel award for GHC travel, and I campaigned against this as well, getting an exemption and separate GHC funds made available for grad students. 

Key Takeaways:
  1. Policies that make grad students use limited travel funds for all conference travel make them reluctant to attend GHC.  Lobby your department for a separate GHC travel award to help ensure grad students don't have to make that choice.
  2. Submit conference proposals!  Whether in academia or industry, getting a proposal accepted makes it much easier to justify attending.  Even when your company is heavily supportive of GHC efforts like mine is, knowing I'll be contributing to the conference gives me that much more reason to take time out of regular work to attend, and helps me set an example to others too!
2011
This was my first year attending from industry.  Even though my company is hugely supportive of GHC, I was a little hesitant to ask to attend during my first two years working.  In 2011 I got my nerve up and asked to go, requesting only that I not have to take time off.  I funded most of the trip myself.  I was still an Official Blogger and tweeted many of the sessions.  I also helped out at our recruiting booth.

Key Takeaways:
  1. For attendees: Had I known what I know now, I would have made a proposal to attend using my training budget.  The lesson here is to prepare a strong justification of why you should go and don't be afraid to ask!
  2. For managers: new employees who will probably benefit the most from a conference like GHC may be reluctant to ask.  If there is a training budget or group that can help these employees attend, don't forget to suggest it to them.
2012
Last year I was determined to get funding to go.  I got a proposal accepted at the conference, was sitting on a conference committee, planned to be an official blogger again, and was also helping with our company's GHC efforts.  I also wanted to find a way to help others attend and evangelize the product I work on.  I found some good connections and a great partner in Developer Evangelist Ed Donahue and got a proposal together detailing a workshop we could provide right at our recruiting booth.  Long story short, I was able to get funding not just for myself but for 10 other technical women from my org.  AND we had an awesome recruiting booth!

Key Takeaways:
Get organized, get involved, and involve others.  We gathered stats and data pointing to benefits not just for the attendees professionally, but for the company as well.  Make it easy for your managers to support you going by making strong, detailed arguments.  And don't be afraid to ask!

Friday, March 15, 2013

Grace Hopper 2013 Proposals

This year I'm part of three panel proposals for GHC13.  GHC submission time always brings out the Women in Tech community, and this year was no different.  I joined the first proposal via a large email thread I got added to by a colleague and found it contained people from many great companies doing lots of interesting work!  For the second two proposals I put out requests on the Systers community, Twitter, and this blog for contributors and was overwhelmed with the response.

Here are the abstracts for our proposals.  Good luck to everyone else who submitted!

Native or Web, Which App Should I Build? A Mobile Developer’s Dilemma
Chaitrali Amrutkar, Georgia Institute of Technology
Tracy Chou, Pinterest
Sara Haider, Twitter
Kate Tsoukalas, Microsoft
Jane Wang, Etsy

The difference between the capabilities of web-based and native mobile apps is increasingly being blurred. While building an app for mobile users, developers need to make several considerations such as platform specificity, speed, user experience and commercial opportunities. This panel will discuss design principles, best practices, tools, security considerations and trade-offs in development of native and web apps on mobile devices. Our panel consists of experts from academia and industry.

Thinking Big about Careers in Test: Driving Your Career in Forward
Kery Laughter, Space Dynamics Laboratory
Kate Tsoukalas, Microsoft
Mirkeya Capellan, Sogeti USA / Pace University
Kavita Maheshwari, Trilixx.com
Iccha Sethi, Rackspace

Although the role of software testing in ensuring software quality is well established, the concept of a Test Engineer is relatively novel. There is an increased need for Engineers who can fill this role, but most institutions do not formally teach Test skills and many tech workers still do not clearly understand Testing. In this panel we explain technical specifics of Test skills, role, and directions for Test careers.

Thinking big about great mobile experiences: Smart development and test techniques drive us forward!
Rosario Robinson, Anita Borg Institute
Kate Tsoukalas, Microsoft
Leanne Waldal, OTIVO
Jennifer Wong, Wyley Interactive
Foghor Tashi, Nigerian Breweries Plc

As the number of mobile technology user is increasing, developers need to switch their thinking from designing applications for a desktop environment to cater to the specific needs, limits, and opportunities of mobile devices. However, many developers of mobile websites and applications repeat common mistakes that result in a poor user experience. This panel aims to raise awareness of these pitfalls and provide developers with strategies to overcome them.

Wednesday, March 13, 2013

GHC13 Panelists Needed for Mobile Tech Panel


Yesterday I wrote about a proposal I'm working on for GHC13.  Luckily I got a great response from my post and found more than enough panelists.  

However, I have a second proposal entitled "Thinking big about great mobile experiences: smart development and test techniques drive us forward!".  Here's the abstract:

"As the number of mobile technology user is increasing, developers need to switch their thinking from designing applications for a desktop environment to cater to the specific needs, limits, and opportunities of mobile devices. However, many developers of mobile websites and applications repeat common mistakes that result in a poor user experience. In this talk, we will:
  • Share important guidelines for developing better mobile applications and websites such as: planning principles, design modeling principles, coding principles and concepts and others.
  • Analyze and present common pitfalls, bugs, and design flaws made by mobile developers
  • Present strategies and techniques for testing mobile-focused products
  • Provide a forum for members of the audience to share their mobile testing/developer experience"
Right now we have two panelists and are looking for up to two more panelists and one moderator.

Please let me know if you are interested!

Tuesday, March 12, 2013

GHC13 Panelists Needed for Testing Proposal


I have a proposal for a panel for GHC13: "Developing Your Career in Test".  Our idea is to give real-world examples of testing techniques via demos and also to give advice on career development.  Right now we have two panelists and are looking to add:

- a moderator
- a Tester from another company (we are from Microsoft and Pace University)
- [optional] a panelist who tests as part of their role but whose title is not necessarily Test/QA

Please let me know if you are interested, time is getting short!