fbpx
Home Blog Page 1427

Career and internship advice for students from the Codecademy team

0
Career and internship advice for students from the Codecademy team

Choosing a career path while in college can feel like a huge undertaking. You may still be trying to decide what exactly you want to study, trying to navigate finding an internship, or figuring out what type of job you want to get when you graduate.

Because hindsight is 20/20, we interviewed five members of the Codecademy team who are living their career dreams to find out what advice they’d give to their former selves, when they were in college. We’ve gathered their wisdom here for you on everything from landing an internship to deciding what you want to do after graduation. Read on for their advice!

Meet the team

Before we get into the questions and advice, we thought we’d give a quick introduction to the team — how they got their start and what they’re working on now.

Casey, Software Engineer: Casey got started in software engineering by coding as a hobby throughout college and an early job in customer support. Cut to 2020 where he has joined the team at Codecademy as a front-end developer. He loves to work on projects that lie in the intersection of technology and the creative arts.

Kip, Engineering Manager: Kip first started coding at the age of 8 (in order to subvert a household ban on video games) and they’ve been hooked ever since. Though they started programming primarily for themselves, they realized quickly that their true passions lay in building systems where others could realize their full potential, either as creatives or professionals.

Josh, Frontend Developer: Josh has been programming for a few years at this point, but still feels like everything is new and fresh and exciting. He started off with low-level C++ development but quickly found a true love in interactive web development and improving tools for other frontend developers.

Tracy, Data Scientist: Tracy spent several years gaining exposure to a variety of industries and fields, including psychology, coding, and management. After finding her passion for data science, she invested her time into gaining the skills needed to transition from the Product to Data Science Team at Codecademy.

Catherine, Head of Data Science: Catherine is Head of Data Science at Codecademy, where she has spent the last 3 years building and growing a team of data scientists. She has a background applying data science tools and concepts to understand patterns in consumer behavior. Catherine has her bachelor’s degree in the social sciences (Sociology) and was among the first in her family to graduate from college.

Career and internship advice

Now that you’ve met the team, find out how they answered some of the most frequently asked questions about choosing a career path, finding an internship, and more.

Q: How do I know what I want to do when I graduate?

Kip: Try lots of things, even if they don’t seem like they’d be all that relevant. I went into school expecting to be a game developer and realized by the end that what I actually love doing is sharing how exciting coding is.

Josh: You’ll find it if you keep applying yourself to the things you love. Computers, programming, all that stuff — if you enjoy it and it can make money, don’t worry about whether you’re good enough. Keep learning.

Catherine: You don’t need to know exactly what you want to do when you graduate. Just figure out what you don’t like to do and slowly cross things off that list! Back in college, I took a lot of different courses to help me narrow down what I liked and what I didn’t like.

Q: How do I get experience to put on my resume before I get an offer?

Casey: Try to get involved in open-source projects or mentorship programs through your school. Most importantly, build skills by working on projects that are fun for you in your spare time.

Josh: Projects! Projects! Projects! Regular classwork is a great experience source, but it’s shared by all your classmates. Do as much as you can to put yourself ahead and get even more experience.

Tracy: If you have previous work experience (e.g., in a summer job), there are still several transferable skills, such as things like teamwork/building, communication, organization, etc. Outside of previous work experience, it’s helpful to volunteer/participate in relevant organizations, take online courses, and create a portfolio of projects. These can also be hosted on a personal website.

Catherine: Were you a teaching assistant? Did you have some type of leadership role (paid or unpaid)? Do you have knowledge of specific tools, programming languages, or domains? Any projects, volunteer work, or part-time jobs? Put all of that on your resume! Any experience you have is valuable.

Q: How do I represent what I learned at school or at Codecademy on my resume?

Casey: Pick the two or three achievements you’re most proud of and list concisely (think bullet points not paragraphs) what you learned and how you contributed to their successful completion. Generally, project-based work is best to include because it demonstrates your ability to integrate what you’ve learned. It’s important to be concise because oftentimes recruiters are reading a lot of resumes and it makes their job easier when they can quickly find the qualities that make you shine.

Kip: You can include specific courses within the education section of your resume, or call them out in accomplishments / projects.

Catherine: Try to tie what you learned to real-world applications. When I first graduated, I focused on demonstrating my knowledge of building the fanciest models and data science applications. The reality is most entry level jobs (and even mid-level and senior jobs) want to know that you have the foundational un-sexy skills too: data cleaning, communication, time management, pragmatism. Focus on core skills and understanding real-world applications of the work you’ve done. Try to apply what you learned at school or at Codecademy to real-world problems through hands-on projects.

Q: How do I find internships to apply to?

Casey: Start by finding companies you’re especially interested in and applying directly. Feel free to message hiring teams through their contact channels (forms, social media, etc) and ask what makes a strong internship application. It rarely hurts to apply. Even if you don’t meet the criteria for one hiring cycle, it puts you on a company’s radar and gives you a chance to demonstrate your growth in the next hiring cycle. Also check out resources at your school or sites like Glassdoor.

Kip: I recommend applying to companies that you’d be excited to work for, even if they don’t have official internship offerings. There’s a lot of rejection, but there’s also a lot of opportunities to connect with people who otherwise wouldn’t get a chance to meet you.

Tracy: In addition to searching online at Job Boards, some ways to find internships include reaching out to your network on LinkedIn or within the Community for referrals, participating in online or in-person meetups and speaking with company representatives about your experience or interests. If you have specific places in mind you’d like to work, try reaching out directly to individuals within the company expressing your interest, background, and skillset, and seeing if there are opportunities now or in the future.

Q: How do I ace an internship interview?

Casey: Learn about the company and be prepared to talk about why you’d be excited to intern there. Polish up any projects you’d like to show off and be ready to discuss them.

Kip: Definitely study up on algorithms and data structures; most companies will run a pretty standard engineering interview for their internship programs. Have a set of projects to talk about, especially ones in group settings.

Josh: Practice interviewing the way the companies you’re applying to will interview you. Hopefully that’ll be real-world projects, collaborating with others, and general personal skills… but for many that’s nitpicky data structures and algorithms questions.

Tracy: In addition to the standard measures of writing and reviewing your resume, cleaning up LinkedIn, and preparing technically, it’s helpful to prepare for interviews for internships by (1) having your “story” (i.e., a 30-second “pitch” about yourself – your background, interests, motivations, goals), (2) researching typical questions that come up in an interview and preparing answers, (3) researching the company itself to showcase your interest, and (4) being confident – remind yourself along the way that you have the skillset and will land an internship.

Catherine: Learn practical skills. Make sure you can demonstrate that knowledge in interviews. For data jobs, this means learning SQL or about data cleaning concepts. It also means practicing effective communication and time management.

Q: What Codecademy courses would be most useful to take?

Kip: We have a new set of interview prep courses that can help you study the types of problems that come up in interviews. Other than that, explore what you’re interested in and be willing to take a chance on switching gears.

Josh: Depends on your area of interest!

Tracy: It depends on what you’re interested in. If you’re not sure, try out a few courses or a Career Path in Web Development and in Data Science.

Q: Any other advice that you would give to yourself in college, knowing what you know now?

Casey: Don’t measure your success against others, don’t stress too much, and ask for help when you need it.

Kip: It’s not only okay to make mistakes, but encouraged; you learn so much from the mistakes you make and become better for it.

Josh: Don’t forget to save time for yourself. Burnout is real.

Tracy: It always works out how it should, and it’s OK to view the next several years as an exploratory time to figure out what interests and motivates you.

Catherine: It gets easier! It took me over 200+ applications to find my first full-time job after college. My second job took 100+ applications. My third job took 5 applications. Know that there will be ups and downs, but also that work and school do not define your life. You are more than just your grades and your job title.

What’s next?

Just like Catherine says, while thinking about the future may feel a little overwhelming, “it gets easier.” And one of the things that helps a lot is connecting with and learning from other people — whether it’s the Codecademy team or your fellow Codecademy learners.

If you have more questions or are just interested in hearing about the experiences of others learning to code, join our community. Ask questions, get support, teach, and learn something new. We hope to see you there!

Welcome to CS101: A livestreamed introduction to Computer Science

0
Welcome to CS101: A livestreamed introduction to Computer Science

Join us for a semester-long intro to Computer Science! Over the course of the next 8 weeks, we’ll be hosting a live web series covering fundamental topics in Computer Science.

Our Curriculum Developers will introduce you to CS fundamentals, including how to think like a programmer. You’ll solve coding challenges and learn how to build basic programs in Python. We’ll be streaming live on Tuesdays at 1pm ET from September 1 through October 20.

The content of CS101 Live is similar to what you might see in the first few months of your first college semester in Computer Science. We’ll be working in Python. However, the content we’ll cover is fundamental to almost every programming language.

How to Watch

Every Tuesday at 1pm ET, we’ll be streaming our weekly session to YouTube, Twitch, Twitter, and Facebook. These sessions will run for approximately 1 hour.

You can find more information about each week’s session on the Codecademy Events Page. Register through the individual event pages to get an email reminder and mark it on your calendar so you don’t forget. We’ll also be updating this blog post with each week’s session after it happens so you can catch up on anything you miss.

Syllabus

Each week, we will be completing a module from our CS101 Course. This is a Pro course that has been specifically created for this livestream series. The stream will be free to everyone, but to code along with us, you’ll have to be a Pro member. We also recommend looking through the module ahead of time so you can come to the stream prepared to ask questions.

Here’s what we’ll be covering each week. Click the “Register” links to sign up.

CS101 #1: Syntax and Variables

September 1, 2020 at 1pm EST
REGISTER

Let’s get started by writing our first program in Python. In this session, we’ll cover basic Python Syntax and Variables. We’ll also talk about Python in general. What is it used for? How is it similar and different from other programming languages? What does it mean to think like a programmer?

CS101 #2: Functions

September 8, 2020 at 1pm ET
REGISTER

Now that we can write basic Python programs, we’ll learn how to structure our code using functions. We will explore what functions are used for, what it means to give functions arguments, and why you might want to return a value from a function. We’ll end the session by going through some function-based code challenges.

CS101 #3: Control Flow

September 15, 2020 at 1pm ET
REGISTER

Most programs branch in some way – if the user chooses Option 1, they’ll be met with Result A. If they choose Option 2, they’ll see Result B. We’ll explore how to make these branching paths by using conditionals in Python. Once again, we’ll finish this session by presenting a handful of code challenges using conditionals.

CS101 #4: Lists

September 22, 2020 at 1pm ET
REGISTER

So far our programs have used a handful of variables to store data. But what if we wanted to write a program that used even more data? Creating hundreds (or even thousands) of variables would be a chore! In this session, we’ll explore how to use lists to make our programs even bigger.

CS101 #5: Loops

September 29, 2020 at 1pm ET
REGISTER

Now that we can create programs using lists that store lots of data, we want to actually use that data! By learning how to write loops in Python, we can quickly write code that works with thousands of pieces of data. Our programs are starting to be more and more complicated. We’ll test our knowledge on everything we’ve learned by trying some coding challenges at the end of the day.

CS101 #6: Strings

October 6, 2020 at 1pm ET
REGISTER

Up until now, most of our programs have only been using numbers. Let’s start to think about how we can incorporate text into our programs using Strings! This is our first exploration into a vastly different data type in Python.

CS101 #7: Dictionaries

October 13, 2020 at 1pm ET
REGISTER

Between Integers, Strings, and Lists, we’ve seen a handful of data types in Python. In this session, we’ll explore Dictionaries. Dictionaries are a powerful data type that can incorporate everything we’ve learned so far. We’ll explore why we might want to use dictionaries and how they differ from Lists.

CS101 #8: Classes

October 20, 2020 at 1pm ET
REGISTER

In our final session, we’ll introduce you to the world of Object-Oriented Programming. We’ve spent 7 weeks working with data structures that come built-in to Python by default. We’ll now discover how to build and use our own data structures by learning about Classes and Objects.

Front end vs. back end: Where should you start?

0
Front end vs. back end: Where should you start?

You may have heard the phrases “front end” and “back end” being tossed around in reference to programming before. If you are new to programming, you might be wondering what these terms actually mean.

At a high level, the “front end” is what visitors or users will see when they interact with a program, application, or platform. The “back end” is where programmers create processes to make those interactions run smoothly.

When working on a new project, software developers build programs from the ground up. Most applications are powered by both front-end and back-end programming languages.

But the question remains: Should you start learning a front-end or a back-end language first? In this article, we’ll explain the difference between front and and back end development in more detail (and we’ll take a look at full-stack development, too), to help you decide where to get started.

What is front-end development?

Front-end development is all about designing the surface level of applications by changing their style and appearance to meet the needs of the user or customer. To put it simply, the front end manages the parts of websites and applications that users actually see and interact with to perform certain tasks.

When people think of the front end, they usually associate it with the style of a website — such as the page layout, menus, and images. Front-end developers are responsible for updating company pages, customizing layouts, adding animated elements, ensuring accessibility, and more.

Check out the following video and read on to find out more about how to get started with front end development.

Front end programming languages

What languages are used in front end development? Generally, the front end uses HTML, CSS, and JavaScript.

HTML is the structural backbone of a site, CSS (Cascading Style Sheets) is the custom skin that defines the style of the visuals, and JavaScript affects how elements on the page move around.

You’ll also want to familiarize yourself with some front-end frameworks like React, Vue, and Angular. Frameworks are specialized technologies that help you set up applications. Rather than writing everything from scratch, frameworks allow you to speed up the development process.

Getting started with front-end development

Interested in learning more about front-end development? We suggest picking up the fundamentals of web development with HTML/CSS as they’re the foundation of all web pages. You could start with the Learn how to build websites Skill Path.

Even if your ultimate goal is to become a back end or full stack developer, experienced developers might recommend that you master front-end development first. By understanding how the front end of websites are built, you can identify ways to make applications run more smoothly behind the scenes. If you want to learn about it all, check out our Web Development Career Path.

What is back-end development?

Back-end development dictates how programs function by creating hidden processes that run behind the scenes. Still, there is a lot more to the back end than just controlling the overall functionality of an app or a website. It also details what happens on the server and database.

What developers call the back end is what’s operating in the background, unseen without peering into the source code. Think of the front end as a menu at a restaurant: It allows you to order something from a list of items that are brought out from another room.

Think of the back end as the kitchen. It acts as a hidden compartment where the chef is preparing your food. There needs to be a way for the customer to communicate with the chef, so the waiter acts as the middleman by sending orders to the kitchen. The back-end developer is the waiter who handles the website database using a back end, or server-side, language.

Back end programming languages

There are a whole variety of programming languages used on the back end. Here at Codecademy, we teach back-end development primarily in JavaScript, Python, and C#. When you’re starting out, we recommend focusing on JavaScript, as having a single language for front end and back end makes for an easier path towards strong full stack development.

Interested in learning about back-end frameworks? Check out Express, Flask, and asp.net. We also recommend checking out this great MDN Web Docs article on server-side frameworks and how to select one.

What is full-stack development?

Full-stack development refers to a combination of front-end and back-end development. The programmer will be interacting with both client and server-side functions. A full-stack developer is a hybrid of those two roles, well-versed in multiple areas and capable of designing entire websites or applications from scratch.

Full-stack developers wear many different hats. Their versatility allows them to contribute to any stage of the software development cycle. One advantage of being a full-stack developer is that you’ll be able to recognize what makes a website intuitive and easy to use, as well as how to build it most effectively.

Getting started

If you’re interested in learning how to design interactive websites, you can get a feel for both the front end and the back end by taking our Web Development Career Path.

This path starts out by teaching you the basics of HTML and then progresses quickly through CSS, JavaScript, and React. By the end, you should have a good idea of what interests you most so you can decide whether front-end, back-end, or full-stack development is for you!

60 Talented Educators Join The New York Times Teaching Project

0
60 Talented Educators Join The New York Times Teaching Project

In July, we officially welcomed a distinguished group of 60 educators to The New York Times Teaching Project. Chosen from hundreds of applicants and representing 29 states, these teachers are passionate about bringing the mission of The Times — helping people understand the world through on-the-ground, expert and deeply reported independent journalism — to their school communities.

When it became clear that our original plans to meet in person at The Times’s headquarters in Manhattan had to become, instead, a three-day virtual institute, we realized that though the format would change, our goals would not. Across several time zones, and over Zoom, Google Classroom, FlipGrid and Padlet, we connected all 60 educators to The Times, to our staff and to one another; invited them to share their own experiences and expertise; and helped them begin to develop curriculum projects that will be meaningful to their communities this school year.

Here are just a few of the things we did together:

  • We built community with regular interactive icebreakers. For example, we began the first day with breakout room “speed-dating” that used Learning Network writing prompts (like this one about your dream house, this one about home cooking, this one on accents and identity, and this one recalling your wildest childhood story) to allow participants to get to know each other, one pair at a time.

  • Teachers shared their expertise with one another by developing and moderating Edcamp-style sessions, focusing on subjects they’d previously explored or wanted to learn more about — including teaching STEM subjects with Times resources and using the 1619 Project to study the history of slavery and its legacy.

  • We offered behind-the-scenes looks at the work of Times journalists by hosting two panel discussions, one on Covid-19 and the other on the Black Lives Matter protests. Journalists, photographers and editors who covered these stories explained how pieces like “How Black Lives Matter Reached Every Corner of America” and “12 Fraught Hours With E.M.T.s in a City Under Siege” were reported, edited and created, as the teachers asked questions and, later, discussed the implications of what they had learned for their own classrooms.

  • The institute culminated in small-group pitch presentations — inspired by The Times’s front page meetings — during which educators shared their 2020-21 project ideas with their colleagues for feedback, advice and recommendations on next steps.

Now these educators will spend the next year working together to develop the projects they began in July; supporting each other through what promises to be a tricky year of teaching and learning amid a pandemic; and, of course, continuing to experiment with ways to include journalism in general, and Times resources in particular, in their work.

Below, a list of participants, their subject areas and schools — but also please click on the PDF below to find a short description of each curriculum project. As this school year continues, we hope to tell you more about each of them — and show you how you can adapt the projects you like for your own classroom.


Sohum Bhatt | Raoul Wallenberg Traditional High School, San Francisco

Keshia Williams | Lee High School, Montgomery, Ala.

Alina Acosta | Manual High School, Denver

Avery Pickford | Lick-Wilmerding High School, San Francisco

Alyssa Anderson | Burlington City High School, Burlington, N.J.

Pedro Berlanga | Akins High School, Austin, Texas

Judi Freeman | Boston Latin School, Boston

Sarah Garton | Great River School, St. Paul, Minn.

Kelli Kallens | Montgomery Upper Middle School, Skillman, N.J.

Scott Kallens | Hillsborough High School, Hillsborough, N.J.

Sam Kohn | Campus International High School, Cleveland

Michael Kokozos | Gulliver Prep, Pinecrest, Fla.

Andrew Kollen | Irvington High School, Fremont, Calif.

Tatianna McKinney | Trinity Preparatory School, Winter Park, Fla.

Mary Reid Munford | The New School, Atlanta

Lena Papagiannis | John D. O’Bryant School of Mathematics and Science, Boston

Erin Pinsky | Joel Barlow High School, Redding, Conn.

Joel Snyder | Animo Pat Brown Charter High School, Los Angeles

Nicholas Stone | Millennium High School, New York, N.Y.

Jen Wilkosz |Berlin High School, Berlin, Conn.

Debbie Domingues-Murphy | City Charter High School, Pittsburgh

Gabriel Graña | Smith Middle School, Chapel Hill, N.C.

Jenny Stirrat | Northeast Early College High School, Austin, Texas

Bryan Milz | West De Pere Middle School, De Pere, Wis.

Kate Plows | Strath Haven High School, Wallingford, Pa.

Donna Schou | Lynnwood High School, Bothell, Wash.

Jennifer Carlson | Glen Burnie High School, Glen Burnie, Md.

Amy Chappuis | Clayton High School, St. Louis

Sabrina Alicea | Daniel R. Cameron Elementary, Chicago

Donna Amit-Cubbage | J.R Masterman School, Philadelphia

Cassie Bentley-Bradshaw | Reynoldsburg High School HS2 Stem Academy, Columbus, Ohio

Blake Bockholt | Northern Utah Academy for Math, Engineering & Science, Layton, Utah

Diane Boyd | Mesa Verde High School, Citrus Heights, Calif.

Kim Butterfield | Central High School, La Crosse, Wis.

Jennifer Coleman | Hewitt-Trussville High School, Trussville, Ala.

Claudia Felske | East Troy High School, East Troy, Wis.

Christa Forster | The Kinkaid School, Houston

Kelsey Francis | Saranac Lake High School, Saranac Lake, N.Y.

Dina Giannakopoulos | Barrington High School, Barrington, Ill.

Karen Gold | The Governor’s Academy, Byfield, Mass.

Kathryn Gullo | North Hollywood High School High Gifted Magnet, North Hollywood, Calif.

Kristina Harvey | Wilton High School, Wilton, Conn.

Jessica Hunter | Syosset High School, Long Island, N.Y.

Claudine James | Malvern Middle School, Malvern, Ark.

Mary Beth Jordan | Mamaroneck High School, Mamaroneck, N.Y.

Jessica Kirkland |Park View High School, Sterling, Va.

Ben Klash | Beaverton High School, Beaverton, Ore.

Kristin Lawlor | The Young Women’s Leadership School of the Bronx, Bronx, N.Y.

Hannah Lipman | Newburg Middle School, Louisville, Ky.

Tessa Maglio | South Milwaukee High School, South Milwaukee, Wis.

Tiffany Mathes| Beaverton High School, Beaverton, Ore.

Kathleen Mills | Bloomington High School South, Bloomington, Ind.

Sharon Murchie | Bath High School, Bath, Mich.

Michael Potter | Hilton High School, Hilton, N.Y.

Jeanette Price | Columbia Falls High School, Columbia Falls, Mont.

Kendra Radcliff | Druid Hills High School, Atlanta

Jodi Ramos | Stevenson Middle School, San Antonio

Teresa Scollon | TBAISD Career-Tech Center, Traverse City, Mich.

Rebecca Temple | Madison Central High School, Madison, Miss.

Meta Mikal Tews | Yukon Middle School, Yukon, Okla.

Summer Reading Contest Winner, Week 8: On ‘Why America Needs a Royal Family’

0
Summer Reading Contest Winner, Week 8: On ‘Why America Needs a Royal Family’

The royal family’s private life often intersects with their royal duties. Similarly in America, the extracurricular activities of politicians often overlap with their political affairs as well. Seeing this, writer Jennifer Weiner asserts that America needs its own “royal family,” separately-elected representatives who can perform ceremonial tasks while representing America’s overall values.

Ms. Weiner juxtaposes the royal family’s personal affairs with a soap opera, stating that, “The problem with a real-time soap opera … is that very few people are equipped to be its stars.” She appeals to a sense of familiarity by comparing the lives of the royal family and, in larger part, politicians to television melodrama, showing the reader that these matters relate.

I largely disagree with her argument and would like to propose one of my own: We need to separate the ribbon-cutting and the baby-kissing from politics and remove them entirely. Even now, politicians’ personal affairs distract from more important political matters, and an American “royal family” would only compound this issue.

What Ms. Weiner is asking for reminds me of a mascot, such as the Nesquik bunny — a hollow symbol of the values of carefree fun that the company supposedly has while its parent company, Nestle, commits child-trafficking and slavery in West Africa to harvest cocoa. America needs a lot of things, and a mascot isn’t one of them.

In alphabetical order by the writer’s first name.

Geofrey Mayanja: “I can’t thank Alison enough for the assistance they have rendered to Africa.”

0
Geofrey Mayanja: “I can’t thank Alison enough for the assistance they have rendered to Africa.”

“My name is Geofrey Mayanja. I reside In Kampala, the capital of Uganda. I previously worked as Exit Barrier staff for one year and later a fantastic job with a good salary opened up for me at Glorre International Ltd, under Keshwala Group, based in Kampala and in the Jinja District. At Glorre International Ltd, I work as a sales and marketing analyst for the company. Because of the skills I acquired after pursuing an online course, I’m able to perform my work efficiently.”

How have Alison courses affected your career?

I’m a certified Alison Graduate in Business Management and Entrepreneurship. Completing this course really empowered me. Afterwards I was able to apply for a job with Maersk Line Group, handling containers as well as managing an inland container depot.

 

What’s next for you, in terms of work?

I have purchased a piece of land where I want to start my own farm – Village Road Farm – in Kayunga District. I want to engage in goat, poultry and pig farming. The knowledge I’ve gained in these fields I have acquired from Alison’s advanced interactive online learning system.

What would you say to someone if they asked you about Alison? Would you recommend it and why?

I call upon all those people who still think that you’re unable to pursue your education due to cost to please just visit Alison. Everything is zero cost and high value. I can’t thank Mike Feerick and the Alison team enough for the assistance they have rendered to Africa and the world at large. All I can say is God bless the work of your hands, and I hope that Alison continues to be able to penetrate those regions of the world where it hasn’t arrived yet.

7 JavaScript interview questions to practice

0
7 JavaScript interview questions to practice

This is the first in a series of articles from our friends at Career Karma.

Technical interviews may be stressful but they tell an employer a lot about you. Technical interviews let an employer see that you can thrive under pressure. They allow an employer to see that you actually possess the skills you have listed on your resume.

To help you navigate your next JavaScript technical interview, we’ve prepared a list of seven questions covering a range of JavaScript concepts that you can use to practice.

For a deeper dive, check out the Pass the Technical Interview with JavaScript — a Skill Path that dives into tips and tricks for nailing your technical interview, plus technical interview preparation tips from the Codecademy team.

JavaScript interview questions and answers

These questions cover both basic and more advanced JavaScript concepts so you’ll be ready for a range of questions that you could be asked. Try reading the question and answering for yourself before reading on to see how you did.

What is the difference between a forEach loop and the .map() function?

Both JavaScript forEach loops and map() functions iterate over items in a list.

The forEach loop executes a callback function for each element in a list. It does not return any values once it has been run. A map statement calls a function on each element in a list and returns a transformed array with the values returned by that function.

In short, forEach() loops do not return a new array but map() functions do.

What is a JavaScript Promise? What are the benefits of using a Promise over a callback?

A JavaScript Promise is a way to write more asynchronous code. A Promise is defined with two functions: a resolve and a reject function. If a Promise is executed successfully, the resolve function is returned to the main program; otherwise, the reject function is returned.

Promises allow you to avoid “callback hell.” This is where you define callback functions within callback functions. Callback hell results in unreadable code. Promises, unlike callbacks, support .then() statement. This means that the order in which a block of code runs can be made clearer if you use a Promise.

How can you check if an array is empty?

To check if an array is empty, you use an “if” statement:

if (array_name === undefined || array_name.length === 0) {
	// Code to run
}

First, the “if” statement makes sure that an array has been defined. Without this check, our code would return an error if “array_name” could not be found.

Next, our code checks whether the length of “array_name” is equal to 0. If either of these conditions are true, our “if” statement will execute.

What are default parameters in a function?

Default parameters let you specify default values for a parameter in a function. This means you call a function without defining a value and a default value will be set in its place.

A default parameter is written using this syntax:

function multiply_numbers(number_one = 0, number_two = 0) {
	return number_one * number_two;
}

Default parameters are specified as a parameter name, followed by an equals sign, followed by the default value you want to set.

This syntax means you don’t have to check if a value is defined before you start to use it in a function. Default parameters therefore make a function easier to read and understand.

What is the difference between synchronous and asynchronous functions?

Synchronous functions wait until each statement in a method has been run before moving on to the next. This means a synchronous function is read line-by-line and may depend on the value of a previous statement to work successfully.

Asynchronous functions, on the other hand, execute each line of code without stopping to wait for a value from a function. An asynchronous function usually depends on a Promise or a callback which executes while the main program is running. The Promise or callback will return a value back to the main program.

What are Arrow Functions?

Arrow functions are an alternative way of defining a JavaScript function. Arrow functions allow you to define a function without using the function() keyword. This lets you write more concise and readable code.

An arrow function can be written on one line:

const multiply_values = (value1, value2) => console.log(value1 * value2);

Arrow functions accept arguments just like a regular function expression. You do not need to use a return statement with an arrow function. This is because arrow functions implicitly return a value if there is only one value to return.

How can you filter values out of an array of objects?

An efficient way to filter values out of an array of objects is to use the JavaScript filter() function. The filter function iterates through a list of items and creates a new list of items that meet a particular condition or set of conditions.

Consider this list of students:

var students = [ { name: “Sam”, grade: 6 }, { name: “Alix”, grade: 7 }];

To retrieve all the students in sixth grade, we use a filter function:

var sixth_grade = students.filter(student => (student.grade === 6));

Our code returns all the students who are in sixth grade:

{ name: “Sam”, grade: 6 }

What is functional programming?

JavaScript supports functional and object-oriented programming. Functional programming is a programming paradigm where programs are written using pure functions.

Pure functions produce the same output. This makes them easier to read, debug, and interpret. One way to think about pure functions is like a calculator. If you evaluate 9 multiplied by 9 in a calculator, 81 will always be returned.

JavaScript offers features like first-class functions and higher-order functions to support the functional programming paradigm. Other functional programming languages include Lisp, Haskell, and Elm.

Preparing for your interview

As with any skill, the only way to get better is to practice. Technical interviews are no different. While you cannot prepare for every possible question that could come up, every additional minute of practice you do before an interview improves your chances of success.

In your interview, explain your answers, and how you arrived at them, in depth. Doing this lets an interviewer learn more about how you think. If you get the answer to a question wrong, the interviewer may use your process to see whether you were on the right track.

With the right amount of practice, you should have no trouble getting through your next technical interview!

James Gallagher is a writer at Career Karma. He leads technical content on the Career Karma publication. James has authored dozens of articles for an audience of code newbies on Python, HTML, CSS, JavaScript, Java, and Linux.

Helping Parents Hold the Line

0
Helping Parents Hold the Line

The team also produces a newsletter twice a week, uses its social media accounts to spotlight articles related to parenting from across the newsroom and continues to create special projects: In May, the team published a collection of essays focused on motherhood and transformation, and a recent package of profiles featured families that have opted for home-schooling.

Ms. Grose said that in the beginning of the pandemic, the desk talked to infectious disease pediatricians every day to bring readers the most up-to-date information. As the pandemic wears on, the desk continues to consult pediatricians, as well as psychologists, psychiatrists and social workers. And the team stays in close contact with the Science, Metro and National desks to ensure that Parenting’s coverage is “additive, and not duplicative,” Ms. Grose said.

When brainstorming ideas, the team pays close attention to reader feedback. It also helps that many of the Parenting staff members are raising young children themselves, and often come to pitch meetings with ideas that stem from their own lives.

Ms. Miller handles audience development as part of her role and frequently reads comments from, and interacts with, readers on the desk’s Instagram page. She often brings this feedback to the team so members can think about the best way to address caregivers’ most pressing concerns.

The team has also made it a priority to talk about the mental health of parents. “We do a lot of coverage about how parents can cope right now; it’s not just all about kids,” Ms. Grose said. “The amount of anxiety and rapid change that has happened is really hard.”

Early in the pandemic, as editors and reporters explored recurring themes of parents and children living similar lives in front of screens, Deanna Donegan, the senior visual editor for Parenting, created a visual approach to the articles that counterbalanced the heaviness of the moment.

“Content-wise, Parenting has done a really good job of giving parents resources of how to handle this very anxious time when there isn’t a one-size-fits-all plan for anyone,” Ms. Donegan said. “It’s nice to try to infuse some of that calm and reassurance, and also provide some levity maybe, in the art.”

Summer Reading Contest Week 10: What Got Your Attention in The Times This Week?

0
Summer Reading Contest Week 10: What Got Your Attention in The Times This Week?

Students, we want to hear about your experiences with the Summer Reading Contest. Tell us what you’ve learned by filling out this form.


Welcome to Week 10, the final week of our 11th Annual Summer Reading Contest.

This contest is open to students 13-19 from anywhere in the world. To participate, submit a response by 9 a.m. Eastern on Aug. 21 that answers the questions “What got your attention in The Times this week? Why?”

If you are 13 or older and live in the United States, or 16 or older from anywhere else in the world, post your response in the comment section. If you are 13-15 and live in another country, see the bottom of this post for details on how to submit.

Responses must be 1500 characters or fewer.

What should you choose? Well, as you know from the rules we’ve posted, you can pick anything published on NYTimes.com in 2019 or 2020, including articles, essays, Op-Eds, videos, photos, podcasts or infographics.

So what did you read, watch or listen to this week?

We hope you’ll click around NYTimes.com and find your own great articles, features and multimedia. But we also know that not everyone who participates has a Times subscription. Because all links to Times content from the student features on our site are free, every week we’ll try to help by posting interesting pieces from a variety of sections.

For some advice about how to write powerful responses, here are four quick tips you can learn from past winners of this contest.

_________

Where Do Republicans Go From Here?

I Have a Cure for the Dog Days of Summer

The Coming Eviction Crisis: ‘It’s Hard to Pay the Bills on Nothing’

A Song That Changed Music Forever

Racism’s Hidden Toll

We All Speak a Language That Will Go Extinct

How History Turns Riots Into Tea Parties

Whatever caught your eye, tell us about it.

Need more details? The contest rules are all here, and you can read the work of last year’s winners here. A quick overview, though:

  • You can choose from anything published in the print paper or on NYTimes.com in 2019 or 2020, including videos, podcasts, graphics and photographs. (In your response, please include the URL or headline of the piece you pick.)

  • We’ll post this question each Friday from today through Aug. 14, and you’ll have until the next Friday morning to respond with your picks. Then we’ll close that post and open a new one with the same question.

  • We’ll choose at least one favorite answer to feature on our site each week. Winners from this week will be announced on Sept. 1.

  • Feel free to participate each week, but we allow only one submission per person per week.

  • The contest is open to students ages 13 to 19 from anywhere in the world. If you are 16 or older from anywhere in the world, you can post your response in the comments section. If you are between the ages of 13 and 15 and live outside the United States, use the form below to submit your entry. All entries from the comments section and the form below will be judged together.

Introducing Live2Coursera: scaling live online teaching to reach every learner

0
Introducing Live2Coursera: scaling live online teaching to reach every learner

By Shravan Goli, Chief Product Officer

The pandemic has ignited an unprecedented shift in higher education. This past spring, 1.6 billion students worldwide were learning from home, and today more than a billion students are still impacted by campus closures. Colleges and universities continue to grapple with the impact of COVID-19 and what the transition to online and blended learning will look like this fall. 

At the Coursera Conference in April, we previewed Live2Coursera, which enables instructors to integrate live meetings into their courses. Today, we’re excited to announce that Live2Coursera is available to all authors on Coursera. As we’ve seen over the past few months, recorded Zoom lectures have the potential to be valuable, long-term digital assets for both educators and learners.

Impactful tools for educators  

To help make the transition to online learning a little easier, we’ve designed Live2Coursera to make live teaching as intuitive and efficient as possible. Live2Coursera helps you teach live classes, for example with fully online students or campus students who are learning remotely, in private course offerings. Live2Coursera also enables you to add Zoom recordings to your Coursera content library and leverage them for future classes and MOOCs. 

We’re excited to share the following new features for educators:

Link your Zoom account: Now any author can link their Zoom account with Coursera to start offering live meetings within their courses. (Available today for all authors)

Schedule meetings: Authors can schedule Zoom meetings to seamlessly integrate them within their course’s learning experience for streamlined access to live meetings. (Available today for private course offerings)

Configure recordings: Meeting recordings are automatically stored in your course’s Asset Library for staff, and can also be configured to automatically publish to learners. Asset Library content can be leveraged for future offerings of this or any other course, so you’re adding to your content library with every live meeting. (Available today for private course offerings)

Import prior recordings: Do you have recordings from prior classes that weren’t on Coursera? We’ll soon be adding Zoom to our list of Cloud providers you can directly import videos from without needing to manually download them first. This enables authors to more efficiently import prior recordings, further adding to your reusable content library. (Coming soon for all authors)

Start teaching immediately: Now authors can launch private course offerings completely self-serve, so you can start teaching at any time within minutes without waiting for Coursera approval. (Available today for private course offerings)

Adapt on the fly: For private course offerings, authors can make changes to content and assessments at any time, meaning you can adapt your course on the fly based on student performance. We’ll soon be enabling module authoring (add, edit or delete) for private course offerings that have already launched. (Coming soon for private course offerings)

A seamless learner experience

Learners see live events and recordings right in their course experience, and receive reminder emails in the lead up to the event – all tailored to their individual timezone and localized to support learners across the world. (Available today for private course offerings)

A glimpse at the future 

We’re humbled to serve more than 200 university and industry partners and 68 million learners around the world in their online teaching and learning journeys. Looking ahead, we will continue innovating across the platform to create the best experience for educators and learners – including live and asynchronous teaching. 

Check out our Educator Community Webinar to learn more and see Live2Coursera in action.