Source: The Next Web | Originally published on February 10, 2014
It’s well known that software engineers are in high demand right now with startups and companies around the world. And if they’re not able to hire from the existing talent pool, companies are looking at the next generation – those computer science majors seeking to make a name for themselves in the industry. However, after four years of post-secondary academia, are these students really prepared for the working world?
Stanford professor and Facebook education modernizer Jay Borenstein doesn’t seem to think so. As a result, he has organized the Facebook Open Academy, a program designed to provide students with practical software engineering experiences before they graduate, while also working on open-source projects.
Now in its second year, the Facebook Open Academy has brought together 250 students from 25 universities around the world, along with faculty and industry mentors.
One of the crucial things to realize is that, although it’s called Facebook Open Academy, it’s not a Facebook initiative per se. Borenstein worked with the company’s CTO, Mike Schroepfer, to help grow the program and provide them with the necessary resources needed to get as close to real-world experience as possible.
Preparing Students for Work
Borenstein tells us that the idea started as an experiment to see if it was possible to help computer science students gain relevant exposure to the type of work that they’d be doing in the industry. The issue isn’t that engineers aren’t being hired, but rather that traditional universities aren’t providing the necessary skill sets that students need, such as project estimation, revision models, and standards for writing code when it’s out in production.
It’s argued that computer science students can learn more from the Open Academy program than from their entire college experience. This is because students will have the opportunity to be supervised by an industry expert vetted by Borenstein’s team, and will receive the necessary one-on-one mentorship that’s needed to succeed in the real world.
University of Helsinki researcher and faculty advisor Fabian Fagerholm tells us that the Open Academy supplements the teachings universities provide students. He equates the educational curriculum with programs like Borenstein’s as being a marriage of “theory and practice”. Students only have a brief period of time learning about a profession and may oftentimes not get the required practice of those skills prior to joining the workforce. Facebook Open Academy gives that chance and also is just as useful for the mentors and faculty advisors as it is for the student participants.
This year’s program brings together students from 25 universities, including Carnegie Mellon, Columbia, Harvard, MIT, Princeton, Stanford, University of Illinois at Urbana-Champaign, University of Washington, Universidade Estadual de Campinas, University of Singapore, Tampere University of Technology, Waterloo, University of British Columbia, University of Tokyo, Imperial College London, and others.
Why Open Source?
When asked about the focus on open source, Fagerholm says it’s unavoidable in any computer science job. Whatever kind of software you’re making will probably use some open source framework or tool to do the job:
It’s never a wrong choice to use open source framework to teach computer programming. It’s not the only choice, but never the wrong choice.
So, if the goal of Open Academy is to help better prepare students for the real world, some might wonder why Facebook is involved rather than a coalition of other tech companies. Borenstein says that the Facebook brand was essential to the program since its mission resonated with Open Academy. Both organizations value global connections, as well as the social networking company’s support for open source.
In January, Facebook CEO Mark Zuckerberg emphasized the importance of Facebook’s contributions to the open-source ecosystem. At the fifth Open Compute Summit in San Jose, he said:
“When you’re the first company to design something, sometimes there’s an advantage to keeping it proprietary and secret. But if there are companies that have done some of this work, especially when we’re getting started, then from our perspective, it was just much better to collaborate with the community and work together to do something that could would blow past what anyone else have done. That was kind of like a no brainer of a practical strategy that we wanted to execute.”
Facebook has undoubtedly made significant contributions to the open source community. Among its most notable contributions is the Open Compute Project, which harnesses the power of the crowd to enhance server performance for applications and platforms. The initiative has gained momentum over the past three years as notable tech companies have signed on board to participate, including Microsoft. Based on the knowledge shared, Facebook says that the Open Compute Project has helped it save $1.2 billion in infrastructure costs.
Other open-source efforts include Presto, its homegrown SQL query engine; Origami, a free design prototype for the Quartz composer; and more, spread across infrastructure, mobile, and Web.
However, there’s more to the Open Academy’s open source focus than just Facebook. Students have been brought together to work on projects that extend far beyond social networking—practically any effort a software engineer undertakes will utilize some aspect of open-source code. Borenstein’s program is designed to help students understand what the code is all about and be able to make necessary fixes.
While Facebook has been a significant part of the Open Academy, Borenstein hopes that in the future, the company will become a steward and help lay the foundation for the development tools and infrastructure that the academic world can utilize.
Creating a Better Software Engineer
As we all know now, one of the goals of Facebook Open Academy is to provide computer science majors with the working experience they’ll have in the workforce. However, rather than thrusting them into lectures and exercise problems, these students are put into teams to learn how to work well with one another and benefit from a dedicated mentor.
This year, the program has brought on board seasoned veterans who actively maintain open source projects, including Ruby on Rails, MongoDB, SocketIO, Mozilla OpenBadge, ReviewBoard, Phabricator, PouchDB, Kotlin, and Freeseer.
AT&T Interactive’s senior software engineer, Aaron Patterson, is one of those mentors and spoke with us about his role in the Open Academy. He says that while the assigned open-source projects benefit from the extra help, students actually receive a considerable advantage by being able to interact with one of the project’s maintainers. At the beginning of each program, students are flown to Facebook’s headquarters to meet with their mentor. Over the following three days, they’ll receive help in setting up their development environments and get briefed on projects.
Patterson says teams will be working on bug fixes and also “small-ish” projects. However, make no mistake that these enhancements are just busy work—all efforts by students help advance the state of projects. This is something that Patterson says separates Open Academy from other similar programs at companies like Google.
We’re told that with Open Academy, mentors work with students and identify projects that require their attention—Patterson says it’s essential for students to take on tasks that maintainers don’t have time for. Yes, it sounds like free labor, but keep in mind that students aren’t just filing documents or answering phone calls — they’re working on actual projects and making improvements.
Patterson points out that with other programs, such as Google’s Summer of Code, student participants are building things that they want, but may not be appropriate or needed at that time. With Facebook Open Academy, mentors like him know what’s required and instruct students on what to do—Patterson helps them move in the right direction before asking them, “Now what do you want to do? What do you want to improve?”
The End Goal
The length of Open Academy varies based on each student’s university – some operate on a semester calendar, while others operate on a quarterly one. For each session, students will be paired with others based not on friendships, but on common interests. Borenstein says that a formula is used to assign people to teams, primarily based on project preferences. Other factors include logistics, such as time zones and the locations of schools where students are enrolled.
For mentors, the primary goal isn’t the presentation of the work that they’ve accomplished. Instead, it’s about how students have worked together in teams remotely, the learning outcome, and being mentored by someone whom they respect.
Ultimately, it seems that students, faculty, and mentors concur that programs like Facebook Open Academy have a positive impact on strengthening the developer talent pool and community. Fagerholm agrees with this and believes more companies should participate in Open Academy-type programs lest they miss out on a source of talent. He believes that students are more likely to join a company that has participated in such an initiative, demonstrating that they’re thinking long-term about the development of their talent.
This is not like an internship or a massive open online course (MOOC), such as those offered by Coursera, Khan Academy, Udemy, or other similar services — it’s more like a detailed and hands-on capstone course that one can take for college credit. While Facebook Open Academy is only in its second year, it will be interesting to see how it progresses in the future and/or if it affects the current computer science curricula in universities.
Featured Image: Facebook co-founder and CEO Mark Zuckerberg on stage at the company's F8 developer conference on April 12, 2016. Credit: Ken Yeung


Leave a Reply
You must be logged in to post a comment.