Friday, February 28, 2014

UNIX Diary Week 5

So here is where things start to get a bit more complicated. We now begin to use all the concepts we learned from this class and start to create actual programs and push them using Git. Since I'm using a Linux system, I decided that I wanted to keep all of my files locally. The problem that I'm facing is that I need to import all the files that is currently up on the server and then try to set up the Git server again so I may be able to push updates to the server. Hopefully I can get everything sorted out and I will be able to get started on working on projects with other people.

That's it for now. At least the week from Hell is finally over.

Friday, February 21, 2014

UNIX Diary Week 4

The semester is a third of the way through, and my experiences with UNIX continues. This week, we discovered more functions in C which will allow us to create more intricate programs and concatenate the outputs with other functions. Although learning what the new functions do might've been a pain, it was overall easy to create the program and push it to Git. We also learned how to view programs that are running in UNIX and the ability to run programs in the background while using the terminal. Although I am running Linux Mint and have a GUI interface that I can use, I have trouble trying to run numerous programs akin to how it works in Windows. Some programs can exit out randomly or crash without any warning and I have no idea why. For example, I'm trying to get Linux Mint to recognize my NVidia graphics card using Bumblebee, but I consistently keep getting errors that states that it can't find my GPU drivers (even though I have them installed). By trying to run programs through the terminal, I might be able to find the source of the problem and fix it. Hopefully I will be able to fix this using the methods that I learned this week.

That's it for this week. Let the UNIX learning continue.

Friday, February 14, 2014

UNIX Diary Week 3

Although a massive snowstorm cut the week short, I still continued to experiment with UNIX. Linux Mint is continuing to work well for me (though I can't seem to be Bumblebee to work) so my journey continues. This week was more focused about actual coding in C than it was about the OS itself, but I am now beginning to understand how concatenation is working now. Being able to take the output of one program and entering it as input in another program makes it easier to perform certain tasks without needing to write the code out for it myself. It can save time by creating two smaller programs instead of trying to cram in numerous functions into one program, especially when you're writing functions that you may use numerous times.

Also, we started to work with Git. I have some experience working with Git along with Subversion, but the terminal interface scared me away from continuing to use with it. However, after playing around with UNIX, I now realize that it's not actually that bad. It will be useful since I'm going to be working with numerous people on multiple projects and we all have to share the same files. This will help us in keeping track of any changes in the code a lot easier than other methods.

That's all for this week. It ended abruptly, but I did learn a lot in the end.

Thursday, February 6, 2014

UNIX Diary Week 2

Over the last week I continued to experiment with the UNIX kernel. Over the course of this past week, I learned quite a few things:

1. Ubuntu 13.10 is terrible

When deciding which Linux operating system I should use for the class, I thought Ubuntu was the way to go. It's supposed to be the most streamlined version of Linux with an interface similar to other operating systems, but also contains all of the functions I would need for the course. However, after dealing with all the bugs and crashes, I decided that enough was enough and switched over to another Linux OS. Currently I am using Linux Mint 16 and have not encountered any issues so far. Let's hope that it stays that way.

2. Combining functions in UNIX gets confusing after a while

For this week, I decided to experiment with other functions in the course.  Some of them seem easy enough like "echo" and "cat", but I get confused when I try to combine some of the functions together. I understand that < copies files to a new location and | combines two functions together, but it gets confusing trying to combine all of the functions together and seeing exactly what is does. Hopefully with practice, I can get used to it.

3. Exit commands for the numerous functions in UNIX get confusing as well

While playing around with programs such as WeeChat, Nano, and Vim, I get confused when trying to exit each of the programs. Whether the command is Ctrl-D or Q or :X, each program works with its own specific commands and it gets confusing to memorizes all of them within a short amount of time from one another. Hopefully soon I will be able to memorize each of them so I no longer have this problem.

That's all for now. Still getting the hang of Linux/Unix so hopefully I'll have all the kinks worked out within a short period of time.