Saturday, December 24, 2011

Technological ideas for Christmas

If you have someone in mind that may appreciate a technologically related gift here are a few good ideas that I have considered giving out to my family on this Christmas. This list is hardware inclusive.

1. Gnu/Linux - Software
Gnu/Linux is a free software operating system similar to Windows in a lot of ways, but completely amalgamated, giving the user full customizability over his/ her system. Hundreds of Gnu/Linux distributions are available for download on the internet, or you can opt to pay for a CD with the Operating System already burnt onto it.

2. Intel core 15 processor - Hardware
The first gift from the hardware category is intel's core i5 desktop processor. A part of Intel's newest line of processors, the sandy bridge series, it provides speeds in upwards of 3.4Ghz, 4 cores, and integrated graphics for about 100 bucks cheaper than the top-of-the-market i7. Buyers beware, Intel's next line of processor, the Ivy bridge, will be released in 2012, but for the time being the i5 is the choice to go with for reasonably priced power.

3. GIMP 2.7 - Software
The Gnu Image Manipulation Program, GIMP, has it's next version, 2.7, available for compilation. It is still a beta release, but it is offering some exciting features that older versions of gimp did not include; the one that most users notice right away is a static toolbox that remains in the main window. GIMP 2.7 includes all the features of older versions and adds a few new features while remaining relatively lightweight with few dependencies. GIMP can easily rival commercial software such as Adobe Photoshop. GIMP is also open-source, so users can edit it at their will.

4. Windows 8 - Software
This is the perfect gift for hardcore Microsoft fans.Windows 8 is still technically in development, but Microsoft is allowing people to download it at a highly reduced price for testing. Windows 8 is a fully rethought Windows, giving the optimal experience for tablet computers.

5. USB 2.0 Wireless Adapter - Hardware
One of the most recent great additions to my computer is a wireless adapter that connects right into a USB port to provide access to wireless networks. Since most computers come with a wireless card, this is a great gift for those with older computers that were released before the popularization of wireless networks.

   5.1 - Wireless router
   You wireless adapter won't be doing much without a wireless network. With a wireless router you can spread connection throughout all parts of your house. Wireless routers provide access to the internet if you have it connected to an internet connection and also allow local connection if you do not want internet connectivity.

6 - Libreoffice suite - software
Libreoffice is a suite designed for creating presentations, documents, spreadsheets, and databases. It is more-or-less designed to clone the functionality of Microsoft Office, and it does a great job of doing so. Libreoffice evolved from Openoffice, which was abandoned.

7 - LED lit keyboard - hardware
For the first two years of my computers life I used a keyboard that Dell sent with the prebuilt. It was a standard keyboard with letters painted on. About half a year ago I bought a 20 dollar keyboard with the ability to illuminate the letters with blue LED lights. I have never been a fan of LED lights on computer hardware, but it actually does serve a purpose at night when you are searching for an unfamiliar key.

The content in this post is public property
That is all on my list for now, sorry that I got it up just a day before Christmas. 

How to install Minecraft on Fedora 19 and under

Minecraft is the only game which I still play on my computer. Minecraft is unique since it is made in a platform-independent programming language called Java. To install it on Fedora 15, you need to get a bit more involved than normal. Reading my previous post about BASH shell scripts may help you out a bit.

First, install sun's java runtime environment here (http://www.java.com/en/download/manual.jsp) Go to the Linux section and download the RPM. When it is finished it can be installed with the software install tool or rpm. That's have the challenge down. Now go to www.minecraft.net and download minecraft.jar. You will notice that when you try to run this .jar file it opens with the archive manager instead. Here is when the slightly harder part comes in.

Go to the directory you have minecraft.jar saved in and make a new document called "Minecraft.sh". In the next few commands replace [path] with the path to Minecraft.jar. Open Minecraft.sh and enter the following:
#! /bin/bash
java -jar [path]
save and close the file. Now make it executable by right clicking it and going to permissions, or using chmod +x from the command line. Double click the file and click "open in terminal". If the terminal opens and closes with quick succession, minecraft threw an exception. To find out what went wrong drag the Minecraft.sh file into a terminal that is already open and run it from there. Google the resulting text.

If everything did go according to plan, minecraft should start normally. If you enjoy mods, then you need to go back to step one and install jre 7 instead of jre 6. The reason I provided the jre 6 link is that it's considered the best option since most java developers are still using it to write their programs / mods.

Alternate Route
There is an alternate, slightly more advanced route to launching minecraft. Go to your desktop and make the text document "minecraft" or whatever you want to name it. Now, copy this information but, once again, change [path] to where your minecraft is located. USER_NAME should be replaced with your username. That entire string should be replaced with a path to the picture.


[Desktop Entry]
Version=1.0
Type=Application
Name=Minecraft
Comment=A game about moving blocks and killing monsters.
Exec=java -jar [path]
Icon=/home/USER_NAME/Pictures/Icons/Applications/Minecraft Icon.png
Path=
Terminal=false

Categories=Games
StartupNotify=false

  When you are done, give the file a ".desktop" extension. This will directly launch the program with a double-click rather than asking you to run it. If you have permission to become root, you can copy this to /usr/share/applications or ~.local/share/applications. Now you can access it from programs like the gnome menu or any type of launcher for even quicker access.
The content in this post is public property
Happy mining

Bash Lesson one - Learn the Linux command line

Bourne Again SHell, or Bash, is the shell most commonly used on Linux systems. Bash can be installed on Windows, BSD, and other variants of Unix. Most of the functionality that Bash provides really isn't bash at all, but external programs. Some examples are sudo, vi, emacs, and espeak, just to name a few. To complete this lesson you will need either vi or emacs and sudo. Vi is run from the command line like emacs, but emacs also has a graphical mode that will boot when you launch it from a terminal. Make sure that you are in the sudoers file.

Let's get started. Open up a new terminal (xterm, terminator, yakakua, etc) and type "cd /" and press enter. Cd changes directory, so you just moved from home (or whatever location you booted the terminal from) to the root directory. Now, without the next command cd isn't much good since you would be flying blind. Type "ls". This will show you everything in your current folder in a color coded fashion.

Now, we are going to try something a bit more difficult. While in this directory type "cd bin" and press enter. You can type ls in here if you want, but be prepared because this is a huge folder. While in this folder type "sudo vi "myScript.sh"" Be sure to include the quotes even though they are not needed.

This will open Vim, VI improved.Hit i on the keyboard to enter the text insertion mode. Now type the following in the file just like I have it structured.
#! /bin/bash
cd /
mkdir success
I will explain mkdir a bit later. To save the file from vi hit the escape button once followed by a capital 'Z' twice. (ex: [esc] ZZ.)This will close vi and save the file. If you were choosing to use emacs you can go to file>save or use the command C-x C-s. Now you should be back at the command prompt. This is probably the step that gets messed up the most. Now type "chmod +x myScript.sh" This just makes the shell script (which is what you made) executable.

We are now ready to run the script, but what do you think it will do? The two commands in it were cd / which you already know and mkdir success. What this does is changes directory to root and makes a directory called success.

To test this out, type "sudo myScript.sh". Running it with administrative privileges is a must because of where it makes the folder. Now, type "cd /" again and "ls". If you have done everything correctly you should see blue letters that say "success" on them.

BASH gets much more confusing than this, but for now it's a good start.




The same exercise as a non-root user
This is the same exercise from above but I will use your home directory instead. If you have already read parts of it, you can skip over right to the commands.


Let's get started. Open up a new terminal (xterm, terminator, yakakua, etc) and type "cd" and press enter. Cd changes directory, so you just moved from home (or whatever location you booted the terminal from) to the home directory. That is useful if you get lost and need to get back to a checkpoint. Now, without the next command cd isn't much good since you would be flying blind. Type "ls". This will show you everything in your current folder in a color coded fashion.

Now, we are going to try something a bit more difficult. While in this folder type "sudo vi "myScript.sh"" Be sure to include the quotes even though they are not needed.


This will open Vim, VI improved.Hit i on the keyboard to enter the text insertion mode. Now type the following in the file just like I have it structured.
#! /bin/bash
cd
mkdir success
I will explain mkdir a bit later. To save the file from vi hit the escape button once followed by a capital 'Z' twice. (ex: [esc] ZZ.)This will close vi and save the file. If you were choosing to use emacs you can go to file>save or use the command C-x C-s. Now you should be back at the command prompt. This is probably the step that gets messed up the most. Now type "chmod +x myScript.sh" This just makes the shell script (which is what you made) executable.


We are now ready to run the script, but what do you think it will do? The two commands in it were cd which you already know and mkdir success. What this does is changes directory to home and makes a directory called success.


To test this out, type "myScript.sh". Now, type "cd" again and "ls". If you have done everything correctly you should see blue letters that say "success" on them.

Monday, December 19, 2011

Text editors


Text editors are programs that can do just that, edit text. Some of the most common examples of text editors are word processors, programs such as Microsoft Office Word and Libreoffice Writer. These programs use XML, not raw text, to create the document. This effectively corrupts the text so that it cannot be used for programs unless copy+pasted. Therefore, the use of a pure text editing program is required. This is my list of favorite text editors.



1 - Gedit
Gedit is the Gnome text editor for the Gnu/Linux Operating System. It is simple in nature and does not come with many features, but can be turned into anything you wish because of it's free nature and the ability to customize it with addons.  Gedit comes with features out of the box that Windows Notepad doesn't have by default, most notably Syntax highlighting for many programming languages. Gedit isn't fit for massive programming projects or handling massive amount of text, but it is perfect for a quick fix to a configuration file or a small edit to a README.


2 - Kate -Kate is an acronym for K advanced text editor. And it is exactly that, advanced. Similar to Gedit it has support for syntax highlighting for many programming languages and can still edit any text file with automatic spell check. Kate has many built in features along with the ability to be modified using addons. The only issue with KATE is that users not used KDE may experience a lot of dependencies along with it. This is a must-have for anyone that has access to it. Hello.


3 - Emacs  Electronic MACros
Emacs is probably the most talked about text editor in the programmer/hacker community as it was created by Richard Stallman himself, the original president of the Free software foundation as well as the creator of the GNU Operating System, which is normally paired with the Linux kernel to run what many people simply call "Linux". The text editor is, in my opinion, the absolute best text editor for programming. It is capable of editing text, sending email, playing games, and all while being done by fully changeable keyboard shortcuts as long as 6 keys. This text editor has the option of compiling the project you are currently working on right from it's own dialog. In addition to all of this it can be run in graphics mode and from the command line, whomping VI (in my opinion) as well as KATE and Gedit, however even Emacs has it's limitations.


Emacs seems to be prone to crashes from my experience with it, and some of the features designed to help it's users may be found obstructive to some, such as the parenthesis patching. Emacs is an invaluable tool for program, but for straight text editing it is too powerful. Using emacs for editing text is like using a tank to sqash a gnat.








There are other text editing programs for other operating systems like Notepad (which I mentioned earlier, it is probably the worst of all of them. It's basically a giant text area that can be saved) Notepad+++ is the best option if you want to use WIndows to edit programs.