These tutorials focus mainly on OpenGL, Win32 programming and the ODE physics engine. OpenGL has moved on to great heights and I don't cover the newest features but cover all of the basic concepts you will need with working example programs.
Working with the Win32 API is a great way to get to the heart of Windows and is just as relevant today as ever before. Whereas ODE has been marginalized as hardware accelerated physics becomes more common.
Games and graphics utilities can be made quickly and easily using game engines like Unity so this and Linux development in general will be the focus of my next tutorials.
Installing Ubuntu 6.06 (Dapper Drake)
The personal experience of a Windows veteran
What is Ubuntu?
Wikipedia states that Ubuntu (officially pronounced oo-boon-too, though I still pronounce it oo-bun-too) is a sub-Saharan African word which has no direct translation into English. One of the many loose translations to which I subscribe is "The belief in a universal bond of sharing that connects all humanity".
Ubuntu 6.06, also known as Dapper Drake, is aptly named for it is a free, open source, collaborative effort to make the worlds most widely used Linux distribution. Heralded as a major competitor to the proprietary MS operating systems, it is a well tested and very stable version in a long line of Ubuntu releases.
Before you make up your mind whether to install Ubuntu you may like to read more about it from this article announcing the release of Ubuntu 6.06. As the article states you don't have to install it at all to try Ubuntu, just burn the ISO file you download from here, burn it to a CD, reboot with it in the drive and run it as a 'Live CD' to test all of its functions. You don't even have to uninstall Windows to enjoy the benefits of moving to Ubuntu. The installation disk will partition an NTFS formatted hard drive to allow you to dual boot to either operating system.
Installing Ubuntu
While you are waiting for the download to complete you should read this fine step by step tutorial on how to install Ubuntu. And if you still have time why not check out this guide too. I personally had no hassles whatsoever while installing, though you do have to have patience while it repartitions your hard drive. Upon startup I found that it had recognized all of my hardware, including sound card, graphics card and modem. It does require a little hands on work to get things like hardware accelerated graphics and mp3 support to work and I will discuss these issues in more detail below.
Internet Connection
When it is installed the first thing to do is set up you internet connection. If you are using a router like me then all the settings are stored in the router's memory and you wont need to change them but you will need to set up a few things in the network settings. To do this click on System->Administration->Networking from the drop down menu at the top of the screen.
Enter your login password to gain access to the network settings and click on the properties for your ethernet connection. I personally use static IP addresses instead of DHCP so I changed the configuration to static IP address and entered the details for my LAN address, subnet mask and gateway here. If you prefer the ease of DHCP then you can leave the settings as they are and click OK. One reason to use static IP addresses is if you have rules to open specific ports in the router which should only apply to certain computers on the LAN, in this case you will need to click on the General tab and enter your hostname (this will also need to be changed in the router configuration depending on the rules set.) Now click on the DNS tab and add the base address of your router to the list of DNS servers. If you are using a dial-up account to access the internet then you need to select the modem connection and click on the properties button to enter your account information. It is all very straightforward so I wont cover it here. Now you should have a working internet connection. Ubuntu installs the Firefox web browser by default, so to test the connection click on the icon of the Earth from the toolbar at the top of the screen and it will open to the Mozilla homepage. I then set the homepage to www.scroogle.org and if you care about your privacy I recommend you do the same.
IPv4 or IPv6
Now I did have a strange problem while browsing the web, some pages wouldn't load while others would only load half a page and then stall. Some of the pages would take ages to load certain elements of the pages like googleads and the like. This was frustrating in the extreme. The problem is related to the Internet Protocol used, namely my IPv6 over IPv4 tunnelling driver isn't working, but I have found a workaround for the problem. If you click on the network connection icon from the toolbar (two small monitors) and choose the Support tab you will see the Internet Protocol used. In my case it says IPv4 whereas the Firefox web browser uses IPv6 and will fail to load many webpages or the pages will be slow to load. To work around this problem I found it necessary to change the default configuration in Firefox. To do this, enter about:config in the address field of the browser, hit enter and a long list of preferences will be displayed. Scroll down until you find the line containing network.dns.disableIPv6 and double click on the line to change the setting to true. While you are here you can also scroll down a little further to network.http.pipelining, set this to true and network.http.pipelining.maxrequests to 8 to speed up your browsing experience. Close the browser and reopen it and you will find that pages open as normal. When I find the right solution I'll add it to this page.
Installing Updates
The next webpage you should visit is called "5 things all new Ubuntu users should know." This will bring you up to speed on how to use the terminal window and a few other important things. To practice using the terminal which is accessed from the desktop menu under Applications->Accessories->Terminal you can now install the update and upgrade packages. Simply open the terminal and enter these two lines:
sudo apt-get update
sudo apt-get upgrade
Another way to keep your system up to date is to choose System->Administration->Update Manager from the desktop menu. It will automatically check your system and install any new packages needed.
Graphics Drivers
Once you are clear on how to use the terminal then you are ready to install your graphics drivers. If you have an ATI graphics card then this site is probably for you. I have an nVidia card and found this page very helpful when installing my drivers. I used Method 1, and just in case you don't know, Ubuntu 6.06 uses Gnome and not KDE by default. At the top of the Notes Section of the page you will find a list of graphics cards that are now considered legacy. If your card appears in this list make sure you choose the legacy drivers in step 3 of method 1. Don't forget to enable the driver as in step 5 of method 1 or you may not be able to login to the desktop. If this happens and you can't get to the login screen at all then insert your Ubuntu install disk, reboot and choose terminal mode from the options. When it has finished loading you should have root access to the terminal and you can enter the command 'cp /etc/X11/xorg.conf_backup /etc/X11/xorg.conf' (without the quotation marks) to restore your original xorg configuration file. Reboot and everything should function as it did before and you can work out what went wrong. If it did work then you will see a nice new nVidia splash screen when booting up.
Synaptic Package Manager
One thing that you'll love about Ubuntu is that it offers a huge range of free software which is available right from the desktop menu. Simply open System->Administration->Synaptic Package Manager, enter your login password and you will have access to nearly all of the software and tools that you will ever need. In the left column you will find all the different categories of programs that you can select from. To practice downloading and installing a package begin by clicking on the Games and Amusement section. I can't remember whether this game is already installed by default, but as an example, scroll down in the list of games and find 'kolf' which is a small minigolf game. If it doesn't have a green checkbox next to it then it isn't installed, otherwise search for any other game you like. To mark the program for installation you just double click on it. If a new dialog window opens entitled 'Mark additional required changes?' then click on the Mark button to include those packages as well. To actually install the marked programs you must click on the button labelled Apply on the toolbar. After a short download it will install and the game should now be available from your desktop menu under Applications->Games. Now it is possible that the installed applications do not show up in the menu list. I'm not sure why this is and it happened to me for the first couple of days, but a while later all of the programs I had downloaded mysteriously appeared in the menu. I hope this doesn't happen for you but if it does you will need to start the programs manually from the file manager in Applications->System Tools->Thunar File Manager. Once open, click on the File System shortcut and look in /usr/games or /usr/bin for the newly installed program.
aMule P2P Installation
You'll be happy to learn that you can install a free P2P file sharing program using Synaptic too. Open the Synaptic Package Manager and scroll down the list in the left column and find the section called 'Miscellaneous - Graphical (Universe)'. Now if it isn't listed we need to enable the extended repositories first (which is also required for MP3 support covered below). To do this choose Settings->Repositories from the menu and after a moment a new dialog will open. The first tab is called Installation Media and we are interested in adding to the binary channels which should have a check mark next to them by default. Select the first channel called 'Ubuntu 6.06 LTS Updates (binary)' and then click on the edit button to the right. In the small dialog window that pops up place a tick beside each of the available components and click OK. This will take you back to the Software Preferences window so scroll down and do the same for all of the other binary channels (which should have check marks next to them already.) Once you have done these, click on the close button and you will be informed that the repositories have changed and you need to click on the Reload button from the toolbar to refresh the list of packages. Do this and you should be able to find the section called Miscellaneous - Graphical (Universe) in the left hand column. Select this and then mark the packages called amule, amule-common, amule-daemon, amule-utils and amule-utils-gui before clicking on the Apply button to install the new packages. If everything installed ok you will find the program listed in the menu under Applications->Internet->aMule. If the program isn't listed you can start the program manually by navigating the file system to /usr/bin/amule. The documentation for the program is in /usr/share/doc/amule. Once you have set up the aMule program you can test it out by doing a global search for Kent Hovind. I really learnt a lot from what he has to say. All of his material is not copyrighted and he encourages you to share it. He also has a website you can visit at www.drdino.com
MP3 Support
Now you've probably heard the startup sound when logging into Ubuntu and know that audio is working so you copied a few MP3s over to the desktop to try them out. By default a program called Totem Movie Player will open and inform you that you need to install the right codecs to play MP3s. To understand why MP3 support isn't available 'out of the box' you should have a read of this clear explanation. I found that the official Ubuntu site was the best place to learn how to add MP3 codecs to programs like Totem Movie Player and many others. It is an involved process but also a good opportunity for you to learn more about installing software, especially restricted formats, so I'll let the website speak for itself. Once you have followed all of the instructions you can test it with this MP3.
Splash Screen
Installing a new splash screen, the one that pops up after you login, is pretty straightforward and has already been covered well on the Ubuntu forum here.
Desktop/Login Themes and Icons
To change the look of Ubuntu you can choose System->Preferences->Theme from the desktop menu, but if you are looking for something a little different then you may want to check out the themes available at art.gnome.org. They also have desktop backgrounds, icon sets and a nice selection of Login Manager (GDM) themes to pick from. Be sure to check out their FAQ for information on how to install these.
Boot Screen
You may have tried a few different themes and found that your boot screen has changed to an edubuntu version or something and you want to get it back to normal. To restore the original bootscreen image simply open your terminal and enter:
sudo update-alternatives --config usplash-artwork.so
Then select the number that corresponds to usplash-default.so and enter
sudo dpkg-reconfigure linux-image-$(uname -r)
After a minute or so the the terminal will return to the prompt and you can reboot to test. Further information about the Ubuntu startup screen can be found here for anyone looking to make customized boot screens.
Qt Designer
Qt Designer is a programming development tool with a graphical user interface. You can install Qt Designer using the Synaptic Package Manager, just search for it by name and currently both version 3 and 4 are available. To learn more about this application and how to use it there is a
complete book available for you to download
Summing Up
Hopefully you didn't run into any major problems. I have tried to make sure the information given is correct, but I can't guarantee that it is, so please use it at your own risk. Don't despair if things do go wrong, sometimes the challenge of working through a problem is the best way to learn intimately how to do something right. There is also a whole community of fellow users that can help you find the solution on the official Ubuntu Forum and some of the best advice and tips can be found on this unofficial guide. When you are ready to learn more about the internals of Ubuntu visit YoLinux.
Ubuntu Links
http://www.ubuntu.com/download (The Download Sites)
http://www.linux-watch.com/news/NS8289526009.html (News of Ubuntu 6.06 release)
http://www.libervis.com/temp-nuxified/ubuntu-dapper-experience.html (Installation Guide)
http://www.psychocats.net/ubuntu/installing.html (Another Installation Guide)
http://www.ifany.org/2006/06/06/5-things/ (Beginners Tips)
http://doc.gwos.org/index.php/Latest_Nvidia_Dapper (Installing nVidia Drivers)
http://wiki.cchtml.com/index.php/Ubuntu_Dapper_Insallation_Guide (Installing ATI Drivers)
http://linuxmint.com/content/view/200/51/ (Adding MP3 Support)
http://help.ubuntu.com/community/RestrictedFormats (Restricted Formats)
http://ubuntuguide.org (Lots of Important Tips)
http://ubuntuforums.org (Official Ubuntu Forum)
http://yolinux.com (Advanced Info)
http://art.gnome.org/themes/splash_screens/ (Themes, Backgrounds and Icons)
http://help.ubuntu.com/community/USplashCustomizationHowto (Bootscreen Howto)
http://phptr.com/content/images/0131240722/downloads/blanchette_book.pdf (Qt Designer Book)