#TD – Game Development

Tag: #TD – Game Development

Python: A Quick Intro

Adapted from futurelearn.com 

Python is an object-oriented (focused on data) that’s easier for people to understand because it’s also a high-level programming language. Because of how relatively intuitive it is to write and understand, it’s a widely used programming language and great for those who want rapid development. So what’s Python used for exactly? It’s used widely for a variety of things. Here’s a list of applications. 

AI and machine learning  

Python is quite flexible and simple to use and for a lot of machine learning and artificial intelligence projects. Python is widely used by data scientists and there are many Python machine learning and AI libraries and packages available.  

Data analytics  

Much like AI and machine learning, data analytics is another rapidly developing field that uses Python. We’re creating more data than ever before, which is why there’s a need for those who can collect, manipulate and organize the data and information. When working with large amounts of information, it’s useful for manipulating data and carrying out repetitive tasks because of its flexibility and of how easy it is to use. 

Data visualization  

Data visualization is another rapidly developing area of interest. Python provides a variety of graphing libraries with all kinds of features like Pandas Visualization and Plotly which allow us to create simple graphical representations or more interactive plots. The possibilities are vast, allowing you to transform data into meaningful insights.  

Programming applications  

A general-purpose language like Python can be used to read and create file directories, blockchain applications, audio and video apps, or machine learning applications.   

Web development  

There are many Python web development frameworks to choose from, such as Django, Pyramid, and Flask which have been used to create sites and services such as Spotify, Reddit and Mozilla. Extensive libraries and modules that come with such frameworks allow us to create functions like database access, manage content and authorize data.  

Game development  

While Python isn’t an industry-standard in game development, it is also still used. Because of its simplicity, it can be used to quickly develop a prototype.  

Language development 

Python has been used as a basis to create new languages such as Cobra, CoffeeScript, and Go. This makes Python a useful gateway language so understanding Python can help you branch out into other languages easily.  

Finance  

As previously mentioned, Python is great for working with big data sets and there are many libraries that compile and process information. For this reason, it’s becoming one of the preferred languages in the finance industry as it’s a valuable tool in determining asset price trends and predictions, as well as in automating workflows across different data sources. 

Search Engine Optimization 

While it’s surprising, Python is also used in search engine optimization. This field benefits from automation which Python is good at doing. Whether it’s implementing changes across multiple pages or categorizing keywords Python is helpful. Additionally, new technologies like natural language processing are important to those working on search engine optimization. Python can help develop these skills and understand how people search for results and how search engines return them. 

Design   

Python can be used to develop graphic design applications. It’s used with 2D imaging software like Paint Shop Pro and Gimp. It’s even used in 3D animation software like Lightwave, Blender, and Cinema 4D.  

As shown above, Python can be used for a variety of applications because of its wide support network and a diverse range of libraries. If this is a language that interests you, Lawrence offers certain introductory courses to Python like “Introduction to Scientific Programming” or you can use online course website like Datacamp and Coursera to do so. 

What Can I Do With a Computer Science Degree? (Part 1)

The Tech and Data industry is one of the fastest growing industries and with that, there is a growing demand from companies for people with skills in computer science. But because this industry is so big, there are many broad applications of computer science. What kinds of jobs can you do with a Comp Sci degree and what are the main differences between these options? 

Career paths in computer science require strong programming, analysis and problem-solving skills with most jobs preferring a bachelor’s degree. Here are some potential career paths and their respective requirements.  

1) Software Developer: 

Software developers write and debug software for client applications by using debuggers and visual development environments. They also create applications that can work on their own or boost access to other servers and services and test client software.  

Many employers require candidates to have some prior experience in the field and a bachelor’s degree in software development, computer programming, information technology, or computer science. They typically work in office settings and may also work in a company’s IT department to use their skills to help with any technical problems. 

Software developers need strong programming skills. Some widely used languages include Python, Java, JavaScript, C++ and C#. Different jobs require different languages and will specify in their requirements section what kind of experience they are looking for so you do not have to necessarily learn many languages badly or at a mediocre level, when you can learn a few languages well. Once specializing, you can apply to jobs and/or internships whose requirements match with your skillset. For example, if you are familiar with R, Python and Java and a job or internship requires those languages, then it would be easier for you to perform well in the coding interviews and during the job. But if you spread yourself too thin, then you will not be able to perform as well.  

Developers also need to have good communication skills because they need to communicate with people from non-technical backgrounds like managers and clients. They also need to work well as a team and be able to pay attention to small details to debug their code when it is not working.  

2) Computer Information Researcher: 

Computer information researchers work with human-computer interactions. They study and analyze problems in organizations, using computing technology to provide efficient solutions. They may evaluate the effectiveness of existing technologies and improve them by testing software systems and looking at user needs, analyzing results, and presenting them to stakeholders or at academic conferences. 

A Computer Information Researcher is one of the few careers where employers are likely to require or prefer at least master’s degrees in computer science or related fields. However, there are some federal government positions that only require a bachelor’s degree. This is because researcher roles typically need more advanced degrees. For this reason, information researchers may go so far as to get graduate degrees in computer science as they need to know more hard skills and languages when doing research.  

Computer information researchers need to know about software development to write and maintain source code, machine learning to improve how computers perform certain tasks and how to analyze data to evaluate how effectively a program or software is running. They may also need to know how to use the programming languages, Java and C, and UNIX, a portable operating system that helps programmers develop and run code so that they can share with their colleagues.  

3) Web Developer: 

Web developers deal with building technical front-end and/or back-end code that informs site function. They may work only on front-end code, back-end code, or both, and many jobs also require overlap into web design. They may work independently on a freelance basis or with marketing or IT departments.  

Programming languages that web developers may frequently use include PHP, CSS, HTML, JavaScript, ASP.NET and Angular.Js. Soft skills include multitasking, organizational skills and attention to detail. Web developers also need to consider accessibility and how easily the user can navigate the website to ensure a good user experience.  

4) Video Game Design: 

Video game designers develop video games for as computers, websites, and gaming consoles. Companies like Electronic Arts, Rockstar Games, Nintendo, Ubisoft etc. Hire software developers, graphic designers, web developers and many more with each concentrating on certain factors of game design, such as setting, character design, gameplay etc. They may also work with other gaming professionals to build or test games.  

Like most careers listed here developers need to pay careful attention to detail to spot glitches and ensure efficiency for all elements of a game and be great problem solvers because they need to ensure that all elements (such as story, gameplay, characters, player interactions etc.) come together. However, for video game developers, there may be a greater emphasis on creativity and candidates would need to create their own stories and characters, as well as create innovative ways to keep players engaged. There is also a high emphasis on time management skills as companies need to put out games by hard-set publishing deadlines.  

If you want to have a deeper look at more specific aspects like salaries, job outlooks, other education requirements etc. you can check the careers page on computerscience.org to do so! For help on getting started with a job or internship search, resumes, or interviews, feel free to make an appointment with us, at the Career Center!