Do you necessarily need Windows to play PC games?

Linux as an operating system of personal computers has been competing to this day against Microsoft’s Windows. Linux has advantages. First of all it’s free and mostly open source. So anyone with a decent knowledge about programming and computers and operating systems has an opportunity to learn and even modify this system. But is Linux capable of running the latest games? To this question I am trying to answer in this blog post.

Windows has a large support as an operating system that delivers reliability. It can run latest PC games and it is an answer to many electronic music producers as Linux currently doesn’t fully support VST instruments or many sequencer applications like, for example, FL Studio. Linux has some free music production apps. like Ardour, but to get your software and hardware to run decently is to my own experience a bit difficult.

Windows is not free. Windows still supports many hardware drivers that are important when running newest PC games. Take graphics processing units for example. Most of the GPU´s are supported. You have to pay for Windows. Usually you get the new Windows with a computer that you purchase. Usually you also get the update to a newer version when it is released. Still sometimes you might have an old computer and you don’t want to spend about 150 euros for only getting the newest operating system. Then Linux definitely is a good choice.

There is a war going on between Linux and Windows. It has been this way for decades. While Linux is supported by heavy users, technology nerds and programmers Windows is still holding on to it’s position as the default personal computer operating system. Of course there are also Mac users. So this also messes up the picture a bit. I definitely like to use Linux for programming if I can make a free choice. This is because it is more secure and it doesn’t need necessarily a virus protection application. It also has more opportunities to get deeper into technology of computer. You get to work with command line and the apps are mainly free and open source. You also get more updates and get to tweak your system a bit more.

You can get Windows games working with Linux. Older games certainly can be run through DOSBox, if they are DOS games, and through Wine, if they are Windows games. There has been a discussion goin on how clearly are Steam games running on Linux. There seems to be a certain distinction between Windows and Linux games that I am not so clear about. The software seems to be in question. I cannot reply to this question fully and I admit that. But it is an interesting point.

So if you plan to play the newest games my answer to you is – get a computer that runs Windows. That is to make sure that you have the latest drivers and have yourself the full support from hardware manufacturers and game developers. Since we are moving more and more towards digital markets when purchasing games it is also important that you have Steam or GOG.com or some other place to buy yourself games for your PC. This is how the situation seems to be. Linux has it’s own supporters and you have to keep in mind that Linux has it’s native games that run only on Linux. So to conclude – Linux is developing and it might be possible that it makes a takeover in the future but currently you will have to use Windows.

Learning Some Java

Learning to program takes lots of time. When I first got interested in it I started with basics. I started making small websites with HTML. Then I learned more about CSS and got myself into some basic image manipulation that I had to do to make my websites look nice. Back then I got curious about actual programming. I tried my hand at JavaScript and PHP. As I was trying to learn by myself and not in any school or even in a single course I didn’t get far.

I really got into some, so to say, “real” programming when I started studying in a local school of applied sciences. I completed a course that was named something like “Basics of Programming in Java”. I learned many new and interesting subjects. First thing you have to do when you are just starting is to learn how to set up the environment for the actual programming. You might be using Linux or maybe Windows as your PCs operating system. You might want to install an IDE which stands for Integrated Development Environment. You also have to install, if you are going with Java, Java. I recommend using NetBeans as your IDE. It enables you to do so many other things also.

Learning to make games is based on learning how to program. You have to master the basics first. Then you can slowly progress to some advanced matters. While studying programming you also get to see a lot about how the computer that runs all these games is actually working. This is one of the most interesting thing for me and it also motivates me. I have alwaýs been a bit of a holic learner. That means that I want to analyze what I am learning deeply and know the subject and figure out how it actually works. The opposite of this learning attitude is atomistic attitude. It means that the learner is learning some plain facts that are true about the subject being learned and trying to memorize these.

The picture related to this blog post represents the first Java book that I bought as I started my studies. It got me really far. It took me years to learn almost everything in this book. I haven’t fully stomached all of the contents. It has been about ten years since I bought this book. So that tells you a bit about the quality of the text. This book is now already a bit old. I think today Python has become more popular than Java for the first programming language.

Where you usually start in programming is that you learn what are variables, how you construct the code with control structures,  like if-else-statements, how to use the most common functions that the language provides, how to read in text from user and how to print it and also how basic arrays are used. This small list doesn’t include everything. How I started was that I basically started a short course. Then I started a bit more advanced course. And then another course about object oriented programming. Since we are talking about Java OOP is important. I think with Python this subject isn’t as important.

Programming is only one part of what a graduated software developer has to know to be able to work professionally. While studying I learned a lot about databases, user centered development, testing, communications, foreign languages, physics, electronics, mathematics and so on. I took a course about processors also. I deepened my knowledge in software development as I had to choose my main subject from telecommunications, embedded systems and software. This choice was made after one and a half years of studying.

One thing I would like point out about studying. When it is summer the school is closed. You have to figure how are you going to spend the time. You might be working. You might want to take some remote courses like I did. Just don’t be too lazy andjust  try make use of this time somehow. Otherwise it might be hard to start working on your studies again when the summer is over. So keep that in mind. Resting is required but a pause too long can be harmful.

A huge part of getting employed is how well you understand what it takes to be a professional. You have to find the best frameworks and the most useful programming languages. Teachers know a lot but always someone knows a lot about one thing and someone else knows a lot about other thing. Keep your eye on the companies that are doing the things that you would be interested doing. Make some hobby projects to display your skills. It might be a good idea to share your projects in for example GitHub. And remember to build your resume. You can even add some supplement pages that give the employer an idea about your skills.

If you are going to study programming keep in mind that it takes time. Keep your focus. It’s a long road. Go for it if you really are interested in it.

Some changes we have seen – Gaming from 1984 to 2021

I am going to go through the most important changes that have happened inside gaming from my birthday to this day. Back in 1984 we had already NES in some gamer’s living rooms. This wasn’t the first gaming device that I ever played. That place was conquered by PC. Computer games in the 80s might have had black and white or eight color graphics. Some games might have had 16 colors from which the graphics would be presented. The resolution was much lower than what we are used to today.

For games’ sounds there was only this horrible noise that was produced by the computers own speaker. In the 90s it was possible to buy a sound card for your PC and some gaming consoles, like Mega Drive, offered a better quality of sound. We were still far from a CD quality of sound effects and background and theme music. The quality of sound progressed as more and more and better consoles became available and as the technology advanced.

Getting the input from player has progressed. From keyboards, joysticks and simple controllers to game pads like Dual Sense and Xbox Elite. We have seen the beginning of real virtual experience. If you compare the controller that is seen in the related picture to the latest Dual Shock you really can see the difference. When the NES controller has only axis buttons and four other buttons my Dual Shock 4 has way more buttons. You really cannot compare these two in the means of human engineering.

What else has progressed? Designing games has taken major steps forward. Consider for example how much games like Doom and Diablo have influenced almost all types of video games. Besides bringing more technical advancements these games brought us some improvements in pure game design. Many games today have taken influences from role playing games. These features include developing and choosing a role or abilities to develop inside the game. You can gather experience and rare items that are able to be gathered by the player.

We have also seen how social media and internet have both made an impact. Did you at some time go to LAN parties? Well, I did. Haven’t been in those kinds of happenings in a while and this is also the trend as connectivity has increased so that you can get online almost everywhere in the world. Also the size of computers, mobile phones and consoles has been getting smaller all the time.

So if you would travel back to 80s you would see a different world. I think today we are dealing with lots of devices and activities that require more and more these skills that can probably be called something like “digital skills”. These skills include using social media and even marketing and using your visibility in your own advance and in collaboration with your friends and people also that you work with. We are all connected together and there is huge amount of data moving in these networks all the time. As some of us have combined sport activities to the new digital world I think that the amount spent exercising has decreased in overall.

Time will show in what direction we are moving. It has become clear that skills with internet, mobile devices, laptop and desktop computers and different kinds of networks are required. And so are also skills in teaching and providing a decent support for the final users of this technology. Big data has already made it’s impact on games that are actually gathering all kinds of data from within the game as the player makes its moves and progresses in the game.