Coding Category Archives - General Assembly Blog

3 Reasons Python Programming is So Popular

By

Since its introduction in the ’90s, Python has rapidly become one of the world’s most popular programming languages. Most recently, we have seen Python even surpass other languages like Java. How has a humble language like Python managed to gain so much attention? Why is Python so popular?

Some estimates claim there were over 8 million active users of Python by the end of 2018. What has created the demand for this programming language compared to Java with 7.6 million, C# with 6.7 million, and JavaScript with 11.7 million active users at the end of 2018? One way to think about using a programming language is to think about its primary use case. In the case of JavaScript, the primary function is building software for the web or the cloud. Cloud infrastructure and web development are still very common business needs. For C# and Java, these use cases are more driven to desktop application development, which has started to fall off with the rise of the mobile-first mentality of end-users.

1. The rise of analytics and Python.

With Python, the use cases are shifting to data analysis and machine learning. As Clive Humby stated back in 2006, “Data is the new oil.” The bottom line is that data science has a high value. Companies have made data analytics and data science a priority due to their abilities to maximize profits and gain better insights on business. Because of well-developed resources like the data science workhorses of Pandas and Scikit-learn, Python easily does the heavy-lifting of machine learning algorithms.

Along with ready-made tools to do the work, Python is also an incredibly readable programming language. Its syntax was explicitly designed to remove a lot of unnecessary code and emphasize making it human-readable. Python makes the development of complex programs easier to write and easier to manage, which translates directly to the bottom line of the company.

2. Why is Python so popular? One word of many: Free.

The facts that drive Python’s booming popularity: it is an open source and free to use. Developers all over the world are writing and distributing software packages in Python that small companies or individual developers can use in their projects for free. Who wouldn’t want to be able to plug into a sophisticated image segmentation library developed by Google? At no cost!Just a few years ago, similar image analysis software cost thousands of dollars and was not nearly as user-friendly.

3. It takes a village.

Python programming is easy to learn, easy to write, cheap to build with, and massive followings of programmers worldwide. It’s no wonder Python is rapidly gaining in popularity. One of the worst feelings for new developers is not understanding why their program isn’t working, but with Python, the programming and data science communities are very active. Blog posts, answer sites like StackOverflow, and groups on LinkedIn have made getting feedback and solutions to your issues easier than ever. Getting hands-on help with issues quickly, learning, and picking up better development practices are no longer a daunting task.

The best way to learn any new language is to immerse yourself. Popular programming languages like Python are no different. The more time you interact with solving real-world problems with a new language, the faster you can become fluent. There are tons of resources like YouTube videos and blog posts, but I find that there really isn’t a better-suited way to learn than hands-on teaching. You need to raise your hand and ask an instructor attuned to the Python language, programming languages, Python code, data science, python developers, artificial intelligence, programming, and machine learning, and more.

General Assembly: the bridge to machine learning.

The immense rise of use cases and companies hiring developers, allows an increase in places to learn these new skills. General Assembly has a multitude of ways to get you started on the path to learning Python and becoming a Python developer. Informal and free introduction sessions at General Assembly aim to get you running code in just a couple of hours. Part-time classes take things up a notch by giving you focused hands-on lessons twice a week, over 10 weeks — artificial intelligence will have nothing on you. For those future Python developers that are ready to take the plunge, and want a deep-dive into all things machine learning, General Assembly also offers full-time Data Science Immersive programs every quarter to learn Python code, programming, nuances of artificial intelligence — and more.

Why is Python so popular? These reasons are a very good place to start!

Getting Started with Sublime Text 3: 25 Tips, Tricks, and Shortcuts

By

Computer with blinking text selector

Sublime Text 3 (ST3) is the latest version of one of the most commonly used plain text editors by web developers, coders, and programmers. It’s available for Mac, Windows, and Linux, and free to download and use.

Make the most of ST3 with the 25 tips and tricks in this ultimate guide for web developers. Learn about must-have packages, useful keyboard shortcuts, and more.

1. User Preference Settings

By default, ST3 uses hard-tabs that are 4 characters long. This can result in hard-to-read code, as large tabular indents push your work to the right. I recommend all developers add this to their user settings (Sublime Text 3 => Preferences => Settings – User):

  {
    "draw_white_space": "all",
    "rulers": [80],
    "tab_size": 2,
    "translate_tabs_to_spaces": true
  }

This setting converts hard-tabs to spaces, makes indents only two characters long, puts a ruler at the 80 character mark (to remind you to keep your code concise), and adds white space markers. Here is a complete list of preference options if you wish to continue customizing your ST3 environment.
Continue reading

A Beginner’s Guide to REACT

By

If you’ve ever used HTML and CSS to build webpages from scratch, you know that it takes a lot of time and effort to make them look nice. Each page is handcrafted using these common front-end languages. However, if you hop on to a site like Facebook, users generate new content on the fly. There certainly isn’t a dedicated team of developers ready to update the page any time a person shares a photo or comments on a post. Instead, millions of users have the ability to post updates instantaneously.

This first became possible through tools like server-side rendering, older front-end frameworks like Backbone and AngularJS (i.e., versions 1.x), or jQuery. However, when it comes to large-scale websites and applications, these options present a couple of issues:

  • Their cumbersome code is hard for developers to maintain.
  • They aren’t always optimized for speed, which is especially problematic for users viewing on mobile devices.

Enter React, an increasingly popular front-end JavaScript library that enables developers to build fast, scalable webpages and user interfaces that can quickly adapt to continually changing data.

Why Developers Use React

According to the 2018 Stack Overflow Developer Survey, React is the framework most developers say they want to work with if they don’t already. There are plenty of reasons for this, but here are just a few:

  • Speed: React is fast! As more and more people visit webpages on a wide range of devices, fast performance is increasingly critical.
  • Reusable components: You can break down common elements (e.g., forms, buttons, or layouts) into a component, which you can reuse as you build out your app’s functionality, rather than code each new piece from scratch.
  • Easy collaboration: Independent components allow larger dev teams to split work without stepping on one another’s toes. For example, if you were working on a real estate listings site, you could have dedicated developers working on individual views of property listings, while another group tackles the view of all available listings and another works on the ratings system.
  • Highly scalable: Developers often prefer React for large-scale application because of the reusability and independence of the components.

A Brief History of React

A developer at Facebook created React in 2011 to help solve some particularly hard challenges with rebuilding the site’s advertising products, but the team quickly realized it could be useful in more areas. They first tested React’s capabilities on Facebook’s newsfeed to facilitate liking and commenting functions, as well as on Instagram’s website, then implemented it on a wider scale.

In 2013, React was released as an open-source framework so that other coders could take advantage of its speed and power to build out and optimize their own web and mobile applications. Devs at companies that use React love its ability to solve complex challenges, improve speed, and organize code in a way that’s easier for large teams to manage.

Today, React is one of the most popular ways to build pages or update old ones, with hundreds of top companies — including Instagram, Netflix, Dropbox, The New York Times, and many more — leveraging it for their websites. Now’s a great time to learn the framework, as there’s not enough talent to meet employer demand: According to the 2018 HackerRank Developer Skills Report, 33% of employers need developers who can use React — yet only 19% of developers say they have these skills.

Many new website features that seem simple to a user — like a notification system or infinite scrolling to view new custom content — can take months for a team to implement, so developers are there to continually develop, debug, and optimize. In fact, React has become so popular that the dedicated role of “React developer” as emerged for talent that works exclusively in the framework to modernize code and build new functionality. Whether you want to focus solely on React or use it to differentiate yourself from other front-end or software engineers, it’s a valuable skill to add to your toolkit!

How React Is Used to Build Webpages

Developers leverage React to create seamless user interactions. For example, when you search Netflix for a show you want to watch, you might see the results list narrow down with each letter you enter into the search field. These changes are immediate and you see a consistent user interface, which makes it easy to find what you’re looking for. But there’s a lot going on behind the scenes.

When you search for a movie (i.e., input data), your input goes to Netflix, and Netflix quickly returns matching results. This is because data for each category, movie, and show is loaded into a React component (you can think of this as a template or blueprint) that can be reused and updated based on the data.

The framework is based on the concept of components, both for viewing different data and for coding efficiency. Rather than reloading a whole webpage when a user interacts with it, the only components that change are those that need to be updated based on what the user wants to see or do on the page. Developers can also reuse components that have similar functionality throughout a site, saving them extra, repetitive work.

React is “agnostic” to other tools in your front end, which means developers can use it in tandem with other powerful front-end JavaScript frameworks and libraries like jQuery. Since React only handles how data is presented, developers often pair it with numerous back-end (i.e., data-handling) frameworks, such as Ruby on Rails, Express, Django, Drupal, and others.

React at General Assembly

In GA’s React Development course, you’ll learn not just how to create React apps, but how and why they work. You’ll use React to build a scalable, maintainable web application from scratch, and learn how to host it on Heroku to share with the world. You’ll also dive into APIs, JSX, React Router, and more. If you already know coding basics but need to double down on your JavaScript know-how, start with our part-time JavaScript Development course, on campus or online. Or, get started with a free livestream!

If you’re looking to launch a career in coding and are just beginning your journey, our full-time Software Engineering Immersive (SEI) course, on campus or remote, will take you from motivated beginner to job-ready in three months. In SEI, you’ll learn to create well-designed, high-impact webpages using both front- and back-end languages and frameworks, including React.

Ask a Question About Our Coding Programs

Meet Our Expert

Karolin Rafalski is a Web Development Immersive Remote instructor, which means you can take the course with her from nearly anywhere in the world that has internet. Karolin is a career-changer who spent over 10 years teaching at various colleges and took the Web Development Immersive course on the NYC campus in 2016. In her spare time, she enjoys biking, hiking, spending time with her cats and reading.

“React is one of the most in-demand front-end frameworks. Not only can it help you build faster and more robust websites — it’ll also make you a better developer.”

Karolin Rafalski, Software Engineeering Immersive Remote Instructor

How the Marines Prepared Me for a Career in Coding

By

ga_militaryeducation-head

While stationed in Okinawa, Japan, in 2008, I wouldn’t have guessed that my time in the Marine Corps would have prepared me for a future in coding. At the time, the 30 Marines in my platoon had access to just one shared computer. It served only two functions: completing online training requirements, and looking up one’s online military record.

I never suspected that nine years later I would be designing and building websites and applications in an intensive web development course, General Assembly’s Web Development Immersive (WDI) program.

My path toward coding was a winding one. As a Marine on active duty, I was stationed in Japan, Kenya, Sudan, Italy, and Pakistan. Later, after transferring to the Marine Corps Reserve, I pursued a bachelor’s degree in international affairs from George Washington University. While studying at GW, I worked at the nonprofit Veterans Campaign, where I was tasked with helping to rebrand the organization. Though I had little technical experience, I created an entirely new web presence for the organization and migrated its old content to the new website.

Continue reading

How Blending Lean, Agile, and Design Thinking Will Transform Your Team

By

Lean vs Agile vs Design Thinking Jeff Gothelf

Jeff Gothelf’s new book, Lean vs. Agile vs. Design Thinking

The following is an adapted excerpt from Lean vs. Agile vs. Design Thinking by designer, team leader, and business coach Jeff Gothelf.

In 2016, I was preparing with clients for an upcoming training workshop focused on coaching a cross-functional team of designers, software engineers, product managers, and business stakeholders on integrating product discovery practices into their delivery cadences. During our conversation, my client said to me, “Our tech teams are learning Agile. Our product teams are learning Lean, and our design teams are learning Design Thinking. Which one is right?”

The client found the different disciplines at odds because these seemingly complementary practices forced each discipline into different cadences, with different practices and vocabularies targeting different measures of success.

The engineering teams, using Agile, were focused on shipping bug-free code in regular release cycles (many teams call these “sprints”). Their ultimate goal was an increased velocity — the quantity of code they could ship in each sprint. Product managers, using Lean, were most interested in driving efficiency, quality, and reduction of waste through tactical backlog prioritization and grooming techniques.

Continue reading

Mindfulness Tips for Web Developers

By

Mindfulness for Web Developers

Early in my tech career, as a web developer, I was constantly stressed out. Every time somebody needed something from me, I felt I had to drop everything and do it right then. I was overwhelmed by my growing to-do list, and doubly stressed for not doing enough quickly.

All developers face a lot of pressure. When you’re coding or creating something, clients, teammates, and managers want it fast, and they want it perfect. Plus, today’s tech teams are always expected to be on and responsive through email, phone, Slack, and beyond, which digs into time you want to spend on the work itself. These aspects of coding culture can often lead to stress, unhealthy habits, and emotional burnout, which all keep you from reaching your potential on the job. That ultimately leads to more stress, more unhealthy habits…you get the picture.

Continue reading

Cracking the Girl Code to Tech Success

By

Girl Code Book Tampon Run

Sophie Houser and Andrea Gonzales, creators of Tampon Run and authors of Girl Code.

Coding knowledge can be used to do more than build a great website or land a lucrative job. It also has the power to inspire personal growth and shine a light on social issues.

Andrea Gonzales and Sophie Houser learned this firsthand when the video game they created, Tampon Run — in which players throw tampons at bullies and tackle taboos surrounding menstruation — went viral in 2014. Gonzales and Houser, then teenagers, met as students at the all-girls coding program Girls Who Code in New York City and created the game as their final project.

Continue reading

How to Fail as a Web Developer

By

Coding & Programming Errors: How to Stay Calm

Three months into my first job out of college, as a web developer at a financial reporting company, I wiped out every single one of my company’s client records in one command. I had uploaded a script meant to eliminate one client, but quickly realized that it removed all of them and I couldn’t get the records back. (This was in the early 2000s, when it was less common to work locally before sending code to your live website.) I went into full-on crisis mode and started getting my resume ready, resigned to the fact that I was going to be fired. I was even Googling to see if I could be sued for what I had done.

Thankfully, a tech manager saved the day by telling me about the company’s nightly database backup and we quickly fixed most of the problem. But until that moment, I was sweating bullets.

As a web developer, you’re going to fail — often, and sometimes in huge ways — whether you’re a newbie or a veteran (see this recent mishap at GitLab.com, for example). But messing up doesn’t have to be stressful. In fact, when it does happen, staying calm is key because panic can cloud your judgement and force you to make rash decisions.

Continue reading

Inside the U.S. Defense Department’s New Tech Startup (P.S. They’re Hiring)

By

Defense Digital Service Eric Fanning Army Chris Lynch

Former Secretary of the Army Eric Fanning (left) announces the creation of the Army Digital Service at a recent event at General Assembly’s NYC headquarters, alongside Defense Digital Service Director Chris Lynch and journalist Jeff Jarvis. Photo by Master Sgt. Jeremy Crisp.

National security and cybersecurity are growing concerns for many Americans, especially as talk of hacking and digital espionage dominate headlines and rattle daily life. Protecting the country and developing tools to keep citizens safe are top priorities for the U.S. government, and, in recent years, it has turned to top tech talent to rapidly innovate, problem solve, and find security vulnerabilities. This is particularly true within the Department of Defense, whose progress its staffers admit has been slowed down by outdated tools and processes that lag behind private tech companies’ capabilities.

That’s where Defense Digital Service (DDS) comes in. Since launching in late 2015, the program — a branch of the government’s tech startup, U.S. Digital Service (USDS) — has worked on projects involving cybersecurity, veterans’ medical records, cutting-edge GPS systems, and more. DDS’ cybersecurity initiatives Hack the Pentagon and Hack the Army (known as bug bounties) invited civilian hackers to search for vulnerabilities within five public-facing government websites, then rewarded them in cash for their findings.

Now the Army has its own dedicated team called Army Digital Service, which launched in December. Continuing the pioneering work of DDS, it will leverage tech expertise to solve inefficiencies related to Army recruiting, veteran affairs, and more. Earlier this month, Air Force Digital Service launched as well, and the team’s agenda is currently in the works.

Continue reading

John Rossman on How the Internet of Things Transforms Businesses

By

Amazon Way on IoT John Rossman Interview

Author and tech-industry veteran John Rossman, whose new book takes a deep dive into the Internet of Things.

When it comes to enhancing customer experiences and improving business operations, the future lies in the Internet of Things (IoT).

IoT is the ability to take an analog or physical capability and create a digital version of that experience. For example, the Nest thermostat helps lower energy costs by using sensors and your phone’s location to adjust the temperature when you leave the house. Samsung’s Family Hub refrigerator allows you to order groceries from FreshDirect right from its door.

From a business standpoint, IoT technology allows for smarter, data-driven models that enable higher efficiency and better outcomes. From a consumer standpoint, it can transform the way we think about some of our most routine daily actions. IoT technology requires elements of data science and analytics, product management, and user experience — and because of this, it’s a cross-functional industry with tons of opportunity for growth.

Continue reading