fbpx
Home Blog Page 1323

What’s Going On in This Picture? | March 4, 2019

0
What’s Going On in This Picture? | March 4, 2019

Students

1. After looking closely at the image above (or at the full-size image), think about these three questions:

• What is going on in this picture?

• What do you see that makes you say that?

• What more can you find?

2. Next, join the conversation by clicking on the comment button and posting in the box that opens on the right. (Students 13 and older are invited to comment, although teachers of younger students are welcome to post what their students have to say.)

3. After you have posted, try reading back to see what others have said, then respond to someone else by posting another comment. Use the “Reply” button or the @ symbol to address that student directly.

Each Monday, our collaborator, Visual Thinking Strategies, will facilitate a discussion from 9 a.m. to 2 p.m. Eastern Time by paraphrasing comments and linking to responses to help students’ understanding go deeper. You might use their responses as models for your own.

Your guide to International Women’s Day

0
Your guide to International Women’s Day

In the era of #MeToo and Time’s Up, International Women’s Day (IWD), held annually on March 8, is a focal point in the movement for women’s rights.

Each year IWD is marked around the globe by both protest and celebration. With slow (yet unrelenting) progress being made in the fight for gender equality, IWD has gained major momentum in recent years, as women around the world have collectively declared that, in the words of Oprah, “a new day is on the horizon.”

In Australia there has been some progress – the gender pay gap is the lowest it’s been in 20 years[i] and the number of women on boards of ASX-listed companies grew from 8.3% in 2009 to 26.2% in 2017[ii]. But there is still some significant ground to cover. In 2017, we also slipped dramatically on the global index measuring gender equality to 35th, from a much more respectable 15th back in 2006[iii].

So whether you choose to spend this IWD hitting the streets in protest for women’s rights, or playing Beyonce’s Run the World (Girls) on repeat, here’s a quick run-down on all you need to know for IWD 2019.

How to get involved

This year, the campaign theme for IWD is #BalanceforBetter – a call-to-action for driving gender balance in business, government, media coverage and wealth. This Friday you can become part the global movement to raise awareness for women’s rights by visiting www.internationalwomensday.com where you can access everything from downloadable IWD selfie cards, through to tips on how to strike the #BalanceforBetter “hands out” pose, which can be a great way to also get your family, friends and workmates involved.

Bust out the purple

On March 8, we wear… purple!

Purple is the official colour for IWD….in fact purple has a rich
history in the efforts to achieve gender equality, as it represents “the royal
blood that flows in the veins of every suffragette.” So if you want to
represent on March 8 (and beyond) then a splash of purple is the way to go.

Brush up
on your history

The
earliest Women’s Day, called “National Woman’s Day,” was held on
February 28, 1909 in New York, at the suggestion of Russian-born American labour
activist, suffragist and all-round legend, Theresa Malkiel. Over the years, the
concept of a day to promote women’s rights, including suffrage for women,
continued to evolve, until 1975 when the United Nations began celebrating
International Women’s Day, with the United Nations General Assembly proclaiming
March 8 as the official UN Day for women’s rights and world peace in 1977.

Want to learn
more?

OUA offers a range of undergraduate subjects in the area of gender studies, including everything from Macquarie University’s ‘Foundations in Gender Studies’ through to ‘Gender, Crime and Justice’ from Griffith University and ‘Naughty Boys, Bad Girls: Gender and Discipline at Home and at School’, also from Macquarie University.

To express your interest in any courses that we offer – fill out the form on this page, and we’ll put you in touch with a friendly student advisor. If you’re keen to explore on your own, simply head over to our website to browse the extensive catalogue of courses from universities across Australia.


[i] https://www.wgea.gov.au/data/fact-sheets/australias-gender-pay-gap-statistics

[ii] https://www.humanrights.gov.au/education/face-facts/face-facts-gender-equality-2018

[iii] http://www3.weforum.org/docs/WEF_GGGR_2018.pdf

Updates to our Java Content

0
Updates to our Java Content

Good news! We’re updating several lessons in our Java curriculum to pave the way for more Java content in the future. You’ll now have an improved experience learning Java on our site.

Why?

Our lessons can always improve! Before these updates, our Java content spanned a lot of topics at a quick pace and ended leaving you wanting more.

We’ve seen the overwhelming demand for Java content, so we decided to rewrite our courses so that they explore these topics at a slower pace and in more depth. These changes lay the foundation for the expansive Java curriculum we’ll be releasing in the months to come.

How does this impact you?

If you’ve previously started or completed any of the Java lessons: Introduction to Java, or Object-Oriented Java, you will notice updates to the exercise order, the narratives, and code.

The lesson on Data Structures has been removed and will be reintroduced in mid-April. Conditionals and Control Flow will also be updated at that time.
If you’ve previously completed these lessons, some of your progress will be lost; when revisiting any of the exercises, you’ll notice changes to workspace code. If you were in the middle of a lesson, you will lose your progress.

Even if you’ve completed these older lessons, we highly encourage you to take the new and improved versions.

When?

The lessons will be updated beginning at 9:00 AM EST on Thursday, March 7th, 2019. We expect the updates to be finalized by 10:00 AM EST the same day. During this time, the Learn Java course will be unavailable.
Take a look below to get an overview of the updates.

Changes to Introduction to Java

These lessons will still teach the same material included in older versions but will have a new and improved feel that explores each topic more deeply.

More depth means more lessons! Our older content had a single lesson that introduced the language, data types, and operators.

Our new content has three lessons exploring the same topics, as well as some new areas.

Introduction to Java Lesson now covers:

  • Compiling
  • IDEs & Program Structure

Variables and Data Types Lesson now covers:

  • The String object
  • The .equals() method
  • String concatenation

TL;DR:

We’re updating our Java content so it explores topics in greater depth and provides more opportunities for learning and practice. The Data Structures lesson will be temporarily unavailable during the change.

Ask a Data Engineer: Warby Parker Edition 👓

0
Ask a Data Engineer: Warby Parker Edition 👓

wp-header

Codecademy’s very own Nick Duckwiler (left) and Ryan Tuck from Warby Parker (right) in our office. (📷: Mitch Boyer)

Last month, Codecademy and Warby Parker came together to work on a special Learn SQL from Scratch Capstone Project. It was during this time when I met Ryan Tuck, a Data Engineer at Warby, who played a major part in this partnership. So when he decided to drop by our office for the final QA round, I had to break out my notebook and ask some questions. Enjoy.


Hey Ryan, let’s start off with a question I’ve had for a while — what is a Data Engineer? (Is it similar to a Data Analyst or a Software Engineer?)

At Warby Parker, data engineers are responsible for creating and maintaining the plumbing required to support the data and reporting needs of the business. We use software engineering practices to automate the work of data cleaning, normalizing, and model building so that data is always ready to be consumed by data analysts in every department.

What languages/frameworks do you use at Warby?

On data engineering, we use Python as our general purpose programming language, as do most of the other teams in our Technology department. When it comes to databases, we use PostgreSQL for the majority of our SQL needs, and are beginning to use Amazon Athena and Google BigQuery for some of our larger datasets. We use Looker as our exclusive business intelligence entry point to all of this data.

What are some of the projects you worked on?

I’ve had the privilege of working with a lot of of smart people in every department at our company to help them solve their varied data needs, from reconciling financial data with the Accounting team to automating and modeling standardized performance metrics for our team of over 200 customer experience advisors.

As part of a team of five supporting the data needs of a rapidly growing company, I’ve tried where possible to focus on helping our analysts solve their own problems. This includes helping people learn Python and commit to our codebase, guiding the creation of data models in SQL, and encouraging people to submit pull requests to add features in Looker, our BI tool.

Seeing dozens of otherwise “non-technical” colleagues opening up PRs on a daily basis, and consequently being part of the democratization of tech that we value at Warby Parker, is probably the most rewarding “project” I’ve been a part of.

One project finished recently during our first annual “Hackweek” is called Pipes, which allows anyone at the company to easily move large amounts of data from wherever to wherever (Looker, Google Sheets, PostgreSQL, BigQuery, etc) on a regular cadence, or manually through a simple one-line chatbot interface. The adoption has been overwhelmingly positive and we’re looking to grow this sort of tooling out even more.

“We use software engineering practices to automate the work of data cleaning, normalizing, and model building so that data is always ready to be consumed by data analysts in every department.”

What got you into the data field?

I’ve always been drawn to analytical fields like math, and became pretty proficient in Excel during some internships in college. Once I had learned to program and learned more about data science and its applications in artificial intelligence, I knew that anything I could do to immerse myself in the world of data would be a step in the right direction.

Three and a half years ago, I landed a job as a junior software engineer at Warby Parker not fully knowing what I was in for, but am so glad I got the opportunity to help build tools to support an interesting and ever-changing data-driven culture here.

Where did you learn SQL and Python?

I had a background in C++, and was exposed to Python through an Intro to Data Science course. When Warby Parker hired me onto the Data team in 2015, I had never written a SQL query in my life, but picked it up quickly and within a few months started up internal SQL training classes, which I still teach on a monthly basis.

What does your tattoo say?


The ultimate cheatsheet.

This is Bayes’ Theorem, which is an equation that describes how to update probabilities given new evidence. Two summers ago I worked on building a tool to help predict weekly fantasy football performance. Some colleagues suggested a Bayesian approach would be appropriate, since there aren’t really enough data points in an NFL season to be able to use statistical approaches that require larger datasets, and I’d want to regularly update my predictions after each player’s latest performance.

I did a deep dive into understanding the (simple) math underlying Bayes’ Theorem and came out of that experience with a whole new worldview, understanding my entire knowledge of the world as a big and intricate probabilistic model that I was continuously updating with every experience I ever have. It was pretty transformative, and I figured that was worth a tattoo.

What is a concept in SQL/Python that’s essential to your work?

Donald Knuth said, “Premature optimization is the root of all evil.” I’ve generally found this to be true, and try to live by it in my work. For example, I’ll generally prefer to keep a data model simple by rebuilding it for all time on a daily basis using a single SQL query instead of making a more complicated model that requires iteratively adding to a table, keeping track of state, updated timestamps, when something last ran, etc.

A wise man once said, “Duplicating data makes things go fast,” but databases are already impressively fast to begin with, without implementing anything to improve performance. Ultimately, I almost always approach a problem thinking about optimizing for my time over machine time, for readability over performance, and for introducing as little cognitive overhead as is required by the problem at hand. Only once performance issues or readability issues present themselves will some code be worth a rewrite.

Last question! Since you wrote Warby Parker’s internal SQL training courses, I know there gotta be some inner Curriculum Developer in you. Can you teach a SQL concept in 2 minutes?

Sure! Have you ever written a query that yields some result set and you think, “I’d love to query the stuff I just produced like it was a table?” Enter the WITH clause.

Suppose I have a mega query that gives the transaction summaries:

select
    transactions.date as transaction_date,
    sum(items.price) as total_cost,
    count(*) as number_of_items
from
    transactions
inner join
    customers
    on
    customers.id = transactions.customer_id
inner join
    transaction_items
    on
    transactions.id = transaction_items.transaction_id
inner join
    items
    on
    items.id = transaction_items.item_id

Using WITH, I can create a temporary table within my query that I can SELECT from and treat it just like a regular old table.

I will put everything from the previous query in a parentheses and use WITH to give it the name transaction_summaries.

Then I’ll apply the date and customer filtering down below for a more readable query, to separate out all the JOIN logic from the actual WHERE filters that I want to apply on that data.

with transaction_summaries as (
  select
      transactions.date as transaction_date,
      sum(items.price) as total_cost,
      count(*) as number_of_items
  from
      transactions
  inner join
      customers
      on
      customers.id = transactions.customer_id
  inner join
      transaction_items
      on
      transactions.id = transaction_items.transaction_id
  inner join
      items
      on
      items.id = transaction_items.item_id
)

select 
        * 
from 
        transaction_summaries
where 
        first_name = 'beyonce'
        and 
        transaction_date > '2018–01–01'
order by 
        total_cost desc
limit 
        5

If you’re familiar with subqueries, this does a similar thing but makes the SQL far more readable, even if your query isn’t quite as performant as it would have been. This is essentially an implementation of the mantra “Don’t Repeat Yourself” that’s common in the world of programming.

Incredible. And love the SQL styling! 😍


Huge shout out to Ryan and the whole Warby Parker team for making this partnership happen. Special hat tips for behind-the-scenes support from:

  • Lon Binder, Chief Technology Officer, Warby Parker
  • Maddie Tierney, Executive Assistant, Warby Parker
  • Kayla Robbins, Executive Assistant, Warby Parker
  • Kaki Read, Senior Communications Manager, Warby Parker
  • Isabel Seely, Senior Brand Manager, Warby Parker

It’s been an absolute pleasure. And of course, the fam at Codecademy. You know who you are. Couldn’t do it without you.

Ask a Software Engineer: Airbnb Edition 🏡

0
Ask a Software Engineer: Airbnb Edition 🏡
A Day in the Life of a Software Engineer (via Life of Luba)

With Airbnb came a revolution of sorts in the world of vacation travel and culture. We sat down with Luba Yudasina, a YouTuber, an opera singer, and a Software Engineer on the Airbnb’s Homes Platform team, to discuss software engineering and her programming journey—from Codecademy to Airbnb!


Hey Luba, let’s start with the basics! What does a Software Engineer on the Platform team do at Airbnb?

Homes Platform’s mission is to create the building blocks to power all Homes categories. Any project undertaken by our team should be reusable and extensible in some way. This means that as a backend engineer, I have a lot of opportunities to work on impactful technical projects that create systems and services to support Homes, as well as collaborate across teams to come up with the best architectural decisions and designs.

Recently, our team wrote a blog post on classifying Room Types into categories using Machine Learning and computer vision. The room-type classification problem largely resembles the ImageNet classification problem, except our team’s model outcomes are customized room-types.

After a few experiments with various models, the team chose ResNet50 due to its good balance between model performance and computation time. To make it compatible with our use case, we added two extra fully connected layers and a Softmax activation in the end.

Categorizing listing photos into room types (via the Airbnb Engineering & Data Science blog)

What languages/frameworks do you use at Airbnb?

At Airbnb we use Ruby, Java, Kotlin, JavaScript, Swift, Ruby on Rails, React for frontend, iOS and Android for native development.

Let’s rewind a little bit. Coming from a chemical engineering background in college, how did you make the switch into programming?

I went to the University of Waterloo in Canada—a university with the biggest co-op program in the world. Co-op means that to obtain a bachelor’s degree you must complete a certain number of internships. If you are in Engineering at Waterloo, you must complete 5 internships to graduate.

In my first and second years, I interned at chemical engineering companies and afterwards I couldn’t see myself working in the field full-time. That’s why I’m particularly grateful that I studied at Waterloo: if not for co-op, I probably would not have realized I didn’t want to work in chemical engineering until getting a full-time job after graduation.

I happened to have a lot of friends in Computer Science and Software Engineering right when I realized Chem Eng wasn’t for me. They really encouraged me to try coding, and when I decided to follow their lead I never looked back! My first online programming course was Web Development on Codecademy 🙂

“It’s a really cool time to be a software engineer and even cooler to be a female software engineer, because this is the time when women start to embrace their own unique identities and be ok with not being ‘one of the dudes.'”
-Luba Yudasina

How did you land an internship at Yelp?

When I decided I wanted to learn computer science on my own, my goal was to get an internship in the field because working as a software engineer at a tech company would be the best test to really know if it was for me.

I happened to be in Munich, Germany on academic exchange for a whole year when I was learning how to code, so I hustled as much as I could while being there to get experience to learn quicker and have something to put down on my tech resume.

Almost immediately after arriving in Germany, I got a part time job as a developer at a game publishing company. I had a good friend in Computer Science at my German university: her and I ended up working on an Android app as a side project, etc. When I was ready, I started preparing for technical interviews. I then leveraged my network to refer me to companies and do mock technical interviews with me.

Yelp was really random though—a Yelp recruiter looked at my LinkedIn profile and didn’t even message me, but I messaged them anyway asking about internship opportunities, and that’s how I got my interview there!

1_EHELVEIPNp19gv_RsIU-Ng

Airbnb HQ in San Franciso

What is an essential app/item in your day-to-day?

Code searching! A lot of software engineering is problem solving and a lot of it is understanding other people’s code and the reasoning behind writing it a certain way. Searching through the codebases is almost essential to my day to day. Whenever I build something new or build on top of already existing tech, I need to understand how it works and is written, and code search is vital to this.

At Airbnb we use Google’s Codesearch for these purposes, but developers (myself included) also frequently use their IDEs to search for relevant code. I mostly use RubyMine or IntelliJ (depending on the codebase I’m working with).

In your videos, you’ve mentioned the intersection of gender and technology. Can you speak a bit more about that?

It’s a really cool time to be a software engineer and even cooler to be a female software engineer, because this is the time when women start to embrace their own unique identities and be ok with not being “one of the dudes.”

I think it’s particularly important to redefine the stereotypes, and I hope that with my own example I can show young girls and women interested in the field that you don’t have to give up your feminine side to be a software engineer and still be into fashion, or makeup, or art (I personally sing opera) and have other interests outside of coding and be successful in the field.

Before we wrap up, do you have anything else you would like to say to our learners?

Don’t be discouraged, learn and absorb as much as you can! If you don’t understand a concept or can’t build a project right away, know that with practice, perseverance and concentration you will get there!

Take advantage of such amazing tools as Codecademy that are there for you to take and learn. Learning anything new can be frustrating, but knowing that you can do it, staying curious, asking questions and not losing your motivation is the key to success.


Huge shoutout to Luba for this insightful interview. It’s always incredibly moving to see a Codecademy learner go on to do bigger things. Go subscribe to her YouTube channel, Life of Luba.

And thank you to the whole Homes Platform/Engineering team at Airbnb for the support. Check out their wonderful open source projects on airbnb.io.

Momo

0
Momo

Have you ever heard of Momo, the demon character who is said to pop up on YouTube videos and menace children? What have you heard? Do you believe the stories about her?

What other myths, urban legends and creepypasta scare you? Do you believe any of them? What do you think makes stories like these go viral?

Tell us in the comments, then read the related article to learn about the moral panic around Momo.

Find many more ways to use our Picture Prompt feature in this lesson plan.

Word + Quiz: exacerbate

0
Word + Quiz: exacerbate

1. make worse

2. irritate

_________

The word exacerbate has appeared in 562 articles on NYTimes.com in the past year, including on Feb. 26 in “Oregon to Become First State to Impose Statewide Rent Control” by Mihir Zaveri:

Some say that by limiting the amount of rent landlords can collect, they will take the properties off the market, limiting the housing supply at a time when there already is a crunch.

“While the intent of rent control laws is to assist lower-income populations, history has shown that rent control exacerbates shortages, makes it harder for apartment owners to make upgrades and disproportionally benefits higher-income households,” Doug Bibby, president of the National Multifamily Housing Council, which represents the apartment industry, said in a statement Tuesday about the Oregon bill.

_________

Learning With: ‘“Mockingbird” Producer Reconsiders, Letting Local Plays Go Forward’

0
Learning With: ‘“Mockingbird” Producer Reconsiders, Letting Local Plays Go Forward’

Before reading the article:

Have you read Harper Lee’s novel “To Kill a Mockingbird”? Have you ever watched a movie or play version of the novel? If so, what are your thoughts?

Are you aware there is a new theatrical production of “To Kill a Mockingbird,” written by Aaron Sorkin, that premiered on Broadway in late 2018?

Read this excerpt from the New York Times review by Jesse Green:

Also effective, exhilarating even, are the interventions by which Mr. Sorkin set out to correct — or, let’s say, extrapolate — the novel’s politics for our time.

He had to do something. In a novel, we accept the worldview of the narrator, however limited or objectionable. Scout, who is barely 6 at the start of the story, can use words in print that would make her instantly unsympathetic onstage. We also accept that a first-person portrait of a white child’s moral awakening to racism will primarily focus on how it affects the white people around her.

But onstage, a work about racial injustice in which its principal black characters have no agency would be intolerable, so Mr. Sorkin makes a series of adjustments. With Scout’s point of view subordinated, we see Atticus through our own eyes instead of hers, making him the firm center of the story.

This gives Mr. Sorkin room to expand the roles of the two main black characters Atticus deals with: his client Tom (Gbenga Akinnagbe) and his housekeeper, Calpurnia. In Tom’s case, the expansion is subtle, largely a matter of giving him the dignity of voicing his own predicament. “I was guilty as soon as I was accused,” he says — adapting a line that was Scout’s in the book.

Calpurnia (LaTanya Richardson Jackson) gets a bigger remake. Bossy toward the children but deferential toward white adults in Lee’s account, she serves in the play as Atticus’s foil and needling conscience. Mocking his argument that Maycomb needs more time to overcome racism, she says, “How much time would Maycomb like?” Their tart but loving squabbles remind Scout of hers with Jem: They behave, she realizes, like brother and sister.

If you’re interested in learning more, then read the entire review. Does the review make you want to see the play? Why?

Now, read the article, “‘Mockingbird’ Producer Reconsiders, Letting Local Plays Go Forward,” and answer the following questions:

1. Who is Scott Rudin? What “barrage of criticism” did he face? Why?

2. What did Mr. Rudin do as an attempt to make peace with the theater companies affected by the contractual provision he holds for his version of the play “To Kill a Mockingbird”?

35+ Legit Master’s Degrees You Can Now Earn Completely Online

0
35+ Legit Master’s Degrees You Can Now Earn Completely Online

Starting several years ago, massive open online course (MOOC) providers began releasing online degree programs, in partnership with universities. This trend started out slowly, but has been gaining momentum.

The first MOOC-based degree, the Online Master of Science in Computer Science (OMSCS) from Georgia Tech and Udacity, was announced back in 2013. It took two years for the next one (the iMBA from the University of Illinois and Coursera) to be announced in 2015. By early 2017 at least 9 master’s degrees were available through MOOC platforms.Then last year, things really took off. Now, at the beginning of 2019, there are no fewer than 36 degrees you can complete online, through a MOOC platform. Several others have been announced but are not yet open for enrollment.

MOOC-based degrees offer a number of advantages, including lower cost as compared to other online and on-campus degrees, flexibility, and pay as you go pricing. (Class Central’s Dhawal Shah summarized the differences between MOOC-based degrees and other kinds of online degrees in an article for EdSurge last year.)

Another benefit for both prospective students and learners with no intention of enrolling in the full degree program is that many courses which are part of the degree are free to take. That means you can preview a part of the content before committing to anything. (A full list of MOOCs that are part of degree programs and other for-credit offerings can be found on Class Central here.)

It is also worth noting that all of these degrees are fully accredited and recognized. In most cases, the final degree doesn’t in any way indicate that the credential was earned online.

Below, we’ve listed all 36 of the MOOC-based degrees that are currently available.

Computer Science and Engineering Master’s Degrees
Business and Management Master’s Degrees
Data Science and Analytics Master’s Degrees
Cyber Security, IT Management, and Technology Management Master’s Degrees
Public Health, Healthcare, and Public Sector Management Master’s Degrees
Bachelor’s Degrees

Looking at these degrees in aggregate, here are a few summary statistics:

  • The most common subjects for MOOC-based degrees are computer science, IT, data science, engineering, business, and combinations thereof (e.g. IT management, cyber security). A few programs focused on healthcare, public health, and public administration and management have begun cropping up.
  • Most institutions offering online degrees are from the US, UK, and Australia, with one notable exception in France (HEC Paris).
  • Among MOOC platforms, FutureLearn leads the pack with 15 degree programs, including one bachelor’s degree. Coursera is close behind with 13 degree programs, also including one bachelor’s. EdX currently offers 7 master’s degrees, with one announced but not currently accepting applications, and several more in the works. Udacity continues to offer one legacy degree program, the OMSCS from Georgia Tech, which was the first MOOC-based degree ever to be offered.
  • Oftentimes, MOOC-based degrees are cheaper than both on-campus and online alternatives. (Both the OMSCS from Georgia Tech and the iMBA are good examples of the cost savings.) However, most MOOC-based degrees still run between $10,000 and $22,000, and some cost more than that. The most expensive MOOC-based master’s degree is the Master of Public Health from the University of Michigan on Coursera. Students who are not resident in Michigan can expect to pay more than $44,000 during two years of study.
  • Especially those degrees from US-based institutions tend to come from prestigious and highly ranked universities, including one Ivy League degree (Computer and Information Technology from the University of Pennsylvania).
  • Most MOOC-based degrees are master’s degrees. However, there are now two MOOC-based bachelor’s degrees, one in Computer Science from University of London and a Bachelor of Arts from Australia’s Newcastle University.
  • 17 universities account for all of the degrees on this list. Of those, 8 are American universities, 5 are Australian, 3 are British, and 1 is French. Coventry University in the UK offers the most degrees (between 8 and 12, depending on how you count). After that, the University of Illinois at Urbana-Champaign offers the second most degrees, with 4 master’s degree programs. Most other universities offer only one or two degrees.
  • Enrolling in a MOOC-based degree program isn’t as simple as registering for a MOOC. Each degree has its own application process (and deadlines), as well as minimum requirements, such as holding a bachelor’s degree; having completed certain kinds of coursework; or submitting standardized test scores like the GRE, GMAT, or TOEFL. Many of these degree programs also have requirements regarding country of citizenship or residency. All of these requirements notwithstanding, the admissions process for MOOC-based degrees may still be quicker and easier than for other similar degree programs.
  • All the online degree programs on this list offer ways to try-before-you-buy (or try-before-you-apply). These are labeled differently on the different platforms (e.g. taster courses on FutureLearn, Specializations on Coursera), but all essentially consist of MOOC coursework you can complete for free or at low cost before enrolling in a degree program.
  • Some MOOC-based degree programs can be completed as quickly or more quickly than on-campus degrees, in as little as one year. Others are designed to be completed part time and may take up to 5 years to finish. One of the two bachelor’s degrees on the list, the Bachelor of Science in Computer Science from the University of London on Coursera, might take up to six years to complete. The good news is that students who take that long to finish the degree will end up spending less than $3,500 per year.

Announced with much fanfare in 2013, Georgia Tech’s Online Master of Science in Computer Science (OMSCS) through Udacity was the first degree you could earn on a MOOC platform. The entire degree was supposed to cost less than $7,000. The tuition fee has since then increased from $402 per three-credit hour to $510, but it is still one of the most cost effective (and most popular) master’s degrees in computer science on the market. Enrollment for spring semester 2019 is nearly 9,000 students, making the OMSCS one of the largest computer science degree programs in the world. So far, more than 2,000 students have graduated. Going forward, another 1,000 are expected to graduate each year.

For several years, the OMSCS was the only degree of its kind on the market. However, there are now four MOOC-based masters degrees in computer science. Launched in 2018, the Master of Computer and Information Technology from the University of Pennsylvania’s and Coursera is the first MOOC-based degree to be offered by an Ivy League university. Two other degrees on this list are offered by the #5 and #10 graduate schools for computer science according to U.S. News & World Report (University of Illinois, Urbana-Champaign and University of Texas, Austin, respectively).

Another first-of-its-kind degree, the Master of Science in Electrical Engineering from the University of Colorado, Boulder, was announced in 2018.


Zvi Galil, Dean of Georgia Tech’s College of Computing, speaking to OMSCS students at an event organized by Udacity at SXSW EDU in 2016.

Online Master of Science in Computer Science (OMSCS), Georgia Tech via Udacity

Total Cost: $8,000
Duration: 24-60 months

Master of Computer Science, University of Illinois at Urbana-Champaign via Coursera

Total Cost: $21,000
Duration: 12-36 months

Master’s Degree in Computer Science, University of Texas at Austin via edX

Total Cost: $10,000
Duration: 18-36 months

Master of Computer and Information Technology, University of Pennsylvania via Coursera

Total Cost: $26,300
Duration: 24-40 months

Master of Science in Electrical Engineering, University of Colorado, Boulder via Coursera

Total Cost: $20,000
Duration: 24 months

Master of Computer Science, Arizona State University via Coursera

Total Cost: $15,000
Duration: 18-36 months

Business degrees abound on the MOOC platforms. The University of Illinois at Urbana–Champaign launched the first MOOC-based MBA in 2015 on Coursera. The iMBA costs around $22,000 and according to students is highly interactive, with live global classrooms, team projects, and personal contact with top professors. The University of Illinois’s second degree program, a master’s in accounting (the iMSA) is similarly priced and is even more prestigious; the on-campus program is #3 on US News & World Report’s ranking of graduate programs in accounting.

Another business offering on Coursera, the MSc in Innovation and Entrepreneurship, comes from HEC Paris, one of Europe’s highest ranked business schools. Coventry University offers 5 different version of its MOOC-based MBA program on the FutureLearn platform, with focus areas including healthcare, artificial intelligence, cyber security management, and sustainable tourism.

iMBA, University of Illinois, Urbana-Champaign via Coursera

Total Cost: $22,000
Duration: 24-36 months

iMSA, University of Illinois, Urbana-Champaign via Coursera

Total Cost: $22,050 – $27,170
Duration: 18-36 months

MSc in Innovation and Entrepreneurship, HEC Paris via Coursera

Total Cost: $22,600 (20,000 EUR)
Duration: 18 months

MBA (various areas of focus), Coventry University via FutureLearn

Total Cost: $20,511 (15,900 GBP)
Duration: 24-60 months, part time only

Master’s Degree in Accounting, Indiana University via edX

Total Cost: $21,000
Duration: 15-36 months

Master’s Degree in Marketing, Curtin University via edX

Total Cost: $18,926
Duration: 18-36 months

Global Master of Business Administration, Macquarie University via Coursera

Total Cost: $23,430 ($33,000 AUD)
Duration: 12-18 months

Master’s Degree in Leadership: Service Innovation, University of Queensland via edX

Total Cost: $17,914
Duration: 24 months

MSc Business and Organisational Psychology, Coventry University via FutureLearn

Total Cost: $17,222 (13,350 GBP)
Duration: 24-60 months

MSc Construction Management with BIM, Coventry University via FutureLearn

Total Cost: $19,415 (15,050 GBP)
Duration: 24-60 months

MSc Construction Project and Cost Management, Coventry University via FutureLearn

Total Cost: $19,415 (15,050 GBP)
Duration: 24-60 months

Building on the success of its OMSCS program, Georgia Tech has released a second, similar program, this time on the edX platform. The Online Masters of Science In Analytics (OMS Analytics) can be completed for less than $10,000. Three of Georgia Tech’s OMS Analytics foundational courses form the Analytics: Essential Tools and Methods MicroMasters credential program on edX. It consists of three free online courses: Introduction to Analytics Modeling, Computing for Data Analysis, and Data Analytics in Business.

Costing more than double the price of the OMS Analytics, the University of Illinois’s Master of Computer Science in Data Science is nonetheless a cost effective way to earn a degree from a top-5 computer science school (as compared to on-campus study).  According to its information page, the program builds expertise in four core areas of computer science: data visualization, machine learning, data mining and cloud computing, in addition to building valuable skill sets in statistics and information science with courses taught in collaboration with the University’s Statistics Department and iSchool (ranked #1 among Library and Information Studies Schools.) Like other MOOC-based degrees from the University of Illinois, this one is made up of Coursera Specializations that are accessible by anyone. Two of these Specializations, those on and , are already available.

Online Master of Science in Analytics, Georgia Tech via edX

Total Cost: $9,900
Duration: 12-36 months

Master of Computer Science in Data Science, University of Illinois, Urbana-Champaign via Coursera

Total Cost: $21,000
Duration: 12-36 months

Master of Applied Data Science, University of Michigan via Coursera

Total Cost: $31,688 – $42,262
Duration: 12 months minimum

Universities in the US, the UK, and Australia are offering MOOC-based master’s degrees in cyber security and management of information technology.

Master’s Degree in Cybersecurity, Georgia Tech via edX

Total Cost: $9,920
Duration: 24-36 months

Master of Cyber Security, Deakin University via FutureLearn

Total Cost: $18,659 ($26,280 AUD)
Duration: 24 months

MSc Cyber Security, Coventry University via FutureLearn

Total Cost: $19,425 (15,050 GBP)
Duration: 24-60 months (part time only)

Master’s Degree in IT Management, Indiana University via edX

Total Cost: $21,000
Duration: 15-36 months

Like most courses on MOOC platforms, most degree programs are in the areas of computer science, data science, business, and related fields. However, several MOOC universities and MOOC platforms offer degrees that fall outside of these subjects, mostly in public health and public management related fields. One university that has moved aggressively into online degrees, Coventry University in the UK, even offers a nursing degree you can earn online.

Master of Public Health, University of Michigan via Coursera

Total Cost: $44,520 (may be lower for Michigan residents)
Duration: 20-22 months

Global Master of Public Health, Imperial College London via Coursera

Total Cost: $25,000 (lower for UK residents)
Duration: 24 months

Master of Development and Humanitarian Action, Deakin University via FutureLearn

Total Cost: $8,158 ($11,490 AUD)
Duration: 12 months (full time)

MSc Nursing, Coventry University via FutureLearn

Total Cost: $16,125 (12,500 GBP)
Duration: 24-60 months

MSc Disaster Management and Resilience, Coventry University via FutureLearn

Total Cost: $17,222 (13,350 GBP)
Duration: 24-60 months

MSc Emergency Management and Resilience, Coventry University via FutureLearn

Total Cost: $17,222 (13,350 GBP)
Duration: 24-60 months

The advent of MOOC-based bachelor’s degrees is so recent that only two of them currently exist, and the coursework for these degrees isn’t yet fully developed. The University of London offers a Bachelor of Science Computer Science through the Coursera platform at a total cost of less than $20,000. The Bachelor of Arts from Australia’s University of Newcastle on FutureLearn is more like an on-campus BA program, in that students can choose from a number of majors and minors (though from a more limited catalog than what is offered on campus). Currently, the majors that are available online include English & Writing; Film, Media & Cultural Studies; French Studies; Global Indigenous Studies; History; Japanese Studies; Psychology Studies; and Sociology & Anthropology. The program is still being developed, so more majors will be rolled out progressively, as will advanced coursework. The whole degree is composed of 24 FutureLearn Programs. Each of these costs $3,220, though fees for Australian students may be less.

Bachelor of Science in Computer Science, University of London via Coursera

Total Cost: $13,014 – $19,520 (10,088 – 15,132 GBP)
Duration: 36-72 months

Bachelor of Arts (Multiple Subjects), University of Newcastle via FutureLearn

Total Cost: est. $77,280 (24 Programs x $3,220/Program)
Duration: 36 months or more

Ask a Data Engineer: Warby Parker Edition 👓

0
Ask a Data Engineer: Warby Parker Edition 👓

wp-header

Codecademy’s very own Nick Duckwiler (left) and Ryan Tuck from Warby Parker (right) in our office. (📷: Mitch Boyer)

Last month, Codecademy and Warby Parker came together to work on a special Learn SQL from Scratch Capstone Project. It was during this time when I met Ryan Tuck, a Data Engineer at Warby, who played a major part in this partnership. So when he decided to drop by our office for the final QA round, I had to break out my notebook and ask some questions. Enjoy.


Hey Ryan, let’s start off with a question I’ve had for a while — what is a Data Engineer? (Is it similar to a Data Analyst or a Software Engineer?)

At Warby Parker, data engineers are responsible for creating and maintaining the plumbing required to support the data and reporting needs of the business. We use software engineering practices to automate the work of data cleaning, normalizing, and model building so that data is always ready to be consumed by data analysts in every department.

What languages/frameworks do you use at Warby?

On data engineering, we use Python as our general purpose programming language, as do most of the other teams in our Technology department. When it comes to databases, we use PostgreSQL for the majority of our SQL needs, and are beginning to use Amazon Athena and Google BigQuery for some of our larger datasets. We use Looker as our exclusive business intelligence entry point to all of this data.

What are some of the projects you worked on?

I’ve had the privilege of working with a lot of of smart people in every department at our company to help them solve their varied data needs, from reconciling financial data with the Accounting team to automating and modeling standardized performance metrics for our team of over 200 customer experience advisors.

As part of a team of five supporting the data needs of a rapidly growing company, I’ve tried where possible to focus on helping our analysts solve their own problems. This includes helping people learn Python and commit to our codebase, guiding the creation of data models in SQL, and encouraging people to submit pull requests to add features in Looker, our BI tool.

Seeing dozens of otherwise “non-technical” colleagues opening up PRs on a daily basis, and consequently being part of the democratization of tech that we value at Warby Parker, is probably the most rewarding “project” I’ve been a part of.

One project finished recently during our first annual “Hackweek” is called Pipes, which allows anyone at the company to easily move large amounts of data from wherever to wherever (Looker, Google Sheets, PostgreSQL, BigQuery, etc) on a regular cadence, or manually through a simple one-line chatbot interface. The adoption has been overwhelmingly positive and we’re looking to grow this sort of tooling out even more.

“We use software engineering practices to automate the work of data cleaning, normalizing, and model building so that data is always ready to be consumed by data analysts in every department.”

What got you into the data field?

I’ve always been drawn to analytical fields like math, and became pretty proficient in Excel during some internships in college. Once I had learned to program and learned more about data science and its applications in artificial intelligence, I knew that anything I could do to immerse myself in the world of data would be a step in the right direction.

Three and a half years ago, I landed a job as a junior software engineer at Warby Parker not fully knowing what I was in for, but am so glad I got the opportunity to help build tools to support an interesting and ever-changing data-driven culture here.

Where did you learn SQL and Python?

I had a background in C++, and was exposed to Python through an Intro to Data Science course. When Warby Parker hired me onto the Data team in 2015, I had never written a SQL query in my life, but picked it up quickly and within a few months started up internal SQL training classes, which I still teach on a monthly basis.

What does your tattoo say?


The ultimate cheatsheet.

This is Bayes’ Theorem, which is an equation that describes how to update probabilities given new evidence. Two summers ago I worked on building a tool to help predict weekly fantasy football performance. Some colleagues suggested a Bayesian approach would be appropriate, since there aren’t really enough data points in an NFL season to be able to use statistical approaches that require larger datasets, and I’d want to regularly update my predictions after each player’s latest performance.

I did a deep dive into understanding the (simple) math underlying Bayes’ Theorem and came out of that experience with a whole new worldview, understanding my entire knowledge of the world as a big and intricate probabilistic model that I was continuously updating with every experience I ever have. It was pretty transformative, and I figured that was worth a tattoo.

What is a concept in SQL/Python that’s essential to your work?

Donald Knuth said, “Premature optimization is the root of all evil.” I’ve generally found this to be true, and try to live by it in my work. For example, I’ll generally prefer to keep a data model simple by rebuilding it for all time on a daily basis using a single SQL query instead of making a more complicated model that requires iteratively adding to a table, keeping track of state, updated timestamps, when something last ran, etc.

A wise man once said, “Duplicating data makes things go fast,” but databases are already impressively fast to begin with, without implementing anything to improve performance. Ultimately, I almost always approach a problem thinking about optimizing for my time over machine time, for readability over performance, and for introducing as little cognitive overhead as is required by the problem at hand. Only once performance issues or readability issues present themselves will some code be worth a rewrite.

Last question! Since you wrote Warby Parker’s internal SQL training courses, I know there gotta be some inner Curriculum Developer in you. Can you teach a SQL concept in 2 minutes?

Sure! Have you ever written a query that yields some result set and you think, “I’d love to query the stuff I just produced like it was a table?” Enter the WITH clause.

Suppose I have a mega query that gives the transaction summaries:

select
    transactions.date as transaction_date,
    sum(items.price) as total_cost,
    count(*) as number_of_items
from
    transactions
inner join
    customers
    on
    customers.id = transactions.customer_id
inner join
    transaction_items
    on
    transactions.id = transaction_items.transaction_id
inner join
    items
    on
    items.id = transaction_items.item_id

Using WITH, I can create a temporary table within my query that I can SELECT from and treat it just like a regular old table.

I will put everything from the previous query in a parentheses and use WITH to give it the name transaction_summaries.

Then I’ll apply the date and customer filtering down below for a more readable query, to separate out all the JOIN logic from the actual WHERE filters that I want to apply on that data.

with transaction_summaries as (
  select
      transactions.date as transaction_date,
      sum(items.price) as total_cost,
      count(*) as number_of_items
  from
      transactions
  inner join
      customers
      on
      customers.id = transactions.customer_id
  inner join
      transaction_items
      on
      transactions.id = transaction_items.transaction_id
  inner join
      items
      on
      items.id = transaction_items.item_id
)

select 
        * 
from 
        transaction_summaries
where 
        first_name = 'beyonce'
        and 
        transaction_date > '2018–01–01'
order by 
        total_cost desc
limit 
        5

If you’re familiar with subqueries, this does a similar thing but makes the SQL far more readable, even if your query isn’t quite as performant as it would have been. This is essentially an implementation of the mantra “Don’t Repeat Yourself” that’s common in the world of programming.

Incredible. And love the SQL styling! 😍


Huge shout out to Ryan and the whole Warby Parker team for making this partnership happen. Special hat tips for behind-the-scenes support from:

  • Lon Binder, Chief Technology Officer, Warby Parker
  • Maddie Tierney, Executive Assistant, Warby Parker
  • Kayla Robbins, Executive Assistant, Warby Parker
  • Kaki Read, Senior Communications Manager, Warby Parker
  • Isabel Seely, Senior Brand Manager, Warby Parker

It’s been an absolute pleasure. And of course, the fam at Codecademy. You know who you are. Couldn’t do it without you.