Frustrating FAT32

Since Monday morning, I have been trying to copy some files (about 2TB) to a RAID I set up in my office. My supervisor instructed me to diff. (compare these files) with some other files on another drive (stored on the network) and ascertain the differences. I initially thought that copying the files from the 2 1TB drive was going to be very easy. But I was gravely mistaking!

FAT32….. Why does FAT32 still exist? Do people ever use this again? Who made this format in the first place? End of Rant.

As I already said, I started working on transferring these files to the RAID since Monday. I had no much problem with transferring files from the first hard drive. That was really encouraging. My morale for work was boosted. As I began transferring the files from the second drive, the whole system “sort of” crashed. Even, the Mac program “Finder” crashed. It issued an error: “The application Finder cannot be opened”. And it displayed a cryptic error code, something like “1009-“. I have no idea what that means! I opened the terminal so that I can kill Finder and restart it. Surprisingly, even the terminal said it was busy running another process. So I left it alone. The whole system was down. I was perplexed and worried. I wandered why this could be happening and tried to look for a solution online (luckily, firefox didn’t crash). I found none relating to this problem.

Having tried to resurrect my programs again without any success, I decided to restart the whole system quitting all the programs using CTRL-OPTION-ESC. This worked! The system restarted but I couldn’t read any files from the second 1TB drive. I was on the hot sit!

I tried repairing, ejecting safely, and even ‘resurrecting’ (some complex repair processes I made up) but none worked for me. The OS didn’t just recognize the disk. Then out of serendipity I checked the disk information to discover that the drive was a FAT32. I suppose that that might have been the problem all along. I discussed this issue with a technical personnel in the ITS ‘basement’ and he confirmed my suspicions. He said that Macs aren’t on good terms with old FAT32 and that could have accounted for the weird behavior of my drives.

Don’t get me wrong. FAT32’s aren’t that bad. They are good to windows but kind of BAD to Macs. FAT32’s have some enviable characters. FAT32’s allow you have a root folder that is an ordinary cluster chain. Plus, you don’t have any superfluous files that *nix files sometimes put in the root folder of a drive anytime it writes to that drive. In addition, this format is safer than many others because the boot sector of FAT32 drives is automatically backed up at a specified location on the volume so FAT32 volumes are less susceptible to single points of failure than a lot of *nix formats including its predecessor FAT16 (pls. don’t use this).

On the other hand, FAT32 has a lot of demerits. The file format does not have any built-in file system security or compression scheme with FAT32. Also, it is more susceptible to viruses (this is something associated with all Windows platforms). I don’t have proof for this but I’ve noticed that viruses are more prevalent in FAT32 volumes than on any other non-FAT volumes.

Now, I should get back to trying to copy files from my *Wonderful* FAT32 drive to the Mac RAID that I set up. Peace.

vi. vs. emacs. vs. eclipse

Every program was made in an environment, a programming environment (not necessarily suitable to the task but possible). Text editors like notepad, gEdit, textEdit, and others are multipurpose text editors that a programmer can program in and that ordinary ( I mean non-programmer) user can use to take notes or to do ordinary, non-programming tasks.

But “editors” like emacs and vi (or vim) are editors suited to be a programming environment that the programmer can easily and efficiently use to write seamlessly. These editors can also be used by non-programmers (although I think it might be too complex for the average user). Emacs, for example, can be used as a browser and a mailing agent (used to read and write email). These functionality make these editors popular and extremely useful.

However, to the programmer (I mean the intermediate/hard-core ones), these editors (emacs and vim) just provide them with enough functionality to make programs and build systems. They can run through the whole cycle of making programs as fast as possible (writing, debugging, building, refactoring using hot keys, addons, and plugins). Some programmers claim that with emacs you can write a thousand lines of code in an hour. I can’t do that now because I am not an expert user of emacs but some of my friends who have been programming for some time in emacs now can.

I started programming using netbeans (bad choice). Why did I say it was/is a bad choice. It is good/useful for the fledgling programmer to gain an understanding of how computers work and how the development cycle actually works barebones. When I started using netbeans, I would write java programs and then click on the compile/run button without even understanding the underlying process of compiling and running the program. When I came to college, we were made to use TextWrangler. Although this editor is not the best programming tool, I could write programs and debug (frustrating process!) and therefore understood what was going on under the hood in the computer. I understood how the computer works and the write-debug-compile-run process. I process that a complex IDE like netbeans shielded from me.

IDE’s!! Yeah!!! They are great. They enable you to do a lot of things seamlessly and easily. You don’t need to get out of an IDE when writing code. You can write, debug, compile, and run in the same place. But a word of caution for the beginning programmer. IT IS BETTER TO START WITH A PLAIN TEXT EDITOR! With a plain text editor, you get to understand the internal structure of the development process. However, for the expert programmer, it automates most tedious functions and he will be able to program better and faster!

That was why I even came to write on this blog. What IDE/text editor should I use. With time and experience, I have more tasks at hand and I feel an IDE will make me program better. IDE’s for web development include Netbeans, Eclipse, Komodo Edit, and others. But are these going too complex for me to use. I hope not! I honestly don’t know which IDE I should use/try.

I think I would continue with emacs/gdb (debugger) and then stretch out my hands to Eclipse after some time. I know that I would eventually have to use an IDE because Web Developers do to automate a lot of their tasks (eg. writing, uploading, and publishing).

Another argument just popped into my mind. Dreamweaver (WYSIWYG editors) or editors. Should I write raw HTML in editors or should I use a WYSIWYG editor to write pages/code? Let’s see what happens.

I will start to explore as soon as possible. Let us see what I end up with eventually.

What editor do you use? What IDE do you prefer?