text:
Members worldwide should know which US rich men are the key players responsible for climate destabilization events they've experienced. If you haven't been personally hit by a record heat wave, drought, flood, superstorm or mega-wildfire, you will be hit by the rising food prices.
Fossil Fueled Extreme Weather and the Executives of Climate Change
When you get angry, as I am, think about Rex Tillerson, CEO of Exxon-Mobil, sitting in his air conditioned office with his feet up on the desk laughing as the world burns, today's version of Nero.
If you have 8 minutes, you can hear Tillerson say "We'll adapt to that" in this video from a few weeks ago.
Views: 503
I didn't know the key players - thanks Ruth.
The Chinese and even Indians share much of the blame, too.
A great video, Ruth. Thanks for posting.
Thanks Ruth.
The Climate Denial Crock of the Week is always interesting. Check out their reports about wind and solar power.
Will check out that link Chris. Thanks.
Duane Elgin touches on what's missing in my discourse about Climate Destabilization. My language fails to convey adequate moral outrage. I never was good at ridicule or sarcasm, but he makes a case for them.
Global Warming and Carbon Dioxide Ethics
Humanity is converting the Earth into a gas chamber by pouring lethal amounts of carbon dioxide into the atmosphere.
Within a matter of decades, vast areas of the Earth are expected to no longer support human habitation or the plants and animals that have lived there for millennia.
What are the ethics of irretrievably mutilating an entire planet? When will humanity express its moral outrage that it is wrong to devastate an entire planet for countless generations to come, just to satisfy the consumer desires of a fraction of humanity for a single lifetime?
This generation of humans is committing "eco-cide" or the murder of the Earth's environment.This means we are committing more than an unimaginable crime against future generations of humans: We are committing the murder of a large portion of the Earth's biosphere with all of her animals and plants.
This is runaway insanity!
What words are adequate to awaken ourselves? What is the expression of moral outrage that is equal to our suicidal destruction of the biosphere? Perhaps the penetrating language of Frederick Douglascan break through our malaise.
"At a time like this, scorching irony, not convincing argument, is needed. O! Had I the ability, and could reach the nation's ear, I would today, pour out a fiery stream of biting ridicule, blasting reproach, withering sarcasm, and stern rebuke. For it is not light that is needed, but fire; it is not the gentle shower, but thunder. We need the storm, the whirlwind, the earthquake. The feeling of the nation must be quickened; the conscience of the nation must be roused..."-- Frederick Douglass
...-- an "Earth Voice" movement that mobilizes the voice and conscience of the world's citizens through the global communications revolution. With new stories of our time of great transition supported by new tools of mass communication, we can cultivate a new level of collective consciousness that can transform our path of creating a gas chamber Earth into a path of sustainable prosperity. [emphasis mine]
Perhaps our tiny Atheist Nexus backwater of the internet will connect at some point with his new level of collective consciousness for sustainability. Meanwhile, though I'm not skilled at ridicule, I can encourage others to use it.
Every war the U.S. has been involved in since Bosnia has been poisoned with depleted uranium. That may take longer to dissipate than the climate damage being inflicted.
I agree that depleted uranium is an important way we're poisoning our planet, but so far it's been relatively localized compared to ocean acidification, for example. Still, among the horrors we bequeath to our descendents.
A video about Shell's hypocracy, contrasting their stated values in song with the destruction they visited in the Niger Delta over an area half as large as Florida.
Shell - We Are All Winners (except the Niger Delta) from Jantine Baasen on Vimeo.
© 2018 Atheist Nexus. All rights reserved. Admin: The Nexus Group. Powered by


text:
Keynote Speaker
Jorge García is a senior business intelligence (BI) and data management analyst for TEC. He has more than 20 years of experience in all phases of application development, database and data warehouse (DWH) design, as well as 9 years in project management, covering best practices and new technologies in the BI/DWH space.
Prior to joining TEC, García was a senior project manager and senior analyst developing BI, DWH, and data integration applications with Oracle, SAP Business Objects, and data integration. He has also worked on projects related to the implementation of BI solutions for the private sector, including the banking and services sectors. He has had the opportunity to work with some of the most important BI and DWH applications on the market.
García has been a guest speaker at info360, Salon BI, and ComputerWorld Technology Insights. He regularly provides his expert commentary on industry trends on the TEC blog as well as on radio and in podcasts.
García is a member of the Boulder BI Brain

subset: commoncrawl


text: Forward this page Thank you for your interest in spreading the word on Cattaraugus County.NOTE: We only request your email address so that the person you are recommending the page to knows that you wanted them to see it, and that it is not junk mail. We do not capture any email address. Your Email: * Your Name: * Send To: * Enter multiple addresses on separate lines or separate them with commas. You are going to email the following: Sheriff Whitcomb sworn in as President of the NYS Sheriff's Association Message Subject: (Your Name) has sent you a message from Cattaraugus County Message Body: (Your Name) thought you would like to see the Cattaraugus County web site. Your Personal Message:


text:
Jenn's Garden Apothecary
Jennifer Segale, owner of Garden Apothecary, runs an organic landscape design and consulting company that specializes in coastal plantings, vertical gardens and unique plant sourcing. Along with running her landscape company, Jenn also spends much of her time writing about botany and horticulture for numerous publications as well as on her own blog, where you can find her eBook series, Botanically Belize and Botanically Spain. As if that wasn't enough and she wasn't already showing us up with her own charming garden, Jenn branched out and started an organic bath & beauty line, where she crafts hand-made, small-batch botanical products for the face and body.
Jenn's garden is a mixture of harmonizing, overflowing containers and cottage garden appeal. It was probably the mass planting of herbs that initially piqued my curiosity (herb gardening was how I developed my love affair with gardening many many years ago), but her interesting use of gardenalia mixed with grasses, shrubs and flowers keeps her garden fresh yet informal.
While Jenn and I are situated on opposite coasts, and I'm always jealous of those who can grow most succulents and cacti outdoors year round, I'm intrigued by how many similarities there are in our gardening styles. The gorgeous thyme that is nestled in the crevices of her patio, a mash-up of cutting flowers, herbs and edible plants, the wood stump and Woolly Pockets, all can be seen in my garden as well. But what about those tumbling, oversized terracotta urns? A unique focal point that has me swooning!
Make sure you visit Jenn's blog for more inspiring garden pics and informative tips, and check out her shop to see what she's been whipping up!
(Images: Garden Apothecary)


text:
I get tattoos on Marines and sailors. There's a long tradition that goes with tattoos of the Marine Corps Emblem or a ship's name. I get tattoos on strippers. A woman who dances naked in the middle of a room full of men has pretty much already signaled that there aren't many boundaries she won't cross.
I get tattoos on Marines and sailors. There's a long tradition that goes with tattoos of the Marine Corps Emblem or a ship's name.
I get tattoos on strippers. A woman who dances naked in the middle of a room full of men has pretty much already signaled that there aren't many boundaries she won't cross.
I also get tattoos for carnival workers and bikers. It's merely another outward symbol that they are outsiders.
For the rest of the world, I don't get tattoos. It's never a good idea to make a bad idea a permanent part of your life.
Weird-colored hair, chartreuse or pink, I can understand. It's outlandish and unnatural and screams that the person wants attention. But it's temporary. It can be dyed, cut off, covered with a wig, whatever is necessary if the owner of the hair sobers up (literally or figuratively) and decides he or she has made a terrible mistake.
I can fathom piercing. I'm absolutely stunned by the parts of the body that people will pierce and have no idea why they'd want to, or want to endure the pain. But if at some point they change their minds, most piercings can be removed and little permanent sign is left behind.
Tattoos are permanent, and a friend of mine found out just what that can mean years after it is done. When he was in the Marine Corps in the late 1970s, he got the obligatory tattoos on his deltoids. Then one day he decided to get one on his forearm.
And that's how he became an ordained minister in Illinois with a Confederate battle flag where everyone could plainly see it if he wore a short-sleeved shirt. When he got his tattoo, he was a kid from Alabama who literally wanted to wear his regional pride on his sleeve. Fifteen years later, he couldn't help notice the looks he got when he shook hands with people on a summer day.
Marines understood tattoos, even if they didn't care for what that particular one symbolized. When he got out of the service and moved back to the South, his tattoo didn't attract much attention.
But when he went to the University of Alabama in his mid-20s, attended seminary and then became an ordained minister, he had a different perception of himself and a far different outlook on life. Not only that, but in Illinois, the tattoo was conveying a different message than he'd intended. And it wasn't the message a minister wanted to convey.
That is why he wound up with a big scar on his forearm, and the tattoo removal process was indeed painful, he said. He was fortunate that he had the money to spend on removing a tattoo and that it was in a place where the removal wound healed without interfering too much with his daily activities. He was also fortunate that the scar wasn't too obvious.
Frankly, I don't understand the attraction young people have to tattoos. I understand that they require a great deal of skill on the part of the artist, but the artwork that's the end result generally isn't all that great. It's mostly on the level of commercial art, which certainly has its place in society. But it rarely rises to the level that justifies giving it some of the limited space on your body for the rest of your life.
For most of us, every day is a little different. On any given day, we project to the world a slightly different picture of the infinitely complex creatures that we are. We have joyful days, sad days, mournful days, light-hearted days, serious days. The people who know us best can generally detect the picture of ourselves that we are projecting on that day.
Tattoos don't change. They project something people want to say about themselves. But it's specific to the moment, and I have a hard time believing that a teenager or even most 20-somethings have the profound wisdom to make a statement that draws an accurate picture of themselves 20 years later. I think about what I might have chosen for a tattoo when I was 19 or 20, and I shudder at what I might be stuck with today.
Think about historical figures. I bet the George Wallace who ran for president in 1976 and governor in 1982 would have been glad he didn't have "Segregation now, segregation tomorrow, segregation forever" tattooed on him where it could be seen. How about Bill Clinton sporting one that said, "I did not have sex with that woman?" Artwork can be just as clear a statement of a person's present state of mind as either of those and just as embarrassing in the future.
Some people want us not to be judgmental about people with tattoos. But are we to trust a smile and a friendly handshake from a person who is wearing a tattoo that's intended to convey anger or look menacing? A tattoo that's located where it's visible is a statement. Anyone who doesn't want to make a public statement with his or her tattoo should locate it where it can't be seen.
The problem with making a statement is that other people aren't guaranteed to like it or even like the fact that you're making a statement. That's something to think about before making that statement for everyone to see for the rest of your life.
Robert DeWitt is senior writer for The Tuscaloosa News. Readers can email him at robert.


text:
|December 7, 2012, 05:27 AM
Senior Member
Join Date: November 26, 2012
Location: Concord NH
Posts: 810
New to the forum and to handloading, I have a model seven and a ruger 77 hawkeye in 7-08, just looking for some opinions on some good accurate loads for different bullets weights..
"aim small miss small"
|December 7, 2012, 08:04 AM
Senior Member
Join Date: October 20, 2010
Location: Pawleys Island
Posts: 1,526
My best load to date is 45.5grns of H4350, a Win LR primer and a 150grn Nosler BT/Accubond. 2700fps from my 26" barrel of my 700 but the accuracy is superb.
|December 7, 2012, 02:15 PM
Senior Member
Join Date: June 9, 2010
Location: NEPA
Posts: 886
I use a lighter load: 139 grain hornady SP over 39 grains of IMR 4064.
|December 7, 2012, 08:42 PM
Senior Member
Join Date: September 16, 2009
Location: I live in the foot of the Green Mountains of Vermont
Posts: 1,602
I kill deer with my 20" SS Model 7 , shooting a 145 Speer Hot-Cor over 47 Gr. of W-760 ! WARNING , this is a grain over Max according to Speer #13 . So work your load up as you normaly would ! That is the only load I've ever ended up over published max , in 48 years of reloading . Works just like lightening .
Last edited by Brian Pfleuger; December 7, 2012 at 08:48 PM.
|December 7, 2012, 08:48 PM
Senior Member
Join Date: August 1, 2010
Location: Tampa Bay
Posts: 4,557
Every rifle's different...
What's the purpose? Target? Hunting?
Bullets are purpose driven. Pick the bullet weight/type, then talk about loads.
Just got the barrel screwed on my long range 7-08, and a box of 162 grain Amax's for load workup with H4350.
Reloader 17 is also a pretty popular choice here.
|December 7, 2012, 10:22 PM
Senior Member
Join Date: November 26, 2012
Location: Concord NH
Posts: 810
Right now just target shooting, hunting season is over here in NH, will probably try coyotes in the spring along with some woodchucks next summer with 100 gr varmint bullets. PS: Thanks for the tips and keep em comin.. Like I said, I am new and appreciate all the help.
|December 8, 2012, 12:07 AM
Senior Member
Join Date: December 23, 2005
Location: Minnesota
Posts: 2,885
140gr bullets= R-15 and Ramshot BigGame
160gr Bullets = Ramshot Hunter.
All three will make you smile.
|December 8, 2012, 02:50 PM
Senior Member
Join Date: November 26, 2012
Location: Concord NH
Posts: 810
Yes Steve, I am loading the re 15 behind the 140's, great groups out to 200yds, will have to find some of that Ramshot powder locally.. I tried some 150 match kings pushed by RE 15, nice and tight at 100, bout 3/4 in. out at 200 they were dropping over 6 inches..not good..
|December 8, 2012, 03:40 PM
Senior Member
Join Date: August 1, 2010
Location: Tampa Bay
Posts: 4,557
Are you using a headspace gauge and OAL gauge/bullet comparator?
With the "old" barrel, my best was with the 150 SMK over 44.5 of H4350 at 2,571 fps- out of a 20" barrel. Five shot cloverleafs at 100, no problems banging a 10" plate at 600 yards with it- and that was with the Savage factory barrel.
I prefer the temp-stable powders...
|December 8, 2012, 07:10 PM
Senior Member
Join Date: August 1, 2010
Location: Tampa Bay
Posts: 4,557
Suggest you re-check your loads, because something is waaaayyy off.
|December 8, 2012, 07:53 PM
Moderator Emeritus
Join Date: June 25, 2008
Location: Austin, CO
Posts: 19,412
According to JBM Ballistics, with a 100 yard zero, the 150gr MK would need to have a MV of about 2,450fps to drop between 5 and 6" at 200.
Most 150gr data for the 7-08 has starting load velocities around 2,500fps.
1,700 fps would have it almost 13" low.
Nobody plans to screw up their lives...
...they just don't plan not to.
-Andy Stanley
|December 9, 2012, 02:02 PM
Senior Member
Join Date: August 1, 2010
Location: Tampa Bay
Posts: 4,557
Thanks for correcting me...I looked at the wrong column (minutes instead of inches).
|December 9, 2012, 02:31 PM
Senior Member
Join Date: September 15, 2009
Location: Phoenix, AZ. 30 miles from water, two feet from Hell.
Posts: 355
I had good luck with BLC2 behind a 139 grain bullet.
taken four or five deer with it at over 300 yards, here in Arizona
Failure is part of success!
This year will go down in history. For the first time, a civilized nation has full gun registration. Our streets will be safer, our police more efficient, and the world will follow our lead into the future!" -Adolf Hitler,1935"
|December 9, 2012, 06:20 PM
Senior Member
Join Date: January 25, 2012
Posts: 593
I just started working up a load with the 150Gr. Sierra MK's and Reloader 17 in my Marlin XS7. In theory RL17 should be a fantastic powder for 7mm-08 with heavier bullets and shorter barrels.
R-P Case
Fed. 210M Primers
45.2 Grains was most accurate (1/2" 100-yards)
C.O.L. 2.815" (0.01" off my lands)
22" Barrel Length
Hopefully, I will get the chrono set up next time so see where the velocity is at. I am going to push past 46.0 Grains and try to find the accuracy again. I had consistant velocity increase (by comparing the targets) and no pressure signs up to 46.0 Grains. Looked like a scatter group at 45.6 and 46.0, but I bet it comes back somewhere between 46.3 and 46.9. Just waiting on a Lee Case Length Gauge (becuase I can't find one in any store for 7mm-08Rem.) so I can trim my cases.
I am also interested in trying out the 160 Grain Sierra HPBT Game King. Should be a good long-range bullet for deer and antelope comparable to the Hunting VLDs.
Last edited by FiveInADime; December 9, 2012 at 06:25 PM.
|December 9, 2012, 06:46 PM
Senior Member
Join Date: November 26, 2012
Location: Concord NH
Posts: 810
I am going to try those 150 HPBT's again, maybe I did something wrong, they did real good at 100 so at 200 they should have been no more than a 2" drop. No I do not have a headspace gauge, but I do check my overall length. Funny thing also, I had 1 round left of the 150 BT's so I shot it out of my model seven at 200 and was just left and about 1.5 in low of the bull, Go figure.
|December 10, 2012, 09:29 PM
Senior Member
Join Date: September 16, 2009
Location: I live in the foot of the Green Mountains of Vermont
Posts: 1,602
Why 150s
Maybe I'm just simple , but why would anyone want to target shoot with 150s out of a 7mm-08 ? Wouldn't 120s make more sence on paper targets at 200 Yards ? They sure would be more pleasent to shoot !
|December 11, 2012, 09:28 PM
Senior Member
Join Date: June 4, 2007
Location: Upstate SC
Posts: 1,943
If you load the Speer 120 or 130 grain bullets over H414/WW760, you can have a pretty good do-all deer and antelope load. Thank me later. CB.
If you want your children to follow in your footsteps, be careful where you walk.
Beware the man that only owns one gun; he probably knows how to use it.
I just hope my ship comes in before my dock rots.
|December 11, 2012, 09:33 PM
Senior Member
Join Date: April 20, 2009
Location: Helena, AL
Posts: 3,728
For my 280, I use RL-19 with 139 Hornady and 140 Sierras.
For my 260, I use RL-19 with 120s.
For your 7-08, like the 260, medium slow is the way to go.
|December 12, 2012, 05:08 AM
Senior Member
Join Date: November 26, 2012
Location: Concord NH
Posts: 810
I have some 120 gr and some 100 gr. coming via UPS today. Like I said at the beginning of this thread, I am new to reloading and I am just playing around with alot of different loads, Thanks for all the good advice.
|December 13, 2012, 10:03 PM
Senior Member
Join Date: January 25, 2012
Posts: 593
I like the 150gr. (in theory) bullets for shooting at 500-600 yards. If I was staying within 200 yards I would choose the 130 SMK instead.
|December 15, 2012, 09:49 AM
Senior Member
Join Date: August 1, 2010
Location: Tampa Bay
Posts: 4,557
Heavier, higher BC bullets at long range...hence the 162's...
|December 15, 2012, 12:57 PM
Senior Member
Join Date: December 15, 2012
Location: Idaho
Posts: 222
140 grain nosler accubond, 46.5 grains of H-4350, CCI 200 LR Primers. Works really well in my rifle! I bought this rifle with thoughts of my wife being able to deer hunt with it without getting beat up from recoil, the rifle is a howa 1500 compact ranch with the rhogue rubber over molded stock, the trigger was HORRIBLE out of the box and nothing I could do to make it better and keep it safe, (I've adjusted many different triggers over the years and replaced a few that wouldn't adjust) I ended up putting a timney in it. When I bought the rifle I also bought most everything to reload for it but was hoping it would shoot factory 140 grain remington core lokts as I didn't want to set up and load for it with a super busy work schedule, the rifle WOULD NOT shoot the factory ammo, the best it grouped was 5 or 6" from a bench with caldwell rock up front and rear sandbags, I thought to myself well you ended up with a piece of junk with this one! I went home and started the reloading process to see what I could get out of it, the above load was the very first load I tried and the little rifle shot it sub moa! My wife killed her first buck with it last month, its a keeper
|December 16, 2012, 02:36 PM
Senior Member
Join Date: August 21, 2008
Location: Back in Wyoming
Posts: 1,125
My loaner rifle (Model 700) likes:
46.5 grains of H4350
Sierra 140 gr. Pro-Hunter.
2753 fps
It's a loaner cause it's right handed & I'm a lefty. It'd probably shoot better if I played with the load a bit. I probably never will because of the loaner status.
Insanity: doing the same thing over and over again and expecting different results
|Thread Tools
|Search this Thread


text:
Press Release
Jerry Active Indicted for Mountain View Home Invasion
June 4, 2013
On June 3, 2013, 24 year old Jerry Andrew Active was indicted for the murders of two grandparents who were babysitting their granddaughter on May 25, 2013. Active was also indicted for committing multiple sexual assaults and sexually abusing a minor as well as committing burglary during the same incident. Active was also charged with misdemeanor assaults for the injuries he caused to the parents of the minor child.
Active was indicted on ten felony counts in total. The indictment is a charging document and is not evidence of guilt. A defendant is presumed innocent and is entitled to a fair trial at which the State must prove guilt beyond a reasonable doubt as to each charge.
If convicted of all of the offenses, Active faces a minimum sentence of 171 years in prison and a maximum sentence of 616 years in prison and a fine of $500,000. If convicted of the charges, Active also faces lifetime registration as a sex offender. If convicted, Active's sentence would be determined by a judge, who is required to consider the seriousness of the crimes and the offender's criminal history.
CONTACT: Deputy District Attorney Clint Campion @ (907) 269-6324 or firstname.lastname@example.com at the Anchorage District Attorney's Office.
# # #


text:
Neither snow, nor rain, nor heat, nor gloom of night prevent reforms of the U.S. Postal Service. Instead, it's a lack of will by Congress and bureaucratic inertia at a public agency that has not met the challenge of private competition.
Neither snow, nor rain, nor heat, nor gloom of night prevent reforms of the U.S. Postal Service. Instead, it's a lack of will by Congress and bureaucratic inertia at a public agency that has not met the challenge of private competition.
At a congressional hearing Wednesday, House Oversight Chairman Rep. Darrell Issa, R-Vista, insisted that the USPS itself must enact more reforms in the face of last year's $16 billion deficit. According to the U-T San Diego, after the USPS officials suspended "a plan to end Saturday delivery to save $2 billion a year, Issa was steamed."
At the hearing, Rep. Issa said, "I don't doubt or discount that Congress and the president have unfinished responsibilities and disagreement has delayed reform. But in the absence of congressional action, it's time for Postal Service management to exercise full use of its authority to do everything possible to avoid a taxpayer bailout. This is a time for action and decisiveness, not a time for excuses and empty rhetoric."
The fact is that both the USPS and Congress need to act. As much as we would miss checking the mailbox on Saturdays, most people nowadays gets few actual letters through the mail, instead receiving email, text messaging, tweets, etc. The junk mail and bills mostly could wait till Monday.
The USPS' major competitors for package deliveries, UPS and FedEx, generally do not deliver on Saturday without an extra fee. It makes sense for the USPS to follow suit, even with its monopoly on first-class mail.
"Probably this is something they could be doing," Tad DeHaven told us of internal USPS reforms; he's a budget analyst at the libertarian Cato Institute. "But at the end of the day, it's Congress, not the USPS, that must make reforms. The postmaster general answers to Congress." Indeed, Issa's comments were made as he was grilling Postmaster General Patrick Donahoe.
DeHaven worked in the mid-2000s on the staff of Sen. Tom Coburn, R-Okla., now the ranking member of the Homeland Security and Governmental Affairs Committee, which oversees the USPS. On April 10, Sen. Coburn issued a statement: "It is unfortunate the USPS Board of Governors has reversed course and further delayed structural reforms" needed to keep the USPS afloat.
"Coburn and Issa are probably interested in avoiding a bailout" to close the $16 billion deficit, DeHaven said. "But Democrats will want to go in that direction, although they wouldn't call it a bailout." A big concern, as with many governments at all levels, is funding for generous retiree health care plans, something that has all but vanished in the private sector.
A possible outcome, DeHaven said, is for Congress again to "kick the can down the road. But that could just lead to a bigger bailout. Ultimately, this is a government monopoly that continues to be undermined by the private sector."
We urge Rep. Issa, whose district includes part of Orange County, to press for radical reforms of the postal service, including complete privatization. Especially with the federal government's continuing $1 trillion yearly budget deficits, there's no excuse for a $16 billion bailout of something the government no longer needs to do.
From the Orange County Register


text:
|Introduction to Phrack 34
|Dispater & Crimson Death
|Phrack Loopback
|Phrack Staff
|Phrack Profile of Chris Goggans
|S. Leonard Spitz
|Telenet/Sprintnet's PC Pursuit Outdial Directory
|Sting Operations
|Sovereign Immunity
|Social Security Numbers & Privacy
|Chris Hibbert
|Users Guide to VAX/VMS Part 1 of 3
|Black Kat
|A Beginners Guide to Novell Netware 386
|The Butler
|Auto-Answer It
|Twisted Pair
|PWN/Part 1
|PWN/Part 2
|PWN/Part 3
|PWN/Part 4
==Phrack Inc.== Volume Three, Issue Thirty-five, File 7 of 13 <:=--=:><:=--=:><:=--=:><:=--=:>\|/<:=--=:><:=--=:><:=--=:><:=--=:> <:=--=:> <:=--=:> <:=--=:> >>>>>=-* Users Guide to VAX/VMS *-=<<<<< <:=--=:> <:=--=:> <:=--=:> <:=--=:> Part I of III <:=--=:> <:=--=:> <:=--=:> <:=--=:> Part A: Basic Information <:=--=:> <:=--=:> Part B: Programming the VAX/VMS <:=--=:> <:=--=:> <:=--=:> <:=--=:> By: Black Kat <:=--=:> <:=--=:> <:=--=:> <:=--=:><:=--=:><:=--=:><:=--=:>/|\<:=--=:><:=--=:><:=--=:><:=--=:> Index ~~~~ Part A contains information on the following topics: o Background o Logical Names o Terminal Control Keys o System Default Logical Names o Logging in o Logical Name Tables o Digital Command Language (DCL) o User Environment o Error Messages o Terminal Characteristics o Command Line Editing o File Security o Files and Directories o EDT Text Editor o File Operations o EDT Help manual Part B contains information on the following topics: o Programming VAX/VMS o Parameters o DCL Expressions o Terminal I/O o Command Procedures o File I/O o Writing Command Procedures o Redirecting Command Procedure I/O o Comments o Branching and Conditionals o Labels o Loops o Debugging o Subroutines o Invoking Command Procedures o Error Handling o Symbols o Termination o Lexical Functions o Example Command Procedures <:=- Part A : Basic Information -=:> Introduction ~~~~~~~~~~~ VAX is an acronym for Virtual Address eXtension, a 32-bit computer developed by Digital in the 1970's. The VAX architecture supports multiprogramming, where many users running different programs can use the VAX simultaneously and each appears to have full control of the computer's resources. The multiprocessing VAX functions vary differently from the old timesharing systems, which would allocate a slice of CPU time to each user of the system in a rotating fashion, whether the time slice was required or not. The VAX/VMS environment, however, provides each user an allocation of processor time based on the user's needs and priority. If a user does not need his quantum of time, or a portion of it, it is given to the next user. This scheduling method is very efficient when compared to the old method of timesharing. The VAX is capable of addressing more than four billion addresses, through a method known as virtual memory addressing. Because the memory is virtual however, there is no need to have four billion bytes of physical memory. The VAX executes programs by a technique known as paging, whereby a single "page" of the program is read into memory at a time, and when a new page is needed, the old one is "swapped" back out to disk to make room for the new one. The VMS operating system ties everything together. The user interacts with VMS (Virtual Memory System) through a Command Language Interpreter (CLI), usually the Digital Command Language (DCL). When you use VAX/VMS, you are known to the system as a process, which is created when you log in to the system and deleted when you log out. This process carries with it various attributes to identify you from other system users (process name, identification, user identification code, privileges, etc). Terminal Control Keys ~~~~~~~~~~~~~~~~~~~ Ctrl-A Allows you to insert, rather than overstrike, characters on a DCL command line that you're editing. Ctrl-B Displays DCL commands that you've previously entered. Ctrl-C Interrupts the coessed or the program being executed. Ctrl-E Positions the cursor at the end of the line. Ctrl-H Positions the cursor at the beginning of the line. Ctrl-I Tab Ctrl-O Alternately suppresses and continues the display of the output terminal. Ctrl-Q Enables (toggles on) output to the display after CTRL-S. Ctrl-R Retypes the current input line and repositions the cursor atthe end of the retyped line. Ctrl-S Disables (toggles off) output to the display until CTRL-Q is pressed. Ctrl-T Displays process statistics. Ctrl-U Discards the current input line and performs carriage return. Ctrl-W Refreshes the screen. Ctrl-X Flushes the type-ahead buffer. Ctrl-Y Interrupts command or program execution and returns control to the DCL command line interpreter. Ctrl-Z Indicates end of file for data entered from terminal. Logging in ~~~~~~~~ Most VAX systems prompt you with something like this: Welcome to VAX1 Username: Type your username and press <enter>. You'll then be prompted for your password. If you enter the correct username/password combination, you'll be given something like the following: Welcome to VAX/VMS V4.4 Last interactive login on Monday, 16-JUL-87 16:12 Last non-interactive login on Friday, 13-JUL-87 00:14 $ If you entered an incorrect username and password, you'll receive the message: User authorization failure Just hit <enter> and you'll be prompted for your username again. Once you're logged in, you'll be given the DCL prompt ($). This indicates that the system is ready to accept interactive commands. To log out, use the command: $ LOGOUT The Digital Command Language (DCL) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ DCL is comprised of more than 200 commands called verbs. Each DCL verb acts on a parameter or assumed parameter, and the action of these verbs and the scope of their parameters can be modified with qualifiers. The basic command structure is: $ LABEL: COMMAND-NAME PARAMETER(S) /QUALIFIER(S) !COMMENT | | | | | | | | | +-- Optional Comment | | | | | | | +-------------- Command modifier(s) | | | | | +---------------------------- Object of the Command | | | +-------------------------------------- DCL command verb | +-------------------------------------------------- Optional Label A label is an optional, user-specified string with a maximum length of 255 characters. It is most commonly used in command procedures. A DCL command verb defines the action the VAX will take when the command line is interpreted. Parameter(s) specify the object or a list of objects the DCL command verb will act upon. Multiple parameters may be specified but must be separated from one another by a space, multiple spaces, or a tab. If you enter a DCL command that requires parameters, but you don't enter them on the command line, the DCL interpreter will prompt you for them automatically. Qualifiers further define or modify the function the DCL command will perform. They consist of a keyword followed by a value or a list of values. The qualifier keyword must be preceded by a slash (/). Multiple qualifiers may be specified, but each must be preceded with a slash. Qualifiers usually aren't required. There are three kinds of qualifiers: parameter, positional, and command. A command qualifier applies to the whole command. Generally, these are placed at the end of the command. For example: $ DIRECTORY [BYNON],[BYNON.DECPRO]/FULL This displays a full listing of two directories, using the /FULL qualifier of the DIRECTORY command. A positional qualifier takes on a different meaning based on where it is located in the command. If a positional qualifier is placed after the command verb, but before the first parameter, the qualifier will affect the entire command. If the same positional qualifier is placed after a parameter, only that parameter will be affected. For example: $ PRINT/COPIES=3 MEMO1.TXT,MEMO2.TXT $ PRINT MEMO1.TXT/COPIES=2,MEMO2.TXT The first command prints three copies of each file. The second command prints two copies of the first file, but only one copy of the second. A parameter qualifier affects only the parameter it follows. In the following example, MEMO1.TXT is sent to the queue LASER and MEMO2.TXT is sent to queue FAST_PRINT: $ PRINT MEMO1.TXT/QUEUE=LASER,MEMO2.TXT/QUEUE=FAST_PRINT A comment is an optional, user-specified comment about the command. It is commonly used in command procedures to document the command. Error Messages ~~~~~~~~~~~~ Generally, error messages are of the format: % FACILIT-L-IDENT, TEXT | | | | | | | | | +-- explanation of the error message | | | | | | | +--------- abbreviated message text, for reference | | | | | +------------- error severity | | | +------------------- Vax/VMS facility or component (error source) | +----------------------- message number: "%" = first, "-" = subsequent A percent sign (%) indicates the first error message for a given command. All subsequent errors for that command are preceded with a hyphen (-). The facility indicates the source of the error. The source may be the DCL command line interpreter, one of the various VMS utilities, or a program image. The severity level indicator (L) will have one of the following values: S (successful completion), I (information), W (warning), E (error), or F (fatal or severe error). The ident is an abbreviation of the error message text. It can be referenced in the VAX/VMS System Messages manual. The text provides an explanation of the error message. Command line editing ~~~~~~~~~~~~~~~~~~ DCL stores the last 20 command lines entered. You can display a list of them with: $ RECALL /ALL The resulting display might look like: 1 DIR 2 COPY VAX1::$1$DUA5:[BYNON]LOGIN.COM LOGIN.COM;1 3 EDIT LOGIN.COM $ To recall a specific command from the recall buffer, use the DCL RECALL command with a command line number as a parameter. For example: $ RECALL 2 $ COPY VAX1::$1$6DUA5:[BYNON]LOGIN.COM LOGIN.COM;1 Files and Directories ~~~~~~~~~~~~~~~~~~~~ Files are organized much like MS-DOS, with a directory-tree structure. The user's default directory (assigned by the system administrator) is the "root" directory. Up to seven subdirectories may be created, each containing as many subdirectories as you like. The complete file specification looks like: VAX1 :: DUA0 : [BYNON.PROGRAMMING.FORTRAN]WINDOWS.FOR;3 | | | | | | | | | | | | node device directory filename | version type The node name identifies a computer system in a network. If no node name is specified, VMS assumes the file is located on the local node where you're logged in. The device name is the physical device where the file is stored. It is a four-character alphanumeric code which identifies the device type, hardware controller to which it is attached, and the unit number of the device on the controller. If you omit the device name from a file specification, VMS assumes you are referring to your default device. The directory entry is enclosed in brackets, and is the name of the directory that contains the file. If you omit the directory name from a file specification, VMS will assume you are referring to your default directory. The filename may consist of up to 39 alphanumeric characters. The file type is a code consisting of up to 39 alphanumeric characters, and it generally indicates the type of information supplied in the file. Some system programs and utilities supply a three character default file type. The version number is a 1 to 5 digit number the system assigns to every file by default. When a file is created, it is assigned a version number of 1. Each time the file is edited or another version of it is created, the version number is automatically incremented by 1. Alternatively, you may specify a version number of your choice. No blank spaces are allowed within any portion of a file specification. In VMS Version 4.x, the maximum lengths are as follows: node name up to 6 characters device name four characters directory name up to 39 characters subdirectory name up to 39 characters file name up to 39 characters file type up to 39 characters version number up to 5 decimal digits with a value between 1 and 32,767 File specifications must be unique; no two files can have completely identical specifications. It's conceivable to have many copies of NOTES.TXT in a subdirectory, but only one NOTES.TXT;8 may exist in the same subdirectory. Wildcards are similar to those in MS-DOS, with an asterisk (*) representing a filename or filetype, and a percent sign (%) indicating a single character. File operations ~~~~~~~~~~~~~~ Creating and modifying files: $ CREATE TEMP.DAT TEMP 1 TEMP 2 <CTRL-Z> Renaming files: $ RENAME TEMP.DAT NEW.DAT $ RENAME TEMP.DAT [BYNON.PROG]TEMP.DAT Note: you cannot rename files across devices, just directories. Copying files: $ COPY TEMP.DAT NEW.DAT $ COPY TEMP.DAT,TEST.DAT NEW.DAT Appending files: $ APPEND TEMP.DAT NEW.DAT Deleting files: $ DELETE TEMP.DAT;1 $ DELETE *.DAT;* $ DELETE /CONFIRM .DAT;* (confirm each file) Displaying files: $ TYPE /PAGE TEMP.DATE (one page at a time) Directories: $ DIRECTORY $ DIRECTORY DJA1:[BYNON.PROG] Printing files: $ PRINT TEMP.DAT Purging files: $ PURGE *.DAT (erase all but latest version of .DAT files) Create a dir: $ CREATE/DIRECTORY [.BUDGET] Set default dir: $ SET DEFAULT [BYNON.PROG] $ SET DEFAULT [.PROG] Delete a dir: $ SET DEFAULT [BYNON.PROG] $ DELETE *.*;* $ SET DEFAULT [BYNON] $ SET PROTECTION=(0:D) PROG.DIR;1 $ DELETE BUDGET.DIR;1 Logical Names ~~~~~~~~~~~~ A logical name is a substitute for a file specification, portion of a file specification, or another logical name. They provide two primary functions: file and device independence and file specification shorthand. File and device independence means that you are not constrained by a physical element, such as a disk or printer name. If you use files nested deeply in subdirectories, with long names, or on devices or nodes other than your default, you can define a meaningful logical name to represent it. These shorthand names are faster to type and easier to remember. To define a logical name: $ DEFINE PARTS_DBF DJA2:[DATABASES]PARTS.DAT This example will associate the logical name PARTS_DBF with the file specification DJA2 : [DATABASES]PARTS.DAT. Now, PARTS_DBF may be used anywhere as a substitute for the complete file specification. Other commands also can be used to assign logical names. Assign : Associates equivalence names with a logical name Mount : Mounts a disk or tape volume and assigns a system logical for the volume. Allocate: Allocates a system device for private use and optionally (command qualifier) assigns a logical name to the device. Open : Opens a file for read or write operations and assigns a logical name to the file specification. To display the logical name translations: $ SHOW LOGICAL PARTS_DBF will display: "PARTS_DBF" = "DJA2:[DATABASES]PARTS.DAT" (LNM$PROCESS_TABLE). To deassign a logical name: $ DEASSIGN PARTS_DBF System default logical names ~~~~~~~~~~~~~~~~~~~~~~~~~~~ SYS$COMMAND The initial file, or input stream, from which the DCL command line interpreter reads input data. The logical name SYS$COMMAND is equated to your terminal for interactive processes. SYS$DISK Your default disk as assigned in the UAF. SYS$ERROR The device on which the system displays all error and informational messages. By default, SYS$ERROR is assigned to your terminal for interactive processes, and to the batch job log file for any batch processes. SYS$INPUT The default file or input stream from which data and commands are read by either the DCL command line interpreter or programs executing in your account. By default, SYS$INPUT is equated to your terminal for interactive processes and to the batch job stream (or command procedure) for batch processes. Logical Name Tables ~~~~~~~~~~~~~~~~~ Logical names are stored in system files called logical name tables. The following are the four most commonly used: Group table : Contains the logical names available to all users in your UIC (User Identification Code) group. Job table : Contains the logical names available to your process and any subprocess it creates. Process table: Contains the logical names available to your process only. System table : Contains the logical names that may be used by all users of the system. User Environment ~~~~~~~~~~~~~~ The User Authorization File (UAF) is a system file controlled and modified by the system manager. A record for each system user is contained in the UAF. A User Identification Code (UIC) is an identifier used by VAX/VMS to identify users and groups of users. It is used to identify processes, directories, files, and other objects in the system. A UIC may be specified numerically or alphanumerically, and is made up of two parts, a group and a member, specified in the format: [group,member]. For example, UIC [10,14] identifies group 10, user 14. The group number is an octal number in the range 1-37776, and the member is an octal number in the range 0-177776. An alphanumeric UIC contains a member name and optionally, a group name in the format: [member] or [group,member]. The group and member names in an alphanumeric UIC may contain 1 to 31 alphanumeric characters (A-Z, 0-9, underscore, dollar sign). Each user of the system is limited in the consumption of system resources, and these limits control the rate at which your process or any subprocesses you create may consume a resource. There are 32 levels of priority in the VAX/VMS system, 0 through 31, the highest being 31. The priorities are divided into two ranges: timesharing (0-15) and real-time (16-31). The default user priority is 4. Depending on how heavily the system is being used, your priority may be raised above the default, but never lowered below it. VAX/VMS maintains 35 privileges, divided into the following seven categories classified by how much damage could be done to the system by possessing them: None No privileges. Normal The minimum privilege needed to use the system effectively. Group The ability to effect members of the same UIC group. Devour The potential to consume noncritical system-wide resources. System The ability to interfere with normal system operation. File The potential to bypass file protection security. All The ability to take over the entire system. VAX/VMS systems keep a record of overall computer system use by account holder in a system file called ACCOUNTING.DAT. The system manager uses this file to produce reports with the Accounting Utility. This can be used to learn more about how the system is being used, how it performs, and how a particular user is using the system. It can also be used to bill users for system time. Terminal Characteristics ~~~~~~~~~~~~~~~~~~~~~~ Setting display width: $ SET TERMINAL/WIDTH=132 Shutting messages off: $ SET TERMINAL/NOBROADCAST This prevents other users from phoning you, sending mail messages, and some system messages from appearing on your screen. If you just want mail and phone messages screened, use: $ SET BROADCAST=(NOMAIL,NOPHONE). Increasing type-ahead buffer: $ SET TERMINAL/ALTYPEHD/PERMANENT Line editing modes: $ SET TERMINAL/INSERT or $ SET TERMINAL/OVERSTRIKE Defining keys: $ DEFINE/KEY PF1 "SET DEFAULT DUA3:[INV.SUP]" % DCL-I-DEFKEY, DEFAULT key PF1 has been defined Showing keys: $ SHOW KEY PF1 (or $ SHOW KEY ALL) DEFAULT keypad definitions: PF1 = "SET DEFAULT DUA3:[INV.SUP]" Deleting keys: $ DELETE/KEY PF1 (or $ DELETE/KEY ALL) % DCL-I-DELKEY, DEFAULT key PF1 has been deleted Changing prompt: $ SET PROMPT = "What now?" Displaying process information: $ SHOW PROCESS (add a qualifier) Changing process information: $ SET PROCESS/NAME="Bob" $ SET PROCESS/PRIVILEGES=OPER File Security ~~~~~~~~~~~~ UIC-based protection permits access to be granted or denied based on protection codes that reflect four user categories: System: system manager Owner : account owner Group : users in same UIC group World : all users of system, regardless of UIC Four type of file access can be granted or denied to members of these user categories: Read (R): read the file Write (W): create or modify the file Execute (E): run a program Delete (D): delete the file Generally, any category of user can be granted or denied file access with this protection scheme. However, you can read a file in a subdirectory with EXECUTE access if you know its filename and filetype. Also, since SYSTEM privileges include the ability to bypass all file protection, anyone within the SYSTEM category can read a file. CONTROL access, or the ability to change the protection and ownership of a volume, is never specified in the UIC-based protection code. This is the fifth type of protection that can be specified in an access control list (ACL). It's automatically granted to two user categories when VMS examines UIC-based protection. Users in the SYSTEM and OWNER categories receive CONTROL access by default while GROUP and WORLD categories are denied CONTROL access. File protection defaults are as follows: System: RWED Owner : RWED Group : RE World : No access To determine the existing or default protection of a file, use the SHOW PROTECTION command. The default in the previous example would be: $ SHOW PROTECTION SYSTEM=RWED, OWNER=RWED, GROUP=RE, WORLD=NO ACCESS If you want to see file protection in directories, use the /PROTECTION qualifier with the DIRECTORY command. To change the protection of a file, use the command: $ SET PROTECTION=(O:RWE,G,W) LOGIN.COM In this example, the account owner has READ, WRITE, and EXECUTE access to his LOGIN.COM file. The GROUP and WORLD categories have no access and SYSTEM access remains unchanged. Rules for specifying protection codes: 1. Access types must be abbreviated with one letter: R, W, E, or D. 2. User categories may be spelled out or abbreviated. 3. Each user category must be separated from its access types with a colon. 4. If you specify multiple user categories, separate each with a comma and enclose the entire code in parenthesis. 5. User categories and access types may be specified in any order. 6. If you include a user category, but do not specify an access type for that category, access is automatically denied. 7. If you omit a user category entirely, protection for that category is unchanged. Remember that VAX/VMS evaluates directory protection before file protection. If you grant WORLD:R access to a file, but the file is in a directory without WORLD:R access, another user couldn't read the file. EDT Text Editor ~~~~~~~~~~~~~~ When you enter EDT, you automatically enter line mode, indicated by the EDT prompt, an asterisk (*). All line mode commands are made at the asterisk prompt and terminated by pressing <Return>. Lines that you input are numbered sequentially by the editor. You can reference a line or group of li^S^Qnes based on the line number or range of line numbers. A list of basic EDT commands follows. Each command may be abbreviated to the characters in parenthesis. Complete information on all EDT line mode commands can be found through the use of the line mode EDT HELP command. Commands Function ~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Change (C) Change from line to keypad mode. To switch back from keypad mode to line mode, press <Ctrl-Z>. Copy (CO) Copy a line or group of lines from one place to another. If you enter the command CO 5 to 10, line 5 will be copied to the line immediately preceding line 10. The command CO 5:10 to 20 would copy the contents of lines 5 through 10 into the area immediately preceding line 20. Delete (D) Delete a line or group of lines. The command D13 would delete line 13, while D13:20 will delete lines 13 to 20. Exit (EX) Terminates the EDT session, saving all changes. This also creates a new version of the file being edited. Help (H) Display on-line help on all EDT line mode commands. The help messages will not be included in the file being edited. Include (INC) Copy text from an external file into the file being edited. When the EDT command INCLUDE FILENAME.TYPE is executed, the contents of FILENAME.TYPE are copied into the file being edited. Insert (I) Inserts specified text directly before the current position in the file. While inserting text, you will not receive the EDT "*" prompt. Press <Ctrl-Z> to return to the "*" prompt when you're finished inserting. Move (M) You can't cut and paste with a line-oriented editor. Text will be moved to the area immediately preceding a specified line. The command M 10:15 to 50 would move lines 10 through 15 to the area immediately preceding line 50. Quit (QUI) Exit the EDT editor without saving changes. Replace (R) Deletes a specified line or group of lines and enters the INSERT mode so you can add text in that place. The command R5:10 would delete lines 5 through 10 and switch to the INSERT mode to permit you to enter new text. To exit the INSERT mode, press <Ctrl-Z>. Resequence (RES) Numbers all of the lines in the file that you're editing in increments of 1. This is useful because text insertion, movement, or deletion causes the file to lose numeric sequence. Substitute (S) Substitute a new text element for an old one in the format s/oldtext/newtext/range. The old and new text elements must be enclosed in angle bracket (< >) delimiters and the range must be specified. Write (WR) Write a given range of text to a new file. WRHISTORY.TXT 50:100 would write lines 50 through 100 to a new file called HISTORY.TXT. EDT Help Manual ~~~~~~~~~~~~~ To dump the entire EDT Help file to disk, enter the following DCL command during a terminal session: $ ASSIGN EDTHELP.FIL SYS$OUTPUT. Now, enter line mode EDT and type: * HELP *. Now exit EDT and enter the DCL command: $ ASSIGN TTnn: SYS$OUTPUTT (TTnn: is your terminal number). <:=- Part B : Programming VAX/VMS -=:> Introduction ~~~~~~~~~~~ A symbol is a name chosen to represent a string of characters, a numeric value, or a logical (true/false) value. A symbol may be used wherever the value it represents would normally be found, and can be up to 255 characters long. Symbols must begin with a character, dollar sign, or underscore, and are not case-sensitive. Symbols are created like this: symbol_name = value (local symbol) symbol_name == value (global symbol) A global symbol may be used at any command level, but local symbols are lost when command procedures are finished. For example: $ WIDE = "SET TERMINAL/WIDTH=132" Now, anytime you type WIDE at the DCL command line, the terminal width will be changed to 132 characters. To show the contents of a symbol: $ SHOW SYMBOL ANSWER ANSWER = 1584 HEX = 00000630 OCTAL = 000000003060 The SHOW SYMBOL command uses the local symbol table by default. To show the value of a global symbol, use the /GLOBAL qualifier. To show all symbols, use the /ALL qualifier (or /GLOBAL/ALL). To delete symbols, use: $ DELETE/SYMBOL symbol_name command (with /GLOBAL if it's global). When a DCL command is executed, symbols in the following positions are automatically translated: o the beginning of the command o in a lexical function o in a WRITE or IF statement o on the right side of an = or == assignment statement o inside brackets on the left side of an assignment statement when you're preforming string substitution If none of these cases fits, apostrophes will force the translation: $ DIRECTORY 'PARTS' (after $ PARTS = "DJA2:[DBA]PARTS.DAT") Symbols are commonly used for shorthand. For example, to clear the screen: $ ESC[0,8] == 27 $ CLEAR == "[J" $ HOME == "[H" $ CLR == WRITE SYS$OUTPUT ESC,HOME,ESC,CLEAR Now, anytime you enter CLR, the screen will be cleared. Symbols can also be used to execute command procedures: $ NETBACK == "@SYS$LOGIN:NETBACKUP" Finally, foreign commands unknown to DCL can be executed by using symbols: $ KERMIT == RUN SYS$$SYSTEM:KERMIT DCL Expressions ~~~~~~~~~~~~~~ Expressions are built by combining data elements with operators. A logical comparison evaluates the relationship between two components as true or false (True = 1, False = 0). Lexical functions are VAX/VMS routines that return process or system information, or manipulate user-supplied data. Lexical functions are unique because the result is returned in the function name, allowing it to be used as a symbol (much like Pascal). Lexical functions are called with the following format: F$function_name(parameter, parameter...) For example, the following lexical function manipulates user-supplied data: $ STRING = "Go home right now!" $ STRING = F$EDIT(STRING, "COMPRESS, UPCASE") $ SHOW SYMBOL STRING STRING = "GO HOME RIGHT NOW!" Command Procedures ~~~~~~~~~~~~~~~~~ A command procedure is a file consisting of a sequence of DCL commands which can be executed interactively or as a batch job (like a .BAT file in MS-DOS or a REXX EXEC in VM/SP). Command procedures are used in VAX/VMS to perform repetitive or complex tasks and to save time. With a command procedure, you can execute many DCL commands with a single statement. Command procedures aren't bound by simple lists of DCL commands executed in sequence. They can take advantage of labels, lexical functions, symbols and relational operators to build sophisticated procedures which act like VAX/VMS programs. Command procedures are flexible. They can be written to take specific actions based on responses to questions, or even to perform a given function depending on the time or date. Writing Command Procedures ~~~~~~~~~~~~~~~~~~~~~~~ A text editor such as EDT or EVE is used to create and edit command procedures, which should be named "PROCEDURE_NAME.COM". The file type ".COM" is the default procedure file type, and if a different file type is included, it must be included when the procedure is invoked. Each new command line must begin with a dollar sign ($). Multiple spaces or tabs may be included after the "$" for readability, and command lines may be extended past a single line by ending the previous line with a hyphen (-) and not starting the next line with a dollar sign. Data input to programs, such as responses, must be entered without the dollar sign. Data lines are used by the program running and are not processed by the DCL command line interpreter. For example: $ MAIL <--- invokes the Mail Utility SEND <--- Mail SEND command JONES, BOB <--- response to Mail prompt "To:" Memo <--- response to Mail prompt "Subj:" Bob, <--- Mail message How's it going?'? Joe $ <--- terminates Mail program $ EXIT <--- terminates command procedure Comments ~~~~~ Comments may be included by preceding them with an exclamation point (!), which causes everything to the right of it to be ignored by the DCL command interpreter. Comments make command procedures easier to debug and modify later. Spelling DCL commands out rather than using the abbreviations also makes the command procedure more readable. Labels ~~~ Labels are used by the DCL command line interpreter for conditional processing and repetitive looping. Labels should be placed on separate lines, making them easier to find. Labels can be 255 characters long, may not contain blanks, and must be terminated with a colon (:). Debugging ~~~~~~ The SET VERIFY command tells DCL to display each command as it processes it. This allows you to see where errors are generated, and how strings are translated. SET NOVERIFY turns the verify mode off. The SHOW SYMBOL command displays the contents of defined symbols, and is used to show the contents of a symbol in a command procedure as it is being executed. Invoking Command Procedures ~~~~~~~~~~~~~~~~~~~~~~~~~~ Command procedures may be invoked interactively by typing the "at" sign (@) followed by the procedure name. The file type must also be included if it is not ".COM" (the default). Command procedures may be invoked at the command line or from within another command procedure, called nesting. The DCL SUBMIT command will place your command (job) in a batch queue with other jobs waiting to be run. Command procedures are generally submitted as batch jobs when you want them to execute at a specific time, they will take a long time to run, or when a job must run at a reduced priority. The following command submits the command procedure ACCOUNT.COM to the VAX/VMS batch processor: $ SUBMIT ACCOUNT Job ACCOUNT (queue SYS$BATCH, entry 103) started on SYS$BATCH The SYS$BATCH queue is the default and is used unless otherwise specified with the /QUEUE qualifier. When VAX/VMS runs this job, a process with your rights and privileges will be created and the procedure executed within that process. Symbols ~~~~~~ Symbols may be local (single equal sign) or global (double equal sign). Local symbols are recognized by DCL only at the command level at which it was defined and more deeply nested levels (subsequently called command procedures). Global symbols are recognized at any command level. Local symbols should be used when the symbols is only needed for the duration of the command procedure employing it. You should only define global symbols if you're going to use them in other command procedures or for the duration of your login session. An asterisk can be used to tell the command line interpreter (CLI) to accept abbreviations. For example: $ NO*TES == "@SYS$LOGIN:NOTES" This tells the CLI to accept NO, NOT, NOTE, or NOTES as a valid abbreviation for the NOTES command. This notation is usevul for long symbol names. Lexical Functions ~~~~~~~~~~~~~~~~ Lexical functions allow you to obtain basically the same information as DCL SHOW commands. However, it's easier to manipulate information which comes from a lexical function. As an example, the following two command give the same information: $ SHOW TIME ! DCL SHOW TIME command 12-JUN-1989 14:29:23 $ WRITE SYS$OUTPUT F$TIME() ! lexical function 12-JUN-1989 14:29:25.17 The second command is more usable, however: $! Show_Date.COM $! $ TIME&DATE = F$TIME() $ DATE = F$EXTRACT(0,11,TIME&DATE) $ WRITE SYS$OUTPUT DATE This procedure displays only the date portion of the string returned by the lexical function F$TIME(). (Use @SHOW_DATE to invoke it) VAX/VMS supports lexical functions to manipulate text strings, convert data types, and return information about the system, your process, symbols, files and devices. Parameters ~~~~~~~~~ Eight reserved symbols (P1 through P8) are available to command procedures to supply data to process. By using these parameters in a command procedure, different data can be specified each time it's run. Parameter specification is done on the command line where the procedure is called. Unless designed to, the command procedure will not prompt for parameters. Parameters are separated with spaces and may be character strings, integers, or symbols. If you want to skip a parameter, us a null string (" "). $! Add.Com $! command procedure to demonstrate passing parameters $! (add the first and third parameter) $! $ WRITE SYS$OUTPUT P1+P3 $ @ADD 12 " " 14 26 If a command procedure requires multiple letters or words as a single parameter, enclose it in quotes and it will be treated as one parameter and not converted to uppercase. Terminal Output ~~~~~~~~~~~~ The WRITE and TYPE commands send data to the terminal. TYPE is used to display the contents of a file, but may also be used to print lines of text from within a command procedure. TYPE may only be used to output text strings. Since the WRITE command is processed be DCL, expressions, symbols and lexical functions are evaluated before the data is sent to the terminal. The output expression must translate to a string and be sent to the logical device SYS$OUTPUT, but may be a string, lexical function, symbol, or any combination of the three. Here's an example of a command procedure that uses terminal output: $! Writing a simple text string $! $ WRITE SYS$OUTPUT "This is a test..." $! $! Displaying multiple lines at the terminal $! $ TYPE SYS$OUTPUT Warning! It's been 30 days since you changed your password. Change it now! $! $! Writing a string with a lexical function $! $ WRITE SYS$OUTPUT " "HI' You are in directory "F$DIRECTORY()' " Terminal Input ~~~~~~~~~~~ The INQUIRE command's default device is the terminal keyboard, while the READ command must be told where to accept data from. The INQUIRE command prompts for input, reads data and assigns it to a symbol. All data is accepted as a character string and is converted to uppercase and compressed (extra blanks removed). The READ command prompts for input if the /PROMPT qualifier is used, accepts data from a specified source and assigns it to a symbol. The data is accepted with no string conversion or compression occurring. Here's an example of a command procedure that uses terminal input: $! Puts whatever you type in the symbol NAME $! the /NOPUNCTUATION qualifier will suppress the colon $! and space INQUIRE puts at the end of the prompt $! $ INQUIRE /NOPUNCTUATION NAME "What is your name? " $! $! Example of READ using SYS$INPUT (terminal) for data $! $ READ /PROMPT = "First value: " SYS$INPUT VALUE_1 $ READ /PROMPT = "Second value: " SYS$INPUT VALUE_2 $ WRITE SYS$OUTPUT VALUE_1," + ",VALUE_2," = ",VALUE_1+VALUE_2 File I/O ~~~~~~~ The basic steps to read and write files from within command procedures are similar to most other languages. Use the OPEN command to open the file. If it does not exist, OPEN will create it. Use the READ or WRITE commands to read or write text records from the file. Use the CLOSE command to close the file when you're done. To open a file for writing, you must use the /APPEND or /WRITE qualifier. The /WRITE qualifier creates a new file and places the record pointer at the beginning of the file. If the file already exists, a new version will be created by OPEN/WRITE. The /APPEND qualifier is used to add records to the end of an existing file. The file must already exist before using the OPEN/APPEND command, and when the file is opened, the record pointer is placed at the end of the file. To open a file for reading, use the /READ qualifier (the default for the OPEN command). A file opened for reading may not be written to, and the record pointer will initially be placed at the first record in the file. Each time a record is read, the pointer is moved down to the next record. The WRITE/UPDATE must be used to write over an existing record. Here's an example of a command procedure using file input and output: $ OPEN/APPEND OUTPUT_FILE NEW.DAT $ OPEN/READ INPUT_FILE OLD.DAT $ READ INPUT_FILE RECORD $ WRITE SYS$OUTPUT "First record from OLD.DAT - ",RECORD $ WRITE OUTPUT_FILE "First record from OLD.DAT - ",RECORD To open a file for both reading and writing, use both the /READ and /WRITE qualifiers. The record pointer will be placed at the first record in the file. Using this method, however, you can only overwrite the record you most recently read, and records you replace must be the same length. Redirecting Command Procedure I/O ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Command procedures often invoke VAX/VMS utilities, and these programs will normally get input from the logical device SYS$INPUT. While executing a command procedure, SYS$INPUT is directed to the command procedure itself, and this is why you can put command and data lines for a utility or program directly in the procedure. SYS$COMMAND defaults to the terminal from where a command procedure is being executed, and by redirecting SYS$INPUT to SYS$COMMAND you can use utilities and other programs interactively from command procedures: $ DEFINE/USER_MODE SYS$INPUT SYS$COMMAND: $ EDIT JUNK.DAT The /USER_MODE qualifier causes the re-assignment to be in effect only for the next command. Normally command procedure output is displayed at your terminal. You may redirect output to a file by using the /OUTPUT qualifier: $ @SHOW_TIME/OUTPUT = TIME.DAT By default, DCL error and severe error messages are directed to the file represented by the logical name SYS$ERROR, which usually points to your terminal. If you want to log error messages, simply redirect SYS$ERROR to a file. If you redirect SYS$ERROR without also redirecting SYS$OUTPUT, DCL will send error messages to both, and you'll receive the error messages twice -- at your terminal and in the file. To completely suppress error messages you can redirect both SYS$ERROR and SYS$OUTPUT to the null device (NL:) or you can use the SET MESSAGE command to turn off all message output. To suppress all messages, use: SET MESSAGE/NOTEXT/NOIDENTIFICATION/NOFACILITY/NOSEVERITY. Branching and Conditionals ~~~~~~~~~~~~~~~~~~~~~~~~~ You can use the DCL IF/THEN statements and conditional operators withing command procedures to cause the execution of a command based on the evaluation of a condition. The basic use is: $ IF condition THEN command. The condition is a Boolean expression (True or False) and the command is any legal DCL command. The following is a list of conditional operators: Operator Function ~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .EQ. / .EQS. Determines if two numbers/character strings are equal .GE. / .GES. Tests to see whether the first number/character string is greater than or equal to the second .GT. / .GTS. Determines if the first number/character string is greater than the second .LE. / .LES. Tests to see if the first number/character string is less than or equal to the second .LT. / .LTS. Determines if the first number/character string is less than the second .NE. / .NES. Tests to see whether the two numbers/character strings are not equal .AND. Combines two numbers with a logical AND (boolean algebra) .OR. Combines two numbers with a logical OR (boolean algebra) .NOT. Logically negates a value The following is a command procedure using conditional branching: $! Time.Com $! $ TIME = F$TIME() $ HOUR = F$EXTRACT(12,2,TIME) $ IF HOUR .LT. 12 THEN GOTO MORNING $ IF HOUR .LT. 17 THEN GOTO AFTERNOON $ IF HOUR .LT. 18 THEN GOTO EVENING $ GOTO END $ MORNING: $ WRITE SYS$OUTPUT "Good morning!" $ AFTERNOON: $ WRITE SYS$OUTPUT "Good afternoon!" $ EVENING: $ WRITE SYS$OUTPUT "Good evening!" $ END: $ EXIT Loops ~~ Loops are used to repeat a statement or group of statements until a given condition is met. DCL supports both DO WHILE and DO UNTIL loops. The DO WHILE loop tests the condition before evaluation: $ LOOP: $ IF .NOT. condition THEN GOTO END . . . $ GOTO LOOP $ END: $ EXIT The DO UNTIL loop executes the statement(s) and then tests the condition: $ LOOP: . . . $ IF condition THEN GOTO LOOP $ EXIT Subroutines ~~~~~~~~ The DCL command GOSUB transfers execution control to a label and the RETURN command terminates subroutine execution, returning control to the statement after the GOSUB command. Subroutines are useful where you need to do the same series of commands repeatedly in different parts of a command procedure. They also make procedures easier to read and more compact. The DCL commands GOSUB and RETURN are not supported in VAX/VMS versions before VAX/VMS Version 4.4. The following is an example procedure using a subroutine: $! Personal.Com $! $! opens the personal info file $! $ OPEN/WRITE OUTPUT_FILE PERINFO.DAT $! $! collect info $! $ INQUIRE RECORD "Enter full name" $ GOSUB WRITE_FILE $ INQUIRE RECORD "Enter address" $ GOSUB WRITE_FILE $ INQUIRE RECORD "Enter phone number" $ GOSUB WRITE_FILE $ CLOSE OUTPUT_FILE $ EXIT $! $! subroutine WRITE_FILE $! $ WRITE_FILE: $ WRITE OUTPUT_FILE RECORD $ RETURN Error Handling ~~~~~~~~~~~~~ The command interpreter will execute an EXIT command if a severe error occurs, terminating the procedure and returning control to the previous command level, unless the DCL ON command is used to specify an action for the command interpreter to take. The ON command supports the three keywords WARNING, ERROR, and SEVERE_ERROR. To override error handling for procedure warnings, for example, use something like this: $ ON WARNING THEN EXIT or $ ON WARNING THEN GOTO label WARNING causes the command procedure to take action if a warning, error, or severe error occurs. ERROR causes the action if an error or severe error occurs, and SEVERE_ERROR causes the action only if a fatal error occurs. $STATUS and $SEVERITY are reserved DCL global symbols, and each time a command is executed, values are assigned to these symbols. $STATUS holds the full condition code of the last statement and $SEVERITY holds an error severity level. The condition code in $STATUS is valid to the VAX/VMS MESSAGE facility and can be used in conjunction with F$MESSAGE to obtain the actual text message associated with the code: $ SET DEFAULT DUB1:[BYNON] $ WRITE SYS$OUTPUT $STATUS $X00000001 $ WRITE SYS$OUTPUT F$MESSAGE(%X00000001) % SYSTEM-S-NORMAL, normal successful completion All DCL commands will return a condition code, but not all condition codes have text messages. Condition codes without text messages will return the message "%NONAME-E-NOMSG Message number (8-digit code)". The message text isn't very useful for making conditional decisions though, so $SEVERITY is used. It contains one of five possible values extracted from the first three bits of $STATUS. Here are the codes: Code Definition ~~~ ~~~~~~~~~~ 0 Warning 1 Success 2 Error 3 Information 4 Severe Error Odd values (1,3) indicate success while even values (0,2,4) indicate failure. There are basically two ways to use the status and severity codes to handle errors. The first is to treat $STATUS as a Boolean value: $ SET NOON $ command ! a DCL command $ IF $STATUS THEN GOTO NO_ERR ! test $STATUS for T or F . . ! handle the error . $ NO_ERR ! continue processing . . . $ EXIT The second method is to trap the error with the ON WARNING command, then use the severity level to determine an appropriate course of action: $ SET NOON $ ON WARNING GOTO ERR_TRAP $ command ! a DCL command $ command ! a DCL command . . . $ EXIT $! $! error trap code $! $ ERR_TRAP: $ SEVERITY = $SEVERITY ! save the error code $ IF SEVERITY = 0 THEN command ! if warning... $ GOTO DONE $ IF SEVERITY = 2 THEN command ! if error... $ GOTO DONE $ IF SEVERITY = 4 THEN command ! if severe error... $ DONE: . . . $ EXIT Error checking can be completely disabled with the SET NOON command. When this is in effect, the command interpreter continues updating the condition code, but does not perform any error checking. The DCL command SET ON restors error checking to normal. For example: $ SET NOON ! turn off error checking $ command ! a DCL command $ SET ON ! restor error checking Termination ~~~~~~~~~~ The EXIT command will terminate the current command procedure and return control to the command level that called it while the STOP command terminates all command procedures (if nested) and returns control to DCL. Example Command Procedures ~~~~~~~~~~~~~~~~~~~~~~~~~ The following are two example command procedures to demonstrate some of the previously discussed techniques. Login.Com ~~~~~~~~ $! Login.Com - executed each time you log in $! $! Check for a network or batch login $! $ IF F$MODE() .EQS. "NETWORK" THEN GOTO NETWORK $ IF F$MODE() .EQS. "BATCH" THEN GOTO BATCH $! $! Define process permanent symbols for convenience $! $ SD == "SET DEFAULT" $ SH == "SET HOST" $ WI*DE == "SET TERMINAL/WIDTH=132" $ NA*RROW == "SET TERMINAL/WIDTH=80" $ DIR*ECTORY == "DIRECTORY/SIZE" $ PU*RGE == "PURGE/LOG/KEEP=2" ! keep latest 2 version $ HO*ME == "SET DEFAULT SYS$LOGIN:" $ WHO == "SHOW USERS" $ EVE == "EDIT/TPU" $ EDT == "EDIT/EDT/COMMAND=SYS$LOGIN:EDTINI.EDT" $ BR*OWSE == "TYPE/PAGE" $! $! Define special keys $! $ DEFINE/KEY/NOLOG/TERM PF1 "DIR" ! term ends with <enter> $ DEFINE/KEY/NOLOG PF2 "EDIT" $ DEFINE/KEY/NOLOG/TERM/NOECHO PF3 "LOGOUT" $ DEFINE/KEY/NOLOG/TERM/NOECHO HELP "SHOW KEY/ALL" $! $! Modify terminal characteristics $! $ SET TERMINAL/INSERT ! insert mode $ SET PROMPT = "[BYNON]> " $! $! Show time and quit $! $ SHOW TIME $ EXIT $! $! If it's a network login, we can now $! perform some other commands if desired. $! Just quit for now though. $! $ NETWORK: $ EXIT $! $! If it's a batch job login, set verification on and quit. $! $ BATCH: $ SET VERIFY $ EXIT Subdir.Com ~~~~~~~~~ $! Subdir.Com - how to search and parse character strings $! $ WRITE SYS$OUTPUT F$DIRECTORY()+ " Subdirectories:" $ WRITE SYS$OUTPUT " " $! $! Search for subdirectory names and display them on the terminal $! $ DIR$LOOP: $ FILE = F$SEARCH("*.DIR") $! $! If DCL returns a null string (" ") we're done $! $ IF FILE .EQS. " "THEN GOTO END$DIR$LOOP $! $! Find the position of the period $! $ DOT = F$LOCATE(".",FILE) $! $! Find the position of the right bracket $! $ BRACKET = F$LOCATE("]",FILE) $! $! Extract the string between the dot and bracket $! $ FILE = F$EXTRACT(BRACKET+1,DOT-BRACKET-1,FILE) $! $! Display the subdirectory name and start over $! $ WRITE SYS$OUTPUT " ' 'FILE' " $ GOTO DIR$LOOP $ END$DIR$LOOP: $ EXIT <END PART I> ______________________________________________________________________________


text:
Some medicines can interfere with how
birth control pills work. For example, you may not be
protected from pregnancy while you are taking other medicines that affect liver
metabolism. The vaginal ring and skin patch contain combination hormones and
may also interact with some medicines. The progestin-only pills, implant
(Implanon), and shot (Depo-Provera) also contain hormones that may interact
with some medicines.
Taking medicines while you are using
hormonal birth control may increase your risk of problems. Some combinations of
medicine may affect the birth control hormones in your body, making them too
strong or too weak. This may increase your chance of getting pregnant. Or a new
medicine may be less likely to work because you have birth control hormones in
your body. Talk with your doctor or pharmacist to make sure that any medicines
you take are not causing problems when you are using hormonal birth
Birth control pills may increase your sensitivity to the
effects of caffeine.
Next Section:
Previous Section:
Last Revised:
May 3, 2012
Healthwise Staff
Medical Review:
Sarah Marshall, MD - Family Medicine & Femi Olatunbosun, MB, FRCSC - Obstetrics and Gynecology
This information does not replace the advice of a doctor. Healthwise, Incorporated disclaims any warranty or liability for your use of this information. Your use of this information means that you agree to the Terms of Use. How this information was developed to help you make better health decisions.
To learn more visit Healthwise.org
© 1995-2012 Healthwise, Incorporated. Healthwise, Healthwise for every health decision, and the Healthwise logo are trademarks of Healthwise, Incorporated.


text:
Last September we spent a week looking at Charlie Allen's career. Since then, much to my delight, Charlie has continued to share many additional scans of his work with me (usually grouped around a specific theme) and he and I have had an ongoing correspondence about these pieces.
Recently, Charlie sent a raft of scans based around the theme of 'black and white illustration'. "This week may hound you with some B&W's," wrote Charlie, "something I enjoyed as much, if not more, than color....and there was more of it out here."
Charlie explained that due to smaller budgets and more limited printing options (almost all magazine publishing was located back east, for instance) much of the artwork done by illustrators in the San Franscisco market was black and white, and often line art instead of painting.
Charlie writes, "I welcomed change and different clients and agencies. First Pan Am ad [above] was in the '50s, the models were my wife and oldest daughter. Second Pan Am [below] were hired models and a fictitious Hawaiian restaurant. I did so many travel ads, lots about Hawaii...mainly, I think, because I was less expensive than sending an illustrator or photographer over there!"
Some of the famous illustrators we've looked at in recent weeks enjoyed a sort of celebrity status in their day, but its tremendously talented but less well known artists like Charlie who's work I find equally inspiring - and deserving of recognition. This week, we're fortunate to be able to take a look at "the black and white world of Charlie Allen", with accompanying commentary by the artist himself.
My Charlie Allen Flickr set.
Celebrating illustration, design, cartoon and comic art of the mid-20th century.
Monday, May 19, 2008
Charlie Allen in Black and White
3 comments:
Subscribe to: Post Comments (Atom)


text:
Marywood University's Brand
A brand is the experience of a product, a company, or, in our case, an institution of higher learning. It's what people think of us. Marywood's brand is our reputation, our story, and our traditions, lived out through those who have experienced our University.
Marywood's brand reflects the charism of the IHM Sisters. It's perhaps best understood through our core values:
- Catholic identity
- Respect
- Empowerment
- Service
- Excellence


text:
The Eagles and Brandon Graham, the first round pick expected to bolster their pass rush, have agreed to terms on a five year contract, the team said Thursday night.
Graham, a defensive end taken 13th overall in April's draft, is expected to report to Eagles training camp at Lehigh University on Friday and could participate in the first full team practice of training camp, scheduled for 3:30 p.m., if his signing goes as planned. Financial terms of the deal were not disclosed.
"It feels good, because I really wanted to get to training camp and Coach (Andy) Reid really wanted me to get to camp and now it's time to show them why they picked me," Graham said in comments provided by the team. The Eagles traded three draft picks in order to move up and select the Michigan product in the draft. "I have a lot of work to do, but I'm ready to go."
Graham is expected to compete with Juqua Parker for the starting spot at left defensive end.
Graham's agent, Joel Segal, said, "We're doing our best to get him there in time for tomorrow's practice."
Eagles president Joe Banner said the team is "excited" to get Graham on the field Friday.
Graham was just the seventh first round pick to agree to a deal as of 11 p.m. Thursday. Signings so far have gone slow and there was concern within the team that Graham might miss learning opportunities as the team in coming days holds its first full-contact practices of training camp, and the first since its 2010 draft class was chosen.
But a number of first round deals have neared completion, helping to set the market for this year's top flight rookies and speeding the completion of the Graham agreement, according to sources close to the situation. Graham was also eager to get into camp after missing the first three days of practice, which were dedicated to rookies and a small group of veterans.
In the end, Graham will miss relatively little meaningful time on the field. The practices held so far have been without pads or full contact, conditions which can be limiting for defensive linemen.
The Eagles' top pick last year, wide receiver Jeremy Maclin, sat out the first 10 days of camp in 2009. Talking to reporters before Graham signed, he had some advice for this year's first round pick once he finally does arrive. "You can't come in here on your high horse because guys are going to look at you in a different way," Maclin said.


text:
Readers across the country are sharing their Election Day with us by sending photos of themselves voting, their polling stations, and what's important to them during this special day.
It's easy to participate, just post your pictures on Twitter, Instagram and tag them #nbcpolitics, or upload your photos using the form at the bottom of this article. Please use the caption or tweet to tell us a little about the photo. We'll update this photo gallery throughout the day, so come back and see if we've selected your picture.
Click the images below to see them larger, and read their captions.
EDITOR'S NOTE: Photos selected by NBCNews.com, but captions and images are unedited
Submit your photos below, or tag images #nbcpolitics on Instagram or Twitter.
Related Links
- See reader photos in a state-by-state breakdown
- See reader images from before elction day
- Follow NBC News on Instagram
- Follow @NBCNewsPictures on Twitter
Jim Lo Scalzo / EPA
Campaigning with Mitt Romney and Barack Obama, voting and election results.


text:
Ursuline College Receives Accreditation from the Higher Learning Commission (HLC)
Pepper Pike, OH – "Ursuline College is well-positioned with a strong, shared mission and has demonstrated its ability to maintain relevance in a changing world," according to visitors from the Higher Learning Commission of the North Central Association of Colleges and Schools, as part of Ursuline's regional accreditation re-authorization. The visit culminated in the College receiving a ten-year accreditation, the maximum possible. The College has been continuously accredited since 1931 and the next comprehensive evaluation will be in 2021-22.
The report found the College to be in compliance with all HLC criteria and the team chair stated that, "the Ursuline visit was one of the most positive that they had ever conducted." Furthermore, "It is evident that the College is committed to its rich and longstanding values and traditions."
"We are excited and honored to receive this accreditation from HLC" said Ursuline President Sr. Diana Stano, OSU, Ph.D. "This approval further allows Ursuline to continue to strive towards the goal of providing students with the highest quality education while focusing on the learning needs of women. The accreditation is a testament to the hard work and dedication of our faculty and staff and assures our students that they are receiving a quality education when they attend Ursuline."
As a Catholic liberal arts college, focusing on women, Ursuline welcomes students into an academically challenging and values-based environment. Recognized for distinguished programs in nursing, fashion, social work and education, Ursuline offers more than 30 undergraduate and ten graduate degrees in three schools including arts and sciences, nursing, professional and graduate studies.
For more information or further details about the accreditation report, please contact Elizabeth Kavran at 440 646 8107.


text:
In a recent survey by Frost & Sullivan's Stratecast group, more than 80% of respondents admitted to using non-approved SaaS applications as part of their day-to-day business activities. In fact, only 17% of IT employees are toeing the line when it comes to limiting their technology to corporate-sanctioned products. The survey, sponsored by McAfee, polled 600 IT and line of business employees in the U.S., UK, Australia and New Zealand.
Authored by Frost & Sullivan's cloud computing program director, Lynda Stadtmueller, the study revealed that IT professionals themselves are by far the worst offenders when it comes to using unauthorized services. What's more surprising is that IT holds itself above its own policies.
An incredible 91% of IT departments are currently using at least one unapproved SaaS app as part of standard procedure, and 25% are using six or more unauthorized apps. What's more, about a fifth of individual IT users (19%) are also personally opting to break the rules in embracing a half dozen or more SaaS apps that aren't sanctioned by the IT department, either officially or unofficially.
Why is IT breaking the very rules that it sets for the rest of the company?
"An IT person may feel more confident in their abilities. It's very much an attitude of 'It's okay for me ... don't you do it'," Stadtmueller said in an interview this week. "In reality, that's probably not true, especially when you have multiple IT people, each with their own specialties, each doing their own thing. It can be pretty risky."
When it comes to corporate security, CIOs are right to be concerned about shadow IT. After all, not only does unauthorized software open the network up to malware and Trojans -- about 15% of all survey respondents either experienced or perceived a security "incident" -- but the logistics of managing versions and installed licenses can be a nightmare. Then there's the potential for loss of secure information and risk of compliance -- an ugly situation no matter how you look at it.
[Read how startup Netskope aims to help companies control rogue use of cloud applications by employees in "Cloud Service Reins In Shadow IT."]
However, the prevalence of shadow IT speaks to a larger issue within the corporate culture. Employees turn to rogue IT solutions not for malicious or lazy reasons. In fact, the same survey respondents who were deploying unauthorized SaaS apps said that they had "high concern" for putting the company's data at risk.
Quite simply, they turn to unauthorized SaaS apps because they just want to get their jobs done. "We saw no evidence that anyone didn't care about the security risks or the welfare of the company," Stadtmueller said. "Both IT and the LoB employees appeared to feel that their decisions were justified, that they were bringing greater value to the company. They're thinking, 'I got to do my job, I have to do it fast and I'm confident that the benefits will outweigh the risks.'"
A CIO's first instinct is to simply lock down the network. That's exactly the wrong response, according to Stadtmueller.
"The right answer isn't to crack down. The answer is to find a security solution -- and the good thing about technology is that the answer exists somewhere -- that is broad enough to give employees the freedom that they really want," Stadtmueller advised.
"Let them choose the software they really want within the right parameters," she said.


text:
Cowboys are my weakness. That's not just the title of my favorite Pam Houston book, but the truth about my undying fascination with those icons of the Wild West. These days, when most of the horses are under the hood instead of a barn roof, it's a challenge to find an authentic outpost where rootin,' tootin' cowboys still have a foothold. That's why there's Prescott. Though the mile-high city about 90 miles northwest of Phoenix is becoming a desirable retirement haven, it's more notable for its long-running rodeo, historic downtown and saloons that are the next-best thing to time travel.
The bed
The Hassayampa Inn (122 E. Gurley St.; [928] 778-9434. Rooms from $99 to $159) retains its historic charm (and modest room proportions) while borrowing style cues from its Arizona location, Roaring '20s origins and the town's Midwestern settlers. The result is an interior with the Southwest's signature stenciled, beamed ceilings and fancy tiled walls and floors, Art Deco light fixtures and a proper red brick exterior that recalls Chicago mansions. Besides charm, the 67-room hotel is known for its central downtown location, original copper ceilings and elegant Peacock Room.
The meal
A perfect rooftop lunch spot, the warmly rustic downtown Raven Cafe (142 N. Cortez; [928] 717-0009) combines hipster food, music and art with a vegetarian, vegan and gluten-free menu that also embraces carnivores. I headed straight for the juicy, sweet root beer barbecue pork sandwich ($11) and eyed the 24 beers on tap. Iron Springs Cafe (1501 Iron Springs Road; [928] 443-8848), housed in an 1890s former railroad depot, blends Cajun and Southwest cuisine in a menu that has you debating between a cup of gumbo ($5.75) or the enchilada of the day (about $11.50).
The find
Go ahead: Follow in the footsteps of Wyatt Earp and Doc Holliday and swagger through the swinging half doors of the Palace Saloon, an 1877 frontier bar that's a centerpiece of downtown's historic Whiskey Row. Though the mannequins perched by the former brothel rooms are kitschy, the historic photos and artifacts in the display cases make the Old West feel real at the lively restaurant and saloon.
The lesson learned
Prescott is surrounded by nearly 400 miles of trails in the Prescott National Forest and thus is a hiker's heaven. I'd pack ample outdoor gear for a return trip, and be sure to visit Watson Lake Park to rent a kayak for an on-the-water view of the Granite Dells.
The tab
Round-trip airfare from LAX to Phoenix Sky Harbor International Airport was $270; the round-trip airport shuttle to Prescott cost $58; and $40 easily bought lunch and dinner. About $400 covered two weekend nights in a room with a king-size bed at the Hassayampa Inn.


text:
(Reuters) - Scientists in Utah say they have discovered Tyrannosaurus rex's "great-uncle," a massive predator with a thick skull and large teeth dubbed the "king of gore."
Bones of the 24-foot (7.3-meter) -long dinosaur, slightly smaller than T. rex and older by about 10 million years, were unveiled at the Natural History Museum of Utah in Salt Lake City on Wednesday, and an announcement of the species discovery was published in the scientific journal Plos One.
Scientists hope the find will help them better understand the ecosystem where the predator roamed.
Discovered by workers for the Federal Bureau of Land Management in eastern Utah in 2009, scientists named the animal Lythronax argestes, or "king of gore," for its large teeth and apparent dominance as a predator.
"Discovering the Lythronax pushes back the evolution of the group that gives rise to T. rex, which is something we didn't understand before," said Mark Loewen, a geologist at the University of Utah, who led the dig for the new dinosaur. "Lythronax is like the great-uncle of T. rex."
Paleontologists have thought that members of the group with characteristics like T. rex - large bodies, tiny arms, thick skulls and forward facing eyes - dated as far back as 70 million years, but the Lythronax shows signs of being at least 80 million years old.
Like its relative, the Lythronax is believed to have been the top predator of its time, roaming a stretch of land from Mexico to Alaska, including parts of Utah, during the Campanian stage of the Late Cretaceous period.
"The really cool thing is that this shows that the origins of the last known tyrannosaurs were in the southern part of North America as opposed to Asia or far North America," as previously thought, said Andrew Farke, curator at the Raymond M. Alf Museum of Paleontology in Claremont, California.
Photos of the fossil remains of the newly discovered species were sent to Loewen and his team soon after they were discovered at the southern end of the Grand Staircase-Escalante National Monument, on the Utah-Colorado border.
The group spent the following two years retrieving, preserving and assembling the bones. Then, they traveled to locations where other bones from the tyrannosaur group were being studied, including China; Birmingham, Alabama; Washington, D.C.; and New York.
The Lythronax bones were set between layers of volcanic ash, which allowed scientists to determine the age of the dinosaur by studying the decomposition of the ash crystals that surrounded them.
"This sort of discovery is very interesting and exciting because it's not just another animal from that era but a large predator from that era," said paleontologist Peter Roopnarine, who studies the ecology of dinosaur periods for the California Academy of Sciences.
Roopnarine said being able to learn about the Lythronax will reveal more about the ecosystem at the time of its reign.
"This is going to change our understanding of this older ecosystem," Roopnarine said.
Editing by Sharon Bernstein and Eric Walsh


text:
The backlit keyboard is making a comeback
The backlit keyboard originally introduced on the first-gen MacBook Air is set to make a wondrous return. If this feature is indeed set to make a comeback, it will no doubt be music to the ears of many who were wildly disappointed when Apple decided to do away with the feature with the announcement of the current models, launched back in October 2010.
Find out more MacBook Air rumours...
Not one, not two, but four new models incoming
As if it wasn't already hard enough for us to decide between a 11-inch and 13-inch model, we're soon to be faced with the difficult decision once again as to whether we want the standard, entry-level model, or to pump more high-end spec into our gorgeous slither of tech with a built to order, upgraded version. Decisions, decisions...
Find out more MacBook Air rumours...
No design change
As the old adage goes, "If it ain't broke, don't fix it." This appears to be Apple's approach to the refreshed MacBook Air line, with word on the web suggesting there will be little to no cosmetic changes for what is already a gorgeously designed bit of tech. Many have tried and failed (with the exception of Samsung's Series 9) to copy those sleek lines, so why would Apple want to mess with a winning formula?
Find out more MacBook Air rumours...
Thunderbolt and Sandy Bridge
Cosmetic changes may be off the menu, but there will be one very obvious change to its outer shell and it's Thunderbolt shaped. The inclusion of Thunderbolt not only means the new models will come equipped with the hottest new thing in data transfer, but like the current MacBook Pro, you can look forward to high-speed connectivity, whether you're backing up your vast MP3 library or transfering a feature-length HD movie. Want to know more? Check out everything you need to know about Thunderbolt right here.
The Air is also expected to welcome a new batch of Sandy Bridge processors, to replace the current Core 2 duo chips which are firmly nestled inside the current MBA line. There's also talks of a faster NAND flash technology, which would mean much faster operation and the appeasment of our impatient side by waking up even quicker from sleep mode.
Find out more MacBook Air rumours...
Facetime HD webcam
Facetime is about to get hi-def makeover, if the rumours are to be believed. This would mean bye-bye low-res camera and hello 720p video calls between the refreshed ultra-portable and the latest MacBook Pro and iMac.
Google Plus Guide – the things you didn't know
MacBook Air 11-inch 2010 review


text:
Engagement Announcement: Who Do We Tell First?
(Hint: Not Facebook)
(page 1 of 2)
Getting engaged is a very exciting moment in your life and you probably want to shout it from the rooftops... just be sure to tell your parents first.
A Hudson Valley bride asks: "I don't want to hurt anyone's feelings, so who should I tell first that I have become engaged?"
(Continued on next page)
» Read about using (and banning) cell phones at your wedding
» More from The Wedding Guru
» Submit a question to the Wedding Guru
» Hudson Valley Weddings 2013