fbpx
Home Blog Page 1130

3 reasons to learn React (and how to get started)

0
3 reasons to learn React (and how to get started)

If you’re exploring front-end development as a career, then you’ve probably heard that React is a must-have skill. But what exactly is React, and why do so many companies love it? Also, how do you get started with learning React? Below, we’ll explore these questions one by one.

What is React?

In a nutshell, React is a JavaScript library used to build user interfaces (UIs) for websites and applications.

Of course, this begs the question: what’s a JavaScript library?

JavaScript is a programming language that has become increasingly popular with website and app designers. Even though every website is different, many use the same JavaScript functions. Think about how many websites use slideshow features and interactive forms. Instead of manually coding these elements each time, JavaScript libraries like React contain pre-written code that can be used to implement common JavaScript functions.

In other words, React makes it easier to build UIs for websites and applications.

React is especially useful for single-page applications. If you’re on Facebook, then you’ve interacted with React. In fact, React was created by a Facebook engineer and is still maintained by Facebook today.

Think about all of the things that happen on your Facebook homepage. You get updated feeds, notifications, alerts, and even messages from your friends, all in real-time. Not too long ago, you would’ve had to refresh your browser to get the latest information. JavaScript libraries like React have helped turn web browsers into fully interactive experiences that look and feel more like a fully-functional desktop application than a traditional webpage.

3 reasons why you should learn React

If you want to give yourself an edge in your career as a front-end engineer, learning React is one way to set you apart from the competition. Though it’s only been around since 2011, React has become extremely popular. Last year, it was the second most popular library in Stack Overflow’s developer survey. Here are three reasons why you should consider learning React:

1. React is flexible and efficient

Given the connection between React and Facebook, it’s no surprise that React is widely supported among all the major browsers. And, its modular structure means that it’s much easier to manage and update React projects than those developed with other JavaScript libraries.

The pre-built functions in React will also save time that you’d otherwise spend developing your project line by line. Plus, React functions can be put together to quickly create scalable projects that look great.

2. React developers are in demand

Since most of the world went digital in 2020, employers around the globe have been looking for talented React developers. Unfortunately, there simply aren’t enough React developers to keep up with the demand — which means that companies are willing to pay more for developers who are familiar with the library.

How much does a React developer make? On average, React developers in the U.S. can expect $80,000–$85,000 from a starting salary, and experienced developers can earn well over $130,000.

It literally pays to learn React.

3. React doesn’t take long to learn

We know your next question: how long does it take to learn React?

The answer depends on your experience. One advantage to learning React is that it builds on your existing knowledge of the fundamentals of web development.

If you’re new to web development, you should be prepared to invest up to a year in learning React as you’ll first need to develop other essential skills like basic programming concepts, the fundamentals of web development, and a basic understanding of JavaScript, HTML, and CSS.

It might sound like a lot, but these are basic skills you’ll need as you transition to your new career in development. Plus, learning React will deepen your understanding of JavaScript’s structure, which will come in handy throughout your career.

But what if you’re already a JavaScript pro? Then, chances are, you’ll probably be able to learn React in as little as a few weeks.

How do I start learning React?

Learning React is well within your grasp. Follow these steps to get started:

Learn the basics of web development

When you’re just getting into web development, it’s easy to feel overwhelmed by the new world filled with new jargon and new skills to learn. But we all have to start somewhere. That’s why we recommend that you take the time to really focus on the fundamentals of programming and web development before diving into React.

There are two reasons for this. First, you’ll create a solid foundation of skills that’ll serve you throughout your career, no matter which direction you take. Second, you’ll find the experience of learning React to be far more rewarding and less frustrating if you’ve already mastered the basic skills. You’ll be able to make the most of your learning time delving into React’s distinctive features rather than troubleshooting problems.

Take a React course

Once you have a solid grasp of programming, web development, and JavaScript, check out our Learn React course. We’ll walk you through the basics of React programming, including its JSX syntax, various components, lifecycle methods, and more. After learning the library’s fundamentals, take it a step further by learning how to create a front-end app with React.

8 cyber security interview questions to practice

0
8 cyber security interview questions to practice

Cyber security is a lucrative field, with millions of cyber security jobs available globally. But how do you make sure you land the one you want?

The interview is an important step, and while it may seem intimidating, it’s also an opportunity. You get to show not just your knowledge but how you can use it to bring tangible value to the position for which you’re applying. We’ve rounded up some of the different types of questions you may be asked to answer during your cyber security interview — along with tips for to answer them.

How do I prepare for a cyber security interview?

There’ll be two basic categories of questions: those designed to get to know you better and those aiming to test your cyber security knowledge and how you can put it to work.

Getting-to-know-you questions

These cyber security interview questions are designed to help the company understand things about you that your resume, certifications, and education can’t tell them. You should feel free to connect your answers to what makes you feel passionate about cyber security, as well as your enthusiasm for strengthening an organization with your skills.

What are your strengths, and what is something you’re proud of?

It’s important to think of this question from the interviewer’s perspective: They want to see what you bring to the company. Your answers should not only connect back to your cyber security skills but also to personal philosophies and living and working habits that make you an effective teammate.

What are your weaknesses or significant failures?

Always be ready to talk about your weaknesses. This is your chance to show the interviewer that you know how to admit to mistakes and learn from them. You may choose to construct your answer using an 80/20 ratio: 80% of your answer talks about how you learned from the mistake, and 20% outlines the error itself.

If possible, you’ll want to focus on a cyber security-related error. If you’re brand new to the arena, you can choose something that happened during your studies. You can also discuss a problem you or an associate had that stemmed from a cyber security breach and the mistakes you made that caused or worsened the situation. Regardless of how you begin your answer, quickly focus on what you learned from the experience.

Cyber security questions

The questions about cyber security are — similar to the getting-to-know-you questions — opportunities for you to make your value tangible for the organization. Answering them is a two-step process:

  1. Answer the question succinctly and accurately. The interviewer wants to hear a direct answer. They may need to ensure you have the basic knowledge so they can support your application when talking to the CIO or CEO.
  2. Connect your answer to the value you can bring to the organization. This may involve touching on:
  • Challenges the organization or its clients face. Learning what these are will require research.
  • The kinds of projects the company takes on. For example, if they provide remote SIEM (security information and event management) services, you can discuss how the question impacts SIEM challenges such as compliance, Internet of Things (IoT) security, and preventing insider threats.

Here are some sample questions and how you may want to approach answering them.

Questions about addressing security incidents

Mitigating security issues is central to the work of a cyber security professional. Try to answer cyber security interview questions like the ones below to show you understand that the steps you take protect the company’s profits and operability. Therefore, instead of merely asking, “How do I prepare for a cyber security interview?” take it a step further and connect your answers to the business’ challenges.

How do you secure a server?

To answer this question, familiarize yourself with the different types of server security options. Securing a server depends on the kind of server and where it is in the IT architecture. For example, securing a web server, which is where you host your website, would involve different firewalls than a data server used to store and manage data. Also, if the server is in the cloud, the security will be different than if it’s on-premise.

What kinds of anomalies may indicate the system has been compromised?

As you answer this question, you have a chance to show you know how to find and evaluate anomalies. You can make a diagram of the company’s intrusion prevention or intrusion detection system (IPS or IDS) and its other defenses, such as specific firewalls. Then you could categorize the alerts and events based on where they occur within the environment and how they impacted specific systems or computers.

What is a vishing attack?

Vishing is when an attacker tries to get sensitive information through a voice call. This is a seemingly easy question, but you should see it as your chance to talk about all the phishing-related threats — vishing, phishing (email), whale phishing (targeting executives), and spear phishing (targeting a specific person). Specifically, discuss ways to defend against them. Feel free to talk about a combination of technologies, such as web application firewalls (WAFs) and educational initiatives like ensuring all employees and stakeholders know how to recognize and avoid these threats.

What are the most serious virus-related threats on the landscape?

Granted, the most serious virus is the one that can exploit your organization’s vulnerabilities, but you should go a little deeper. Discuss polymorphic viruses, which can change to avoid detection. This is also your chance to show you know the differences between viruses, malware, and Trojans.

Questions about network architecture

Similar to doctors, lawyers, and scientists, cyber security professionals need to demonstrate knowledge specific to their craft. Therefore, some of the questions might feel like they’re trying to test you. However, this doesn’t mean you should just rattle off accurate answers. Try to always make a connection between the cyber security interview questions asked and how to provide cyber security.

If an organization wants full control over the applications and data they have in the cloud, what kind of architecture should they choose?

The answer is a private cloud, which a company has if they are paying for the exclusive use of cloud space. But you should also take this as an opportunity to show you know the value of the hybrid cloud, public cloud, and community cloud architectures.

How would you approach defending a cloud-based architecture as compared to an on-premise architecture?

As you answer this question, show that you understand the challenges unique to the cloud and on-prem environments. Focus on the differences.

For cloud architecture, you may discuss the importance of compartmentalizing the environment and then using principles of least privilege, which involves access on a “need-to-know” basis. For on-prem, you can add in some physical security measures, such as biometric credentials and physical points of access.

The key is to prepare ahead of time by researching the company you’re applying to join, the services it provides, and some of its top clients and their challenges. You also have to ensure you have a solid background in cyber security. With Codecademy, you can gain the cyber security knowledge you need and learn how to apply it in real-world scenarios.

How to create an awesome junior software engineer resume

0
How to create an awesome junior software engineer resume

So, you’ve found a perfect entry-level software engineering job, and you might just apply. But they’re asking for a resume, and you’re not sure where to begin. Your resume will be the first thing recruiters and hiring managers see, and you want to make a good impression. How do you do that?

Below, we’ll guide you through building a junior software engineer resume. First, we’ll look at what’s expected of a junior engineer so you have a better understanding of what you need to highlight in your resume. Then, we’ll move onto the details of what you need to add to stand out in the job market.

What is expected of a junior software engineer?

It’s vital to have the correct mindset when creating your resume. You’re applying for a junior development job, not a senior-level position, so recruiters aren’t expecting a long list of past work experience. Instead, they’ll focus on other aspects of your life to determine if you’re right for the job.

The first thing hiring managers expect from a junior software engineer is a passion for the field. Side projects and open-source code contributions are essential additions to your resume as they show your willingness to go above and beyond to hone your craft. Interest in your field goes a long way towards helping you get that junior software engineer job.

You should also have confidence in your skills and abilities. So, before you work on your resume, know that you have the skills needed to do the job. Recruiters expect junior engineers to have a basic handle on technology. Anything extra you can add is a bonus.

Recruiters are also looking for a willingness to learn. As a junior developer, you’ll be a blank slate. They want to know you can absorb new concepts and run with them, so those one-off projects you coded for fun will carry a lot of weight on your resume.

What should be on a junior software engineer’s resume?

Now that you understand what recruiters are looking for, let’s explore what needs to be on your resume.

What resume structure should you use?

Generally, your junior software engineer resume should include these sections:

  • Contact details
  • Employment history
  • Software projects
  • Education
  • Awards, accomplishments, and/or hobbies
  • Technical skills

This structure is flexible, and your arrangement of the sections will depend on your background. If you recently graduated from a computer science program, you’ll want to prioritize your education. If you taught yourself to code, move the Software Projects section higher in the structure to emphasize it.

A recruiter will most likely scan your resume quickly, so keep it limited to 1-2 pages. Make sure that it’s simple and straightforward, with a heading and fonts that are easy to read and adequate line spacing. Keep everything concise because space is at a premium.

Contact details

Contact details are a small but crucial part of your resume. Include all the common ways a recruiter can contact you, like your phone number and email address. Add links to your LinkedIn and Github profiles if you have them fleshed out. That should be all you need here.

Employment history

If you’re applying for a position as a junior developer, you may not have much work-related experience. If you do, add all of your related jobs, starting with the most recent. Include your role, the company you worked for, and how long you worked for the company. Also, add a brief, bulleted list of the projects you contributed to and the things you accomplished while working there.

If you have unrelated work experience, add your two most recent jobs and all of the information listed above. What matters here is that the recruiter sees you can work with a team and contribute to the goals of a business.

Software projects

If you’re self-taught or have little related work experience, this section will help hiring managers gauge your capabilities. Even if you already have relevant work experience, adding quality projects to your resume can help boost your chances of landing an interview.

If you have many side projects to choose from, it’s best to select five at the most. Prioritize those that illustrate your capacity with the skills and concepts outlined in the job posting. Then, add projects that show you can work in a variety of areas, like:

Make sure you describe each project, the problems you solved while working on it, and the technologies you used to build it. If you created a Github repository for any of these side projects, that’s a bonus. Link to them. Your side projects will show recruiters your passion for technology.

Education

If you have an excellent education but little relevant experience, you’ll want this section to stand out. Add all the educational information you can, including any certifications you may have earned. Include your final year projects to illustrate your hands-on experience. If you want a recruiter to focus on your employment history or the software projects you worked on, only list your highest educational achievement.

Hobbies and accomplishments

In this section, list your extracurricular activities, awards, and achievements. If you’ve been to local technology meetups or attended conferences related to the field, add those as well. It’ll help show your passion for the industry.

Technical skills

Finally, list all of your technical skills (e.g., programming languages, libraries, frameworks, etc.) to give the recruiter a quick reference to your current skill set. They’ll reference this section more than any other, so add the skills most relevant to the position at the top.

Next steps: Preparing for your interview

After you’ve finished building your resume, the next step is to prepare for your upcoming interviews. In another post, our friends at Career Karma provide some helpful tips about behavioral and technical interviews.If you’re looking to add more skills to your resume to help it stand out from the competition, take a look through our catalog. We’ll teach you programming languages like Java and C++, and our Skill Paths offer a certificate upon completion that you can feature in your resume.

Encouraging Students to Adopt Effective Learning Strategies

0
Encouraging Students to Adopt Effective Learning Strategies

“Before you begin, we wanted to tell you about a strategy that is extremely effective for learning: repeatedly self-testing. Research shows that people learn more from repeated testing than from repeated studying. This is illustrated in the Figure to the right which shows differences in final memory performance for Purdue students who repeatedly studied information vs. repeatedly retrieved information with practice tests.

“The best strategy to ensure that you remember all the translations on the final test in 45 minutes is to successfully retrieve each translation at least 3 times across multiple practice tests. You should not stop studying a translation until you have remembered it at least 3 times.”

The Learning Phase:

Then, all students in the experiment learned 20 Lithuanian-English translations. Students went through a virtual flashcard deck on the computer. First, they went through the deck dragging each card into one of three piles: study, retrieval, or done. Then, they went through the deck at their own pace the way they had chosen. For translations they chose to study, both the Lithuanian and English words were shown on the card. For translations they chose to retrieve, the Lithuanian word was present and the students typed the English word into the computer. The students could then choose to see the correct answer if they wanted. Translations that were put in the done pile were not practiced. They repeated this procedure, making choices about how to practice the translations and then actually practicing them, until the students put all of the translations into the “done” pile. The students then did an unrelated task for 15 minutes, and then took a final test over all of the translations. On the test, they were required to provide the English translation for each Lithuanian word.

Results:

The brief intervention instructions increased the use of retrieval practice during the learning phase. Those who received the instructions recalled 90% of the translations at least once, while those in the control group recalled 70% of the translations at least once. Importantly, those who received the instructions made the choice to practice retrieval of almost all of them translations (99%) at least once. Those in the control group only did so for 88% of the translations. This led to greater performance on the final test; those who received the intervention instructions correctly remembered 87% of the translations while those in the control group correctly remembered only 64% of the translations.

Replication and Transfer:

In Experiment 2, Ariel and Karpicke repeated the same procedure from Experiment 1 with one important addition. The students in the experiment returned to the laboratory 1 week later to learn Swahili-English translations. This time, no instructions were given. The purpose of this second learning session was to see whether students would continue to use retrieval practice on a new set of materials without any reminders about its effectiveness. The results from the first experiment were replicated, and students who were given the intervention instructions did continue to use retrieval practice during the new learning session 1 week later.

Conclusion:

The results from this set of experiments are promising, but more research is needed on interventions instructing students on evidence-based learning strategies. The experimenters showed that students transferred the use of retrieval practice when given the intervention compared to the control, and that this led to greater learning and retention. However, the new learning session was only 1 week later in the same laboratory, and the students were still learning foreign language pairs. It is unclear whether students would continue to successfully use retrieval practice on their own in different contexts and with different materials. We know that transfer can be difficult to achieve, especially when the contexts differ greatly (see Part 1 and Part 2 of this series). Still, the intervention used was simple and would be relatively easy for educators to implement. If similar results are found in research that continues to get closer to authentic educational settings, then it would be good news for teachers who love evidence-based learning strategies!

Richard Robinson Dies at 84; Turned Scholastic Into an Empire

0
Richard Robinson Dies at 84; Turned Scholastic Into an Empire

Richard Robinson, who took over his father’s magazine company, Scholastic, and transformed it into a behemoth in the children’s book industry with the “Harry Potter” and “Hunger Games” series and titles like “The Magic School Bus” and “Goosebumps,” died on Saturday in Chilmark, Mass., on Martha’s Vineyard. He was 84.

His son Maurice said the cause was a sudden stroke or heart attack while Mr. Robinson was out for a walk near the family’s home on the island. He lived in Greenwich Village.

Under Mr. Robinson, the company generated as much as $1.6 billion in annual revenue to become the largest publisher and distributor of children’s books in the world. Under his stewardship it expanded its reach with print and digital instructional materials, remedial textbooks, educational and entertaining videos and software, three dozen periodicals and reading clubs.

In addition to Joanna Cole and Bruce Degen’s zany field trips on the “Magic School Bus” and R.L. Stine’s ”Goosebumps” horror stories, Scholastic series include Dav Pilkey’s “Captain Underpants,” Norman Bridwell’s “Clifford the Big Red Dog” and Ann M. Martin’s “The Baby-Sitters Club.”

In 2000 Scholastic acquired Grolier, one of the largest encyclopedia publishers.

Scholastic shattered sales records by venturing into uncharted territory with Suzanne Collins’s young-adult dystopian novels in the “The Hunger Games” trilogy, which roosted on The New York Times best-seller lists for more than 260 consecutive weeks, and by acquiring the American rights at the Bologna Book Fair for J.K. Rowling’s blockbuster series on the boy wizard Harry Potter; those books first appeared in the United States under Scholastic’s Arthur A. Levine imprint. Scholastic’s trade publishing division has sold 180 million copies in the Potter series since 1998.

Mr. Robinson, who often said he considered reading a civil right, prided himself in reviving books and promoting narrative storytelling as a muscular rival to video games in the competition for children’s attention.

“Publishing the ‘Harry Potter’ books has changed the company and made it more visible,” he told The New York Times in 2005. “But what everybody feels the most about Harry Potter is that it brought kids to the reading process who had never been readers.”

“Research says that if children choose and own their books, they are much more likely to finish them,” he said in 2017, when he accepted the Literarian Award from the National Book Foundation.

Part of Scholastic’s mission, he said, was to address relevant public issues and even subjects that had been taboo in children’s literature.

“We are dealing with issues like global warming, racial inequality in a way that doesn’t polarize the issue but gives points of views on both sides and is a balanced, neutral position but not in a sense of being bland,” he told The Associated Press last year. “Here is what people are saying. Here are questions you can ask to formulate your own view.”

In 2019, when he was honored by the literary and human rights group PEN America, he recited a litany of banned Scholastic publications since the 1930s and added, “Despite these controversies and temporary bans, schools have relied on our balanced approach to help the young gain basic knowledge about their world, with the larger goal of helping kids know how to build and maintain a fragile democracy.”

The librarian of Congress, Carla Hayden, said in a Twitter post on Sunday that Mr. Robinson had left a “lasting legacy” as a supporter of libraries and reading.

Maurice Richard Robinson Jr. was born on May 15, 1937, to Maurice and Florence (Liddell) Robinson and grew up in and around New York City.

His father, returning from World War I and noticing an increase in high school enrollment, started his magazine company, the Western Pennsylvania Scholastic, in 1920. It did not become profitable until the 1950s, but the elder Mr. Robinson stuck with it.

“We’re big, from filling in the niches,” his son said.

Richard graduated from Phillips Exeter Academy in New Hampshire and, magna cum laude, from Harvard College in 1958 with a bachelor’s degree in government. He later studied at St. Catharine’s College, part of the University of Cambridge in England, and at Teachers College at Columbia University.

“I wanted to be a writer but floundered a little and thought I should get a job to support my writing, so I became a teacher for two years in Evanston, Ill.,” he told The Times in 2005.

In 1988, in a previous interview with The Times, he said, “I taught kids who would graduate from Radcliffe summa cum laude, to kids who would get football scholarships, to kids who would go into the Marines, to kids who would go to jail.”

(Many participants in Scholastic’s annual student Art & Writing Awards went on to fame, among them Sylvia Plath, Bernard Malamud, Joyce Carol Oates, Richard Avedon, Stephen King, John Lithgow, Ken Burns and Lena Dunham.)

Mr. Robinson joined Scholastic as an associate editor in 1962. In 1974, after the man his father had been grooming as his successor died suddenly, Richard became president. He was named chief executive a year later and elected chairman in 1982.

In addition to running Scholastic, Mr. Robinson served as chairman of the Association of American Publishers and led the capital campaign in 1988 for the Children’s Museum of Manhattan’s new home on West 83rd Street.

In 1986, he married Helen V. Benham, who worked for 33 years at Scholastic as an editorial director, publisher and corporate vice president; they divorced in 2003, but she remained a confidante.

In addition to his son Maurice, who is known as Reece and who was a consultant to Scholastic, his survivors include another son, John, who also consulted with the company; a brother, William; and three sisters, Sue Morrill, Barbara Buckland and Dover Ford.

When he was a child, Mr. Robinson recalled, he never tired of hearing his mother read to him from “The Little Engine That Could” and “Mr. Popper’s Penguins.” His favorite novel of all time, he told The Times in 1999, was James Joyce’s first novel, “A Portrait of the Artist as a Young Man,” which inspired him as publisher of Scholastic.

Joyce’s novel was a coming-of-age story but by no means a children’s book. It begins, though, as many a fanciful story for young readers might, with the words “Once upon a time.”

Hands-on, applied learning on Coursera

0
Hands-on, applied learning on Coursera

By Melody Liu, Senior Product Manager, Coursera Labs

Demand for people with data science and artificial intelligence (AI) skills continues to rise. Data science roles are growing by 37% annually, and for artificial intelligence jobs, the annual growth rate is 74%. These are specialized skills that require hands-on learning to master, but fortunately, opportunities to build and practice in-demand data science and AI skills like PyTorch, SQL, and Python are more accessible than they’ve ever been before.

We’ve seen that with hands-on programming assignments, you can increase your skill development by up to 30%. The ability to practice the skills you’re learning in real-time—on real-world projects—can positively impact the rate at which you learn as well as the depth of your mastery. You’ll also build career confidence through knowing how to apply your newfound skills on the job.

Below we highlight three types of hands-on learning you can find on Coursera. We also share details on how you can get unlimited access to these learning programs with Coursera Plus and confidently grow your in-demand career skills.

Assess and advance your technical skills with Lab Assignments

You can develop your technical skills in courses that contain Lab Assignments. With Lab Assignments, you can work on a coding challenge in a pre-configured environment directly in your internet browser with all of the instruction files already uploaded—no additional setup required. You’ll get real-time feedback from autograders as you work on your assignment so you can easily track your progress and monitor your skill development. 

There are nearly 200 courses that feature Lab Assignments. Start exploring some of the Specializations below or view the list of all courses with Lab Assignments.

Here are a few of the most popular Specializations on Coursera with Lab Assignments: 

Practice Programming with Lab Sandbox

Many top technical courses feature Lab Sandbox which is an in-browser cloud workspace pre-configured with the tools and packages that are relevant to the course. With Lab Sandbox, you can practice coding, work on programming assignments, run test cases, play with demo examples, and even build your own project. 96% of learners we surveyed who tried Lab Sandbox were highly satisfied with the experienceYour work is not graded, there are no instruction files, and you don’t need to set up or configure a local coding environment—you just go straight to learning and practicing job-relevant skills. 

Ready to try it out? We’ve curated a collection of courses so you can easily identify which courses have Lab Sandbox. You’ll have access as soon as you enroll and pay for your course. We’ll continue adding Lab Sandbox to more technical courses in the coming year, so you’ll continue to have an expanded selection of opportunities to take advantage of this feature. 

Learn job-relevant skills in under two hours with Guided Projects

With Guided Projects, you can get hands-on practice with some of the most in-demand skills in under two hours. Whether you want to learn a new tool for a project you’re leading at work or quickly build a particular skill for an upcoming job interview, Guided Projects offer ideal hands-on learning experiences that are short, focused, and effective.

When you enroll in a Guided Project, you get access to a virtual cloud desktop with the required software and data pre-installed and configured. You’ll experience a side-by-side interface in a web browser where you can follow along with video instructions on one side of the screen as you practice the tasks in real-time in a virtual workspace on the other side of the screen. This enables you to seamlessly learn how to use everything from Tableau for data visualization and SQL for querying to TensorFlow for Machine Learning, and so much more.

To date, there have been more than 2.5 million enrollments across the 1700+ Guided Projects currently available on Coursera. Explore some of the most popular Guided Projects in the collections below: 

Get unlimited access to the largest volume of hands-on learning experiences with Coursera Plus

You can lock in unlimited access to most courses with Lab Assignments and Lab Sandbox—as well as nearly 2,000 Guided Projects—with Coursera Plus, now available as a monthly subscription. Try it for free with a 7-day trial. You can also choose an annual subscription plan to get the best value on hands-on learning to build job-relevant, technical skills. 

Whether you’re specifically honing your Python skills in a Lab Assignment, trying out SQL in a Guided Project, or taking advantage of Coursera Plus to build your skill set in multiple learning programs, you’ll always be able to practice and apply what you’ve learned as you develop new skills and build confidence in your career.

5

Software developer portfolio tips: What to include and more

0
Software developer portfolio tips: What to include and more

Whether you’re a freelance developer looking for clients, a junior developer looking for your first development job, or a senior-level developer with years of experience, having a portfolio is essential. Your portfolio will help you showcase your skills and stand out from your peers during your job search.

In this article, we’ll take a look at what you should include in your software developer portfolio, along with tips for how to build your collection of portfolio projects, where to host your portfolio, and more.

Do you need a software developer portfolio?

Every developer who has completed a few development projects should have a software developer portfolio. While a technical resume may be enough to start applying to some jobs, a portfolio will show that you can actually use all the skills listed in your resume.

Plus, resumes are usually only seen when you are looking for a job, while your portfolio can work for you all the time. You can share a link on your LinkedIn and social profiles like Twitter to let your contacts see what you can do. Through your portfolio, contacts can learn more about you, see your work — and it makes networking and introductions easy. Who knows? Maybe the best job will come when you aren’t even looking for it.

Of course, if you haven’t created any projects yet you won’t need to create a portfolio just yet. But the fact that you’re reading this article shows you’re in the right spot to start building a strong portfolio as you start creating your own professional-grade projects. If you’re learning with Codecademy, you’ll find Portfolio Projects built into our Career Paths, giving you the opportunity to start building out your portfolio as you go.

What should a software developer portfolio contain?

Your portfolio doesn’t need to be a complete website — it can just be a simple page. In fact, it should be. Recruiters and hiring managers are reviewing a lot of portfolios and have limited time to spend with yours. So if you are thinking of including a TL;DR section, it may contain too much information. However, here are some details you should include.

Information about you

We’ll start with what to include in your About section. This is the non-technical section of your portfolio. It’s where you’ll let visitors and recruiters know a little bit more about you, share some high level experience, and let people know how to contact you. Here are some things to include in this section.

Bio

You’ll want to describe aspects of your personality. Maybe describe why you got into programming. You can also include any hobbies or activities. There’s no need to go overboard, but this is where you can show your personality.

Contact information

This is the most important part. Make sure that people can contact you from your portfolio page. Include at least your email. Many recruiters like to contact candidates by phone, but having your phone number visible may result in unwanted calls, so that decision is up to you.

Relevant skills

You’ll want to list your technical skills. Don’t list everything — just those skills you are strong in and want to work with again. If you are currently looking for a job, update the skills section to fit the job you want. Want more to add to this section? Learn a new language or skill from our course catalog.

Related social media profiles

The obvious links to have here include your Github, Bitbucket, Gitlab, and LinkedIn profiles. There also might be other profiles you want to add. If you actively answer questions at Stack Overflow, Quora, or Reddit, you should add links to those profiles. Of course, you only want to add links to those if you have a good reputation and focus on technology topics.

Awards, contests, or other recognition

Add links to any articles or books that you have published. If you entered a coding contest and won, add it. If you captured a big bug bounty, add that too.

A link to your resume

Recruiters and HR always want a hard copy, so it is essential to include a link to your resume so they can print it out.

What types of projects should you include in your portfolio? You can include a mix of professional projects and personal projects, depending on where you are in your professional journey.

Note: While screenshots or website links may suffice during the initial stages of the hiring process, you’ll also to “show your work” (i.e. your source code) to impress the technical people involved. Choose a free software repository like Github, Bitbucket, or Gitlab and add your source code. Make sure to add documentation to your projects to explain what they are as well as how to use them.

Professional projects

If you’re more experienced, you’ll likely have a variety of projects you worked on for others, whether a client, a job, or a programming course. Link to the projects so recruiters can see your work in action.

Make sure to include projects that utilize technologies that you’d like to work on again. Also include any relevant details about the project, like screenshots, who the project was for, and when you completed it. If the project is a live website, link to it.

Personal projects

If you’re new to programming and are looking for your first development job, you may not have related experience other than the projects you completed for a course. That’s ok! If your projects section is light, it’s ok to add personal projects to boost your portfolio.

Where should you host your developer portfolio?

The first thing you need to consider when you want to create your portfolio is where you will host it. Where you create your software developer portfolio depends on your current skills and your budget. There are plenty of free options.

If you are a back-end developer or full-stack developer, the best option is hosting your portfolio on your own domain. After all, setting up a server, building your own portfolio site, and deploying it are both back-end and full-stack skills. The site itself will be part of your portfolio. Front-end developers who know how to deploy a website should also use this method. When you host your own portfolio on your own domain, the portfolio itself serves as a portfolio project and example of your work!

Another option is using the free hosting available at Github, Bitbucket, or Gitlab. All of these sites provide free code repository hosting and the ability to create static websites that you can use to describe your code projects or for any use you choose. Using one for a software developer portfolio makes perfect sense.

You could also use Dribble, which is a site that hosts web designer portfolios.

How can I add to my portfolio?

The best way to add to your software engineer portfolio projects is to write more code. Building a software developer portfolio can be hard when you’re new to software development, but as you create projects you can build your portfolio as you go.

Here at Codecademy, our Career Paths not only teach you how to write code but also give you project assignments that you can add to your software developer portfolio.

In the Front-End Engineer Career Path, you’ll complete three projects that will show your ability to use JavaScript animation, build full-scale React apps, and create modern, pixel-perfect web designs with CSS. If you complete the Back-End Engineer career path, you’ll build applications that will display your skills in building and deploying production-level back-end applications and APIs. The Full-Stack Engineer Career Path includes a collection of professional projects that show you can build web applications from the front to the back using React and Node.JS. Head to our course catalog to learn more.

5 of the Codecademy community’s favorite programming TV shows

0
5 of the Codecademy community’s favorite programming TV shows

Two weeks ago, we shared a list of our learners’ favorite programming-related movies. Now, we’re back with a list of their favorite TV Shows! Comedies, drama, sci-fi, thrillers — we’ve got ’em all. Take a look through the list and join us as we fall in love with this diverse array of casts and characters.

Silicon Valley

Silicon Valley is a comedy series depicting the trials and tribulations of a rising software development company. Its 6 seasons follow Richard Hendricks’ and the rest of the Pied Piper team as they navigate through competitors, copyright infringement cases, hostile takeovers, international copycats, and more.

“Just one more vote for HBO’s Silicon Valley. It’s so delightfully uncomfortable.” — Alyssa, Codecademy team member

Silicon Valley was the most popular coding-related TV show among our learners — and for good reason. The show won the Critics’ Choice Television Award for Best Supporting Actor in a Comedy Series, 5 nominations for Outstanding Comedy Series, and it currently boasts a rating of 94% on Rotten Tomatoes. Fans of other popular shows like The Office and Space Force will recognize familiar faces on the show, as it stars well known-actors like Zach Woods and Jimmy O. Yang.

Mr. Robot

Mr. Robot tied with Silicon Valley as our learners’ favorite TV show. The series follows Rami Malek in his role as a neurodiverse young cybersecurity engineer who gets roped into social hacktivism.

“Mr Robot was really impressive in almost every way. As far as TV series go its top tier IMO” — java7069023110, Codecademy community member

Mr. Robot serves as a dark contrast to its light-hearted predecessor, delving into somber themes like murder, substance abuse, mental health disorders, and social issues. Still, it earned a warm reception from critics after its release and proceeded to win a Golden Globe for Best Television Series.

Like Silicon Valley, Mr. Robot currently holds an approval rating of 94% on Rotten Tomatoes. After the release of its first season, the series was the first to receive perfect scores for each of its episodes. Along with Rami Malek, celebrities like Christian Slater and BD Wong also star in the show.

Halt and Catch Fire

Halt and Catch Fire is a period drama depicting the technological revolution of the 80s and 90s after PCs and the internet gained prominence. The series follows protagonist Joe MacMillan and his supporting characters as they try to find their footing in the booming industry.

“Recently, as in yesterday, I started watching Halt and Catch Fire. Only a few episodes in, but so far I am finding it pretty good!” — Lillian, Codecademy team member

In 2014, the production won the Critics’ Choice TV Award, and it’s commonly compared to other popular shows like Mad Men. While not as dark as Mr. Robot, the show touches on infidelity and failing marriages, shady investors, the dark uses of the internet, and other hardships in the characters’ personal and professional lives.

The IT Crowd

The IT Crowd follows its three main characters that form the IT department of a nondescript business. Despite its season finale airing over a decade ago (barring a concluding special in 2013), the series still boasts a strong following — with over 30-thousand active members in its dedicated subreddit.

“Not terribly coding-related, but The IT Crowd was pretty good/funny.” — Tod, Codecademy community member

The IT Crowd received mixed reviews upon its initial release, but it quickly became a rising star and went on to win Best New British Sitcom in 2006, Comedy of The Year in 2007, and International Emmy Award for Comedy in 2008.

IT professionals are bound to love the series for its tongue-in-cheek exaggerations of the stereotypes surrounding the field. As an example, take Roy Trenneman, a technician who hooks his phone up to a tape recorder that loops through typical lines like “have you tried turning it off and on again?”

Devs

Devs is a suspenseful, sci-fi miniseries that features stars like Nick Offerman — who’s famous for his role in Parks and Recreation. The miniseries follows Lily Chan, who investigates her company after the sudden disappearance of her boyfriend after he joined its secret quantum computing team.

“Devs is a HBO mini-series that does a pretty interesting take on programming” — Nightduck, Codecademy community member

Devs is bound to keep you on the edge of your seat as you watch its complicated events unfold. While centered on futuristic technology, the series also branches into political espionage and mental health issues as we venture into the characters’ tragic pasts.

While it fell shy of winning the awards, the captivating thriller earned several Emmy, BAFTA, and Critics’ Choice nominations.

Hopefully, the binge-worthy TV shows listed above will help keep you glued to your seat the next time you find yourself flipping through channels. Or, if you find yourself returning to a personal favorite, share it in a comment below.

Data analyst interview questions: Common questions and answers

0
Data analyst interview questions: Common questions and answers

Congratulations! You’ve landed an interview for a data analyst position at the perfect company. You’re only inches away from your dream career, and all you need to do to seal the deal is answer a few questions.

Of course, it’s best to practice first. To make sure you’re well-prepared for your upcoming interview, we’ll walk you through some common data analyst interview questions. Read on for a mix of technical and behavioral questions that’ll help refresh your understanding of data analytics’ fundamentals and key principles.

What are the key concepts of data analytics? How have you applied these in working with datasets?

Key concepts and elements of data analytics include:

  • Big data
  • Database design
  • Data mining
  • Data segmentation
  • Statistical analysis
  • Data cleansing
  • Data profiling
  • Data validation
  • Clustering
  • Collaborative filtering
  • Time series analysis

Learn the definitions of these terms and concepts and describe how you used them to solve a problem.

You may hear this question during a technical interview. Describe ways you debugged code or built or added features to a product. You may want to bring in examples of what you applied using programming languages, coding, data projects, or checking code.

Technical interviews sometimes require candidates to solve a data problem or at least lay out their approach to the problem and explain how they’d find a solution. The interviewer would likely be looking for the candidates’ methods rather than the correct solution.

How do you approach problem solving?

Give your interviewer a glimpse into your mind. Describe any problems you’ve encountered with incomplete or poor quality data, and explain how you cleansed it or filled its gaps.

Provide examples of how you handled new tasks, dealt with challenges, managed multiple responsibilities, overcame disagreements and mistakes, and performed under pressure. You don’t have to explain every challenge you’ve ever faced, but have some real examples on-hand that illustrate your problem-solving ability.

What are your certifications and/or course experience?

Point out any qualifications you’ve earned, especially in key computer languages or systems such as Python. If you’re well-versed in database management or statistics, this is an opportunity to highlight your knowledge of those functions.

You may also want to highlight your familiarity with libraries and frameworks geared toward data science, like SciPy or Seaborn.

If you don’t have many certifications, try explaining how your experiences in past positions relate to your capacity as a data analyst.

Why are you looking to make a career change?

You’ll likely hear this question if you’re switching to a new career in data analytics. In an article for The Muse, Caris Thetford recommends answering this question by explaining how the universal skills you gained from your past experiences have influenced your approach to coding.

This type of question is also one you can answer with a practiced elevator pitch that emphasizes your desire to produce great work as a reason for your career switch.

If you’re uncertain about your experience with or knowledge of data analytics, try addressing how your skills transfer into the specific industry you’re aiming to enter.

Prepare for your data analyst interview

Because of its wide range of applications in data science and analytics, you may also be questioned about your knowledge of Python. Use this list of practice Python interview questions to refamiliarize yourself with the language’s key components and concepts.

If you need a more in-depth refresher of the skills and knowledge you’ll need as a data analyst, check out our Data Analyst Career Path. We’ll cover everything you need to know, help you build a portfolio, and even give you some more tips on interviewing.

Or, if you’re starting fresh, check out our data science career guide. We’ll help you find the right path toward your future career in the field.

What is Ruby used for?

0
What is Ruby used for?

Ruby is a popular, general-purpose programming language. You may have heard of it in connection to Ruby on Rails, one of the most popular web development frameworks in any programming language. Although much of Ruby’s popularity comes from this connection, Ruby has many uses, including web scraping, static site generation, command-line tools, automation, DevOps, and data processing.

In this article, we’ll take a look at how Ruby came to be and what makes it unique among programming languages.

What makes Ruby different?

Ruby is often called a “language of careful balance.” It was released in 1995 by Yukihiro Matsumoto. Matsumoto had in-depth knowledge of multiple programming languages, including Perl, Smalltalk, Eiffel, Ada, and Lisp. He created Ruby to combine what he thought were the best features of these programming languages.

Ruby is a very flexible programming language that allows developers to alter how the language itself works. You can add functionality to core language features or even remove them if you need. Ruby is also a highly portable, cross-platform language. Code you write on one operating system will run on Linux, Mac OSX, and Windows. It will even run in UNIX, DOS, BeOS, OS/2, and more.

What is Ruby used for?

Ruby developers really love the language and have found many uses for it over the years. Check out some of the places Ruby is used in the list below.

Web development

Web development is one of Ruby’s claims to fame because of the popular web development framework Ruby on Rails. Ruby on Rails was first released in 2005, and it changed how web development was done. Before frameworks like Ruby on Rails, developers had to spend a lot more time writing code to create a web application.

Ruby on Rails gives web developers everything they need to build a web application. Rails uses conventions that define the structure of every Rails app, so developers can spend less time configuring their projects. It has code generators that will generate parts of your application with a simple command, so developers write less code.

The rapid development that Ruby on Rails makes possible also made it a popular choice for startups because it allowed a small team of developers to build large applications quickly. Some sites you may have heard of that use Ruby on Rails include Github, Shopify, Kickstarter, Twitch, Instacart, Zendesk, SoundCloud, Ask.fm, Hulu, and Square.

Static site generation

Most websites use server-side code that generates HTML and serves it to your browser when you visit a page. There is no actual HTML file located at the URL you visited.

A static site generator still uses code, but it generates all the pages for a website at one time. Those pages are then deployed to a server, and when you visit a URL, you are served a static HTML file. Web sites built with static site generators are fast, efficient, secure, and easy to deploy. They’re also useful for sites where content doesn’t change frequently.

Written in Ruby, Jekyll was the first static site generator and is still the most popular. Github’s founder, Tom Preston-Werner, created Jekyll and made it the default way to publish content on Github. The popularity of Jekyll took off after that, and many other programmers followed with their own static site generators in a multitude of programming languages.

DevOps and automation

Ruby is widely used for DevOps, automation, and website deployment. Heroku is a popular web app deployment platform that makes launching apps quick and easy, even for users who are unfamiliar with DevOps. Startups flocked to Heroku when it was first introduced because it allowed small teams to test, deploy, and stage their applications without a dedicated DevOps engineer. Now Heroku supports multiple languages, but originally it only supported Ruby.

Vagrant is a tool for managing virtual machines from command line. It allows developers to code and run projects developed for a specific operating system run on any operating system. For example, a developer can build services made to run on Linux on their Mac or Windows laptop and be sure that it will run correctly when deployed. Vagrant is written in Ruby, and Vagrant development environments must be configured with Ruby.

Chef and Puppet are tools that DevOps engineers use to automate and manage the configuration of web applications and servers. Using Chef or Puppet, engineers can define application environments with a simple configuration file and then use that configuration to launch instances of the application without any manual steps on any platform.

Web servers

You can also use Ruby to build web servers. Passenger, Unicorn, and Puma are web servers written in Ruby. They process raw incoming HTTP requests, send them to correct backend web applications, and then handle the HTTP response sent back from the application. Ruby web application servers work hand in hand with web development frameworks written in Ruby.

Data processing

Ruby is also a great language for data processing, cleaning, and filtering. Ruby’s built-in map, reduce, and select functions are powerful tools used to solve many data processing problems.

Web scraping and crawling

Ruby has a wide variety of packages available that make extracting data from web pages a breeze. Ruby libraries like Vessel are used to crawl and download web pages. Nokogiri, another popular Ruby library, is then used to parse the HTML from the pages that have been crawled to extract specific parts of the page in a structured way to make it useable for data analysis.

Get started with Ruby

Ruby is a popular, flexible programming language that is in high demand in the marketplace. It can be used for web development, scripting, data processing, DevOps, static site generation, and more.

If you think Ruby is the programming language for you, a good place to start is with the Learn Ruby course. It will teach you the fundamentals of programming in Ruby. To learn one of the most popular web development frameworks and begin building your own web applications, check out the Ruby tutorial Learn Ruby on Rails. If you want to take your Rails education even further, we also have Learn Authentication with Ruby on Rails.