Biggest advancements in technology of personal computers

There have been some significant steps in the technology of personal computers. As we look to the past we can figure that first computers that were called as personal computers came to markets in late 70s or beginning of 80s. This was surely the first big step. Computers were finally affordable for home users. They were small enough to fit in an office. It was this time that Apple brought it’s products to the market also.

First computers didn’t have a mouse. This was also a big step forward. First mouses were clumsy. They had two buttons. I don’t remember or know exactly how an early 80s mouse worked but I can guarantee that they were nothing like the ones we use today. My first experiences with a computer’s mouse were with one that was connected with PS/2 and it had a ball inside it. Mouses have later progressed. They are today connected with USB and use infrared to make sense of where the cursor is moving on the screen.

When PC’s first came to be there were screens but they had poor graphics or only text. This matter developed a lot and has been developing for a long time. We went from displaying only text to our present Full HD or even 4K or even better than those screen resolutions. 3D animations also brought many big improvements to gamers and also to designers. Gamers can today also enjoy many different USB controllers like game pads or driving wheels or even something else.

The biggest changes that I have had an opportunity to witness took place in the 90s and 2000s. I am talking about the advancements in the speed of internet connections, the expansion of  hard drives space and the impact of CD-R drives. I am actually currently reading a book about Spotify. It describes how this change in technology impacted on many things like the music industry and how things changed and developed. There were more space to store your mp3 files. There were lots of piracy.

Today we are in a situation that movies, games and music are sold through internet more and more instead of people buying physical products like CDs or DVDs. This has been possible because we currently have fast internet connections almost worldwide. Things have progressed fast. I have also seen times when we used to watch VHS tapes.

The fast development of technology has made it a bit hard to keep up with the latest advancements. It is also a bit pricey. There is and always will be those people that are in the front when it comes to buying newest technology. There will also always exist people that want to also remember the past. So these people are going to keep those retro devices working so they can enjoy things as they once used to be.

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.

Studying Physics in Colin Mc Rae Rally 2.0

Colin Mc Rae Rally 2.0 is a very interesting game in many ways. I wrote recently about different strategies you can have in this game. Now I would like to return to the physics and how this part of the game is handled. I think this game was the first rally game and also among some first racing games that I really liked (Gran Turismo was also great) and got into. It was released for PC and PS1. I played both of them.

There is no doubt that the way CMR 2.0 handles the part of physical modeling was in its time revolutionary. I know lots about games but I also have studied a bit of physics. I have learned physics mainly through school and by studying it in a school of applied sciences. However I am not a physicist. I am more of a software designer. So I know about some coding stuff also. This might open this fact a bit of how I find thinking about these subjects extremely interesting.

I haven’t seen any source code from this game. This is a commercial game and its code isn’t open source. I think for many of the fans of this game this doesn’t come as a surprise. The game was hugely popular. Releasing it as a freeware would be, well, stupid, you might say. However there are some very interesting details that open up for me as I play this rally game.

Let’s think about friction. It deals with surfaces. In a car you can have different tires that behave differently on different surfaces of road. So this is one thing. While driving on icy or snowy road you might want to use chains with tires. While driving on tarmac you want to use soft tires. And on wet surface you use special tires that perform nice on for example wet tarmac. Same goes for muddy surfaces or roads that are of gravel. You have to have a good grip on the road you are driving and friction can give you this.

There is a force that is effective on any road that you can drive on the whole planet Earth. It is called gravity. You have to have good and sufficient suspension in your car. On roads that are bumpy you have to have more suspension for overcoming the differences of altitude. Too much suspension is not good either if you drive on flat road.

You can also break and accelerate. You turn the wheel in right direction at a right time. The key is to try to steer correctly or at least keep the car moving as fast as possible. If you don’t break at a correct time you get to grass or some other surface that slows you down. Crashing also slows you down. This has everything to do with a thing called momentum. If an object doesn’t receive any push to any direction it keeps moving with the speed it has to the direction it is moving. At different time there is different amount of push to the vehicle. If nothing gets pushed the car keeps moving. Bigger objects take more power to get moving and are slower to stop moving. So the more mass you have the slower you are.

I think this is enough physics. I repeat what I said earlier. This is not so precise of a study. I haven’t seen any source code and I didn’t describe my theory so thoroughly. I hope this motivates you to learn more about physics. You can find more information using your favorite search engine. I definitely feel that you will get more excited about this particular rally game.