fbpx
Home Blog Page 1069

What Is Node.js?

0
What Is Node.js?
What Is Node.js?

If you’re considering a career as a Back-End Developer, you might’ve heard about Node.js. Node.js is an open-source, server-side runtime built on Google Chrome’s V8 JavaScript Engine.

Before Node.js, the programming language JavaScript could only be executed in the browser. Developers had to rely on other languages for server-side development, including Apache HTTP Server, Python, PHP, and Java. After it was developed in 2009 by Ryan Dahl, Node.js allowed developers to run JavaScript on a server or locally on their computer.

This quickly made Node.js an extremely popular platform because it gave Front-End Developers the ability to write back-end code for their applications in the same language — and it’s still popular today, ranking first in Stack Overflow’s list of the top web frameworks and technologies. Ahead, we’ll explore how Node.js is used to build different types of applications and the pros and cons of using it.

What is Node.js used for?

Node.js can be used for all types of applications, but it’s commonly found in back-end, real-time, and IoT (Internet of Things) applications.

Back-end applications

As we explained earlier, Node.js enables developers to use JavaScript in both the back end and the front end. This makes it popular with companies who would prefer to work with one programming language across their tech stack.

It’s also well-suited for microservices architecture, which involves breaking up a large monolithic service into smaller services that can scale easily. Many companies — both large and small — have switched from back-end services written in other programming languages to Node.js. Studies show that it’s currently used in over 30 million websites.

Real-time applications

Another common use-case for Node.js is real-time applications. Node.js is event-driven and asynchronous, meaning it handles heavy input/output operations quickly and efficiently.

This makes it perfect for real-time applications like chat apps and chatbots. Socket.IO is a Node.js library used in chat and other real-time applications because it allows bidirectional  communication between a browser and a server. And when more processing power is needed, Node.js microservices can scale more quickly.

Node.js’ utility in real-time applications also allows it to be used in streaming services. Ever wondered how platforms like Netflix manage to stream videos to millions of users all over the world? In 2018, Netflix switched many of its APIs to Node.js to make streaming more efficient. Its asynchronous, non-blocking input/output abilities make it the perfect choice to stream videos and music without buffering or slowing down.

IoT applications

Node.js is also a great platform for IoT development, which has been growing in recent years. IoT devices are constantly sending data back to a server for processing. Node.js can process the billions of concurrent requests created by IoT devices and process event data seamlessly without bogging down.

If more processing power is needed, scaling is available. Its event-driven server architecture is especially suited to processing all these requests asynchronously. Tessel 2 is a popular robotics and IoT development platform written for Node.js that makes developing IoT devices simple.

What are the advantages of Node.js?

It didn’t take long for Node.js to become a popular language with developers and enterprises. Here are some of the reasons why:

  • Relatively low learning curve: Most Front-End Developers are already familiar with JavaScript, so learning Node.js feels natural.
  • Full-stack development: Using JavaScript in both the front end and the back end means that the same developers can work on both parts of the app and better grasp how the two ends work together. (To learn more about how the two interact, check out our Connecting Front-End to Back-End course.)
  • Community support: There is a huge online community of Node.js developers that will lend a helping hand when you get stuck. Many tech giants — like Amazon, Google, and Facebook — contribute some of the third-party libraries in the Node.js ecosystem.
  • Scalable architecture: Node.js features allow microservices architecture to break an application into multiple services to scale up.
  • High-performance for real-time applications: The single-threaded, event-driven architecture of Node.js allows it to process many concurrent requests without slowing down the application.
  • Saves development time and money: When you use Node.js for your server-side code, you only need JavaScript developers to work on both the front-end code and the back-end code instead of hiring two separate teams.

What are the disadvantages of Node.js?

Like any other technology, Node.js also has some disadvantages. They include:

  • Lowered performance for heavy computing tasks: The single-threaded, event-driven features of Node.js aren’t well-suited to heavy processing tasks. Node.js added “worker threads” in 2018, but it still falls short of other programming languages when it comes to CPU-bound tasks.
  • Frequent API changes: The API for Node.js changes frequently when there are updates to the runtime. This often means that code written for one version of Node.js may not work for a new version and will have to be updated.
  • Inconsistent NPM libraries: NPM is a package manager that Node.js uses for third-party libraries. While many of these libraries are top-notch, some can be of poor quality and not documented well.
  • More demand than developers available: The demand for Node.js developers is growing faster than the pool of developers who know the technology. This means it can be hard for businesses to find the right developers, but it’s also a good thing if you’re considering becoming a Node.js developer because your skills will be in demand.

Learn more about Node.js

Ready to jump into Node.js? Your first step is to learn JavaScript — and it also helps to know a little HTML. Once you’ve gotten the basics of those two languages down, try our Learn Node.js course.

You can also check out our Back-End Engineer career path. We’ll show you how to use Node.js and frameworks like Express.js to build complete back-end applications, and you’ll also use tools like SQL and PostgreSQL to build and manage databases. Plus, you can use the projects you build in this course to create a portfolio that’ll help you land a job.

Ready to get started? Sign up now!


JavaScript Courses & Tutorials | Codecademy

JavaScript is a fun and flexible programming language. It’s one of the core technologies of web development and can be used on both the front-end and the back-end.

Free August 2022 Wallpaper & Instagram quote

0
Free August 2022 Wallpaper & Instagram quote

Free August 2022 Wallpaper & Instagram quote

Free August 2022 wallpaper is here!

Celebrate summer days with bright and cooling shades of blue. The main inspiration for this month’s wallpaper was azure ocean waves on the beach full of golden sand. I hope this calming view with help you relax during hot summer days.

Each wallpaper download from August 2022 includes:

  • Desktop wallpaper x3 (plain, with the calendar, and with a quote)
  • Phone wallpaper x2 (plain and with a quote)
  • Tablet wallpaper
  • Instagram ready quote

As always, August’s free wallpaper comes with two different mobile phone layouts. They are great to use at once – the simple version for your phone background and the one with a quote for the lock screen.


Quote for August 2022

Let’s sparkle like the golden sand in the summer sun! Don’t forget about it and share that knowledge with others using this cute Instagram-ready image!

Life won’t sparkle unless you do

P.S the square image is also included in the download package below! Feel free to post it on your Instagram.



Looking for more? Check our previous wallpapers!

The free download includes three desktop options – one with the calendar and one without the calendar, and one with a quote. There is also a wallpaper for tablets and two options for the phone. We have also included an Instagram-ready square with the weekly quote.

Free August Wallpaper on different devices

FOR PERSONAL USE ONLY.

NOTE: this wallpaper is available as a free download through August 31, 2022 only. After that, a $5 download fee applies.


What font is it?

If you are curious about what font has been used this month, let me help! The main hero of this moth is called Coachella. I bought it in a huge font bundle, and I strongly recommend checking it out! I bet you will get lots of use from it.

The script font from this month’s quote is called: Southfall Ligh and is just another cute script typeface, but I like using it from time to time.



Your voice matters!

If you have your favorite quotes and would like them to appear on the next free wallpaper, make sure to post them in the comments below or send us your ideas via email.

Enjoy!


P.S This post includes affiliate links so by clicking them you are supporting us. Thanks!

AIU Slides: Homeschooling

0
AIU Slides: Homeschooling

This series are dedicated to all of the students and guardians accepting total responsibility for their education and the education of their children, #homeschooling #AIU #aiuslides #UniqueAndUnrepeatable

AIU Slides: Wetlands

0
AIU Slides: Wetlands

This series are a call to action to preserve our wetlands. During the last 55 years 35% of the wetlands have disappeared. #aiuslides #aiu #wetalnds #sustainabledevelopmentgoals #globalwarming

The Most Useful Programming Languages for Business Analysts

0
The Most Useful Programming Languages for Business Analysts
The Most Useful Programming Languages for Business Analysts

Business Analysts spend a lot of time pouring over spreadsheets and putting together slide presentations. But these roles are evolving as more complex data streams and advanced analysis, like data analytics, become more common.

That’s why it’s helpful to have some background programming knowledge. As a Business Analyst, strong programming skills can help you leverage powerful tools that streamline day-to-day tasks and set yourself apart in a competitive job market.

Ahead, we’ll explore five programming languages that you might want to consider learning if you want to be a Business Analyst.

1. SQL

Structured Query Language (SQL) is a programming language used to manage relational databases. And since Business Analysts spend so much time searching through databases, SQL should be the first addition to your toolkit.

With SQL, you can easily query and extract data from databases to analyze in a spreadsheet program or with one of the other programming languages noted below. Plus, its simplicity and easy-to-understand syntax make it relatively easy to learn.

2. Python

You also might want to consider learning Python. Business analytics involves working with increasingly larger datasets that are beyond the capabilities of traditional spreadsheet programs, and Python makes it easier to process and analyze big data.

It also has statistical modeling capabilities that allow Business Analysts to make much more sophisticated demand and price forecasts. Python even makes data collection faster by easily integrating with SQL databases and automating tasks like web scraping — and its powerful machine learning libraries, like scikit-learn and TensorFlow, help detect trends and patterns from big data. And libraries like seaborn help communicate data insights and results with data visualization tools.

3. R

Like Python, R is an excellent tool for working with big data, and it can also be used for machine learning and complex statistical analysis. It also offers thousands of libraries that give Business Analysts access to tools for time-series analysis, forecasting, and advanced data visualization.

In fact, one of R’s biggest advantages is its sophisticated data visualization tools, which allow you to easily create interactive graphs for websites, report-ready panels of multiple graphs with comments, or customized PDFs.

4. VBA

Not every Business Analyst needs to learn VBA (Visual Basic for Applications), but it can be helpful. Imagine how many monthly, weekly, or daily reports you might need to prepare as a Business Analyst. Sure, they all have different information, but you can save yourself a lot of time with VBA when they’re formatted in the same way.

Business Analysts use VBA to generate custom summary tables in Excel, periodic reports in Word, or slide decks in PowerPoint. And since everything in Microsoft Office is integrated, it’s easy to combine everything — for example, creating a monthly report based on data in Excel, then using the contents of that report to automatically generate slides with bullet points in PowerPoint. Business Analysts who know VBA can save themselves a lot of time in their daily tasks.

5. The language of your team

While Business Analysts aren’t expected to get into software development, it does help to learn a bit about the language your company or team uses every day.

Are you working for a start-up game developer? Learn the basics of C++. Applying to an Android app developer? Pick up some Go or Kotlin. If you already know one or more of the programming languages above, it’ll be easier for you to pick up on some of the other languages used in software development.

When you can grasp the fundamentals of the code your team uses, it’s easier to understand the impact of business decisions on the technical side of things. It also helps build a better relationship with your colleagues and teammates when you’re willing to “speak” their language — literally.

Order matters

When it comes to learning programming languages for Business Analysts, some languages are more in-demand than others.

SQL is at the top of the list. In fact, most hiring managers will rank your SQL knowledge higher than any other language.

After mastering SQL, we recommend learning Python or R. These languages will round out your Business Analyst technical skills by allowing you to do more in-depth statistical analysis and generate sophisticated data visualizations.

Finally, learning VBA can potentially be a great way to work more efficiently with creating spreadsheet summaries, reports, and other administrative tasks if your team uses the Microsoft suite.

Learn the programming skills you need to become a Business Analyst

Ready to learn the skills you’ll need to become a Business Analyst? Pick any of the courses below to get started:

Then, once you’ve mastered the basics, check out our Analyze Business Data With SQL and Analyze Financial Data With Python skill paths to learn how to analyze large datasets and communicate your findings. You also may want to consider taking a course on data visualization.

Sign up now to get started. And if you need a little help while you’re going through your courses, reach out to our community in the Codecademy Forums or on Discord.


For Business Courses & Tutorials | Codecademy

Programming languages serve many different areas of a business that include maintaining operational excellence, improving customer-facing experiences, and evaluating business performance. Keep up with the latest technical knowledge and skills to transform your business.

10 Bash Script Code Challenges for Beginners

0
10 Bash Script Code Challenges for Beginners
10 Bash Script Code Challenges for Beginners

Want to be a professional programmer? You’re going to want to get familiar with Bash.

Bash (Bourne Again Shell) is a command-line interface shell program that makes it easier to navigate and control your computer’s operating system. Learning how to use Bash will help you improve your file and database management, automate tasks, and better integrate your scripts in different programming languages.

To get started, check out our Learn Bash Scripting course. Then once you’ve mastered the basics, use the 10 Bash script code challenges below to apply your new skills.

1. Creating commands

While Bash comes with plenty of useful built-in commands, a key skill every Bash programmer should know is how to create their own.

Write a command that lists the contents of your usr/local directory. Your script can set up variables, but you’re not allowed to call any commands within the script directly. When you run your command, the output should show the directory’s contents in a single column.

For an extra challenge, have your command accept a single argument that lists the contents of the directory contained in the argument.

2. Pick your favorite

Think of three things you like and create a Bash script that prompts the user to respond based on these things. It could be something like “Which would you choose: …”

Using case statements, have the script output different responses based on the chosen selection. For example, if cake is a choice and someone picks cake, a sample output response could be “Great choice. Enjoy your cake!”

To make things a bit more challenging, add an appropriate response message if someone picks something that isn’t on the list. For example, “Sorry, but that’s not on the list. Pick x, y, or z, please.”

You can also have your Bash script prompt for more information about the chosen thing. For example, if someone picks cake, another prompt can ask “What kind of cake?” And that prompt could be followed by a final response based on this input, such as, “Great choice. Enjoy your chocolate cake!”

3. Listing and sorting directories

Create a Bash script that accepts directory paths as arguments. For each argument, list the contents of each directory with the name of each listed at the top.

If you want to give yourself an added challenge, have your script accept an additional argument, “a” or “d,” that sorts the contents of each directory in either ascending or descending order. For even more of a challenge, create a Bash script that sorts the contents of the directories based on an “a” or “d” argument that directly precedes it. In other words, you should be able to sort one directory in ascending order, a second directory in descending order, and so on.

4. SED commands

The stream editor (SED) command is widely used by Bash programmers to process and modify text.

Write a Bash script that includes an SED command that takes the files in your home directory and changes their owner from your username to the reverse of your username. So, for example, if your username is Codecademy, then your Bash script should change the owner to ymedacedoC.

For an extra challenge, have your script accept a numerical input, n, that changes the owner of just the first n files in your home directory.

5. AWK commands

Another way to work with text in Bash is with AWK commands. For this challenge we’ll use the following data set of the world’s countries and their capitals.

Create a Bash script that outputs this dataset into two columns: one for the country and the other for its capital.

For an added challenge, have your script accept a letter as input. The output should be just the countries that start with the input letter. For another challenge, create another Bash script that outputs a two-column list sorted alphabetically by capital city.

6. TPS reports

Using a Bash script, generate an email message that reminds the user to submit a TPS report by a certain day. Your script should accept a date or day as an input argument. For example, if the user inputs “Tuesday,” then the output should look something like:

“Please submit your TPS reports by EOD Tuesday. Your cooperation in this matter is much appreciated.”

For an extra challenge, have your script accept arguments for:

  • Name of recipient(s)
  • Due date for TPS reports
  • Motivational closing
  • Sender

If any of the arguments are blank, the email message should output a default word or phrase.

7. Alarm clock

Create a Bash script that “sleeps” for a given number of seconds before beeping after the time has elapsed. You can make this exercise more challenging by adding features to your alarm clock, such as:

  • An input argument that accepts time rather than the number of seconds.
  • A snooze function that lets you reset the alarm clock to go off again after a given number of minutes.
  • An option that enables you to choose from different beeping sounds in your computer system.
  • An option that plays an audio file stored on your computer.

8. Detect mounted disks

Programmers who work in Bash are often System Administrators who manage computer and server networks. So, it’s important to know which disks and file systems are mounted — that is, accessible by the computer’s file system. Note that just because a disk or computer is physically attached with cables doesn’t always mean that it’s mounted and accessible.

Come up with a Bash script that detects whether a given mount point or file system is mounted. If so, the script should return the amount of used space on the file system and the amount of free space. If the file system isn’t mounted, your script should return an error message.

Looking for an extra challenge? Add a prompt to your script that asks the user if they want to attempt to mount the file system if it’s unmounted. When the file system mounts, the script should then output the amount of used space and free space in the file system.

9. Recursion countdown

Recursion is when a function calls itself to perform the same task until some condition is met. This is most commonly done in Bash with loops.

Create a countdown generator in Bash that accepts a positive integer as input. The output should show numbers decreasing, starting with the input number until 0. After displaying 0, the output should also display “BLAST OFF!”

Looking for something a little more challenging? Try creating a Bash function that accepts any number of arguments. The output should print out each argument on a new line. Your Bash script should use the echo command only once.

10. Sales tax calculator

While Bash is commonly used to work with file systems and applications, it can also perform basic math.

Create a Bash script that functions like a sales tax calculator using your home state’s sales tax rate. If you live in a state with no sales tax, use the rate of a nearby state. Your Bash script should accept a decimal number as input and output the item’s total price rounded to the nearest cent.

Here are a few ways to make your sales tax calculator more challenging:

  • Create a script that accepts both base price and state as input and outputs the total price based on the tax rate in that state. Here’s a good reference for sales tax rates in the US by state.
  • Create a script that accounts for local sales tax within a state. It should accept either a city/town name or ZIP code as input to calculate the local sales tax.
  • Include input that accounts for the type of item being purchased. For example, many states don’t charge sales tax on groceries, and some don’t charge sales tax on clothing if the total purchase is less than a certain amount.

Or, for an ultra-challenge, create a tax calculator that incorporates all of these things. You’ll probably want to create a dedicated folder that contains all the data files you need.

Every developer should know Bash

Whether you’re working on web design as a Front-End Developer, analyzing big datasets as a Data Scientist, or managing databases as a Back-End Developer, knowing Bash and how to use the Terminal are valuable skills that can support your work.

Once you understand the basics of Bash scripting, you can keep building your skills with online programming courses. If you’re not sure which programming language or tool to learn next, our career paths will help point you in the right direction to get you started in your new career.


Bash/Shell Courses & Tutorials | Codecademy

We use a mouse or finger to click icons and access files, programs, and folders on our devices. But this is just one way for us to communicate with computers. The command line and the shell make up a quick, powerful, text-based interface developers use to more effectively and efficiently communicate…

How Much Does a Scrum Master Make?

0
How Much Does a Scrum Master Make?

If you’re looking to break into software development, you might have come across the scrum framework.

Never heard of it? It’s essentially a method for teams to work together to update and improve upon software. It’s a process that’s closely related to Agile software development, an iterative approach to completing projects that’s very popular in the tech world. In a scrum project, team members must communicate to prioritize tasks, keep track of progress, and sum up what was done and what was learned at the end of an effort.

Teams that use the scrum framework have a Scrum Master who is responsible for assembling a team of developers and making sure that the software they’re working on actually works. A Scrum Master’s role is a combination of a coach, technical expert, and manager. They ensure clear communication within a team of developers or programmers, organize their focus on development tasks, contribute to tech development where needed, and take responsibility to deliver the team’s work on deadlines.

While it’s common for salaries to vary in any industry, a Scrum Master’s pay is particularly mixed. That’s because there’s a broad range of people (with varying experience levels) who can take on the role of Scrum Master on any given team. For example, Developers, Business Analysts, and Senior Project Managers can all be Scrum Masters according to Indeed; and average annual salaries for these jobs range from $46,582 to $106,121.

With all that in mind, let’s break down the salary range you might expect from a Scrum Master role, and what factors can affect it.

Range of roles and compensation

Because of the varied nature of Scrum Master positions, determining what their compensation is will also require breakdowns of the various titles that can be considered Scrum Masters. Here are just a few that will help give you a better idea.

Software Engineers

Software Engineers are a key part of a scrum team, and can also be Scrum Masters. These engineers, or developers, should know key languages such as HTML, PHP, SQL, and Python. Even if the Scrum Master comes from a discipline other than software engineering, they need that programming knowledge to communicate effectively with the working team. Software Engineer compensation can range from $38,000 for the most junior professional to about $172,000 for the most senior and experienced software engineer.

Project Managers

Indeed gives a few different figures for Project Managers:

However, a Project Manager’s title can be very general and doesn’t always connote the same thing as Scrum Master. A Scrum Master is different from a Project Manager because the Scrum Master’s sole focus is on the success of the team working on the project or product in question, while the Project Manager is also responsible for budgeting time and resources, among other issues.

Agile Coaches or Managers

Agile Coaches, also referred to as Agile Managers, focus on that type of software development approach. Glassdoor estimates the average salary of an Agile Manager at $115,277. An Agile Manager must have more specialized knowledge than a Project or Program Manager, and can even take an exam to be certified as an Agile Manager.

Similar Scrum Master roles that include Agile specialties have a much higher ceiling for pay. According to ZipRecruiter, a Safe Agile Coach can earn $152,236, while Glassdoor estimates that an Agile Scrum Coach can earn $111,874.

Qualifications

Naturally, your education and experience will affect your earning power in a Scrum Master role. For some people, that begins with a bachelor’s degree in a relevant subject, such as information technology (IT), computer science, or business administration. That said, more and more tech companies are moving away from requiring specialized college degrees. There are many paths to tech careers that involve flexible education, and you can seek out online courses and certifications that will get you up to speed. If you want to learn to code, check out our course catalog for a range of options.

Of course, to become a Scrum Master, your education should be supplemented with work experience, particularly in using Agile or as an Agile Developer. You should also earn a certification as a Scrum Master. A preparation course for this certification lasts just a few days.

While certification is not an absolute must-have to work as a Scrum Master, it could help increase your salary prospects. A 2019 survey by Age of Product, an Agile software development company, found that 44% of Scrum Masters with certification earn over $100,000, while only 18% of those without a certification earn over $100,000.

Since the role of the Scrum Master is flexible and the definition varies, succeeding as a Scrum Master requires certain soft skills. To be a Scrum Master, you should be an adept communicator and comfortable interacting one-on-one and in groups. A Scrum Master should also be a motivator and administrator for the scrum team.

A wide Scrum Master salary range

Due to variation in experience, role, and levels of qualifications in Scrum Master roles, different sources and surveys show Scrum Master salary ranges and averages that are less consistent than those of other programming, computing, and technology jobs.

So while it may be difficult to say exactly what you’ll make in this industry, here are different sources’ ranges for what the salary you might expect to see:

Geographic differences

As you might expect, salaries can vary depending on where you live. Four of the top 10 cities in terms of average salary for Scrum Masters, according to ZipRecruiter, are in California: San Jose, Oakland, Hayward, and Vallejo. The top 10 is rounded out by a few other cities:

  • Santa Barbara, California
  • Hoboken, New Jersey
  • Jackson, Wyoming
  • Barnstable Town, Massachusetts
  • Seattle, Washington.

These average annual salaries range from $132,454 to $138,361.

A role with great potential

What makes a Scrum Master career path so unique is that the required experience — and thus salary — is flexible according to what you bring to the role and what you hope to get out of it.

Whether you’re interested in being an Agile Coach or Software Engineer, our programming courses can help you get started. Familiarize yourself with PHP, SQL, and Python to establish your foundation to become a Scrum Master, and take a look at our career paths to help figure out what other skills you need to succeed.

What Does a Business Analyst Do?

0
What Does a Business Analyst Do?

You might not immediately associate business analysis with the tech world, but Business Analysts actually play key roles in the Information Technology (IT) industry. Because they use data to help guide businesses in improving their processes, products, and services, Business Analysts can be crucial to companies and their growth.

Unlike Data Analysts, who work more closely with the data itself, Business Analysts use data to help address business needs and make strategic decisions. If you’re good at problem-solving, analytical thinking, and communication, this job might be a great fit for you.

Ahead, we’ll take a closer look at what a Business Analyst does, and how you can get started in this career path.

What is the role of a Business Analyst?

A Business Analyst helps companies define their needs and make better decisions based on past and current business data. Let’s break down what that actually means in practice.

How Business Analysts help define business needs

When we say “business needs,” we’re referring to how the company can meet its financial, strategic, and product goals, both short-term and long-term. Typically, it’s the company’s senior leadership, board of directors, investors, and shareholders who have the final say in the company’s direction and strategy. Examples might include goals such as:

  • Having a commercially viable product that does x, y, and z by a certain date
  • Achieving a certain amount of market share by a certain date
  • Improving sales volume, revenue, or profit within a certain timeframe
  • Ensuring that products and business practices stick with a certain mission or set of values such as sustainability or fair trade

Business Analysts take the company’s strategy and goals into account and use data to help the company figure out what it needs to do to meet those goals.

How Business Analysts work with business data

The term “business data” refers to data generated by the business itself (internal data), as well as relevant data from customers and competitors (external data).

Examples of internal data include:

  • Customer relationship management (CRM) records
  • Direct feedback from customer surveys
  • Point-of-sale (POS) and other transactional data
  • Internal documents
  • Device sensors

Examples of external data include:

  • Indirect feedback from people who refer to the company in blogs or on social media
  • Competitor data
  • Stock indices and other economic indicators
  • Third-party data from business intelligence companies

Companies have more access to internal and external data than ever before. But while it may seem like a good idea to work with as much data as possible, remember that it takes time to filter and prepare data before it’s usable. And a lot of external data isn’t free. It’s up to Business Analysts to consider which data sources are the most relevant and cost-effective.

How Business Analysts help make better decisions

By “better decisions,” we mean that business analysts bring value by working with complex datasets to reach conclusions that wouldn’t be obvious just by skimming through the data. At the same time, good Business Analysts know how to interpret the data into a clear action plan. Essentially, they act as a liaison between advanced tech and an organization’s stakeholders. A couple of examples of a Business Analyst’s conclusions might be:

  • By implementing the new back-end database structure, your website’s page load times will be 50% faster than your biggest competitor’s, which will help you reach website traffic goals.
  • If your next software release includes these new features and is priced 10% lower, we predict that the company will meet its market share goals while still staying above its profit goals.

Business Analysts are skilled communicators

Business Analysts, similar to Data Scientists, occupy a bit of a bridge role. On the one hand, the bulk of a Business Analyst’s role is technical — they need to understand how to process and analyze large datasets and the costs and benefits of different technologies and solutions. Business Analysts also work closely with technical and IT teams to understand the resource and technology limitations of the company.

But on the other hand, Business Analysts must also understand how their recommendations will impact the business as a whole, especially the bottom line. They need to effectively communicate with the company’s stakeholders and senior management by presenting how changes will impact the company’s goals.

In other words, Business Analysts help close the gap between business management and the company’s technical systems.

In addition to typical data analysis tools like Microsoft Excel and Google Analytics, Business Analysts also use a variety of programming languages to make their lives easier. Here are the three most important ones:

SQL

Business Analysts work extensively with databases, which means that Structured Query Language (SQL) is a must-know programming language. While some datasets can still be stored and analyzed within spreadsheet programs, the rise of big data and data protection have made relational databases a far better solution. While most Business Analysts don’t need to be experts in SQL to design and create new database systems, it certainly helps to understand the basics of searching for and extracting data.

VBA

The most successful Business Analysts know how to program in Visual Basics for Applications (VBA). Unlike Visual Basic, which programmers use to create stand-alone applications, VBA is used exclusively within Microsoft Office applications like Excel and PowerPoint. Business Analysts use VBA to quickly generate customized summary tables, stunning graphs and visualizations, and detailed slide presentations in seconds. In other words, VBA saves Business Analysts a lot of time, so they can focus less on creating and formatting documents and more on working with the data.

Python

There’s a lot of debate on whether Business Analysts should learn Python, but it makes sense to have at least a basic understanding of Python. Why? Because business analytics involves a lot of repetitive, complex tasks with large datasets. And when datasets are too big for a spreadsheet program to handle, Python can save a lot of time and frustration. Not only can Python work with large datasets, but Business Analysts can also use Python to perform and even automate key tasks such as web scraping and data merging.

Secondly, more and more companies expect Business Analysts to cover multiple roles, including data analysis. By learning Python, you’ll open up more doors to Business Analyst job positions.

Start your career as a Business Analyst

Now that you know what a Business Analyst does, you might be wondering how to get started. We recommend beginning with an online course in programming, especially in SQL or Python, which are both skills a Business Analyst should have. Once you know the fundamentals, consider learning more advanced skills, such as analyzing business data with SQL or financial data with Python. And if you’re not sure where to go next, our developer career paths will help you decide which skills to learn as you start your next chapter.

What Is Go? An Introduction to the Golang Programming Language

0
What Is Go? An Introduction to the Golang Programming Language
What is Go? An Introduction to the Golang Programming Language

Go (Golang) is a programming language used for a variety of purposes, including servers, web development, cloud infrastructure, and command-line interfaces. It’s also beginner-friendly and easy to remember.

Ahead, we’ll explore Go’s uses in different industries, and the pros and cons of using it compared to other languages. Then, we’ll show you how to get started learning and using it.

What is Go?

Go was designed by Google in 2007. Google was rapidly growing then, and the code its engineers were using, C++, was difficult to manage and overly complex. This slowed down the development process.

So Google engineers Robert Griesemer, Rob Pike, and Ken Thompson, developed something easier to manage and learn. This new language was Go.

Go became open source in 2009 and was released publicly in 2012. It quickly gained popularity among developers and engineers for its ease of use.

Today, Go is one of the most popular programming languages. Unlike dynamically typed languages, like JavaScript and Python, Go is statically typed. Statically typed programs won’t start up until errors have been fixed, while dynamically typed languages like JavaScript will start up even if they have errors.

What is Go used for?

If you’re looking for a new language to add to your tech stack, Go is a great choice. There are plenty of reasons to learn Go. For example, it’s versatile and can be used in a variety of settings, including:

Cloud services

Many organizations have migrated to the cloud from traditional IT environments. This means there’s less to keep up on-premises, which lowers costs. One popular cloud service is Google Cloud, which is built on Go and offers scalability and high performance. Other cloud services use Go as well, including Dropbox and SendGrid.

SendGrid is a cloud-based email service that delivers high-volume emails for companies like Uber, Airbnb, and Spotify. SendGrid’s APIs (application programming interfaces) were developed using Go.

Online booking

Uber used Go to build many of its services. For example, Go is used to help Uber load maps more quickly and match riders to drivers. Trivago and Delivery Hero also use Go.

Finance companies

Several finance companies have put Go to work. Capital One used Go to develop their Credit Offers API. American Express used it to modernize its payment and rewards networks. And PayPal uses Go to simplify coding and improve the performance of its payments platform.

Cybersecurity

Go’s usefulness in server and cloud environments makes it a perfect fit for cybersecurity. 1Password, a popular application for saving passwords and other sensitive information, uses Go for its Administrator Tools back-end server. This allows administrators who use 1Password for business to easily manage 1Password and recover accounts.

Keybase, an open-source key directory that lets users verify identities and encrypt messages, uses Go because its libraries work together well.

Music and video

Go is efficient and supports the most frequently used file and encoding formats, which makes it a good choice for streaming music and video. SoundCloud, for example, maintains about six services and over a dozen repositories written in Go.

According to Peter Bourgon, one of SoundCloud’s engineers, “We were one of the early adopters [of Go]. We were using the pre-1.0, actually, and every test we’ve put it up to it passed with flying colors.”

Chatting and messaging

Twitch uses Go for its chat, which delivers hundreds of billions of messages daily. Its Web APIs, Search and Discover services, revenue systems, and administrative tools are also written, at least in part, in Go.

Slack has become a critical part of many of our work lives. Go is used by Slack’s engineers for a variety of projects, including scaling its job queue system. The system is used for every message post, push notification, calendar reminder, and more, processing over 1.4 billion jobs at a rate of 33,000 per second. Incorporating Kafkagate, a stateless service written in Go, was key to ensuring Slack could continue at this pace and beyond.

Gaming

Libraries are tools that simplify writing code. Some of Go’s existing libraries were developed for gaming, including Nano, which is a game server library. This makes Go a popular choice for gaming companies like Riot Games, the makers of League of Legends.

Aaron Torres, an Engineering Manager with Riot Games, says that they chose Go as one of their programming languages because Go code builds fast, has a large and powerful standard library, and has excellent third-party support.

Advantages and disadvantages of using Go

Go is clearly a good fit for many organizations. Let’s take a look at the benefits and drawbacks of writing code with Go.

Advantages

  • It’s relatively simple to learn.
  • You can easily create high-performance applications.
  • Go uses a relatively small amount of memory compared to other languages.
  • It’s supported by an enthusiastic community.
  • Systems that use Go have a 99.99% uptime.

Disadvantages

  • It’s not as streamlined as other languages. You may need to write more lines of code to accomplish the same task that would take a couple of lines in another language.
  • It’s relatively new, so developers may need to write their own patches on occasion.

Getting started with Go

Go is a beginner-friendly language, but it’s also well-suited for more experienced developers. Regardless of your coding background, we can get you up to speed with our Learn Go course.

This course covers:

  • How to set up a Go environment
  • How to create a Go file
  • Go’s data types and variables
  • Go’s unconditional statements
  • Using functions in Go

In the course, you’ll build several projects, including printing out ASCII art, simulating a bank heist, and calling the functions of a space-traveling agency.

Ready to get started? We’re here to support you in reaching your goals. And if you need a little extra help as you work through the course, visit our forums or join our Discord server.


Go Courses & Tutorials | Codecademy

Go, or Golang, is an open source programming language developed at Google. The designers of Go wanted developers to have a programming language that made it quick and easy to develop applications. Go is used on servers, web development, and even command line interfaces.

Cool Job: I Use Python to Analyze Esports Data for Evil Geniuses

0
Cool Job: I Use Python to Analyze Esports Data for Evil Geniuses
Cool Job: I Use Python to Analyze Esports Data for Evil Geniuses

Data is changing the game for the professional sports industry, giving athletes new ways to track biometrics and optimize their performance. Competitive esports is no different: There’s high demand for Data Scientists who can interpret all of the data coming out of video games and help coaching staff make informed decisions.

Evil Geniuses is one of the oldest competitive esports gaming organizations, with rosters of pros in games like League of Legends, Dota 2, and Counter-Strike. Even if you’re familiar with esports, you might not know that the organization employs as many Data Scientists and Engineers as it does Coaches — a fun detail that CEO Nicole LaPointe Jameson recently shared with The Washington Post.

Ivan Sheng is one of the Data Scientists at Evil Geniuses, where he focuses on the games League of Legends and Counter-Strike. “I take data from video games and I create predictions and business use cases in order to have an edge over our competition,” Ivan explains. (Ivan is also a Codecademy contributor and worked on our recent course Introduction to Big Data with PySpark.)

Here’s how Ivan uses Python and SQL to help esports pros strategize and succeed, plus the programming languages you need to know to become a Data Scientist in competitive esports.

What got me interested in the job

“I’ve actually known about Evil Geniuses since I was in middle school. I had a friend who was really into this one game called StarCraft: Brood War. We started watching clips on YouTube and this concept out of South Korea called ‘esports’ popped up. I got addicted to it, and one of my favorite players was signed with Evil Geniuses.

My introduction to data was kind of interesting. As a junior in college, you’re kind of desperate for internships, so I just shot my resume everywhere. One day I got a call from an unknown number, and it was apparently an interview for a data analyst internship at a marketing agency that I forgot that I applied to. Going from a mechanical engineering major into a marketing agency where everyone’s super young and sociable was a culture shock for me. I kind of fell in love with it.

I had two really great mentors that I still keep in touch with today — one who is also a Data Scientist, and taught me pretty much everything I know about data. Once I entered the job market, I had a manager who gave me my foundations in Python and natural language processing, and then that’s pretty much where everything kind of just skyrocketed.”

How I got in the door

“I did some contract work for Evil Geniuses prior to actually going full-time with them. I would do some data science work, write about it, and submit it to one of our ESPN-like websites called Factor.

That eventually evolved into me doing some software development work; Monte Carlo simulations and things like that. And then that blossomed into a conversation of, ‘I’m graduating and I’m going to start interviewing.’ Our Chief Innovation Officer basically said, ‘Hey, do you want to come over here?’ I was like, ‘Yeah, I’ll entertain it. Of course!’

It’s super cool to work with products or companies that you’re familiar with, because you have some personal stake in it. I came to Evil Geniuses from Disney Streaming, where I got to see the birth of Disney+ and all that fun stuff. I had the same good feelings coming over to Evil Geniuses, because I’ve known about this since I was a kid as well.”

What I actually do every day

“I am basically sitting down in Python, just coding up lots of different things. As for what I’m coding, it depends on the day and the task. We’re a bit of a small company, so I’ve done work all the way from creating automated data pipelines to creating models in the deterministic and non deterministic side of things. On our team, we’re kind of split between gaming and marketing: I’m working with gaming data like 60% of the time, and then 40% on the business side of things.

I’ve also done some software development work in terms of flagging interesting in-game events to kind of let our coaches know like, This thing happened at this specific time point in the game. Maybe you guys could check it out? Maybe this was a big turning point in the game? I don’t directly talk to our pros. I usually talk to the coaches or an analyst who works directly with the team — those people are the main stakeholders.

Now I’m following more esports, because I have to learn about all these different games. Like, I never really got that into Counter-Strike before, but that’s my biggest responsibility now. So I’ve been watching that endlessly.”

Here’s what you need to get started

If you’re interested in becoming a Data Scientist, it’s a good idea to learn Python. Ivan strongly recommends that you learn SQL too, because it’s frequently used in Data Science careers. “I think it’s criminal to underrate SQL as a language,” Ivan says.

Inspired to start your journey to becoming a Data Scientist? Here are the courses and paths that will help you pick up the skills you need for the field:

  • Data Scientist: Analytics Specialist: In this Career Path, you’ll learn how to use SQL and Python to answer big questions with data. There’s even a portfolio project where you’ll be analyzing streaming data from players on Twitch.
  • Analyze data with SQL: This beginner-friendly SQL path will have you querying data right away, plus includes prep for technical interviews.
  • Analyze data with Python: With Python, you can present data in compelling visuals like graphs and charts. In this course, you’ll also learn how to use common Python libraries like NumPy, Matplotlib, and Pandas.
  • Fundamental Math for Data Science: “Having a strong statistics foundation is just as important as your programming capabilities,” Ivan says. Need to brush up on your math? This skill path will review key statistics, algebra, and calculus concepts and help you build a foundation for more technical work.

There’s more to being a successful Data Scientist than just programming and software engineering: Communication skills are a must, because you’ll often have to translate data and findings for people who aren’t data-oriented, Ivan says.  

Once you reach a stage where you’re applying to jobs and landing technical interviews, don’t skimp on practice, Ivan says. “With a lot of these tests, especially the SQL ones, there’s a pattern that you can figure out — because they always test very similar concepts,” he says. Our skill path Data Analyst Interview Prep is a great way to get familiar with common interview questions and practice formulating answers.

Ivan’s other tip for slaying a technical interview or live programming test? “Be very open and communicative with your recruiter,” he says. “They’re there for you and want to see you succeed, so it’s important to have a back-and-forth with them if you’re ever confused.”

Data Science Courses & Tutorials | Codecademy

Data Scientists try to make sense of the data that’s all around us. Learning Data Science can help you make informed decisions, create beautiful visualizations, and even try to predict future events through Machine Learning. If you’re curious about what you can learn about the world using the data p…