Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
User Journal

Journal Journal: My Migration from a Dell win2k laptop to 400Mhz TiBook G4 4

I am a web applications developer. I have been doing this for about 6 years. In the early stages of my career I was a die-hard mac-user working on fairly simple projects ranging from static html sites to FileMakerPro/Lasso-powered database-driven web applications. As I moved to a bigger company in a large, highly-structured, thoroughly-policied corporate network environment, i've found myself ultimately working out of a DELL laptop so i could travel, work at home and at the office. Plus until OS X came out, i could not justify a "mac laptop" as a serious solution for advanced development needs to my boss. "it's a mac. it's cute. it's not really for developers, it's for graphic artists, you can't run cygwin on it".

The thing first ran windows NT. Fairly unstable. The hardest thing was to deal with multiple network environments: switching between home local area network, and corporate IT LAN. It just wasn't built for that. I did manage to buy and install an 802.11b wireless card on that thing. But the drivers for it were incomplete. It worked partially (WEP encryption had to remain disabled). And it made my switching networks even more challenging. Then I upgraded to windows 2000. While it was more stable, its networking was still not as reliable as I would have wished. The thing still wouldn't go to "sleep" and wake-up flawlessly. The operating system would often panic. I'd have to reboot the machine to change networks. I've always *hated* the network configuration interfaces under windows. But I dealt with it ... just like a bad relationship you're too scared to break out of. ... That is until the operating system would start choking on me more often than I would have cared to. The mouse would stutter then stop moving, until the whole machine would come to a complete freeze, forcing me to hard-reboot. A repeated number of those maneuvers started corrupting my hard drive and key files of my "windows profile". I lost countless hours of work as I tried to re-build my user environment.

I believe all this was caused by a combination of poor hardware quality and bad operating system design. Who was at fault for my lethal loss of productivity? Dell? Microsoft? Hard to tell. But I am sure both companies would be eager to engage in finger-pointing sessions.

As I was dealing with those woes, my boss had gotten himself an early Titanium Powerbook G4 model and subsequently upgrated to OS 10.1 after test-driving 10.0.x for a while. As a manager, he had less immediate "power-user" requirements, it was a perfect platform for his day-to-day activities, and a smoothe transition from his OS 9 desktop environment. He also happens to be a geek and skilled web designer and developer. He started exploring all the things he could do on OS X, and pointing out nifty things to me: "oh look the developer package comes with a CVS client, emacs, and a slew of other useful unix tools". "hey check this out i compiled and am running Zope on my os x laptop".

As my DELL box was rapidly turning into a door-stop, i started backing-up files ranging from text, image, video, office documents, zip and much more, to remote locations for further migration to ... A Titanium Powerbook G4 of my own!

That's right. My boss felt my pain and put me out of my misery.

I fell in love with the OS right away. Got my mac.com account. I started working right away. I became immediately more productive than I ever was on the DELL:

The underlying unix environment allowed me to set-up a comprehensive web application development framework using OS X's highly reliable and performant built-in support for Java 1.3.1. I installed Tomcat and NetBeans, easily set-up tcsh shell "aliases" to make my life easier, and quickly set-up some basic shell scripts to automate common tasks. I'd start firing-up a slew of terminal windows, leveraging every inch of my nifty super-wide LCD screen.

The friendly and intuitive user interface gave me quick and easy access to all the applications and documents I most often used, found the "Dock" to be a very intuitive , powerful and effective application-launching and context-switching tool all-in-one.

And, yes *all* my "windows" files opened-up flawlessly under various OS X applications. Dot zip, dot xls, dot doc, dot ppt, dot pdf, dot you-name-it. All happy in Microsoft Office for OS X and other compatible applications that came bundled with the OS. I managed to migrate 3 years of corporate e-mail that was stored in my Windows Outlook as well as on my Mac Outlook Express from an earlier desktop mac, into Microsoft Entourage for OS X (Note that i did use the word "Migrate" versus "Import" as the process of importing mail from a microsoft product under windows to another microsoft product under a mac is far from being straightforward, but it *is* possible and i'll try and put-up a complete walkthrough on how to accomplish this). I gotta hand it to Bill, Microsoft's Mac guys *do* build great software for Apple :).

Small things I enjoy:

I never ever shut-down or reboot my laptop. Only for system upgrades.

I close-down the laptop. It goes to power-saving sleep right away, smoothely. I unplug it from its network ethernet jack at work. I drive home. Wake it up from sleep by opening the lid. The display comes up right away as I had left it. It instantly picks up my home wireless network, makes a dhcp request to my DSL router, and within two seconds my e-mail starts downloading in Entourage.

I plug my Sony Digital camera to one of my TiBook's USB ports. I never installed any of the software that came with it. I just bought the thing and plugged it in. It fires-up iPhoto. Click. All my pictures are imported. Clickity ... hi-res pic of my girl sitting in front of hawaiian waves crashing on the beach is now my desktop background. Click-n-drag ... my screensaver is now an animated slide-show of my favorite pictures. Click-drag-export-save, i've got an on-line photoalbum.

I'm camping with my girlfriend at the Malibu RV Park which overlooks highway 1 and a beautiful view of the ocean. It's at night. Everything is dark. The tent is small. We sneak out to the parking lot, into the back of the car, set the TiBook between the two front seats, pop-in the "Crouching Tiger, Hidden Dragon" DVD and enjoy our own little "wide-screen" movie theatre.

Work. Fun. This thing does it all.

User Journal

Journal Journal: follow-up on nimda

Ever since the nimda virus started spreading i have been logging hits to my apache box to a separate file.

I had originally catalogged 20+ nimda queries.

After a cat|sed|sort|uniq of those logs nearly 8 months later I am now at over 370 unique queries.

I will try to update this file once in a while:

http://fdi.dyndns.org/nimdaqueries.txt

Hint: you can use those HTTP GET requests in an automated script to attempt to "warn" infected boxes probing your web server.

The above list spans the following time period:

First Log Entry: [24/Sep/2001:11:03:00 -0700]

Last Log Entry: [29/May/2002:18:14:02 -0700]

Today's date: 5/30/2002

I hope this helps someone :)

User Journal

Journal Journal: Blade 2 vs Blade 1. Less plot. More whoopin'. Aww yea.

What frustrated me in the first movie was Wesley Snipes in an intendedly tear-jerking soliloque telling that doctor he had rescued, the mysterious tale of his deeply tormented life, in a blatantly failed attempt to draw you into the character and offer some sort of unique insight into his "complex psyche". Had to love this quote "you have no idea ... what it's like ... to be me ... *deep, tormented look*".

This was just an example. There were a few other similar scenes.

FORGET THAT. Get to the ass-whoopin' already.

Blade 2 fixed that. Less plot. Less dialogs. A couple good lines ("You ... do not ... KNOW ... who you ARE ... MESSING WITH !@(#") ("..OOOoooohh"). And more action. This was the whole reason why i went to see the movie. I wanted to see Snipes kick ass.

Oh yeah and also they introduced a hot vampire chick. Dark, mysterious, tight-fitted outfit, just like Trinity in the Matrix. mm-mmMM. Add some subtle erotism with blood-sucking action between Blade and Nisa. Most definetly gratifying. The first movie had no good lookin' chick whatsoever.

What I did like about the story, was Blade getting in closer touch with his vampire-side, partly thru unspoken romance/understanding with the vampire chick. I found this to be far more effective to show conflicts within Blade, than long-strung dialogs from the first movie. Blade is a man of action. not words. Whose ass he kicks and the manner in which he does it defines his relationship or attachment to other characters.

Anyway. I'm a happy camper. Go Blade :)

Apple

Journal Journal: A Few Reasons Why OS X Rocks

Note: i posted the ramblings below to apple's os x feedback form. grab a pillow.

--------

I just wanted to drop a note to send you guys my most sincere congratulations.

I believe OS X is the best thing that's ever happened to computing.

It has litteraly increased my work productivity by orders of magnitude. Powerful, reliable, customizable, flexible, secure. BBEdit, NetBeans (!), iTunes, JabberFox, and IE5.1 are some of my most-commonly used applications. I just *love* crashing out of IE5.1 while loading some obnoxiously huge web page and force-quitting either thru cmd-opt-esc, or ctrl-opt-dock-click-app-icon, or terminal/ps -x kill -9, and see the rest of my system run as if nothing happened.

I constantly work with at the very least 5 terminal windows opened, more like 8-10 on average, with ssh connections to various hosts within our corporate network, my satexas.com shell account. I constantly use the shell to weave in and out of file structures, automate tasks, find file patterns, use emacs to quickly edit a file without having to fire-up the BBEdit window, copy batches of files to my tomcat build directory to test spot changes to some web application i'm working on.

Favorites. I love those. I love browsing directories within any application's "open" dialog, and be able to "add" any directory to my favorites so i can get back to it afterwards.

Multitasking. Interface. Beautiful. I can fire-up a massive regexp pattern search in BBEdit thru a deeply nested directory structure while sticking BBEdit in the background (watching its oh-so-sexy progress bar in the dock icon) while working in other applications. Ctrl-clicking an application's icon in the dock lets me bring a *specific* window for that application to the foreground. Telling iTunes to go to the next song without bringing it to the foreground. beautiful. It's all there, it's powerful, it's out of my way. I love it.

Unix. Yum. All my favorite unix tools are there (i've got the dev tools). cvs, emacs, whois, find, xargs, grep, sed, awk ... *all there*. I enabled my /etc/hosts file with lookupd. Surfing the web spam-free (without using omniweb which is pretty cool but i still find IE5.1 sexier). I downloaded, installed and configured smbd. So windoz weinies can access my public share. This essentially mean that once i got done configuring networking and smbd, my public share could be mounted by:
unix nfs client users
appletalk client users
windows smb client users
Plus OS X already comes with built-in clients for all those protocols.
More unix yuminess? fink.sourceforge.net. Gotta love those guys. All popular open-source apps are becoming available to OS X.

The Home Directory. beautiful. Every application I run saves all its user-defined preferences in the home directory, in well-defined locations like ~/Library. To futher confirm this, I removed administrator privileges from the default user I use every day, so the only place I can write to on my filesystem is my home directory. I switch user when I need to installl applications. The ramifications of such a set-up could be absolutely great. Imagine a collaborative work environment with a bunch of those nifty iMacs which mount user directories over the network. Anyone could walk over to any Mac, log-in as themselves over the network, and have *their ENTIRE work environment* all set-up and ready to go, with the same desktop they're used to see, all their browser cookies. All their files. Everything. System administrators could very easily restrict a user's access to their hard drive so they don't install unwanted applications, confining them to their home directory. Those concepts were established a long time ago by unix environments. But Unix alone was never practical as a desktop platform. Useful. But not practical. Windows tried to mimmic such behaviour on the surface but was never secure, nor reliable, always filled with blatant loopholes while allowing any user to write to most sensitive parts of the operating system even with restrictions. OS X fixes all that. I'm also toying around with the idea of sticking a copy of my powerbook's home directory onto my iPod. So I can carry my environment with me.

Aside from work, this little ti-book of mine is, as Steve Jobs envisions it, at the center of my digital world. Because of OS X's built-in support for all major digital cameras out there, i actually bought a Sony DSC-P50 camera. iPhoto was a home-run. I also have an iPod. I plug things and they just work. It's beautiful.

Because of this laptop i also bought a few must-have DVDs. I don't even own a dvd player. You had to see the priceless expression on the face of the guy sitting next to me in my los angeles to paris flight as i'm watching Shrek, while his little Kid is crawling all over him. "Is that one of the new Apple powerbooks?", "Well, it's an early model, you can get a more powerful one for about the same price I bought it for, but I have yet to find something I can't do on this puppy.Believe me, i'm a geek (swithching DVD Player to the background to reveal my NetBeans Java IDE with some code i was working/procrastinating on), and i like to push it. I just can't crash it. Everything just works. Work. or Fun. it just works. beautifuly."

Networking in OS X is simply sexy. I leverage various network locations to manage multiple connectivity options while at work or at home. Or roaming to friends' houses. Wireless 802.11b networks, opened or secure/encrypted, dhcp or static, ethernet LAN, modem dial-up, i have all those ports and protocols configured in many nifty ways. OS X organizes network ports and corresponding protocols so nicely, it is a breeze to understand and set-up. A Geek's dream.

I could go on and on about how sexy this operating system is. And i've used Mac OS since "System 6", right after "multifinder" was introduced. MacOS 7.6 was very nice, very stable, quite light. Open Transport was a major improvement to networking. 8.5 introduced some nice features, but bloat too. OS 9 added more bloat and unstability. I switched to windows2000 some- ime between 8.5 and os 9, tho it wasn't by choice, I didn't miss macos too much, there was no compelling business or productivity reason in my field of work to justify my getting a then-more-expensive mac laptop over cheaper Dell running win2k which was known to be rock-solid stable. That is ... unntil win2k started corrupting sectors of my hard drive, adding to a pile of nightmares already introduced by poor dell hardware, at which point my boss took pitty right when OS 10.1 came out and got me this laptop. The rest is history. Here I am today, back to being a hardcore apple evangelist.

With OS X, Apple products now just work together, nicely, with eachother *and* 3rd-party components, one magical symphony within the nirvana of computing. No compromises, no headaches, no hassles, just pure, reliable, secure, unrestricted fun opening doors to boundless creativity and productivity.

I just love what you guys are doing, and for what it's worth, i wanted you to know it. Many fellow-geeks have switched to OS X from windows and unix. I'm working on my mom and dad.
I've convinced a few people to buy a new mac *because* of OS X. iPhoto. iTunes. iPod.

Keep up the good work. :)

-C.H.

User Journal

Journal Journal: How I'm keeping my logs clean from annoying IIS worm queries

Global Note: I think the worm hits web servers by their ip addresses so chances are it wouldn't hit any of your VirtualHost configurations and so your global/default settings in httpd.conf would be hit, and that's where you should probably make the following changes.

Also note that the following instructions may be considered LESS THAN IDEAL for servers under heavy loads/traffic, due to string comparison on each request's URI, by stuff like SetEnvIf and <LocationMatch>. /etc/httpd/conf/httpd.conf is the file i modified.

1) i have the mod_perl module enabled.

2) add a LogFormat that only logs basic shit, call it "assholes". I think im still logging too much crap, you may wanna just log the host's ip/name:

LogFormat "%t %h %{Host}i %U" assholes

3) use SetEnvIf on URI to detect worm request:

SetEnvIf Request_URI (cmd\.exe|root\.exe|efault.ida) virus

#note: u could add Admin.dll to the list, but its rarely requested so i don't mind keeping that in my main log. check out: http://httpd.apache.org/docs/mod/mod_log_config.html#customlog and http://httpd.apache.org/docs/mod/mod_setenvif.html#setenvif

4) Make CustomLog entries based on above condition:

#if its a virus request:
CustomLog /home/chris/public_html/logs/ass_log assholes env=virus

#if its not a virus request:
CustomLog /home/chris/public_html/logs/access_log combined env=!virus

5) <Location>, <LocationMatch> directives + Virus.pm PerlHandler.

the following <Location> directives should cover all current virus requests and make a perl module called Virus.pm handle the request which basically prevents the request from triggering a 404 or 403 error and log that error into your error_log. this basically keeps your error_log clean. I put the perl module in: /etc/httpd/lib/perl/Virus.pm

and right now my Virus.pm does nothing but return "1;". And that's enough to keep error_log clean. Someone who has perl skills could come up with something cool that adds the infected hosts' ip address to some database with some notion of timestamp for dynamic ip's, coupled with some sort of cron job that invokes some script that periodically emails a list of infected hosts to the admin of the entity that owns the class B of ip addresses or some crap like that.

Here's my code for Virus.pm:

$VERSION = 1.00;

sub handler
{

}
# All modules must return a true value
1;

Here are the <Location> and <LocationMatch> directives:

<LocationMatch "cmd.exe">
          SetHandler perl-script
          PerlHandler Virus
</LocationMatch>

<Location /*/*/root.exe>
        SetHandler perl-script
        PerlHandler Virus
</Location>

<Location /root.exe>
      SetHandler perl-script
      PerlHandler Virus
</Location>

<Location /Default.ida>
      SetHandler perl-script
      PerlHandler Virus
</Location>

<Location /default.ida>
      SetHandler perl-script
      PerlHandler Virus
</Location>

that's pretty much it for me. Suggestions? Anyone care to submit code for a Virus.pm that does something cool?

Slashdot Top Deals

If all else fails, lower your standards.

Working...