I am considering trying to teach myself a solid skill for software engineering roles to help me fund and segway into game development.
I am not sure I would use it for game dev, but Ruby can be used. However, it's not as common as some other languages like C++, C#, or Python. One of the popular frameworks for creating games in Ruby is called "Gosu." Gosu is a 2D game development library for Ruby and C++. It provides a simple and easy-to-use interface for creating games, making it suitable for beginners and hobbyists interested in game development with Ruby. It isn’t as widely used as some other languages in the game development industry, Ruby can still be a viable option for creating games, especially for smaller-scale projects or indie games. My goal is to create an indie game, so maybe I can find both work and achieve my ultimate goal of creating an indie game. After dabbling in a lot of different coding languages, this might just be the one I finally focus on.
I also have been seeing a lot of remote jobs looking for Ruby on Rails Developers. I would love work remotely and it seems like this job is still in high demand.
I first watched this 100-second video from Fireship to get a quick gist of Ruby on Rails
Some quick takeways from this video with some of my own expanded research:
It’s a dynamic interpreted scripting language.
A dynamic language is a type of programming language this dynamic, menaing that variable types and memory allocation are determined at runtime rather than compile time, which allows for more flexible and expressive code with variables that can change types and values as the program runs.
Interpreted lmeans the code is executed line by line with an interpreter. It make development faster because the entire program doesn’t haven’t to be compiled before being tested.
Scripting means thta there are high-level constructs optimized for ease of use and readability.
It was created in 1993 to have scripting like Python but with Object Oriented Features like Smalltalk. When the Rails framework was created in 2005 Ruby took off more.
Smalltalk is a programming language developed in the 1970s known for it’s object-oriented approach.
Some features of Ruby are minimal syntax and the use of blocks to write concise, functional code.
Everything is an object and every object can be modified.
An object means it is an instance of a class, which is a blueprint for creating objects.
Using objects in code allow for an organized approach to programming.
RubyGems package management is used by developer to easily download, install, and manage libraries called “gems.” Gems ar packages of reusable code that can be integrated into Ruby applications.
Project files end in .rb
Ruby supports “Duck Typing”
In example with Ruby, we define two classes,
Duck
andPerson
, each with aquack
method. Then, we define a methodmake_it_quack
that takes any object as an argument and calls itsquack
method. When we callmake_it_quack
with instances ofDuck
andPerson
, Ruby doesn't care about the specific types of the objects; it simply calls thequack
method on each object. This demonstrates duck typing in action: as long as an object behaves like it can quack (i.e., responds to thequack
method), it can be passed tomake_it_quack
.
I then watched this 7-minute video from Simplilearn
Ruby is the language and Ruby on Rails is the framework.
It is case-sensitive.
Ruby on Rails is an model view controller based framework.
A model view controller is an architectural pattern that separates the application layers.
Ruby on Rails is Beneficial for these reasons:
It’s cost-effective because Rails websites can be constructed and adjusted quickly.
Rails has ready-to-use plugins and modules.
It’s easy to modify exisitng code or add new features.
It’s concise and efficient, especially when combined with 3rd party libraries.
There is a large developer community with many repositories on Github.
The responsibilies of a Ruby on Rails Developer are:
Web app development
Data storage
Incorporating server side functionality
To make components for the backend
To maintain JSON interfaces
Creating workflows
Determine bottlenecks and offer solutions
The average salary for a Ruby on Rails Developer is about $117,000 per year in the US.