Example usage: KDE4 base checkout cmd (~400MB):
'svn checkout svn://anonsvn.kde.org/home/kde/branches/KDE/4.1/kdebase''git' is an even-newer source-code control system (an offshoot of svn). After trying these git checkout cmds, take a look
at a few of the .scm files, which are written in the SCHEME language [which is a somewhat-simplified variant of LISP]
My example git usage: Gnome-Games sub-project checkout cmds:
Hint for ADDing memory (e.g. to a laptop): First use the Linux-cmd 'lshw -class memory', which gives some good details on the existing memory-card(s). [Linux-cmd 'dmidecode' gives similar "raw" info, but 'lshw' formats the data better.] Then, open up the bottom of laptop, and get ALL the gory details of memory type/speed/etc of the EXISTING boards hardware-sticker.
Maxtor and Asus advice for disk-controller/device-placement:
Put (both) hard-drives on primary/first controller (set as master/slave if 2 drives exist) and CDROM/DVD-drive(s) on secondary controller.
The power-supply is often the most under-rated component of a PC. Computer prices are so low, that the power supply is one of the places they like to use sub-standard assemblies. Hence power-supplies are often responsible for a myriad of problems--not just a dead machine. They may be enough for what is shipped in the computer, but inadequate for any expansion.
It's a bad idea to use one of those 'go/no-go' power-supply testers. Mine is a little palm-sized unit that has 5 or 6 green lights (one for each voltage range) and a red DANGER light. The unit plugs into the large connector that goes to the motherboard. An interesting story... I just 'happened' to test the 400-watt Antec power-supply in one of my computers, and even tho it was not exhibiting any problems, the green light on the -5v indicator failed to light. Later, I learned that -5v line is totally optional, and is not typically used by the motherboard. Worse, that red DANGER light on the tester also was lit. But, that turns on simply when all the greens aren't lit, so that is giving a false-negative, too. Live and learn. The techs recommend using a meter, which gives you actual NUMBERS, rather than just a 'go/no-go' indication.
Looking at the data-tag on the Antec, it shows that it is '12v dual-rail', one rail rated at 14-Amp and one at 15-Amp. (I removed the Antec power-supply and replaced it with a 430-watt 'Thermaltake', which has just a single-rail 12v, rated at 18-Amps. I also learned about the 'recommendation' below, saying it's preferable to have 18-Amps on the 12v leg at a minimum.) I'm saving the Antec as a spare, since there is really nothing wrong with it.
Hmmm...I've had both cable-internet-service (Comcast) and DSL-internet-service (i.e. Verizon). Maybe it's surprising, but I'd recommend DSL (Verizon) over cable (Comcast), based on my long experience. It's NOT all about 'speed'. [As for FiOS, see my comments at the end of this section.]
My experience is based on 5 years each of Comcast/Verizon experience, both in New Hampshire and in Florida. [Verizon still offers slower-speed DSL in Florida for just $15 per month. And Comcast charges about $45 per month for their 'basic' service in both those areas. These are longer-term prices after the reduced-price trial periods are exhausted.]
Sure, cable is faster. But, think about cost VERSUS speed! Verizon charges only $15 per month for the slower of its DSL offerings, which has download speed of 768-Kbits/sec. And, as a bonus, Verizon here in my Sarasota neighborhood upgraded the speed by 4 times, which is now at about 2800-Kbits/sec, at NO additional cost. [Even that earler 'slower-DSL' speed is about 15 TIMES FASTER than dialup, and of course you are NOT busying-out a phone line with DSL (yes, you CAN talk on the phone and use DSL simultaneously, unlike dialup).] Lastly, while Comcast may state higher-speed that DSL, they are famous for their 'curve-balls', one of which is that a sustained download (e.g. a large .ISO file), STARTS OUT at a high rate, but then drops to half of that and remains there for the duration, in my experience.
PRICE: Comcast charges $45 per month (which is THREE TIMES as much as slow-DSL). And, Verizon DSL is typically more reliable than Comcast, in my experience. As just one example, I know a woman who (tries to) run her in-home business and thus pays Comcast for their cable-service. Once or more each month, she'll be 'down', and will call Comcast and ask what's going on, and they might be aware or whatever and just say "Oh, you should be back working again by the middle of the afternoon." (We live in the same residential/golf-course community and had similar experiences with Comcast.)
So, even though my $15 DSL is 5 times slower than Comcast's $45 cable, that boils down to the fact that on most websites, you will NOT be able to perceive that 5-times difference. And, even when doing typical file DOWNLOADS, it's typically like I can download on DSL in 45-seconds what I could have downloaded in 9-seconds. But who cares? (I don't...not for that big difference in price! I don't download stuff of that size or larger often enough to care about having to wait 45 seconds.) My analogy is: If you owned a sports-car that could do 200-mph (DSL), would you care if you could buy an engine-upgrade (5-x-faster-cable) that would go 1000-mph?
Bottom-line: Those 'Slowski' turtle ads that Comcast runs, trying to poke fun at DSL, are spinning you like a top, just like the Bush whitehouse and Carl Rove did. It's more complex than simply thinking about speed. Reliability and price can trump raw speed.
FiOS: Ok, FiOS has now been available at my Florida house for six months now (both my adjoining neighbors signed a 2-year commitment and now have FiOS). I analyzed the offer thoroughly...and I rejected it. BEFORE you even THINK of ordering it, go Google using the two keywords 'fios wikipedia', and you'll glimpse MOST of the 'gotchas'. One big gotcha is that they will (most probably) REMOVE the old twisted-pair-copper-wire 'network-interface-box', eliminating your ability to ever go back to DSL or copper-based-telephone service. This will even apply to the NEXT person who buys your house! [To be fair, Verizon IS required by Federal-law to offer a very basic low-end 'POTS' (plain-old-telephone-service), presumably at those same copper-wire-prices, but now running over that new fiber that gets put in place of the copper. The fiber, once-installed, probably IS more trouble-free and easier for Verizon to maintain...at least that's the justification they give.]
My other FiOS objections center around the 'predatory' feel...e.g. their website ads for FiOS never state anything about any 2-year-contract. [They also do offer a 'month-by-month' commitment instead, but at about 30% higher prices than 2-year rates.] But, the whole deal smells of the same crap that I detest in the cellphone market...it's those same shoddy business practices all over again, with 'curve-balls' hiding under all the fine print. Thanks, but no thanks...I'm staying with DSL, especially after that free four-fold speed increase! (My TV will remain on a month-by-month-basis from Comcast, even tho I don't like a few of their business practices, either).
Addendum: DSL is not perfect. At one point, I DID have random drops of
the DSL-circuit, as indicated by the last two green-lights on the
DSL-modem (i.e. lights labeled 'DSL' and 'Internet'). It took almost
7-days and 3 erroneously-closed tickets (they do NOT understand the word
'intermittent', so if their simple 'line-test' passes, they think they've
fixed it...SIGH!) But, finally, they got someone smart enough to doing
some internal re-wiring in my house, so that the DSL-modem's wall-jack
was as near to the service-point-of-entry as possible, finally finally
fixed the DSL-related problem. [The loss of dial-tone
and inability to call-IN (ring all phones) was traced to a corroded 4-pin
wall-jack, which got replaced.]
So, this all boils down to the state of health of the wiring of the
wall-jacks within your dwelling. As always: YMMV..."your mileage may
vary". To understand the TECHNICAL aspects of DSL, wikipedia's writeup is
excellent...Google the two keywords 'dsl wikipedia'.
GetJar: My LATEST find of a cellphone website - seems to have EVERYTHING, from 'devices' to 'forums'! To illustrate the depth-of-knowledge of this website, consider the information conveyed in a page showing not not only whether a certain cellphone contains the (micro-edition) of the Java-runtime, but additionally, which VERSION of it.
Most of my experience with Verizon's phones has been with LG's phones. My current one is LG's VX-8300, which has bluetooth capability! [Bluetooth is my latest 'find'...so I'm spending LOTS of time trying to learn how to program various bluetooth-related areas, in an effort to better understand this FASCINATING technology.]
Inside my phone, there's a 'Software Version' sub-menu item, which shows all sorts of lower-level functionality and the related VERSION-NUMBER of each sub-system. It appears like:
Here's a tip: If your cellphone supports 'bluetooth', then you do NOT need a data-cable, to transfer stuff to/from your cellphone and your PC. Instead, just buy a low-cost (about $14 from NewEgg) bluetooth-USB-adapter for your PC, and locate some transfer software compatible with your phone, and you should be able move ring-tones and address-book and pictures and tunes between them. [The 'Bitpim' app works for my Verizon-based CDMA phones (LG-models), so should work for Sprint-based, too. But, it seems that certain phone-manufacturers (e.g. Razor and others) are purposely 'blocked' so that such private transfers will NOT work. So, 'your mileage may vary'.]
If your cellphone isn't CDMA (i.e. if your cell won't work with Bitpim), then there are (probably) other free full-function transfer/sync programs out there. But, as a fallback (if you can't find one), there is an 'ftp' mechanism between a PC and a cellphone (using either bluetooth or a data-cable) that utilizes 'OBEX' (OBject EXchange). Most phones will have their end of OBEX already in them, so all you'd need to do is acquire (or compile/build from source) the PC-side of the ftp/OBEX software. It's all explained here:
Let's say you want to write some code to utilize your Bluetooth-adapter.
Bluetooth Profiles/Services (known to the Linux 'sdptool'):Argh...there's a whole BUNCH of 'bluetooth stack' vendors and issues:
Ok, let's further stipulate that you want to use 'Java APIs', since that would be MY preference. (Hmmm...I thought it would be straight-forward, but it turns out there's not only that myriad of various stacks, but also various APPROACHES to implementing the java package named 'javax.bluetooth'. Most shoe-horned it UNDER the 'JavaME' platform, which was fine for 'mobile-device' platform side. But, if you happened to want to talk from the other side (i.e. the PC-side, aka the JavaSE platform side) well...oops! [I fault Sun for dropping the ball, but in reality, I don't know how it happened.]
Luckily, someone/something called 'BlueCove' finally did something about the problem. So, to solve it, just grab BlueCove's jar (bluecove-2.1.0.jar was 'recent' when I started), and THEN you should be able to compile java code that is NOT DEPENDENT on JavaME. Besides the BlueCove APIs, which I'm using on Windows-Vista, there are at least two other JavaSE-based ones: Avetana and ElectricBlue. (That said: Using these Java-APIs for bluetooth on Linux (the samel Bluecove jar(s)): It behaves slightly differently, when I use it there. I initially developed Java-based bluetooth code on Window-Vista and it works fine there. When I move it to Linux, it compiles fome there, but when I execute it, the remote-device detection reports that no remote devices are paired even tho they are. But everything else works there, including doing the pairing, and service discovery of my cellphone's services works fine, and uniformly on all three bluetooth-adapters. So, barring that one API anomoly/difference, everything else on Linux seems fine.)
The 'sdptool' alone is reason enough to prefer doing the bluetooth stuff on Linux, as it's much better than any other service-discovery-tool I've found on Windows. [Linux's sdptool should be compilable/buildable on Windows, but I haven't found it pre-built for Windows on the Internet, and I couldn't quite get it to build using minGW]
Here are links to the stacks, tools, Java-APIs, and some related forum threads:
I've added the needed extra HARDWARE: a 2nd wired-ethernet adapter, which will be BRIDGED to my AP/router. Details of that portion are explained in hack#89 of 1st-edition of 'Wireless Hacks' textbook. [More will be written here, as this project continues.]
Some airports have 'closed wifi' and others have 'open (free) wifi. Access to 'closed wifi' is typically controlled by the 'captive-portal' mechanism mentioned above. But let's start at the beginning and discuss what you might see when you go into an airport, turn on your laptop and try to use 'wifi' to get onto the Internet. First, you're gonna encounter a list of wifi signals available for you to try to connect to (usually strongest signals first, but signal strength is NOT what we first focus on). The first attribute to look at is whether it says 'unsecured'. [If it is one of the 'secured signals', it won't say 'secured', but rather might say 'WEP','WPA','WPA2'...there are even others. These are all variants of wifi-security (encryption), and you'd need to have a 'key' to be able to access any of those, so let's concentrate on just the 'unsecured' signals.]
First curve-ball: But, just because a signal says 'unsecured', does NOT mean that you are home-free yet! Unsecured just means that they are not using encryption as their means of controlling access. (Captive-portals do NOT use encryption.) So, go ahead and just connect to one of the 'unsecured' signals...if that signal is strong enough, and there is no interference, etc, then you will get an indication of 'success'. But, as soon as you launch your browser, if your browser presents a 'local' page (instead of your normal 'home' page), that's your first indication that you've encountered a 'captive portal'. If that page says something to the effect of 'enter your credit-card# here, and we'll give you 8-10 hours of connect time', you NOW know that this wifi-signal is a paid-for service. [Note: It is not ONLY the browser that is 'captured'...similarly, if you try other network-accessing software such as 'ping www.google.com', you'll get back something like: "icmp_seq=1 Destination Net Prohibited"...a clear indication that you been 'captured' and have not been allowed access to the Internet.] You can then move down the list and TRY any of the other 'unsecured' signals, but I'd bet that those others will probably also be 'captured portals' too. But, go ahead and try...maybe there ARE some airports that have both 'closed' and 'open' wifi networks. Another consideration: Airports might have free wifi-access only in certain AREAS within the airport, so maybe you are just out-of-range of the unsecured access-point that does allow free access.
Another disgression: Some 'open-wifi' hotspots (cafes, some airports, etc) will have a captive-portal setup that is advisory-only (e.g. to say hello and inform you who is providing you the free Internet access). Once you 'just hit return' or leave your name in their 'guestbook' or whatever, they let you proceed to whatever Internet site you want.
Before your trip, use the 'look-ahead' approach and consult the list below, of KNOWN free-wifi airports. [And, there are no doubt OTHER such lists. This is just one that I happened to find.]
By the year 2006, Linux had become viable as a desktop OS. At end of 2006, Microsoft released their next Windows OS (code named 'Vista'), and reports are out that many users are migrating away from Windows to Linux. The bottom line is that I've made my personal choice to reject Vista. All my home machines are now installed with Linux (i.e. dual-boot between Linux and Win-XP Pro or Linux with VMWare, running Windows virtually as guest-OS). I'm almost exclusively booted up into Linux. (I DO still use Win-XP: e.g. to do my yearly income taxes or do occasional Win-specific experiments (e.g. to test developed software code designed to be 'cross-platform').
WHY NOT Vista? Here's the more obvious reasons:
Ok, If you already have a PC with Vista on it, just follow instructions in these two links and you should be set. Make sure that you do NOT delete or use any of Vista's partitions. Instead, use Vista's 'shrink' capability to shrink the (largest) main partition to get space to create the needed partitions for Linux. Do this FIRST, before booting up the Linux installer.
If you have Windows-XP or earlier, rather than Vista, then skip on down.
Ok, if have Windows-XP or earlier, and you are reasonably technically confident, we'll assume you've decided you want to wean yourself away from Windows and onto Linux. As I mentioned above, I favor the MEPIS (SimplyMEPIS) distribution, because its hardware detection is the best among the 4 or 5 Linuxes I've tried. To start, go join their 'forum' via the link shown above, download their free 'LiveCD' image and 'burn' yourself a copy and take it for a test-drive. If you like what you see, you can then decide whether to install it onto your hard-drive (right from that same 'LiveCD'). Details of all these steps are documented in the MEPIS 'wiki' writeup at the link below.
If you decide to install it, but want to start with a dual-boot system, the preferred next step is to crunch down your Windows-partition, to make room for Linux partitions (on the same hard-drive). [An alternative (on a desktop machine) would be to purchase a second hard-drive for Linux, but I find most beginners have trouble understanding the complexity of managing the resulting boot-block and 'MBR' setup needed for two separate hard-drives. And, many of you have a LAPTOP computer with just a SINGLE internal hard-drive. A 3rd alternative would be to install Linux to the entire hard-drive, and keep Windows by installing it as the GUEST OS under the free VMWare-server...after install Linux, see this link to do that:]
Most people will have at least 20 GB (20 gigabytes) of free space available on their single hard-drive for the recommended 2 partitions (of 10 GB each) for a typical Linux system. [Note: You can probably get by with HALF that size for a 'starter' system...2 partitions of 5 GB each, if you have limited free-space available for Linux.] We'll end up here with a DUAL-BOOT setup, so you can boot whichever (Linux or Windows) that you want to use, at any given time!
FIRST STEP: You need to DE-FRAGMENT and COMPACT(SHRINK) the Windows file-system. If you have the new Windows Vista, there is now a simple partition-shrinker (and extender) BUILTIN. Recipe to shrink the Windows Vista partition (Vista only!)
If you have Windows-XP or earlier, read on: This means that you need to get all the files, which are presently scattered out all thru the Windows partition, PACKED UP into the front portion of that partition (so that when the Linux 'partitioning tool' chops off the BACK part to make its 2 partitions, there WON'T be ANY files remaining back there! You will do this operation while running Windows, using Windows-supplied or other freely available de-frag tools for Windows. [The simplest way is to PAY for a copy of Partition Magic, which can do the job.]
This discussion assumes you have Win-XP (Home or Pro) and your partition type is NTFS (but the same concepts apply to earlier Windows OSes and to the FAT32-partition type, etc). This step typically takes two or more hours (de-frag is time-consuming).
(1) I follow the standard advice of first shutting off the Win-XP 'restore-point' feature, and also disabling the Win-XP system 'pagefile', prior to doing the de-frag of the NTFS partition. (One of the two or three green [unmovable] hunks shown in Microsoft's 'analyze' portion of their tool is the system pagefile itself, so that's no doubt the logic for disabling that feature! Note also that the system pagefile can appear in their 'analyze' tool as a red [fragmented] file and their defragger won't defrag it. So, the ONLY solution is to shutoff the 'pagefile'. Make sure that you REBOOT after turning off the pagefile, because that is necessary to make the system automatically DELETE it. It is the file "C:\pagefile.sys".) [Once the NTFS partition has been COMPACTed and RE-SIZED, and after you've created the two new Linux partitions, obviously you could then safely re-enable the 'pagefile' on a subsequent boot of Win-XP.]
(2) To get the files to the FRONT of the NTFS partition, do NOT rely entirely on Microsoft's supplied defragger in Win-XP. (The defragger itself is can be somewhat COUNTER-productive...it migrates certain files into the BACK of the free-space, for some [unknown] reason. And, it DOES NOT have a 'compact' function.) That said, however, the 'analyze' portion of Microsoft's defragger IS worthwhile, as it gives a nice GRAPHICAL picture of the file-layout. Note that MS's tool DOES run in safe-mode. Also note that when I ran it in safe mode (hint: hit F8 during boot of Win-XP to get there), then the mysterious 'green' (unmoveable) hunk located in the BACK of the free-space does NOT appear! [I'm now guessing that it is a TEMPORARY pagefile that gets created/deleted only during a NORMAL-mode session when the pagefile-feature is disabled.] To launch the Win-XP builtin de-frag tool, RIGHT-click on the 'C:' icon, choose 'properties', click on the 'tools' tab, and use the 'Fragmentation' tool shown there.
(3) I recommend the use of the (free-trial) software program named 'dirMS-S' to do the actual defragging, downloadable at http://dirms.com/ [I use just the first program their website shows, as their other two are for SCHEDULED de-frags, which you will NOT need. Note that this 'dirMS-S' tool has both DE-FRAG and COMPACT buttons!]
(4) Now, 'shrink' the existing NTFS-partition, using a (paid-for) tool such as Partition-Magic, or a few others. (My specific knowledge ends here.)
(4*) 'GParted' (the Linux-supplied partitioning tool): I tried it twice. I always FAILED at this step. i.e. when trying the actual 'resize' operation using 'GParted' to shrink down the Windows NTFS partition. I kept getting an error msg, saying to 'check the filesystem for errors' and when i tried using the Windows 'chkdsk' cmd, it failed to resolve the issue. It was later admitted in various forums that GParted can NOT shrink an NTFS partition. and states that you need a paid-for program such as 'Partition-Magic' to accomplish the 'shrink' step. [I hope you have better luck, if you try to go this 'defrag/compact/resize/shrink' route. I've always had the luxury of erasing the whole disk and then partitioning and installing both Win-XP and then Linux from scratch, since I have a Win-XP Pro kit that I can install WinXP from. The Linux kits of course are freely available. That said, it is trivially easy to shrink Linux-filesystem-partitions, such as 'ext3', 'ext4', 'reiserfs', etc, using GParted. I've done that successfully on numerous occasions. You'll need to use a LiveCD or a flash-drive-based copy of Linux, or whatever, so that you can access the partition 'unmounted' for the shrink operation. Another approach to gain some space, if you already have separate Linux partitions for /home and the distro(s) is to login via an existing distro as ROOT, and then you can unmount the '/home' partition (since it isn't 'referenced') and then shrink it with GParted.]
Ok, it's easy from here. Just re-insert that MEPIS (Linux) 'LiveCD', which is also the installation CD, boot it up, and install MEPIS. One of the early steps of installation will be to create those two (or three if you create the small 'swap' partition, which I don't) partitions. The details (again from the MEPIS 'wiki') are written up there.
The newest 3-D desktop software on Linux distros is 'Compiz Fusion'
(formerly called 'Beryl'). Below is the basic info I've learned on how to
activate/operate the most common plugins (features). To run the 'manager'
that controls the configuration, just run the cmd-line command: 'ccsm'
CompizFusion[v 0.5.2] (default-key-binding):
============================================
Switcher: (builtin?) Cntrl-Alt-DnArrow (unfolds cube into a chain so
every side is reachable)
Switcher: Expo Super-'E'(toggle) (you can drag windows between sides
while zoomed to the Expo)
Switcher: Scale Shift-Alt-UpArrow (reduces-size of all active windows
onto current screen)
Switcher: Ring Super-Tab (repeat until desired window at bottom)
Switcher: Shift Shift-Super-'S' (sorta bizarre looking, if 'fade windows'
is also enabled)
Firepaint: Shift-Super-mouse/drag/click (Shift-Super-'C' to clear all
fire)
[title-bar-win-hide] Mouse-scroll(on a window's title-bar)
[Rain (wiper)] Shift-F9 (Shift-F8)
To adjust cube transparency: ccsm->Click Desktop Cube plugin -> 3rd
tab is 'Transparency controls'
(Concept: For each plugin: CLICK on IT to get to adjustments of IT!
There is an aquarium plugin you can INSTALL (shows fish INSIDE the cube,
transparent view from top)
(but the only currently-avail 'interface' to install extra plugins seems
to be 'compile from source')
So, for now, enable the 'cube gears' plugin, for colored-gears turning
inside the cube.
Most of the above you can WATCH and LEARN, from a narrated
'Google/Youtube Video':
Novices to Linux who want to multi-boot between Windows and Linux have no doubt heard the general recommendation to install Windows first and Linux second. But, that is not a requirement, but rather just a simplicity for those who are new to understanding the 'MBR' (master-boot-record) and boot managers such as Linux's GRUB. If you are gonna do a fresh install of BOTH OSes, then sure do Windows first. But, eventually, you'll want or need to re-install Windows AFTER you have Linux in place. So, I'll try to explain the essentials, so you'll feel more comfortable with doing your installations in EITHER order!
One reason they have you install Windows first is because it is often ALREADY INSTALLED, and you simply make space on the hard-drive for Linux and install Linux last. Another reason is that most all Linux distro-installation procedures are GOOD citizens, so when they find Windows present, they honor that, and propagate the ability to continue to boot Windows, by creating an entry for Windows in the Linux boot-menu system, called GRUB. (Actually, there is another Linux boot-menu system named Lilo, but GRUB is more popular with the distros I've recently played with, so I'll discuss just GRUB, but the concepts hold true for any Linux-based boot-menu system.)
In the GRUB system, the only file you'll probably ever need to touch is '/boot/menu.lst'. You can hack on it with any text-editor. Take a second and examine its contents, so you can see that it is just a list of entries of various kernels to boot, which contain associated info about which PARTITION of which HARD-DRIVE contains that bootable kernel. Usually, the file is an ordered-list, and the FIRST entry is the one which will automatically get booted (unless you intervene before a countdown timer expires).
Each time you install any Linux distro, the installer will create a new '/boot/menu.lst' from scratch, and while all Linux distros that I'm familiar with do give you an entry for Windows, many do NOT give you an entry for existing LINUX distro(s) that you might already have in present in your current GRUB menu file. Thus, it is a VERY SMART idea to make a COPY of this 'menu.lst' and store it over in your 'home' directory and out on a 'flash drive' for safe keeping.
I don't own an 'iPod'. And, I don't even own a generic 'MP3-player'. But, I HAVE 'ripped' my favorite tracks (songs) off my commercially-purchased music CDs into MP3-files on my computers. And, I've 'burned' a few CDs of my own, which now contain my favorite mix of songs from all my favorite musicians.
I just learned a short while ago, that the iPod's 'iTunes' software creates MP4-files, rather than the more generic MP3-files. Maybe that explains why people claim they can't DIRECTLY move their iTunes-acquired files onto a generic MP3-player. (One workaround for that minor issue, would be to first CONVERT their MP4-files into MP3-files, and then it should be straightforward. I'm sure there's plenty of free software that can convert MP4's to MP3's, or the other way round, etc. That free conversion software is just a 'google' away.)
So, to answer the questions: An 'iPod' is just a glorified 'flash-drive' containing a bunch of MP4-files...the glorification includes some audio-hardware to playback the MP4-files so you can listen to them. And, a generic 'MP3-player' is almost exactly the same as an iPod, but is less-expensive, and stores MP3-files instead of MP4's.
Your turntable will already be hooked up to your stereo receiver/amplifier component of your music system. So, find an output on the rear of the receiver/amp which says "tape 1" (or something like that). It is low power, about 1 to 2 volts, and is often referred to as an 'analog line-level' signal. This usually has RCA-jack connectors (e.g. 1 red and 1 white). Acquire a cable with RCA-plug connectors (again 1 red and 1 white) on each end. Fit onto one end, an 'adapter' that adapts red and white RCA plugs to a mini-stereo plug (i.e. 1/8-inch). [Your local RadioShack sells such a cable and adapter.] The mini-stereo (1/8 inch) plug goes into your sound-card's line-level INPUT jack, which is typically light-blue (NOT the pink 1/8-inch microphone INPUT jack and NOT the green 1/8-inch headphone/spkr OUTPUT jack).
In your software (Windows and Linux typically both come with the necessary software), set up the recording type via a sound-card dialog box for both input source and output destination. The selected input will be that blue line-level port on the sound-card and the output is typically to a FILE on your computer. The output file TYPE can be whatever your software supports (e.g. .WMA or .MP3 or .WAV or whatever). Each record-cut, track, or song is typically recorded into a separate file. Then, the series of files could be converted to other audio-file TYPES, or 'burn'ed onto a CD or loaded onto your iPod, MP3-player, cellphone, or whatever. The builtin 'Windows Media Player' supports those file-types for both 'burning' and 'ripping'. On Linux, the software I've used include 'Amarok' to play my files, 'K3B' to burn CDs, 'Kaudiocreator' to rip tracks, and 'Audacity' to edit portions of a given song into shorter demo samples or ring-tones for a cellphone. There are numerous other free software choices on Linux.).
Note: MythTV is a large, complex 'frontend/backend' application, and
it requires 'MySQL-server' as a pre-requisite. For maximum flexibility,
it is designed to encompass many different HARDWARE-device-types, and
thus has a very intricate "Lego-style" of configuration, making it quite
tricky to configure! [To date, I've NOT yet got it configured to work
well with my tv-tuner-device.] Before you try,
bear in mind that:
It is HIGHLY RECOMMENDED that you FIRST get familiar with your
capture/tuner hardware, by using other simpler
tuner-controlling/tv-viewing Linux-software, BEFORE
trying to install/configure MythTV for your hardware.
This includes even the 'remote-control' (Linux-Infrared-Remote-Control =
'lirc'), which can be a 'beast' all by itself!!!
When you DO tackle 'MythTV', first find a 'recipe' to follow (preferrably
for your exact Linux-distro).
Here's a quite-good MythTV-setup recipe for 'Ubuntu/Kubuntu' Linux:
Note that 'in some jurisdictions, this may not be legal'. That said, U.S. law allows, last I heard, the owner of a movie-DVD to protect it, by backing-up (and even restoring, in the case of later scratched/damaged media). And that's exactly what such programs were written to do.
Use it like this: Launch k9copy, leave 'input' to be your DVD-drive, but change the 'output' to be an 'ISO-file' (e.g. on your hard-drive). Then, choose the 'Open icon' and then you'll eventually click on the top-level check-box for the movie...checkmarks should auto-propagate down into each section. [For output device, you COULD have left the default of burning a copy now, but instead, I highly recommend that you choose 'ISO-file', specify where (on your hard-drive) for it to create this large output file (about 4.3-GB, from a single-layer input-DVD), and tell it to start processing.] To start it, you just click on the 'Copy' icon. It may seem spooky near the end, as it says 'Burning DVD', but it won't be burning a REAL DVD, but rather just producing a 'virtual DVD' image, called an ISO-file, as your 'backup' copy. When k9copy finishes copying it to the hard-drive (mine took about 45 mins), close it down. NOW, if you wanted/needed to make an actual physical DVD, use your favorite burning-software (I use K3B), and just tell it to burn a 'DVD-iso-image', pointing it to the ISO file that k9copy produced.
The wikipedia DVR-writeup says, for DVB (Digital Video Broadcast) capturing, you need to capture an 'MPEG-2' video stream, because it is already composed of 'frames' of video (as 'frame-grabber' hardware does) and the 'MPEG-2' stream also includes the synchronized associated audio stream as well.
[Speaking of various formats...MPEG-4 format is a lesser-known video-format, that the iPod's and Sony PSP use.] A whole LIST of various format-standards is shown below.
Ok, if I understand correctly, MOST but not ALL standalone DVD-players can handle what's called a VCD (video CD), which is CD-media with VIDEO content (rather than audio-only content) on it. (Video-content, of course, has both a video and an audio component within it). The basic concept here is that, if the total size/quality of your video content will FIT on CD-media and meets the format-rules for a VCD or SVCD, then go for it. For details of HOWTO do this, see:
A good starting point would be to just go to Google-Video and download yourself some short video-clips (e.g. cartoons or whatever) and experiment by following the HOWTO tutorial for an (S)VCD linked above. You'll need to locate a package named 'ffmpeg' which the tutorial utilizes, to convert .AVI files, etc, into the needed mpeg-1 (VCD) or mpeg-2 (SVCD) format for burning onto CD or DVD media.
Ok, here are some details of how to proceed with the locating/downloading some sample video-content: For starters, read Google-Video's info here:
Here is the specific separate writeup I did, as an example:
You don't need any capture-card for this step, as all video-content is just downloaded. Mostly, I learned the SVCD-specifics from THIS website (also mentioned above): http://en.linuxreviews.org/HOWTO_Make_a_video_(S)VCD
Note: Prerequisite software packages are 'FFmpeg' and 'DVDStyler'. [On Linux, also add 'k3b', 'mencoder', 'transcode', 'vcdimager', and 'xine-ui'. You'll probably need to EXPLICITLY install most of these. Free public-domain versions of the key ones, i.e. 'DVDStyler' and 'FFmpeg', are 'cross-platform', so they exist for WinXP, and probably MAC OS X, etc.] Thus, it's very easy to make videos on WinXP, too...I've done it there, as well as on Linux. [Note: You don't actually need 'DVDStyler' until the next section, when burning true DVDs, using DVD-video format.]
Step 1: Acquire/capture/download a video-file (e.g. a .WMV), such as 'RealTime-Falwell.wmv' (e.g. from Google-Video website).
Step 2: To convert this .WMV to .AVI (and other formats), use the Linux 'mencoder' cmd-line program. [See 'man mencoder' for details and other options.]
[This conversion creates an avi file from a wmv file. Takes about 10 mins for this 6 MB file. This is on my old/slow laptop. Resulting file is 39 MB and contains about 7500 frames.] [Note: Using audio option "-oac pcm" balloons the filesize, but audio-quality remains GOOD! Using the audio option "-oac copy" results in a much smaller, but audio-damaged output file.]
Step 3: Convert the .AVI file into the actual 'svcd-compatible' (still on your hard-drive) with a 'ffmpeg' command like:
Step 4: Burn that onto actual CD-media itself...I use Linux's K3B as follows: Within K3B, choose 'New Video CD project'...its next screen prompts you to just drag/drop your video file(s) into K3B's bottom-portion of the window, and then hit 'burn' button. It works for me...I've done a couple different variants, for creating the video input. Once real simple scenario was that I captured a portion (e.g. 30 minutes) of a movie from my cable set-top box, telling my capture software to put the output into a 'SVCD-format'. This resulted in a single .mpg file, which I burned, and then tested it, by inserting the resulting CD into a normal (Pioneer) DVD-player that's coupled to my home TV. It plays fine...of course, there are no separate screen titles, and the close-caption info that WAS PRESENT in the input, did NOT come thru. [More on this later.]
Ok. For the next project, I decided to burn DVD-media, from a larger, full-length movie that I'd captured. This came from my set-top cable-box. To do the capture, I selected an output recording format designated as 'DVD - 2.0 MB/sec', which resulted in a .mpg file about 2.1 GB in size, from just over 2 hours of recording time. This capturing I do under WinXP, using the provided 'WinTV2000' program that came bundled with the hardware.
To pre-process the captured file, I again use an 'ffmpeg' cmd like:
To build the .ISO file, I reference the 'SomeMovie-result.mpg' file, from 'DVDStyler'. This is one of the most popular 'DVD-authoring' programs. Then, I burn the resulting .ISO. Rather than describe all the details of that here, just read my writeup that I placed into the template-article I found on the Linux Review site, at:
This works elegantly. [One important remaining issue is to figure out how to get 'captioning/sub-titles' to come thru and work on the resulting DVD.
From time to time, you'll need to snip off extra stuff at the end (e.g. if you let your capture software run past the end of a broadcasted movie) or if you need to edit out commercials, or whatever. To do this, you'll need a 'video editor'. There are a few to choose from...on Linux, I've tried 'Avidemux' and 'Kdenlive', and heard about a new, simpler chop-out-editor named 'GOPchop'. Your Linux distro should have all these available in its software repository.
Lately, for the simplest editing, I've come to prefer 'avidemux' as it allows you
to 'index', and thus cross-reference frame#s with time-values for one's
current-position. Because I've wanted to post-processing the
raw-captured video, using the cmd-line tool 'FFmpeg', I then specify the
'-target dvd' arg, and the '-vframes' arg to 'FFmpeg', stating where
to stop the converter.
'Kdenlive' has both a support-forum website, and a separate tutorial
website:
I haven't yet tried the promising 'GOPchop', which is a simpler video editor recommended for chopping out commercials, etc. It claims to use a sophisticated editing technique, which chops only on 'i-frame' and/or 'GOP' boundaries, allowing it to edit without the need for re-encoding.
A major issue seems to be whether you'll want to buy a TV-tuner card for your PC (to capture analog or digital streams, or whether you could just hookup the PC to the TV 'set-top' box (and capture those analog or digital streams from it). According to the Wikipedia info, they seem to be saying that, for a set-top box, you want it to have a firewire output connector ('firewire' is also known as IEEE-1394). I now HAVE access to a DVR-box (i.e. a Comcast-provided Motorola box...DCH3416, with a firewire-port) and all info on the Internet claims that the '5C-bit' will be set on all but local-station broadcasts [tho this may vary regionally]. Thus, the only solution when the 5C-bit is set is to 'dub' the stream via the S-Video, as I had already learned to do from a standard set-top box, via a tv-tuner/capture card.
Hmmm...so I've finally concluded that a tv-tuner/capture card is the preferred approach. This allows you to be able to record anything that you're paying to receive, such as channels ABOVE 125, HBO, etc.
Such cards come in a variety of types: Analog, digital, hybrid, and personal. And, of course, various models can attach via the PCI-bus or the USB-bus. Also, note that there are various FUNCTIONAL categories, such as TV-viewing, TV-recording, and TV-grabbing (frame-grabbing), to name just a few. Some of the varieties allow you to do MULTIPLE functions (e.g. viewing and recording, etc). These varieties are illustrated in the link below:
Let's assume that, like me, you have a set-top box (either rented from your cable or satellite TV provider or else purchased). And, that, like me, you've purchased a video-capture card of some sort for your PC.
My first hardware purchase was a Sabrent "SBT-TVFM FM Radio /TV Tuner PCI Capture Card" (via EBay, for $14.00 + $5 shipping). This thing is normally only $26 retail...a true LOW-end offering. But, it met my needs, initially. [It comes with a remote-control and can tune FM and TV, via either an antenna or coax (cable/satellite) input. It also has inputs for composite-video and s-video and audio-in, so one could capture from a VCR, set-top, or DVD-player.] Some Internet googling claimed that it is supported on Linux (as well as on Windows, of course). It is based upon the Philips SAA-7134 chipset. I can now confirm that it DOES indeed work acceptably on WinXP (tho the software is only average quality). And, it is supported on Linux (as card=42 tuner=69 to the 'saa7134' driver). I now can get it to view channels on Linux (using any of 'kdetv','tvtime', and 'xawtv' TV-viewers with that configured driver).
My second hardware purchase was a Hauppauge WinTV-PVR USB2. (I got a very good deal...bought it on clearance sale at Circuit City in NH, for $63. Just like the Sabrent tv-tuner/capture, this one works just great on WinXP...install the Windows driver and software and go.) This is my preferred one, by far, and I use this one exclusively now. I particularly LIKE the fact that it is USB-based, so everything is more flexible and portable, and it can be quickly attached to either a laptop or desktop PC.
Doing the captures on Linux was a steeper learning-curve. After struggling trying to do the captures under Linux (and fighting with MythTV), I switched to doing the TV-capturing from WinXP, and then re-boot over to Linux and do all the remaining processing (e.g. massaging video-files, and creating CDs/DVDs) there. This is working well! Later, I moved to doing the 'DVDStyler' work also on WinXP, as I'm finding it easier to get the newer versions of most 'cross-platform' tools first for WinXP, as Linux repositories are slower to provide the newest versions for Linux users. [Note: To solve the data-movement issue, my WinXP partition is mountable from Linux, using the newer 'ntfs-3g' support, so that I can push/pull data to/from Windows while booted under Linux. Conversely, using 'ltools', I can push/pull data to/from Linux while booted under Windows. And, I've come to prefer dual-boot over running the alternate virtually, (using e.g. VMWare-server or Virtual-Box), since I re-install Linux relatively frequently...typically, every six-months.]
The 'pvrusb2' usage doc for my Hauppauge device is located here
Linux's tuner-chip module for this device is 'cx2580'. One discovers
these facts by examining these keywords in 'dmesg': In addition
to module 'pvrusb2', these additional modprobe-able modules are there:
cx25840 / tuner / tda9887 / tveeprom. Like other capture-cards, a generic
device gets created for 'pvrusb2' driver: '/dev/video0' And from that
driver-doc, these recommended cmds for TV-displaying do WORK:
mplayer /dev/video0
vlc < /dev/video0
kaffeine fifo:/dev/video0#demux:mpeg
This device, like the first, comes with the familiar 'remote control' to
change channels, volume, etc, etc. So, I installed the software package
'lirc' (Linux Infra-red Remote Control), but the remote-control does NOT
yet work on Linux. [sigh] One rumor was that I might be missing some
'kernel-level' lirc thing!? Need to re-test, now that the 'lircd' is
setup to run at boot-time! Luckily, I could just leave that tuner on
chan-3, and EXTERNALLY control the cable (set-top) box to change
channels!
I finally DID get capture working on Linux, using 'mplayer/mencoder', which supports the 'pvr://' mechanism to hookup to the pvrusb2 driver for my device. There is some great info on the technique that I finally got working (just by substituting 'pvr://' for their 'dvb://') as discussed here:
The mplayer/mencoder docs specifically show support for processing of 'closed caption' info, via the '-subcc' argument. 'Closed-caption' info is also referred to as 'vbi' info (vertical-blanking-interval). More Internet researching indicated that only two models in Hauppauge's offerings support capture of closed-caption data...i.e. the PVR-250 and PVR-350. And, these models are now discontinued, as a whole new line of products are becoming available, that are more compatible with the conversion to 'digital television' here in the US. [Sigh.] This vbi/closed-caption-capture ability is becoming a important feature for me, so one of these days, I'll sell off my 'PVR-USB2' and get me one of those models that supports this! [Don't waste your time reading their specs...vbi/closed-captioning is rarely mentioned. And, when I sent an email to Hauppauge-support, they didn't even know that any of their products supported it.] I initially found it a bit strange that only these two PCI-bus products support vbi/closed-caption capture. Evidently, I'm one of the few who care much about this feature. I plan to buy a newer-technology unit soon, and I'll make sure that either the Linux-driver or the Windows-driver has implemented capture of the vbi/closed-caption data stream.
Concept: It's ALL about those LIGHTS on the front panel!
I just suffered thru true (intermittent) loss-of-connectivity between a DSL-modem and
my ISP, and I re-remembered how to distinguish this issue, from the (more-common!) problems
of Windows itself being screwed up or something in the router being the log-jam. For a DSL-modem
(and similarly for a 'cable-modem'), the KEY thing to look at are the last of the lights that
represent the OUTGOING-side of the box containing the broadband modem. For
DSL, just look at the light labeled 'Internet'...if it's ON (steady), the problem is NOT with your
ISP! For a cable-modem, look at the light labeled 'Online'...if it's on, the problem is NOT
with your ISP! And, conversely, if those lights are NOT on, do NOT waste your time rebooting
or tinkering with your PC or router...the problem IS at your ISP, so call them!
Ok, if the problem was NOT with your ISP, then don't call them. (Sure, they get calls all
the time when the problem is not really THEIR problem, which is why they ask you all the other
seemingly goofy questions. But, who wants to talk to India if they don't have to?)
Instead, we now know that the problem is either in the OS (e.g. Windows) or in the user-side
of the router (which includes the wireless-subsystem, if the computer's connection is wireless,
rather than directly-wired with an ethernet-cable).
The quickest way determine which of those two is the cause, if you have ANOTHER separate computer
available, is to attach a DIFFERENT computer, preferably direct-ethernet-wired, into the
back of the broadband-modem (DSL or CABLE), and see whether you NOW have a working connection.
(Hint: Do this WITHOUT shutting off either the router or modem box(es)...that's safe, and
makes trouble-shooting, without disturbing the problem, easier.)
Ok, if the problem was in the router, re-check any 'setup' info and also check whether your 'router-FIRMWARE' is up-to-date, by going to manufacturer's website and comparing the version# AVAILABLE for your EXACT model with the version# shown when you 'login' to the INSIDE of that box and examine the value shown. (To understand how to do THAT, read futher down, below the 'yellow' table in the next section of this webpage, where it discusses how to determine your 'gateway' IP-address and login to see inside.)
Lastly, if the problem was somewhere in the 'Windows' computer itself, my first GUESS would be 'spyware' or a 'virus'. [Another section of this webpage discusses those sorts of issues, so I won't try to repeat that info again here.]
Let's assume TWO home computers exist, behind a standard 4-port wired/wireless router/firewall. Let's further assume that only ONE of the computers is going to play the role of 'server' (e.g. a desktop machine) and that it has a hard-wired ethernet port attached to one of the 4-ports on the router. The other computer is a client (non-server) and is a laptop. [The laptop would probably be wireless, but we won't go into much detail on that characteristic.] Lastly, note that we do NOT care what OS these two computers run...any of Windows, Linux, MAC OS X, or whatever is fine.
So, for starters, we of course need to install and configure the server-software. Typically, there are free open-source products available, such as Apache (for a web-server). Let's say we configured our Apache webserver to listen on (non-standard) port 8080. Once those are setup, you can first test them from the laptop (which is INSIDE the firewall with the server), so you'll probably have to address the webserver via http://192.168.0.99:8080/ (rather than http://WaterHawk.dyndns.org:8080/, because that usually will NOT work from INSIDE the router/firewall...that will probably ONLY work from OUTSIDE the router/firewall.)
Note that all the configuration changes needed inside the router/firewall are necessitated solely because we want to allow this first computer, i.e. the server, to be able to be communicated with from OTHER computers which are OUTSIDE the house. For example, maybe one of your friends, or you while you are at work elsewhere, want to connect INTO the household through the router/firewall and use the services of the server. The purpose of THIS whole writeup is mostly to explain what changes to make, and how and why to make them.
Your ISP (Internet Service Provider) doesn't really know or care how many computers are inside your home...it just assigns a SINGLE, EXTERNAL IP-addr, which your router/firewall box uses as its EXTERNAL IP-addr. When viewed from a computer INSIDE, the router/firewall has an INTERNAL IP-addr, which is a private value referred to as the 'gateway' IP-addr, and is typically 192.168.0.1. [It is a totally different EXTERNAL IP-addr that gets registered and associated with whatever your external IP-NAME is going to be. In my case, that IP-NAME is 'WaterHawk.DynDNS.org'. Like me, you can go to 'DynDNS.org' (their website) and register and get such a free domain-name assigned for your (home) use. In this case, the name (e.g. WaterHawk) does NOT even need to get formally registered, because it sits in front of their registered domain-name 'DynDNS.org', and thus your is a 'private' name, unique only within DynDNS.org's infrastructure.
Normally, all computers on the local(home) network get assigned their (private) IP-addr DYNAMICALLY by the router. However, some/most routers don't give out true 'leases' on the assigned value, and thus the values given to each computer when it comes online aren't constant, but rather vary based on order of arrival, which is not good. For the SERVER-machine, we need its assigned IP-addr to be guaranteed to be the SAME every time. So, we give it what is termed a 'static' IP-addr. Check the manual for your router for exact details. Most routers give out DYNAMIC IP-addrs starting at '100' in the 4th position (e.g. 192.168.0.100), so it's normally fine to use the numbers just BELOW that value for 'static' IP-addresses (e.g. 192.168.0.99). Usually, you can do that without even telling your router that you'll be doing that, since it won't be assigning those values dynamically. So, let's assume we've statically configured our server-machine's IP-addr to be: 192.168.0.99 (The laptop will dynamically get its assigned IP-addr, so it would probably get 192.168.0.101, based on the [default] setup inside your router, for what the first value it gives out.)
Like router/firewalls, each computer can ALSO have its own (internal, software) firewall. For our client (laptop) computer it is a GOOD (safe) idea to leave its internal firewall enabled. (Thus, we won't have to worry about remembering to re-enable its internal firewall when we take the laptop outside the house, thus losing the protection of our surrounding router/firewall!)
But, for our server-machine, rather than keep and then configure its internal firewall to match identically to the way we will configure the surrounding router/firewall, we instead just totally DISABLE the server's internal software firewall. This is safe to do (in my opinion). And, it dramatically simplifies our configuration work, as we specify our firewall-rules in just ONE place...inside the router/firewall.
By far, the most COMMON type of service (protocol-type) is a web-server (protocol-type 'http'). The STANDARD port# for 'http' is port# 80. Most Internet Service Providers purposely BLOCK 'http' requests for port 80, so to side-step that problem, we will use a so-called NON-STANDARD port# of, say, 8080. Thus, anyone who wants to use your webserver service will NOW need to explicitly specify the port# on the URL...so, normally, it would have been "http://WaterHawk.dyndns.org/" but now it will have to be "http://WaterHawk.dyndns.org:8080/" For all OTHER protocol-type services that you may wish to setup, you can use the DEFAULT port# assigned for that protocol type (since Internet Service Providers don't normally block any of the other default port requests).
For each type of service we want to define, we need to know the things
shown in first five columns.
Note: Port values for most conceivable services will be listed on any
Win-XP system, in
file:\[windows-dir]\system32\drivers\etc\services
[I show here ONLY those that I have played with.]
| Name | Protocol | Begin port# | End port# | Server IP-Addr | [Comments] |
|---|---|---|---|---|---|
| http | TCP | 8080 | 8080 | 192.168.0.99 | (Normally, port=80) |
| ftp | TCP | 20 | 21 | 192.168.0.99 | (Linux-server's pkg-name=proftpd, but there are others. Note: For FTP, we must enable TWO ports, hence start/end are different. ) |
| ssh | TCP | 22 | 22 | 192.168.0.99 | (More-secure, but NOT shown in M$'s 'services' file. Linux-server's pkg-name='openssh-server') |
| telnet | TCP | 23 | 23 | 192.168.0.99 | (Older, less-secure than 'ssh') |
| rlogin/login | TCP | 513 | 513 | 192.168.0.99 | (Older, less-secure than 'ssh') |
| cvs | TCP | 2401 | 2401 | 192.168.0.99 | (CVS is for 'source-code' control) |
| MySQL | TCP | 3306 | 3306 | 192.168.0.99 | (A database-server. But, I've had trouble accessing it thru my firewall!?) |
| vnc | TCP | 5900 | 5900 | 192.168.0.99 | (VNC/TightVNC is 'PC-Anywhere/GoToMyPC'-like. Port=5800 supports using the simpler client-browser UI, and port=5900 supports the standard viewer) |
For the 3 interactive-login-style protocols, 'ssh' is recommended over the lolder 'rlogin' and ', for security reasons. [To access any of these from the user's client-PC, there is a nice cross-platform program named 'PuTTY' that can speak any of these three protocols (the user-selects which protocol to use at connection-time). So, if you securely allow only 'ssh',as you probably should, make sure you inform your users that they MUST choose 'ssh' within 'PuTTY' when they connect.]
I happen to have SEPARATE front-end boxes. Since I use 'DSL', I have a one box, the DSL-modem, with builtin IP-addr: 192.168.1.1 and behind that, is a separate box, a Linksys router/firewall (with the BUILTIN/FACTORY Gateway IP-addr: 192.168.15.1, but I change this to the more standard: 192.168.0.1). This two-box-frontend exactly parallels the setup that cable-ISP users (e.g. Comcast) would have...i.e. they will have a cable-modem, whose builtin IP-addr is probably 192.168.100.1, and then have the separate router/firewall box, similar to my Linksys router/firewall. [These 'builtin' gateway IP-addrs CAN be over-ridden as needed, as I do, with the same setup technique that we will use to adjust the 'firewall-related' values.]
Thus, all the computers BEHIND the router/firewall have a gateway address of 192.168.0.1 and their 'broadcast' address is 192.168.0.255 and their 'mask' address is 255.255.255.0 (you may need these values to configure your server's static IP-address)
To summarize, for each firewall entry, we will (typically) need to place five values into each entry: (1)App-name(e.g. http)(2)Protocol:'TCP' or 'UDP'(normally, 'TCP')(3)Begin-port#(4)End-port#(5)IP-addr of server-to-redirect-to. These values will now be saying: When a request for any of these protocol-types comes in, on any of the defined port#s, don't block it as you normally would, but ALLOW IT, and just re-direct the request to the machine whose IP-addr is given.
To determine your router/firewall's 'gateway' address, go to a command-line window and enter the cmd 'ipconfig' (on Windows) or 'ifconfig' (root-login on Linux). Then, to actually 'login' to see inside your router/firewall (i.e. to either TROUBLESHOOT or to ADD/CHANGE values), you simply use your web-browser and specify a URL containing your router/firewall's 'gateway' address, which should look similar to http://192.168.0.1/ You should then see a logo from your router, and a login-screen, where you enter the (factory-default) values for 'user' and 'password'. Once you get inside, you can then find the place to enter the values from the table into the 'firewall' section. Don't forget to 'save' the configured values, so that, even after a powerfail, your router/firewall will come back up with these changed/entered values still intact. (Most all routers have a 'factory-defaults-RESET-switch' on the back, which, if you hold it pressed-in for at least 10 seconds, any/all values that YOU setup inside will now be gone, and the router returns to the 'factory-default' values.)
Here's some normally-found FACTORY-DEFAULT login-values for
router/firewall boxes:
Linksys: user=admin pwd=admin
D-Link: user=admin pwd=[blank]
Netgear: user=admin pwd=password
Microsoft: user=[blank] pwd=admin
but, if in doubt, RTFM.
One last thing...each manufacturer's products differ a bit as to what they call these "firewall" entries. For example, in my Linksys, they do NOT call them 'firewall' settings at all. Instead, they are listed under 'Applications', and refer to it as 'Port Range Forwarding'. Whatever...call it what you like.
Ok, that's it...go setup your router! (Consult its manual for help, if you get stuck.)
Some Windows OEMs (e.g. HP/Compaq/Dell,etc) create a 'recovery partition', typically as the D-drive. For example, on one HP laptop whose disk was so meta-data corrupted that Vista wouldn't boot all the way, but would instead say to run 'chkdsk', and then 'chkdsk' would hang during the first-phase, I at first (mistakenly) thought that it was a HARDWARE-failure (e.g. a head-crash). But, later, I realized that maybe it was just the NTFS file-system that had somehow gotten corrupted.
So, I learned I could hit 'F11-key' (an HP-added BIOS-driven option) and then get into a place where I could elect to start a 'recovery'. What it does is to re-format the C-drive (which contains the whole original Windows-OS system that was corrupted), and then copies over and installs a 'Factory recovery image' of Vista from the D-drive back onto the C-drive. You then go thru all that 'brand-new-PC' stuff, and thus must re-install all the Windows-updates, including SP1, and all additional software that you might have previously installed, etc, etc. That's a bit painful and time-consuming, but it does resolve the issue.
Windows-XP SP2 (service pack 2) is a mandatory upgrade (from a security/stability standpoint) because of the threats that both spyware and viruses pose. Remember that spyware is an attack against Microsoft's Internet Explorer (IE) browser...thus, the best defense is simply to use an alternate browser such as Mozilla 'Firefox'. For anti-virus, my favorite one happens to be free for home use and is called 'Avast' (See the separate categories above for links to those websites.)
Microsoft FINALLY saw the writing on the wall and realized the
severity of spyware and virus threats! So, their response was 'SP2',
which is a major set of patches and additional new security software,
including a much-improved/updated software firewall, and an
'security-manager umbrella' shield applet in the 'control-panel'. This
'security-manager umbrella' actually CHECKS for the ENABLED presence of:
(1) A 3rd-party anti-virus product.
(2) A firewall (either theirs or a 3rd-party firewall). [If you
have a hardware wired/wireless router/gateway box, then it no doubt
contains a hardware-firewall, so in that case, you can safely disable the
software-firewall in each PC, unless it is a laptop that you might later
carry OUTSIDE your home-firewall.]
(3) That Windows Update is setup and enabled to bring you future
updates from Microsoft's website.
Most every user has discovered that they can 'right-click' on the desktop, choose 'properties', and then customize various aspects (e.g. the screen-saver, the desktop background picture, etc, etc). What is less commonly known is that one can tailor the behavior of the 'task-bar', as well as altering its default-placement from the bottom of the screen to any of the four edges. For nearly a decade, I've always placed my taskbar on the LEFT side, made it much wider, and of course set it to 'auto-hide' (you move the mouse to edge that the task-bar lives on to make it reappear). Right-click on an unused spot and choose properties to make these adjustments, being sure to 'lock' the taskbar once you've got the layout customized to your liking, so that it doesn't get accidently messed-up.
The next feature that I recommend you start using is to enable the 'quick-launch' toolbar on the taskbar, and place your frequently-run program-launchers on that toolbar, INSTEAD of on the desktop (where you always have to minimize all your app-windows out of the way so you can SEE your desktop icons)
Of course, once you've invested in this 'tailoring', make sure that any OTHER users of your computer are given their OWN separate user-account, so they can tailor its desktop to their liking, rather than stumbling around trying to understand your preferences. [You do that via 'Start->Settings->Control Panel->User Accounts']
If you use the 'Command Prompt' application, you definitely want to enhance it to work more like a real 'shell-window' on Unix/Linux. To do that, you create a text-file (let's call it 'login.cmd') of tailoring cmds and associate it with this application. Here's a starter-template example file:
To associate this file to the 'Command Prompt' application, just modify this app's launcher's 'target' by appending ' /k login.cmd' (leave a space after the tail, which should be '...cmd.exe'). Lastly, enable 'QuickEdit mode' and 'Insert mode' in the app itself (via 'Properties' from its own upper-left-corner icon in the running window).
Google encourages website developers to utilize their Google-Maps functionality by publishing their API and making it VERY EASY (and free!) for others to build upon all their great work. Here's a link to the website I developed, using the latitude/longitude (GPS) support, which is crucial when marking locations that are not street-address-based.
Another very common requirement is for a website to show a map of their facility, or location of an upcoming meeting, or whatever. And, then they typically try to include some STATIC driving directions or a static map. That old technique is now obsolete...it is now MUCH simpler to go to Google's 'maps.google.com' website, enter the street-address of your facility (or locate your point with a latitude/longitude), and then just click on 'Link to this page' and they will GENERATE both a URL for that exact location and the needed HTML-code that you can embed in your website-page that produces a DYNAMIC map of your location.
Below is an example of that html-web-code, for street-address '1600 Pennsylvania Ave, Washington, DC' (the US whitehouse). I chose the 'small'est map (which user can dynamically make larger, as desired):
The neatest part is that the user can now create their OWN customized driving directions, either to or from this location. Very cool.
A while back, after reading the article below, I made a neat project out of the ideas: Build a tool (that others pay good money for)...a tool that can take the output of an SQL-query (from any modern DB), and transform it into your choice of an XML-file, an HTML-file, a CSV-file, or even a WML-file (aka 'HTML'-for-a-PDA/cellphone). Long story short, I obtained starter code off the Internet, and then hacked it into submission. Testing it was a major part of the battle...so I went out and downloaded the community-editions (freeware) of DB-servers from all the important DB-vendors (e.g. MySQL, Oracle, DB2, SQLServer). [And, the beauty is, that if your fave DB-vendor isn't named, it's trivial to add support for yours into this cool-tool, due the power and flexibility of JDBC!] I chose Java/JDBC because that's what the article describes and that's what I'm most familiar with, but these days, it should be easy enough to develop the same tool using C#, if that strikes your fancy.
Needless to say, I learned a TON from my efforts on this project! [e.g. practical use of XSLT (XSL-transforms), and more exposure to other useful open-source java/db-tools like SQuirreL and SchemaSpy, just to name two.]
There is now a much-easier workaround to the bothersome msgs...simply right?-click on it in systray and disable the msgs. [They let you do that now on Win-XP, since their softening and Vista's release.]
Cruisin' down the highway...