Monday, December 22, 2008

MySQL: Creating a database and User account

For my next installment, I will show you how to not only create a database (which isn't that trivial), but also how to create a user to access that database and assign their password all at once.

First, the database. So, what we will do here is first, log in as root user:

mysql -u root -p

Hit enter and type in the root password when prompted. There are other ways of doing this, like the following, its just how I chose to do it:

mysql -uroot -p<password>

Just replace <password> with the root user password. Then, at the mysql prompt, create the desired database (that we will call testing for our purposes here):

create database testing;

Now, you will want to access this database with a specific user account (which we will call tester) and give it a password. So, at the mysql prompt do the following:

grant all on testing.* to 'tester'@'localhost' identified by 'password';

This assumes that you are working on the machine where the database is located. Also, replace 'password' with the password you wish to use.

That's it. You should now be able to exit out of mysql and then log in using the new account you have just created. (provided you didn't receive any errors during the above statements.

Thursday, November 06, 2008

More database commands

I mentioned a few articles ago that I am getting some real quality MySQL database experience at my job and I wasn't kidding.  I am loving it and having fun. 

After writing a Perl function to audit our databases to ensure they were defined correctly, per our pre-defined schemas, I had to start making changes to the databases in question.  The first thing that I took care of was the deletions of whole tables and databases.  That was easy through the use of the 'drop' command, but now I am into the modifications. 

There are fields in tables that have either the wrong name or the wrong defined type.  So, I have to change them.  The wrong defined type is easy and modified using the following command:

          alter table <table_name> modify column <column_name> type;

<table_name>  => replace with the name of the table with fields you are fixing.
<column_name> => replace with the column / field that you are fixing.
type  =>  replace with the type that you want to change to (ie: int, bigint, float, varchar(??), etc)

The other type of change is where the name of a field/column is incorrect.  In that case, you would use the following command sequence:

           alter table <table_name> change column <old_column_name> <new_column_name> type;

<table_name>  =>  the table that has fields needing fixing.
<old_column_name>  =>  the present name of the column you want to fix.
<new_column_name> =>  the new name for the column you want to fix.
type  =>  while you are not changing it, you still have to specify the type for the column/field.  Just look at what it is presently defined as using "describe <table_name>" to see all field definitions.

Now, with the last one, I am running into a bunch of issues where two fields need their names switched.  The data is in the correct place, but the names aren't.  In that case, you would move one of them to a temporary name (like the new name with "_temp" added on to it) and then moved to its final name after the other field has been moved to its new name.

As I said, its all very interesting and fun to learn, while being quite involving.  I have become very acquainted with the MySQL online documentation, that is for sure. 

Useful, stupid Unix tricks

Today on Slashdot there is an article that asks people to submit their stupid, yet useful unix tricks.  While there are a number of good ones on there, I did pick up a couple of interesting ones. 

One of the things I picked up was to type "ssh username@" and then hit tab and you would get a list of available hostnames to connect to.  These are pulled from the machine's hosts file.  Now, one thing it doesn't do is get a list from your local, internal DNS, so don't get discouraged if you don't see your host name on there but know you can connect it.  That is the reason.

There was also a bit of a heated exchange regarding the use or lack of use of the 'sudo' command.  There are a bunch of people that claim, and I quote...  "Pshaw! All 1337 sysadmins just live as root!".    This is obviously someone who only administers his own system and nobody elses.  I would personally be very scared to have this person as a sysadmin.  I have done sysadmin work a number of times and at my present job we maintain our own machines, so root is part of the curriculum.  But, you won't see us exclusively "su -" into the root account all day.  If I need to do anything as root, I either use sudo for a quick job or if its more intensive, I use 'sudo bash', which makes you root as well.  But once done, I get out of it and back to my account. 

See, what these apparent noobs to the sysadmin scene don't realize is that the root account was not meant to be logged into all day doing all of your work.  That is what you have a user account for and the reason you should use your own account whenever you can.  Granted, I know that there are people I have dealt with who have systems that ONLY have a root account and that's it, but that would be one of the few exceptions to the rule. To run as root all the time just "because you can" is juvenile, inexperienced and immature.  Most sysadmins who have earned their titles know the rules of root and abide by them for a reason.  I yearn to be there when one of those "pshaw" kids makes a wrong move as root and looses a TON of needed data that makes them drop to their knees and cry.  I don't wish extensive data loss on anyone, but my hopes would be that they would learn their lesson.

Another command I recently discovered before seeing this list was the screen command, which is used during remote access to execute commands that may take a while to run.  You can then disconnect from the console and then reconnect later and reconnect to the screen session you had running.  Its pretty sweet really and allows your machine to not be tied up on a process.  Unix is so sweet like that, always a way to do something!

Friday, October 24, 2008

The [sometimes] trouble with updates

No, I am not referring to Windows updates. Instead, I am referring to Linux updates. There are mixed views on whether you should do updates or not on your system(s). Here is my view.... if it is a server, update it ONLY when you are absolutely needing to. This means only if there is a security hole that is fixed by a newer version. On the other hand, if it is a desktop system, if you update then it is up to you.

If you do updates though, you really need to watch out. Make sure you know what exactly is happening during the update(s) as things tend to change and also stop working.

I did an update earlier this evening after booting up my laptop. No worries, right? Wrong. When I tried to start my apache web server (which was previously installed and working fine), I discovered that it was no longer working. Strange if you ask me, but it wasn't starting up. It kept giving me the same errors:

# /etc/init.d/apache2 start
* Starting web server apache2 [Fri Oct 24 22:15:10 2008] [warn] module php5_module is already loaded, skipping
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs

I started by plugging in the different errors into Google, but kept going in directions I didn't think were the answer. Then I looked at the last error: "Unable to open logs". That was odd because I hadn't changed anything, but...... then there was the updates.

So I checked and the /var/log/apache2 directory and saw that it was owned by root and had a group of adm. I distinctly remember that being the group root the other day. So, instead of changing permissions (which is someting I was not wanting to do, I decided to add root to the adm group.

I restarted apache and VOILA!!! Problem fixed. So, the lesson.... know what updates are being applied and if something doesn't work afterwards, you will at least know why.

Reblog this post [with Zemanta]

Sunday, October 12, 2008

Linux Filesystem Layout

I was "stumbling" around and I stumbled across a page that showed a graphical layout of the Linux Filesystem. For those that are beginning in their Linux ventures, I can imagine that this will be quite helpful. Without an understanding of the filesystem, a lot of things will be lost in your learning process, so learn it well.
Reblog this post [with Zemanta]

A change to my previous posting

In my previous posting of MySQL commands, #6 talked about granting permissions to a user on all databases. It should be noted that it is much wiser to first:

- create the user account in mysql first and set the password.
- then, set the permissions that the user has for said database(s).

Thursday, October 02, 2008

Some useful MySQL commands

Lately I have been getting quite intimate with the MySQL database and have been doing things beyond the standard queries and adds. Here is a list of some other useful commands that I have been working with lately. Please know that any options to these commands that are in [ ] are considered optional:

1. Delete a databse:

Format: drop {database | schema} [if exists] db_name;

This command drops all tables in the database and then deletes the database. You need to have 'drop' privilages to do this. *Note: As of MySQL 5.0.2 "schema" is a synonym for database.

2. Delete a table:

Format: drop [temporary] table [if exists] table_name[, tablename, ...] [restrict | cascade];

This command will delete one or more tables from a database. Again, you must have drop permissions for each table.

3. Back up a table to file (in case a recovery is needed after doing something like an alter on a table):

CLI Format: mysqldump --user=<username> --password -B <database_name> --tables <table_name> > filename.sql

This command should be issued from the command line, not from within mysql's interface, as the two previous commands would be. The '.sql' extension on the file tells you that the data inside is for sql. If you open the file, you will see a plethora of sql commands to recreate the table as it was.

4. Restore a table from a backup sql file:

CLI Format: mysql -u <username> -p <database_name> < filename.sql

This will restore the table to its original glory.

5. Delete all data from a table:

Format: truncate <table_name>;

This will erase all data from the table, leaving the defined schema in tact.

6. Grant permissions on database's to a specific user:

Format: grant {comma separated permissions list} on <db_name>.* to `username`@`localhost`;

This will grant whatever permissions needed to the specified user. Now, if the user account in MySQL does not exist, then after the username@localhost piece, you will need to specify:

identified by password `password`;

Now, the tic marks around `password` and `usrename`@`localhost` are all back tics. That is what I tend to use and have never had a problem.

One note of caution, BE CAREFUL using the above commands. They are commands that will cause serious changes to your database and tables. Practice on a test database before doing ANYTHING on a production database. Also, make sure to back up any tables or databases that you work on. As we all know, whatever can happen.... usually will.

Wednesday, September 24, 2008

Cheap is as cheap does

The way that the economy is today and how it is driving the price of everything up, its no wonder that people are looking for cheaper and cheaper ways to do things. 

One area that people are always looking for a free way to get what they want is with regards to creating a website.  To have a website, you typically need a domain name and a place in which to have that domain hosted.  Domain names are typically about $8 to $10 per year to register (depending on where you go) and if you are a teenager or don't have a credit card at the present time, then you need some way to get one. 

*Note:  If you are starting a small business then it is highly advised that you buy your own domain and get a good hosting provider.  A free host and free domain are not really the way to go as it may effect your reputation depending on your business and its model.  This is especially true for those in any geek related profession. 

For this example, I will use Geocities by Yahoo.  They provide you with free web space, all you have to do is have an account with them.  Granted, you won't have available all of the services of a real hosting provider, but believe me, when you are just needing to have a web presence and don't have a lot of $$$, you cannot just look free in the mouth. 

Once you have setup your free site at Geocities, you will now have a domain name that looks like "http://www.geocities.com/username", where username is your account name on Yahoo's system(s).  Again, this does not really that descriptive of you, I know.  So, how can we get a domain name that we would like, while maintaining the free nature of this article?  Why not turn to dot.tk.  The provide you with URL re-direction.  You simply create the domain name that you would like and tell them where it should point to.  That way, you can give out your easier to remember .tk address and it will re-direct the incoming traffic to your Geocities site. 

Note:  Please know that I am not associated in any way with Geocities or dot.tk.  After browsing around and seeing mention of the dot.tk website, I figured I would write this so others would know about it.  Please don't read anything into this article as its for informational purposes only.

There is always a catch, isn't there

I came across a link today that said "Free Domain Name for 1 Year to Small Businesses".  So, I clicked it and it brought me to Register.com.  At that link is the offer that was in the advertisement. 

So, I typed in a domain that I was thinking about and hit "Go".  Voila, the domain was available and all I had to do was select that I just wanted the Free Domain, without any extra services, which I did.  Next, I was asked to either log in(for existing / returning Register.com customers) or create an account.  Ok...

Being the anal person that I am, I decided to read through the fine (light grey) print at the bottom of the page, you know, the stuff they hope you won't notice and read.  In there it said that even though the first year was free, you are required to supply them with a credit card number anyway as part of their "standard registration policy". 

This is something I did not want to comply with at this time.  Why do I have to enter a credit card number if there is no charge to me?  I know that a lot of businesses require this, but its ridiculous if you ask me.  Why get a card number on file if its not needed?  Wait until after checkout, and if there is a balance, obtain it at that time.  Is that so hard?  Sheesh!!

Needless to say I closed the site and left as I wasn't about to divulge the digits from any plastic I may have.  I just wanted to post this so everyone else was aware of this fact before clicking on said advertisement should you happen across it. 

Tuesday, September 23, 2008

A little catch up

I must say that when you get up at 6:30ish in the morning, spend the entire day working on coding issues, writing code or some kind of sys admin issues (usually all within the same day), come home to two little ones in the evening, by the time bedtime for them comes, you just don't find much energy to blog.  Lately, in the evenings, I find myself either "stumbling" around the internet or just playing a mindless game to relax.  That is pretty much what I have been doing (and not blogging) as of late. 

Every once in a while, like now, it hits me that I haven't blogged for some time and I should really get back to it.  Now, this isn't to say that I haven't been learning anything.  My, oh my, have I been learning stuff.  As of late, I have Ubuntu 8.04 on my laptop and have been learning the best, right way to configure it. 

I started by downloading MySQL, PHP, and Apache2 and compiled them all by hand, getting them installed the way that I want them, configured with the options I want/need.  From there, I have been setting each up.  I have learned a ton about the Apache2 config and how it works.  Not only that, I have created my own Certificate Authority, created and signed my own key pair and have secured my internal website (on that machine) to have an "https://" alternative.  There are things that I am investigating right now, like how to make it so a site or a page is required to be loaded with https vice http. (for security reasons of course) 

On the flip side, MySQL has been another bit of knowledge that I have been actively acquiring.  Of course it certainly  helps that at work they use MySQL for what we do, so interacting with and learning the database is crucial to doing my job.  I have wanted to learn it for long enough that I am glad to have this opportunity. 

Also, because there are some new sites at work (internally) that use PHP for the pages, I am learning that as well as I am sure I will have to support them or create new pages in the future. 

So, to all of you out there who are saying, "Wow, I would love to learn about that technology!", there is no time like the present.  Install it, play with it, learn it. If you don't play with it, you won't learn it.  You could read the books and absorb what you could, but unless you have a photographic memory and a memory search engine equivelant to Google's algorithm, then you will need to play with everything you can to learn its intricacies. 

Wednesday, July 16, 2008

My Latest Addiction

Every day you hear about people getting addicted to things like drugs, alcohol or even cigarettes. Being a geek though, I am a little modified in my addictions. See, I don't do drugs (never have), I don't smoke (anymore, gave it up cold turkey 10 years ago) and I only occasionally drink.

Instead, my addictions tend to orbit around computers. My latest however happens to be a plugin for the Fire Fox web browser called StumbleUpon. After installing the plugin and restarting your browser, go into the configuration and select all of the topics that you want to "stumble upon". I warn you though, there are an overwhelming number of topics but you can right click on each and open in a new tab or window to see what the types of sites it finds.

After you are done with the configuration, open a new tab and click the "stunble" button. It will then randomly select a site from the entire list of topics and display it for you. I have been building up my del.icio.us bookmarks for the past few weeks with an overwhelming number of links to things I have found useful and/or interesting. I suggest you give it a try, you might stumble upon something you could use too.

Something New

Wow, has it really been almost 2 months since my last entry? Believe it or not I hadn't noticed. Work has kept me pretty bogged down during the day with stuff to do (yes, that is a good thing as I am loving my job) and things like blogging have had to take a slight back burner with my nightly exhaustion (that is only enhanced by the activeness off our kids.

Speaking of work, we hired an intern for the summer to take on some work that we need to do. He hails from WPI (Worcestor Polytechnic Institute) and has turned out to be a pretty nice guy. He is going into his senior year there and has a pretty interesting senior project going.

He and I have had the chance to chat it up a bit on a number of topics and during such chats, I have been intrigued by how positively he speaks of coding in Python. I always saw Python as an interesting language and had thoughts of learning it but hadn't settled definitely, until now that is.

For the past couple of weeks I have been actively reading about and playing with, Python on a regular basis. It is actually quite an elegant and neat language. The way that you do things in Python is taking a bit to get used to (as well as having to switch back and forth between Python and Perl), but I can handle it just fine.

I see Python added to my coding arsenal for the long haul and am sure that there will be some posts on it here, in the future.

I will try and put together a post containing links to get you started if you are interested. You will be surprised at how easy Python is to learn, even if you haven't done any coding before.

Friday, May 23, 2008

Help needed to complete the Perl 5 Wiki

I made my way back to the Perlbuzz website today to catch up on some of the news I had been missing out on for the past couple of weeks. The second article that I came across on the page was titled: Help the Perl 5 wiki get to 1,000 entries - Perl Buzz.

Surfing on over to the Perl 5 wiki will have you finding an indispensable resource for any Perl coder out there. Being that the Perl Foundation does so much for the community, it only seems right that everyone should do their share to help out. So, why not stop over and check out the almost 300 needed (most-wanted) pages and see if you can provide any of them for the wiki. Every little bit helps.


Wednesday, May 14, 2008

I DID IT!!!

Well, last night I went ahead and installed Mac OSx on my Dell Inspiron 9200 laptop while I was coding on another computer. The process was pretty easy actually. It started with me finding this website, which gave directions on how to install it. So, following the btjunkie directions (as they were easier), I downloaded the torrent from btjunkie. The download did take a while and I had to let it go overnight, but when I got up in the morning, it was completed and ready to be burned to disc. BTW, since its an image, you can use any software to burn it to disc and aren't required to use Nero. I used Roxio and its fine.

During the install I had to figure some things out. For instance, when it came time to select the media to install to, it didn't show anything. I remembered that I had linux on here, not Mac OS, so the drive format was not correct. So, I saw the menu bar up top and went into the disk utility. This allowed me to format the drive for a Mac recognized format. Once I did this, they showed up automatically. One note though about the disk utility. It looks as if it is only able to format drives, not partition them. I say this because I looked for the ability as I have a 1 gig partition (which was swap for Linux) and a 92 gig partition. That's ok, I can use the 1 gig for storage, but that's not the point.

Anywho, the software installed and when it was done it rebooted. Upon coming up, the video was just screwed!! This was something I had to figure out. I did some research on google and found I needed to get to the filesystem without the graphical interface running. I talked to a friend, Randal Schwartz, online (thanks for the help Randal!!!), and he told me about the -s option to boot, which Mac's us Command-s during boot to activatej. Unfortunately, I am on a dell...... no command button during boot. So, I was playing around with function keys during boot, hit F8 and voila! A boot menu. It allowed me to enter any options for booting. I tried the -s and went into Single User mode (any of you *nix guys know what that is). Once in there, I mounted the main drive and did what I had to do (hid the drivers for my video card that were causing a problem, supposedly).

Upon rebooting, it STILL didn't work, so a little more Google research and decided to boot with the "-x" option, which is like a safe mode. I could not believe it, it worked! Right now, I am staring at Mac OSx, running on my Dell Inspiron 9200. It is SWEEEEEEET!! The only thing so far that is not working is the wireless card, but I will work on that. WOO HOO!!! Sorry, a little happy. Ethernet is working fine though and I am surfing the net.

For those of you interested, there is an HCL for Mac OSx86 which goes through the supported devices and what had to be done to get them to work. It may prove very helpful in your quest.

Tuesday, May 13, 2008

Perl error is fixed

I completely forgot to let everyone know that the Perl error I was experiencing was fixed. Albeit not in a manner conducive to learning why it happened and how, or what to do to rectify it, but instead, but installing the latest and greatest version of Perl and re-creating the soft links to point to the new version.

Once that was done, all works just fine now. ***sigh***


On a lighter note, I have downloaded MacOSx(86) and am planning on attempting to install it on to my personal laptop. (vice my work laptop, which would be a no no) The version of MacOSx is 10.4.6. If anyone else is interested in trying this, you can find install instructions here. Also, there is a page that shows the laptops that have had successful installs of MacOSx.

The laptop I have is the Dell Inspiron 9200. Unfortunately, not on the list and from what I can find out, that means either nobody has tried or hasn't reported on it. Hopefully, I can report success soon.

And you thought they were offshoring alot before? Just wait!

I was sitting here at work today when a friend from EDS (where I used to work before this job) IM'd me, asking me if I had heard the news. Being that EDS was in the middle of an approximately 45,000 person layoff, moving those 45,000 jobs to India, I was expecting new of friends having gotten let go.

While waiting for his response I was scanning the news wires and saw that HP had agreed to buy EDS for 13.9 billion! WOW!!! What a bit of news that is. In talking with another friend, who also used to work for EDS and HP both, the employees thought EDS was off-shoring a lot? Just wait. HP seems to be one of the kings of off-shoring with a fair amount of its workforce living in India and other countries.

I just wish that off-shoring would stop being so cheap, that way the jobs could stay here in the U.S. Heck, maybe the new president will do something about the situation and cut the off-shore companies off at the knees. That would be a very pleasant turn of event if you ask me.

Monday, April 28, 2008

Interesting Perl error

I installed Fedora Linux, Core 8 inside of VMWare and upon getting to a command prompt I tried to get into the CPAN shell. Well, needless to say (and to cut to the chase, this is what I was presented with:

$ perl -MCPAN -e shell
Can't locate CPAN.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.7/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl/5.8.7 /usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.7/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl/5.8.7 /usr/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .).
BEGIN failed--compilation aborted.

Yes, that kind of left me scratching my head. I have never had Perl just simply hurl like that. So, after doing some checking around and not finding any nice solution, I decided to download Perl 5.10 and am presently doing an installation of it. We shall soon see what becomes of it.

Sunday, April 27, 2008

New Servers

Oh, happy day. I have been waiting for this for a little while now. Whilest my home office is still in the process of being constructed, I am gathering some of the hardware that will make up my main server system for my network.

Yesterday, a good friend of mine who has a plethora of servers and equipment, was kind enough to part with a Sun v280r and a Sun E450. Now, those of you who know your Sun machines are probably not terribly impressed, but when the word FREE is associated with such equipment, you don't exactly turn your nose up at it. I, personally, am open and accepting to whatever is thrown my way. I love computers and all of the hardware I can acquire.

I already have plans for these. The v280r is going to be my main processing server. It will handle all the heavy loads. The E450 on the other hand is going to be my file server. Upon giving me the E450, my friend was kind enough to load it with 20 hard drives. They are all 4.2 gig hard drive (for a total of 84 Gig of storage, but that is hopefully to change. My friend also has a bunch of 18 Gig hard drives in cradles other than Sun (ie: compaq and such) and is going to be unloading them, hopefully into my E450. That would be a sweet addition to my new system.

I already have a Sun 711 storage array with 6 - 18Gig drives, for a total of 108 Gig of space. Another nice addition. So, my network slowly grows. I have an abundance of Ultra2's, some Ultra1's and a couple of Sparc5 machines.

I just had to share. I love getting new toys to play with.

Saturday, March 29, 2008

Realization

Its funny, when you have a love for something like an operating system (say, Solaris Unix), and you have been using it for about 10 years. Then, after a very long time, you get it installed on your laptop for the first time (or any x86 platform for that matter) and it doesn't take but a few days for you to realize that its not really suited for your daily activities.

That was the realization that I came to yesterday. Yes, I know, I put a fair amount of effort into getting some things worked out, but after playing around with it and actually trying to do my day to day stuff on the web, I realized that it really have the support that I needed for some things but Linux did.

Don't get me wrong, Solaris is still my OS of choice when it comes to being a server, but when it comes to the desktop, Linux has it hands down. So, I installed Suse 10.3 last night and have been getting things situated today.

Monday, March 24, 2008

Solaris 10 - Laptop: Update #2

Well, I had a chat with a very nice Sun employee who gave me the scoop on why its not good for Solaris to start the interface on boot. It slows it down if it does.

Instead, he pointed me to a very nice tool called "inetmenu", which can be downloaded from the opensolaris website, that handles all of your network connections either through a gui or on command line.

So, I have downloaded that and tonight will work on getting it configured and setup for use. (Thanks again Ben!)

I guess its on to the Broadcom driver from here.

Sunday, March 23, 2008

Solaris 10 - Laptop: Update

I DID IT!! For the first time in the 10 years since I first touched Solaris Unix, I have Solaris on the internet....... WIRELESSLY!!! This is just excellent!! Solaris 10 x86 supports my Intel PRO/Wireless 2200 b/g wireless card perfectly!!

Granted, it wasn't a piece of cake and did take some tweaking, but it WORKS!!! For instance, I had to add an entry to the /etc/netmasks file, I had to create the resolv.conf file and I also had to edit the nsswitch.conf file to allow for dns.

Other than that, the software installed fine, plumbed ok, and grabbed an IP from my router. Only issue I have left, is when I reboot, it doesn't load the interface back up again. So, I have to re-plumb and grab an IP from dhcp. Hopefully I will figure that out shortly and be SET!!

Next, I have to install the driver for my Broadcom 10/100 card and I will be doing just fine!

Saturday, March 22, 2008

Job Change

Well, I am no longer working in Boston. I have a new job and am working in Westford, MA for a company that works a lot with VoIP(for those of you who have my LinkedIn profile, you can find out where I am working). Having read the job description before interviewing and even after the initial phone interview with my (present) boss, I really wanted this position.

I cannot pinpoint any one thing that intrigued me about the position, it was instead the position as a whole. The chance to finally learn not only about VoIP but how it all works was an opportunity I couldn't pass up. Plus, the scripts that I will be working with are mostly written in Perl.

One thing that does really peak my fancy is learning new technologies, and one of the new things I am working on picking up now is AJAX. I am starting by learning Javascript, since that is one of the foundations of AJAX. Once I am done with that tutorial, I will move on to the AJAX tuturial. There is nothing like a vertical learning curve to keep a geek on his toes. :)

Laptop Trouble

I had some computer issues the other night. While browsing the Internet on my laptop (under Windows), a whole slew of things happened all at once:
  • my background changed to a warning that my computer was infected with spyware and that I should "click the link" to scan now. The background ended up being set to an html page. If you click the link, it takes you to a page offering to sell you spyware and virus removal software. A rather cruel, sick joke if you ask me.
  • A bunch of pop up windows appeared on my machine, all pointing to that same, unwanted offer page. Again, just not right!
  • Both my wired and wireless network interfaces were not able to get an IP address from my router. I know the router still worked because my wife's machine still worked fine. I don't know exactly what happened to the devices, but they seemed completely locked.
  • I was not able to Ctrl-Alt-Delete and pull up the task manager. A message appeared saying that the ability to do so had been disabled by my System Administrator and that I should take it up with him/her. Ok, I AM my own Sys Admin!!!
Needless to say, I was totally at a stand still as far as this Windows installation went. A friend at work showed me some really good software for scanning and removing viri and spyware. Unfortunately, it didn't do the trick. The network devices were still effected and the popups came right back after it finished doing its thing.

Well, completely fed up and not wanting to waste any more time on the issue, I decided to re-install my laptop. Now, mind you, I had a dual booted system with Windows and Linux. What I didn't want to do was re-install Windows and have this same thing happen again. So, I made the executive decision and grabbed my Solaris 10 DVD off the shelf and placed it into the drive. After a couple of hours of installation and such, I had Solaris 10 installed and working on my laptop. Mind you, I still have some configuration to do. For instance, Solaris 10 does support my wireless card. So, I have downloaded the drivers, I just have to get it installed and running now. Plus, I have to install the driver for my 10/100 card as well. On top of that, I have to fix the boot manager as it doesn't show the Linux partition as an option.

So, my laptop is Windows free and running two different versions of *nix. ***sigh*** it feels pretty good. The solaris piece will help me get back some of the Admin skills that have become slightly rusty from not really using them since the last time I was a Sys Admin. I am really looking forward to sharpening them up.

Anywho, I will give more updates on the laptop as I make progress. I would love to know what that was that effected my computer, but at this point, I doubt I will find out.

Tuesday, February 05, 2008

The Life of a Software {Engineer | Developer}

I was reading slashdot this morning and came across an article written by a software developer, describing what it is like to be one. IMHO, the article is very well written and the author provides plenty of material to tempt your pallet and inform you of a career you may have no idea about.

What I didn't know, that the article mentioned, was that the word "Engineer" cannot be applied to a software developer in Canada as it is not allowed by their standards. To me, this is just fine as like the author, I prefer the term "Software Developer" anyway.

Here is the article in its entirety at the authors own site. Enjoy!

Sunday, January 13, 2008

What's the buzz?

So, what is the Buzz you ask? Funny you should ask. Back in December 2007 (specifically, on the 7th of December, 2007), I was reading the newest entry on the Perl Buzz website. The article was about what the author called, "A Couple of Happy Perl Users". Much to my suprize, the user in the second paragraph was ME! I was taken aback and could not believe it. My blog had gotten mention on Andy Lester's Perl Buzz. How absolutely cool was that?

Well, it made my day yet again when an article I wrote for TheScripts.com was mentioned on Perl Buzz. The article was about how to install Strawberry Perl, a distribution of Perl for Windows. I was overjoyed yet again. The comments on the article began to come in, but they weren't all positive. Since the article was written, you see, Strawberry Perl had released a newer version of their distribution that was based on Perl 5.10. The new version had newer capabilities that the 5.8.8 Alpha 2 version did not. The article that I wrote was based on the 5.8.8 Alpha 2 version and not the 5.10 version, thus, it is not valid for the newer version.

With that discovered, I made a modification to the beginning of the article to mention that it is for the previous version of Strawberry Perl, not the present version. You see, with the 5.8.8 Alpha 2 version, in order to get the CPAN interface working properly, I discovered that I had to install the Windows binary version of some of the Unix tools that were needed by the CPAN interface, and after doing so, all worked fine and still does (since I have not upgraded to 5.10).

In a slight defense to myself though, I did post a comment to the article on Perl Buzz (see comment #3), in order to clear up the confusion that seemed to have ensued. On January 8th, a follow-up article was posted on Perl Buzz that mentioned that the article I wrote was not in accordance with how 5.10 works. I also commented on that and mentioned the version difference. As I mentioned in my comment, I will work on getting the article updated for 5.10 once I have had a chance to update my system.

Wednesday, January 02, 2008

Happy New Year!!! ( and updates)

Well, it is 2008 and I can well imagine that we are all looking forward to a hopefully wonderful year. Personally, I have a lot of things that I want to accomplish this year and am hopeful that I will get most of them done.

My biggest project of the new year is to finish my home office in the basement. The construction is still at the point of being bare skeleton (framing) with electrical and network wiring in place, but nothing else accomplished. Most of this is due to the young nature of my kids and the allotted time that I have had to work on it, which has been NONE!

I recently decided that I need a nice powerfull desktop machine that will not only last a while, but will be able to do everything that I need to do, and not worry about clicking on something and waiting for hours for it to happen because of all of the other operations going on. So, at the CompUSA going out of business sale, I picked up and new computer case last weekend. I had researched the case want and decided upon and bought the Antec Nine Hundred. Sure, it is labeled as their "gaming" case, but it has the potential for seven internal hard drives. How sweet is that?

To top it all off, I have already scoped out the AMD Phenom Quad Core chip that I want, as well as the Gigabyte MA790FX-DS5 motherboard. The motherboard supports up to 16 Gb of ram, and has 6 total Sata connections internally and 2 Sata connections externally, 6 USB ports, 2 firewire, as well as gigabit ethernet (I know, that's almost a standard on motherboards these days). I plan on loading this puppy up with several large hard drives (500+ Gb), DVD writer(s) and also a 650 Watt power supply.

It will take a while to get the parts (money and all, you know), but when its done, WOW!! will it be a sweet machine!

On the flip side, my venture into Python is going very well. There is A LOT to learn about the language and I am still trudging my way through two different texts. The first is the Dive Into Python (DIP) text that is online, and the other is Beginning Python from Apress. Both are great books. DIP is just what it says, a head first dive, right into the language itself. It pulls no punches and gives you what you need to get going in the language. Beginning Python, on the other hand, provides me all of the insight I need to understand the topics that puzzle me. Magnus Lei Hetland (the author) has done a wonderful job at putting all the details into the book. Hopefully soon I can sit down and start producing some code.

Anyway, Happy and Prosperous New Year to all!!!
 
Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 License.